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