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