0001 // SPDX-License-Identifier: GPL-2.0
0002 /dts-v1/;
0003 #include "bcm2837.dtsi"
0004 #include "bcm2836-rpi.dtsi"
0005 #include "bcm283x-rpi-smsc9514.dtsi"
0006 #include "bcm283x-rpi-usb-host.dtsi"
0007 #include "bcm283x-rpi-wifi-bt.dtsi"
0008
0009 / {
0010 compatible = "raspberrypi,3-model-b", "brcm,bcm2837";
0011 model = "Raspberry Pi 3 Model B";
0012
0013 chosen {
0014 /* 8250 auxiliary UART instead of pl011 */
0015 stdout-path = "serial1:115200n8";
0016 };
0017
0018 memory@0 {
0019 device_type = "memory";
0020 reg = <0 0x40000000>;
0021 };
0022
0023 leds {
0024 led-act {
0025 gpios = <&expgpio 2 GPIO_ACTIVE_HIGH>;
0026 };
0027 };
0028 };
0029
0030 &bt {
0031 shutdown-gpios = <&expgpio 0 GPIO_ACTIVE_HIGH>;
0032 };
0033
0034 &firmware {
0035 expgpio: gpio {
0036 compatible = "raspberrypi,firmware-gpio";
0037 gpio-controller;
0038 #gpio-cells = <2>;
0039 gpio-line-names = "BT_ON",
0040 "WL_ON",
0041 "STATUS_LED",
0042 "LAN_RUN",
0043 "HDMI_HPD_N",
0044 "CAM_GPIO0",
0045 "CAM_GPIO1",
0046 "PWR_LOW_N";
0047 status = "okay";
0048 };
0049 };
0050
0051 &gpio {
0052 /*
0053 * Taken from rpi_SCH_3b_1p2_reduced.pdf and
0054 * the official GPU firmware DT blob.
0055 *
0056 * Legend:
0057 * "FOO" = GPIO line named "FOO" on the schematic
0058 * "FOO_N" = GPIO line named "FOO" on schematic, active low
0059 */
0060 gpio-line-names = "ID_SDA",
0061 "ID_SCL",
0062 "SDA1",
0063 "SCL1",
0064 "GPIO_GCLK",
0065 "GPIO5",
0066 "GPIO6",
0067 "SPI_CE1_N",
0068 "SPI_CE0_N",
0069 "SPI_MISO",
0070 "SPI_MOSI",
0071 "SPI_SCLK",
0072 "GPIO12",
0073 "GPIO13",
0074 /* Serial port */
0075 "TXD1",
0076 "RXD1",
0077 "GPIO16",
0078 "GPIO17",
0079 "GPIO18",
0080 "GPIO19",
0081 "GPIO20",
0082 "GPIO21",
0083 "GPIO22",
0084 "GPIO23",
0085 "GPIO24",
0086 "GPIO25",
0087 "GPIO26",
0088 "GPIO27",
0089 "", /* GPIO 28 */
0090 "LAN_RUN_BOOT",
0091 /* Used by BT module */
0092 "CTS0",
0093 "RTS0",
0094 "TXD0",
0095 "RXD0",
0096 /* Used by Wifi */
0097 "SD1_CLK",
0098 "SD1_CMD",
0099 "SD1_DATA0",
0100 "SD1_DATA1",
0101 "SD1_DATA2",
0102 "SD1_DATA3",
0103 "PWM0_OUT",
0104 "PWM1_OUT",
0105 "ETH_CLK",
0106 "WIFI_CLK",
0107 "SDA0",
0108 "SCL0",
0109 "SMPS_SCL",
0110 "SMPS_SDA",
0111 /* Used by SD Card */
0112 "SD_CLK_R",
0113 "SD_CMD_R",
0114 "SD_DATA0_R",
0115 "SD_DATA1_R",
0116 "SD_DATA2_R",
0117 "SD_DATA3_R";
0118 };
0119
0120 &pwm {
0121 pinctrl-names = "default";
0122 pinctrl-0 = <&pwm0_gpio40 &pwm1_gpio41>;
0123 status = "okay";
0124 };
0125
0126 &hdmi {
0127 hpd-gpios = <&expgpio 4 GPIO_ACTIVE_LOW>;
0128 power-domains = <&power RPI_POWER_DOMAIN_HDMI>;
0129 status = "okay";
0130 };
0131
0132 /* uart0 communicates with the BT module */
0133 &uart0 {
0134 pinctrl-names = "default";
0135 pinctrl-0 = <&uart0_gpio32 &gpclk2_gpio43>;
0136 };
0137
0138 /* uart1 is mapped to the pin header */
0139 &uart1 {
0140 pinctrl-names = "default";
0141 pinctrl-0 = <&uart1_gpio14>;
0142 status = "okay";
0143 };
0144
0145 /* SDHOST is used to drive the SD card */
0146 &sdhost {
0147 pinctrl-names = "default";
0148 pinctrl-0 = <&sdhost_gpio48>;
0149 status = "okay";
0150 bus-width = <4>;
0151 };
0152
0153 &wifi_pwrseq {
0154 reset-gpios = <&expgpio 1 GPIO_ACTIVE_LOW>;
0155 };