blob: a2954d466a73bf2f8d7569ea7e9fb1f806d5d818 [file] [log] [blame]
Stefan Wahrend1b22372021-08-07 13:06:39 +02001// SPDX-License-Identifier: GPL-2.0
2/dts-v1/;
3#include "bcm2711.dtsi"
4#include "bcm2711-rpi.dtsi"
5#include "bcm283x-rpi-wifi-bt.dtsi"
6
7/ {
8 compatible = "raspberrypi,4-compute-module", "brcm,bcm2711";
9
10 chosen {
11 /* 8250 auxiliary UART instead of pl011 */
12 stdout-path = "serial1:115200n8";
13 };
14
15 sd_io_1v8_reg: sd_io_1v8_reg {
16 compatible = "regulator-gpio";
17 regulator-name = "vdd-sd-io";
18 regulator-min-microvolt = <1800000>;
19 regulator-max-microvolt = <3300000>;
20 regulator-boot-on;
21 regulator-always-on;
22 regulator-settling-time-us = <5000>;
23 gpios = <&expgpio 4 GPIO_ACTIVE_HIGH>;
24 states = <1800000 0x1>,
25 <3300000 0x0>;
26 status = "okay";
27 };
28
29 sd_vcc_reg: sd_vcc_reg {
30 compatible = "regulator-fixed";
31 regulator-name = "vcc-sd";
32 regulator-min-microvolt = <3300000>;
33 regulator-max-microvolt = <3300000>;
34 regulator-boot-on;
35 enable-active-high;
36 gpio = <&expgpio 6 GPIO_ACTIVE_HIGH>;
37 };
38};
39
40&bt {
41 shutdown-gpios = <&expgpio 0 GPIO_ACTIVE_HIGH>;
42};
43
44/* EMMC2 is used to drive the eMMC */
45&emmc2 {
46 bus-width = <8>;
47 vqmmc-supply = <&sd_io_1v8_reg>;
48 vmmc-supply = <&sd_vcc_reg>;
49 broken-cd;
50 /* Even the IP block is limited to 100 MHz
51 * this provides a throughput gain
52 */
53 mmc-hs200-1_8v;
54 status = "okay";
55};
56
57&expgpio {
58 gpio-line-names = "BT_ON",
59 "WL_ON",
60 "PWR_LED_OFF",
61 "ANT1",
62 "VDD_SD_IO_SEL",
63 "CAM_GPIO",
64 "SD_PWR_ON",
65 "ANT2";
66
67 ant1: ant1-hog {
68 gpio-hog;
69 gpios = <3 GPIO_ACTIVE_HIGH>;
70 /* internal antenna enabled */
71 output-high;
72 line-name = "ant1";
73 };
74
75 ant2: ant2-hog {
76 gpio-hog;
77 gpios = <7 GPIO_ACTIVE_HIGH>;
78 /* external antenna disabled */
79 output-low;
80 line-name = "ant2";
81 };
82};
83
84&genet {
85 phy-handle = <&phy1>;
86 phy-mode = "rgmii-rxid";
87 status = "okay";
88};
89
90&genet_mdio {
91 phy1: ethernet-phy@0 {
92 /* No PHY interrupt */
93 reg = <0x0>;
94 };
95};
96
97/* uart0 communicates with the BT module */
98&uart0 {
99 pinctrl-names = "default";
100 pinctrl-0 = <&uart0_ctsrts_gpio30 &uart0_gpio32>;
101 uart-has-rtscts;
102};
103
104/* uart1 is mapped to the pin header */
105&uart1 {
106 pinctrl-names = "default";
107 pinctrl-0 = <&uart1_gpio14>;
108 status = "okay";
109};
110
111&wifi_pwrseq {
112 reset-gpios = <&expgpio 1 GPIO_ACTIVE_LOW>;
113};