arm64: dts: qcom: sc7280: Mark some nodes as 'reserved'
authorLuca Weiss <luca.weiss@fairphone.com>
Tue, 19 Sep 2023 12:45:55 +0000 (14:45 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 25 Jan 2024 23:35:21 +0000 (15:35 -0800)
[ Upstream commit 6da24ba932082bae110feb917a64bb54637fa7c0 ]

With the standard Qualcomm TrustZone setup, components such as lpasscc,
pdc_reset and watchdog shouldn't be touched by Linux. Mark them with
the status 'reserved' and reenable them in the chrome-common dtsi.

Signed-off-by: Luca Weiss <luca.weiss@fairphone.com>
Link: https://lore.kernel.org/r/20230919-fp5-initial-v2-1-14bb7cedadf5@fairphone.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Stable-dep-of: 6897fac411db ("arm64: dts: qcom: sc7280: Make watchdog bark interrupt edge triggered")
Signed-off-by: Sasha Levin <sashal@kernel.org>
arch/arm64/boot/dts/qcom/sc7280-chrome-common.dtsi
arch/arm64/boot/dts/qcom/sc7280.dtsi

index 2e1cd21..5d462ae 100644 (file)
        };
 };
 
+&lpass_aon {
+       status = "okay";
+};
+
+&lpass_core {
+       status = "okay";
+};
+
+&lpass_hm {
+       status = "okay";
+};
+
+&lpasscc {
+       status = "okay";
+};
+
+&pdc_reset {
+       status = "okay";
+};
+
 /* The PMIC PON code isn't compatible w/ how Chrome EC/BIOS handle things. */
 &pmk8350_pon {
        status = "disabled";
        dma-coherent;
 };
 
+&watchdog {
+       status = "okay";
+};
+
 &wifi {
        status = "okay";
 
index 91bb58c..6f2a8f6 100644 (file)
                        clocks = <&gcc GCC_CFG_NOC_LPASS_CLK>;
                        clock-names = "iface";
                        #clock-cells = <1>;
+                       status = "reserved"; /* Owned by ADSP firmware */
                };
 
                lpass_rx_macro: codec@3200000 {
                        clock-names = "bi_tcxo", "bi_tcxo_ao", "iface";
                        #clock-cells = <1>;
                        #power-domain-cells = <1>;
+                       status = "reserved"; /* Owned by ADSP firmware */
                };
 
                lpass_core: clock-controller@3900000 {
                        power-domains = <&lpass_hm LPASS_CORE_CC_LPASS_CORE_HM_GDSC>;
                        #clock-cells = <1>;
                        #power-domain-cells = <1>;
+                       status = "reserved"; /* Owned by ADSP firmware */
                };
 
                lpass_cpu: audio@3987000 {
                        clock-names = "bi_tcxo";
                        #clock-cells = <1>;
                        #power-domain-cells = <1>;
+                       status = "reserved"; /* Owned by ADSP firmware */
                };
 
                lpass_ag_noc: interconnect@3c40000 {
                        compatible = "qcom,sc7280-pdc-global";
                        reg = <0 0x0b5e0000 0 0x20000>;
                        #reset-cells = <1>;
+                       status = "reserved"; /* Owned by firmware */
                };
 
                tsens0: thermal-sensor@c263000 {
                        };
                };
 
-               watchdog@17c10000 {
+               watchdog: watchdog@17c10000 {
                        compatible = "qcom,apss-wdt-sc7280", "qcom,kpss-wdt";
                        reg = <0 0x17c10000 0 0x1000>;
                        clocks = <&sleep_clk>;
                        interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>;
+                       status = "reserved"; /* Owned by Gunyah hyp */
                };
 
                timer@17c20000 {