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