Skip to content

Commit 4622323

Browse files
committed
arm64: dts: Sort out CM5 and I/O board I2C ports
There is a difference in I2C usage between CM4IO and CM5IO. Present a simple, consistent view of the world by moving the assignment of the bus IDs into carrier-specific files. CM5 has reduced connectivity on CM4IO - the DPHYs are connected to CAM1 and DISP1. Keep i2c-10 for use with that pair, as is the case for CM4 on CM4IO. Fixes: 36faab6 ("dts: bcm2712-rpi: Add aliases for the CSI/DSI I2Cs") See: #6421 Signed-off-by: Phil Elwell <[email protected]>
1 parent 86099de commit 4622323

8 files changed

+46
-61
lines changed
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
// SPDX-License-Identifier: GPL-2.0
2+
3+
i2c_csi_dsi0: &i2c0 { // Note: For CAM0 and DISP0 connectors
4+
};
5+
6+
i2c_csi_dsi1: &i2c6 { // Note: For CAM1, DISP1, on-board RTC, and fan controller
7+
pinctrl-0 = <&rp1_i2c6_38_39>;
8+
pinctrl-names = "default";
9+
clock-frequency = <100000>;
10+
symlink = "i2c-6";
11+
};
12+
13+
i2c_csi_dsi: &i2c_csi_dsi1 { }; // The connector that needs no jumper to enable
14+
15+
&aliases {
16+
/delete-property/ i2c11;
17+
i2c10 = &i2c_csi_dsi;
18+
};
19+
20+
// The RP1 USB3 interfaces are not usable on CM4IO
21+
22+
&rp1_usb0 {
23+
status = "disabled";
24+
};
25+
26+
&rp1_usb1 {
27+
status = "disabled";
28+
};

arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-cm4io.dts

Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,4 @@
22
/dts-v1/;
33

44
#include "bcm2712-rpi-cm5.dtsi"
5-
6-
// The RP1 USB3 interfaces are not usable on CM4IO
7-
8-
&rp1_usb0 {
9-
status = "disabled";
10-
};
11-
12-
&rp1_usb1 {
13-
status = "disabled";
14-
};
15-
16-
/ {
17-
__overrides__ {
18-
i2c_csi_dsi = <&i2c_csi_dsi>, "status";
19-
};
20-
};
5+
#include "bcm2712-rpi-cm4io.dtsi"

arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-cm5io.dts

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,4 @@
22
/dts-v1/;
33

44
#include "bcm2712-rpi-cm5.dtsi"
5-
6-
/ {
7-
__overrides__ {
8-
i2c_csi_dsi = <&i2c_csi_dsi>, "status";
9-
};
10-
};
5+
#include "bcm2712-rpi-cm5io.dtsi"

arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5.dtsi

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -234,19 +234,6 @@ aux: &dummy {};
234234

235235
#include "bcm2712-rpi.dtsi"
236236

237-
i2c_csi_dsi0: &i2c6 { // Note: This is for MIPI0 connector only
238-
pinctrl-0 = <&rp1_i2c6_38_39>;
239-
pinctrl-names = "default";
240-
clock-frequency = <100000>;
241-
symlink = "i2c-6";
242-
};
243-
244-
i2c_csi_dsi1: &i2c0 { // Note: This is for MIPI1 connector
245-
symlink = "i2c-11";
246-
};
247-
248-
i2c_csi_dsi: &i2c_csi_dsi1 { }; // An alias for compatibility
249-
250237
cam1_reg: &cam0_reg { // Shares CAM_GPIO with cam0_reg
251238
};
252239

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
// SPDX-License-Identifier: GPL-2.0
2+
3+
i2c_csi_dsi1: &i2c0 { // Note: This is for CAM/DISP 1 connector
4+
symlink = "i2c-11";
5+
};
6+
7+
i2c_csi_dsi0: &i2c6 { // Note: This is for CAM/DISP 0 connector
8+
pinctrl-0 = <&rp1_i2c6_38_39>;
9+
pinctrl-names = "default";
10+
clock-frequency = <100000>;
11+
symlink = "i2c-6";
12+
};
13+
14+
i2c_csi_dsi: &i2c_csi_dsi0 { }; // The connector that needs no jumper to enable

arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5l-cm4io.dts

Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,4 @@
22
/dts-v1/;
33

44
#include "bcm2712-rpi-cm5l.dtsi"
5-
6-
// The RP1 USB3 interfaces are not usable on CM4IO
7-
8-
&rp1_usb0 {
9-
status = "disabled";
10-
};
11-
12-
&rp1_usb1 {
13-
status = "disabled";
14-
};
15-
16-
/ {
17-
__overrides__ {
18-
i2c_csi_dsi = <&i2c_csi_dsi>, "status";
19-
};
20-
};
5+
#include "bcm2712-rpi-cm4io.dtsi"

arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5l-cm5io.dts

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,4 @@
22
/dts-v1/;
33

44
#include "bcm2712-rpi-cm5l.dtsi"
5-
6-
/ {
7-
__overrides__ {
8-
i2c_csi_dsi = <&i2c_csi_dsi>, "status";
9-
};
10-
};
5+
#include "bcm2712-rpi-cm5io.dtsi"

arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5l.dtsi

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,6 @@
55

66
/ {
77
model = "Raspberry Pi Compute Module 5 Lite";
8-
9-
__overrides__ {
10-
i2c_csi_dsi = <&i2c_csi_dsi>, "status";
11-
};
128
};
139

1410
&sd_io_1v8_reg {

0 commit comments

Comments
 (0)