The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/src/arm/bcm2711-rpi-4-b.dts

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

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

Cache object: fd7ab45f00e36cd63f30fc151dbdf26b


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.