Skip to content

Commit 66b2d6e

Browse files
jonhunterthierryreding
authored andcommitted
arm64: tegra: Add DPAUX pinctrl bindings
Add the DPAUX pinctrl states for the DPAUX nodes defining all three possible states of "aux", "i2c" and "off". Also add the 'i2c-bus' node for the DPAUX nodes so that the I2C driver core does not attempt to parse the pinctrl state nodes. Populate the nodes for the pinctrl clients of the DPAUX pin controller. There are two clients for each DPAUX instance, namely the SOR and one of the I2C adapters. The SOR clients may used the DPAUX pins in either AUX or I2C modes and so for these devices we don't define any of the generic pinctrl states (default, idle, etc) because the SOR driver will directly set the state needed. For I2C clients only the I2C mode is used and so we can simplify matters by using the generic pinctrl states for default and idle. Signed-off-by: Jon Hunter <[email protected]> Signed-off-by: Thierry Reding <[email protected]>
1 parent 0f13309 commit 66b2d6e

File tree

1 file changed

+54
-0
lines changed

1 file changed

+54
-0
lines changed

arch/arm64/boot/dts/nvidia/tegra210.dtsi

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,26 @@
3535
resets = <&tegra_car 207>;
3636
reset-names = "dpaux";
3737
status = "disabled";
38+
39+
state_dpaux1_aux: pinmux-aux {
40+
groups = "dpaux-io";
41+
function = "aux";
42+
};
43+
44+
state_dpaux1_i2c: pinmux-i2c {
45+
groups = "dpaux-io";
46+
function = "i2c";
47+
};
48+
49+
state_dpaux1_off: pinmux-off {
50+
groups = "dpaux-io";
51+
function = "off";
52+
};
53+
54+
i2c-bus {
55+
#address-cells = <1>;
56+
#size-cells = <0>;
57+
};
3858
};
3959

4060
vi@54080000 {
@@ -154,6 +174,10 @@
154174
clock-names = "sor", "parent", "dp", "safe";
155175
resets = <&tegra_car 182>;
156176
reset-names = "sor";
177+
pinctrl-0 = <&state_dpaux_aux>;
178+
pinctrl-1 = <&state_dpaux_i2c>;
179+
pinctrl-2 = <&state_dpaux_off>;
180+
pinctrl-names = "aux", "i2c", "off";
157181
status = "disabled";
158182
};
159183

@@ -168,6 +192,10 @@
168192
clock-names = "sor", "parent", "dp", "safe";
169193
resets = <&tegra_car 183>;
170194
reset-names = "sor";
195+
pinctrl-0 = <&state_dpaux1_aux>;
196+
pinctrl-1 = <&state_dpaux1_i2c>;
197+
pinctrl-2 = <&state_dpaux1_off>;
198+
pinctrl-names = "aux", "i2c", "off";
171199
status = "disabled";
172200
};
173201

@@ -181,6 +209,26 @@
181209
resets = <&tegra_car 181>;
182210
reset-names = "dpaux";
183211
status = "disabled";
212+
213+
state_dpaux_aux: pinmux-aux {
214+
groups = "dpaux-io";
215+
function = "aux";
216+
};
217+
218+
state_dpaux_i2c: pinmux-i2c {
219+
groups = "dpaux-io";
220+
function = "i2c";
221+
};
222+
223+
state_dpaux_off: pinmux-off {
224+
groups = "dpaux-io";
225+
function = "off";
226+
};
227+
228+
i2c-bus {
229+
#address-cells = <1>;
230+
#size-cells = <0>;
231+
};
184232
};
185233

186234
isp@54600000 {
@@ -478,6 +526,9 @@
478526
reset-names = "i2c";
479527
dmas = <&apbdma 26>, <&apbdma 26>;
480528
dma-names = "rx", "tx";
529+
pinctrl-0 = <&state_dpaux1_i2c>;
530+
pinctrl-1 = <&state_dpaux1_off>;
531+
pinctrl-names = "default", "idle";
481532
status = "disabled";
482533
};
483534

@@ -508,6 +559,9 @@
508559
reset-names = "i2c";
509560
dmas = <&apbdma 30>, <&apbdma 30>;
510561
dma-names = "rx", "tx";
562+
pinctrl-0 = <&state_dpaux_i2c>;
563+
pinctrl-1 = <&state_dpaux_off>;
564+
pinctrl-names = "default", "idle";
511565
status = "disabled";
512566
};
513567

0 commit comments

Comments
 (0)