OSDN Git Service

arm64: tegra: Separate AON pinmux from main pinmux on Tegra194
authorThierry Reding <treding@nvidia.com>
Fri, 4 Nov 2022 14:23:45 +0000 (15:23 +0100)
committerThierry Reding <treding@nvidia.com>
Mon, 21 Nov 2022 12:30:13 +0000 (13:30 +0100)
The registers for the AON pinmux reside in a partition different from
the registers for the main pinmux. Instead of treating them as one and
the same device, split them up so that they are each their own devices.
Also add gpio-ranges properties to the corresponding GPIO controllers
such that the pinmux and GPIO controllers can be paired up properly.

Signed-off-by: Thierry Reding <treding@nvidia.com>
arch/arm64/boot/dts/nvidia/tegra194.dtsi

index 7c9801a..c6c1058 100644 (file)
@@ -86,6 +86,7 @@
                        interrupt-controller;
                        #gpio-cells = <2>;
                        gpio-controller;
+                       gpio-ranges = <&pinmux 0 0 169>;
                };
 
                cbb-noc@2300000 {
 
                pinmux: pinmux@2430000 {
                        compatible = "nvidia,tegra194-pinmux";
-                       reg = <0x2430000 0x17000>,
-                             <0xc300000 0x4000>;
-
+                       reg = <0x2430000 0x17000>;
                        status = "okay";
 
                        pex_rst_c5_out_state: pex_rst_c5_out {
                        #gpio-cells = <2>;
                        interrupt-controller;
                        #interrupt-cells = <2>;
+                       gpio-range = <&pinmux_aon 0 0 30>;
+               };
+
+               pinmux_aon: pinmux@c300000 {
+                       compatible = "nvidia,tegra194-pinmux-aon";
+                       reg = <0xc300000 0x4000>;
+
+                       status = "okay";
                };
 
                pwm4: pwm@c340000 {