// 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>; };