GNU Linux-libre 4.19.264-gnu1
[releases.git] / arch / arm / boot / dts / bcm2835-rpi-b-plus.dts
1 // SPDX-License-Identifier: GPL-2.0
2 /dts-v1/;
3 #include "bcm2835.dtsi"
4 #include "bcm2835-rpi.dtsi"
5 #include "bcm283x-rpi-smsc9514.dtsi"
6 #include "bcm283x-rpi-usb-host.dtsi"
7
8 / {
9         compatible = "raspberrypi,model-b-plus", "brcm,bcm2835";
10         model = "Raspberry Pi Model B+";
11
12         leds {
13                 act {
14                         gpios = <&gpio 47 GPIO_ACTIVE_HIGH>;
15                 };
16
17                 pwr {
18                         label = "PWR";
19                         gpios = <&gpio 35 GPIO_ACTIVE_HIGH>;
20                         default-state = "keep";
21                         linux,default-trigger = "default-on";
22                 };
23         };
24 };
25
26 &gpio {
27         /*
28          * Taken from Raspberry-Pi-B-Plus-V1.2-Schematics.pdf
29          * RPI-BPLUS sheet 1
30          *
31          * Legend:
32          * "NC" = not connected (no rail from the SoC)
33          * "FOO" = GPIO line named "FOO" on the schematic
34          * "FOO_N" = GPIO line named "FOO" on schematic, active low
35          */
36         gpio-line-names = "SDA0",
37                           "SCL0",
38                           "SDA1",
39                           "SCL1",
40                           "GPIO_GCLK",
41                           "GPIO5",
42                           "GPIO6",
43                           "SPI_CE1_N",
44                           "SPI_CE0_N",
45                           "SPI_MISO",
46                           "SPI_MOSI",
47                           "SPI_SCLK",
48                           "GPIO12",
49                           "GPIO13",
50                           /* Serial port */
51                           "TXD0",
52                           "RXD0",
53                           "GPIO16",
54                           "GPIO17",
55                           "GPIO18",
56                           "GPIO19",
57                           "GPIO20",
58                           "GPIO21",
59                           "GPIO22",
60                           "GPIO23",
61                           "GPIO24",
62                           "GPIO25",
63                           "GPIO26",
64                           "GPIO27",
65                           "SDA0",
66                           "SCL0",
67                           "NC", /* GPIO30 */
68                           "LAN_RUN", /* GPIO31 */
69                           "CAM_GPIO1", /* GPIO32 */
70                           "NC", /* GPIO33 */
71                           "NC", /* GPIO34 */
72                           "PWR_LOW_N", /* GPIO35 */
73                           "NC", /* GPIO36 */
74                           "NC", /* GPIO37 */
75                           "USB_LIMIT", /* GPIO38 */
76                           "NC", /* GPIO39 */
77                           "PWM0_OUT", /* GPIO40 */
78                           "CAM_GPIO0", /* GPIO41 */
79                           "NC", /* GPIO42 */
80                           "NC", /* GPIO43 */
81                           "ETHCLK", /* GPIO44 */
82                           "PWM1_OUT", /* GPIO45 */
83                           "HDMI_HPD_N",
84                           "STATUS_LED",
85                           /* Used by SD Card */
86                           "SD_CLK_R",
87                           "SD_CMD_R",
88                           "SD_DATA0_R",
89                           "SD_DATA1_R",
90                           "SD_DATA2_R",
91                           "SD_DATA3_R";
92
93         pinctrl-0 = <&gpioout &alt0 &i2s_alt0>;
94
95         /* I2S interface */
96         i2s_alt0: i2s_alt0 {
97                 brcm,pins = <18 19 20 21>;
98                 brcm,function = <BCM2835_FSEL_ALT0>;
99         };
100 };
101
102 &hdmi {
103         hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>;
104 };
105
106 &pwm {
107         pinctrl-names = "default";
108         pinctrl-0 = <&pwm0_gpio40 &pwm1_gpio45>;
109         status = "okay";
110 };
111
112 &uart0 {
113         pinctrl-names = "default";
114         pinctrl-0 = <&uart0_gpio14>;
115         status = "okay";
116 };