162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci/dts-v1/;
362306a36Sopenharmony_ci#include "bcm2711-rpi-cm4.dtsi"
462306a36Sopenharmony_ci#include "bcm283x-rpi-led-deprecated.dtsi"
562306a36Sopenharmony_ci#include "bcm283x-rpi-usb-host.dtsi"
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci/ {
862306a36Sopenharmony_ci	model = "Raspberry Pi Compute Module 4 IO Board";
962306a36Sopenharmony_ci};
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci&ddc0 {
1262306a36Sopenharmony_ci	status = "okay";
1362306a36Sopenharmony_ci};
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_ci&ddc1 {
1662306a36Sopenharmony_ci	status = "okay";
1762306a36Sopenharmony_ci};
1862306a36Sopenharmony_ci
1962306a36Sopenharmony_ci&gpio {
2062306a36Sopenharmony_ci	/*
2162306a36Sopenharmony_ci	 * Parts taken from rpi_SCH_4b_4p0_reduced.pdf and
2262306a36Sopenharmony_ci	 * the official GPU firmware DT blob.
2362306a36Sopenharmony_ci	 *
2462306a36Sopenharmony_ci	 * Legend:
2562306a36Sopenharmony_ci	 * "FOO" = GPIO line named "FOO" on the schematic
2662306a36Sopenharmony_ci	 * "FOO_N" = GPIO line named "FOO" on schematic, active low
2762306a36Sopenharmony_ci	 */
2862306a36Sopenharmony_ci	gpio-line-names = "ID_SDA",
2962306a36Sopenharmony_ci			  "ID_SCL",
3062306a36Sopenharmony_ci			  "SDA1",
3162306a36Sopenharmony_ci			  "SCL1",
3262306a36Sopenharmony_ci			  "GPIO_GCLK",
3362306a36Sopenharmony_ci			  "GPIO5",
3462306a36Sopenharmony_ci			  "GPIO6",
3562306a36Sopenharmony_ci			  "SPI_CE1_N",
3662306a36Sopenharmony_ci			  "SPI_CE0_N",
3762306a36Sopenharmony_ci			  "SPI_MISO",
3862306a36Sopenharmony_ci			  "SPI_MOSI",
3962306a36Sopenharmony_ci			  "SPI_SCLK",
4062306a36Sopenharmony_ci			  "GPIO12",
4162306a36Sopenharmony_ci			  "GPIO13",
4262306a36Sopenharmony_ci			  /* Serial port */
4362306a36Sopenharmony_ci			  "TXD1",
4462306a36Sopenharmony_ci			  "RXD1",
4562306a36Sopenharmony_ci			  "GPIO16",
4662306a36Sopenharmony_ci			  "GPIO17",
4762306a36Sopenharmony_ci			  "GPIO18",
4862306a36Sopenharmony_ci			  "GPIO19",
4962306a36Sopenharmony_ci			  "GPIO20",
5062306a36Sopenharmony_ci			  "GPIO21",
5162306a36Sopenharmony_ci			  "GPIO22",
5262306a36Sopenharmony_ci			  "GPIO23",
5362306a36Sopenharmony_ci			  "GPIO24",
5462306a36Sopenharmony_ci			  "GPIO25",
5562306a36Sopenharmony_ci			  "GPIO26",
5662306a36Sopenharmony_ci			  "GPIO27",
5762306a36Sopenharmony_ci			  "RGMII_MDIO",
5862306a36Sopenharmony_ci			  "RGMIO_MDC",
5962306a36Sopenharmony_ci			  /* Used by BT module */
6062306a36Sopenharmony_ci			  "CTS0",
6162306a36Sopenharmony_ci			  "RTS0",
6262306a36Sopenharmony_ci			  "TXD0",
6362306a36Sopenharmony_ci			  "RXD0",
6462306a36Sopenharmony_ci			  /* Used by Wifi */
6562306a36Sopenharmony_ci			  "SD1_CLK",
6662306a36Sopenharmony_ci			  "SD1_CMD",
6762306a36Sopenharmony_ci			  "SD1_DATA0",
6862306a36Sopenharmony_ci			  "SD1_DATA1",
6962306a36Sopenharmony_ci			  "SD1_DATA2",
7062306a36Sopenharmony_ci			  "SD1_DATA3",
7162306a36Sopenharmony_ci			  /* Shared with SPI flash */
7262306a36Sopenharmony_ci			  "PWM0_MISO",
7362306a36Sopenharmony_ci			  "PWM1_MOSI",
7462306a36Sopenharmony_ci			  "STATUS_LED_G_CLK",
7562306a36Sopenharmony_ci			  "SPIFLASH_CE_N",
7662306a36Sopenharmony_ci			  "SDA0",
7762306a36Sopenharmony_ci			  "SCL0",
7862306a36Sopenharmony_ci			  "RGMII_RXCLK",
7962306a36Sopenharmony_ci			  "RGMII_RXCTL",
8062306a36Sopenharmony_ci			  "RGMII_RXD0",
8162306a36Sopenharmony_ci			  "RGMII_RXD1",
8262306a36Sopenharmony_ci			  "RGMII_RXD2",
8362306a36Sopenharmony_ci			  "RGMII_RXD3",
8462306a36Sopenharmony_ci			  "RGMII_TXCLK",
8562306a36Sopenharmony_ci			  "RGMII_TXCTL",
8662306a36Sopenharmony_ci			  "RGMII_TXD0",
8762306a36Sopenharmony_ci			  "RGMII_TXD1",
8862306a36Sopenharmony_ci			  "RGMII_TXD2",
8962306a36Sopenharmony_ci			  "RGMII_TXD3";
9062306a36Sopenharmony_ci};
9162306a36Sopenharmony_ci
9262306a36Sopenharmony_ci&hdmi0 {
9362306a36Sopenharmony_ci	status = "okay";
9462306a36Sopenharmony_ci};
9562306a36Sopenharmony_ci
9662306a36Sopenharmony_ci&hdmi1 {
9762306a36Sopenharmony_ci	status = "okay";
9862306a36Sopenharmony_ci};
9962306a36Sopenharmony_ci
10062306a36Sopenharmony_ci&genet {
10162306a36Sopenharmony_ci	status = "okay";
10262306a36Sopenharmony_ci};
10362306a36Sopenharmony_ci
10462306a36Sopenharmony_ci&led_act {
10562306a36Sopenharmony_ci	gpios = <&gpio 42 GPIO_ACTIVE_HIGH>;
10662306a36Sopenharmony_ci};
10762306a36Sopenharmony_ci
10862306a36Sopenharmony_ci&leds {
10962306a36Sopenharmony_ci	led-pwr {
11062306a36Sopenharmony_ci		label = "PWR";
11162306a36Sopenharmony_ci		gpios = <&expgpio 2 GPIO_ACTIVE_LOW>;
11262306a36Sopenharmony_ci		default-state = "keep";
11362306a36Sopenharmony_ci		linux,default-trigger = "default-on";
11462306a36Sopenharmony_ci	};
11562306a36Sopenharmony_ci};
11662306a36Sopenharmony_ci
11762306a36Sopenharmony_ci&pixelvalve0 {
11862306a36Sopenharmony_ci	status = "okay";
11962306a36Sopenharmony_ci};
12062306a36Sopenharmony_ci
12162306a36Sopenharmony_ci&pixelvalve1 {
12262306a36Sopenharmony_ci	status = "okay";
12362306a36Sopenharmony_ci};
12462306a36Sopenharmony_ci
12562306a36Sopenharmony_ci&pixelvalve2 {
12662306a36Sopenharmony_ci	status = "okay";
12762306a36Sopenharmony_ci};
12862306a36Sopenharmony_ci
12962306a36Sopenharmony_ci&pixelvalve4 {
13062306a36Sopenharmony_ci	status = "okay";
13162306a36Sopenharmony_ci};
13262306a36Sopenharmony_ci
13362306a36Sopenharmony_ci&vc4 {
13462306a36Sopenharmony_ci	status = "okay";
13562306a36Sopenharmony_ci};
13662306a36Sopenharmony_ci
13762306a36Sopenharmony_ci&vec {
13862306a36Sopenharmony_ci	status = "disabled";
13962306a36Sopenharmony_ci};
140