xref: /linux/arch/arm/boot/dts/broadcom/bcm2711-rpi-cm4-io.dts (revision 621cde16e49b3ecf7d59a8106a20aaebfb4a59a9)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0
2724ba675SRob Herring/dts-v1/;
3*a3592faeSFlorian Fainelli#include <dt-bindings/leds/common.h>
4724ba675SRob Herring#include "bcm2711-rpi-cm4.dtsi"
5724ba675SRob Herring#include "bcm283x-rpi-led-deprecated.dtsi"
6724ba675SRob Herring#include "bcm283x-rpi-usb-host.dtsi"
7724ba675SRob Herring
8724ba675SRob Herring/ {
9724ba675SRob Herring	model = "Raspberry Pi Compute Module 4 IO Board";
10724ba675SRob Herring};
11724ba675SRob Herring
12724ba675SRob Herring&ddc0 {
13724ba675SRob Herring	status = "okay";
14724ba675SRob Herring};
15724ba675SRob Herring
16724ba675SRob Herring&ddc1 {
17724ba675SRob Herring	status = "okay";
18724ba675SRob Herring};
19724ba675SRob Herring
20724ba675SRob Herring&gpio {
21724ba675SRob Herring	/*
22724ba675SRob Herring	 * Parts taken from rpi_SCH_4b_4p0_reduced.pdf and
23724ba675SRob Herring	 * the official GPU firmware DT blob.
24724ba675SRob Herring	 *
25724ba675SRob Herring	 * Legend:
26724ba675SRob Herring	 * "FOO" = GPIO line named "FOO" on the schematic
27724ba675SRob Herring	 * "FOO_N" = GPIO line named "FOO" on schematic, active low
28724ba675SRob Herring	 */
29724ba675SRob Herring	gpio-line-names = "ID_SDA",
30724ba675SRob Herring			  "ID_SCL",
31724ba675SRob Herring			  "SDA1",
32724ba675SRob Herring			  "SCL1",
33724ba675SRob Herring			  "GPIO_GCLK",
34724ba675SRob Herring			  "GPIO5",
35724ba675SRob Herring			  "GPIO6",
36724ba675SRob Herring			  "SPI_CE1_N",
37724ba675SRob Herring			  "SPI_CE0_N",
38724ba675SRob Herring			  "SPI_MISO",
39724ba675SRob Herring			  "SPI_MOSI",
40724ba675SRob Herring			  "SPI_SCLK",
41724ba675SRob Herring			  "GPIO12",
42724ba675SRob Herring			  "GPIO13",
43724ba675SRob Herring			  /* Serial port */
44724ba675SRob Herring			  "TXD1",
45724ba675SRob Herring			  "RXD1",
46724ba675SRob Herring			  "GPIO16",
47724ba675SRob Herring			  "GPIO17",
48724ba675SRob Herring			  "GPIO18",
49724ba675SRob Herring			  "GPIO19",
50724ba675SRob Herring			  "GPIO20",
51724ba675SRob Herring			  "GPIO21",
52724ba675SRob Herring			  "GPIO22",
53724ba675SRob Herring			  "GPIO23",
54724ba675SRob Herring			  "GPIO24",
55724ba675SRob Herring			  "GPIO25",
56724ba675SRob Herring			  "GPIO26",
57724ba675SRob Herring			  "GPIO27",
58724ba675SRob Herring			  "RGMII_MDIO",
59724ba675SRob Herring			  "RGMIO_MDC",
60724ba675SRob Herring			  /* Used by BT module */
61724ba675SRob Herring			  "CTS0",
62724ba675SRob Herring			  "RTS0",
63724ba675SRob Herring			  "TXD0",
64724ba675SRob Herring			  "RXD0",
65724ba675SRob Herring			  /* Used by Wifi */
66724ba675SRob Herring			  "SD1_CLK",
67724ba675SRob Herring			  "SD1_CMD",
68724ba675SRob Herring			  "SD1_DATA0",
69724ba675SRob Herring			  "SD1_DATA1",
70724ba675SRob Herring			  "SD1_DATA2",
71724ba675SRob Herring			  "SD1_DATA3",
72724ba675SRob Herring			  /* Shared with SPI flash */
73724ba675SRob Herring			  "PWM0_MISO",
74724ba675SRob Herring			  "PWM1_MOSI",
75724ba675SRob Herring			  "STATUS_LED_G_CLK",
76724ba675SRob Herring			  "SPIFLASH_CE_N",
77724ba675SRob Herring			  "SDA0",
78724ba675SRob Herring			  "SCL0",
79724ba675SRob Herring			  "RGMII_RXCLK",
80724ba675SRob Herring			  "RGMII_RXCTL",
81724ba675SRob Herring			  "RGMII_RXD0",
82724ba675SRob Herring			  "RGMII_RXD1",
83724ba675SRob Herring			  "RGMII_RXD2",
84724ba675SRob Herring			  "RGMII_RXD3",
85724ba675SRob Herring			  "RGMII_TXCLK",
86724ba675SRob Herring			  "RGMII_TXCTL",
87724ba675SRob Herring			  "RGMII_TXD0",
88724ba675SRob Herring			  "RGMII_TXD1",
89724ba675SRob Herring			  "RGMII_TXD2",
90724ba675SRob Herring			  "RGMII_TXD3";
91724ba675SRob Herring};
92724ba675SRob Herring
93724ba675SRob Herring&hdmi0 {
94724ba675SRob Herring	status = "okay";
95724ba675SRob Herring};
96724ba675SRob Herring
97724ba675SRob Herring&hdmi1 {
98724ba675SRob Herring	status = "okay";
99724ba675SRob Herring};
100724ba675SRob Herring
101724ba675SRob Herring&genet {
102724ba675SRob Herring	status = "okay";
103724ba675SRob Herring};
104724ba675SRob Herring
105d72e40d4SUwe Kleine-König&i2c0_1 {
106d72e40d4SUwe Kleine-König	rtc@51 {
107d72e40d4SUwe Kleine-König		/* Attention: An alarm resets the machine */
108d72e40d4SUwe Kleine-König		compatible = "nxp,pcf85063a";
109d72e40d4SUwe Kleine-König		reg = <0x51>;
110d72e40d4SUwe Kleine-König		quartz-load-femtofarads = <7000>;
111d72e40d4SUwe Kleine-König	};
112d72e40d4SUwe Kleine-König};
113d72e40d4SUwe Kleine-König
114*a3592faeSFlorian Fainelli&phy1 {
115*a3592faeSFlorian Fainelli	leds {
116*a3592faeSFlorian Fainelli		#address-cells = <1>;
117*a3592faeSFlorian Fainelli		#size-cells = <0>;
118*a3592faeSFlorian Fainelli
119*a3592faeSFlorian Fainelli		/* LED2 */
120*a3592faeSFlorian Fainelli		led@1 {
121*a3592faeSFlorian Fainelli			reg = <1>;
122*a3592faeSFlorian Fainelli			color = <LED_COLOR_ID_GREEN>;
123*a3592faeSFlorian Fainelli			function = LED_FUNCTION_LAN;
124*a3592faeSFlorian Fainelli			default-state = "keep";
125*a3592faeSFlorian Fainelli		};
126*a3592faeSFlorian Fainelli
127*a3592faeSFlorian Fainelli		/* LED3 */
128*a3592faeSFlorian Fainelli		led@2 {
129*a3592faeSFlorian Fainelli			reg = <2>;
130*a3592faeSFlorian Fainelli			color = <LED_COLOR_ID_AMBER>;
131*a3592faeSFlorian Fainelli			function = LED_FUNCTION_LAN;
132*a3592faeSFlorian Fainelli			default-state = "keep";
133*a3592faeSFlorian Fainelli		};
134*a3592faeSFlorian Fainelli	};
135*a3592faeSFlorian Fainelli};
136*a3592faeSFlorian Fainelli
137724ba675SRob Herring&led_act {
138724ba675SRob Herring	gpios = <&gpio 42 GPIO_ACTIVE_HIGH>;
139724ba675SRob Herring};
140724ba675SRob Herring
141724ba675SRob Herring&leds {
142724ba675SRob Herring	led-pwr {
143724ba675SRob Herring		label = "PWR";
144724ba675SRob Herring		gpios = <&expgpio 2 GPIO_ACTIVE_LOW>;
145724ba675SRob Herring		default-state = "keep";
146724ba675SRob Herring		linux,default-trigger = "default-on";
147724ba675SRob Herring	};
148724ba675SRob Herring};
149724ba675SRob Herring
150724ba675SRob Herring&pixelvalve0 {
151724ba675SRob Herring	status = "okay";
152724ba675SRob Herring};
153724ba675SRob Herring
154724ba675SRob Herring&pixelvalve1 {
155724ba675SRob Herring	status = "okay";
156724ba675SRob Herring};
157724ba675SRob Herring
158724ba675SRob Herring&pixelvalve2 {
159724ba675SRob Herring	status = "okay";
160724ba675SRob Herring};
161724ba675SRob Herring
162724ba675SRob Herring&pixelvalve4 {
163724ba675SRob Herring	status = "okay";
164724ba675SRob Herring};
165724ba675SRob Herring
166724ba675SRob Herring&vc4 {
167724ba675SRob Herring	status = "okay";
168724ba675SRob Herring};
169724ba675SRob Herring
170724ba675SRob Herring&vec {
171724ba675SRob Herring	status = "disabled";
172724ba675SRob Herring};
173