summaryrefslogtreecommitdiff
path: root/arch/arm/boot/dts/aspeed-bmc-ibm-rainier.dts
diff options
context:
space:
mode:
authorAndrew Jeffery <andrew@aj.id.au>2020-07-24 16:22:27 +0930
committerJoel Stanley <joel@jms.id.au>2020-07-28 09:02:07 +0930
commitc5b6bdabceffcdc5058fb0048592e5a68bb814d9 (patch)
treec5d60cf2310713b12b71cfbd1793b1749c7a70b0 /arch/arm/boot/dts/aspeed-bmc-ibm-rainier.dts
parente6873087cce622bf5af5b519bdf781d086f6b2f4 (diff)
ARM: dts: rainier: Describe GPIO mux on I2C3
We have a 4-bus mux whose output is selected by two GPIO inputs. Wire it up in the devicetree and ensure the output is enabled by hogging the appropriate line. Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Signed-off-by: Joel Stanley <joel@jms.id.au>
Diffstat (limited to 'arch/arm/boot/dts/aspeed-bmc-ibm-rainier.dts')
-rw-r--r--arch/arm/boot/dts/aspeed-bmc-ibm-rainier.dts46
1 files changed, 46 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/aspeed-bmc-ibm-rainier.dts b/arch/arm/boot/dts/aspeed-bmc-ibm-rainier.dts
index e91f3bc7a0c2..d20cdf3cd55c 100644
--- a/arch/arm/boot/dts/aspeed-bmc-ibm-rainier.dts
+++ b/arch/arm/boot/dts/aspeed-bmc-ibm-rainier.dts
@@ -12,6 +12,10 @@
aliases {
serial4 = &uart5;
+ i2c16 = &i2c2mux0;
+ i2c17 = &i2c2mux1;
+ i2c18 = &i2c2mux2;
+ i2c19 = &i2c2mux3;
};
chosen {
@@ -68,6 +72,41 @@
};
};
+ i2c2mux: i2cmux {
+ compatible = "i2c-mux-gpio";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ i2c-parent = <&i2c2>;
+ mux-gpios = <&gpio0 ASPEED_GPIO(G, 4) GPIO_ACTIVE_HIGH>,
+ <&gpio0 ASPEED_GPIO(G, 5) GPIO_ACTIVE_HIGH>;
+ idle-state = <0>;
+
+ i2c2mux0: i2c@0 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0>;
+ };
+
+ i2c2mux1: i2c@1 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <1>;
+ };
+
+ i2c2mux2: i2c@2 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <2>;
+ };
+
+ i2c2mux3: i2c@3 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <3>;
+ };
+ };
};
&gpio0 {
@@ -109,6 +148,13 @@
output-high;
line-name = "mclr_vpp";
};
+
+ i2c3_mux_oe_n {
+ gpio-hog;
+ gpios = <ASPEED_GPIO(G, 6) GPIO_ACTIVE_LOW>;
+ output-high;
+ line-name = "I2C3_MUX_OE_N";
+ };
};
&emmc_controller {