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