summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJie Zhang <[email protected]>2026-04-02 13:13:16 -0400
committerTom Rini <[email protected]>2026-06-11 11:58:28 -0600
commit38c49e01a01d444c78ce3d94fbf0d1a6bf3779ff (patch)
tree664a4d4738f13229c82c6557a923d9f199d11529
parent53e9c41847c24b422ecd21421204d4e6a0c07d76 (diff)
arm: dts: add/fix I2C controllers for sc5xx
sc59x processors have 6 I2C controllers, but their devicetrees currently have only 3. The length of its register block should be 0x100 instead of 0x1000. All I2C nodes should be disabled in sc5xx.dtsi. They can be enabled in board devicetree files if they are used on the boards. Add missing I2C controllers and fix the above issues. Signed-off-by: Jie Zhang <[email protected]>
-rw-r--r--arch/arm/dts/sc573-ezlite.dts2
-rw-r--r--arch/arm/dts/sc584-ezkit.dts2
-rw-r--r--arch/arm/dts/sc589-ezkit.dts2
-rw-r--r--arch/arm/dts/sc594-som.dtsi13
-rw-r--r--arch/arm/dts/sc598-som-revD.dtsi2
-rw-r--r--arch/arm/dts/sc598-som-revE.dtsi2
-rw-r--r--arch/arm/dts/sc598-som.dtsi12
-rw-r--r--arch/arm/dts/sc59x.dtsi30
-rw-r--r--arch/arm/dts/sc5xx.dtsi12
9 files changed, 71 insertions, 6 deletions
diff --git a/arch/arm/dts/sc573-ezlite.dts b/arch/arm/dts/sc573-ezlite.dts
index 57604d707f7..f128c4f9697 100644
--- a/arch/arm/dts/sc573-ezlite.dts
+++ b/arch/arm/dts/sc573-ezlite.dts
@@ -14,6 +14,8 @@
};
&i2c0 {
+ status = "okay";
+
gpio_expander0: mcp23017@21 {
compatible = "microchip,mcp23017";
reg = <0x21>;
diff --git a/arch/arm/dts/sc584-ezkit.dts b/arch/arm/dts/sc584-ezkit.dts
index 176faa50672..3a6d60b3f29 100644
--- a/arch/arm/dts/sc584-ezkit.dts
+++ b/arch/arm/dts/sc584-ezkit.dts
@@ -13,6 +13,8 @@
};
&i2c2 {
+ status = "okay";
+
gpio_expander0: mcp23017@21 {
compatible = "microchip,mcp23017";
reg = <0x21>;
diff --git a/arch/arm/dts/sc589-ezkit.dts b/arch/arm/dts/sc589-ezkit.dts
index d8eb5b6f8fe..04ad8e44cbb 100644
--- a/arch/arm/dts/sc589-ezkit.dts
+++ b/arch/arm/dts/sc589-ezkit.dts
@@ -17,6 +17,8 @@
&i2c0 {
#address-cells = <1>;
#size-cells = <0>;
+ status = "okay";
+
gpio_expander0: mcp23017@21 {
compatible = "microchip,mcp23017";
reg = <0x21>;
diff --git a/arch/arm/dts/sc594-som.dtsi b/arch/arm/dts/sc594-som.dtsi
index 1c2adc601dd..c4373aea60f 100644
--- a/arch/arm/dts/sc594-som.dtsi
+++ b/arch/arm/dts/sc594-som.dtsi
@@ -79,6 +79,7 @@
&i2c2 {
clocks = <&clk ADSP_SC594_CLK_CGU0_SCLK0>;
+ status = "okay";
som_gpio_expander: mcp23017@21 {
compatible = "microchip,mcp23017";
@@ -153,6 +154,18 @@
};
};
+&i2c3 {
+ clocks = <&clk ADSP_SC594_CLK_CGU0_SCLK0>;
+};
+
+&i2c4 {
+ clocks = <&clk ADSP_SC594_CLK_CGU0_SCLK0>;
+};
+
+&i2c5 {
+ clocks = <&clk ADSP_SC594_CLK_CGU0_SCLK0>;
+};
+
&ospi {
status = "okay";
diff --git a/arch/arm/dts/sc598-som-revD.dtsi b/arch/arm/dts/sc598-som-revD.dtsi
index 26e272966ff..06d550b8532 100644
--- a/arch/arm/dts/sc598-som-revD.dtsi
+++ b/arch/arm/dts/sc598-som-revD.dtsi
@@ -8,6 +8,8 @@
#include "sc598-som.dtsi"
&i2c2 {
+ status = "okay";
+
som_gpio_expander: mcp23018@20 {
compatible = "microchip,mcp23018";
reg = <0x20>;
diff --git a/arch/arm/dts/sc598-som-revE.dtsi b/arch/arm/dts/sc598-som-revE.dtsi
index bec504102e7..1f48d52109b 100644
--- a/arch/arm/dts/sc598-som-revE.dtsi
+++ b/arch/arm/dts/sc598-som-revE.dtsi
@@ -8,6 +8,8 @@
#include "sc598-som.dtsi"
&i2c2 {
+ status = "okay";
+
som_gpio_expander: adp5587@34 {
compatible = "adi,adp5587";
reg = <0x34>;
diff --git a/arch/arm/dts/sc598-som.dtsi b/arch/arm/dts/sc598-som.dtsi
index bc212ef25cb..ac1f24c86c3 100644
--- a/arch/arm/dts/sc598-som.dtsi
+++ b/arch/arm/dts/sc598-som.dtsi
@@ -138,6 +138,18 @@
clocks = <&clk ADSP_SC598_CLK_CGU0_SCLK0>;
};
+&i2c3 {
+ clocks = <&clk ADSP_SC598_CLK_CGU0_SCLK0>;
+};
+
+&i2c4 {
+ clocks = <&clk ADSP_SC598_CLK_CGU0_SCLK0>;
+};
+
+&i2c5 {
+ clocks = <&clk ADSP_SC598_CLK_CGU0_SCLK0>;
+};
+
&spi2 {
clocks = <&clk ADSP_SC598_CLK_SPI>;
};
diff --git a/arch/arm/dts/sc59x.dtsi b/arch/arm/dts/sc59x.dtsi
index ff279cca2d1..64e5a1afc53 100644
--- a/arch/arm/dts/sc59x.dtsi
+++ b/arch/arm/dts/sc59x.dtsi
@@ -86,6 +86,36 @@
pinctrl-0 = <&usb0_default>;
status = "disabled";
};
+
+ i2c3: i2c3@31001000 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ compatible = "adi-i2c";
+ reg = <0x31001000 0x100>;
+ clock-names = "i2c";
+ status = "disabled";
+ bootph-pre-ram;
+ };
+
+ i2c4: i2c4@31001100 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ compatible = "adi-i2c";
+ reg = <0x31001100 0x100>;
+ clock-names = "i2c";
+ status = "disabled";
+ bootph-pre-ram;
+ };
+
+ i2c5: i2c5@31001200 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ compatible = "adi-i2c";
+ reg = <0x31001200 0x100>;
+ clock-names = "i2c";
+ status = "disabled";
+ bootph-pre-ram;
+ };
};
};
diff --git a/arch/arm/dts/sc5xx.dtsi b/arch/arm/dts/sc5xx.dtsi
index 072631e34f7..b821deddda7 100644
--- a/arch/arm/dts/sc5xx.dtsi
+++ b/arch/arm/dts/sc5xx.dtsi
@@ -140,9 +140,9 @@
#address-cells = <1>;
#size-cells = <0>;
compatible = "adi-i2c";
- reg = <0x31001400 0x1000>;
+ reg = <0x31001400 0x100>;
clock-names = "i2c";
- status = "okay";
+ status = "disabled";
bootph-pre-ram;
};
@@ -150,9 +150,9 @@
#address-cells = <1>;
#size-cells = <0>;
compatible = "adi-i2c";
- reg = <0x31001500 0x1000>;
+ reg = <0x31001500 0x100>;
clock-names = "i2c";
- status = "okay";
+ status = "disabled";
bootph-pre-ram;
};
@@ -160,9 +160,9 @@
#address-cells = <1>;
#size-cells = <0>;
compatible = "adi-i2c";
- reg = <0x31001600 0x1000>;
+ reg = <0x31001600 0x100>;
clock-names = "i2c";
- status = "okay";
+ status = "disabled";
bootph-pre-ram;
};
};