From ad28501092a465426b151380c07d42cb0e248385 Mon Sep 17 00:00:00 2001 From: Nikita Travkin Date: Sun, 10 Mar 2024 12:57:51 +0500 Subject: [PATCH] linux-postmarketos-qcom-sc7180: upgrade to 6.6.28 (MR 4900) --- ...d-enable-timings-for-N140HCA-EAC-pan.patch | 31 - ...remoteproc-qcom-pas-Add-sc7180-adsp.patch} | 10 +- ...om-sc7180-Add-tertiary-mi2s-pinctrl.patch} | 14 +- ...n65dsi86-Implement-wait_hpd_asserted.patch | 63 -- ...0003-arm64-dts-qcom-sc7180-Add-ADSP.patch} | 12 +- ...c7180-Don-t-enable-lpass-clocks-by-d.patch | 76 -- ...0-Add-support-for-qdsp6-baked-sound.patch} | 73 +- ...sc7180-Drop-redundant-disable-in-mdp.patch | 66 -- ...005-arm64-dts-qcom-Add-Acer-Aspire-1.patch | 889 ------------------ ...qcom-pm6150-Add-resin-and-rtc-nodes.patch} | 14 +- ...64-dts-qcom-acer-aspire1-Enable-RTC.patch} | 10 +- ...-Set-up-secure-memory-ranges-for-SC7.patch | 36 - ...m64-dts-qcom-acer-aspire1-Add-sound.patch} | 12 +- ...c7180-Split-up-TF-A-related-PSCI-con.patch | 387 -------- ...latform-Add-ARM64-platform-directory.patch | 116 +++ ...dd-Acer-Aspire-1-embedded-controller.patch | 652 +++++++++++++ ...acer-aspire1-Add-embedded-controller.patch | 94 ++ ...om-sc7180-Map-missing-jack-kcontrols.patch | 103 -- ...Delay-disabling-unused-clocks-by-10s.patch | 78 ++ ...cer-aspire1-Correct-audio-codec-defi.patch | 60 -- ...com-acer-aspire1-Enable-DisplayPort-.patch | 34 - .../linux-postmarketos-qcom-sc7180/APKBUILD | 64 +- .../config-postmarketos-qcom-sc7180.aarch64 | 670 ++++++++----- 23 files changed, 1494 insertions(+), 2070 deletions(-) delete mode 100644 device/community/linux-postmarketos-qcom-sc7180/0001-drm-panel-edp-Add-enable-timings-for-N140HCA-EAC-pan.patch rename device/community/linux-postmarketos-qcom-sc7180/{0008-remoteproc-qcom-pas-Add-sc7180-adsp.patch => 0001-remoteproc-qcom-pas-Add-sc7180-adsp.patch} (83%) rename device/community/linux-postmarketos-qcom-sc7180/{0009-arm64-dts-qcom-sc7180-Add-tertiary-mi2s-pinctrl.patch => 0002-arm64-dts-qcom-sc7180-Add-tertiary-mi2s-pinctrl.patch} (76%) delete mode 100644 device/community/linux-postmarketos-qcom-sc7180/0002-drm-bridge-ti-sn65dsi86-Implement-wait_hpd_asserted.patch rename device/community/linux-postmarketos-qcom-sc7180/{0010-arm64-dts-qcom-sc7180-Add-ADSP.patch => 0003-arm64-dts-qcom-sc7180-Add-ADSP.patch} (94%) delete mode 100644 device/community/linux-postmarketos-qcom-sc7180/0003-arm64-dts-qcom-sc7180-Don-t-enable-lpass-clocks-by-d.patch rename device/community/linux-postmarketos-qcom-sc7180/{0012-ASoC-qcom-sc7180-Add-support-for-qdsp6-baked-sound.patch => 0004-ASoC-qcom-sc7180-Add-support-for-qdsp6-baked-sound.patch} (81%) delete mode 100644 device/community/linux-postmarketos-qcom-sc7180/0004-arm64-dts-qcom-sc7180-Drop-redundant-disable-in-mdp.patch delete mode 100644 device/community/linux-postmarketos-qcom-sc7180/0005-arm64-dts-qcom-Add-Acer-Aspire-1.patch rename device/community/linux-postmarketos-qcom-sc7180/{0013-arm64-dts-qcom-pm6150-Add-resin-and-rtc-nodes.patch => 0005-arm64-dts-qcom-pm6150-Add-resin-and-rtc-nodes.patch} (82%) rename device/community/linux-postmarketos-qcom-sc7180/{0014-arm64-dts-qcom-acer-aspire1-Enable-RTC.patch => 0006-arm64-dts-qcom-acer-aspire1-Enable-RTC.patch} (80%) delete mode 100644 device/community/linux-postmarketos-qcom-sc7180/0006-media-venus-core-Set-up-secure-memory-ranges-for-SC7.patch rename device/community/linux-postmarketos-qcom-sc7180/{0016-arm64-dts-qcom-acer-aspire1-Add-sound.patch => 0007-arm64-dts-qcom-acer-aspire1-Add-sound.patch} (94%) delete mode 100644 device/community/linux-postmarketos-qcom-sc7180/0007-arm64-dts-qcom-sc7180-Split-up-TF-A-related-PSCI-con.patch create mode 100644 device/community/linux-postmarketos-qcom-sc7180/0008-platform-Add-ARM64-platform-directory.patch create mode 100644 device/community/linux-postmarketos-qcom-sc7180/0009-platform-arm64-Add-Acer-Aspire-1-embedded-controller.patch create mode 100644 device/community/linux-postmarketos-qcom-sc7180/0010-arm64-dts-qcom-acer-aspire1-Add-embedded-controller.patch delete mode 100644 device/community/linux-postmarketos-qcom-sc7180/0011-ASoC-qcom-sc7180-Map-missing-jack-kcontrols.patch create mode 100644 device/community/linux-postmarketos-qcom-sc7180/0011-HACK-clk-Delay-disabling-unused-clocks-by-10s.patch delete mode 100644 device/community/linux-postmarketos-qcom-sc7180/0015-arm64-dts-qcom-acer-aspire1-Correct-audio-codec-defi.patch delete mode 100644 device/community/linux-postmarketos-qcom-sc7180/0017-HACK-arm64-dts-qcom-acer-aspire1-Enable-DisplayPort-.patch diff --git a/device/community/linux-postmarketos-qcom-sc7180/0001-drm-panel-edp-Add-enable-timings-for-N140HCA-EAC-pan.patch b/device/community/linux-postmarketos-qcom-sc7180/0001-drm-panel-edp-Add-enable-timings-for-N140HCA-EAC-pan.patch deleted file mode 100644 index fdaf37b7b..000000000 --- a/device/community/linux-postmarketos-qcom-sc7180/0001-drm-panel-edp-Add-enable-timings-for-N140HCA-EAC-pan.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 659a3b8a7ff330a1007bf2844253451b6fdbe9c3 Mon Sep 17 00:00:00 2001 -From: Nikita Travkin -Date: Tue, 1 Aug 2023 12:23:37 +0500 -Subject: [PATCH 1/5] drm/panel-edp: Add enable timings for N140HCA-EAC panel - -Add timings for InnoLux N140HCA-EAC. This panel is found on some laptops -such as Acer Aspire 1. - -Signed-off-by: Nikita Travkin -Reviewed-by: Douglas Anderson -Signed-off-by: Douglas Anderson -Link: https://patchwork.freedesktop.org/patch/msgid/20230801-aspire1-cmn-panel-v1-1-c3d88e389805@trvn.ru ---- - drivers/gpu/drm/panel/panel-edp.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/drivers/gpu/drm/panel/panel-edp.c b/drivers/gpu/drm/panel/panel-edp.c -index a163585a2a52..31ac50138c48 100644 ---- a/drivers/gpu/drm/panel/panel-edp.c -+++ b/drivers/gpu/drm/panel/panel-edp.c -@@ -1887,6 +1887,7 @@ static const struct edp_panel_entry edp_panels[] = { - EDP_PANEL_ENTRY('C', 'M', 'N', 0x1152, &delay_200_500_e80_d50, "N116BCN-EA1"), - EDP_PANEL_ENTRY('C', 'M', 'N', 0x1154, &delay_200_500_e80_d50, "N116BCA-EA2"), - EDP_PANEL_ENTRY('C', 'M', 'N', 0x1247, &delay_200_500_e80_d50, "N120ACA-EA1"), -+ EDP_PANEL_ENTRY('C', 'M', 'N', 0x14d4, &delay_200_500_e80_d50, "N140HCA-EAC"), - - EDP_PANEL_ENTRY('I', 'V', 'O', 0x057d, &delay_200_500_e200, "R140NWF5 RH"), - EDP_PANEL_ENTRY('I', 'V', 'O', 0x854b, &delay_200_500_p2e100, "R133NW4K-R0"), --- -2.41.0 - diff --git a/device/community/linux-postmarketos-qcom-sc7180/0008-remoteproc-qcom-pas-Add-sc7180-adsp.patch b/device/community/linux-postmarketos-qcom-sc7180/0001-remoteproc-qcom-pas-Add-sc7180-adsp.patch similarity index 83% rename from device/community/linux-postmarketos-qcom-sc7180/0008-remoteproc-qcom-pas-Add-sc7180-adsp.patch rename to device/community/linux-postmarketos-qcom-sc7180/0001-remoteproc-qcom-pas-Add-sc7180-adsp.patch index 62b101706..b15a08756 100644 --- a/device/community/linux-postmarketos-qcom-sc7180/0008-remoteproc-qcom-pas-Add-sc7180-adsp.patch +++ b/device/community/linux-postmarketos-qcom-sc7180/0001-remoteproc-qcom-pas-Add-sc7180-adsp.patch @@ -1,7 +1,7 @@ -From d3e05226627152fff5417c441407fa4a796b707b Mon Sep 17 00:00:00 2001 +From 46ee4de1b5c5099e937ffa0dc044390e4455c3b3 Mon Sep 17 00:00:00 2001 From: Nikita Travkin Date: Thu, 7 Sep 2023 15:02:35 +0500 -Subject: [PATCH 08/17] remoteproc: qcom: pas: Add sc7180 adsp +Subject: [PATCH 1/8] remoteproc: qcom: pas: Add sc7180 adsp sc7180 has a dedicated ADSP similar to the one found in sm8250. Add it's compatible to the driver reusing the existing config so @@ -16,10 +16,10 @@ Signed-off-by: Bjorn Andersson 1 file changed, 1 insertion(+) diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q6v5_pas.c -index 6afd0941e552..92aa60d81845 100644 +index b5447dd2dd35..55fafc68200e 100644 --- a/drivers/remoteproc/qcom_q6v5_pas.c +++ b/drivers/remoteproc/qcom_q6v5_pas.c -@@ -956,6 +956,7 @@ static const struct of_device_id adsp_of_match[] = { +@@ -1161,6 +1161,7 @@ static const struct of_device_id adsp_of_match[] = { { .compatible = "qcom,qcs404-adsp-pas", .data = &adsp_resource_init }, { .compatible = "qcom,qcs404-cdsp-pas", .data = &cdsp_resource_init }, { .compatible = "qcom,qcs404-wcss-pas", .data = &wcss_resource_init }, @@ -28,5 +28,5 @@ index 6afd0941e552..92aa60d81845 100644 { .compatible = "qcom,sc7280-mpss-pas", .data = &mpss_resource_init}, { .compatible = "qcom,sc8180x-adsp-pas", .data = &sm8150_adsp_resource}, -- -2.43.0 +2.43.2 diff --git a/device/community/linux-postmarketos-qcom-sc7180/0009-arm64-dts-qcom-sc7180-Add-tertiary-mi2s-pinctrl.patch b/device/community/linux-postmarketos-qcom-sc7180/0002-arm64-dts-qcom-sc7180-Add-tertiary-mi2s-pinctrl.patch similarity index 76% rename from device/community/linux-postmarketos-qcom-sc7180/0009-arm64-dts-qcom-sc7180-Add-tertiary-mi2s-pinctrl.patch rename to device/community/linux-postmarketos-qcom-sc7180/0002-arm64-dts-qcom-sc7180-Add-tertiary-mi2s-pinctrl.patch index dadf2f587..fdb423545 100644 --- a/device/community/linux-postmarketos-qcom-sc7180/0009-arm64-dts-qcom-sc7180-Add-tertiary-mi2s-pinctrl.patch +++ b/device/community/linux-postmarketos-qcom-sc7180/0002-arm64-dts-qcom-sc7180-Add-tertiary-mi2s-pinctrl.patch @@ -1,7 +1,7 @@ -From 904af70e09880a072393d4871abe16f99cdde2eb Mon Sep 17 00:00:00 2001 +From f997651c8dbcdbff191306117c4d4339d09e0924 Mon Sep 17 00:00:00 2001 From: Nikita Travkin Date: Thu, 7 Sep 2023 15:02:36 +0500 -Subject: [PATCH 09/17] arm64: dts: qcom: sc7180: Add tertiary mi2s pinctrl +Subject: [PATCH 2/8] arm64: dts: qcom: sc7180: Add tertiary mi2s pinctrl Some devices use tertiary mi2s to connect external audio codec. Add it near the other two i2s pinctrl definitions so the devices don't @@ -17,12 +17,12 @@ Signed-off-by: Bjorn Andersson 1 file changed, 5 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi -index 64ae9f27ba80..6988140a5270 100644 +index f7c528ecb224..db5d04181ac4 100644 --- a/arch/arm64/boot/dts/qcom/sc7180.dtsi +++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi -@@ -1957,6 +1957,11 @@ pinmux { - function = "lpass_ext"; - }; +@@ -2042,6 +2042,11 @@ pri_mi2s_mclk_active: pri-mi2s-mclk-active-state { + pins = "gpio57"; + function = "lpass_ext"; }; + + ter_mi2s_active: ter-mi2s-active-state { @@ -33,5 +33,5 @@ index 64ae9f27ba80..6988140a5270 100644 remoteproc_mpss: remoteproc@4080000 { -- -2.43.0 +2.43.2 diff --git a/device/community/linux-postmarketos-qcom-sc7180/0002-drm-bridge-ti-sn65dsi86-Implement-wait_hpd_asserted.patch b/device/community/linux-postmarketos-qcom-sc7180/0002-drm-bridge-ti-sn65dsi86-Implement-wait_hpd_asserted.patch deleted file mode 100644 index 6567edd0d..000000000 --- a/device/community/linux-postmarketos-qcom-sc7180/0002-drm-bridge-ti-sn65dsi86-Implement-wait_hpd_asserted.patch +++ /dev/null @@ -1,63 +0,0 @@ -From c093d7dee08532d3171fab9308939308441944ea Mon Sep 17 00:00:00 2001 -From: Nikita Travkin -Date: Sat, 8 Apr 2023 13:20:14 +0500 -Subject: [PATCH 2/5] drm/bridge: ti-sn65dsi86: Implement wait_hpd_asserted - -This bridge doesn't actually implement HPD due to it being way too slow -but instead expects the panel driver to wait enough to assume HPD is -asserted. However some panels (such as the generic 'edp-panel') expect -the bridge to deal with the delay and pass maximum delay to the aux -instead. - -In order to support such panels, add a dummy implementation of wait -that would just sleep the maximum delay and assume no failure has -happened. - -Signed-off-by: Nikita Travkin -Reviewed-by: Douglas Anderson -Signed-off-by: Douglas Anderson -Link: https://patchwork.freedesktop.org/patch/msgid/20230408082014.235425-1-nikita@trvn.ru ---- - drivers/gpu/drm/bridge/ti-sn65dsi86.c | 19 +++++++++++++++++++ - 1 file changed, 19 insertions(+) - -diff --git a/drivers/gpu/drm/bridge/ti-sn65dsi86.c b/drivers/gpu/drm/bridge/ti-sn65dsi86.c -index b89f7f7ca188..60930d35ea50 100644 ---- a/drivers/gpu/drm/bridge/ti-sn65dsi86.c -+++ b/drivers/gpu/drm/bridge/ti-sn65dsi86.c -@@ -631,6 +631,24 @@ static ssize_t ti_sn_aux_transfer(struct drm_dp_aux *aux, - return len; - } - -+static int ti_sn_aux_wait_hpd_asserted(struct drm_dp_aux *aux, unsigned long wait_us) -+{ -+ /* -+ * The HPD in this chip is a bit useless (See comment in -+ * ti_sn65dsi86_enable_comms) so if our driver is expected to wait -+ * for HPD, we just assume it's asserted after the wait_us delay. -+ * -+ * In case we are asked to wait forever (wait_us=0) take conservative -+ * 500ms delay. -+ */ -+ if (wait_us == 0) -+ wait_us = 500000; -+ -+ usleep_range(wait_us, wait_us + 1000); -+ -+ return 0; -+} -+ - static int ti_sn_aux_probe(struct auxiliary_device *adev, - const struct auxiliary_device_id *id) - { -@@ -640,6 +658,7 @@ static int ti_sn_aux_probe(struct auxiliary_device *adev, - pdata->aux.name = "ti-sn65dsi86-aux"; - pdata->aux.dev = &adev->dev; - pdata->aux.transfer = ti_sn_aux_transfer; -+ pdata->aux.wait_hpd_asserted = ti_sn_aux_wait_hpd_asserted; - drm_dp_aux_init(&pdata->aux); - - ret = devm_of_dp_aux_populate_ep_devices(&pdata->aux); --- -2.41.0 - diff --git a/device/community/linux-postmarketos-qcom-sc7180/0010-arm64-dts-qcom-sc7180-Add-ADSP.patch b/device/community/linux-postmarketos-qcom-sc7180/0003-arm64-dts-qcom-sc7180-Add-ADSP.patch similarity index 94% rename from device/community/linux-postmarketos-qcom-sc7180/0010-arm64-dts-qcom-sc7180-Add-ADSP.patch rename to device/community/linux-postmarketos-qcom-sc7180/0003-arm64-dts-qcom-sc7180-Add-ADSP.patch index c9fb65ab0..07a529060 100644 --- a/device/community/linux-postmarketos-qcom-sc7180/0010-arm64-dts-qcom-sc7180-Add-ADSP.patch +++ b/device/community/linux-postmarketos-qcom-sc7180/0003-arm64-dts-qcom-sc7180-Add-ADSP.patch @@ -1,7 +1,7 @@ -From 73db0fa78b569523c6a5fa8e68ddfbe83a07be6c Mon Sep 17 00:00:00 2001 +From 419d22eeba6b335ba58d8dd9d064b871a37cb1fb Mon Sep 17 00:00:00 2001 From: Nikita Travkin Date: Thu, 7 Sep 2023 15:02:37 +0500 -Subject: [PATCH 10/17] arm64: dts: qcom: sc7180: Add ADSP +Subject: [PATCH 3/8] arm64: dts: qcom: sc7180: Add ADSP sc7180 has an ADSP remoteproc that exclusively controls the audio hardware on devices that use Qualcomm firmware. @@ -18,10 +18,10 @@ Signed-off-by: Bjorn Andersson 1 file changed, 122 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi -index 6988140a5270..b9d6c95191ae 100644 +index db5d04181ac4..3683419ee8f5 100644 --- a/arch/arm64/boot/dts/qcom/sc7180.dtsi +++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi -@@ -19,6 +19,8 @@ +@@ -20,6 +20,8 @@ #include #include #include @@ -30,7 +30,7 @@ index 6988140a5270..b9d6c95191ae 100644 #include / { -@@ -3635,6 +3637,126 @@ wifi: wifi@18800000 { +@@ -3781,6 +3783,126 @@ wifi: wifi@18800000 { status = "disabled"; }; @@ -158,5 +158,5 @@ index 6988140a5270..b9d6c95191ae 100644 compatible = "qcom,sc7180-lpasscorecc"; reg = <0 0x62d00000 0 0x50000>, -- -2.43.0 +2.43.2 diff --git a/device/community/linux-postmarketos-qcom-sc7180/0003-arm64-dts-qcom-sc7180-Don-t-enable-lpass-clocks-by-d.patch b/device/community/linux-postmarketos-qcom-sc7180/0003-arm64-dts-qcom-sc7180-Don-t-enable-lpass-clocks-by-d.patch deleted file mode 100644 index 37484c6b7..000000000 --- a/device/community/linux-postmarketos-qcom-sc7180/0003-arm64-dts-qcom-sc7180-Don-t-enable-lpass-clocks-by-d.patch +++ /dev/null @@ -1,76 +0,0 @@ -From 9b72464591d389f422b5e4485aa8c97afd79356a Mon Sep 17 00:00:00 2001 -From: Nikita Travkin -Date: Mon, 15 May 2023 14:37:41 +0500 -Subject: [PATCH 3/5] arm64: dts: qcom: sc7180: Don't enable lpass clocks by - default - -lpass clocks are usually blocked from HLOS by the firmware and -instead are managed by the ADSP. Mark them as reserved and explicitly -enable in the CrOS boards that have special, cooperative firmware. - -The IDP board gets lpass clocks disabled as it doesn't make use of sound -anyway and might use Qualcomm firmware that blocks those clocks. [1] - -[1] https://lore.kernel.org/all/ZBJhmDd3zK%2FAiwBD@google.com/ - -Signed-off-by: Nikita Travkin -Reviewed-by: Konrad Dybcio -Reviewed-by: Douglas Anderson -Signed-off-by: Bjorn Andersson -Link: https://lore.kernel.org/r/20230515093744.289045-2-nikita@trvn.ru ---- - arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi | 8 ++++++++ - arch/arm64/boot/dts/qcom/sc7180.dtsi | 4 ++++ - 2 files changed, 12 insertions(+) - -diff --git a/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi b/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi -index eae22e6e97c1..6508628fd5ba 100644 ---- a/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi -+++ b/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi -@@ -777,6 +777,10 @@ alc5682: codec@1a { - }; - }; - -+&lpasscc { -+ status = "okay"; -+}; -+ - &lpass_cpu { - status = "okay"; - -@@ -802,6 +806,10 @@ hdmi@5 { - }; - }; - -+&lpass_hm { -+ status = "okay"; -+}; -+ - &mdp { - status = "okay"; - }; -diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi -index 6f0ee4e13ef1..a7cd017b3ece 100644 ---- a/arch/arm64/boot/dts/qcom/sc7180.dtsi -+++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi -@@ -3576,6 +3576,8 @@ lpasscc: clock-controller@62d00000 { - power-domains = <&lpass_hm LPASS_CORE_HM_GDSCR>; - #clock-cells = <1>; - #power-domain-cells = <1>; -+ -+ status = "reserved"; /* Controlled by ADSP */ - }; - - lpass_cpu: lpass@62d87000 { -@@ -3621,6 +3623,8 @@ lpass_hm: clock-controller@63000000 { - clock-names = "iface", "bi_tcxo"; - #clock-cells = <1>; - #power-domain-cells = <1>; -+ -+ status = "reserved"; /* Controlled by ADSP */ - }; - }; - --- -2.41.0 - diff --git a/device/community/linux-postmarketos-qcom-sc7180/0012-ASoC-qcom-sc7180-Add-support-for-qdsp6-baked-sound.patch b/device/community/linux-postmarketos-qcom-sc7180/0004-ASoC-qcom-sc7180-Add-support-for-qdsp6-baked-sound.patch similarity index 81% rename from device/community/linux-postmarketos-qcom-sc7180/0012-ASoC-qcom-sc7180-Add-support-for-qdsp6-baked-sound.patch rename to device/community/linux-postmarketos-qcom-sc7180/0004-ASoC-qcom-sc7180-Add-support-for-qdsp6-baked-sound.patch index 90ffd2a79..18b8dac23 100644 --- a/device/community/linux-postmarketos-qcom-sc7180/0012-ASoC-qcom-sc7180-Add-support-for-qdsp6-baked-sound.patch +++ b/device/community/linux-postmarketos-qcom-sc7180/0004-ASoC-qcom-sc7180-Add-support-for-qdsp6-baked-sound.patch @@ -1,7 +1,7 @@ -From 98378d3ecfeb0741b313ff607a2c883ebee26da3 Mon Sep 17 00:00:00 2001 +From 86b2a5a727c07a83acea7946a132dddc27549299 Mon Sep 17 00:00:00 2001 From: Nikita Travkin -Date: Thu, 19 Oct 2023 19:14:13 +0500 -Subject: [PATCH 12/17] ASoC: qcom: sc7180: Add support for qdsp6 baked sound +Date: Fri, 20 Oct 2023 20:33:47 +0500 +Subject: [PATCH 4/8] ASoC: qcom: sc7180: Add support for qdsp6 baked sound Some sc7180 devices use audio adsp to play sound. The setup for this adsp is similar to the dirrect lpass usage but requires the use of @@ -19,31 +19,36 @@ trivially expandable to the other devices that will be added in the future. Signed-off-by: Nikita Travkin +Link: https://lore.kernel.org/r/20231020-sc7180-qdsp-sndcard-v1-2-157706b7d06f@trvn.ru +Signed-off-by: Mark Brown --- - sound/soc/qcom/sc7180.c | 194 +++++++++++++++++++++++++++++++++++----- - 1 file changed, 172 insertions(+), 22 deletions(-) + sound/soc/qcom/sc7180.c | 195 +++++++++++++++++++++++++++++++++++----- + 1 file changed, 173 insertions(+), 22 deletions(-) diff --git a/sound/soc/qcom/sc7180.c b/sound/soc/qcom/sc7180.c -index 57c5f35dfcc5..c4f58ecd3896 100644 +index d1fd40e3f7a9..a198fcda2955 100644 --- a/sound/soc/qcom/sc7180.c +++ b/sound/soc/qcom/sc7180.c -@@ -15,6 +15,7 @@ - #include - #include - #include -+#include "qdsp6/q6afe.h" +@@ -5,6 +5,7 @@ + // sc7180.c -- ALSA SoC Machine driver for SC7180 - #include "../codecs/rt5682.h" + #include ++#include + #include + #include + #include +@@ -20,8 +21,10 @@ #include "../codecs/rt5682s.h" -@@ -22,6 +23,7 @@ + #include "common.h" #include "lpass.h" ++#include "qdsp6/q6afe.h" #define DEFAULT_MCLK_RATE 19200000 +#define MI2S_BCLK_RATE 1536000 #define RT5682_PLL1_FREQ (48000 * 512) #define DRIVER_NAME "SC7180" -@@ -134,12 +136,28 @@ static int sc7180_init(struct snd_soc_pcm_runtime *rtd) +@@ -134,12 +137,28 @@ static int sc7180_init(struct snd_soc_pcm_runtime *rtd) return 0; } @@ -53,7 +58,7 @@ index 57c5f35dfcc5..c4f58ecd3896 100644 - struct snd_soc_pcm_runtime *rtd = substream->private_data; - struct snd_soc_card *card = rtd->card; - struct sc7180_snd_data *data = snd_soc_card_get_drvdata(card); - struct snd_soc_dai *cpu_dai = asoc_rtd_to_cpu(rtd, 0); + struct snd_soc_dai *cpu_dai = snd_soc_rtd_to_cpu(rtd, 0); + + switch (cpu_dai->id) { + case PRIMARY_MI2S_RX: @@ -73,10 +78,10 @@ index 57c5f35dfcc5..c4f58ecd3896 100644 + +static int sc7180_startup_realtek_codec(struct snd_soc_pcm_runtime *rtd) +{ - struct snd_soc_dai *codec_dai = asoc_rtd_to_codec(rtd, 0); + struct snd_soc_dai *codec_dai = snd_soc_rtd_to_codec(rtd, 0); int pll_id, pll_source, pll_in, pll_out, clk_id, ret; -@@ -155,8 +173,40 @@ static int sc7180_snd_startup(struct snd_pcm_substream *substream) +@@ -155,8 +174,40 @@ static int sc7180_snd_startup(struct snd_pcm_substream *substream) clk_id = RT5682S_SCLK_S_PLL2; pll_out = RT5682_PLL1_FREQ; pll_in = DEFAULT_MCLK_RATE; @@ -111,13 +116,13 @@ index 57c5f35dfcc5..c4f58ecd3896 100644 + struct snd_soc_pcm_runtime *rtd = substream->private_data; + struct snd_soc_card *card = rtd->card; + struct sc7180_snd_data *data = snd_soc_card_get_drvdata(card); -+ struct snd_soc_dai *cpu_dai = asoc_rtd_to_cpu(rtd, 0); ++ struct snd_soc_dai *cpu_dai = snd_soc_rtd_to_cpu(rtd, 0); + int ret; + switch (cpu_dai->id) { case MI2S_PRIMARY: if (++data->pri_mi2s_clk_count == 1) { -@@ -166,30 +216,66 @@ static int sc7180_snd_startup(struct snd_pcm_substream *substream) +@@ -166,30 +217,66 @@ static int sc7180_snd_startup(struct snd_pcm_substream *substream) SNDRV_PCM_STREAM_PLAYBACK); } @@ -153,8 +158,8 @@ index 57c5f35dfcc5..c4f58ecd3896 100644 + struct snd_soc_pcm_runtime *rtd = substream->private_data; + struct snd_soc_card *card = rtd->card; + struct sc7180_snd_data *data = snd_soc_card_get_drvdata(card); -+ struct snd_soc_dai *cpu_dai = asoc_rtd_to_cpu(rtd, 0); -+ struct snd_soc_dai *codec_dai = asoc_rtd_to_codec(rtd, 0); ++ struct snd_soc_dai *cpu_dai = snd_soc_rtd_to_cpu(rtd, 0); ++ struct snd_soc_dai *codec_dai = snd_soc_rtd_to_codec(rtd, 0); + int ret; + + switch (cpu_dai->id) { @@ -186,8 +191,8 @@ index 57c5f35dfcc5..c4f58ecd3896 100644 - case MI2S_SECONDARY: + case TERTIARY_MI2S_RX: + snd_soc_dai_set_sysclk(cpu_dai, -+ Q6AFE_LPASS_CLK_ID_TER_MI2S_IBIT, -+ MI2S_BCLK_RATE, ++ Q6AFE_LPASS_CLK_ID_TER_MI2S_IBIT, ++ MI2S_BCLK_RATE, + SNDRV_PCM_STREAM_PLAYBACK); + + snd_soc_dai_set_fmt(codec_dai, @@ -201,7 +206,7 @@ index 57c5f35dfcc5..c4f58ecd3896 100644 break; default: dev_err(rtd->dev, "%s: invalid dai id 0x%x\n", __func__, -@@ -247,6 +333,42 @@ static void sc7180_snd_shutdown(struct snd_pcm_substream *substream) +@@ -247,6 +334,42 @@ static void sc7180_snd_shutdown(struct snd_pcm_substream *substream) } } @@ -210,7 +215,7 @@ index 57c5f35dfcc5..c4f58ecd3896 100644 + struct snd_soc_pcm_runtime *rtd = substream->private_data; + struct snd_soc_card *card = rtd->card; + struct sc7180_snd_data *data = snd_soc_card_get_drvdata(card); -+ struct snd_soc_dai *cpu_dai = asoc_rtd_to_cpu(rtd, 0); ++ struct snd_soc_dai *cpu_dai = snd_soc_rtd_to_cpu(rtd, 0); + + switch (cpu_dai->id) { + case PRIMARY_MI2S_RX: @@ -228,8 +233,8 @@ index 57c5f35dfcc5..c4f58ecd3896 100644 + break; + case TERTIARY_MI2S_RX: + snd_soc_dai_set_sysclk(cpu_dai, -+ Q6AFE_LPASS_CLK_ID_TER_MI2S_IBIT, -+ 0, ++ Q6AFE_LPASS_CLK_ID_TER_MI2S_IBIT, ++ 0, + SNDRV_PCM_STREAM_PLAYBACK); + break; + case DISPLAY_PORT_RX: @@ -243,8 +248,8 @@ index 57c5f35dfcc5..c4f58ecd3896 100644 + static int sc7180_adau7002_init(struct snd_soc_pcm_runtime *rtd) { - struct snd_soc_dai *cpu_dai = asoc_rtd_to_cpu(rtd, 0); -@@ -295,11 +417,30 @@ static int sc7180_adau7002_snd_startup(struct snd_pcm_substream *substream) + struct snd_soc_dai *cpu_dai = snd_soc_rtd_to_cpu(rtd, 0); +@@ -295,11 +418,30 @@ static int sc7180_adau7002_snd_startup(struct snd_pcm_substream *substream) return 0; } @@ -275,7 +280,7 @@ index 57c5f35dfcc5..c4f58ecd3896 100644 static const struct snd_soc_ops sc7180_adau7002_ops = { .startup = sc7180_adau7002_snd_startup, }; -@@ -355,7 +496,7 @@ static int sc7180_snd_platform_probe(struct platform_device *pdev) +@@ -355,7 +497,7 @@ static int sc7180_snd_platform_probe(struct platform_device *pdev) struct snd_soc_dai_link *link; int ret; int i; @@ -284,7 +289,7 @@ index 57c5f35dfcc5..c4f58ecd3896 100644 /* Allocate the private data */ data = devm_kzalloc(dev, sizeof(*data), GFP_KERNEL); -@@ -391,6 +532,8 @@ static int sc7180_snd_platform_probe(struct platform_device *pdev) +@@ -391,6 +533,8 @@ static int sc7180_snd_platform_probe(struct platform_device *pdev) no_headphone = true; card->dapm_widgets = sc7180_adau7002_snd_widgets; card->num_dapm_widgets = ARRAY_SIZE(sc7180_adau7002_snd_widgets); @@ -293,7 +298,7 @@ index 57c5f35dfcc5..c4f58ecd3896 100644 } ret = qcom_snd_parse_of(card); -@@ -401,6 +544,12 @@ static int sc7180_snd_platform_probe(struct platform_device *pdev) +@@ -401,6 +545,12 @@ static int sc7180_snd_platform_probe(struct platform_device *pdev) if (no_headphone) { link->ops = &sc7180_adau7002_ops; link->init = sc7180_adau7002_init; @@ -306,7 +311,7 @@ index 57c5f35dfcc5..c4f58ecd3896 100644 } else { link->ops = &sc7180_ops; link->init = sc7180_init; -@@ -413,6 +562,7 @@ static int sc7180_snd_platform_probe(struct platform_device *pdev) +@@ -413,6 +563,7 @@ static int sc7180_snd_platform_probe(struct platform_device *pdev) static const struct of_device_id sc7180_snd_device_id[] = { {.compatible = "google,sc7180-trogdor"}, {.compatible = "google,sc7180-coachz"}, @@ -315,5 +320,5 @@ index 57c5f35dfcc5..c4f58ecd3896 100644 }; MODULE_DEVICE_TABLE(of, sc7180_snd_device_id); -- -2.43.0 +2.43.2 diff --git a/device/community/linux-postmarketos-qcom-sc7180/0004-arm64-dts-qcom-sc7180-Drop-redundant-disable-in-mdp.patch b/device/community/linux-postmarketos-qcom-sc7180/0004-arm64-dts-qcom-sc7180-Drop-redundant-disable-in-mdp.patch deleted file mode 100644 index 24df0b5fd..000000000 --- a/device/community/linux-postmarketos-qcom-sc7180/0004-arm64-dts-qcom-sc7180-Drop-redundant-disable-in-mdp.patch +++ /dev/null @@ -1,66 +0,0 @@ -From d03ea6cf66d36e55b0a57643c1f294b0e828a784 Mon Sep 17 00:00:00 2001 -From: Nikita Travkin -Date: Mon, 15 May 2023 14:37:42 +0500 -Subject: [PATCH 4/5] arm64: dts: qcom: sc7180: Drop redundant disable in mdp - -mdss is useless without a display controller which makes explicitly -enabling mdp redundant. Have it enabled by default to drop the extra -node for all users. - -Signed-off-by: Nikita Travkin -Reviewed-by: Konrad Dybcio -Reviewed-by: Douglas Anderson -Signed-off-by: Bjorn Andersson -Link: https://lore.kernel.org/r/20230515093744.289045-3-nikita@trvn.ru ---- - arch/arm64/boot/dts/qcom/sc7180-idp.dts | 4 ---- - arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi | 4 ---- - arch/arm64/boot/dts/qcom/sc7180.dtsi | 2 -- - 3 files changed, 10 deletions(-) - -diff --git a/arch/arm64/boot/dts/qcom/sc7180-idp.dts b/arch/arm64/boot/dts/qcom/sc7180-idp.dts -index 9dee131b1e24..d3c4b5804a69 100644 ---- a/arch/arm64/boot/dts/qcom/sc7180-idp.dts -+++ b/arch/arm64/boot/dts/qcom/sc7180-idp.dts -@@ -333,10 +333,6 @@ &dsi_phy { - vdds-supply = <&vreg_l4a_0p8>; - }; - --&mdp { -- status = "okay"; --}; -- - &mdss { - status = "okay"; - }; -diff --git a/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi b/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi -index 6508628fd5ba..f4db4ccf48e5 100644 ---- a/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi -+++ b/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi -@@ -810,10 +810,6 @@ &lpass_hm { - status = "okay"; - }; - --&mdp { -- status = "okay"; --}; -- - &mdss { - status = "okay"; - }; -diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi -index a7cd017b3ece..3f02f1ce6f1e 100644 ---- a/arch/arm64/boot/dts/qcom/sc7180.dtsi -+++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi -@@ -2937,8 +2937,6 @@ mdp: display-controller@ae01000 { - interrupt-parent = <&mdss>; - interrupts = <0>; - -- status = "disabled"; -- - ports { - #address-cells = <1>; - #size-cells = <0>; --- -2.41.0 - diff --git a/device/community/linux-postmarketos-qcom-sc7180/0005-arm64-dts-qcom-Add-Acer-Aspire-1.patch b/device/community/linux-postmarketos-qcom-sc7180/0005-arm64-dts-qcom-Add-Acer-Aspire-1.patch deleted file mode 100644 index 8c502fd39..000000000 --- a/device/community/linux-postmarketos-qcom-sc7180/0005-arm64-dts-qcom-Add-Acer-Aspire-1.patch +++ /dev/null @@ -1,889 +0,0 @@ -From f190c467210f639ca33f072f31dd4e2f1c2bcd8b Mon Sep 17 00:00:00 2001 -From: Nikita Travkin -Date: Mon, 15 May 2023 14:37:44 +0500 -Subject: [PATCH 5/5] arm64: dts: qcom: Add Acer Aspire 1 - -Acer Aspire 1 is a WoA laptop based on Snapdragon 7c gen1 platform. - -The laptop design is similar to trogdor in the choice of primary -components but the specifics on usage of those differ slightly. - -Add the devicetree for the laptop with support for most of the -hardware present. - -Signed-off-by: Nikita Travkin -Reviewed-by: Konrad Dybcio -Signed-off-by: Bjorn Andersson -Link: https://lore.kernel.org/r/20230515093744.289045-5-nikita@trvn.ru ---- - arch/arm64/boot/dts/qcom/Makefile | 1 + - .../boot/dts/qcom/sc7180-acer-aspire1.dts | 845 ++++++++++++++++++ - 2 files changed, 846 insertions(+) - create mode 100644 arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts - -diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile -index d7669a7cee9f..cf482aaf7156 100644 ---- a/arch/arm64/boot/dts/qcom/Makefile -+++ b/arch/arm64/boot/dts/qcom/Makefile -@@ -54,6 +54,7 @@ dtb-$(CONFIG_ARCH_QCOM) += qcs404-evb-4000.dtb - dtb-$(CONFIG_ARCH_QCOM) += qrb5165-rb5.dtb - dtb-$(CONFIG_ARCH_QCOM) += sa8155p-adp.dtb - dtb-$(CONFIG_ARCH_QCOM) += sa8295p-adp.dtb -+dtb-$(CONFIG_ARCH_QCOM) += sc7180-acer-aspire1.dtb - dtb-$(CONFIG_ARCH_QCOM) += sc7180-idp.dtb - dtb-$(CONFIG_ARCH_QCOM) += sc7180-trogdor-coachz-r1.dtb - dtb-$(CONFIG_ARCH_QCOM) += sc7180-trogdor-coachz-r1-lte.dtb -diff --git a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts -new file mode 100644 -index 000000000000..2a80f4090085 ---- /dev/null -+++ b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts -@@ -0,0 +1,845 @@ -+// SPDX-License-Identifier: BSD-3-Clause -+ -+/dts-v1/; -+ -+#include -+#include -+ -+#include "sc7180.dtsi" -+ -+#include "pm6150.dtsi" -+#include "pm6150l.dtsi" -+ -+/delete-node/ &tz_mem; -+/delete-node/ &ipa_fw_mem; -+ -+/ { -+ model = "Acer Aspire 1"; -+ compatible = "acer,aspire1", "qcom,sc7180"; -+ chassis-type = "laptop"; -+ -+ aliases { -+ bluetooth0 = &bluetooth; -+ hsuart0 = &uart3; -+ serial0 = &uart8; -+ wifi0 = &wifi; -+ }; -+ -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ }; -+ -+ reserved-memory { -+ zap_mem: zap-shader@80840000 { -+ reg = <0x0 0x80840000 0 0x2000>; -+ no-map; -+ }; -+ -+ venus_mem: venus@85b00000 { -+ reg = <0x0 0x85b00000 0 0x500000>; -+ no-map; -+ }; -+ -+ mpss_mem: mpss@86000000 { -+ reg = <0x0 0x86000000 0x0 0x2000000>; -+ no-map; -+ }; -+ -+ adsp_mem: adsp@8e400000 { -+ reg = <0x0 0x8e400000 0x0 0x2800000>; -+ no-map; -+ }; -+ -+ wlan_mem: wlan@93900000 { -+ reg = <0x0 0x93900000 0x0 0x200000>; -+ no-map; -+ }; -+ }; -+ -+ max98357a: audio-codec { -+ compatible = "maxim,max98357a"; -+ sdmode-gpios = <&tlmm 23 GPIO_ACTIVE_HIGH>; -+ -+ pinctrl-0 = <&_sd_mode_default>; -+ pinctrl-names = "default"; -+ -+ #sound-dai-cells = <0>; -+ }; -+ -+ backlight: backlight { -+ compatible = "pwm-backlight"; -+ pwms = <&sn65dsi86_bridge 1000000>; -+ enable-gpios = <&tlmm 10 GPIO_ACTIVE_HIGH>; -+ -+ pinctrl-0 = <&soc_bkoff_default>; -+ pinctrl-names = "default"; -+ }; -+ -+ reg_brij_1p2: bridge-1p2-regulator { -+ compatible = "regulator-fixed"; -+ regulator-name = "brij_1p2"; -+ regulator-min-microvolt = <1200000>; -+ regulator-max-microvolt = <1200000>; -+ -+ gpio = <&tlmm 19 GPIO_ACTIVE_HIGH>; -+ enable-active-high; -+ -+ pinctrl-0 = <®_edp_1p2_en_default>; -+ pinctrl-names = "default"; -+ }; -+ -+ reg_brij_1p8: bridge-regulator { -+ compatible = "regulator-fixed"; -+ regulator-name = "brij_1p8"; -+ regulator-min-microvolt = <1800000>; -+ regulator-max-microvolt = <1800000>; -+ -+ vin-supply = <&vreg_l8c_1p8>; -+ -+ gpio = <&tlmm 20 GPIO_ACTIVE_HIGH>; -+ enable-active-high; -+ -+ pinctrl-0 = <®_edp_1p8_en_default>; -+ pinctrl-names = "default"; -+ }; -+ -+ reg_codec_3p3: codec-regulator { -+ compatible = "regulator-fixed"; -+ regulator-name = "codec_3p3"; -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ -+ gpio = <&tlmm 83 GPIO_ACTIVE_HIGH>; -+ enable-active-high; -+ -+ pinctrl-0 = <®_audio_en_default>; -+ pinctrl-names = "default"; -+ }; -+ -+ reg_lcm_3p3: panel-regulator { -+ compatible = "regulator-fixed"; -+ regulator-name = "lcm_3p3"; -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ -+ gpio = <&tlmm 26 GPIO_ACTIVE_HIGH>; -+ enable-active-high; -+ -+ pinctrl-0 = <®_lcm_en_default>; -+ pinctrl-names = "default"; -+ }; -+ -+ reg_tp_3p3: touchpad-regulator { -+ compatible = "regulator-fixed"; -+ regulator-name = "tp_3p3"; -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ -+ gpio = <&tlmm 25 GPIO_ACTIVE_HIGH>; -+ enable-active-high; -+ -+ pinctrl-0 = <®_tp_en_default>; -+ pinctrl-names = "default"; -+ }; -+}; -+ -+&dsi0 { -+ vdda-supply = <&vreg_l3c_1p2>; -+ status = "okay"; -+}; -+ -+&dsi0_out { -+ remote-endpoint = <&sn65dsi86_in>; -+ data-lanes = <0 1 2 3>; -+}; -+ -+&dsi_phy { -+ vdds-supply = <&vreg_l4a_0p8>; -+ status = "okay"; -+}; -+ -+&i2c2 { -+ clock-frequency = <400000>; -+ status = "okay"; -+ -+ /* embedded-controller@76 */ -+}; -+ -+&i2c4 { -+ clock-frequency = <400000>; -+ status = "okay"; -+ -+ /* -+ * NOTE: DSDT defines two possible touchpads, other one is -+ * -+ * reg = <0x15>; -+ * hid-descr-addr = <0x1>; -+ */ -+ -+ touchpad@2c { -+ compatible = "hid-over-i2c"; -+ reg = <0x2c>; -+ hid-descr-addr = <0x20>; -+ -+ vdd-supply = <®_tp_3p3>; -+ -+ interrupts-extended = <&tlmm 94 IRQ_TYPE_LEVEL_LOW>; -+ -+ pinctrl-0 = <&hid_touchpad_default>; -+ pinctrl-names = "default"; -+ -+ wakeup-source; -+ }; -+ -+ keyboard@3a { -+ compatible = "hid-over-i2c"; -+ reg = <0x3a>; -+ hid-descr-addr = <0x1>; -+ -+ interrupts-extended = <&tlmm 33 IRQ_TYPE_LEVEL_LOW>; -+ -+ pinctrl-0 = <&hid_keyboard_default>; -+ pinctrl-names = "default"; -+ -+ wakeup-source; -+ }; -+}; -+ -+&i2c9 { -+ clock-frequency = <400000>; -+ status = "okay"; -+ -+ alc5682: codec@1a { -+ compatible = "realtek,rt5682i"; -+ reg = <0x1a>; -+ -+ #sound-dai-cells = <1>; -+ -+ interrupt-parent = <&tlmm>; -+ interrupts = <28 IRQ_TYPE_EDGE_BOTH>; -+ -+ pinctrl-0 = <&codec_irq_default>; -+ pinctrl-names = "default"; -+ -+ AVDD-supply = <&vreg_l15a_1p8>; -+ MICVDD-supply = <®_codec_3p3>; -+ VBAT-supply = <®_codec_3p3>; -+ -+ realtek,dmic1-data-pin = <1>; -+ realtek,dmic1-clk-pin = <1>; -+ realtek,jd-src = <1>; -+ }; -+}; -+ -+&i2c10 { -+ clock-frequency = <400000>; -+ status = "okay"; -+ -+ sn65dsi86_bridge: bridge@2c { -+ compatible = "ti,sn65dsi86"; -+ reg = <0x2c>; -+ gpio-controller; -+ #gpio-cells = <2>; -+ #pwm-cells = <1>; -+ -+ interrupt-parent = <&tlmm>; -+ interrupts = <11 IRQ_TYPE_LEVEL_HIGH>; -+ -+ enable-gpios = <&tlmm 51 GPIO_ACTIVE_HIGH>; -+ suspend-gpios = <&tlmm 22 GPIO_ACTIVE_LOW>; -+ -+ pinctrl-0 = <&bridge_en_default>, -+ <&edp_bridge_irq_default>, -+ <&bridge_suspend_default>; -+ pinctrl-names = "default"; -+ -+ vpll-supply = <®_brij_1p8>; -+ vccio-supply = <®_brij_1p8>; -+ vcca-supply = <®_brij_1p2>; -+ vcc-supply = <®_brij_1p2>; -+ -+ clocks = <&rpmhcc RPMH_LN_BB_CLK3>; -+ clock-names = "refclk"; -+ -+ ports { -+ #address-cells = <1>; -+ #size-cells = <0>; -+ -+ port@0 { -+ reg = <0>; -+ -+ sn65dsi86_in: endpoint { -+ remote-endpoint = <&dsi0_out>; -+ }; -+ }; -+ -+ port@1 { -+ reg = <1>; -+ -+ sn65dsi86_out: endpoint { -+ data-lanes = <0 1>; -+ remote-endpoint = <&panel_in_edp>; -+ }; -+ }; -+ }; -+ -+ aux-bus { -+ panel: panel { -+ compatible = "edp-panel"; -+ power-supply = <®_lcm_3p3>; -+ backlight = <&backlight>; -+ hpd-absent-delay-ms = <200>; -+ -+ port { -+ panel_in_edp: endpoint { -+ remote-endpoint = <&sn65dsi86_out>; -+ }; -+ }; -+ }; -+ }; -+ }; -+}; -+ -+&gpu { -+ status = "okay"; -+ -+ zap-shader { -+ memory-region = <&zap_mem>; -+ firmware-name = "qcom/sc7180/acer/aspire1/qcdxkmsuc7180.mbn"; -+ }; -+}; -+ -+&mdss { -+ status = "okay"; -+}; -+ -+&pm6150_adc { -+ thermistor@4e { -+ reg = ; -+ qcom,ratiometric; -+ qcom,hw-settle-time = <200>; -+ }; -+ -+ charger-thermistor@4f { -+ reg = ; -+ qcom,ratiometric; -+ qcom,hw-settle-time = <200>; -+ }; -+}; -+ -+&pm6150_adc_tm { -+ status = "okay"; -+ -+ charger-thermistor@0 { -+ reg = <0>; -+ io-channels = <&pm6150_adc ADC5_AMUX_THM3_100K_PU>; -+ qcom,ratiometric; -+ qcom,hw-settle-time-us = <200>; -+ }; -+ -+ thermistor@1 { -+ reg = <1>; -+ io-channels = <&pm6150_adc ADC5_AMUX_THM2_100K_PU>; -+ qcom,ratiometric; -+ qcom,hw-settle-time-us = <200>; -+ }; -+}; -+ -+&pm6150_pon { -+ status = "disabled"; -+}; -+ -+&qupv3_id_0 { -+ status = "okay"; -+}; -+ -+&qupv3_id_1 { -+ status = "okay"; -+}; -+ -+&remoteproc_mpss { -+ firmware-name = "qcom/sc7180/acer/aspire1/qcmpss7180_nm.mbn"; -+ status = "okay"; -+}; -+ -+&sdhc_1 { -+ pinctrl-0 = <&sdc1_default>; -+ pinctrl-1 = <&sdc1_sleep>; -+ pinctrl-names = "default", "sleep"; -+ vmmc-supply = <&vreg_l19a_2p9>; -+ vqmmc-supply = <&vreg_l12a_1p8>; -+ -+ status = "okay"; -+}; -+ -+&uart3 { -+ /delete-property/interrupts; -+ interrupts-extended = <&intc GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>, -+ <&tlmm 41 IRQ_TYPE_EDGE_FALLING>; -+ -+ pinctrl-1 = <&qup_uart3_sleep>; -+ pinctrl-names = "default", "sleep"; -+ -+ status = "okay"; -+ -+ bluetooth: bluetooth { -+ compatible = "qcom,wcn3991-bt"; -+ vddio-supply = <&vreg_l10a_1p8>; -+ vddxo-supply = <&vreg_l1c_1p8>; -+ vddrf-supply = <&vreg_l2c_1p3>; -+ vddch0-supply = <&vreg_l10c_3p3>; -+ max-speed = <3200000>; -+ }; -+}; -+ -+&uart8 { -+ status = "okay"; -+}; -+ -+&usb_1 { -+ status = "okay"; -+}; -+ -+&usb_1_dwc3 { -+ dr_mode = "host"; -+ #address-cells = <1>; -+ #size-cells = <0>; -+ -+ usb_hub_2_x: hub@1 { -+ compatible = "usbbda,5411"; -+ reg = <1>; -+ peer-hub = <&usb_hub_3_x>; -+ }; -+ -+ usb_hub_3_x: hub@2 { -+ compatible = "usbbda,411"; -+ reg = <2>; -+ peer-hub = <&usb_hub_2_x>; -+ }; -+}; -+ -+&usb_1_hsphy { -+ vdd-supply = <&vreg_l4a_0p8>; -+ vdda-pll-supply = <&vreg_l11a_1p8>; -+ vdda-phy-dpdm-supply = <&vreg_l17a_3p0>; -+ qcom,imp-res-offset-value = <8>; -+ qcom,preemphasis-level = ; -+ qcom,preemphasis-width = ; -+ qcom,bias-ctrl-value = <0x22>; -+ qcom,charge-ctrl-value = <3>; -+ qcom,hsdisc-trim-value = <0>; -+ -+ status = "okay"; -+}; -+ -+&usb_1_qmpphy { -+ vdda-phy-supply = <&vreg_l3c_1p2>; -+ vdda-pll-supply = <&vreg_l4a_0p8>; -+ -+ status = "okay"; -+}; -+ -+&venus { -+ firmware-name = "qcom/sc7180/acer/aspire1/qcvss7180.mbn"; -+}; -+ -+&wifi { -+ vdd-0.8-cx-mx-supply = <&vreg_l9a_0p6>; -+ vdd-1.8-xo-supply = <&vreg_l1c_1p8>; -+ vdd-1.3-rfa-supply = <&vreg_l2c_1p3>; -+ vdd-3.3-ch0-supply = <&vreg_l10c_3p3>; -+ vdd-3.3-ch1-supply = <&vreg_l11c_3p3>; -+ -+ status = "okay"; -+}; -+ -+&apps_rsc { -+ regulators-0 { -+ compatible = "qcom,pm6150-rpmh-regulators"; -+ qcom,pmic-id = "a"; -+ -+ vreg_s1a_1p1: smps1 { -+ regulator-min-microvolt = <1128000>; -+ regulator-max-microvolt = <1128000>; -+ }; -+ -+ vreg_l4a_0p8: ldo4 { -+ regulator-min-microvolt = <824000>; -+ regulator-max-microvolt = <928000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l9a_0p6: ldo9 { -+ regulator-min-microvolt = <488000>; -+ regulator-max-microvolt = <800000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l10a_1p8: ldo10 { -+ regulator-min-microvolt = <1800000>; -+ regulator-max-microvolt = <1800000>; -+ regulator-initial-mode = ; -+ regulator-always-on; -+ regulator-boot-on; -+ }; -+ -+ vreg_l11a_1p8: ldo11 { -+ regulator-min-microvolt = <1800000>; -+ regulator-max-microvolt = <1800000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l12a_1p8: ldo12 { -+ regulator-min-microvolt = <1800000>; -+ regulator-max-microvolt = <1800000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l13a_1p8: ldo13 { -+ regulator-min-microvolt = <1800000>; -+ regulator-max-microvolt = <1800000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l14a_1p8: ldo14 { -+ regulator-min-microvolt = <1800000>; -+ regulator-max-microvolt = <1800000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l15a_1p8: ldo15 { -+ regulator-min-microvolt = <1800000>; -+ regulator-max-microvolt = <1800000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l16a_2p7: ldo16 { -+ regulator-min-microvolt = <2496000>; -+ regulator-max-microvolt = <3304000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l17a_3p0: ldo17 { -+ regulator-min-microvolt = <2920000>; -+ regulator-max-microvolt = <3232000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l18a_2p8: ldo18 { -+ regulator-min-microvolt = <2496000>; -+ regulator-max-microvolt = <3304000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l19a_2p9: ldo19 { -+ regulator-min-microvolt = <2960000>; -+ regulator-max-microvolt = <2960000>; -+ regulator-initial-mode = ; -+ }; -+ }; -+ -+ regulators-1 { -+ compatible = "qcom,pm6150l-rpmh-regulators"; -+ qcom,pmic-id = "c"; -+ -+ vreg_s8c_1p3: smps8 { -+ regulator-min-microvolt = <1120000>; -+ regulator-max-microvolt = <1408000>; -+ }; -+ -+ vreg_l1c_1p8: ldo1 { -+ regulator-min-microvolt = <1616000>; -+ regulator-max-microvolt = <1984000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l2c_1p3: ldo2 { -+ regulator-min-microvolt = <1168000>; -+ regulator-max-microvolt = <1304000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l3c_1p2: ldo3 { -+ regulator-min-microvolt = <1144000>; -+ regulator-max-microvolt = <1304000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l4c_1p8: ldo4 { -+ regulator-min-microvolt = <1648000>; -+ regulator-max-microvolt = <3304000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l5c_1p8: ldo5 { -+ regulator-min-microvolt = <1648000>; -+ regulator-max-microvolt = <3304000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l6c_2p9: ldo6 { -+ regulator-min-microvolt = <1800000>; -+ regulator-max-microvolt = <2950000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l7c_3p0: ldo7 { -+ regulator-min-microvolt = <3000000>; -+ regulator-max-microvolt = <3312000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l8c_1p8: ldo8 { -+ regulator-min-microvolt = <1800000>; -+ regulator-max-microvolt = <1800000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l9c_2p9: ldo9 { -+ regulator-min-microvolt = <2952000>; -+ regulator-max-microvolt = <2952000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l10c_3p3: ldo10 { -+ regulator-min-microvolt = <3000000>; -+ regulator-max-microvolt = <3400000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_l11c_3p3: ldo11 { -+ regulator-min-microvolt = <3000000>; -+ regulator-max-microvolt = <3400000>; -+ regulator-initial-mode = ; -+ }; -+ -+ vreg_bob: bob { -+ regulator-min-microvolt = <3008000>; -+ regulator-max-microvolt = <3960000>; -+ regulator-initial-mode = ; -+ }; -+ }; -+}; -+ -+&qup_i2c2_default { -+ drive-strength = <2>; -+ -+ /* Has external pullup */ -+ bias-disable; -+}; -+ -+&qup_i2c4_default { -+ drive-strength = <2>; -+ -+ /* Has external pullup */ -+ bias-disable; -+}; -+ -+&qup_i2c9_default { -+ drive-strength = <2>; -+ -+ /* Has external pullup */ -+ bias-disable; -+}; -+ -+&qup_i2c10_default { -+ drive-strength = <2>; -+ -+ /* Has external pullup */ -+ bias-disable; -+}; -+ -+&tlmm { -+ /* -+ * The TZ seem to protect those because some boards can have -+ * fingerprint sensor connected to this range. Not connected -+ * on this board -+ */ -+ gpio-reserved-ranges = <58 5>; -+ -+ amp_sd_mode_default: amp-sd-mode-deault-state { -+ pins = "gpio23"; -+ function = "gpio"; -+ drive-strength = <16>; -+ bias-disable; -+ }; -+ -+ bridge_en_default: bridge-en-default-state { -+ pins = "gpio51"; -+ function = "gpio"; -+ drive-strength = <16>; -+ bias-disable; -+ }; -+ -+ bridge_suspend_default: bridge-suspend-default-state { -+ pins = "gpio22"; -+ function = "gpio"; -+ drive-strength = <16>; -+ bias-pull-up; -+ }; -+ -+ codec_irq_default: codec-irq-deault-state { -+ pins = "gpio28"; -+ function = "gpio"; -+ drive-strength = <2>; -+ bias-disable; -+ }; -+ -+ edp_bridge_irq_default: edp-bridge-irq-default-state { -+ pins = "gpio11"; -+ function = "gpio"; -+ drive-strength = <2>; -+ bias-pull-down; -+ }; -+ -+ hid_keyboard_default: hid-keyboard-default-state { -+ pins = "gpio33"; -+ function = "gpio"; -+ drive-strength = <2>; -+ bias-disable; -+ }; -+ -+ hid_touchpad_default: hid-touchpad-default-state { -+ pins = "gpio94"; -+ function = "gpio"; -+ drive-strength = <2>; -+ bias-disable; -+ }; -+ -+ qup_uart3_sleep: qup-uart3-sleep-state { -+ cts-pins { -+ /* -+ * Configure a pull-down on CTS to match the pull of -+ * the Bluetooth module. -+ */ -+ pins = "gpio38"; -+ function = "gpio"; -+ bias-pull-down; -+ }; -+ -+ rts-pins { -+ /* -+ * Configure pull-down on RTS. As RTS is active low -+ * signal, pull it low to indicate the BT SoC that it -+ * can wakeup the system anytime from suspend state by -+ * pulling RX low (by sending wakeup bytes). -+ */ -+ pins = "gpio39"; -+ function = "gpio"; -+ bias-pull-down; -+ }; -+ -+ tx-pins { -+ /* -+ * Configure pull-up on TX when it isn't actively driven -+ * to prevent BT SoC from receiving garbage during sleep. -+ */ -+ pins = "gpio40"; -+ function = "gpio"; -+ bias-pull-up; -+ }; -+ -+ rx-pins { -+ /* -+ * Configure a pull-up on RX. This is needed to avoid -+ * garbage data when the TX pin of the Bluetooth module -+ * is floating which may cause spurious wakeups. -+ */ -+ pins = "gpio41"; -+ function = "gpio"; -+ bias-pull-up; -+ }; -+ }; -+ -+ reg_edp_1p2_en_default: reg-edp-1p2-en-deault-state { -+ pins = "gpio19"; -+ function = "gpio"; -+ drive-strength = <16>; -+ bias-disable; -+ }; -+ -+ reg_edp_1p8_en_default: reg-edp-1p8-en-deault-state { -+ pins = "gpio20"; -+ function = "gpio"; -+ drive-strength = <16>; -+ bias-disable; -+ }; -+ -+ reg_lcm_en_default: reg-lcm-en-deault-state { -+ pins = "gpio26"; -+ function = "gpio"; -+ drive-strength = <16>; -+ bias-disable; -+ }; -+ -+ reg_audio_en_default: reg-audio-en-deault-state { -+ pins = "gpio83"; -+ function = "gpio"; -+ drive-strength = <2>; -+ bias-disable; -+ }; -+ -+ reg_tp_en_default: reg-tp-en-deault-state { -+ pins = "gpio25"; -+ function = "gpio"; -+ drive-strength = <2>; -+ bias-disable; -+ }; -+ -+ soc_bkoff_default: soc-bkoff-deault-state { -+ pins = "gpio10"; -+ function = "gpio"; -+ drive-strength = <16>; -+ bias-disable; -+ }; -+ -+ sdc1_default: sdc1-default-state { -+ clk-pins { -+ pins = "sdc1_clk"; -+ drive-strength = <16>; -+ bias-disable; -+ }; -+ -+ cmd-pins { -+ pins = "sdc1_cmd"; -+ drive-strength = <16>; -+ bias-pull-up; -+ }; -+ -+ data-pins { -+ pins = "sdc1_data"; -+ drive-strength = <16>; -+ bias-pull-up; -+ }; -+ -+ rclk-pins { -+ pins = "sdc1_rclk"; -+ bias-pull-down; -+ }; -+ }; -+ -+ sdc1_sleep: sdc1-sleep-state { -+ clk-pins { -+ pins = "sdc1_clk"; -+ drive-strength = <2>; -+ bias-disable; -+ }; -+ -+ cmd-pins { -+ pins = "sdc1_cmd"; -+ drive-strength = <2>; -+ bias-pull-up; -+ }; -+ -+ data-pins { -+ pins = "sdc1_data"; -+ drive-strength = <2>; -+ bias-pull-up; -+ }; -+ -+ rclk-pins { -+ pins = "sdc1_rclk"; -+ bias-pull-down; -+ }; -+ }; -+}; --- -2.41.0 - diff --git a/device/community/linux-postmarketos-qcom-sc7180/0013-arm64-dts-qcom-pm6150-Add-resin-and-rtc-nodes.patch b/device/community/linux-postmarketos-qcom-sc7180/0005-arm64-dts-qcom-pm6150-Add-resin-and-rtc-nodes.patch similarity index 82% rename from device/community/linux-postmarketos-qcom-sc7180/0013-arm64-dts-qcom-pm6150-Add-resin-and-rtc-nodes.patch rename to device/community/linux-postmarketos-qcom-sc7180/0005-arm64-dts-qcom-pm6150-Add-resin-and-rtc-nodes.patch index aa31c4906..9dff96f1f 100644 --- a/device/community/linux-postmarketos-qcom-sc7180/0013-arm64-dts-qcom-pm6150-Add-resin-and-rtc-nodes.patch +++ b/device/community/linux-postmarketos-qcom-sc7180/0005-arm64-dts-qcom-pm6150-Add-resin-and-rtc-nodes.patch @@ -1,7 +1,7 @@ -From 389f71369f7a62199ff0af56ef9a23c1c86570e1 Mon Sep 17 00:00:00 2001 +From 18dfe3c57801796fb6ca2a17f63893e48298eaa4 Mon Sep 17 00:00:00 2001 From: David Wronek Date: Thu, 24 Aug 2023 11:15:05 +0200 -Subject: [PATCH 13/17] arm64: dts: qcom: pm6150: Add resin and rtc nodes +Subject: [PATCH 5/8] arm64: dts: qcom: pm6150: Add resin and rtc nodes Add support for the RTC which is the same as on other PMICs and add the resin child node to the PM6150 PON device, both disabled by default. @@ -16,10 +16,10 @@ Signed-off-by: Bjorn Andersson 1 file changed, 16 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/pm6150.dtsi b/arch/arm64/boot/dts/qcom/pm6150.dtsi -index 8a4972e6a24c..d1dccfdfb3cd 100644 +index 7d4d1f2767ed..ddbaf7280b03 100644 --- a/arch/arm64/boot/dts/qcom/pm6150.dtsi +++ b/arch/arm64/boot/dts/qcom/pm6150.dtsi -@@ -51,6 +51,14 @@ pm6150_pwrkey: pwrkey { +@@ -53,6 +53,14 @@ pm6150_pwrkey: pwrkey { bias-pull-up; linux,code = ; }; @@ -34,7 +34,7 @@ index 8a4972e6a24c..d1dccfdfb3cd 100644 }; pm6150_temp: temp-alarm@2400 { -@@ -86,6 +94,14 @@ pm6150_adc_tm: adc-tm@3500 { +@@ -88,6 +96,14 @@ pm6150_adc_tm: adc-tm@3500 { status = "disabled"; }; @@ -46,9 +46,9 @@ index 8a4972e6a24c..d1dccfdfb3cd 100644 + status = "disabled"; + }; + - pm6150_gpio: gpios@c000 { + pm6150_gpios: gpio@c000 { compatible = "qcom,pm6150-gpio", "qcom,spmi-gpio"; reg = <0xc000>; -- -2.43.0 +2.43.2 diff --git a/device/community/linux-postmarketos-qcom-sc7180/0014-arm64-dts-qcom-acer-aspire1-Enable-RTC.patch b/device/community/linux-postmarketos-qcom-sc7180/0006-arm64-dts-qcom-acer-aspire1-Enable-RTC.patch similarity index 80% rename from device/community/linux-postmarketos-qcom-sc7180/0014-arm64-dts-qcom-acer-aspire1-Enable-RTC.patch rename to device/community/linux-postmarketos-qcom-sc7180/0006-arm64-dts-qcom-acer-aspire1-Enable-RTC.patch index 9ab4e3dbc..b15a80bd4 100644 --- a/device/community/linux-postmarketos-qcom-sc7180/0014-arm64-dts-qcom-acer-aspire1-Enable-RTC.patch +++ b/device/community/linux-postmarketos-qcom-sc7180/0006-arm64-dts-qcom-acer-aspire1-Enable-RTC.patch @@ -1,7 +1,7 @@ -From f6bbe959dd47e534f2a006561be68cfb1bbf27c4 Mon Sep 17 00:00:00 2001 +From 2384f0140ed50ef2ee57fd575e69dc91fe13652b Mon Sep 17 00:00:00 2001 From: Nikita Travkin Date: Tue, 5 Dec 2023 16:48:10 +0500 -Subject: [PATCH 14/17] arm64: dts: qcom: acer-aspire1: Enable RTC +Subject: [PATCH 6/8] arm64: dts: qcom: acer-aspire1: Enable RTC pm6150 has a read-only RTC that can be used to keep the time with some extra userspace tools. Enable it. @@ -15,10 +15,10 @@ Signed-off-by: Bjorn Andersson 1 file changed, 4 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts -index 2a80f4090085..ab8ec7958584 100644 +index 3342cb048038..00b442696618 100644 --- a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts +++ b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts -@@ -349,6 +349,10 @@ &pm6150_pon { +@@ -364,6 +364,10 @@ &pm6150_pon { status = "disabled"; }; @@ -30,5 +30,5 @@ index 2a80f4090085..ab8ec7958584 100644 status = "okay"; }; -- -2.43.0 +2.43.2 diff --git a/device/community/linux-postmarketos-qcom-sc7180/0006-media-venus-core-Set-up-secure-memory-ranges-for-SC7.patch b/device/community/linux-postmarketos-qcom-sc7180/0006-media-venus-core-Set-up-secure-memory-ranges-for-SC7.patch deleted file mode 100644 index a6ddca106..000000000 --- a/device/community/linux-postmarketos-qcom-sc7180/0006-media-venus-core-Set-up-secure-memory-ranges-for-SC7.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 720541f67f730e31c7b19b21b6c7eb92bfd9b6c2 Mon Sep 17 00:00:00 2001 -From: Konrad Dybcio -Date: Fri, 16 Jun 2023 01:36:58 +0200 -Subject: [PATCH 06/17] media: venus: core: Set up secure memory ranges for - SC7180 - -Not all SC7180 devices ship with ChromeOS firmware. WoA devices use -Android-like TZ, which uses PAS for image authentication. That requires -the predefined virtual address ranges to be passed via scm calls. -Define them to enable Venus on non-CrOS SC7180 devices. - -Signed-off-by: Konrad Dybcio -Signed-off-by: Stanimir Varbanov -Signed-off-by: Hans Verkuil ---- - drivers/media/platform/qcom/venus/core.c | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/drivers/media/platform/qcom/venus/core.c b/drivers/media/platform/qcom/venus/core.c -index 990a1519f968..1d9e416e5322 100644 ---- a/drivers/media/platform/qcom/venus/core.c -+++ b/drivers/media/platform/qcom/venus/core.c -@@ -762,6 +762,10 @@ static const struct venus_resources sc7180_res = { - .vmem_size = 0, - .vmem_addr = 0, - .dma_mask = 0xe0000000 - 1, -+ .cp_start = 0, -+ .cp_size = 0x70800000, -+ .cp_nonpixel_start = 0x1000000, -+ .cp_nonpixel_size = 0x24800000, - .fwname = "qcom/venus-5.4/venus.mdt", - }; - --- -2.43.0 - diff --git a/device/community/linux-postmarketos-qcom-sc7180/0016-arm64-dts-qcom-acer-aspire1-Add-sound.patch b/device/community/linux-postmarketos-qcom-sc7180/0007-arm64-dts-qcom-acer-aspire1-Add-sound.patch similarity index 94% rename from device/community/linux-postmarketos-qcom-sc7180/0016-arm64-dts-qcom-acer-aspire1-Add-sound.patch rename to device/community/linux-postmarketos-qcom-sc7180/0007-arm64-dts-qcom-acer-aspire1-Add-sound.patch index 8cf18cb9d..d5272e8d2 100644 --- a/device/community/linux-postmarketos-qcom-sc7180/0016-arm64-dts-qcom-acer-aspire1-Add-sound.patch +++ b/device/community/linux-postmarketos-qcom-sc7180/0007-arm64-dts-qcom-acer-aspire1-Add-sound.patch @@ -1,7 +1,7 @@ -From d081eaf8adc96ae9ba68ffe3f69f3057ead4bc63 Mon Sep 17 00:00:00 2001 +From bf688cd32b158a962bbce6103b3f43dda5d80a5a Mon Sep 17 00:00:00 2001 From: Nikita Travkin Date: Tue, 5 Dec 2023 16:48:12 +0500 -Subject: [PATCH 16/17] arm64: dts: qcom: acer-aspire1: Add sound +Subject: [PATCH 7/8] arm64: dts: qcom: acer-aspire1: Add sound This laptop has two i2s speakers; an i2s audio codec for the headset jack; two DMIC microphones in the lid and the displayport audio channel. @@ -23,7 +23,7 @@ Signed-off-by: Bjorn Andersson 1 file changed, 153 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts -index 7bde69f39c8a..58f694d8e762 100644 +index 00b442696618..5afcb8212f49 100644 --- a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts +++ b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts @@ -3,6 +3,7 @@ @@ -148,7 +148,7 @@ index 7bde69f39c8a..58f694d8e762 100644 reg_tp_3p3: touchpad-regulator { compatible = "regulator-fixed"; regulator-name = "tp_3p3"; -@@ -366,6 +474,45 @@ &pm6150_rtc { +@@ -368,6 +476,45 @@ &pm6150_rtc { status = "okay"; }; @@ -194,7 +194,7 @@ index 7bde69f39c8a..58f694d8e762 100644 &qupv3_id_0 { status = "okay"; }; -@@ -374,6 +521,12 @@ &qupv3_id_1 { +@@ -376,6 +523,12 @@ &qupv3_id_1 { status = "okay"; }; @@ -208,5 +208,5 @@ index 7bde69f39c8a..58f694d8e762 100644 firmware-name = "qcom/sc7180/acer/aspire1/qcmpss7180_nm.mbn"; status = "okay"; -- -2.43.0 +2.43.2 diff --git a/device/community/linux-postmarketos-qcom-sc7180/0007-arm64-dts-qcom-sc7180-Split-up-TF-A-related-PSCI-con.patch b/device/community/linux-postmarketos-qcom-sc7180/0007-arm64-dts-qcom-sc7180-Split-up-TF-A-related-PSCI-con.patch deleted file mode 100644 index 164e57192..000000000 --- a/device/community/linux-postmarketos-qcom-sc7180/0007-arm64-dts-qcom-sc7180-Split-up-TF-A-related-PSCI-con.patch +++ /dev/null @@ -1,387 +0,0 @@ -From 0fed0e8058be5fdf261092e6b42f0f8ef3c37040 Mon Sep 17 00:00:00 2001 -From: Nikita Travkin -Date: Tue, 8 Aug 2023 15:10:13 +0500 -Subject: [PATCH 07/17] arm64: dts: qcom: sc7180: Split up TF-A related PSCI - configuration - -When initially submitted, the sc7180 support only targeted CROS devices -that make use of alternative TF-A firmware and not the official Qualcomm -firmware. The PSCI implementations in those firmwares differ however so -devices that use qcom firmware, like WoA laptops such as aspire1 need -different setup. - -This commit adjusts the SoC dtsi to the OSI mode PSCI setup, common to -the Qualcomm firmware and introduces new sc7180-firmware-tfa.dtsi that -overrides the PSCI setup for the PC mode and uses TF-A specific -psci-suspend-param. This dtsi is added to all boards that appear to use -TF-A. - -Link: https://lore.kernel.org/r/20230808-sc7180-tfa-fw-v1-1-666d5d8467e5@trvn.ru -Signed-off-by: Nikita Travkin ---- - .../boot/dts/qcom/sc7180-firmware-tfa.dtsi | 107 +++++++++++++++ - arch/arm64/boot/dts/qcom/sc7180-idp.dts | 1 + - arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi | 1 + - arch/arm64/boot/dts/qcom/sc7180.dtsi | 127 +++++++++++++----- - 4 files changed, 206 insertions(+), 30 deletions(-) - create mode 100644 arch/arm64/boot/dts/qcom/sc7180-firmware-tfa.dtsi - -diff --git a/arch/arm64/boot/dts/qcom/sc7180-firmware-tfa.dtsi b/arch/arm64/boot/dts/qcom/sc7180-firmware-tfa.dtsi -new file mode 100644 -index 000000000000..ee35a454dbf6 ---- /dev/null -+++ b/arch/arm64/boot/dts/qcom/sc7180-firmware-tfa.dtsi -@@ -0,0 +1,107 @@ -+// SPDX-License-Identifier: BSD-3-Clause -+ -+/* -+ * Devices that use SC7180 with TrustedFirmware-A -+ * need PSCI PC mode instead of the OSI mode provided -+ * by Qualcomm firmware. -+ */ -+ -+&CPU0 { -+ /delete-property/ power-domains; -+ /delete-property/ power-domain-names; -+ -+ cpu-idle-states = <&LITTLE_CPU_SLEEP_0 -+ &LITTLE_CPU_SLEEP_1 -+ &CLUSTER_SLEEP_0>; -+}; -+ -+&CPU1 { -+ /delete-property/ power-domains; -+ /delete-property/ power-domain-names; -+ -+ cpu-idle-states = <&LITTLE_CPU_SLEEP_0 -+ &LITTLE_CPU_SLEEP_1 -+ &CLUSTER_SLEEP_0>; -+}; -+ -+&CPU2 { -+ /delete-property/ power-domains; -+ /delete-property/ power-domain-names; -+ -+ cpu-idle-states = <&LITTLE_CPU_SLEEP_0 -+ &LITTLE_CPU_SLEEP_1 -+ &CLUSTER_SLEEP_0>; -+}; -+ -+&CPU3 { -+ /delete-property/ power-domains; -+ /delete-property/ power-domain-names; -+ -+ cpu-idle-states = <&LITTLE_CPU_SLEEP_0 -+ &LITTLE_CPU_SLEEP_1 -+ &CLUSTER_SLEEP_0>; -+}; -+ -+&CPU4 { -+ /delete-property/ power-domains; -+ /delete-property/ power-domain-names; -+ -+ cpu-idle-states = <&LITTLE_CPU_SLEEP_0 -+ &LITTLE_CPU_SLEEP_1 -+ &CLUSTER_SLEEP_0>; -+}; -+ -+&CPU5 { -+ /delete-property/ power-domains; -+ /delete-property/ power-domain-names; -+ -+ cpu-idle-states = <&LITTLE_CPU_SLEEP_0 -+ &LITTLE_CPU_SLEEP_1 -+ &CLUSTER_SLEEP_0>; -+}; -+ -+&CPU6 { -+ /delete-property/ power-domains; -+ /delete-property/ power-domain-names; -+ -+ cpu-idle-states = <&BIG_CPU_SLEEP_0 -+ &BIG_CPU_SLEEP_1 -+ &CLUSTER_SLEEP_0>; -+}; -+ -+&CPU7 { -+ /delete-property/ power-domains; -+ /delete-property/ power-domain-names; -+ -+ cpu-idle-states = <&BIG_CPU_SLEEP_0 -+ &BIG_CPU_SLEEP_1 -+ &CLUSTER_SLEEP_0>; -+}; -+ -+/delete-node/ &domain_idle_states; -+ -+&idle_states { -+ CLUSTER_SLEEP_0: cluster-sleep-0 { -+ compatible = "arm,idle-state"; -+ idle-state-name = "cluster-power-down"; -+ arm,psci-suspend-param = <0x40003444>; -+ entry-latency-us = <3263>; -+ exit-latency-us = <6562>; -+ min-residency-us = <9926>; -+ local-timer-stop; -+ }; -+}; -+ -+/delete-node/ &CPU_PD0; -+/delete-node/ &CPU_PD1; -+/delete-node/ &CPU_PD2; -+/delete-node/ &CPU_PD3; -+/delete-node/ &CPU_PD4; -+/delete-node/ &CPU_PD5; -+/delete-node/ &CPU_PD6; -+/delete-node/ &CPU_PD7; -+/delete-node/ &CLUSTER_PD; -+ -+&apps_rsc { -+ /delete-property/ power-domains; -+}; -diff --git a/arch/arm64/boot/dts/qcom/sc7180-idp.dts b/arch/arm64/boot/dts/qcom/sc7180-idp.dts -index d3c4b5804a69..c224fc93f1ee 100644 ---- a/arch/arm64/boot/dts/qcom/sc7180-idp.dts -+++ b/arch/arm64/boot/dts/qcom/sc7180-idp.dts -@@ -11,6 +11,7 @@ - #include - #include - #include "sc7180.dtsi" -+#include "sc7180-firmware-tfa.dtsi" - #include "pm6150.dtsi" - #include "pm6150l.dtsi" - -diff --git a/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi b/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi -index f4db4ccf48e5..38d327fa1394 100644 ---- a/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi -+++ b/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi -@@ -13,6 +13,7 @@ - #include - - #include "sc7180.dtsi" -+#include "sc7180-firmware-tfa.dtsi" - /* PMICs depend on spmi_bus label and so must come after sc7180.dtsi */ - #include "pm6150.dtsi" - #include "pm6150l.dtsi" -diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi -index 19f39a5b3b56..64ae9f27ba80 100644 ---- a/arch/arm64/boot/dts/qcom/sc7180.dtsi -+++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi -@@ -133,9 +133,8 @@ CPU0: cpu@0 { - compatible = "qcom,kryo468"; - reg = <0x0 0x0>; - enable-method = "psci"; -- cpu-idle-states = <&LITTLE_CPU_SLEEP_0 -- &LITTLE_CPU_SLEEP_1 -- &CLUSTER_SLEEP_0>; -+ power-domains = <&CPU_PD0>; -+ power-domain-names = "psci"; - capacity-dmips-mhz = <415>; - dynamic-power-coefficient = <137>; - operating-points-v2 = <&cpu0_opp_table>; -@@ -158,9 +157,8 @@ CPU1: cpu@100 { - compatible = "qcom,kryo468"; - reg = <0x0 0x100>; - enable-method = "psci"; -- cpu-idle-states = <&LITTLE_CPU_SLEEP_0 -- &LITTLE_CPU_SLEEP_1 -- &CLUSTER_SLEEP_0>; -+ power-domains = <&CPU_PD1>; -+ power-domain-names = "psci"; - capacity-dmips-mhz = <415>; - dynamic-power-coefficient = <137>; - next-level-cache = <&L2_100>; -@@ -180,9 +178,8 @@ CPU2: cpu@200 { - compatible = "qcom,kryo468"; - reg = <0x0 0x200>; - enable-method = "psci"; -- cpu-idle-states = <&LITTLE_CPU_SLEEP_0 -- &LITTLE_CPU_SLEEP_1 -- &CLUSTER_SLEEP_0>; -+ power-domains = <&CPU_PD2>; -+ power-domain-names = "psci"; - capacity-dmips-mhz = <415>; - dynamic-power-coefficient = <137>; - next-level-cache = <&L2_200>; -@@ -202,9 +199,8 @@ CPU3: cpu@300 { - compatible = "qcom,kryo468"; - reg = <0x0 0x300>; - enable-method = "psci"; -- cpu-idle-states = <&LITTLE_CPU_SLEEP_0 -- &LITTLE_CPU_SLEEP_1 -- &CLUSTER_SLEEP_0>; -+ power-domains = <&CPU_PD3>; -+ power-domain-names = "psci"; - capacity-dmips-mhz = <415>; - dynamic-power-coefficient = <137>; - next-level-cache = <&L2_300>; -@@ -224,9 +220,8 @@ CPU4: cpu@400 { - compatible = "qcom,kryo468"; - reg = <0x0 0x400>; - enable-method = "psci"; -- cpu-idle-states = <&LITTLE_CPU_SLEEP_0 -- &LITTLE_CPU_SLEEP_1 -- &CLUSTER_SLEEP_0>; -+ power-domains = <&CPU_PD4>; -+ power-domain-names = "psci"; - capacity-dmips-mhz = <415>; - dynamic-power-coefficient = <137>; - next-level-cache = <&L2_400>; -@@ -246,9 +241,8 @@ CPU5: cpu@500 { - compatible = "qcom,kryo468"; - reg = <0x0 0x500>; - enable-method = "psci"; -- cpu-idle-states = <&LITTLE_CPU_SLEEP_0 -- &LITTLE_CPU_SLEEP_1 -- &CLUSTER_SLEEP_0>; -+ power-domains = <&CPU_PD5>; -+ power-domain-names = "psci"; - capacity-dmips-mhz = <415>; - dynamic-power-coefficient = <137>; - next-level-cache = <&L2_500>; -@@ -268,9 +262,8 @@ CPU6: cpu@600 { - compatible = "qcom,kryo468"; - reg = <0x0 0x600>; - enable-method = "psci"; -- cpu-idle-states = <&BIG_CPU_SLEEP_0 -- &BIG_CPU_SLEEP_1 -- &CLUSTER_SLEEP_0>; -+ power-domains = <&CPU_PD6>; -+ power-domain-names = "psci"; - capacity-dmips-mhz = <1024>; - dynamic-power-coefficient = <480>; - next-level-cache = <&L2_600>; -@@ -290,9 +283,8 @@ CPU7: cpu@700 { - compatible = "qcom,kryo468"; - reg = <0x0 0x700>; - enable-method = "psci"; -- cpu-idle-states = <&BIG_CPU_SLEEP_0 -- &BIG_CPU_SLEEP_1 -- &CLUSTER_SLEEP_0>; -+ power-domains = <&CPU_PD7>; -+ power-domain-names = "psci"; - capacity-dmips-mhz = <1024>; - dynamic-power-coefficient = <480>; - next-level-cache = <&L2_700>; -@@ -343,7 +335,7 @@ core7 { - }; - }; - -- idle-states { -+ idle_states: idle-states { - entry-method = "psci"; - - LITTLE_CPU_SLEEP_0: cpu-sleep-0-0 { -@@ -385,15 +377,34 @@ BIG_CPU_SLEEP_1: cpu-sleep-1-1 { - min-residency-us = <5555>; - local-timer-stop; - }; -+ }; - -- CLUSTER_SLEEP_0: cluster-sleep-0 { -- compatible = "arm,idle-state"; -+ domain_idle_states: domain-idle-states { -+ CLUSTER_SLEEP_PC: cluster-sleep-0 { -+ compatible = "domain-idle-state"; -+ idle-state-name = "cluster-l3-power-collapse"; -+ arm,psci-suspend-param = <0x41000044>; -+ entry-latency-us = <2752>; -+ exit-latency-us = <3048>; -+ min-residency-us = <6118>; -+ }; -+ -+ CLUSTER_SLEEP_CX_RET: cluster-sleep-1 { -+ compatible = "domain-idle-state"; -+ idle-state-name = "cluster-cx-retention"; -+ arm,psci-suspend-param = <0x41001244>; -+ entry-latency-us = <3638>; -+ exit-latency-us = <4562>; -+ min-residency-us = <8467>; -+ }; -+ -+ CLUSTER_AOSS_SLEEP: cluster-sleep-2 { -+ compatible = "domain-idle-state"; - idle-state-name = "cluster-power-down"; -- arm,psci-suspend-param = <0x40003444>; -+ arm,psci-suspend-param = <0x4100b244>; - entry-latency-us = <3263>; - exit-latency-us = <6562>; -- min-residency-us = <9926>; -- local-timer-stop; -+ min-residency-us = <9826>; - }; - }; - }; -@@ -643,6 +654,61 @@ ipa_smp2p_in: ipa-modem-to-ap { - psci { - compatible = "arm,psci-1.0"; - method = "smc"; -+ -+ CPU_PD0: cpu0 { -+ #power-domain-cells = <0>; -+ power-domains = <&CLUSTER_PD>; -+ domain-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>; -+ }; -+ -+ CPU_PD1: cpu1 { -+ #power-domain-cells = <0>; -+ power-domains = <&CLUSTER_PD>; -+ domain-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>; -+ }; -+ -+ CPU_PD2: cpu2 { -+ #power-domain-cells = <0>; -+ power-domains = <&CLUSTER_PD>; -+ domain-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>; -+ }; -+ -+ CPU_PD3: cpu3 { -+ #power-domain-cells = <0>; -+ power-domains = <&CLUSTER_PD>; -+ domain-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>; -+ }; -+ -+ CPU_PD4: cpu4 { -+ #power-domain-cells = <0>; -+ power-domains = <&CLUSTER_PD>; -+ domain-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>; -+ }; -+ -+ CPU_PD5: cpu5 { -+ #power-domain-cells = <0>; -+ power-domains = <&CLUSTER_PD>; -+ domain-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>; -+ }; -+ -+ CPU_PD6: cpu6 { -+ #power-domain-cells = <0>; -+ power-domains = <&CLUSTER_PD>; -+ domain-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>; -+ }; -+ -+ CPU_PD7: cpu7 { -+ #power-domain-cells = <0>; -+ power-domains = <&CLUSTER_PD>; -+ domain-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>; -+ }; -+ -+ CLUSTER_PD: cpu-cluster0 { -+ #power-domain-cells = <0>; -+ domain-idle-states = <&CLUSTER_SLEEP_PC -+ &CLUSTER_SLEEP_CX_RET -+ &CLUSTER_AOSS_SLEEP>; -+ }; - }; - - soc: soc@0 { -@@ -3452,6 +3518,7 @@ apps_rsc: rsc@18200000 { - , - , - ; -+ power-domains = <&CLUSTER_PD>; - - rpmhcc: clock-controller { - compatible = "qcom,sc7180-rpmh-clk"; --- -2.43.0 - diff --git a/device/community/linux-postmarketos-qcom-sc7180/0008-platform-Add-ARM64-platform-directory.patch b/device/community/linux-postmarketos-qcom-sc7180/0008-platform-Add-ARM64-platform-directory.patch new file mode 100644 index 000000000..ef0a4da03 --- /dev/null +++ b/device/community/linux-postmarketos-qcom-sc7180/0008-platform-Add-ARM64-platform-directory.patch @@ -0,0 +1,116 @@ +From 5da7f1f071d5d0db4978e946263ab783657d0d57 Mon Sep 17 00:00:00 2001 +From: Nikita Travkin +Date: Sat, 2 Mar 2024 14:37:30 +0500 +Subject: [PATCH 08/11] platform: Add ARM64 platform directory +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Some ARM64 based laptops and computers require vendor/board specific +drivers for their embedded controllers. Even though usually the most +important functionality of those devices is implemented inside ACPI, +unfortunately Linux doesn't currently have great support for ACPI on +platforms like Qualcomm Snapdragon that are used in most ARM64 laptops +today. Instead Linux relies on Device Tree for Qualcomm based devices +and it's significantly easier to reimplement the EC functionality in +a dedicated driver than to make use of ACPI code. + +This commit introduces a new platform/arm64 subdirectory to give a +place to such drivers for EC-like devices. + +A new MAINTAINERS entry is added for this directory. Patches to files in +this directory will be taken up by the platform-drivers-x86 team (i.e. +Hans de Goede and Ilpo Järvinen) with additional review from Bryan +O'Donoghue to represent ARM64 maintainers. + +Signed-off-by: Nikita Travkin +--- + MAINTAINERS | 10 ++++++++++ + drivers/platform/Kconfig | 2 ++ + drivers/platform/Makefile | 1 + + drivers/platform/arm64/Kconfig | 19 +++++++++++++++++++ + drivers/platform/arm64/Makefile | 6 ++++++ + 5 files changed, 38 insertions(+) + create mode 100644 drivers/platform/arm64/Kconfig + create mode 100644 drivers/platform/arm64/Makefile + +diff --git a/MAINTAINERS b/MAINTAINERS +index 40312bb550f0..396be95d4f9a 100644 +--- a/MAINTAINERS ++++ b/MAINTAINERS +@@ -3007,6 +3007,16 @@ F: drivers/mmc/host/sdhci-of-arasan.c + N: zynq + N: xilinx + ++ARM64 PLATFORM DRIVERS ++M: Hans de Goede ++M: Ilpo Järvinen ++R: Bryan O'Donoghue ++L: platform-driver-x86@vger.kernel.org ++S: Maintained ++Q: https://patchwork.kernel.org/project/platform-driver-x86/list/ ++T: git git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git ++F: drivers/platform/arm64/ ++ + ARM64 PORT (AARCH64 ARCHITECTURE) + M: Catalin Marinas + M: Will Deacon +diff --git a/drivers/platform/Kconfig b/drivers/platform/Kconfig +index 868b20361769..81a298517df2 100644 +--- a/drivers/platform/Kconfig ++++ b/drivers/platform/Kconfig +@@ -14,3 +14,5 @@ source "drivers/platform/olpc/Kconfig" + source "drivers/platform/surface/Kconfig" + + source "drivers/platform/x86/Kconfig" ++ ++source "drivers/platform/arm64/Kconfig" +diff --git a/drivers/platform/Makefile b/drivers/platform/Makefile +index 41640172975a..fbbe4f77aa5d 100644 +--- a/drivers/platform/Makefile ++++ b/drivers/platform/Makefile +@@ -11,3 +11,4 @@ obj-$(CONFIG_OLPC_EC) += olpc/ + obj-$(CONFIG_GOLDFISH) += goldfish/ + obj-$(CONFIG_CHROME_PLATFORMS) += chrome/ + obj-$(CONFIG_SURFACE_PLATFORMS) += surface/ ++obj-$(CONFIG_ARM64) += arm64/ +diff --git a/drivers/platform/arm64/Kconfig b/drivers/platform/arm64/Kconfig +new file mode 100644 +index 000000000000..644b83ede093 +--- /dev/null ++++ b/drivers/platform/arm64/Kconfig +@@ -0,0 +1,19 @@ ++# SPDX-License-Identifier: GPL-2.0-only ++# ++# EC-like Drivers for aarch64 based devices. ++# ++ ++menuconfig ARM64_PLATFORM_DEVICES ++ bool "ARM64 Platform-Specific Device Drivers" ++ depends on ARM64 || COMPILE_TEST ++ default y ++ help ++ Say Y here to get to see options for platform-specific device drivers ++ for arm64 based devices, primarily EC-like device drivers. ++ This option alone does not add any kernel code. ++ ++ If you say N, all options in this submenu will be skipped and disabled. ++ ++if ARM64_PLATFORM_DEVICES ++ ++endif # ARM64_PLATFORM_DEVICES +diff --git a/drivers/platform/arm64/Makefile b/drivers/platform/arm64/Makefile +new file mode 100644 +index 000000000000..f91cdc7155e2 +--- /dev/null ++++ b/drivers/platform/arm64/Makefile +@@ -0,0 +1,6 @@ ++# SPDX-License-Identifier: GPL-2.0-only ++# ++# Makefile for linux/drivers/platform/arm64 ++# ++# This dir should only include drivers for EC-like devices. ++# +-- +2.44.0 + diff --git a/device/community/linux-postmarketos-qcom-sc7180/0009-platform-arm64-Add-Acer-Aspire-1-embedded-controller.patch b/device/community/linux-postmarketos-qcom-sc7180/0009-platform-arm64-Add-Acer-Aspire-1-embedded-controller.patch new file mode 100644 index 000000000..963ae9adc --- /dev/null +++ b/device/community/linux-postmarketos-qcom-sc7180/0009-platform-arm64-Add-Acer-Aspire-1-embedded-controller.patch @@ -0,0 +1,652 @@ +From 309a0174fb1000b308271bd0009d1cfba263f939 Mon Sep 17 00:00:00 2001 +From: Nikita Travkin +Date: Sat, 9 Jul 2022 00:39:42 +0500 +Subject: [PATCH 09/11] platform: arm64: Add Acer Aspire 1 embedded controller + driver + +Acer Aspire 1 is a Snapdragon 7c based laptop. It uses an embedded +controller to perform a set of various functions, such as: + +- Battery and charger monitoring; +- Keyboard layout control (i.e. fn_lock settings); +- USB Type-C DP alt mode HPD notifications; +- Laptop lid status. + +Unfortunately, while all this functionality is implemented in ACPI, it's +currently not possible to use ACPI to boot Linux on such Qualcomm +devices. To allow Linux to still support the features provided by EC, +this driver reimplments the relevant ACPI parts. This allows us to boot +the laptop with Device Tree and retain all the features. + +Reviewed-by: Bryan O'Donoghue +Signed-off-by: Nikita Travkin +--- + MAINTAINERS | 6 + + drivers/platform/arm64/Kconfig | 16 + + drivers/platform/arm64/Makefile | 2 + + drivers/platform/arm64/acer-aspire1-ec.c | 561 +++++++++++++++++++++++ + 4 files changed, 585 insertions(+) + create mode 100644 drivers/platform/arm64/acer-aspire1-ec.c + +diff --git a/MAINTAINERS b/MAINTAINERS +index 396be95d4f9a..bc5620bfbb32 100644 +--- a/MAINTAINERS ++++ b/MAINTAINERS +@@ -261,6 +261,12 @@ L: linux-acenic@sunsite.dk + S: Maintained + F: drivers/net/ethernet/alteon/acenic* + ++ACER ASPIRE 1 EMBEDDED CONTROLLER DRIVER ++M: Nikita Travkin ++S: Maintained ++F: Documentation/devicetree/bindings/platform/acer,aspire1-ec.yaml ++F: drivers/platform/arm64/acer-aspire1-ec.c ++ + ACER ASPIRE ONE TEMPERATURE AND FAN DRIVER + M: Peter Kaestle + L: platform-driver-x86@vger.kernel.org +diff --git a/drivers/platform/arm64/Kconfig b/drivers/platform/arm64/Kconfig +index 644b83ede093..07d47879a9e3 100644 +--- a/drivers/platform/arm64/Kconfig ++++ b/drivers/platform/arm64/Kconfig +@@ -16,4 +16,20 @@ menuconfig ARM64_PLATFORM_DEVICES + + if ARM64_PLATFORM_DEVICES + ++config EC_ACER_ASPIRE1 ++ tristate "Acer Aspire 1 Emedded Controller driver" ++ depends on I2C ++ depends on DRM ++ depends on POWER_SUPPLY ++ depends on INPUT ++ help ++ Say Y here to enable the EC driver for the (Snapdragon-based) ++ Acer Aspire 1 laptop. The EC handles battery and charging ++ monitoring as well as some misc functions like the lid sensor ++ and USB Type-C DP HPD events. ++ ++ This driver provides battery and AC status support for the mentioned ++ laptop where this information is not properly exposed via the ++ standard ACPI devices. ++ + endif # ARM64_PLATFORM_DEVICES +diff --git a/drivers/platform/arm64/Makefile b/drivers/platform/arm64/Makefile +index f91cdc7155e2..4fcc9855579b 100644 +--- a/drivers/platform/arm64/Makefile ++++ b/drivers/platform/arm64/Makefile +@@ -4,3 +4,5 @@ + # + # This dir should only include drivers for EC-like devices. + # ++ ++obj-$(CONFIG_EC_ACER_ASPIRE1) += acer-aspire1-ec.o +diff --git a/drivers/platform/arm64/acer-aspire1-ec.c b/drivers/platform/arm64/acer-aspire1-ec.c +new file mode 100644 +index 000000000000..75a7c2821771 +--- /dev/null ++++ b/drivers/platform/arm64/acer-aspire1-ec.c +@@ -0,0 +1,561 @@ ++// SPDX-License-Identifier: GPL-2.0-only ++/* Copyright (c) 2024, Nikita Travkin */ ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#define MILLI_TO_MICRO 1000 ++ ++#define ASPIRE_EC_EVENT 0x05 ++ ++#define ASPIRE_EC_EVENT_WATCHDOG 0x20 ++#define ASPIRE_EC_EVENT_KBD_BKL_ON 0x57 ++#define ASPIRE_EC_EVENT_KBD_BKL_OFF 0x58 ++#define ASPIRE_EC_EVENT_LID_CLOSE 0x9b ++#define ASPIRE_EC_EVENT_LID_OPEN 0x9c ++#define ASPIRE_EC_EVENT_BKL_UNBLANKED 0x9d ++#define ASPIRE_EC_EVENT_BKL_BLANKED 0x9e ++#define ASPIRE_EC_EVENT_FG_INF_CHG 0x85 ++#define ASPIRE_EC_EVENT_FG_STA_CHG 0xc6 ++#define ASPIRE_EC_EVENT_HPD_DIS 0xa3 ++#define ASPIRE_EC_EVENT_HPD_CON 0xa4 ++ ++#define ASPIRE_EC_FG_DYNAMIC 0x07 ++#define ASPIRE_EC_FG_STATIC 0x08 ++ ++#define ASPIRE_EC_FG_FLAG_PRESENT BIT(0) ++#define ASPIRE_EC_FG_FLAG_FULL BIT(1) ++#define ASPIRE_EC_FG_FLAG_DISCHARGING BIT(2) ++#define ASPIRE_EC_FG_FLAG_CHARGING BIT(3) ++ ++#define ASPIRE_EC_RAM_READ 0x20 ++#define ASPIRE_EC_RAM_WRITE 0x21 ++ ++#define ASPIRE_EC_RAM_WATCHDOG 0x19 ++#define ASPIRE_EC_WATCHDOG_BIT BIT(6) ++ ++#define ASPIRE_EC_RAM_KBD_MODE 0x43 ++ ++#define ASPIRE_EC_RAM_KBD_FN_EN BIT(0) ++#define ASPIRE_EC_RAM_KBD_MEDIA_ON_TOP BIT(5) ++#define ASPIRE_EC_RAM_KBD_ALWAYS_SET BIT(6) ++#define ASPIRE_EC_RAM_KBD_NUM_LAYER_EN BIT(7) ++ ++#define ASPIRE_EC_RAM_KBD_MODE_2 0x60 ++ ++#define ASPIRE_EC_RAM_KBD_MEDIA_NOTIFY BIT(3) ++ ++#define ASPIRE_EC_RAM_HPD_STATUS 0xf4 ++#define ASPIRE_EC_HPD_CONNECTED 0x03 ++ ++#define ASPIRE_EC_RAM_LID_STATUS 0x4c ++#define ASPIRE_EC_LID_OPEN BIT(6) ++ ++#define ASPIRE_EC_RAM_ADP 0x40 ++#define ASPIRE_EC_AC_STATUS BIT(0) ++ ++struct aspire_ec { ++ struct i2c_client *client; ++ struct power_supply *bat_psy; ++ struct power_supply *adp_psy; ++ struct input_dev *idev; ++ ++ bool bridge_configured; ++ struct drm_bridge bridge; ++ struct work_struct work; ++}; ++ ++static int aspire_ec_ram_read(struct i2c_client *client, u8 off, u8 *data, u8 data_len) ++{ ++ i2c_smbus_write_byte_data(client, ASPIRE_EC_RAM_READ, off); ++ i2c_smbus_read_i2c_block_data(client, ASPIRE_EC_RAM_READ, data_len, data); ++ return 0; ++} ++ ++static int aspire_ec_ram_write(struct i2c_client *client, u8 off, u8 data) ++{ ++ u8 tmp[2] = {off, data}; ++ ++ i2c_smbus_write_i2c_block_data(client, ASPIRE_EC_RAM_WRITE, sizeof(tmp), tmp); ++ return 0; ++} ++ ++static irqreturn_t aspire_ec_irq_handler(int irq, void *data) ++{ ++ struct aspire_ec *ec = data; ++ int id; ++ u8 tmp; ++ ++ /* ++ * The original ACPI firmware actually has a small sleep in the handler. ++ * ++ * It seems like in most cases it's not needed but when the device ++ * just exits suspend, our i2c driver has a brief time where data ++ * transfer is not possible yet. So this delay allows us to suppress ++ * quite a bunch of spurious error messages in dmesg. Thus it's kept. ++ */ ++ usleep_range(15000, 30000); ++ ++ id = i2c_smbus_read_byte_data(ec->client, ASPIRE_EC_EVENT); ++ if (id < 0) { ++ dev_err(&ec->client->dev, "Failed to read event id: %pe\n", ERR_PTR(id)); ++ return IRQ_HANDLED; ++ } ++ ++ switch (id) { ++ case 0x0: /* No event */ ++ break; ++ ++ case ASPIRE_EC_EVENT_WATCHDOG: ++ /* ++ * Here acpi responds to the event and clears some bit. ++ * Notify (\_SB.I2C3.BAT1, 0x81) // Information Change ++ * Notify (\_SB.I2C3.ADP1, 0x80) // Status Change ++ */ ++ aspire_ec_ram_read(ec->client, ASPIRE_EC_RAM_WATCHDOG, &tmp, sizeof(tmp)); ++ tmp &= ~ASPIRE_EC_WATCHDOG_BIT; ++ aspire_ec_ram_write(ec->client, ASPIRE_EC_RAM_WATCHDOG, tmp); ++ break; ++ ++ case ASPIRE_EC_EVENT_LID_CLOSE: ++ /* Notify (\_SB.LID0, 0x80) // Status Change */ ++ input_report_switch(ec->idev, SW_LID, 1); ++ input_sync(ec->idev); ++ break; ++ ++ case ASPIRE_EC_EVENT_LID_OPEN: ++ /* Notify (\_SB.LID0, 0x80) // Status Change */ ++ input_report_switch(ec->idev, SW_LID, 0); ++ input_sync(ec->idev); ++ break; ++ ++ case ASPIRE_EC_EVENT_FG_INF_CHG: ++ /* Notify (\_SB.I2C3.BAT1, 0x81) // Information Change */ ++ fallthrough; ++ case ASPIRE_EC_EVENT_FG_STA_CHG: ++ /* Notify (\_SB.I2C3.BAT1, 0x80) // Status Change */ ++ power_supply_changed(ec->bat_psy); ++ power_supply_changed(ec->adp_psy); ++ break; ++ ++ case ASPIRE_EC_EVENT_HPD_DIS: ++ if (ec->bridge_configured) ++ drm_bridge_hpd_notify(&ec->bridge, connector_status_disconnected); ++ break; ++ ++ case ASPIRE_EC_EVENT_HPD_CON: ++ if (ec->bridge_configured) ++ drm_bridge_hpd_notify(&ec->bridge, connector_status_connected); ++ break; ++ ++ case ASPIRE_EC_EVENT_BKL_BLANKED: ++ case ASPIRE_EC_EVENT_BKL_UNBLANKED: ++ /* Display backlight blanked on FN+F6. No action needed. */ ++ break; ++ ++ case ASPIRE_EC_EVENT_KBD_BKL_ON: ++ case ASPIRE_EC_EVENT_KBD_BKL_OFF: ++ /* ++ * There is a keyboard backlight connector on Aspire 1 that is ++ * controlled by FN+F8. There is no kb backlight on the device though. ++ * Seems like this is used on other devices like Acer Spin 7. ++ * No action needed. ++ */ ++ break; ++ ++ default: ++ dev_warn(&ec->client->dev, "Unknown event id=0x%x\n", id); ++ } ++ ++ return IRQ_HANDLED; ++} ++ ++/* ++ * Power supply. ++ */ ++ ++struct aspire_ec_bat_psy_static_data { ++ u8 unk1; ++ u8 flags; ++ __le16 unk2; ++ __le16 voltage_design; ++ __le16 capacity_full; ++ __le16 unk3; ++ __le16 serial; ++ u8 model_id; ++ u8 vendor_id; ++} __packed; ++ ++static const char * const aspire_ec_bat_psy_battery_model[] = { ++ "AP18C4K", ++ "AP18C8K", ++ "AP19B8K", ++ "AP16M4J", ++ "AP16M5J", ++}; ++ ++static const char * const aspire_ec_bat_psy_battery_vendor[] = { ++ "SANYO", ++ "SONY", ++ "PANASONIC", ++ "SAMSUNG", ++ "SIMPLO", ++ "MOTOROLA", ++ "CELXPERT", ++ "LGC", ++ "GETAC", ++ "MURATA", ++}; ++ ++struct aspire_ec_bat_psy_dynamic_data { ++ u8 unk1; ++ u8 flags; ++ u8 unk2; ++ __le16 capacity_now; ++ __le16 voltage_now; ++ __le16 current_now; ++ __le16 unk3; ++ __le16 unk4; ++} __packed; ++ ++static int aspire_ec_bat_psy_get_property(struct power_supply *psy, ++ enum power_supply_property psp, ++ union power_supply_propval *val) ++{ ++ struct aspire_ec *ec = power_supply_get_drvdata(psy); ++ struct aspire_ec_bat_psy_static_data sdat; ++ struct aspire_ec_bat_psy_dynamic_data ddat; ++ int str_index = 0; ++ ++ i2c_smbus_read_i2c_block_data(ec->client, ASPIRE_EC_FG_STATIC, sizeof(sdat), (u8 *)&sdat); ++ i2c_smbus_read_i2c_block_data(ec->client, ASPIRE_EC_FG_DYNAMIC, sizeof(ddat), (u8 *)&ddat); ++ ++ switch (psp) { ++ case POWER_SUPPLY_PROP_STATUS: ++ val->intval = POWER_SUPPLY_STATUS_UNKNOWN; ++ if (ddat.flags & ASPIRE_EC_FG_FLAG_CHARGING) ++ val->intval = POWER_SUPPLY_STATUS_CHARGING; ++ else if (ddat.flags & ASPIRE_EC_FG_FLAG_DISCHARGING) ++ val->intval = POWER_SUPPLY_STATUS_DISCHARGING; ++ else if (ddat.flags & ASPIRE_EC_FG_FLAG_FULL) ++ val->intval = POWER_SUPPLY_STATUS_FULL; ++ break; ++ ++ case POWER_SUPPLY_PROP_VOLTAGE_NOW: ++ val->intval = get_unaligned_le16(&ddat.voltage_now) * MILLI_TO_MICRO; ++ break; ++ ++ case POWER_SUPPLY_PROP_VOLTAGE_MAX_DESIGN: ++ val->intval = le16_to_cpu(sdat.voltage_design) * MILLI_TO_MICRO; ++ break; ++ ++ case POWER_SUPPLY_PROP_CHARGE_NOW: ++ val->intval = get_unaligned_le16(&ddat.capacity_now) * MILLI_TO_MICRO; ++ break; ++ ++ case POWER_SUPPLY_PROP_CHARGE_FULL: ++ val->intval = le16_to_cpu(sdat.capacity_full) * MILLI_TO_MICRO; ++ break; ++ ++ case POWER_SUPPLY_PROP_CAPACITY: ++ val->intval = get_unaligned_le16(&ddat.capacity_now) * 100; ++ val->intval /= le16_to_cpu(sdat.capacity_full); ++ break; ++ ++ case POWER_SUPPLY_PROP_CURRENT_NOW: ++ val->intval = (s16)get_unaligned_le16(&ddat.current_now) * MILLI_TO_MICRO; ++ break; ++ ++ case POWER_SUPPLY_PROP_PRESENT: ++ val->intval = !!(ddat.flags & ASPIRE_EC_FG_FLAG_PRESENT); ++ break; ++ ++ case POWER_SUPPLY_PROP_SCOPE: ++ val->intval = POWER_SUPPLY_SCOPE_SYSTEM; ++ break; ++ ++ case POWER_SUPPLY_PROP_MODEL_NAME: ++ str_index = sdat.model_id - 1; ++ ++ if (str_index >= 0 && str_index < ARRAY_SIZE(aspire_ec_bat_psy_battery_model)) ++ val->strval = aspire_ec_bat_psy_battery_model[str_index]; ++ else ++ val->strval = "Unknown"; ++ break; ++ ++ case POWER_SUPPLY_PROP_MANUFACTURER: ++ str_index = sdat.vendor_id - 3; /* ACPI uses 3 as an offset here. */ ++ ++ if (str_index >= 0 && str_index < ARRAY_SIZE(aspire_ec_bat_psy_battery_vendor)) ++ val->strval = aspire_ec_bat_psy_battery_vendor[str_index]; ++ else ++ val->strval = "Unknown"; ++ break; ++ ++ default: ++ return -EINVAL; ++ } ++ ++ return 0; ++} ++ ++static enum power_supply_property aspire_ec_bat_psy_props[] = { ++ POWER_SUPPLY_PROP_STATUS, ++ POWER_SUPPLY_PROP_VOLTAGE_NOW, ++ POWER_SUPPLY_PROP_VOLTAGE_MAX_DESIGN, ++ POWER_SUPPLY_PROP_CHARGE_NOW, ++ POWER_SUPPLY_PROP_CHARGE_FULL, ++ POWER_SUPPLY_PROP_CAPACITY, ++ POWER_SUPPLY_PROP_CURRENT_NOW, ++ POWER_SUPPLY_PROP_PRESENT, ++ POWER_SUPPLY_PROP_SCOPE, ++ POWER_SUPPLY_PROP_MODEL_NAME, ++ POWER_SUPPLY_PROP_MANUFACTURER, ++}; ++ ++static const struct power_supply_desc aspire_ec_bat_psy_desc = { ++ .name = "aspire-ec-bat", ++ .type = POWER_SUPPLY_TYPE_BATTERY, ++ .get_property = aspire_ec_bat_psy_get_property, ++ .properties = aspire_ec_bat_psy_props, ++ .num_properties = ARRAY_SIZE(aspire_ec_bat_psy_props), ++}; ++ ++static int aspire_ec_adp_psy_get_property(struct power_supply *psy, ++ enum power_supply_property psp, ++ union power_supply_propval *val) ++{ ++ struct aspire_ec *ec = power_supply_get_drvdata(psy); ++ u8 tmp; ++ ++ switch (psp) { ++ case POWER_SUPPLY_PROP_ONLINE: ++ aspire_ec_ram_read(ec->client, ASPIRE_EC_RAM_ADP, &tmp, sizeof(tmp)); ++ val->intval = !!(tmp & ASPIRE_EC_AC_STATUS); ++ break; ++ ++ default: ++ return -EINVAL; ++ } ++ ++ return 0; ++} ++ ++static enum power_supply_property aspire_ec_adp_psy_props[] = { ++ POWER_SUPPLY_PROP_ONLINE, ++}; ++ ++static const struct power_supply_desc aspire_ec_adp_psy_desc = { ++ .name = "aspire-ec-adp", ++ .type = POWER_SUPPLY_TYPE_MAINS, ++ .get_property = aspire_ec_adp_psy_get_property, ++ .properties = aspire_ec_adp_psy_props, ++ .num_properties = ARRAY_SIZE(aspire_ec_adp_psy_props), ++}; ++ ++/* ++ * USB-C DP Alt mode HPD. ++ */ ++ ++static int aspire_ec_bridge_attach(struct drm_bridge *bridge, enum drm_bridge_attach_flags flags) ++{ ++ return flags & DRM_BRIDGE_ATTACH_NO_CONNECTOR ? 0 : -EINVAL; ++} ++ ++static void aspire_ec_bridge_update_hpd_work(struct work_struct *work) ++{ ++ struct aspire_ec *ec = container_of(work, struct aspire_ec, work); ++ u8 tmp; ++ ++ aspire_ec_ram_read(ec->client, ASPIRE_EC_RAM_HPD_STATUS, &tmp, sizeof(tmp)); ++ if (tmp == ASPIRE_EC_HPD_CONNECTED) ++ drm_bridge_hpd_notify(&ec->bridge, connector_status_connected); ++ else ++ drm_bridge_hpd_notify(&ec->bridge, connector_status_disconnected); ++} ++ ++static void aspire_ec_bridge_hpd_enable(struct drm_bridge *bridge) ++{ ++ struct aspire_ec *ec = container_of(bridge, struct aspire_ec, bridge); ++ ++ schedule_work(&ec->work); ++} ++ ++static const struct drm_bridge_funcs aspire_ec_bridge_funcs = { ++ .hpd_enable = aspire_ec_bridge_hpd_enable, ++ .attach = aspire_ec_bridge_attach, ++}; ++ ++/* ++ * Sysfs attributes. ++ */ ++ ++static ssize_t fn_lock_show(struct device *dev, struct device_attribute *attr, char *buf) ++{ ++ struct aspire_ec *ec = i2c_get_clientdata(to_i2c_client(dev)); ++ u8 tmp; ++ ++ aspire_ec_ram_read(ec->client, ASPIRE_EC_RAM_KBD_MODE, &tmp, sizeof(tmp)); ++ ++ return sysfs_emit(buf, "%u\n", !(tmp & ASPIRE_EC_RAM_KBD_MEDIA_ON_TOP)); ++} ++ ++static ssize_t fn_lock_store(struct device *dev, struct device_attribute *attr, ++ const char *buf, size_t count) ++{ ++ struct aspire_ec *ec = i2c_get_clientdata(to_i2c_client(dev)); ++ u8 tmp; ++ ++ bool state; ++ int ret; ++ ++ ret = kstrtobool(buf, &state); ++ if (ret) ++ return ret; ++ ++ aspire_ec_ram_read(ec->client, ASPIRE_EC_RAM_KBD_MODE, &tmp, sizeof(tmp)); ++ ++ if (state) ++ tmp &= ~ASPIRE_EC_RAM_KBD_MEDIA_ON_TOP; ++ else ++ tmp |= ASPIRE_EC_RAM_KBD_MEDIA_ON_TOP; ++ ++ aspire_ec_ram_write(ec->client, ASPIRE_EC_RAM_KBD_MODE, tmp); ++ ++ return count; ++} ++ ++static DEVICE_ATTR_RW(fn_lock); ++ ++static struct attribute *aspire_ec_attrs[] = { ++ &dev_attr_fn_lock.attr, ++ NULL ++}; ++ATTRIBUTE_GROUPS(aspire_ec); ++ ++static int aspire_ec_probe(struct i2c_client *client) ++{ ++ struct power_supply_config psy_cfg = {0}; ++ struct device *dev = &client->dev; ++ struct fwnode_handle *fwnode; ++ struct aspire_ec *ec; ++ int ret; ++ u8 tmp; ++ ++ ec = devm_kzalloc(dev, sizeof(*ec), GFP_KERNEL); ++ if (!ec) ++ return -ENOMEM; ++ ++ ec->client = client; ++ i2c_set_clientdata(client, ec); ++ ++ /* Battery status reports */ ++ psy_cfg.drv_data = ec; ++ ec->bat_psy = devm_power_supply_register(dev, &aspire_ec_bat_psy_desc, &psy_cfg); ++ if (IS_ERR(ec->bat_psy)) ++ return dev_err_probe(dev, PTR_ERR(ec->bat_psy), ++ "Failed to register battery power supply\n"); ++ ++ ec->adp_psy = devm_power_supply_register(dev, &aspire_ec_adp_psy_desc, &psy_cfg); ++ if (IS_ERR(ec->adp_psy)) ++ return dev_err_probe(dev, PTR_ERR(ec->adp_psy), ++ "Failed to register AC power supply\n"); ++ ++ /* Lid switch */ ++ ec->idev = devm_input_allocate_device(dev); ++ if (!ec->idev) ++ return -ENOMEM; ++ ++ ec->idev->name = "aspire-ec"; ++ ec->idev->phys = "aspire-ec/input0"; ++ input_set_capability(ec->idev, EV_SW, SW_LID); ++ ++ ret = input_register_device(ec->idev); ++ if (ret) ++ return dev_err_probe(dev, ret, "Input device register failed\n"); ++ ++ /* Enable the keyboard fn keys */ ++ tmp = ASPIRE_EC_RAM_KBD_FN_EN | ASPIRE_EC_RAM_KBD_ALWAYS_SET; ++ tmp |= ASPIRE_EC_RAM_KBD_MEDIA_ON_TOP; ++ aspire_ec_ram_write(client, ASPIRE_EC_RAM_KBD_MODE, tmp); ++ ++ aspire_ec_ram_read(client, ASPIRE_EC_RAM_KBD_MODE_2, &tmp, sizeof(tmp)); ++ tmp |= ASPIRE_EC_RAM_KBD_MEDIA_NOTIFY; ++ aspire_ec_ram_write(client, ASPIRE_EC_RAM_KBD_MODE_2, tmp); ++ ++ /* External Type-C display attach reports */ ++ fwnode = device_get_named_child_node(dev, "connector"); ++ if (fwnode) { ++ INIT_WORK(&ec->work, aspire_ec_bridge_update_hpd_work); ++ ec->bridge.funcs = &aspire_ec_bridge_funcs; ++ ec->bridge.of_node = to_of_node(fwnode); ++ ec->bridge.ops = DRM_BRIDGE_OP_HPD; ++ ec->bridge.type = DRM_MODE_CONNECTOR_USB; ++ ++ ret = devm_drm_bridge_add(dev, &ec->bridge); ++ if (ret) { ++ fwnode_handle_put(fwnode); ++ return dev_err_probe(dev, ret, "Failed to register drm bridge\n"); ++ } ++ ++ ec->bridge_configured = true; ++ } ++ ++ ret = devm_request_threaded_irq(dev, client->irq, NULL, ++ aspire_ec_irq_handler, IRQF_ONESHOT, ++ dev_name(dev), ec); ++ if (ret) ++ return dev_err_probe(dev, ret, "Failed to request irq\n"); ++ ++ return 0; ++} ++ ++static int aspire_ec_resume(struct device *dev) ++{ ++ struct aspire_ec *ec = i2c_get_clientdata(to_i2c_client(dev)); ++ u8 tmp; ++ ++ aspire_ec_ram_read(ec->client, ASPIRE_EC_RAM_LID_STATUS, &tmp, sizeof(tmp)); ++ input_report_switch(ec->idev, SW_LID, !!(tmp & ASPIRE_EC_LID_OPEN)); ++ input_sync(ec->idev); ++ ++ return 0; ++} ++ ++static const struct i2c_device_id aspire_ec_id[] = { ++ { "aspire1-ec", }, ++ { } ++}; ++MODULE_DEVICE_TABLE(i2c, aspire_ec_id); ++ ++static const struct of_device_id aspire_ec_of_match[] = { ++ { .compatible = "acer,aspire1-ec", }, ++ { } ++}; ++MODULE_DEVICE_TABLE(of, aspire_ec_of_match); ++ ++static DEFINE_SIMPLE_DEV_PM_OPS(aspire_ec_pm_ops, NULL, aspire_ec_resume); ++ ++static struct i2c_driver aspire_ec_driver = { ++ .driver = { ++ .name = "aspire-ec", ++ .of_match_table = aspire_ec_of_match, ++ .pm = pm_sleep_ptr(&aspire_ec_pm_ops), ++ .dev_groups = aspire_ec_groups, ++ }, ++ .probe = aspire_ec_probe, ++ .id_table = aspire_ec_id, ++}; ++module_i2c_driver(aspire_ec_driver); ++ ++MODULE_DESCRIPTION("Acer Aspire 1 embedded controller"); ++MODULE_AUTHOR("Nikita Travkin "); ++MODULE_LICENSE("GPL"); +-- +2.44.0 + diff --git a/device/community/linux-postmarketos-qcom-sc7180/0010-arm64-dts-qcom-acer-aspire1-Add-embedded-controller.patch b/device/community/linux-postmarketos-qcom-sc7180/0010-arm64-dts-qcom-acer-aspire1-Add-embedded-controller.patch new file mode 100644 index 000000000..4c9d3c920 --- /dev/null +++ b/device/community/linux-postmarketos-qcom-sc7180/0010-arm64-dts-qcom-acer-aspire1-Add-embedded-controller.patch @@ -0,0 +1,94 @@ +From 2379590f43baff3f0e80326f25df21cc98e8ae11 Mon Sep 17 00:00:00 2001 +From: Nikita Travkin +Date: Sat, 9 Jul 2022 00:40:27 +0500 +Subject: [PATCH 10/11] arm64: dts: qcom: acer-aspire1: Add embedded controller + +The laptop contains an embedded controller that provides a set of +features: + +- Battery and charger monitoring +- USB Type-C DP alt mode HPD monitoring +- Lid status detection +- Small amount of keyboard configuration* + +[*] The keyboard is handled by the same EC but it has a dedicated i2c +bus and is already enabled. This port only provides fn key behavior +configuration. + +Add the EC to the device tree and describe the relationship between the +EC-managed type-c port and the SoC DisplayPort. + +Reviewed-by: Konrad Dybcio +Signed-off-by: Nikita Travkin +--- + .../boot/dts/qcom/sc7180-acer-aspire1.dts | 40 ++++++++++++++++++- + 1 file changed, 39 insertions(+), 1 deletion(-) + +diff --git a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts +index 5afcb8212f49..3f0d3e33894a 100644 +--- a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts ++++ b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts +@@ -255,7 +255,25 @@ &i2c2 { + clock-frequency = <400000>; + status = "okay"; + +- /* embedded-controller@76 */ ++ embedded-controller@76 { ++ compatible = "acer,aspire1-ec"; ++ reg = <0x76>; ++ ++ interrupts-extended = <&tlmm 30 IRQ_TYPE_LEVEL_LOW>; ++ ++ pinctrl-0 = <&ec_int_default>; ++ pinctrl-names = "default"; ++ ++ connector { ++ compatible = "usb-c-connector"; ++ ++ port { ++ ec_dp_in: endpoint { ++ remote-endpoint = <&mdss_dp_out>; ++ }; ++ }; ++ }; ++ }; + }; + + &i2c4 { +@@ -419,6 +437,19 @@ &mdss { + status = "okay"; + }; + ++&mdss_dp { ++ data-lanes = <0 1>; ++ ++ vdda-1p2-supply = <&vreg_l3c_1p2>; ++ vdda-0p9-supply = <&vreg_l4a_0p8>; ++ ++ status = "okay"; ++}; ++ ++&mdss_dp_out { ++ remote-endpoint = <&ec_dp_in>; ++}; ++ + &mdss_dsi0 { + vdda-supply = <&vreg_l3c_1p2>; + status = "okay"; +@@ -857,6 +888,13 @@ codec_irq_default: codec-irq-deault-state { + bias-disable; + }; + ++ ec_int_default: ec-int-default-state { ++ pins = "gpio30"; ++ function = "gpio"; ++ drive-strength = <2>; ++ bias-disable; ++ }; ++ + edp_bridge_irq_default: edp-bridge-irq-default-state { + pins = "gpio11"; + function = "gpio"; +-- +2.44.0 + diff --git a/device/community/linux-postmarketos-qcom-sc7180/0011-ASoC-qcom-sc7180-Map-missing-jack-kcontrols.patch b/device/community/linux-postmarketos-qcom-sc7180/0011-ASoC-qcom-sc7180-Map-missing-jack-kcontrols.patch deleted file mode 100644 index 77e8fa6e4..000000000 --- a/device/community/linux-postmarketos-qcom-sc7180/0011-ASoC-qcom-sc7180-Map-missing-jack-kcontrols.patch +++ /dev/null @@ -1,103 +0,0 @@ -From 8b12f09d1ba7f704e1ff0435d891556aae675b22 Mon Sep 17 00:00:00 2001 -From: Alper Nebi Yasak -Date: Wed, 2 Aug 2023 20:57:30 +0300 -Subject: [PATCH 11/17] ASoC: qcom: sc7180: Map missing jack kcontrols - -This driver does not properly map jack pins to kcontrols that PulseAudio -and PipeWire need to handle jack detection events. The RT5682 and -RT5682s codecs used here can detect Headphone and Headset Mic -connections. Expose each to userspace as a kcontrol. - -Signed-off-by: Alper Nebi Yasak -Link: https://lore.kernel.org/r/20230802175737.263412-21-alpernebiyasak@gmail.com -Signed-off-by: Mark Brown ---- - sound/soc/qcom/sc7180.c | 40 +++++++++++++++++++++++++++++++++------- - 1 file changed, 33 insertions(+), 7 deletions(-) - -diff --git a/sound/soc/qcom/sc7180.c b/sound/soc/qcom/sc7180.c -index f5f7c64b23a2..57c5f35dfcc5 100644 ---- a/sound/soc/qcom/sc7180.c -+++ b/sound/soc/qcom/sc7180.c -@@ -42,6 +42,17 @@ static void sc7180_jack_free(struct snd_jack *jack) - snd_soc_component_set_jack(component, NULL, NULL); - } - -+static struct snd_soc_jack_pin sc7180_jack_pins[] = { -+ { -+ .pin = "Headphone Jack", -+ .mask = SND_JACK_HEADPHONE, -+ }, -+ { -+ .pin = "Headset Mic", -+ .mask = SND_JACK_MICROPHONE, -+ }, -+}; -+ - static int sc7180_headset_init(struct snd_soc_pcm_runtime *rtd) - { - struct snd_soc_card *card = rtd->card; -@@ -51,13 +62,14 @@ static int sc7180_headset_init(struct snd_soc_pcm_runtime *rtd) - struct snd_jack *jack; - int rval; - -- rval = snd_soc_card_jack_new( -- card, "Headset Jack", -- SND_JACK_HEADSET | -- SND_JACK_HEADPHONE | -- SND_JACK_BTN_0 | SND_JACK_BTN_1 | -- SND_JACK_BTN_2 | SND_JACK_BTN_3, -- &pdata->hs_jack); -+ rval = snd_soc_card_jack_new_pins(card, "Headset Jack", -+ SND_JACK_HEADSET | -+ SND_JACK_HEADPHONE | -+ SND_JACK_BTN_0 | SND_JACK_BTN_1 | -+ SND_JACK_BTN_2 | SND_JACK_BTN_3, -+ &pdata->hs_jack, -+ sc7180_jack_pins, -+ ARRAY_SIZE(sc7180_jack_pins)); - - if (rval < 0) { - dev_err(card->dev, "Unable to add Headset Jack\n"); -@@ -297,6 +309,11 @@ static const struct snd_soc_dapm_widget sc7180_snd_widgets[] = { - SND_SOC_DAPM_MIC("Headset Mic", NULL), - }; - -+static const struct snd_kcontrol_new sc7180_snd_controls[] = { -+ SOC_DAPM_PIN_SWITCH("Headphone Jack"), -+ SOC_DAPM_PIN_SWITCH("Headset Mic"), -+}; -+ - static const struct snd_soc_dapm_widget sc7180_adau7002_snd_widgets[] = { - SND_SOC_DAPM_MIC("DMIC", NULL), - }; -@@ -320,6 +337,11 @@ static const struct snd_soc_dapm_widget sc7180_snd_dual_mic_widgets[] = { - SND_SOC_DAPM_MUX("Dmic Mux", SND_SOC_NOPM, 0, 0, &sc7180_dmic_mux_control), - }; - -+static const struct snd_kcontrol_new sc7180_snd_dual_mic_controls[] = { -+ SOC_DAPM_PIN_SWITCH("Headphone Jack"), -+ SOC_DAPM_PIN_SWITCH("Headset Mic"), -+}; -+ - static const struct snd_soc_dapm_route sc7180_snd_dual_mic_audio_route[] = { - {"Dmic Mux", "Front Mic", "DMIC"}, - {"Dmic Mux", "Rear Mic", "DMIC"}, -@@ -348,10 +370,14 @@ static int sc7180_snd_platform_probe(struct platform_device *pdev) - card->dev = dev; - card->dapm_widgets = sc7180_snd_widgets; - card->num_dapm_widgets = ARRAY_SIZE(sc7180_snd_widgets); -+ card->controls = sc7180_snd_controls; -+ card->num_controls = ARRAY_SIZE(sc7180_snd_controls); - - if (of_property_read_bool(dev->of_node, "dmic-gpios")) { - card->dapm_widgets = sc7180_snd_dual_mic_widgets, - card->num_dapm_widgets = ARRAY_SIZE(sc7180_snd_dual_mic_widgets), -+ card->controls = sc7180_snd_dual_mic_controls, -+ card->num_controls = ARRAY_SIZE(sc7180_snd_dual_mic_controls), - card->dapm_routes = sc7180_snd_dual_mic_audio_route, - card->num_dapm_routes = ARRAY_SIZE(sc7180_snd_dual_mic_audio_route), - data->dmic_sel = devm_gpiod_get(&pdev->dev, "dmic", GPIOD_OUT_LOW); --- -2.43.0 - diff --git a/device/community/linux-postmarketos-qcom-sc7180/0011-HACK-clk-Delay-disabling-unused-clocks-by-10s.patch b/device/community/linux-postmarketos-qcom-sc7180/0011-HACK-clk-Delay-disabling-unused-clocks-by-10s.patch new file mode 100644 index 000000000..1aa6c1e9a --- /dev/null +++ b/device/community/linux-postmarketos-qcom-sc7180/0011-HACK-clk-Delay-disabling-unused-clocks-by-10s.patch @@ -0,0 +1,78 @@ +From c3fccf1615be6548b50274851557f579b6320b5b Mon Sep 17 00:00:00 2001 +From: Nikita Travkin +Date: Mon, 11 Mar 2024 14:53:04 +0500 +Subject: [PATCH] HACK: clk: Delay disabling unused clocks by 10s + +There is a forever-lasting problem with qcom clocks that causes display +subsystem crash due to "disp_cc_mdss_mdp_clk status stuck at 'off'" if +the clocks were cleaned up before msm claimed this one. + +Delay disabling unused clocks by 10 seconds to work around this. + +Signed-off-by: Nikita Travkin +--- + drivers/clk/clk.c | 24 ++++++++++++++++-------- + 1 file changed, 16 insertions(+), 8 deletions(-) + +diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c +index 50228cb0c559..f0647ecca9ac 100644 +--- a/drivers/clk/clk.c ++++ b/drivers/clk/clk.c +@@ -1347,7 +1347,7 @@ static void clk_core_disable_unprepare(struct clk_core *core) + clk_core_unprepare_lock(core); + } + +-static void __init clk_unprepare_unused_subtree(struct clk_core *core) ++static void clk_unprepare_unused_subtree(struct clk_core *core) + { + struct clk_core *child; + +@@ -1377,7 +1377,7 @@ static void __init clk_unprepare_unused_subtree(struct clk_core *core) + clk_pm_runtime_put(core); + } + +-static void __init clk_disable_unused_subtree(struct clk_core *core) ++static void clk_disable_unused_subtree(struct clk_core *core) + { + struct clk_core *child; + unsigned long flags; +@@ -1431,15 +1431,10 @@ static int __init clk_ignore_unused_setup(char *__unused) + } + __setup("clk_ignore_unused", clk_ignore_unused_setup); + +-static int __init clk_disable_unused(void) ++static void clk_disable_unused_work_function(struct work_struct *work) + { + struct clk_core *core; + +- if (clk_ignore_unused) { +- pr_warn("clk: Not disabling unused clocks\n"); +- return 0; +- } +- + pr_info("clk: Disabling unused clocks\n"); + + clk_prepare_lock(); +@@ -1457,6 +1452,19 @@ static int __init clk_disable_unused(void) + clk_unprepare_unused_subtree(core); + + clk_prepare_unlock(); ++} ++static DECLARE_DELAYED_WORK(clk_disable_unused_work, ++ clk_disable_unused_work_function); ++ ++static int __init clk_disable_unused(void) ++{ ++ if (clk_ignore_unused) { ++ pr_warn("clk: Not disabling unused clocks\n"); ++ return 0; ++ } ++ ++ schedule_delayed_work(&clk_disable_unused_work, ++ msecs_to_jiffies(10000)); + + return 0; + } +-- +2.44.0 + diff --git a/device/community/linux-postmarketos-qcom-sc7180/0015-arm64-dts-qcom-acer-aspire1-Correct-audio-codec-defi.patch b/device/community/linux-postmarketos-qcom-sc7180/0015-arm64-dts-qcom-acer-aspire1-Correct-audio-codec-defi.patch deleted file mode 100644 index f480bee9b..000000000 --- a/device/community/linux-postmarketos-qcom-sc7180/0015-arm64-dts-qcom-acer-aspire1-Correct-audio-codec-defi.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 28eac7fe663108b43c15d25566b03e8ccb71466c Mon Sep 17 00:00:00 2001 -From: Nikita Travkin -Date: Tue, 5 Dec 2023 16:48:11 +0500 -Subject: [PATCH 15/17] arm64: dts: qcom: acer-aspire1: Correct audio codec - definition - -When initially added, a mistake was made in the definition of the codec. - -Despite the fact that the DMIC line is connected on the side of the -codec chip, and relevant passive components, including 0-ohm resistors -connecting the dmics, are present, the dmic line is still cut in -another place on the board, which was overlooked. - -Correct this by replacing the dmic configuration with a comment -describing this hardware detail. - -While at it, also add missing regulators definitions. This is not a -functional change as all the relevant regulators were already added via -the other rail supplies. - -Fixes: 4a9f8f8f2ada ("arm64: dts: qcom: Add Acer Aspire 1") -Signed-off-by: Nikita Travkin -Link: https://lore.kernel.org/r/20231205-aspire1-sound-v2-2-443b7ac0a06f@trvn.ru -Signed-off-by: Bjorn Andersson ---- - .../arm64/boot/dts/qcom/sc7180-acer-aspire1.dts | 17 +++++++++++++++-- - 1 file changed, 15 insertions(+), 2 deletions(-) - -diff --git a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts -index ab8ec7958584..7bde69f39c8a 100644 ---- a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts -+++ b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts -@@ -224,9 +224,22 @@ alc5682: codec@1a { - AVDD-supply = <&vreg_l15a_1p8>; - MICVDD-supply = <®_codec_3p3>; - VBAT-supply = <®_codec_3p3>; -+ DBVDD-supply = <&vreg_l15a_1p8>; -+ LDO1-IN-supply = <&vreg_l15a_1p8>; -+ -+ /* -+ * NOTE: The board has a path from this codec to the -+ * DMIC microphones in the lid, however some of the option -+ * resistors are absent and the microphones are connected -+ * to the SoC instead. -+ * -+ * If the resistors were to be changed by the user to -+ * connect the codec, the following could be used: -+ * -+ * realtek,dmic1-data-pin = <1>; -+ * realtek,dmic1-clk-pin = <1>; -+ */ - -- realtek,dmic1-data-pin = <1>; -- realtek,dmic1-clk-pin = <1>; - realtek,jd-src = <1>; - }; - }; --- -2.43.0 - diff --git a/device/community/linux-postmarketos-qcom-sc7180/0017-HACK-arm64-dts-qcom-acer-aspire1-Enable-DisplayPort-.patch b/device/community/linux-postmarketos-qcom-sc7180/0017-HACK-arm64-dts-qcom-acer-aspire1-Enable-DisplayPort-.patch deleted file mode 100644 index bc5942b3c..000000000 --- a/device/community/linux-postmarketos-qcom-sc7180/0017-HACK-arm64-dts-qcom-acer-aspire1-Enable-DisplayPort-.patch +++ /dev/null @@ -1,34 +0,0 @@ -From a69329189d779cadf5687ae294a6b62a714f7360 Mon Sep 17 00:00:00 2001 -From: Nikita Travkin -Date: Wed, 20 Dec 2023 12:30:04 +0500 -Subject: [PATCH 17/17] HACK: arm64: dts: qcom: acer-aspire1: Enable - DisplayPort block - -Signed-off-by: Nikita Travkin ---- - arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts | 9 +++++++++ - 1 file changed, 9 insertions(+) - -diff --git a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts -index 58f694d8e762..bca950645a97 100644 ---- a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts -+++ b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts -@@ -434,6 +434,15 @@ &mdss { - status = "okay"; - }; - -+&mdss_dp { -+ data-lanes = <0 1>; -+ -+ vdda-1p2-supply = <&vreg_l3c_1p2>; -+ vdda-0p9-supply = <&vreg_l4a_0p8>; -+ -+ status = "okay"; -+}; -+ - &pm6150_adc { - thermistor@4e { - reg = ; --- -2.43.0 - diff --git a/device/community/linux-postmarketos-qcom-sc7180/APKBUILD b/device/community/linux-postmarketos-qcom-sc7180/APKBUILD index 3c612e6f5..061bbe729 100644 --- a/device/community/linux-postmarketos-qcom-sc7180/APKBUILD +++ b/device/community/linux-postmarketos-qcom-sc7180/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: Jenneron pkgname=linux-postmarketos-qcom-sc7180 -pkgver=6.1.39 -pkgrel=7 +pkgver=6.6.28 +pkgrel=0 pkgdesc="Mainline kernel fork for Qualcomm Snapdragon 7c devices" arch="aarch64" _carch="arm64" @@ -34,23 +34,17 @@ case $pkgver in esac source=" https://cdn.kernel.org/pub/linux/kernel/v${_kernver%%.*}.x/linux-${pkgver//_/-}.tar.xz - 0001-drm-panel-edp-Add-enable-timings-for-N140HCA-EAC-pan.patch - 0002-drm-bridge-ti-sn65dsi86-Implement-wait_hpd_asserted.patch - 0003-arm64-dts-qcom-sc7180-Don-t-enable-lpass-clocks-by-d.patch - 0004-arm64-dts-qcom-sc7180-Drop-redundant-disable-in-mdp.patch - 0005-arm64-dts-qcom-Add-Acer-Aspire-1.patch - 0006-media-venus-core-Set-up-secure-memory-ranges-for-SC7.patch - 0007-arm64-dts-qcom-sc7180-Split-up-TF-A-related-PSCI-con.patch - 0008-remoteproc-qcom-pas-Add-sc7180-adsp.patch - 0009-arm64-dts-qcom-sc7180-Add-tertiary-mi2s-pinctrl.patch - 0010-arm64-dts-qcom-sc7180-Add-ADSP.patch - 0011-ASoC-qcom-sc7180-Map-missing-jack-kcontrols.patch - 0012-ASoC-qcom-sc7180-Add-support-for-qdsp6-baked-sound.patch - 0013-arm64-dts-qcom-pm6150-Add-resin-and-rtc-nodes.patch - 0014-arm64-dts-qcom-acer-aspire1-Enable-RTC.patch - 0015-arm64-dts-qcom-acer-aspire1-Correct-audio-codec-defi.patch - 0016-arm64-dts-qcom-acer-aspire1-Add-sound.patch - 0017-HACK-arm64-dts-qcom-acer-aspire1-Enable-DisplayPort-.patch + 0001-remoteproc-qcom-pas-Add-sc7180-adsp.patch + 0002-arm64-dts-qcom-sc7180-Add-tertiary-mi2s-pinctrl.patch + 0003-arm64-dts-qcom-sc7180-Add-ADSP.patch + 0004-ASoC-qcom-sc7180-Add-support-for-qdsp6-baked-sound.patch + 0005-arm64-dts-qcom-pm6150-Add-resin-and-rtc-nodes.patch + 0006-arm64-dts-qcom-acer-aspire1-Enable-RTC.patch + 0007-arm64-dts-qcom-acer-aspire1-Add-sound.patch + 0008-platform-Add-ARM64-platform-directory.patch + 0009-platform-arm64-Add-Acer-Aspire-1-embedded-controller.patch + 0010-arm64-dts-qcom-acer-aspire1-Add-embedded-controller.patch + 0011-HACK-clk-Delay-disabling-unused-clocks-by-10s.patch $_config " builddir="$srcdir/linux-${_kernver//_/-}" @@ -81,23 +75,17 @@ package() { } sha512sums=" -20d468ae89b57dda82d7c7b814c3d8b1b510e1623775b09a8a0b0a8a0431461e0a1d2df2bfa01f3102932c8eef91405546898b50ec3e6f30015098bb39722b41 linux-6.1.39.tar.xz -eee1c168ef24ecff55d01358f806f6aa31bb470d4ce547b812bda64bf78f916834e210d83aaf45955c44577981de5b12c196bff5f7236c7959e7f3df2985d035 0001-drm-panel-edp-Add-enable-timings-for-N140HCA-EAC-pan.patch -f1c85f9e7b2dbebba54eca7080589ee35be501854510fd54f1fb3db07b8cfb62276cb9359a40096ac0a98bd01bc587de89dbf227aad6b371f64b78b5c806e583 0002-drm-bridge-ti-sn65dsi86-Implement-wait_hpd_asserted.patch -03b638baea7703227c398ba37824eeb17a96138aced4cc1e0769a265eb38788ac1fd150166a0af9e22f1364d053f20219b2b269310d01c32c4089682939021bf 0003-arm64-dts-qcom-sc7180-Don-t-enable-lpass-clocks-by-d.patch -82761a3c53167dfb02091fb5305dca67b52872db3ecb14a42d782ba1346f046160d47a379fd88f0e3cb7ee91aa35a2eebe89304edb618df3895e2d469c9c8863 0004-arm64-dts-qcom-sc7180-Drop-redundant-disable-in-mdp.patch -639784302e28afc562fc6d9673b12fbce49f11b5e2400ed5c460d5e157e7196092f33e1c67a1ee6bf8ad5b4dbb81f2f0263439662a1b68ea49c9201f63afe153 0005-arm64-dts-qcom-Add-Acer-Aspire-1.patch -b09b67143e1adc26cb24954a31f3633aaf9624354ba27e69af685503a6621c6c7bad0b5b9c08535548e3e2885ccba7798542b97c4d217ab970ee504ba250595d 0006-media-venus-core-Set-up-secure-memory-ranges-for-SC7.patch -04d746c6b5595097eec2a4bf37df06266a29080bedf7708bd54eb7b98a0b9a6d5581aef45070799b7d10ba94cd11d0ceb09486547e24bf2a597964e9e5566bc1 0007-arm64-dts-qcom-sc7180-Split-up-TF-A-related-PSCI-con.patch -3f9c5b34f6869a9332ca8f260b385d0d7a5c4453d3fe682d864f53d44dceee9bd6bb370e75a60ce61c87b4224347f8cc8647c9d03f2bc2293d8e53ef327e2cc5 0008-remoteproc-qcom-pas-Add-sc7180-adsp.patch -fe389611f991ba9de9e4662b2ed35a6790bbc18bb99fdc12eb281e5a4d5559ada3952a4024145007e9b8fbd3ed5fb862f56ad27f0ff36874decf24090d995f57 0009-arm64-dts-qcom-sc7180-Add-tertiary-mi2s-pinctrl.patch -5fa7a4914ecd6e4ea47dce438cc1100f2747b082c71477859745147df801aede57ef6f1c54680a2c6ca85b61b791faa77210bd216bbe849681b2c558b6c6f152 0010-arm64-dts-qcom-sc7180-Add-ADSP.patch -57c6f29b445ecd92f5fb1d5ca0a2783bccc1fbd3b1e51016db84370b75214fd70c832207f7c59cc00814db686d0ce03f33013138378c25aa18b8646148a296ac 0011-ASoC-qcom-sc7180-Map-missing-jack-kcontrols.patch -08f1e646e1a387f1c5d01c954c87bdebd6fb13aa555eb3430331ffcfae0d6b61697ea4d35fb33b01bda801c92e9308f3a73ddf5b83a3074c009b2cce468f4d42 0012-ASoC-qcom-sc7180-Add-support-for-qdsp6-baked-sound.patch -5e7dabdca52cf329b9a7fe77e6781cce07febda84592a93ea435b94e2707b6a8f3ae63a144070f5e203de4cd2608428cf9ec0c59fc2284bdd5b25bc995064264 0013-arm64-dts-qcom-pm6150-Add-resin-and-rtc-nodes.patch -5c9d7bd7a97b704f512ea398c183778e7aba04d513f14c55dc70ba7a3677613805241f48409ec3af08f62d96c23bd197e0ead0a42c877ad91f7bc32c00b1b606 0014-arm64-dts-qcom-acer-aspire1-Enable-RTC.patch -19441571468c89576da2087bfcfb8eaca253c67b41bd201ba123dafa33e5e6f424c9719b8fddf61cfce4d27f1b138718f200931eafc5edab5cb4da5b225ba410 0015-arm64-dts-qcom-acer-aspire1-Correct-audio-codec-defi.patch -d6ecbd07481bf9852d330f1fbe004e0f70a45251956a37b730e4cbb3b7e3c03b34c9979749ab8857d39171382e87159cc54125fad7a0a02a33d4b502892fce9a 0016-arm64-dts-qcom-acer-aspire1-Add-sound.patch -43cc38c2074a474a4386ab070bcc7b966527a607bc0adb345ce6d13f79b7714e46747ed2624831ae6ed48cf3b4ef387e4cc84247c3b7d13e69a7d1e64f7efe6f 0017-HACK-arm64-dts-qcom-acer-aspire1-Enable-DisplayPort-.patch -7c3ba7a612c58472d75d30658c143065c1e508484b83ff1594001243ca066881c5d9b50210174637261831cab5c770320fcf6d8cd03a5e9fd0fdc7cdefd8abff config-postmarketos-qcom-sc7180.aarch64 +fdf6def06de85656f8aa010edfb8b2f7f71cdeef9a70b5b35511833fbcf0e4fbfafb6224acfdf475975bc4bc8f05d0291745af5a6ae752a70cbd09ae2d3d17a8 linux-6.6.28.tar.xz +ac68e3e441c90ebc88d75cabcbb54d836256876932689f74a4d492a19c5aab9e207930ff14ba24f2298af44f662616ef34c9b8147a7ebada2db9c11eab55f3f2 0001-remoteproc-qcom-pas-Add-sc7180-adsp.patch +8f8aad35c408b2c29a8ddd2bc71c8542bef73e9b386c010257004e67bccf82fc1ffe9ca8df0b12d6930a776fdb288a365ddceb7d4bbc7031777bef6fdf3534a1 0002-arm64-dts-qcom-sc7180-Add-tertiary-mi2s-pinctrl.patch +a4d8bbf39575e61d228b3b66fa692b207c1ee011e6030fdd097936a1ad28b1d5b01816d989adcb809d05f107aaf9024ccd077e6daa9c65aa2ff23907ee1f0566 0003-arm64-dts-qcom-sc7180-Add-ADSP.patch +30130ae6e49bc0386fd7b34e69961e208806673b2bf2b7bb9abe428766013116baa924536346bceee60db886565c7e2f9c48c8ba2e691381aae544df730b780a 0004-ASoC-qcom-sc7180-Add-support-for-qdsp6-baked-sound.patch +80479f5b598628f48302aa4c224f173cbe02ebb6a9e14a555b9bf06163a40442cdc8e77c7a6e14684a21df0e61627cfa3345cef385d6d3e11c1d412cc924d85a 0005-arm64-dts-qcom-pm6150-Add-resin-and-rtc-nodes.patch +6628e979e9ba579ff3f259f8d2917318342f4cc855a06ac70dc2a81bf3c9e3a6729b1ebee28591db1374afc7a0aabbbf2f2e8b915c735f070528f6ddfd905631 0006-arm64-dts-qcom-acer-aspire1-Enable-RTC.patch +9200a97d795d97e42e89af9cb47fc750ef2784d883327b6e8ca0ad77634c8af20b531f8917c3584c369fd2f36142cea73f51d416e78a99e80c48ae99165bdf18 0007-arm64-dts-qcom-acer-aspire1-Add-sound.patch +1cc7105a6b4aa112f8203416a11cda56a39dfa957679021f7bf38f9503eab51c99cb53aed391cb7cb6ec853b705f0d5032ea5932f8c342152aca916681b507d3 0008-platform-Add-ARM64-platform-directory.patch +08c6cace24a207f4a64a85b17e97646f62a8590b502cd5b6945489d0aeded352e21f0e1b0ec541ae2e61ec7fd4f6bc1e5bf1d5d32f2c6616eb41d39d66f0bab5 0009-platform-arm64-Add-Acer-Aspire-1-embedded-controller.patch +69cfb699990ea7994089016b29cc248cb03483ad3f7620cbba63a779b2ed8928e6fde68484d29b6b8dfd1a8a6fa8d84c441f30180c7a257520ced442dab33876 0010-arm64-dts-qcom-acer-aspire1-Add-embedded-controller.patch +c5edcd74f898b08bc663766668632d351aea40426b3563d53a4b8c6856dd82627f4794d60450e41171c990ebb3649056b36ef432c14c8783168e8060a2e3b094 0011-HACK-clk-Delay-disabling-unused-clocks-by-10s.patch +2ca01552118f2eedc9ac3818612008c58fe54a0838096a95489ee3380ac43be210d39371b1633af059a9b78f9bd3937e12a861cb72fa1bcac277ffa55bac2606 config-postmarketos-qcom-sc7180.aarch64 " diff --git a/device/community/linux-postmarketos-qcom-sc7180/config-postmarketos-qcom-sc7180.aarch64 b/device/community/linux-postmarketos-qcom-sc7180/config-postmarketos-qcom-sc7180.aarch64 index 1f2729201..8ddfde3c5 100644 --- a/device/community/linux-postmarketos-qcom-sc7180/config-postmarketos-qcom-sc7180.aarch64 +++ b/device/community/linux-postmarketos-qcom-sc7180/config-postmarketos-qcom-sc7180.aarch64 @@ -1,18 +1,19 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm64 6.1.39 Kernel Configuration +# Linux/arm64 6.6.28 Kernel Configuration # -CONFIG_CC_VERSION_TEXT="aarch64-alpine-linux-musl-gcc (Alpine 13.2.1_git20231014) 13.2.1 20231014" +CONFIG_CC_VERSION_TEXT="aarch64-alpine-linux-musl-gcc (Alpine 13.2.1_git20240309) 13.2.1 20240309" CONFIG_CC_IS_GCC=y CONFIG_GCC_VERSION=130201 CONFIG_CLANG_VERSION=0 CONFIG_AS_IS_GNU=y -CONFIG_AS_VERSION=24100 +CONFIG_AS_VERSION=24200 CONFIG_LD_IS_BFD=y -CONFIG_LD_VERSION=24100 +CONFIG_LD_VERSION=24200 CONFIG_LLD_VERSION=0 CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y +CONFIG_GCC_ASM_GOTO_OUTPUT_WORKAROUND=y CONFIG_CC_HAS_ASM_INLINE=y CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y CONFIG_PAHOLE_VERSION=0 @@ -57,7 +58,6 @@ CONFIG_IRQ_DOMAIN_HIERARCHY=y CONFIG_IRQ_FASTEOI_HIERARCHY_HANDLERS=y CONFIG_GENERIC_IRQ_IPI=y CONFIG_GENERIC_MSI_IRQ=y -CONFIG_GENERIC_MSI_IRQ_DOMAIN=y CONFIG_IRQ_MSI_IOMMU=y CONFIG_IRQ_FORCED_THREADING=y CONFIG_SPARSE_IRQ=y @@ -135,7 +135,6 @@ CONFIG_CPU_ISOLATION=y CONFIG_TREE_RCU=y CONFIG_PREEMPT_RCU=y # CONFIG_RCU_EXPERT is not set -CONFIG_SRCU=y CONFIG_TREE_SRCU=y CONFIG_TASKS_RCU_GENERIC=y CONFIG_TASKS_RCU=y @@ -149,7 +148,6 @@ CONFIG_IKCONFIG_PROC=y # CONFIG_IKHEADERS is not set CONFIG_LOG_BUF_SHIFT=17 CONFIG_LOG_CPU_MAX_BUF_SHIFT=12 -CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13 # CONFIG_PRINTK_INDEX is not set CONFIG_GENERIC_SCHED_CLOCK=y @@ -161,9 +159,10 @@ CONFIG_UCLAMP_BUCKETS_COUNT=5 # end of Scheduler features CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y +CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y CONFIG_CC_HAS_INT128=y CONFIG_CC_IMPLICIT_FALLTHROUGH="-Wimplicit-fallthrough=5" -CONFIG_GCC11_NO_ARRAY_BOUNDS=y +CONFIG_GCC10_NO_ARRAY_BOUNDS=y CONFIG_CC_NO_ARRAY_BOUNDS=y CONFIG_ARCH_SUPPORTS_INT128=y CONFIG_NUMA_BALANCING=y @@ -179,6 +178,7 @@ CONFIG_CGROUP_SCHED=y CONFIG_FAIR_GROUP_SCHED=y CONFIG_CFS_BANDWIDTH=y # CONFIG_RT_GROUP_SCHED is not set +CONFIG_SCHED_MM_CID=y CONFIG_UCLAMP_TASK_GROUP=y CONFIG_CGROUP_PIDS=y # CONFIG_CGROUP_RDMA is not set @@ -202,7 +202,6 @@ CONFIG_PID_NS=y CONFIG_NET_NS=y CONFIG_CHECKPOINT_RESTORE=y CONFIG_SCHED_AUTOGROUP=y -# CONFIG_SYSFS_DEPRECATED is not set # CONFIG_RELAY is not set CONFIG_BLK_DEV_INITRD=y CONFIG_INITRAMFS_SOURCE="" @@ -218,6 +217,7 @@ CONFIG_INITRAMFS_PRESERVE_MTIME=y CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set CONFIG_LD_ORPHAN_WARN=y +CONFIG_LD_ORPHAN_WARN_LEVEL="warn" CONFIG_SYSCTL=y CONFIG_HAVE_UID16=y CONFIG_SYSCTL_EXCEPTION_TRACE=y @@ -243,12 +243,13 @@ CONFIG_IO_URING=y CONFIG_ADVISE_SYSCALLS=y CONFIG_MEMBARRIER=y CONFIG_KALLSYMS=y +# CONFIG_KALLSYMS_SELFTEST is not set CONFIG_KALLSYMS_ALL=y CONFIG_KALLSYMS_BASE_RELATIVE=y CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y CONFIG_KCMP=y CONFIG_RSEQ=y -# CONFIG_EMBEDDED is not set +CONFIG_CACHESTAT_SYSCALL=y CONFIG_HAVE_PERF_EVENTS=y CONFIG_GUEST_PERF_EVENTS=y @@ -261,10 +262,21 @@ CONFIG_PERF_EVENTS=y CONFIG_SYSTEM_DATA_VERIFICATION=y CONFIG_PROFILING=y + +# +# Kexec and crash features +# +CONFIG_CRASH_CORE=y +CONFIG_KEXEC_CORE=y +CONFIG_KEXEC=y +CONFIG_KEXEC_FILE=y +# CONFIG_KEXEC_SIG is not set +CONFIG_CRASH_DUMP=y +# end of Kexec and crash features # end of General setup CONFIG_ARM64=y -CONFIG_GCC_SUPPORTS_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_GCC_SUPPORTS_DYNAMIC_FTRACE_WITH_ARGS=y CONFIG_64BIT=y CONFIG_MMU=y CONFIG_ARM64_PAGE_SHIFT=12 @@ -282,13 +294,13 @@ CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y CONFIG_GENERIC_HWEIGHT=y CONFIG_GENERIC_CSUM=y CONFIG_GENERIC_CALIBRATE_DELAY=y -CONFIG_ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE=y CONFIG_SMP=y CONFIG_KERNEL_MODE_NEON=y CONFIG_FIX_EARLYCON_MEM=y CONFIG_PGTABLE_LEVELS=4 CONFIG_ARCH_SUPPORTS_UPROBES=y CONFIG_ARCH_PROC_KCORE_TEXT=y +CONFIG_BUILTIN_RETURN_ADDRESS_STRIPS_PAC=y # # Platform selection @@ -310,6 +322,7 @@ CONFIG_ARCH_PROC_KCORE_TEXT=y # CONFIG_ARCH_MESON is not set # CONFIG_ARCH_MVEBU is not set # CONFIG_ARCH_NXP is not set +# CONFIG_ARCH_MA35 is not set # CONFIG_ARCH_NPCM is not set CONFIG_ARCH_QCOM=y # CONFIG_ARCH_REALTEK is not set @@ -317,6 +330,7 @@ CONFIG_ARCH_QCOM=y # CONFIG_ARCH_ROCKCHIP is not set # CONFIG_ARCH_SEATTLE is not set # CONFIG_ARCH_INTEL_SOCFPGA is not set +# CONFIG_ARCH_STM32 is not set # CONFIG_ARCH_SYNQUACER is not set # CONFIG_ARCH_TEGRA is not set # CONFIG_ARCH_SPRD is not set @@ -336,6 +350,7 @@ CONFIG_ARCH_QCOM=y # # ARM errata workarounds via the alternatives framework # +CONFIG_AMPERE_ERRATUM_AC03_CPU_38=y CONFIG_ARM64_WORKAROUND_CLEAN_CACHE=y CONFIG_ARM64_ERRATUM_826319=y CONFIG_ARM64_ERRATUM_827319=y @@ -367,6 +382,10 @@ CONFIG_ARM64_ERRATUM_2054223=y CONFIG_ARM64_ERRATUM_2067961=y CONFIG_ARM64_ERRATUM_2441009=y CONFIG_ARM64_ERRATUM_2457168=y +CONFIG_ARM64_ERRATUM_2645198=y +CONFIG_ARM64_WORKAROUND_SPECULATIVE_UNPRIV_LOAD=y +CONFIG_ARM64_ERRATUM_2966298=y +CONFIG_ARM64_ERRATUM_3117295=y CONFIG_CAVIUM_ERRATUM_22375=y CONFIG_CAVIUM_ERRATUM_23144=y CONFIG_CAVIUM_ERRATUM_23154=y @@ -380,6 +399,7 @@ CONFIG_QCOM_FALKOR_ERRATUM_1009=y CONFIG_QCOM_QDF2400_ERRATUM_0065=y CONFIG_QCOM_FALKOR_ERRATUM_E1041=y CONFIG_NVIDIA_CARMEL_CNP_ERRATUM=y +CONFIG_ROCKCHIP_ERRATUM_3588001=y CONFIG_SOCIONEXT_SYNQUACER_PREITS=y # end of ARM errata workarounds via the alternatives framework @@ -411,14 +431,17 @@ CONFIG_HW_PERF_EVENTS=y CONFIG_CC_HAVE_SHADOW_CALL_STACK=y CONFIG_PARAVIRT=y # CONFIG_PARAVIRT_TIME_ACCOUNTING is not set -CONFIG_KEXEC=y -CONFIG_KEXEC_FILE=y -# CONFIG_KEXEC_SIG is not set -CONFIG_CRASH_DUMP=y +CONFIG_ARCH_SUPPORTS_KEXEC=y +CONFIG_ARCH_SUPPORTS_KEXEC_FILE=y +CONFIG_ARCH_SELECTS_KEXEC_FILE=y +CONFIG_ARCH_SUPPORTS_KEXEC_SIG=y +CONFIG_ARCH_SUPPORTS_KEXEC_IMAGE_VERIFY_SIG=y +CONFIG_ARCH_DEFAULT_KEXEC_IMAGE_VERIFY_SIG=y +CONFIG_ARCH_SUPPORTS_CRASH_DUMP=y CONFIG_TRANS_TABLE=y CONFIG_XEN_DOM0=y CONFIG_XEN=y -CONFIG_ARCH_FORCE_MAX_ORDER=11 +CONFIG_ARCH_FORCE_MAX_ORDER=10 CONFIG_UNMAP_KERNEL_AT_EL0=y CONFIG_MITIGATE_SPECTRE_BRANCH_HISTORY=y CONFIG_RODATA_FULL_DEFAULT_ENABLED=y @@ -434,7 +457,6 @@ CONFIG_KUSER_HELPERS=y # CONFIG_ARM64_HW_AFDBM=y CONFIG_ARM64_PAN=y -CONFIG_AS_HAS_LDAPR=y CONFIG_AS_HAS_LSE_ATOMICS=y CONFIG_ARM64_LSE_ATOMICS=y CONFIG_ARM64_USE_LSE_ATOMICS=y @@ -457,8 +479,9 @@ CONFIG_ARM64_PTR_AUTH=y CONFIG_ARM64_PTR_AUTH_KERNEL=y CONFIG_CC_HAS_BRANCH_PROT_PAC_RET=y CONFIG_CC_HAS_SIGN_RETURN_ADDRESS=y -CONFIG_AS_HAS_PAC=y +CONFIG_AS_HAS_ARMV8_3=y CONFIG_AS_HAS_CFI_NEGATE_RA_STATE=y +CONFIG_AS_HAS_LDAPR=y # end of ARMv8.3 architectural features # @@ -488,14 +511,12 @@ CONFIG_ARM64_EPAN=y CONFIG_ARM64_SVE=y CONFIG_ARM64_SME=y -CONFIG_ARM64_MODULE_PLTS=y # CONFIG_ARM64_PSEUDO_NMI is not set CONFIG_RELOCATABLE=y CONFIG_RANDOMIZE_BASE=y CONFIG_RANDOMIZE_MODULE_REGION_FULL=y CONFIG_CC_HAVE_STACKPROTECTOR_SYSREG=y CONFIG_STACKPROTECTOR_PER_TASK=y -CONFIG_ARCH_NR_GPIO=0 # end of Kernel Features # @@ -599,16 +620,19 @@ CONFIG_HAVE_KVM=y CONFIG_HAVE_KVM_IRQCHIP=y CONFIG_HAVE_KVM_IRQFD=y CONFIG_HAVE_KVM_IRQ_ROUTING=y +CONFIG_HAVE_KVM_DIRTY_RING=y +CONFIG_HAVE_KVM_DIRTY_RING_ACQ_REL=y +CONFIG_NEED_KVM_DIRTY_RING_WITH_BITMAP=y CONFIG_HAVE_KVM_EVENTFD=y CONFIG_KVM_MMIO=y CONFIG_HAVE_KVM_MSI=y CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y CONFIG_KVM_VFIO=y -CONFIG_HAVE_KVM_ARCH_TLB_FLUSH_ALL=y CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y CONFIG_HAVE_KVM_IRQ_BYPASS=y CONFIG_HAVE_KVM_VCPU_RUN_PID_CHANGE=y CONFIG_KVM_XFER_TO_GUEST_WORK=y +CONFIG_KVM_GENERIC_HARDWARE_ENABLING=y CONFIG_VIRTUALIZATION=y CONFIG_KVM=y # CONFIG_NVHE_EL2_DEBUG is not set @@ -616,9 +640,9 @@ CONFIG_KVM=y # # General architecture-dependent options # -CONFIG_CRASH_CORE=y -CONFIG_KEXEC_CORE=y CONFIG_ARCH_HAS_SUBPAGE_FAULTS=y +CONFIG_HOTPLUG_CORE_SYNC=y +CONFIG_HOTPLUG_CORE_SYNC_DEAD=y # CONFIG_KPROBES is not set CONFIG_JUMP_LABEL=y # CONFIG_STATIC_KEYS_SELFTEST is not set @@ -652,7 +676,9 @@ CONFIG_HAVE_ARCH_JUMP_LABEL=y CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y CONFIG_MMU_GATHER_TABLE_FREE=y CONFIG_MMU_GATHER_RCU_TABLE_FREE=y +CONFIG_MMU_LAZY_TLB_REFCOUNT=y CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y +CONFIG_ARCH_HAS_NMI_SAFE_THIS_CPU_OPS=y CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y CONFIG_HAVE_CMPXCHG_LOCAL=y CONFIG_HAVE_CMPXCHG_DOUBLE=y @@ -681,6 +707,7 @@ CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y CONFIG_HAVE_ARCH_HUGE_VMAP=y CONFIG_HAVE_ARCH_HUGE_VMALLOC=y CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y +CONFIG_ARCH_WANT_PMD_MKWRITE=y CONFIG_HAVE_MOD_ARCH_SPECIFIC=y CONFIG_MODULES_USE_ELF_RELA=y CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK=y @@ -728,11 +755,14 @@ CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y CONFIG_HAVE_GCC_PLUGINS=y CONFIG_GCC_PLUGINS=y # CONFIG_GCC_PLUGIN_LATENT_ENTROPY is not set +CONFIG_FUNCTION_ALIGNMENT_4B=y +CONFIG_FUNCTION_ALIGNMENT=4 # end of General architecture-dependent options CONFIG_RT_MUTEXES=y CONFIG_BASE_SMALL=0 CONFIG_MODULES=y +# CONFIG_MODULE_DEBUG is not set # CONFIG_MODULE_FORCE_LOAD is not set CONFIG_MODULE_UNLOAD=y # CONFIG_MODULE_FORCE_UNLOAD is not set @@ -750,6 +780,7 @@ CONFIG_MODULES_TREE_LOOKUP=y CONFIG_BLOCK=y CONFIG_BLOCK_LEGACY_AUTOLOAD=y CONFIG_BLK_CGROUP_RWSTAT=y +CONFIG_BLK_CGROUP_PUNT_BIO=y CONFIG_BLK_DEV_BSG_COMMON=y CONFIG_BLK_DEV_BSGLIB=y CONFIG_BLK_DEV_INTEGRITY=y @@ -773,7 +804,6 @@ CONFIG_MSDOS_PARTITION=y CONFIG_EFI_PARTITION=y # end of Partition Types -CONFIG_BLOCK_COMPAT=y CONFIG_BLK_MQ_PCI=y CONFIG_BLK_MQ_VIRTIO=y CONFIG_BLK_PM=y @@ -826,6 +856,7 @@ CONFIG_ZPOOL=y CONFIG_SWAP=y CONFIG_ZSWAP=y # CONFIG_ZSWAP_DEFAULT_ON is not set +# CONFIG_ZSWAP_EXCLUSIVE_LOADS_DEFAULT_ON is not set # CONFIG_ZSWAP_COMPRESSOR_DEFAULT_DEFLATE is not set CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZO=y # CONFIG_ZSWAP_COMPRESSOR_DEFAULT_842 is not set @@ -841,17 +872,19 @@ CONFIG_ZBUD=y CONFIG_Z3FOLD=y CONFIG_ZSMALLOC=y # CONFIG_ZSMALLOC_STAT is not set +CONFIG_ZSMALLOC_CHAIN_SIZE=8 # # SLAB allocator options # -# CONFIG_SLAB is not set +# CONFIG_SLAB_DEPRECATED is not set CONFIG_SLUB=y CONFIG_SLAB_MERGE_DEFAULT=y # CONFIG_SLAB_FREELIST_RANDOM is not set # CONFIG_SLAB_FREELIST_HARDENED is not set # CONFIG_SLUB_STATS is not set CONFIG_SLUB_CPU_PARTIAL=y +# CONFIG_RANDOM_KMALLOC_CACHES is not set # end of SLAB allocator options # CONFIG_SHUFFLE_PAGE_ALLOCATOR is not set @@ -871,6 +904,7 @@ CONFIG_MEMORY_HOTPLUG=y # CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE is not set CONFIG_MEMORY_HOTREMOVE=y CONFIG_MHP_MEMMAP_ON_MEMORY=y +CONFIG_ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE=y CONFIG_SPLIT_PTLOCK_CPUS=4 CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y CONFIG_MEMORY_BALLOON=y @@ -899,7 +933,6 @@ CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y CONFIG_USE_PERCPU_NUMA_NODE_ID=y CONFIG_HAVE_SETUP_PER_CPU_AREA=y -CONFIG_FRONTSWAP=y # CONFIG_CMA is not set CONFIG_GENERIC_EARLY_IOREMAP=y # CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set @@ -911,16 +944,21 @@ CONFIG_ZONE_DMA=y CONFIG_ZONE_DMA32=y # CONFIG_ZONE_DEVICE is not set CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y +CONFIG_ARCH_USES_PG_ARCH_X=y CONFIG_VM_EVENT_COUNTERS=y # CONFIG_PERCPU_STATS is not set # CONFIG_GUP_TEST is not set +# CONFIG_DMAPOOL_TEST is not set CONFIG_ARCH_HAS_PTE_SPECIAL=y +CONFIG_MEMFD_CREATE=y CONFIG_SECRETMEM=y # CONFIG_ANON_VMA_NAME is not set # CONFIG_USERFAULTFD is not set CONFIG_LRU_GEN=y CONFIG_LRU_GEN_ENABLED=y # CONFIG_LRU_GEN_STATS is not set +CONFIG_ARCH_SUPPORTS_PER_VMA_LOCK=y +CONFIG_PER_VMA_LOCK=y CONFIG_LOCK_MM_AND_FIND_VMA=y # @@ -934,6 +972,7 @@ CONFIG_NET=y CONFIG_COMPAT_NETLINK_MESSAGES=y CONFIG_NET_INGRESS=y CONFIG_NET_EGRESS=y +CONFIG_NET_XGRESS=y CONFIG_SKB_EXTENSIONS=y # @@ -956,6 +995,7 @@ CONFIG_XFRM_USER=m CONFIG_XFRM_ESP=m # CONFIG_NET_KEY is not set # CONFIG_XDP_SOCKETS is not set +CONFIG_NET_HANDSHAKE=y CONFIG_INET=y CONFIG_IP_MULTICAST=y CONFIG_IP_ADVANCED_ROUTER=y @@ -1031,6 +1071,7 @@ CONFIG_NETFILTER_SKIP_EGRESS=y CONFIG_NETFILTER_NETLINK=m CONFIG_NETFILTER_FAMILY_BRIDGE=y CONFIG_NETFILTER_FAMILY_ARP=y +CONFIG_NETFILTER_BPF_LINK=y # CONFIG_NETFILTER_NETLINK_HOOK is not set CONFIG_NETFILTER_NETLINK_ACCT=m CONFIG_NETFILTER_NETLINK_QUEUE=m @@ -1087,7 +1128,6 @@ CONFIG_NFT_MASQ=m # CONFIG_NFT_REDIR is not set CONFIG_NFT_NAT=m # CONFIG_NFT_TUNNEL is not set -# CONFIG_NFT_OBJREF is not set # CONFIG_NFT_QUEUE is not set # CONFIG_NFT_QUOTA is not set CONFIG_NFT_REJECT=m @@ -1279,7 +1319,6 @@ CONFIG_IP_NF_TARGET_MASQUERADE=m CONFIG_IP_NF_TARGET_NETMAP=m CONFIG_IP_NF_TARGET_REDIRECT=m CONFIG_IP_NF_MANGLE=m -CONFIG_IP_NF_TARGET_CLUSTERIP=m CONFIG_IP_NF_TARGET_ECN=m CONFIG_IP_NF_TARGET_TTL=m CONFIG_IP_NF_RAW=m @@ -1366,6 +1405,7 @@ CONFIG_BRIDGE_VLAN_FILTERING=y # CONFIG_BRIDGE_MRP is not set # CONFIG_BRIDGE_CFM is not set CONFIG_NET_DSA=m +CONFIG_NET_DSA_TAG_NONE=m # CONFIG_NET_DSA_TAG_AR9331 is not set CONFIG_NET_DSA_TAG_BRCM_COMMON=m CONFIG_NET_DSA_TAG_BRCM=m @@ -1403,7 +1443,6 @@ CONFIG_NET_SCHED=y # # Queueing/Scheduling # -# CONFIG_NET_SCH_CBQ is not set # CONFIG_NET_SCH_HTB is not set # CONFIG_NET_SCH_HFSC is not set # CONFIG_NET_SCH_PRIO is not set @@ -1415,9 +1454,9 @@ CONFIG_NET_SCHED=y # CONFIG_NET_SCH_TBF is not set CONFIG_NET_SCH_CBS=m CONFIG_NET_SCH_ETF=m +CONFIG_NET_SCH_MQPRIO_LIB=m CONFIG_NET_SCH_TAPRIO=m # CONFIG_NET_SCH_GRED is not set -# CONFIG_NET_SCH_DSMARK is not set # CONFIG_NET_SCH_NETEM is not set # CONFIG_NET_SCH_DRR is not set CONFIG_NET_SCH_MQPRIO=m @@ -1443,8 +1482,6 @@ CONFIG_NET_CLS_BASIC=m # CONFIG_NET_CLS_ROUTE4 is not set # CONFIG_NET_CLS_FW is not set # CONFIG_NET_CLS_U32 is not set -# CONFIG_NET_CLS_RSVP is not set -# CONFIG_NET_CLS_RSVP6 is not set # CONFIG_NET_CLS_FLOW is not set CONFIG_NET_CLS_CGROUP=m # CONFIG_NET_CLS_BPF is not set @@ -1492,6 +1529,7 @@ CONFIG_QRTR_TUN=y CONFIG_QRTR_MHI=m # CONFIG_NET_NCSI is not set CONFIG_PCPU_DEV_REFCNT=y +CONFIG_MAX_SKB_FRAGS=17 CONFIG_RPS=y CONFIG_RFS_ACCEL=y CONFIG_SOCK_RX_QUEUE_MAPPING=y @@ -1525,7 +1563,6 @@ CONFIG_BT_BNEP=m # CONFIG_BT_BNEP_MC_FILTER is not set # CONFIG_BT_BNEP_PROTO_FILTER is not set CONFIG_BT_HIDP=m -# CONFIG_BT_HS is not set # CONFIG_BT_LE is not set CONFIG_BT_LEDS=y # CONFIG_BT_MSFTEXT is not set @@ -1543,6 +1580,7 @@ CONFIG_BT_RTL=m CONFIG_BT_QCA=m CONFIG_BT_HCIBTUSB=m # CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set +CONFIG_BT_HCIBTUSB_POLL_SYNC=y CONFIG_BT_HCIBTUSB_BCM=y # CONFIG_BT_HCIBTUSB_MTK is not set CONFIG_BT_HCIBTUSB_RTL=y @@ -1562,6 +1600,7 @@ CONFIG_BT_HCIUART_QCA=y # CONFIG_BT_HCIUART_AG6XX is not set CONFIG_BT_HCIUART_MRVL=y # CONFIG_BT_HCIBCM203X is not set +# CONFIG_BT_HCIBCM4377 is not set # CONFIG_BT_HCIBPA10X is not set # CONFIG_BT_HCIBFUSB is not set # CONFIG_BT_HCIVHCI is not set @@ -1572,6 +1611,7 @@ CONFIG_BT_MRVL_SDIO=m # CONFIG_BT_MTKUART is not set CONFIG_BT_QCOMSMD=m # CONFIG_BT_VIRTIO is not set +# CONFIG_BT_NXPUART is not set # end of Bluetooth device drivers # CONFIG_AF_RXRPC is not set @@ -1592,10 +1632,6 @@ CONFIG_CFG80211_DEFAULT_PS=y # CONFIG_CFG80211_DEBUGFS is not set CONFIG_CFG80211_CRDA_SUPPORT=y CONFIG_CFG80211_WEXT=y -CONFIG_LIB80211=m -CONFIG_LIB80211_CRYPT_WEP=m -CONFIG_LIB80211_CRYPT_CCMP=m -# CONFIG_LIB80211_DEBUG is not set CONFIG_MAC80211=m CONFIG_MAC80211_HAS_RC=y CONFIG_MAC80211_RC_MINSTREL=y @@ -1678,7 +1714,6 @@ CONFIG_PCIE_PME=y # CONFIG_PCIE_DPC is not set # CONFIG_PCIE_PTM is not set CONFIG_PCI_MSI=y -CONFIG_PCI_MSI_IRQ_DOMAIN=y CONFIG_PCI_QUIRKS=y # CONFIG_PCI_DEBUG is not set # CONFIG_PCI_REALLOC_ENABLE_AUTO is not set @@ -1690,6 +1725,7 @@ CONFIG_PCI_IOV=y # CONFIG_PCI_PRI is not set CONFIG_PCI_PASID=y CONFIG_PCI_LABEL=y +# CONFIG_PCI_DYNAMIC_OF_NODES is not set CONFIG_VGA_ARB=y CONFIG_VGA_ARB_MAX_GPUS=16 CONFIG_HOTPLUG_PCI=y @@ -1699,46 +1735,46 @@ CONFIG_HOTPLUG_PCI=y # # PCI controller drivers # -# CONFIG_PCI_FTPCI100 is not set -CONFIG_PCI_HOST_COMMON=y -CONFIG_PCI_HOST_GENERIC=y -# CONFIG_PCIE_XILINX is not set -CONFIG_PCI_XGENE=y -CONFIG_PCI_XGENE_MSI=y CONFIG_PCIE_ALTERA=y CONFIG_PCIE_ALTERA_MSI=y CONFIG_PCI_HOST_THUNDER_PEM=y CONFIG_PCI_HOST_THUNDER_ECAM=y +# CONFIG_PCI_FTPCI100 is not set +CONFIG_PCI_HOST_COMMON=y +CONFIG_PCI_HOST_GENERIC=y # CONFIG_PCIE_MICROCHIP_HOST is not set +CONFIG_PCI_XGENE=y +CONFIG_PCI_XGENE_MSI=y +# CONFIG_PCIE_XILINX is not set # -# DesignWare PCI Core Support -# -CONFIG_PCIE_DW=y -CONFIG_PCIE_DW_HOST=y -# CONFIG_PCIE_DW_PLAT_HOST is not set -# CONFIG_PCIE_DW_PLAT_EP is not set -CONFIG_PCI_HISI=y -CONFIG_PCIE_QCOM=y -# CONFIG_PCIE_QCOM_EP is not set -CONFIG_PCIE_KIRIN=y -# CONFIG_PCI_MESON is not set -# CONFIG_PCIE_AL is not set -# end of DesignWare PCI Core Support - -# -# Mobiveil PCIe Core Support -# -# end of Mobiveil PCIe Core Support - -# -# Cadence PCIe controllers support +# Cadence-based PCIe controllers # # CONFIG_PCIE_CADENCE_PLAT_HOST is not set # CONFIG_PCIE_CADENCE_PLAT_EP is not set # CONFIG_PCI_J721E_HOST is not set # CONFIG_PCI_J721E_EP is not set -# end of Cadence PCIe controllers support +# end of Cadence-based PCIe controllers + +# +# DesignWare-based PCIe controllers +# +CONFIG_PCIE_DW=y +CONFIG_PCIE_DW_HOST=y +# CONFIG_PCIE_AL is not set +# CONFIG_PCI_MESON is not set +CONFIG_PCI_HISI=y +CONFIG_PCIE_KIRIN=y +# CONFIG_PCIE_DW_PLAT_HOST is not set +# CONFIG_PCIE_DW_PLAT_EP is not set +CONFIG_PCIE_QCOM=y +# CONFIG_PCIE_QCOM_EP is not set +# end of DesignWare-based PCIe controllers + +# +# Mobiveil-based PCIe controllers +# +# end of Mobiveil-based PCIe controllers # end of PCI controller drivers # @@ -1809,6 +1845,7 @@ CONFIG_DMA_SHARED_BUFFER=y # CONFIG_DMA_FENCE_TRACE is not set CONFIG_GENERIC_ARCH_TOPOLOGY=y CONFIG_GENERIC_ARCH_NUMA=y +# CONFIG_FW_DEVLINK_SYNC_STATE_TIMEOUT is not set # end of Generic Driver Options # @@ -1827,6 +1864,11 @@ CONFIG_MHI_BUS=m # CONFIG_MHI_BUS_EP is not set # end of Bus devices +# +# Cache Drivers +# +# end of Cache Drivers + # CONFIG_CONNECTOR is not set # @@ -1837,6 +1879,7 @@ CONFIG_MHI_BUS=m # ARM System Control and Management Interface Protocol # CONFIG_ARM_SCMI_PROTOCOL=y +# CONFIG_ARM_SCMI_RAW_MODE_SUPPORT is not set CONFIG_ARM_SCMI_HAVE_TRANSPORT=y CONFIG_ARM_SCMI_HAVE_SHMEM=y CONFIG_ARM_SCMI_HAVE_MSG=y @@ -1860,6 +1903,7 @@ CONFIG_SYSFB=y # CONFIG_SYSFB_SIMPLEFB is not set # CONFIG_ARM_FFA_TRANSPORT is not set CONFIG_GOOGLE_FIRMWARE=y +# CONFIG_GOOGLE_CBMEM is not set CONFIG_GOOGLE_COREBOOT_TABLE=y CONFIG_GOOGLE_MEMCONSOLE=y # CONFIG_GOOGLE_FRAMEBUFFER_COREBOOT is not set @@ -1875,7 +1919,6 @@ CONFIG_EFI_RUNTIME_WRAPPERS=y CONFIG_EFI_GENERIC_STUB=y # CONFIG_EFI_ZBOOT is not set CONFIG_EFI_ARMSTUB_DTB_LOADER=y -# CONFIG_EFI_GENERIC_STUB_INITRD_CMDLINE_LOADER is not set # CONFIG_EFI_BOOTLOADER_CONTROL is not set CONFIG_EFI_CAPSULE_LOADER=y # CONFIG_EFI_TEST is not set @@ -2081,6 +2124,7 @@ CONFIG_ZRAM_DEF_COMP_LZORLE=y CONFIG_ZRAM_DEF_COMP="lzo-rle" # CONFIG_ZRAM_WRITEBACK is not set # CONFIG_ZRAM_MEMORY_TRACKING is not set +# CONFIG_ZRAM_MULTI_COMP is not set CONFIG_BLK_DEV_LOOP=y CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 # CONFIG_BLK_DEV_DRBD is not set @@ -2170,7 +2214,6 @@ CONFIG_EEPROM_93CX6=m # CONFIG_MISC_ALCOR_PCI is not set # CONFIG_MISC_RTSX_PCI is not set # CONFIG_MISC_RTSX_USB is not set -# CONFIG_HABANA_AI is not set CONFIG_UACCE=m # CONFIG_PVPANIC is not set # CONFIG_GP_PCI1XXXX is not set @@ -2284,8 +2327,6 @@ CONFIG_SATA_MOBILE_LPM_POLICY=0 CONFIG_SATA_AHCI_PLATFORM=y # CONFIG_AHCI_DWC is not set CONFIG_AHCI_CEVA=y -CONFIG_AHCI_XGENE=y -CONFIG_AHCI_QORIQ=y # CONFIG_SATA_INIC162X is not set # CONFIG_SATA_ACARD_AHCI is not set CONFIG_SATA_SIL24=y @@ -2369,6 +2410,7 @@ CONFIG_PATA_OF_PLATFORM=y # CONFIG_PATA_LEGACY is not set CONFIG_MD=y CONFIG_BLK_DEV_MD=m +CONFIG_MD_BITMAP_FILE=y # CONFIG_MD_LINEAR is not set # CONFIG_MD_RAID0 is not set # CONFIG_MD_RAID1 is not set @@ -2520,9 +2562,6 @@ CONFIG_NET_VENDOR_FUNGIBLE=y # CONFIG_NET_VENDOR_HISILICON is not set # CONFIG_NET_VENDOR_HUAWEI is not set # CONFIG_NET_VENDOR_INTEL is not set -CONFIG_NET_VENDOR_WANGXUN=y -# CONFIG_NGBE is not set -# CONFIG_TXGBE is not set # CONFIG_JME is not set CONFIG_NET_VENDOR_ADI=y # CONFIG_ADIN1110 is not set @@ -2574,6 +2613,9 @@ CONFIG_R8169=m CONFIG_NET_VENDOR_VERTEXCOM=y # CONFIG_MSE102X is not set # CONFIG_NET_VENDOR_VIA is not set +CONFIG_NET_VENDOR_WANGXUN=y +# CONFIG_NGBE is not set +# CONFIG_TXGBE is not set # CONFIG_NET_VENDOR_WIZNET is not set # CONFIG_NET_VENDOR_XILINX is not set # CONFIG_FDDI is not set @@ -2583,6 +2625,7 @@ CONFIG_PHYLINK=m CONFIG_PHYLIB=m CONFIG_SWPHY=y # CONFIG_LED_TRIGGER_PHY is not set +CONFIG_PHYLIB_LEDS=y CONFIG_FIXED_PHY=m # CONFIG_SFP is not set @@ -2609,17 +2652,21 @@ CONFIG_BCM_NET_PHYLIB=m # CONFIG_LSI_ET1011C_PHY is not set CONFIG_MARVELL_PHY=m CONFIG_MARVELL_10G_PHY=m +# CONFIG_MARVELL_88Q2XXX_PHY is not set # CONFIG_MARVELL_88X2222_PHY is not set # CONFIG_MAXLINEAR_GPHY is not set # CONFIG_MEDIATEK_GE_PHY is not set CONFIG_MICREL_PHY=m +# CONFIG_MICROCHIP_T1S_PHY is not set CONFIG_MICROCHIP_PHY=m # CONFIG_MICROCHIP_T1_PHY is not set CONFIG_MICROSEMI_PHY=m # CONFIG_MOTORCOMM_PHY is not set # CONFIG_NATIONAL_PHY is not set +# CONFIG_NXP_CBTX_PHY is not set # CONFIG_NXP_C45_TJA11XX_PHY is not set # CONFIG_NXP_TJA11XX_PHY is not set +# CONFIG_NCN26000_PHY is not set CONFIG_AT803X_PHY=m # CONFIG_QSEMI_PHY is not set CONFIG_REALTEK_PHY=m @@ -2676,6 +2723,7 @@ CONFIG_CAN_MCP251XFD=m # CONFIG_CAN_EMS_USB is not set # CONFIG_CAN_ESD_USB is not set # CONFIG_CAN_ETAS_ES58X is not set +# CONFIG_CAN_F81604 is not set # CONFIG_CAN_GS_USB is not set # CONFIG_CAN_KVASER_USB is not set # CONFIG_CAN_MCBA_USB is not set @@ -2788,6 +2836,7 @@ CONFIG_ATH11K=m CONFIG_ATH11K_AHB=m CONFIG_ATH11K_PCI=m # CONFIG_ATH11K_DEBUG is not set +# CONFIG_ATH12K is not set CONFIG_WLAN_VENDOR_ATMEL=y # CONFIG_ATMEL is not set # CONFIG_AT76C50X_USB is not set @@ -2804,6 +2853,7 @@ CONFIG_BRCMFMAC_SDIO=y # CONFIG_BRCM_TRACING is not set # CONFIG_BRCMDBG is not set CONFIG_WLAN_VENDOR_CISCO=y +# CONFIG_AIRO is not set CONFIG_WLAN_VENDOR_INTEL=y # CONFIG_IPW2100 is not set # CONFIG_IPW2200 is not set @@ -2846,6 +2896,7 @@ CONFIG_MT7663U=m # CONFIG_MT7921E is not set # CONFIG_MT7921S is not set # CONFIG_MT7921U is not set +# CONFIG_MT7996E is not set CONFIG_WLAN_VENDOR_MICROCHIP=y # CONFIG_WILC1000_SDIO is not set # CONFIG_WILC1000_SPI is not set @@ -2910,14 +2961,13 @@ CONFIG_WL18XX=m CONFIG_WLCORE=m # CONFIG_WLCORE_SPI is not set CONFIG_WLCORE_SDIO=m -CONFIG_WILINK_PLATFORM_DATA=y CONFIG_WLAN_VENDOR_ZYDAS=y # CONFIG_USB_ZD1201 is not set # CONFIG_ZD1211RW is not set CONFIG_WLAN_VENDOR_QUANTENNA=y # CONFIG_QTNFMAC_PCIE is not set -# CONFIG_MAC80211_HWSIM is not set # CONFIG_USB_NET_RNDIS_WLAN is not set +# CONFIG_MAC80211_HWSIM is not set # CONFIG_VIRT_WIFI is not set # CONFIG_WAN is not set @@ -3032,6 +3082,7 @@ CONFIG_TOUCHSCREEN_ATMEL_MXT_T37=y # CONFIG_TOUCHSCREEN_CY8CTMG110 is not set # CONFIG_TOUCHSCREEN_CYTTSP_CORE is not set # CONFIG_TOUCHSCREEN_CYTTSP4_CORE is not set +# CONFIG_TOUCHSCREEN_CYTTSP5 is not set # CONFIG_TOUCHSCREEN_DYNAPRO is not set # CONFIG_TOUCHSCREEN_HAMPSHIRE is not set # CONFIG_TOUCHSCREEN_EETI is not set @@ -3042,6 +3093,7 @@ CONFIG_TOUCHSCREEN_ATMEL_MXT_T37=y CONFIG_TOUCHSCREEN_GOODIX=m # CONFIG_TOUCHSCREEN_HIDEEP is not set # CONFIG_TOUCHSCREEN_HYCON_HY46XX is not set +# CONFIG_TOUCHSCREEN_HYNITRON_CSTXXX is not set # CONFIG_TOUCHSCREEN_ILI210X is not set # CONFIG_TOUCHSCREEN_ILITEK is not set # CONFIG_TOUCHSCREEN_S6SY761 is not set @@ -3057,10 +3109,10 @@ CONFIG_TOUCHSCREEN_ELAN=m # CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set # CONFIG_TOUCHSCREEN_MSG2638 is not set # CONFIG_TOUCHSCREEN_MTOUCH is not set +# CONFIG_TOUCHSCREEN_NOVATEK_NVT_TS is not set # CONFIG_TOUCHSCREEN_IMAGIS is not set # CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set # CONFIG_TOUCHSCREEN_INEXIO is not set -# CONFIG_TOUCHSCREEN_MK712 is not set # CONFIG_TOUCHSCREEN_PENMOUNT is not set CONFIG_TOUCHSCREEN_EDT_FT5X06=m # CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set @@ -3087,7 +3139,9 @@ CONFIG_TOUCHSCREEN_EDT_FT5X06=m # CONFIG_TOUCHSCREEN_COLIBRI_VF50 is not set # CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set # CONFIG_TOUCHSCREEN_IQS5XX is not set +# CONFIG_TOUCHSCREEN_IQS7211 is not set # CONFIG_TOUCHSCREEN_ZINITIX is not set +# CONFIG_TOUCHSCREEN_HIMAX_HX83112B is not set CONFIG_INPUT_MISC=y # CONFIG_INPUT_AD714X is not set # CONFIG_INPUT_ATMEL_CAPTOUCH is not set @@ -3111,7 +3165,6 @@ CONFIG_INPUT_UINPUT=m # CONFIG_INPUT_PCF8574 is not set CONFIG_INPUT_PWM_BEEPER=m CONFIG_INPUT_PWM_VIBRA=m -# CONFIG_INPUT_RK805_PWRKEY is not set # CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set # CONFIG_INPUT_DA7280_HAPTICS is not set # CONFIG_INPUT_ADXL34X is not set @@ -3171,6 +3224,7 @@ CONFIG_VT_HW_CONSOLE_BINDING=y CONFIG_UNIX98_PTYS=y CONFIG_LEGACY_PTYS=y CONFIG_LEGACY_PTY_COUNT=16 +CONFIG_LEGACY_TIOCSTI=y CONFIG_LDISC_AUTOLOAD=y # @@ -3183,12 +3237,14 @@ CONFIG_SERIAL_8250_16550A_VARIANTS=y # CONFIG_SERIAL_8250_FINTEK is not set CONFIG_SERIAL_8250_CONSOLE=y CONFIG_SERIAL_8250_DMA=y +CONFIG_SERIAL_8250_PCILIB=y CONFIG_SERIAL_8250_PCI=y CONFIG_SERIAL_8250_EXAR=y CONFIG_SERIAL_8250_NR_UARTS=4 CONFIG_SERIAL_8250_RUNTIME_UARTS=4 CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_MANY_PORTS is not set +# CONFIG_SERIAL_8250_PCI1XXXX is not set CONFIG_SERIAL_8250_SHARE_IRQ=y # CONFIG_SERIAL_8250_DETECT_IRQ is not set # CONFIG_SERIAL_8250_RSA is not set @@ -3206,7 +3262,7 @@ CONFIG_SERIAL_AMBA_PL010=y CONFIG_SERIAL_AMBA_PL010_CONSOLE=y CONFIG_SERIAL_AMBA_PL011=y CONFIG_SERIAL_AMBA_PL011_CONSOLE=y -# CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST is not set +# CONFIG_SERIAL_EARLYCON_SEMIHOST is not set # CONFIG_SERIAL_MAX3100 is not set # CONFIG_SERIAL_MAX310X is not set # CONFIG_SERIAL_UARTLITE is not set @@ -3288,8 +3344,6 @@ CONFIG_TCG_TIS_I2C_INFINEON=y # CONFIG_TCG_TIS_ST33ZP24_SPI is not set # CONFIG_XILLYBUS is not set # CONFIG_XILLYUSB is not set -CONFIG_RANDOM_TRUST_CPU=y -CONFIG_RANDOM_TRUST_BOOTLOADER=y # end of Character devices # @@ -3317,7 +3371,7 @@ CONFIG_I2C_MUX_PCA954x=y # end of Multiplexer I2C Chip support CONFIG_I2C_HELPER_AUTO=y -CONFIG_I2C_ALGOBIT=y +CONFIG_I2C_ALGOBIT=m # # I2C Hardware Bus support @@ -3354,6 +3408,7 @@ CONFIG_I2C_DESIGNWARE_PLATFORM=y # CONFIG_I2C_EMEV2 is not set CONFIG_I2C_GPIO=m # CONFIG_I2C_GPIO_FAULT_INJECTOR is not set +# CONFIG_I2C_HISI is not set # CONFIG_I2C_NOMADIK is not set # CONFIG_I2C_OCORES is not set # CONFIG_I2C_PCA_PLATFORM is not set @@ -3408,20 +3463,20 @@ CONFIG_SPI_DESIGNWARE=m CONFIG_SPI_DW_DMA=y # CONFIG_SPI_DW_PCI is not set CONFIG_SPI_DW_MMIO=m -CONFIG_SPI_NXP_FLEXSPI=y # CONFIG_SPI_GPIO is not set # CONFIG_SPI_FSL_SPI is not set # CONFIG_SPI_MICROCHIP_CORE is not set # CONFIG_SPI_MICROCHIP_CORE_QSPI is not set # CONFIG_SPI_OC_TINY is not set +# CONFIG_SPI_PCI1XXXX is not set CONFIG_SPI_PL022=y # CONFIG_SPI_PXA2XX is not set -CONFIG_SPI_ROCKCHIP=y CONFIG_SPI_QCOM_QSPI=y CONFIG_SPI_QUP=y CONFIG_SPI_QCOM_GENI=y # CONFIG_SPI_SC18IS602 is not set # CONFIG_SPI_SIFIVE is not set +# CONFIG_SPI_SN_F_OSPI is not set # CONFIG_SPI_MXIC is not set # CONFIG_SPI_THUNDERX is not set # CONFIG_SPI_XCOMM is not set @@ -3471,6 +3526,7 @@ CONFIG_PTP_1588_CLOCK_OPTIONAL=y CONFIG_PTP_1588_CLOCK_KVM=y # CONFIG_PTP_1588_CLOCK_IDT82P33 is not set # CONFIG_PTP_1588_CLOCK_IDTCM is not set +# CONFIG_PTP_1588_CLOCK_MOCK is not set # CONFIG_PTP_1588_CLOCK_OCP is not set # end of PTP clock support @@ -3487,13 +3543,15 @@ CONFIG_PINCTRL_MAX77620=y # CONFIG_PINCTRL_MCP23S08 is not set # CONFIG_PINCTRL_MICROCHIP_SGPIO is not set # CONFIG_PINCTRL_OCELOT is not set -# CONFIG_PINCTRL_RK805 is not set CONFIG_PINCTRL_SINGLE=y # CONFIG_PINCTRL_STMFX is not set # CONFIG_PINCTRL_SX150X is not set CONFIG_PINCTRL_MSM=y +# CONFIG_PINCTRL_IPQ5018 is not set +# CONFIG_PINCTRL_IPQ5332 is not set CONFIG_PINCTRL_IPQ8074=y CONFIG_PINCTRL_IPQ6018=y +# CONFIG_PINCTRL_IPQ9574 is not set # CONFIG_PINCTRL_MDM9607 is not set CONFIG_PINCTRL_MSM8916=y # CONFIG_PINCTRL_MSM8953 is not set @@ -3503,27 +3561,36 @@ CONFIG_PINCTRL_MSM8996=y CONFIG_PINCTRL_MSM8998=y # CONFIG_PINCTRL_QCM2290 is not set CONFIG_PINCTRL_QCS404=y -CONFIG_PINCTRL_QCOM_SPMI_PMIC=y -# CONFIG_PINCTRL_QCOM_SSBI_PMIC is not set +# CONFIG_PINCTRL_QDU1000 is not set +# CONFIG_PINCTRL_SA8775P is not set CONFIG_PINCTRL_SC7180=y CONFIG_PINCTRL_SC7280=y -# CONFIG_PINCTRL_SC7280_LPASS_LPI is not set # CONFIG_PINCTRL_SC8180X is not set CONFIG_PINCTRL_SC8280XP=y # CONFIG_PINCTRL_SDM660 is not set +# CONFIG_PINCTRL_SDM670 is not set CONFIG_PINCTRL_SDM845=y +# CONFIG_PINCTRL_SDX75 is not set # CONFIG_PINCTRL_SM6115 is not set # CONFIG_PINCTRL_SM6125 is not set # CONFIG_PINCTRL_SM6350 is not set # CONFIG_PINCTRL_SM6375 is not set +# CONFIG_PINCTRL_SM7150 is not set CONFIG_PINCTRL_SM8150=y CONFIG_PINCTRL_SM8250=y -# CONFIG_PINCTRL_SM8250_LPASS_LPI is not set CONFIG_PINCTRL_SM8350=y CONFIG_PINCTRL_SM8450=y +# CONFIG_PINCTRL_SM8550 is not set +CONFIG_PINCTRL_QCOM_SPMI_PMIC=y +# CONFIG_PINCTRL_QCOM_SSBI_PMIC is not set +CONFIG_PINCTRL_LPASS_LPI=m +# CONFIG_PINCTRL_SC7280_LPASS_LPI is not set +# CONFIG_PINCTRL_SM6115_LPASS_LPI is not set +# CONFIG_PINCTRL_SM8250_LPASS_LPI is not set +# CONFIG_PINCTRL_SM8350_LPASS_LPI is not set # CONFIG_PINCTRL_SM8450_LPASS_LPI is not set # CONFIG_PINCTRL_SC8280XP_LPASS_LPI is not set -CONFIG_PINCTRL_LPASS_LPI=m +# CONFIG_PINCTRL_SM8550_LPASS_LPI is not set # # Renesas pinctrl drivers @@ -3534,6 +3601,7 @@ CONFIG_GPIOLIB=y CONFIG_GPIOLIB_FASTPATH_LIMIT=512 CONFIG_OF_GPIO=y CONFIG_GPIOLIB_IRQCHIP=y +CONFIG_OF_GPIO_MM_GPIOCHIP=y # CONFIG_DEBUG_GPIO is not set CONFIG_GPIO_CDEV=y CONFIG_GPIO_CDEV_V1=y @@ -3550,6 +3618,7 @@ CONFIG_GPIO_DWAPB=y # CONFIG_GPIO_FTGPIO010 is not set # CONFIG_GPIO_GENERIC_PLATFORM is not set # CONFIG_GPIO_GRGPIO is not set +# CONFIG_GPIO_HISI is not set # CONFIG_GPIO_HLWD is not set # CONFIG_GPIO_LOGICVC is not set CONFIG_GPIO_MB86S7X=y @@ -3566,6 +3635,8 @@ CONFIG_GPIO_XGENE=y # I2C GPIO expanders # # CONFIG_GPIO_ADNP is not set +# CONFIG_GPIO_FXL6408 is not set +# CONFIG_GPIO_DS4520 is not set # CONFIG_GPIO_GW_PLD is not set # CONFIG_GPIO_MAX7300 is not set CONFIG_GPIO_MAX732X=y @@ -3613,6 +3684,7 @@ CONFIG_GPIO_MAX77620=y # Virtual GPIO drivers # # CONFIG_GPIO_AGGREGATOR is not set +# CONFIG_GPIO_LATCH is not set # CONFIG_GPIO_MOCKUP is not set # CONFIG_GPIO_VIRTIO is not set # CONFIG_GPIO_SIM is not set @@ -3638,7 +3710,6 @@ CONFIG_SYSCON_REBOOT_MODE=y CONFIG_POWER_SUPPLY=y # CONFIG_POWER_SUPPLY_DEBUG is not set CONFIG_POWER_SUPPLY_HWMON=y -# CONFIG_PDA_POWER is not set # CONFIG_GENERIC_ADC_BATTERY is not set # CONFIG_IP5XXX_POWER is not set # CONFIG_TEST_POWER is not set @@ -3676,17 +3747,19 @@ CONFIG_CHARGER_MT6360=m CONFIG_CHARGER_BQ25890=m CONFIG_CHARGER_BQ25980=m # CONFIG_CHARGER_BQ256XX is not set -# CONFIG_CHARGER_RK817 is not set # CONFIG_CHARGER_SMB347 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set # CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_RT5033 is not set # CONFIG_CHARGER_RT9455 is not set +# CONFIG_CHARGER_RT9467 is not set +# CONFIG_CHARGER_RT9471 is not set CONFIG_CHARGER_CROS_USBPD=m CONFIG_CHARGER_CROS_PCHG=y # CONFIG_CHARGER_UCS1002 is not set # CONFIG_CHARGER_BD99954 is not set # CONFIG_BATTERY_UG3105 is not set +# CONFIG_CHARGER_QCOM_SMB2 is not set CONFIG_HWMON=y # CONFIG_HWMON_DEBUG_CHIP is not set @@ -3732,6 +3805,7 @@ CONFIG_SENSORS_ARM_SCPI=y # CONFIG_SENSORS_G762 is not set CONFIG_SENSORS_GPIO_FAN=m # CONFIG_SENSORS_HIH6130 is not set +# CONFIG_SENSORS_HS3001 is not set # CONFIG_SENSORS_IBMAEM is not set # CONFIG_SENSORS_IBMPEX is not set # CONFIG_SENSORS_IIO_HWMON is not set @@ -3759,12 +3833,14 @@ CONFIG_SENSORS_JC42=m # CONFIG_SENSORS_MAX31722 is not set # CONFIG_SENSORS_MAX31730 is not set # CONFIG_SENSORS_MAX31760 is not set +# CONFIG_MAX31827 is not set # CONFIG_SENSORS_MAX6620 is not set # CONFIG_SENSORS_MAX6621 is not set # CONFIG_SENSORS_MAX6639 is not set # CONFIG_SENSORS_MAX6650 is not set # CONFIG_SENSORS_MAX6697 is not set # CONFIG_SENSORS_MAX31790 is not set +# CONFIG_SENSORS_MC34VR500 is not set # CONFIG_SENSORS_MCP3021 is not set # CONFIG_SENSORS_TC654 is not set # CONFIG_SENSORS_TPS23861 is not set @@ -3820,7 +3896,6 @@ CONFIG_SENSORS_PWM_FAN=m # CONFIG_SENSORS_SCH5627 is not set # CONFIG_SENSORS_SCH5636 is not set # CONFIG_SENSORS_STTS751 is not set -# CONFIG_SENSORS_SMM665 is not set # CONFIG_SENSORS_ADC128D818 is not set # CONFIG_SENSORS_ADS7828 is not set # CONFIG_SENSORS_ADS7871 is not set @@ -3903,6 +3978,7 @@ CONFIG_WATCHDOG_OPEN_TIMEOUT=0 # CONFIG_SOFT_WATCHDOG is not set # CONFIG_GPIO_WATCHDOG is not set # CONFIG_XILINX_WATCHDOG is not set +# CONFIG_XILINX_WINDOW_WATCHDOG is not set # CONFIG_ZIIRAVE_WATCHDOG is not set CONFIG_ARM_SP805_WATCHDOG=y CONFIG_ARM_SBSA_WATCHDOG=y @@ -3940,6 +4016,7 @@ CONFIG_BCMA_POSSIBLE=y CONFIG_MFD_CORE=y # CONFIG_MFD_ACT8945A is not set # CONFIG_MFD_AS3711 is not set +# CONFIG_MFD_SMPRO is not set # CONFIG_MFD_AS3722 is not set # CONFIG_PMIC_ADP5520 is not set # CONFIG_MFD_AAT2870_CORE is not set @@ -3950,7 +4027,10 @@ CONFIG_MFD_BD9571MWV=y CONFIG_MFD_AXP20X=y CONFIG_MFD_AXP20X_I2C=y CONFIG_MFD_CROS_EC_DEV=y +# CONFIG_MFD_CS42L43_I2C is not set +# CONFIG_MFD_CS42L43_SDW is not set # CONFIG_MFD_MADERA is not set +# CONFIG_MFD_MAX5970 is not set # CONFIG_PMIC_DA903X is not set # CONFIG_MFD_DA9052_SPI is not set # CONFIG_MFD_DA9052_I2C is not set @@ -3965,8 +4045,6 @@ CONFIG_MFD_CROS_EC_DEV=y # CONFIG_MFD_MP2629 is not set # CONFIG_MFD_HI6421_PMIC is not set # CONFIG_MFD_HI6421_SPMI is not set -# CONFIG_HTC_PASIC3 is not set -# CONFIG_HTC_I2CPLD is not set # CONFIG_LPC_ICH is not set # CONFIG_LPC_SCH is not set # CONFIG_MFD_IQS62X is not set @@ -3976,6 +4054,7 @@ CONFIG_MFD_CROS_EC_DEV=y # CONFIG_MFD_88PM805 is not set # CONFIG_MFD_88PM860X is not set # CONFIG_MFD_MAX14577 is not set +# CONFIG_MFD_MAX77541 is not set CONFIG_MFD_MAX77620=y # CONFIG_MFD_MAX77650 is not set # CONFIG_MFD_MAX77686 is not set @@ -4005,7 +4084,8 @@ CONFIG_MFD_SPMI_PMIC=y # CONFIG_MFD_RT5033 is not set # CONFIG_MFD_RT5120 is not set # CONFIG_MFD_RC5T583 is not set -CONFIG_MFD_RK808=y +# CONFIG_MFD_RK8XX_I2C is not set +# CONFIG_MFD_RK8XX_SPI is not set # CONFIG_MFD_RN5T618 is not set CONFIG_MFD_SEC_CORE=y # CONFIG_MFD_SI476X_CORE is not set @@ -4013,7 +4093,6 @@ CONFIG_MFD_SEC_CORE=y # CONFIG_MFD_SKY81452 is not set # CONFIG_MFD_STMPE is not set CONFIG_MFD_SYSCON=y -# CONFIG_MFD_TI_AM335X_TSCADC is not set # CONFIG_MFD_LP3943 is not set # CONFIG_MFD_LP8788 is not set # CONFIG_MFD_TI_LMU is not set @@ -4027,10 +4106,13 @@ CONFIG_MFD_SYSCON=y # CONFIG_MFD_TI_LP873X is not set # CONFIG_MFD_TI_LP87565 is not set # CONFIG_MFD_TPS65218 is not set +# CONFIG_MFD_TPS65219 is not set # CONFIG_MFD_TPS6586X is not set # CONFIG_MFD_TPS65910 is not set # CONFIG_MFD_TPS65912_I2C is not set # CONFIG_MFD_TPS65912_SPI is not set +# CONFIG_MFD_TPS6594_I2C is not set +# CONFIG_MFD_TPS6594_SPI is not set # CONFIG_TWL4030_CORE is not set # CONFIG_TWL6040_CORE is not set # CONFIG_MFD_WL1273_CORE is not set @@ -4055,7 +4137,7 @@ CONFIG_MFD_WCD934X=m # CONFIG_MFD_ATC260X_I2C is not set # CONFIG_MFD_QCOM_PM8008 is not set # CONFIG_RAVE_SP_CORE is not set -# CONFIG_MFD_INTEL_M10_BMC is not set +# CONFIG_MFD_INTEL_M10_BMC_SPI is not set # CONFIG_MFD_RSMU_I2C is not set # CONFIG_MFD_RSMU_SPI is not set # end of Multifunction device drivers @@ -4069,6 +4151,7 @@ CONFIG_REGULATOR_FIXED_VOLTAGE=y # CONFIG_REGULATOR_ACT8865 is not set # CONFIG_REGULATOR_AD5398 is not set # CONFIG_REGULATOR_ARM_SCMI is not set +# CONFIG_REGULATOR_AW37503 is not set CONFIG_REGULATOR_AXP20X=y CONFIG_REGULATOR_BD718XX=y CONFIG_REGULATOR_BD9571MWV=y @@ -4089,12 +4172,14 @@ CONFIG_REGULATOR_GPIO=y # CONFIG_REGULATOR_LTC3676 is not set # CONFIG_REGULATOR_MAX1586 is not set CONFIG_REGULATOR_MAX77620=y +# CONFIG_REGULATOR_MAX77857 is not set # CONFIG_REGULATOR_MAX8649 is not set # CONFIG_REGULATOR_MAX8660 is not set # CONFIG_REGULATOR_MAX8893 is not set # CONFIG_REGULATOR_MAX8952 is not set CONFIG_REGULATOR_MAX8973=y # CONFIG_REGULATOR_MAX20086 is not set +# CONFIG_REGULATOR_MAX20411 is not set # CONFIG_REGULATOR_MAX77826 is not set # CONFIG_REGULATOR_MCP16502 is not set # CONFIG_REGULATOR_MP5416 is not set @@ -4106,6 +4191,7 @@ CONFIG_REGULATOR_MP8859=y # CONFIG_REGULATOR_MT6323 is not set # CONFIG_REGULATOR_MT6331 is not set # CONFIG_REGULATOR_MT6332 is not set +# CONFIG_REGULATOR_MT6357 is not set CONFIG_REGULATOR_MT6358=y CONFIG_REGULATOR_MT6359=y CONFIG_REGULATOR_MT6360=y @@ -4117,21 +4203,26 @@ CONFIG_REGULATOR_PFUZE100=y # CONFIG_REGULATOR_PV88080 is not set # CONFIG_REGULATOR_PV88090 is not set CONFIG_REGULATOR_PWM=y +# CONFIG_REGULATOR_QCOM_REFGEN is not set CONFIG_REGULATOR_QCOM_RPMH=y CONFIG_REGULATOR_QCOM_SMD_RPM=y # CONFIG_REGULATOR_QCOM_SPMI is not set # CONFIG_REGULATOR_QCOM_USB_VBUS is not set +# CONFIG_REGULATOR_RAA215300 is not set # CONFIG_REGULATOR_RASPBERRYPI_TOUCHSCREEN_ATTINY is not set -CONFIG_REGULATOR_RK808=y CONFIG_REGULATOR_ROHM=y # CONFIG_REGULATOR_RT4801 is not set +# CONFIG_REGULATOR_RT4803 is not set # CONFIG_REGULATOR_RT5190A is not set +# CONFIG_REGULATOR_RT5739 is not set # CONFIG_REGULATOR_RT5759 is not set # CONFIG_REGULATOR_RT6160 is not set +# CONFIG_REGULATOR_RT6190 is not set # CONFIG_REGULATOR_RT6245 is not set # CONFIG_REGULATOR_RTQ2134 is not set # CONFIG_REGULATOR_RTMV20 is not set # CONFIG_REGULATOR_RTQ6752 is not set +# CONFIG_REGULATOR_RTQ2208 is not set # CONFIG_REGULATOR_S2MPA01 is not set CONFIG_REGULATOR_S2MPS11=y # CONFIG_REGULATOR_S5M8767 is not set @@ -4142,6 +4233,7 @@ CONFIG_REGULATOR_S2MPS11=y # CONFIG_REGULATOR_TPS51632 is not set # CONFIG_REGULATOR_TPS62360 is not set # CONFIG_REGULATOR_TPS6286X is not set +# CONFIG_REGULATOR_TPS6287X is not set # CONFIG_REGULATOR_TPS65023 is not set # CONFIG_REGULATOR_TPS6507X is not set CONFIG_REGULATOR_TPS65132=m @@ -4181,7 +4273,6 @@ CONFIG_RC_DEVICES=y # CONFIG_RC_LOOPBACK is not set # CONFIG_RC_XBOX_DVD is not set CONFIG_CEC_CORE=m -CONFIG_CEC_NOTIFIER=y # # CEC support @@ -4220,6 +4311,8 @@ CONFIG_VIDEO_V4L2_SUBDEV_API=y CONFIG_V4L2_MEM2MEM_DEV=m CONFIG_V4L2_FWNODE=m CONFIG_V4L2_ASYNC=m +CONFIG_V4L2_CCI=m +CONFIG_V4L2_CCI_I2C=m # end of Video4Linux options # @@ -4268,7 +4361,7 @@ CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y # CONFIG_VIDEO_GO7007 is not set # CONFIG_VIDEO_HDPVR is not set # CONFIG_VIDEO_PVRUSB2 is not set -# CONFIG_VIDEO_STK1160_COMMON is not set +# CONFIG_VIDEO_STK1160 is not set # # Analog/digital TV USB devices @@ -4322,7 +4415,6 @@ CONFIG_V4L_MEM2MEM_DRIVERS=y # # Aspeed media platform drivers # -# CONFIG_VIDEO_ASPEED is not set # # Atmel media platform drivers @@ -4351,6 +4443,10 @@ CONFIG_V4L_MEM2MEM_DRIVERS=y # Mediatek media platform drivers # +# +# Microchip Technology, Inc. media platform drivers +# + # # NVidia media platform drivers # @@ -4406,6 +4502,7 @@ CONFIG_VIDEO_QCOM_VENUS=m # MMC/SDIO DVB adapters # # CONFIG_SMS_SDIO_DRV is not set +CONFIG_UVC_COMMON=m CONFIG_VIDEOBUF2_CORE=m CONFIG_VIDEOBUF2_V4L2=m CONFIG_VIDEOBUF2_MEMOPS=m @@ -4425,10 +4522,7 @@ CONFIG_MEDIA_ATTACH=y # IR I2C driver auto-selected by 'Autoselect ancillary drivers' # CONFIG_VIDEO_IR_I2C=m - -# -# Camera sensor devices -# +CONFIG_VIDEO_CAMERA_SENSOR=y # CONFIG_VIDEO_AR0521 is not set # CONFIG_VIDEO_HI556 is not set # CONFIG_VIDEO_HI846 is not set @@ -4439,30 +4533,32 @@ CONFIG_VIDEO_IMX219=m # CONFIG_VIDEO_IMX258 is not set # CONFIG_VIDEO_IMX274 is not set # CONFIG_VIDEO_IMX290 is not set +# CONFIG_VIDEO_IMX296 is not set # CONFIG_VIDEO_IMX319 is not set # CONFIG_VIDEO_IMX334 is not set # CONFIG_VIDEO_IMX335 is not set # CONFIG_VIDEO_IMX355 is not set # CONFIG_VIDEO_IMX412 is not set +# CONFIG_VIDEO_IMX415 is not set # CONFIG_VIDEO_MT9M001 is not set -# CONFIG_VIDEO_MT9M032 is not set # CONFIG_VIDEO_MT9M111 is not set # CONFIG_VIDEO_MT9P031 is not set -# CONFIG_VIDEO_MT9T001 is not set # CONFIG_VIDEO_MT9T112 is not set # CONFIG_VIDEO_MT9V011 is not set # CONFIG_VIDEO_MT9V032 is not set # CONFIG_VIDEO_MT9V111 is not set -# CONFIG_VIDEO_NOON010PC30 is not set # CONFIG_VIDEO_OG01A1B is not set +# CONFIG_VIDEO_OV01A10 is not set # CONFIG_VIDEO_OV02A10 is not set # CONFIG_VIDEO_OV08D10 is not set +# CONFIG_VIDEO_OV08X40 is not set # CONFIG_VIDEO_OV13858 is not set # CONFIG_VIDEO_OV13B10 is not set # CONFIG_VIDEO_OV2640 is not set # CONFIG_VIDEO_OV2659 is not set # CONFIG_VIDEO_OV2680 is not set # CONFIG_VIDEO_OV2685 is not set +# CONFIG_VIDEO_OV4689 is not set CONFIG_VIDEO_OV5640=m CONFIG_VIDEO_OV5645=m # CONFIG_VIDEO_OV5647 is not set @@ -4478,6 +4574,7 @@ CONFIG_VIDEO_OV5645=m # CONFIG_VIDEO_OV772X is not set # CONFIG_VIDEO_OV7740 is not set # CONFIG_VIDEO_OV8856 is not set +# CONFIG_VIDEO_OV8858 is not set # CONFIG_VIDEO_OV8865 is not set # CONFIG_VIDEO_OV9282 is not set # CONFIG_VIDEO_OV9640 is not set @@ -4486,16 +4583,11 @@ CONFIG_VIDEO_OV5645=m # CONFIG_VIDEO_RDACM21 is not set # CONFIG_VIDEO_RJ54N1 is not set # CONFIG_VIDEO_S5C73M3 is not set -# CONFIG_VIDEO_S5K4ECGX is not set # CONFIG_VIDEO_S5K5BAF is not set # CONFIG_VIDEO_S5K6A3 is not set -# CONFIG_VIDEO_S5K6AA is not set -# CONFIG_VIDEO_SR030PC30 is not set -# CONFIG_VIDEO_VS6624 is not set +# CONFIG_VIDEO_ST_VGXY61 is not set # CONFIG_VIDEO_CCS is not set # CONFIG_VIDEO_ET8EK8 is not set -# CONFIG_VIDEO_M5MOLS is not set -# end of Camera sensor devices # # Lens drivers @@ -4503,6 +4595,7 @@ CONFIG_VIDEO_OV5645=m # CONFIG_VIDEO_AD5820 is not set # CONFIG_VIDEO_AK7375 is not set # CONFIG_VIDEO_DW9714 is not set +# CONFIG_VIDEO_DW9719 is not set # CONFIG_VIDEO_DW9768 is not set # CONFIG_VIDEO_DW9807_VCM is not set # end of Lens drivers @@ -4523,6 +4616,14 @@ CONFIG_VIDEO_OV5645=m # Video and audio decoders # +# +# Video serializers and deserializers +# +# CONFIG_VIDEO_DS90UB913 is not set +# CONFIG_VIDEO_DS90UB953 is not set +# CONFIG_VIDEO_DS90UB960 is not set +# end of Video serializers and deserializers + # # SPI I2C drivers auto-selected by 'Autoselect ancillary drivers' # @@ -4603,6 +4704,9 @@ CONFIG_MEDIA_TUNER_XC5000=m # Graphics support # CONFIG_APERTURE_HELPERS=y +CONFIG_VIDEO_CMDLINE=y +CONFIG_VIDEO_NOMODESET=y +# CONFIG_AUXDISPLAY is not set CONFIG_DRM=y CONFIG_DRM_MIPI_DSI=y # CONFIG_DRM_DEBUG_MM is not set @@ -4614,7 +4718,6 @@ CONFIG_DRM_DP_AUX_BUS=y CONFIG_DRM_DISPLAY_HELPER=y CONFIG_DRM_DISPLAY_DP_HELPER=y CONFIG_DRM_DISPLAY_HDCP_HELPER=y -CONFIG_DRM_DISPLAY_HDMI_HELPER=y CONFIG_DRM_DP_AUX_CHARDEV=y # CONFIG_DRM_DP_CEC is not set CONFIG_DRM_TTM=m @@ -4651,11 +4754,9 @@ CONFIG_DRM_KOMEDA=m CONFIG_DRM_UDL=m # CONFIG_DRM_AST is not set # CONFIG_DRM_MGAG200 is not set -CONFIG_DRM_RCAR_DW_HDMI=m -# CONFIG_DRM_RCAR_USE_LVDS is not set -# CONFIG_DRM_RCAR_USE_MIPI_DSI is not set # CONFIG_DRM_QXL is not set CONFIG_DRM_VIRTIO_GPU=m +CONFIG_DRM_VIRTIO_GPU_KMS=y CONFIG_DRM_MSM=y CONFIG_DRM_MSM_GPU_STATE=y CONFIG_DRM_MSM_MDSS=y @@ -4680,6 +4781,7 @@ CONFIG_DRM_PANEL=y # CONFIG_DRM_PANEL_ABT_Y030XX067A is not set # CONFIG_DRM_PANEL_ARM_VERSATILE is not set # CONFIG_DRM_PANEL_ASUS_Z00T_TM5P5_NT35596 is not set +# CONFIG_DRM_PANEL_AUO_A030JTN01 is not set # CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0 is not set # CONFIG_DRM_PANEL_BOE_HIMAX8279D is not set CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=y @@ -4691,11 +4793,13 @@ CONFIG_DRM_PANEL_EDP=y # CONFIG_DRM_PANEL_ELIDA_KD35T133 is not set # CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02 is not set # CONFIG_DRM_PANEL_FEIYANG_FY07024DI26A30D is not set +# CONFIG_DRM_PANEL_HIMAX_HX8394 is not set # CONFIG_DRM_PANEL_ILITEK_IL9322 is not set # CONFIG_DRM_PANEL_ILITEK_ILI9341 is not set # CONFIG_DRM_PANEL_ILITEK_ILI9881C is not set # CONFIG_DRM_PANEL_INNOLUX_EJ030NA is not set CONFIG_DRM_PANEL_INNOLUX_P079ZCA=m +# CONFIG_DRM_PANEL_JADARD_JD9365DA_H3 is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set # CONFIG_DRM_PANEL_JDI_R63452 is not set # CONFIG_DRM_PANEL_KHADAS_TS050 is not set @@ -4705,15 +4809,19 @@ CONFIG_DRM_PANEL_KINGDISPLAY_KD097D04=m # CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set # CONFIG_DRM_PANEL_LG_LB035Q02 is not set # CONFIG_DRM_PANEL_LG_LG4573 is not set +# CONFIG_DRM_PANEL_MAGNACHIP_D53E6EA8966 is not set # CONFIG_DRM_PANEL_NEC_NL8048HL11 is not set +# CONFIG_DRM_PANEL_NEWVISION_NV3051D is not set # CONFIG_DRM_PANEL_NEWVISION_NV3052C is not set # CONFIG_DRM_PANEL_NOVATEK_NT35510 is not set # CONFIG_DRM_PANEL_NOVATEK_NT35560 is not set # CONFIG_DRM_PANEL_NOVATEK_NT35950 is not set +# CONFIG_DRM_PANEL_NOVATEK_NT36523 is not set # CONFIG_DRM_PANEL_NOVATEK_NT36672A is not set # CONFIG_DRM_PANEL_NOVATEK_NT39016 is not set CONFIG_DRM_PANEL_MANTIX_MLAF057WE51=m # CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO is not set +# CONFIG_DRM_PANEL_ORISETECH_OTA5601A is not set # CONFIG_DRM_PANEL_ORISETECH_OTM8009A is not set # CONFIG_DRM_PANEL_OSD_OSD101T2587_53TS is not set # CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set @@ -4725,6 +4833,7 @@ CONFIG_DRM_PANEL_SAMSUNG_ATNA33XC20=y # CONFIG_DRM_PANEL_SAMSUNG_DB7430 is not set # CONFIG_DRM_PANEL_SAMSUNG_S6D16D0 is not set # CONFIG_DRM_PANEL_SAMSUNG_S6D27A1 is not set +# CONFIG_DRM_PANEL_SAMSUNG_S6D7AA0 is not set # CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set # CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03 is not set # CONFIG_DRM_PANEL_SAMSUNG_S6E63M0 is not set @@ -4740,13 +4849,17 @@ CONFIG_DRM_PANEL_SAMSUNG_ATNA33XC20=y CONFIG_DRM_PANEL_SITRONIX_ST7703=m # CONFIG_DRM_PANEL_SITRONIX_ST7789V is not set # CONFIG_DRM_PANEL_SONY_ACX565AKM is not set +# CONFIG_DRM_PANEL_SONY_TD4353_JDI is not set # CONFIG_DRM_PANEL_SONY_TULIP_TRULY_NT35521 is not set +# CONFIG_DRM_PANEL_STARTEK_KD070FHFID015 is not set # CONFIG_DRM_PANEL_TDO_TL070WSH30 is not set # CONFIG_DRM_PANEL_TPO_TD028TTEC1 is not set # CONFIG_DRM_PANEL_TPO_TD043MTEA1 is not set # CONFIG_DRM_PANEL_TPO_TPG110 is not set CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA=m CONFIG_DRM_PANEL_VISIONOX_RM69299=y +# CONFIG_DRM_PANEL_VISIONOX_VTDR6130 is not set +# CONFIG_DRM_PANEL_VISIONOX_R66451 is not set # CONFIG_DRM_PANEL_WIDECHIPS_WS2401 is not set # CONFIG_DRM_PANEL_XINPENG_XPP055C272 is not set # end of Display Panels @@ -4757,7 +4870,6 @@ CONFIG_DRM_PANEL_BRIDGE=y # # Display Interface Bridges # -# CONFIG_DRM_CDNS_DSI is not set # CONFIG_DRM_CHIPONE_ICN6211 is not set # CONFIG_DRM_CHRONTEL_CH7033 is not set # CONFIG_DRM_CROS_EC_ANX7688 is not set @@ -4774,6 +4886,7 @@ CONFIG_DRM_NWL_MIPI_DSI=m # CONFIG_DRM_NXP_PTN3460 is not set # CONFIG_DRM_PARADE_PS8622 is not set CONFIG_DRM_PARADE_PS8640=y +# CONFIG_DRM_SAMSUNG_DSIM is not set # CONFIG_DRM_SIL_SII8620 is not set CONFIG_DRM_SII902X=m # CONFIG_DRM_SII9234 is not set @@ -4795,14 +4908,11 @@ CONFIG_DRM_TI_SN65DSI86=y CONFIG_DRM_I2C_ADV7511=m CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511_CEC=y +# CONFIG_DRM_CDNS_DSI is not set CONFIG_DRM_CDNS_MHDP8546=m -CONFIG_DRM_DW_HDMI=m -CONFIG_DRM_DW_HDMI_AHB_AUDIO=m -# CONFIG_DRM_DW_HDMI_I2S_AUDIO is not set -# CONFIG_DRM_DW_HDMI_GP_AUDIO is not set -CONFIG_DRM_DW_HDMI_CEC=m # end of Display Interface Bridges +# CONFIG_DRM_LOONGSON is not set # CONFIG_DRM_ETNAVIV is not set CONFIG_DRM_HISI_HIBMC=m CONFIG_DRM_HISI_KIRIN=m @@ -4831,30 +4941,11 @@ CONFIG_DRM_TIDSS=m # CONFIG_DRM_SSD130X is not set # CONFIG_DRM_LEGACY is not set CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y -CONFIG_DRM_NOMODESET=y # # Frame buffer Devices # -CONFIG_FB_CMDLINE=y -CONFIG_FB_NOTIFY=y CONFIG_FB=y -# CONFIG_FIRMWARE_EDID is not set -CONFIG_FB_CFB_FILLRECT=y -CONFIG_FB_CFB_COPYAREA=y -CONFIG_FB_CFB_IMAGEBLIT=y -CONFIG_FB_SYS_FILLRECT=y -CONFIG_FB_SYS_COPYAREA=y -CONFIG_FB_SYS_IMAGEBLIT=y -# CONFIG_FB_FOREIGN_ENDIAN is not set -CONFIG_FB_SYS_FOPS=y -CONFIG_FB_DEFERRED_IO=y -CONFIG_FB_MODE_HELPERS=y -# CONFIG_FB_TILEBLITTING is not set - -# -# Frame buffer hardware drivers -# # CONFIG_FB_CIRRUS is not set # CONFIG_FB_PM2 is not set # CONFIG_FB_ARMCLCD is not set @@ -4893,6 +4984,25 @@ CONFIG_XEN_FBDEV_FRONTEND=y CONFIG_FB_SIMPLE=y # CONFIG_FB_SSD1307 is not set # CONFIG_FB_SM712 is not set +CONFIG_FB_CORE=y +CONFIG_FB_NOTIFY=y +# CONFIG_FIRMWARE_EDID is not set +CONFIG_FB_DEVICE=y +CONFIG_FB_CFB_FILLRECT=y +CONFIG_FB_CFB_COPYAREA=y +CONFIG_FB_CFB_IMAGEBLIT=y +CONFIG_FB_SYS_FILLRECT=y +CONFIG_FB_SYS_COPYAREA=y +CONFIG_FB_SYS_IMAGEBLIT=y +# CONFIG_FB_FOREIGN_ENDIAN is not set +CONFIG_FB_SYS_FOPS=y +CONFIG_FB_DEFERRED_IO=y +CONFIG_FB_DMAMEM_HELPERS=y +CONFIG_FB_IOMEM_HELPERS=y +CONFIG_FB_SYSMEM_HELPERS=y +CONFIG_FB_SYSMEM_HELPERS_DEFERRED=y +CONFIG_FB_MODE_HELPERS=y +# CONFIG_FB_TILEBLITTING is not set # end of Frame buffer Devices # @@ -4901,6 +5011,7 @@ CONFIG_FB_SIMPLE=y # CONFIG_LCD_CLASS_DEVICE is not set CONFIG_BACKLIGHT_CLASS_DEVICE=y # CONFIG_BACKLIGHT_KTD253 is not set +# CONFIG_BACKLIGHT_KTZ8866 is not set CONFIG_BACKLIGHT_PWM=y # CONFIG_BACKLIGHT_QCOM_WLED is not set # CONFIG_BACKLIGHT_ADP8860 is not set @@ -4934,6 +5045,7 @@ CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y # CONFIG_LOGO is not set # end of Graphics support +# CONFIG_DRM_ACCEL is not set CONFIG_SOUND=y CONFIG_SND=y CONFIG_SND_TIMER=y @@ -4965,9 +5077,11 @@ CONFIG_SND_SEQ_HRTIMER_DEFAULT=y CONFIG_SND_SEQ_MIDI_EVENT=m CONFIG_SND_SEQ_MIDI=m CONFIG_SND_SEQ_VIRMIDI=m +# CONFIG_SND_SEQ_UMP is not set CONFIG_SND_DRIVERS=y # CONFIG_SND_DUMMY is not set CONFIG_SND_ALOOP=m +# CONFIG_SND_PCMTEST is not set CONFIG_SND_VIRMIDI=m # CONFIG_SND_MTPAV is not set # CONFIG_SND_SERIAL_U16550 is not set @@ -5048,6 +5162,7 @@ CONFIG_SND_HDA_PREALLOC_SIZE=64 CONFIG_SND_SPI=y CONFIG_SND_USB=y CONFIG_SND_USB_AUDIO=m +# CONFIG_SND_USB_AUDIO_MIDI_V2 is not set CONFIG_SND_USB_AUDIO_USE_MEDIA_CONTROLLER=y # CONFIG_SND_USB_UA101 is not set # CONFIG_SND_USB_CAIAQ is not set @@ -5090,6 +5205,7 @@ CONFIG_SND_SOC_FSL_UTILS=m # CONFIG_SND_SOC_IMX_AUDMUX is not set # end of SoC Audio for Freescale CPUs +# CONFIG_SND_SOC_CHV3_I2S is not set # CONFIG_SND_I2S_HI6210_I2S is not set # CONFIG_SND_SOC_IMG is not set # CONFIG_SND_SOC_MTK_BTCVSD is not set @@ -5161,9 +5277,13 @@ CONFIG_SND_SOC_AK4613=m # CONFIG_SND_SOC_AK5386 is not set # CONFIG_SND_SOC_AK5558 is not set # CONFIG_SND_SOC_ALC5623 is not set +# CONFIG_SND_SOC_AUDIO_IIO_AUX is not set # CONFIG_SND_SOC_AW8738 is not set +# CONFIG_SND_SOC_AW88395 is not set +# CONFIG_SND_SOC_AW88261 is not set # CONFIG_SND_SOC_BD28623 is not set # CONFIG_SND_SOC_BT_SCO is not set +# CONFIG_SND_SOC_CHV3_CODEC is not set CONFIG_SND_SOC_CROS_EC_CODEC=m # CONFIG_SND_SOC_CS35L32 is not set # CONFIG_SND_SOC_CS35L33 is not set @@ -5174,7 +5294,11 @@ CONFIG_SND_SOC_CROS_EC_CODEC=m # CONFIG_SND_SOC_CS35L41_I2C is not set # CONFIG_SND_SOC_CS35L45_SPI is not set # CONFIG_SND_SOC_CS35L45_I2C is not set +# CONFIG_SND_SOC_CS35L56_I2C is not set +# CONFIG_SND_SOC_CS35L56_SPI is not set +# CONFIG_SND_SOC_CS35L56_SDW is not set # CONFIG_SND_SOC_CS42L42 is not set +# CONFIG_SND_SOC_CS42L42_SDW is not set # CONFIG_SND_SOC_CS42L51_I2C is not set # CONFIG_SND_SOC_CS42L52 is not set # CONFIG_SND_SOC_CS42L56 is not set @@ -5203,15 +5327,19 @@ CONFIG_SND_SOC_ES7241=m CONFIG_SND_SOC_GTM601=m # CONFIG_SND_SOC_HDA is not set # CONFIG_SND_SOC_ICS43432 is not set +# CONFIG_SND_SOC_IDT821034 is not set # CONFIG_SND_SOC_INNO_RK3036 is not set # CONFIG_SND_SOC_MAX98088 is not set +# CONFIG_SND_SOC_MAX98090 is not set CONFIG_SND_SOC_MAX98357A=m # CONFIG_SND_SOC_MAX98504 is not set # CONFIG_SND_SOC_MAX9867 is not set CONFIG_SND_SOC_MAX98927=m # CONFIG_SND_SOC_MAX98520 is not set +# CONFIG_SND_SOC_MAX98363 is not set # CONFIG_SND_SOC_MAX98373_I2C is not set # CONFIG_SND_SOC_MAX98373_SDW is not set +# CONFIG_SND_SOC_MAX98388 is not set # CONFIG_SND_SOC_MAX98390 is not set # CONFIG_SND_SOC_MAX98396 is not set # CONFIG_SND_SOC_MAX9860 is not set @@ -5231,9 +5359,10 @@ CONFIG_SND_SOC_PCM3168A_I2C=m # CONFIG_SND_SOC_PCM5102A is not set # CONFIG_SND_SOC_PCM512x_I2C is not set # CONFIG_SND_SOC_PCM512x_SPI is not set +# CONFIG_SND_SOC_PEB2466 is not set # CONFIG_SND_SOC_RK3328 is not set -# CONFIG_SND_SOC_RK817 is not set CONFIG_SND_SOC_RL6231=m +# CONFIG_SND_SOC_RT1017_SDCA_SDW is not set # CONFIG_SND_SOC_RT1308_SDW is not set # CONFIG_SND_SOC_RT1316_SDW is not set # CONFIG_SND_SOC_RT1318_SDW is not set @@ -5249,18 +5378,23 @@ CONFIG_SND_SOC_RT5682S=m # CONFIG_SND_SOC_RT700_SDW is not set # CONFIG_SND_SOC_RT711_SDW is not set # CONFIG_SND_SOC_RT711_SDCA_SDW is not set +# CONFIG_SND_SOC_RT712_SDCA_SDW is not set +# CONFIG_SND_SOC_RT712_SDCA_DMIC_SDW is not set +# CONFIG_SND_SOC_RT722_SDCA_SDW is not set # CONFIG_SND_SOC_RT715_SDW is not set # CONFIG_SND_SOC_RT715_SDCA_SDW is not set # CONFIG_SND_SOC_RT9120 is not set # CONFIG_SND_SOC_SGTL5000 is not set CONFIG_SND_SOC_SIMPLE_AMPLIFIER=m CONFIG_SND_SOC_SIMPLE_MUX=m +# CONFIG_SND_SOC_SMA1303 is not set # CONFIG_SND_SOC_SPDIF is not set # CONFIG_SND_SOC_SRC4XXX_I2C is not set # CONFIG_SND_SOC_SSM2305 is not set # CONFIG_SND_SOC_SSM2518 is not set # CONFIG_SND_SOC_SSM2602_SPI is not set # CONFIG_SND_SOC_SSM2602_I2C is not set +# CONFIG_SND_SOC_SSM3515 is not set # CONFIG_SND_SOC_SSM4567 is not set # CONFIG_SND_SOC_STA32X is not set # CONFIG_SND_SOC_STA350 is not set @@ -5270,6 +5404,7 @@ CONFIG_SND_SOC_SIMPLE_MUX=m # CONFIG_SND_SOC_TAS2764 is not set # CONFIG_SND_SOC_TAS2770 is not set # CONFIG_SND_SOC_TAS2780 is not set +# CONFIG_SND_SOC_TAS2781_I2C is not set # CONFIG_SND_SOC_TAS5086 is not set CONFIG_SND_SOC_TAS571X=m # CONFIG_SND_SOC_TAS5720 is not set @@ -5292,6 +5427,7 @@ CONFIG_SND_SOC_TLV320AIC32X4_I2C=m # CONFIG_SND_SOC_TSCS42XX is not set # CONFIG_SND_SOC_TSCS454 is not set # CONFIG_SND_SOC_UDA1334 is not set +CONFIG_SND_SOC_WCD_CLASSH=m CONFIG_SND_SOC_WCD9335=m CONFIG_SND_SOC_WCD_MBHC=m CONFIG_SND_SOC_WCD934X=m @@ -5318,12 +5454,14 @@ CONFIG_SND_SOC_WM8524=m CONFIG_SND_SOC_WM8904=m # CONFIG_SND_SOC_WM8940 is not set CONFIG_SND_SOC_WM8960=m +# CONFIG_SND_SOC_WM8961 is not set CONFIG_SND_SOC_WM8962=m # CONFIG_SND_SOC_WM8974 is not set CONFIG_SND_SOC_WM8978=m # CONFIG_SND_SOC_WM8985 is not set CONFIG_SND_SOC_WSA881X=m # CONFIG_SND_SOC_WSA883X is not set +# CONFIG_SND_SOC_WSA884X is not set # CONFIG_SND_SOC_ZL38060 is not set # CONFIG_SND_SOC_MAX9759 is not set # CONFIG_SND_SOC_MT6351 is not set @@ -5351,10 +5489,7 @@ CONFIG_SND_AUDIO_GRAPH_CARD2=m # CONFIG_SND_TEST_COMPONENT is not set # CONFIG_SND_XEN_FRONTEND is not set CONFIG_SND_VIRTIO=m - -# -# HID support -# +CONFIG_HID_SUPPORT=y CONFIG_HID=y # CONFIG_HID_BATTERY_STRENGTH is not set # CONFIG_HIDRAW is not set @@ -5390,6 +5525,7 @@ CONFIG_HID_EMS_FF=m CONFIG_HID_ELAN=m CONFIG_HID_ELECOM=m CONFIG_HID_ELO=m +# CONFIG_HID_EVISION is not set CONFIG_HID_EZKEY=m CONFIG_HID_GEMBIRD=m CONFIG_HID_GFRM=m @@ -5398,6 +5534,7 @@ CONFIG_HID_HOLTEK=m # CONFIG_HOLTEK_FF is not set CONFIG_HID_VIVALDI_COMMON=m CONFIG_HID_GOOGLE_HAMMER=m +# CONFIG_HID_GOOGLE_STADIA_FF is not set CONFIG_HID_VIVALDI=m CONFIG_HID_GT683R=m CONFIG_HID_KEYTOUCH=m @@ -5435,6 +5572,7 @@ CONFIG_HID_NINTENDO=m # CONFIG_NINTENDO_FF is not set CONFIG_HID_NTI=m CONFIG_HID_NTRIG=m +# CONFIG_HID_NVIDIA_SHIELD is not set CONFIG_HID_ORTEK=m CONFIG_HID_PANTHERLORD=m # CONFIG_PANTHERLORD_FF is not set @@ -5461,6 +5599,7 @@ CONFIG_HID_SONY=m # CONFIG_SONY_FF is not set CONFIG_HID_SPEEDLINK=m CONFIG_HID_STEAM=m +# CONFIG_STEAM_FF is not set CONFIG_HID_STEELSERIES=m CONFIG_HID_SUNPLUS=m CONFIG_HID_RMI=m @@ -5488,6 +5627,11 @@ CONFIG_HID_ALPS=m CONFIG_HID_MCP2221=m # end of Special HID drivers +# +# HID-BPF support +# +# end of HID-BPF support + # # USB HID support # @@ -5496,17 +5640,11 @@ CONFIG_USB_HID=y # CONFIG_USB_HIDDEV is not set # end of USB HID support -# -# I2C HID support -# +CONFIG_I2C_HID=y CONFIG_I2C_HID_OF=m # CONFIG_I2C_HID_OF_ELAN is not set CONFIG_I2C_HID_OF_GOODIX=m -# end of I2C HID support - CONFIG_I2C_HID_CORE=m -# end of HID support - CONFIG_USB_OHCI_LITTLE_ENDIAN=y CONFIG_USB_SUPPORT=y CONFIG_USB_COMMON=y @@ -5549,7 +5687,6 @@ CONFIG_USB_EHCI_PCI=y CONFIG_USB_EHCI_HCD_PLATFORM=y # CONFIG_USB_OXU210HP_HCD is not set # CONFIG_USB_ISP116X_HCD is not set -# CONFIG_USB_FOTG210_HCD is not set # CONFIG_USB_MAX3421_HCD is not set CONFIG_USB_OHCI_HCD=y CONFIG_USB_OHCI_HCD_PCI=y @@ -5598,6 +5735,10 @@ CONFIG_USB_STORAGE=y # CONFIG_USB_MDC800 is not set # CONFIG_USB_MICROTEK is not set # CONFIG_USBIP_CORE is not set + +# +# USB dual-mode controller drivers +# CONFIG_USB_CDNS_SUPPORT=m CONFIG_USB_CDNS_HOST=y CONFIG_USB_CDNS3=m @@ -5724,7 +5865,6 @@ CONFIG_USB_SERIAL_OPTION=m # CONFIG_USB_CYPRESS_CY7C63 is not set # CONFIG_USB_CYTHERM is not set # CONFIG_USB_IDMOUSE is not set -# CONFIG_USB_FTDI_ELAN is not set # CONFIG_USB_APPLEDISPLAY is not set # CONFIG_USB_QCOM_EUD is not set # CONFIG_APPLE_MFI_FASTCHARGE is not set @@ -5765,7 +5905,6 @@ CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2 # # USB Peripheral Controller # -# CONFIG_USB_FOTG210_UDC is not set # CONFIG_USB_GR_UDC is not set # CONFIG_USB_R8A66597 is not set # CONFIG_USB_PXA27X is not set @@ -5813,6 +5952,7 @@ CONFIG_USB_CONFIGFS_F_FS=y # CONFIG_USB_CONFIGFS_F_UAC1_LEGACY is not set # CONFIG_USB_CONFIGFS_F_UAC2 is not set # CONFIG_USB_CONFIGFS_F_MIDI is not set +# CONFIG_USB_CONFIGFS_F_MIDI2 is not set # CONFIG_USB_CONFIGFS_F_HID is not set # CONFIG_USB_CONFIGFS_F_UVC is not set # CONFIG_USB_CONFIGFS_F_PRINTER is not set @@ -5846,6 +5986,7 @@ CONFIG_TYPEC_TCPCI=m # CONFIG_TYPEC_MT6360 is not set # CONFIG_TYPEC_TCPCI_MAXIM is not set CONFIG_TYPEC_FUSB302=m +# CONFIG_TYPEC_QCOM_PMIC is not set CONFIG_TYPEC_UCSI=y # CONFIG_UCSI_CCG is not set # CONFIG_UCSI_STM32G0 is not set @@ -5854,14 +5995,15 @@ CONFIG_TYPEC_TPS6598X=m # CONFIG_TYPEC_RT1719 is not set CONFIG_TYPEC_HD3SS3220=m # CONFIG_TYPEC_STUSB160X is not set -# CONFIG_TYPEC_QCOM_PMIC is not set # CONFIG_TYPEC_WUSB3801 is not set # # USB Type-C Multiplexer/DeMultiplexer Switch support # # CONFIG_TYPEC_MUX_FSA4480 is not set +# CONFIG_TYPEC_MUX_GPIO_SBU is not set # CONFIG_TYPEC_MUX_PI3USB30532 is not set +# CONFIG_TYPEC_MUX_NB7VPQ904M is not set # end of USB Type-C Multiplexer/DeMultiplexer Switch support # @@ -5917,11 +6059,8 @@ CONFIG_MMC_CQHCI=y # CONFIG_MMC_TOSHIBA_PCI is not set CONFIG_MMC_MTK=y CONFIG_MMC_SDHCI_XENON=y -# CONFIG_MMC_SDHCI_OMAP is not set -CONFIG_MMC_SDHCI_AM654=y CONFIG_SCSI_UFSHCD=y # CONFIG_SCSI_UFS_BSG is not set -# CONFIG_SCSI_UFS_HPB is not set # CONFIG_SCSI_UFS_HWMON is not set # CONFIG_SCSI_UFSHCD_PCI is not set CONFIG_SCSI_UFSHCD_PLATFORM=y @@ -5939,6 +6078,7 @@ CONFIG_LEDS_CLASS_MULTICOLOR=y # LED drivers # # CONFIG_LEDS_AN30259A is not set +# CONFIG_LEDS_AW200XX is not set # CONFIG_LEDS_AW2013 is not set # CONFIG_LEDS_BCM6328 is not set # CONFIG_LEDS_BCM6358 is not set @@ -5959,9 +6099,11 @@ CONFIG_LEDS_GPIO=y # CONFIG_LEDS_LP8860 is not set # CONFIG_LEDS_PCA955X is not set # CONFIG_LEDS_PCA963X is not set +# CONFIG_LEDS_PCA995X is not set # CONFIG_LEDS_DAC124S085 is not set CONFIG_LEDS_PWM=y # CONFIG_LEDS_REGULATOR is not set +# CONFIG_LEDS_BD2606MVV is not set # CONFIG_LEDS_BD2802 is not set # CONFIG_LEDS_LT3593 is not set # CONFIG_LEDS_TCA6507 is not set @@ -5978,7 +6120,7 @@ CONFIG_LEDS_SYSCON=y # CONFIG_LEDS_MLXREG is not set # CONFIG_LEDS_USER is not set # CONFIG_LEDS_SPI_BYTE is not set -# CONFIG_LEDS_TI_LMU_COMMON is not set +# CONFIG_LEDS_LM3697 is not set # # Flash and Torch LED drivers @@ -5987,6 +6129,7 @@ CONFIG_LEDS_SYSCON=y # # RGB LED drivers # +# CONFIG_LEDS_GROUP_MULTICOLOR is not set # CONFIG_LEDS_PWM_MULTICOLOR is not set CONFIG_LEDS_QCOM_LPG=m @@ -6002,7 +6145,6 @@ CONFIG_LEDS_TRIGGER_HEARTBEAT=y # CONFIG_LEDS_TRIGGER_BACKLIGHT is not set CONFIG_LEDS_TRIGGER_CPU=y # CONFIG_LEDS_TRIGGER_ACTIVITY is not set -# CONFIG_LEDS_TRIGGER_GPIO is not set CONFIG_LEDS_TRIGGER_DEFAULT_ON=y # @@ -6061,7 +6203,6 @@ CONFIG_RTC_DRV_HYM8563=m # CONFIG_RTC_DRV_MAX6900 is not set CONFIG_RTC_DRV_MAX77686=y # CONFIG_RTC_DRV_NCT3018Y is not set -CONFIG_RTC_DRV_RK808=m # CONFIG_RTC_DRV_RS5C372 is not set # CONFIG_RTC_DRV_ISL1208 is not set # CONFIG_RTC_DRV_ISL12022 is not set @@ -6130,9 +6271,7 @@ CONFIG_RTC_DRV_EFI=y # CONFIG_RTC_DRV_M48T35 is not set # CONFIG_RTC_DRV_M48T59 is not set # CONFIG_RTC_DRV_MSM6242 is not set -# CONFIG_RTC_DRV_BQ4802 is not set # CONFIG_RTC_DRV_RP5C01 is not set -# CONFIG_RTC_DRV_V3020 is not set # CONFIG_RTC_DRV_OPTEE is not set # CONFIG_RTC_DRV_ZYNQMP is not set CONFIG_RTC_DRV_CROS_EC=y @@ -6174,6 +6313,7 @@ CONFIG_MV_XOR_V2=y CONFIG_PL330_DMA=y # CONFIG_PLX_DMA is not set # CONFIG_XILINX_DMA is not set +# CONFIG_XILINX_XDMA is not set # CONFIG_XILINX_ZYNQMP_DMA is not set # CONFIG_XILINX_ZYNQMP_DPDMA is not set CONFIG_QCOM_BAM_DMA=y @@ -6183,7 +6323,6 @@ CONFIG_QCOM_HIDMA=y # CONFIG_DW_DMAC is not set # CONFIG_DW_DMAC_PCI is not set # CONFIG_DW_EDMA is not set -# CONFIG_DW_EDMA_PCIE is not set # CONFIG_SF_PDMA is not set # @@ -6206,18 +6345,30 @@ CONFIG_SYNC_FILE=y # CONFIG_DMABUF_SYSFS_STATS is not set # end of DMABUF options -# CONFIG_AUXDISPLAY is not set # CONFIG_UIO is not set CONFIG_VFIO=y +CONFIG_VFIO_GROUP=y +CONFIG_VFIO_CONTAINER=y CONFIG_VFIO_IOMMU_TYPE1=y -CONFIG_VFIO_VIRQFD=y # CONFIG_VFIO_NOIOMMU is not set +CONFIG_VFIO_VIRQFD=y + +# +# VFIO support for PCI devices +# CONFIG_VFIO_PCI_CORE=y CONFIG_VFIO_PCI_MMAP=y CONFIG_VFIO_PCI_INTX=y CONFIG_VFIO_PCI=y +# end of VFIO support for PCI devices + +# +# VFIO support for platform devices +# # CONFIG_VFIO_PLATFORM is not set -# CONFIG_VFIO_MDEV is not set +# CONFIG_VFIO_AMBA is not set +# end of VFIO support for platform devices + # CONFIG_VIRT_DRIVERS is not set CONFIG_VIRTIO_ANCHOR=y CONFIG_VIRTIO=y @@ -6276,7 +6427,6 @@ CONFIG_RTL8192U=m # CONFIG_RTLLIB is not set CONFIG_RTL8723BS=m CONFIG_R8712U=m -CONFIG_R8188EU=m # CONFIG_RTS5208 is not set # CONFIG_VT6655 is not set # CONFIG_VT6656 is not set @@ -6317,12 +6467,6 @@ CONFIG_R8188EU=m # CONFIG_AD5933 is not set # end of Network Analyzer, Impedance Converters -# -# Active energy metering IC -# -# CONFIG_ADE7854 is not set -# end of Active energy metering IC - # # Resolver to digital converters # @@ -6332,6 +6476,7 @@ CONFIG_R8188EU=m # CONFIG_FB_SM750 is not set CONFIG_STAGING_MEDIA=y +# CONFIG_DVB_AV7110 is not set CONFIG_VIDEO_MAX96712=m # CONFIG_STAGING_MEDIA_DEPRECATED is not set # CONFIG_STAGING_BOARD is not set @@ -6358,10 +6503,13 @@ CONFIG_CROS_EC_DEBUGFS=y CONFIG_CROS_EC_SENSORHUB=y CONFIG_CROS_EC_SYSFS=y CONFIG_CROS_EC_TYPEC=y +# CONFIG_CROS_HPS_I2C is not set CONFIG_CROS_USBPD_LOGGER=m CONFIG_CROS_USBPD_NOTIFY=y # CONFIG_MELLANOX_PLATFORM is not set CONFIG_SURFACE_PLATFORMS=y +CONFIG_ARM64_PLATFORM_DEVICES=y +CONFIG_EC_ACER_ASPIRE1=y CONFIG_HAVE_CLK=y CONFIG_HAVE_CLK_PREPARE=y CONFIG_COMMON_CLK=y @@ -6376,7 +6524,6 @@ CONFIG_COMMON_CLK=y # CONFIG_LMK04832 is not set # CONFIG_COMMON_CLK_MAX77686 is not set # CONFIG_COMMON_CLK_MAX9485 is not set -CONFIG_COMMON_CLK_RK808=y CONFIG_COMMON_CLK_SCMI=y CONFIG_COMMON_CLK_SCPI=y # CONFIG_COMMON_CLK_SI5341 is not set @@ -6392,6 +6539,8 @@ CONFIG_COMMON_CLK_S2MPS11=y # CONFIG_COMMON_CLK_XGENE is not set CONFIG_COMMON_CLK_PWM=y # CONFIG_COMMON_CLK_RS9_PCIE is not set +# CONFIG_COMMON_CLK_SI521XX is not set +# CONFIG_COMMON_CLK_VC3 is not set CONFIG_COMMON_CLK_VC5=y # CONFIG_COMMON_CLK_VC7 is not set CONFIG_COMMON_CLK_BD718XX=m @@ -6403,31 +6552,20 @@ CONFIG_QCOM_A53PLL=y # CONFIG_QCOM_A7PLL is not set CONFIG_QCOM_CLK_APCS_MSM8916=y CONFIG_QCOM_CLK_APCC_MSM8996=y -# CONFIG_QCOM_CLK_APCS_SDX55 is not set CONFIG_QCOM_CLK_SMD_RPM=y CONFIG_QCOM_CLK_RPMH=y -# CONFIG_APQ_GCC_8084 is not set -# CONFIG_APQ_MMCC_8084 is not set # CONFIG_IPQ_APSS_PLL is not set # CONFIG_IPQ_APSS_6018 is not set # CONFIG_IPQ_GCC_4019 is not set +# CONFIG_IPQ_GCC_5018 is not set +# CONFIG_IPQ_GCC_5332 is not set CONFIG_IPQ_GCC_6018=y -# CONFIG_IPQ_GCC_806X is not set -# CONFIG_IPQ_LCC_806X is not set CONFIG_IPQ_GCC_8074=y -# CONFIG_MSM_GCC_8660 is not set -# CONFIG_MSM_GCC_8909 is not set +# CONFIG_IPQ_GCC_9574 is not set CONFIG_MSM_GCC_8916=y +# CONFIG_MSM_GCC_8917 is not set # CONFIG_MSM_GCC_8939 is not set -# CONFIG_MSM_GCC_8960 is not set -# CONFIG_MSM_LCC_8960 is not set -# CONFIG_MDM_GCC_9607 is not set -# CONFIG_MDM_GCC_9615 is not set -# CONFIG_MDM_LCC_9615 is not set -# CONFIG_MSM_MMCC_8960 is not set # CONFIG_MSM_GCC_8953 is not set -# CONFIG_MSM_GCC_8974 is not set -# CONFIG_MSM_MMCC_8974 is not set # CONFIG_MSM_GCC_8976 is not set # CONFIG_MSM_MMCC_8994 is not set CONFIG_MSM_GCC_8994=y @@ -6443,6 +6581,9 @@ CONFIG_SC_CAMCC_7180=y # CONFIG_SC_CAMCC_7280 is not set CONFIG_SC_DISPCC_7180=y # CONFIG_SC_DISPCC_7280 is not set +# CONFIG_SC_DISPCC_8280XP is not set +# CONFIG_SA_GCC_8775P is not set +# CONFIG_SA_GPUCC_8775P is not set CONFIG_SC_GCC_7180=y CONFIG_SC_GCC_7280=y # CONFIG_SC_GCC_8180X is not set @@ -6451,6 +6592,7 @@ CONFIG_SC_GPUCC_7180=y # CONFIG_SC_GPUCC_7280 is not set # CONFIG_SC_GPUCC_8280XP is not set # CONFIG_SC_LPASSCC_7280 is not set +# CONFIG_SC_LPASSCC_8280XP is not set CONFIG_SC_LPASS_CORECC_7180=y # CONFIG_SC_LPASS_CORECC_7280 is not set CONFIG_SC_MSS_7180=m @@ -6462,13 +6604,14 @@ CONFIG_SDM_CAMCC_845=m # CONFIG_SDM_GPUCC_660 is not set # CONFIG_QCS_TURING_404 is not set # CONFIG_QCS_Q6SSTOP_404 is not set +# CONFIG_QDU_GCC_1000 is not set CONFIG_SDM_GCC_845=y CONFIG_SDM_GPUCC_845=y CONFIG_SDM_VIDEOCC_845=y CONFIG_SDM_DISPCC_845=y CONFIG_SDM_LPASSCC_845=y -# CONFIG_SDX_GCC_55 is not set -# CONFIG_SDX_GCC_65 is not set +# CONFIG_SDX_GCC_75 is not set +# CONFIG_SM_CAMCC_6350 is not set # CONFIG_SM_CAMCC_8250 is not set # CONFIG_SM_CAMCC_8450 is not set # CONFIG_SM_DISPCC_8250 is not set @@ -6477,20 +6620,31 @@ CONFIG_SDM_LPASSCC_845=y # CONFIG_SM_GCC_6125 is not set # CONFIG_SM_GCC_6350 is not set # CONFIG_SM_GCC_6375 is not set +# CONFIG_SM_GCC_7150 is not set # CONFIG_SM_GCC_8150 is not set CONFIG_SM_GCC_8250=y CONFIG_SM_GCC_8350=y CONFIG_SM_GCC_8450=y +# CONFIG_SM_GCC_8550 is not set +# CONFIG_SM_GPUCC_6115 is not set +# CONFIG_SM_GPUCC_6125 is not set +# CONFIG_SM_GPUCC_6375 is not set # CONFIG_SM_GPUCC_6350 is not set # CONFIG_SM_GPUCC_8150 is not set CONFIG_SM_GPUCC_8250=y # CONFIG_SM_GPUCC_8350 is not set +# CONFIG_SM_GPUCC_8450 is not set +# CONFIG_SM_GPUCC_8550 is not set +# CONFIG_SM_TCSRCC_8550 is not set # CONFIG_SM_VIDEOCC_8150 is not set CONFIG_SM_VIDEOCC_8250=y +# CONFIG_SM_VIDEOCC_8350 is not set +# CONFIG_SM_VIDEOCC_8550 is not set # CONFIG_SPMI_PMIC_CLKDIV is not set CONFIG_QCOM_HFPLL=y # CONFIG_KPSS_XCC is not set CONFIG_CLK_GFM_LPASS_SM8250=m +# CONFIG_SM_VIDEOCC_8450 is not set # CONFIG_XILINX_VCU is not set # CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set CONFIG_HWSPINLOCK=y @@ -6507,7 +6661,6 @@ CONFIG_ARM_ARCH_TIMER_OOL_WORKAROUND=y CONFIG_FSL_ERRATUM_A008585=y CONFIG_HISILICON_ERRATUM_161010101=y CONFIG_ARM64_ERRATUM_858921=y -# CONFIG_MICROCHIP_PIT64B is not set # end of Clock Source drivers CONFIG_MAILBOX=y @@ -6539,6 +6692,7 @@ CONFIG_IOMMU_DEFAULT_DMA_STRICT=y # CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set CONFIG_OF_IOMMU=y CONFIG_IOMMU_DMA=y +# CONFIG_IOMMUFD is not set CONFIG_ARM_SMMU=y # CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT=y @@ -6624,6 +6778,8 @@ CONFIG_FSL_RCPM=y # CONFIG_LITEX_SOC_CONTROLLER is not set # end of Enable LiteX SoC Builder specific drivers +# CONFIG_WPCM450_SOC is not set + # # Qualcomm SoC drivers # @@ -6637,8 +6793,11 @@ CONFIG_QCOM_KRYO_L2_ACCESSORS=y CONFIG_QCOM_MDT_LOADER=y CONFIG_QCOM_OCMEM=y CONFIG_QCOM_PDR_HELPERS=m +# CONFIG_QCOM_PMIC_GLINK is not set CONFIG_QCOM_QMI_HELPERS=y +# CONFIG_QCOM_RAMP_CTRL is not set CONFIG_QCOM_RMTFS_MEM=y +# CONFIG_QCOM_RPM_MASTER_STATS is not set CONFIG_QCOM_RPMH=y CONFIG_QCOM_RPMHPD=y CONFIG_QCOM_RPMPD=y @@ -6740,6 +6899,8 @@ CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 # CONFIG_HID_SENSOR_ACCEL_3D is not set # CONFIG_IIO_CROS_EC_ACCEL_LEGACY is not set # CONFIG_IIO_ST_ACCEL_3AXIS is not set +# CONFIG_IIO_KX022A_SPI is not set +# CONFIG_IIO_KX022A_I2C is not set # CONFIG_KXSD9 is not set # CONFIG_KXCJK1013 is not set # CONFIG_MC3230 is not set @@ -6761,6 +6922,7 @@ CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 # # Analog to digital converters # +# CONFIG_AD4130 is not set # CONFIG_AD7091R5 is not set # CONFIG_AD7124 is not set # CONFIG_AD7192 is not set @@ -6797,6 +6959,7 @@ CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 # CONFIG_MAX11100 is not set # CONFIG_MAX1118 is not set # CONFIG_MAX11205 is not set +# CONFIG_MAX11410 is not set # CONFIG_MAX1241 is not set # CONFIG_MAX1363 is not set CONFIG_MAX9611=m @@ -6820,11 +6983,14 @@ CONFIG_QCOM_SPMI_ADC5=m # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set CONFIG_TI_ADS1015=m +# CONFIG_TI_ADS7924 is not set +# CONFIG_TI_ADS1100 is not set # CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8344 is not set # CONFIG_TI_ADS8688 is not set # CONFIG_TI_ADS124S08 is not set # CONFIG_TI_ADS131E08 is not set +# CONFIG_TI_LMP92064 is not set # CONFIG_TI_TLC4541 is not set # CONFIG_TI_TSC2046 is not set # CONFIG_VF610_ADC is not set @@ -6834,6 +7000,7 @@ CONFIG_TI_ADS1015=m # # Analog to digital and digital to analog converters # +# CONFIG_AD74115 is not set # CONFIG_AD74413R is not set # end of Analog to digital and digital to analog converters @@ -6936,8 +7103,10 @@ CONFIG_IIO_ST_SENSORS_CORE=m # CONFIG_LTC2632 is not set # CONFIG_M62332 is not set # CONFIG_MAX517 is not set +# CONFIG_MAX5522 is not set # CONFIG_MAX5821 is not set # CONFIG_MCP4725 is not set +# CONFIG_MCP4728 is not set # CONFIG_MCP4922 is not set # CONFIG_TI_DAC082S085 is not set # CONFIG_TI_DAC5571 is not set @@ -6972,6 +7141,7 @@ CONFIG_IIO_ST_SENSORS_CORE=m # # CONFIG_ADF4350 is not set # CONFIG_ADF4371 is not set +# CONFIG_ADF4377 is not set # CONFIG_ADMV1013 is not set # CONFIG_ADMV1014 is not set # CONFIG_ADMV4420 is not set @@ -7074,6 +7244,8 @@ CONFIG_SENSORS_ISL29018=m # CONFIG_HID_SENSOR_ALS is not set # CONFIG_HID_SENSOR_PROX is not set # CONFIG_JSA1212 is not set +# CONFIG_ROHM_BU27008 is not set +# CONFIG_ROHM_BU27034 is not set # CONFIG_RPR0521 is not set # CONFIG_LTR501 is not set # CONFIG_LTRF216A is not set @@ -7082,6 +7254,7 @@ CONFIG_SENSORS_ISL29018=m # CONFIG_MAX44009 is not set # CONFIG_NOA1305 is not set # CONFIG_OPT3001 is not set +# CONFIG_OPT4001 is not set # CONFIG_PA12203001 is not set # CONFIG_SI1133 is not set # CONFIG_SI1145 is not set @@ -7121,6 +7294,7 @@ CONFIG_IIO_ST_MAGN_SPI_3AXIS=m # CONFIG_SENSORS_HMC5843_SPI is not set # CONFIG_SENSORS_RM3100_I2C is not set # CONFIG_SENSORS_RM3100_SPI is not set +# CONFIG_TI_TMAG5273 is not set # CONFIG_YAMAHA_YAS530 is not set # end of Magnetometer sensors @@ -7164,6 +7338,7 @@ CONFIG_IIO_ST_MAGN_SPI_3AXIS=m # CONFIG_MCP4531 is not set # CONFIG_MCP41010 is not set # CONFIG_TPL0102 is not set +# CONFIG_X9250 is not set # end of Digital potentiometers # @@ -7186,6 +7361,7 @@ CONFIG_IIO_CROS_EC_BARO=m # CONFIG_MPL115_I2C is not set # CONFIG_MPL115_SPI is not set CONFIG_MPL3115=m +# CONFIG_MPRLS0025PA is not set # CONFIG_MS5611 is not set # CONFIG_MS5637 is not set # CONFIG_IIO_ST_PRESS is not set @@ -7204,6 +7380,7 @@ CONFIG_MPL3115=m # Proximity and distance sensors # # CONFIG_CROS_EC_MKBP_PROXIMITY is not set +# CONFIG_IRSD200 is not set # CONFIG_ISL29501 is not set # CONFIG_LIDAR_LITE_V2 is not set # CONFIG_MB1232 is not set @@ -7239,6 +7416,7 @@ CONFIG_MPL3115=m # CONFIG_TMP117 is not set # CONFIG_TSYS01 is not set # CONFIG_TSYS02D is not set +# CONFIG_MAX30208 is not set # CONFIG_MAX31856 is not set # CONFIG_MAX31865 is not set # end of Temperature sensors @@ -7285,7 +7463,6 @@ CONFIG_RESET_SCMI=y # CONFIG_GENERIC_PHY=y CONFIG_GENERIC_PHY_MIPI_DPHY=y -CONFIG_PHY_XGENE=y # CONFIG_PHY_CAN_TRANSCEIVER is not set # @@ -7311,13 +7488,23 @@ CONFIG_PHY_QCOM_EDP=m # CONFIG_PHY_QCOM_IPQ806X_SATA is not set CONFIG_PHY_QCOM_PCIE2=m CONFIG_PHY_QCOM_QMP=y +CONFIG_PHY_QCOM_QMP_COMBO=y +CONFIG_PHY_QCOM_QMP_PCIE=y +CONFIG_PHY_QCOM_QMP_PCIE_8996=y +CONFIG_PHY_QCOM_QMP_UFS=y +CONFIG_PHY_QCOM_QMP_USB=y +# CONFIG_PHY_QCOM_QMP_USB_LEGACY is not set CONFIG_PHY_QCOM_QUSB2=y +# CONFIG_PHY_QCOM_SNPS_EUSB2 is not set +# CONFIG_PHY_QCOM_EUSB2_REPEATER is not set +# CONFIG_PHY_QCOM_M31_USB is not set CONFIG_PHY_QCOM_USB_HS=m CONFIG_PHY_QCOM_USB_SNPS_FEMTO_V2=y # CONFIG_PHY_QCOM_USB_HSIC is not set CONFIG_PHY_QCOM_USB_HS_28NM=m CONFIG_PHY_QCOM_USB_SS=m # CONFIG_PHY_QCOM_IPQ806X_USB is not set +# CONFIG_PHY_QCOM_SGMII_ETH is not set # CONFIG_PHY_SAMSUNG_USB2 is not set # CONFIG_PHY_TUSB1210 is not set # end of PHY Subsystem @@ -7334,10 +7521,13 @@ CONFIG_ARM_CCI5xx_PMU=y CONFIG_ARM_CCN=m CONFIG_ARM_CMN=m CONFIG_ARM_PMU=y +# CONFIG_ARM_SMMU_V3_PMU is not set +CONFIG_ARM_PMUV3=y CONFIG_ARM_DSU_PMU=m CONFIG_ARM_SPE_PMU=m # CONFIG_HISI_PCIE_PMU is not set # CONFIG_HNS3_PMU is not set +# CONFIG_ARM_CORESIGHT_PMU_ARCH_SYSTEM_PMU is not set # end of Performance monitor support CONFIG_RAS=y @@ -7357,7 +7547,16 @@ CONFIG_DAX=y # CONFIG_DEV_DAX is not set CONFIG_NVMEM=y CONFIG_NVMEM_SYSFS=y + +# +# Layout Types +# +# CONFIG_NVMEM_LAYOUT_SL28_VPD is not set +# CONFIG_NVMEM_LAYOUT_ONIE_TLV is not set +# end of Layout Types + CONFIG_NVMEM_QCOM_QFPROM=y +# CONFIG_NVMEM_QCOM_SEC_QFPROM is not set CONFIG_NVMEM_RMEM=m # CONFIG_NVMEM_SPMI_SDAM is not set # CONFIG_NVMEM_U_BOOT_ENV is not set @@ -7389,9 +7588,11 @@ CONFIG_FPGA_REGION=m CONFIG_OF_FPGA_REGION=m # CONFIG_FPGA_DFL is not set # CONFIG_FPGA_MGR_MICROCHIP_SPI is not set +# CONFIG_FPGA_MGR_LATTICE_SYSCONFIG_SPI is not set # CONFIG_FSI is not set CONFIG_TEE=y CONFIG_OPTEE=y +# CONFIG_OPTEE_INSECURE_LOAD_IMAGE is not set CONFIG_MULTIPLEXER=m # @@ -7418,13 +7619,16 @@ CONFIG_INTERCONNECT_QCOM_MSM8996=m CONFIG_INTERCONNECT_QCOM_OSM_L3=y # CONFIG_INTERCONNECT_QCOM_QCM2290 is not set CONFIG_INTERCONNECT_QCOM_QCS404=m +# CONFIG_INTERCONNECT_QCOM_QDU1000 is not set CONFIG_INTERCONNECT_QCOM_RPMH_POSSIBLE=y CONFIG_INTERCONNECT_QCOM_RPMH=y +# CONFIG_INTERCONNECT_QCOM_SA8775P is not set CONFIG_INTERCONNECT_QCOM_SC7180=y CONFIG_INTERCONNECT_QCOM_SC7280=y # CONFIG_INTERCONNECT_QCOM_SC8180X is not set CONFIG_INTERCONNECT_QCOM_SC8280XP=y # CONFIG_INTERCONNECT_QCOM_SDM660 is not set +# CONFIG_INTERCONNECT_QCOM_SDM670 is not set CONFIG_INTERCONNECT_QCOM_SDM845=y # CONFIG_INTERCONNECT_QCOM_SDX55 is not set # CONFIG_INTERCONNECT_QCOM_SDX65 is not set @@ -7433,11 +7637,14 @@ CONFIG_INTERCONNECT_QCOM_SM8150=m CONFIG_INTERCONNECT_QCOM_SM8250=m CONFIG_INTERCONNECT_QCOM_SM8350=m CONFIG_INTERCONNECT_QCOM_SM8450=m +# CONFIG_INTERCONNECT_QCOM_SM8550 is not set CONFIG_INTERCONNECT_QCOM_SMD_RPM=m +CONFIG_INTERCONNECT_CLK=y # CONFIG_COUNTER is not set # CONFIG_MOST is not set # CONFIG_PECI is not set # CONFIG_HTE is not set +# CONFIG_CDX_BUS is not set # end of Device Drivers # @@ -7446,6 +7653,8 @@ CONFIG_INTERCONNECT_QCOM_SMD_RPM=m CONFIG_DCACHE_WORD_ACCESS=y # CONFIG_VALIDATE_FS_PARSER is not set CONFIG_FS_IOMAP=y +CONFIG_BUFFER_HEAD=y +CONFIG_LEGACY_DIRECT_IO=y # CONFIG_EXT2_FS is not set # CONFIG_EXT3_FS is not set CONFIG_EXT4_FS=m @@ -7492,12 +7701,10 @@ CONFIG_FANOTIFY=y CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y CONFIG_QUOTA=y # CONFIG_QUOTA_NETLINK_INTERFACE is not set -CONFIG_PRINT_QUOTA_WARNING=y # CONFIG_QUOTA_DEBUG is not set # CONFIG_QFMT_V1 is not set # CONFIG_QFMT_V2 is not set CONFIG_QUOTACTL=y -CONFIG_AUTOFS4_FS=y CONFIG_AUTOFS_FS=y CONFIG_FUSE_FS=m CONFIG_CUSE=m @@ -7508,10 +7715,13 @@ CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y # CONFIG_OVERLAY_FS_INDEX is not set # CONFIG_OVERLAY_FS_XINO_AUTO is not set # CONFIG_OVERLAY_FS_METACOPY is not set +# CONFIG_OVERLAY_FS_DEBUG is not set # # Caches # +CONFIG_NETFS_SUPPORT=m +# CONFIG_NETFS_STATS is not set # CONFIG_FSCACHE is not set # end of Caches @@ -7557,10 +7767,10 @@ CONFIG_TMPFS=y CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y # CONFIG_TMPFS_INODE64 is not set +# CONFIG_TMPFS_QUOTA is not set CONFIG_ARCH_SUPPORTS_HUGETLBFS=y CONFIG_HUGETLBFS=y CONFIG_HUGETLB_PAGE=y -CONFIG_MEMFD_CREATE=y CONFIG_ARCH_HAS_GIGANTIC_PAGE=y CONFIG_CONFIGFS_FS=y CONFIG_EFIVAR_FS=y @@ -7581,9 +7791,11 @@ CONFIG_HFSPLUS_FS=m CONFIG_SQUASHFS=y CONFIG_SQUASHFS_FILE_CACHE=y # CONFIG_SQUASHFS_FILE_DIRECT is not set -# CONFIG_SQUASHFS_DECOMP_SINGLE is not set -# CONFIG_SQUASHFS_DECOMP_MULTI is not set -CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y +CONFIG_SQUASHFS_DECOMP_SINGLE=y +# CONFIG_SQUASHFS_CHOICE_DECOMP_BY_MOUNT is not set +CONFIG_SQUASHFS_COMPILE_DECOMP_SINGLE=y +# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI is not set +# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI_PERCPU is not set CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_ZLIB=y CONFIG_SQUASHFS_LZ4=y @@ -7632,6 +7844,7 @@ CONFIG_NFS_V4_2_SSC_HELPER=y CONFIG_SUNRPC=m CONFIG_SUNRPC_GSS=m CONFIG_SUNRPC_BACKCHANNEL=y +CONFIG_RPCSEC_GSS_KRB5=m # CONFIG_SUNRPC_DEBUG is not set # CONFIG_CEPH_FS is not set CONFIG_CIFS=m @@ -7700,6 +7913,7 @@ CONFIG_NLS_ISO8859_1=y # CONFIG_NLS_MAC_ROMANIAN is not set # CONFIG_NLS_MAC_TURKISH is not set CONFIG_NLS_UTF8=m +CONFIG_NLS_UCS2_UTILS=m # CONFIG_DLM is not set # CONFIG_UNICODE is not set CONFIG_IO_WQ=y @@ -7720,7 +7934,6 @@ CONFIG_SECURITYFS=y CONFIG_SECURITY_NETWORK=y # CONFIG_SECURITY_NETWORK_XFRM is not set CONFIG_SECURITY_PATH=y -CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y # CONFIG_HARDENED_USERCOPY is not set # CONFIG_FORTIFY_SOURCE is not set # CONFIG_STATIC_USERMODEHELPER is not set @@ -7769,6 +7982,13 @@ CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y # CONFIG_ZERO_CALL_USED_REGS is not set # end of Memory initialization +# +# Hardening of kernel data structures +# +# CONFIG_LIST_HARDENED is not set +# CONFIG_BUG_ON_DATA_CORRUPTION is not set +# end of Hardening of kernel data structures + CONFIG_RANDSTRUCT_NONE=y # CONFIG_RANDSTRUCT_FULL is not set # CONFIG_RANDSTRUCT_PERFORMANCE is not set @@ -7785,6 +8005,7 @@ CONFIG_CRYPTO_ALGAPI=y CONFIG_CRYPTO_ALGAPI2=y CONFIG_CRYPTO_AEAD=y CONFIG_CRYPTO_AEAD2=y +CONFIG_CRYPTO_SIG2=y CONFIG_CRYPTO_SKCIPHER=y CONFIG_CRYPTO_SKCIPHER2=y CONFIG_CRYPTO_HASH=y @@ -7801,7 +8022,6 @@ CONFIG_CRYPTO_MANAGER=y CONFIG_CRYPTO_MANAGER2=y # CONFIG_CRYPTO_USER is not set CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y -CONFIG_CRYPTO_GF128MUL=y CONFIG_CRYPTO_NULL=y CONFIG_CRYPTO_NULL2=y # CONFIG_CRYPTO_PCRYPT is not set @@ -7873,6 +8093,7 @@ CONFIG_CRYPTO_NHPOLY1305=y CONFIG_CRYPTO_CHACHA20POLY1305=y CONFIG_CRYPTO_CCM=m CONFIG_CRYPTO_GCM=m +CONFIG_CRYPTO_GENIV=y CONFIG_CRYPTO_SEQIV=m CONFIG_CRYPTO_ECHAINIV=y CONFIG_CRYPTO_ESSIV=y @@ -7893,7 +8114,7 @@ CONFIG_CRYPTO_POLY1305=y CONFIG_CRYPTO_SHA1=y CONFIG_CRYPTO_SHA256=y CONFIG_CRYPTO_SHA512=y -CONFIG_CRYPTO_SHA3=m +CONFIG_CRYPTO_SHA3=y CONFIG_CRYPTO_SM3=m CONFIG_CRYPTO_SM3_GENERIC=m # CONFIG_CRYPTO_STREEBOG is not set @@ -7933,6 +8154,7 @@ CONFIG_CRYPTO_DRBG_HMAC=y # CONFIG_CRYPTO_DRBG_CTR is not set CONFIG_CRYPTO_DRBG=y CONFIG_CRYPTO_JITTERENTROPY=y +# CONFIG_CRYPTO_JITTERENTROPY_TESTINTERFACE is not set CONFIG_CRYPTO_KDF800108_CTR=y # end of Random number generation @@ -7975,6 +8197,8 @@ CONFIG_CRYPTO_AES_ARM64_BS=y # CONFIG_CRYPTO_SM4_ARM64_CE_BLK is not set # CONFIG_CRYPTO_SM4_ARM64_NEON_BLK is not set CONFIG_CRYPTO_AES_ARM64_CE_CCM=y +# CONFIG_CRYPTO_SM4_ARM64_CE_CCM is not set +# CONFIG_CRYPTO_SM4_ARM64_CE_GCM is not set CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=y # end of Accelerated Cryptographic Algorithms for CPU (arm64) @@ -7982,6 +8206,7 @@ CONFIG_CRYPTO_HW=y # CONFIG_CRYPTO_DEV_ATMEL_ECC is not set # CONFIG_CRYPTO_DEV_ATMEL_SHA204A is not set # CONFIG_CRYPTO_DEV_CCP is not set +# CONFIG_CRYPTO_DEV_NITROX_CNN55XX is not set # CONFIG_CRYPTO_DEV_QAT_DH895xCC is not set # CONFIG_CRYPTO_DEV_QAT_C3XXX is not set # CONFIG_CRYPTO_DEV_QAT_C62X is not set @@ -7989,7 +8214,6 @@ CONFIG_CRYPTO_HW=y # CONFIG_CRYPTO_DEV_QAT_DH895xCCVF is not set # CONFIG_CRYPTO_DEV_QAT_C3XXXVF is not set # CONFIG_CRYPTO_DEV_QAT_C62XVF is not set -# CONFIG_CRYPTO_DEV_NITROX_CNN55XX is not set # CONFIG_CRYPTO_DEV_CAVIUM_ZIP is not set # CONFIG_CRYPTO_DEV_QCE is not set CONFIG_CRYPTO_DEV_QCOM_RNG=m @@ -8046,6 +8270,7 @@ CONFIG_ARCH_USE_SYM_ANNOTATIONS=y CONFIG_CRYPTO_LIB_UTILS=y CONFIG_CRYPTO_LIB_AES=y CONFIG_CRYPTO_LIB_ARC4=m +CONFIG_CRYPTO_LIB_GF128MUL=y CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y CONFIG_CRYPTO_ARCH_HAVE_LIB_CHACHA=y CONFIG_CRYPTO_LIB_CHACHA_GENERIC=y @@ -8086,7 +8311,7 @@ CONFIG_AUDIT_COMPAT_GENERIC=y CONFIG_842_COMPRESS=y CONFIG_842_DECOMPRESS=y CONFIG_ZLIB_INFLATE=y -CONFIG_ZLIB_DEFLATE=y +CONFIG_ZLIB_DEFLATE=m CONFIG_LZO_COMPRESS=y CONFIG_LZO_DECOMPRESS=y CONFIG_LZ4_COMPRESS=y @@ -8121,9 +8346,11 @@ CONFIG_INTERVAL_TREE=y CONFIG_XARRAY_MULTI=y CONFIG_ASSOCIATIVE_ARRAY=y CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOPORT=y CONFIG_HAS_IOPORT_MAP=y CONFIG_HAS_DMA=y CONFIG_DMA_OPS=y +CONFIG_NEED_SG_DMA_FLAGS=y CONFIG_NEED_SG_DMA_LENGTH=y CONFIG_NEED_DMA_MAP_STATE=y CONFIG_ARCH_DMA_ADDR_T_64BIT=y @@ -8134,6 +8361,8 @@ CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE=y CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU=y CONFIG_ARCH_HAS_DMA_PREP_COHERENT=y CONFIG_SWIOTLB=y +# CONFIG_SWIOTLB_DYNAMIC is not set +CONFIG_DMA_BOUNCE_UNALIGNED_KMALLOC=y # CONFIG_DMA_RESTRICTED_POOL is not set CONFIG_DMA_NONCOHERENT_MMAP=y CONFIG_DMA_COHERENT_POOL=y @@ -8141,7 +8370,6 @@ CONFIG_DMA_DIRECT_REMAP=y # CONFIG_DMA_API_DEBUG is not set # CONFIG_DMA_MAP_BENCHMARK is not set CONFIG_SGL_ALLOC=y -# CONFIG_FORCE_NR_CPUS is not set CONFIG_CPU_RMAP=y CONFIG_DQL=y CONFIG_GLOB=y @@ -8252,10 +8480,11 @@ CONFIG_ARCH_HAS_DEBUG_WX=y # CONFIG_DEBUG_WX is not set CONFIG_GENERIC_PTDUMP=y # CONFIG_PTDUMP_DEBUGFS is not set -# CONFIG_DEBUG_OBJECTS is not set -# CONFIG_SHRINKER_DEBUG is not set CONFIG_HAVE_DEBUG_KMEMLEAK=y # CONFIG_DEBUG_KMEMLEAK is not set +# CONFIG_PER_VMA_LOCK_STATS is not set +# CONFIG_DEBUG_OBJECTS is not set +# CONFIG_SHRINKER_DEBUG is not set # CONFIG_DEBUG_STACK_USAGE is not set # CONFIG_SCHED_STACK_END_CHECK is not set CONFIG_ARCH_HAS_DEBUG_VM_PGTABLE=y @@ -8286,8 +8515,11 @@ CONFIG_HAVE_ARCH_KFENCE=y CONFIG_PANIC_ON_OOPS_VALUE=0 CONFIG_PANIC_TIMEOUT=0 # CONFIG_SOFTLOCKUP_DETECTOR is not set +CONFIG_HAVE_HARDLOCKUP_DETECTOR_BUDDY=y +# CONFIG_HARDLOCKUP_DETECTOR is not set # CONFIG_DETECT_HUNG_TASK is not set # CONFIG_WQ_WATCHDOG is not set +# CONFIG_WQ_CPU_INTENSIVE_REPORT is not set # CONFIG_TEST_LOCKUP is not set # end of Debug Oops, Lockups and Hangs @@ -8334,12 +8566,9 @@ CONFIG_STACKTRACE=y # CONFIG_DEBUG_PLIST is not set # CONFIG_DEBUG_SG is not set # CONFIG_DEBUG_NOTIFIERS is not set -# CONFIG_BUG_ON_DATA_CORRUPTION is not set # CONFIG_DEBUG_MAPLE_TREE is not set # end of Debug kernel data structures -# CONFIG_DEBUG_CREDENTIALS is not set - # # RCU Debugging # @@ -8348,6 +8577,7 @@ CONFIG_STACKTRACE=y # CONFIG_RCU_REF_SCALE_TEST is not set CONFIG_RCU_CPU_STALL_TIMEOUT=21 CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0 +# CONFIG_RCU_CPU_STALL_CPUTIME is not set CONFIG_RCU_TRACE=y # CONFIG_RCU_EQS_DEBUG is not set # end of RCU Debugging @@ -8357,8 +8587,9 @@ CONFIG_RCU_TRACE=y # CONFIG_LATENCYTOP is not set CONFIG_HAVE_FUNCTION_TRACER=y CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y +CONFIG_HAVE_FUNCTION_GRAPH_RETVAL=y CONFIG_HAVE_DYNAMIC_FTRACE=y -CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_ARGS=y CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y CONFIG_HAVE_SYSCALL_TRACEPOINTS=y CONFIG_HAVE_C_RECORDMCOUNT=y @@ -8366,6 +8597,8 @@ CONFIG_TRACE_CLOCK=y CONFIG_TRACING_SUPPORT=y # CONFIG_FTRACE is not set # CONFIG_SAMPLES is not set +CONFIG_HAVE_SAMPLE_FTRACE_DIRECT=y +CONFIG_HAVE_SAMPLE_FTRACE_DIRECT_MULTI=y CONFIG_STRICT_DEVMEM=y # CONFIG_IO_STRICT_DEVMEM is not set @@ -8386,6 +8619,9 @@ CONFIG_CORESIGHT_CPU_DEBUG=m # CONFIG_CORESIGHT_CPU_DEBUG_DEFAULT_ON is not set CONFIG_CORESIGHT_CTI=m # CONFIG_CORESIGHT_CTI_INTEGRATION_REGS is not set +# CONFIG_CORESIGHT_TPDM is not set +# CONFIG_CORESIGHT_TPDA is not set +# CONFIG_CORESIGHT_DUMMY is not set # end of arm64 Debugging #