Linux Audio

Check our new training course

Loading...
Note: File does not exist in v3.1.
  1// SPDX-License-Identifier: GPL-2.0
  2/dts-v1/;
  3#include "bcm2711.dtsi"
  4#include "bcm2711-rpi.dtsi"
  5#include "bcm283x-rpi-led-deprecated.dtsi"
  6#include "bcm283x-rpi-usb-peripheral.dtsi"
  7#include "bcm283x-rpi-wifi-bt.dtsi"
  8
  9/ {
 10	compatible = "raspberrypi,4-model-b", "brcm,bcm2711";
 11	model = "Raspberry Pi 4 Model B";
 12
 13	chosen {
 14		/* 8250 auxiliary UART instead of pl011 */
 15		stdout-path = "serial1:115200n8";
 16	};
 17
 18	sd_io_1v8_reg: regulator-sd-io-1v8 {
 19		compatible = "regulator-gpio";
 20		regulator-name = "vdd-sd-io";
 21		regulator-min-microvolt = <1800000>;
 22		regulator-max-microvolt = <3300000>;
 23		regulator-boot-on;
 24		regulator-always-on;
 25		regulator-settling-time-us = <5000>;
 26		gpios = <&expgpio 4 GPIO_ACTIVE_HIGH>;
 27		states = <1800000 0x1>,
 28			 <3300000 0x0>;
 29		status = "okay";
 30	};
 31
 32	sd_vcc_reg: regulator-sd-vcc {
 33		compatible = "regulator-fixed";
 34		regulator-name = "vcc-sd";
 35		regulator-min-microvolt = <3300000>;
 36		regulator-max-microvolt = <3300000>;
 37		regulator-boot-on;
 38		enable-active-high;
 39		gpio = <&expgpio 6 GPIO_ACTIVE_HIGH>;
 40	};
 41};
 42
 43&bt {
 44	shutdown-gpios = <&expgpio 0 GPIO_ACTIVE_HIGH>;
 45};
 46
 47&ddc0 {
 48	status = "okay";
 49};
 50
 51&ddc1 {
 52	status = "okay";
 53};
 54
 55&expgpio {
 56	gpio-line-names = "BT_ON",		/*  0 */
 57			  "WL_ON",
 58			  "PWR_LED_OFF",
 59			  "GLOBAL_RESET",
 60			  "VDD_SD_IO_SEL",
 61			  "CAM_GPIO",		/*  5 */
 62			  "SD_PWR_ON",
 63			  "";
 64};
 65
 66&gpio {
 67	/*
 68	 * Parts taken from rpi_SCH_4b_4p0_reduced.pdf and
 69	 * the official GPU firmware DT blob.
 70	 *
 71	 * Legend:
 72	 * "FOO" = GPIO line named "FOO" on the schematic
 73	 * "FOO_N" = GPIO line named "FOO" on schematic, active low
 74	 */
 75	gpio-line-names = "ID_SDA",		/*  0 */
 76			  "ID_SCL",
 77			  "SDA1",
 78			  "SCL1",
 79			  "GPIO_GCLK",
 80			  "GPIO5",		/*  5 */
 81			  "GPIO6",
 82			  "SPI_CE1_N",
 83			  "SPI_CE0_N",
 84			  "SPI_MISO",
 85			  "SPI_MOSI",		/* 10 */
 86			  "SPI_SCLK",
 87			  "GPIO12",
 88			  "GPIO13",
 89			  /* Serial port */
 90			  "TXD1",
 91			  "RXD1",		/* 15 */
 92			  "GPIO16",
 93			  "GPIO17",
 94			  "GPIO18",
 95			  "GPIO19",
 96			  "GPIO20",		/* 20 */
 97			  "GPIO21",
 98			  "GPIO22",
 99			  "GPIO23",
100			  "GPIO24",
101			  "GPIO25",		/* 25 */
102			  "GPIO26",
103			  "GPIO27",
104			  "RGMII_MDIO",
105			  "RGMIO_MDC",
106			  /* Used by BT module */
107			  "CTS0",		/* 30 */
108			  "RTS0",
109			  "TXD0",
110			  "RXD0",
111			  /* Used by Wifi */
112			  "SD1_CLK",
113			  "SD1_CMD",		/* 35 */
114			  "SD1_DATA0",
115			  "SD1_DATA1",
116			  "SD1_DATA2",
117			  "SD1_DATA3",
118			  /* Shared with SPI flash */
119			  "PWM0_MISO",		/* 40 */
120			  "PWM1_MOSI",
121			  "STATUS_LED_G_CLK",
122			  "SPIFLASH_CE_N",
123			  "SDA0",
124			  "SCL0",		/* 45 */
125			  "RGMII_RXCLK",
126			  "RGMII_RXCTL",
127			  "RGMII_RXD0",
128			  "RGMII_RXD1",
129			  "RGMII_RXD2",		/* 50 */
130			  "RGMII_RXD3",
131			  "RGMII_TXCLK",
132			  "RGMII_TXCTL",
133			  "RGMII_TXD0",
134			  "RGMII_TXD1",		/* 55 */
135			  "RGMII_TXD2",
136			  "RGMII_TXD3";
137};
138
139&hdmi0 {
140	status = "okay";
141};
142
143&hdmi1 {
144	status = "okay";
145};
146
147&led_act {
148	gpios = <&gpio 42 GPIO_ACTIVE_HIGH>;
149};
150
151&leds {
152	led_pwr: led-pwr {
153		label = "PWR";
154		gpios = <&expgpio 2 GPIO_ACTIVE_LOW>;
155		default-state = "keep";
156		linux,default-trigger = "default-on";
157	};
158};
159
160&pixelvalve0 {
161	status = "okay";
162};
163
164&pixelvalve1 {
165	status = "okay";
166};
167
168&pixelvalve2 {
169	status = "okay";
170};
171
172&pixelvalve4 {
173	status = "okay";
174};
175
176&pwm1 {
177	pinctrl-names = "default";
178	pinctrl-0 = <&pwm1_0_gpio40 &pwm1_1_gpio41>;
179	status = "okay";
180};
181
182/* EMMC2 is used to drive the SD card */
183&emmc2 {
184	vqmmc-supply = <&sd_io_1v8_reg>;
185	vmmc-supply = <&sd_vcc_reg>;
186	broken-cd;
187	status = "okay";
188};
189
190&genet {
191	phy-handle = <&phy1>;
192	phy-mode = "rgmii-rxid";
193	status = "okay";
194};
195
196&genet_mdio {
197	phy1: ethernet-phy@1 {
198		/* No PHY interrupt */
199		reg = <0x1>;
200	};
201};
202
203&pcie0 {
204	pci@0,0 {
205		device_type = "pci";
206		#address-cells = <3>;
207		#size-cells = <2>;
208		ranges;
209
210		reg = <0 0 0 0 0>;
211
212		usb@0,0 {
213			reg = <0 0 0 0 0>;
214			resets = <&reset RASPBERRYPI_FIRMWARE_RESET_ID_USB>;
215		};
216	};
217};
218
219/* uart0 communicates with the BT module */
220&uart0 {
221	pinctrl-names = "default";
222	pinctrl-0 = <&uart0_ctsrts_gpio30 &uart0_gpio32>;
223	uart-has-rtscts;
224};
225
226/* uart1 is mapped to the pin header */
227&uart1 {
228	pinctrl-names = "default";
229	pinctrl-0 = <&uart1_gpio14>;
230	status = "okay";
231};
232
233&vc4 {
234	status = "okay";
235};
236
237&vec {
238	status = "disabled";
239};
240
241&wifi_pwrseq {
242	reset-gpios = <&expgpio 1 GPIO_ACTIVE_LOW>;
243};