| // SPDX-License-Identifier: GPL-2.0 |
| /dts-v1/; |
| #include "bcm2711.dtsi" |
| #include "bcm2711-rpi.dtsi" |
| #include "bcm283x-rpi-wifi-bt.dtsi" |
| |
| / { |
| compatible = "raspberrypi,4-compute-module", "brcm,bcm2711"; |
| |
| chosen { |
| /* 8250 auxiliary UART instead of pl011 */ |
| stdout-path = "serial1:115200n8"; |
| }; |
| |
| sd_io_1v8_reg: sd_io_1v8_reg { |
| compatible = "regulator-gpio"; |
| regulator-name = "vdd-sd-io"; |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <3300000>; |
| regulator-boot-on; |
| regulator-always-on; |
| regulator-settling-time-us = <5000>; |
| gpios = <&expgpio 4 GPIO_ACTIVE_HIGH>; |
| states = <1800000 0x1>, |
| <3300000 0x0>; |
| status = "okay"; |
| }; |
| |
| sd_vcc_reg: sd_vcc_reg { |
| compatible = "regulator-fixed"; |
| regulator-name = "vcc-sd"; |
| regulator-min-microvolt = <3300000>; |
| regulator-max-microvolt = <3300000>; |
| regulator-boot-on; |
| enable-active-high; |
| gpio = <&expgpio 6 GPIO_ACTIVE_HIGH>; |
| }; |
| }; |
| |
| &bt { |
| shutdown-gpios = <&expgpio 0 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| /* EMMC2 is used to drive the eMMC */ |
| &emmc2 { |
| bus-width = <8>; |
| vqmmc-supply = <&sd_io_1v8_reg>; |
| vmmc-supply = <&sd_vcc_reg>; |
| broken-cd; |
| /* Even the IP block is limited to 100 MHz |
| * this provides a throughput gain |
| */ |
| mmc-hs200-1_8v; |
| status = "okay"; |
| }; |
| |
| &expgpio { |
| gpio-line-names = "BT_ON", |
| "WL_ON", |
| "PWR_LED_OFF", |
| "ANT1", |
| "VDD_SD_IO_SEL", |
| "CAM_GPIO", |
| "SD_PWR_ON", |
| "ANT2"; |
| |
| ant1: ant1-hog { |
| gpio-hog; |
| gpios = <3 GPIO_ACTIVE_HIGH>; |
| /* internal antenna enabled */ |
| output-high; |
| line-name = "ant1"; |
| }; |
| |
| ant2: ant2-hog { |
| gpio-hog; |
| gpios = <7 GPIO_ACTIVE_HIGH>; |
| /* external antenna disabled */ |
| output-low; |
| line-name = "ant2"; |
| }; |
| }; |
| |
| &genet { |
| phy-handle = <&phy1>; |
| phy-mode = "rgmii-rxid"; |
| status = "okay"; |
| }; |
| |
| &genet_mdio { |
| phy1: ethernet-phy@0 { |
| /* No PHY interrupt */ |
| reg = <0x0>; |
| }; |
| }; |
| |
| /* uart0 communicates with the BT module */ |
| &uart0 { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&uart0_ctsrts_gpio30 &uart0_gpio32>; |
| uart-has-rtscts; |
| }; |
| |
| /* uart1 is mapped to the pin header */ |
| &uart1 { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&uart1_gpio14>; |
| status = "okay"; |
| }; |
| |
| &wifi_pwrseq { |
| reset-gpios = <&expgpio 1 GPIO_ACTIVE_LOW>; |
| }; |