]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
arm64: tegra: Add pin control states for I2C on Tegra186
authorThierry Reding <treding@nvidia.com>
Mon, 27 May 2019 10:35:05 +0000 (12:35 +0200)
committerThierry Reding <treding@nvidia.com>
Wed, 5 Jun 2019 08:18:56 +0000 (10:18 +0200)
Two of the Tegra I2C controllers share pads with the DPAUX controllers.
In order for the I2C controllers to use these pads, they have to be set
into I2C mode. Use the I2C and off pin control states defined in the DT
nodes for DPAUX as "default" and "idle" states, respectively. This
ensures that the I2C controller driver can properly configure the pins
when it needs to perform I2C transactions.

Acked-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
arch/arm64/boot/dts/nvidia/tegra186.dtsi

index 8759fcfaf4edf8aa723de48ad2ae4e4bf673d8f4..0f4eacaf5b7758ef71be40f7a4a0605cf221e830 100644 (file)
@@ -173,6 +173,9 @@ dp_aux_ch1_i2c: i2c@3190000 {
                clock-names = "div-clk";
                resets = <&bpmp TEGRA186_RESET_I2C4>;
                reset-names = "i2c";
+               pinctrl-names = "default", "idle";
+               pinctrl-0 = <&state_dpaux1_i2c>;
+               pinctrl-1 = <&state_dpaux1_off>;
                status = "disabled";
        };
 
@@ -201,6 +204,9 @@ dp_aux_ch0_i2c: i2c@31b0000 {
                clock-names = "div-clk";
                resets = <&bpmp TEGRA186_RESET_I2C6>;
                reset-names = "i2c";
+               pinctrl-names = "default", "idle";
+               pinctrl-0 = <&state_dpaux_i2c>;
+               pinctrl-1 = <&state_dpaux_off>;
                status = "disabled";
        };