arm64: dts: qcom: sm8450: move Soundwire pinctrl to its nodes
authorKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Wed, 13 Dec 2023 16:28:53 +0000 (17:28 +0100)
committerBjorn Andersson <andersson@kernel.org>
Sun, 17 Dec 2023 05:19:14 +0000 (23:19 -0600)
Pin configuration for Soundwire bus should be set in Soundwire
controller nodes, not in the associated macro codec node.  This
placement change should not have big impact in general, because macro
codec is a clock provider for Soundwire controller, thus its devices is
probed first.  However it will have impact for disabled Soundwire buses,
e.g. WSA2, because after this change the pins will be left in default
state.

We also follow similar approach in newer SoCs, like Qualcomm SM8650.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20231213162856.188566-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/sm8450.dtsi

index 9223834021e18007e11b5e331d06982bbe934d50..43e43837fc1181852fc2d7fd7af195d1fd80cb98 100644 (file)
 
                        #clock-cells = <0>;
                        clock-output-names = "wsa2-mclk";
-                       pinctrl-names = "default";
-                       pinctrl-0 = <&wsa2_swr_active>;
                        #sound-dai-cells = <1>;
                };
 
                        clock-names = "iface";
                        label = "WSA2";
 
+                       pinctrl-0 = <&wsa2_swr_active>;
+                       pinctrl-names = "default";
+
                        qcom,din-ports = <2>;
                        qcom,dout-ports = <6>;
 
 
                        #clock-cells = <0>;
                        clock-output-names = "mclk";
-                       pinctrl-names = "default";
-                       pinctrl-0 = <&rx_swr_active>;
                        #sound-dai-cells = <1>;
                };
 
                        qcom,din-ports = <0>;
                        qcom,dout-ports = <5>;
 
+                       pinctrl-0 = <&rx_swr_active>;
+                       pinctrl-names = "default";
+
                        qcom,ports-sinterval-low =      /bits/ 8 <0x03 0x1f 0x1f 0x07 0x00>;
                        qcom,ports-offset1 =            /bits/ 8 <0x00 0x00 0x0b 0x01 0x00>;
                        qcom,ports-offset2 =            /bits/ 8 <0x00 0x00 0x0b 0x00 0x00>;
 
                        #clock-cells = <0>;
                        clock-output-names = "mclk";
-                       pinctrl-names = "default";
-                       pinctrl-0 = <&tx_swr_active>;
                        #sound-dai-cells = <1>;
                };
 
 
                        #clock-cells = <0>;
                        clock-output-names = "mclk";
-                       pinctrl-names = "default";
-                       pinctrl-0 = <&wsa_swr_active>;
                        #sound-dai-cells = <1>;
                };
 
                        clock-names = "iface";
                        label = "WSA";
 
+                       pinctrl-0 = <&wsa_swr_active>;
+                       pinctrl-names = "default";
+
                        qcom,din-ports = <2>;
                        qcom,dout-ports = <6>;
 
                        clock-names = "iface";
                        label = "TX";
 
+                       pinctrl-0 = <&tx_swr_active>;
+                       pinctrl-names = "default";
+
                        qcom,din-ports = <4>;
                        qcom,dout-ports = <0>;
                        qcom,ports-sinterval-low =      /bits/ 8 <0x01 0x01 0x03 0x03>;