xref: /linux/arch/arm/boot/dts/broadcom/bcm2835-rpi-b-plus.dts (revision 2a28a5cd11a42c16f92a5c1d4d11ea20227a1606)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0
2724ba675SRob Herring/dts-v1/;
3724ba675SRob Herring#include "bcm2835.dtsi"
4724ba675SRob Herring#include "bcm2835-rpi.dtsi"
5724ba675SRob Herring#include "bcm2835-rpi-common.dtsi"
6724ba675SRob Herring#include "bcm283x-rpi-led-deprecated.dtsi"
7724ba675SRob Herring#include "bcm283x-rpi-smsc9514.dtsi"
8724ba675SRob Herring#include "bcm283x-rpi-usb-host.dtsi"
9724ba675SRob Herring
10724ba675SRob Herring/ {
11724ba675SRob Herring	compatible = "raspberrypi,model-b-plus", "brcm,bcm2835";
12724ba675SRob Herring	model = "Raspberry Pi Model B+";
13724ba675SRob Herring
14724ba675SRob Herring	memory@0 {
15724ba675SRob Herring		device_type = "memory";
16724ba675SRob Herring		reg = <0 0x20000000>;
17724ba675SRob Herring	};
18724ba675SRob Herring};
19724ba675SRob Herring
20724ba675SRob Herring&gpio {
21724ba675SRob Herring	/*
22724ba675SRob Herring	 * Taken from Raspberry-Pi-B-Plus-V1.2-Schematics.pdf
23724ba675SRob Herring	 * RPI-BPLUS sheet 1
24724ba675SRob Herring	 *
25724ba675SRob Herring	 * Legend:
26724ba675SRob Herring	 * "FOO" = GPIO line named "FOO" on the schematic
27724ba675SRob Herring	 * "FOO_N" = GPIO line named "FOO" on schematic, active low
28724ba675SRob Herring	 */
29724ba675SRob Herring	gpio-line-names = "ID_SDA",
30724ba675SRob Herring			  "ID_SCL",
31724ba675SRob Herring			  "SDA1",
32724ba675SRob Herring			  "SCL1",
33724ba675SRob Herring			  "GPIO_GCLK",
34724ba675SRob Herring			  "GPIO5",
35724ba675SRob Herring			  "GPIO6",
36724ba675SRob Herring			  "SPI_CE1_N",
37724ba675SRob Herring			  "SPI_CE0_N",
38724ba675SRob Herring			  "SPI_MISO",
39724ba675SRob Herring			  "SPI_MOSI",
40724ba675SRob Herring			  "SPI_SCLK",
41724ba675SRob Herring			  "GPIO12",
42724ba675SRob Herring			  "GPIO13",
43724ba675SRob Herring			  /* Serial port */
44724ba675SRob Herring			  "TXD0",
45724ba675SRob Herring			  "RXD0",
46724ba675SRob Herring			  "GPIO16",
47724ba675SRob Herring			  "GPIO17",
48724ba675SRob Herring			  "GPIO18",
49724ba675SRob Herring			  "GPIO19",
50724ba675SRob Herring			  "GPIO20",
51724ba675SRob Herring			  "GPIO21",
52724ba675SRob Herring			  "GPIO22",
53724ba675SRob Herring			  "GPIO23",
54724ba675SRob Herring			  "GPIO24",
55724ba675SRob Herring			  "GPIO25",
56724ba675SRob Herring			  "GPIO26",
57724ba675SRob Herring			  "GPIO27",
58724ba675SRob Herring			  "SDA0",
59724ba675SRob Herring			  "SCL0",
60724ba675SRob Herring			  "", /* GPIO30 */
61724ba675SRob Herring			  "LAN_RUN", /* GPIO31 */
62724ba675SRob Herring			  "CAM_GPIO1", /* GPIO32 */
63724ba675SRob Herring			  "", /* GPIO33 */
64724ba675SRob Herring			  "", /* GPIO34 */
65724ba675SRob Herring			  "PWR_LOW_N", /* GPIO35 */
66724ba675SRob Herring			  "", /* GPIO36 */
67724ba675SRob Herring			  "", /* GPIO37 */
68724ba675SRob Herring			  "USB_LIMIT", /* GPIO38 */
69724ba675SRob Herring			  "", /* GPIO39 */
70724ba675SRob Herring			  "PWM0_OUT", /* GPIO40 */
71724ba675SRob Herring			  "CAM_GPIO0", /* GPIO41 */
72724ba675SRob Herring			  "", /* GPIO42 */
73724ba675SRob Herring			  "", /* GPIO43 */
74724ba675SRob Herring			  "ETH_CLK", /* GPIO44 */
75724ba675SRob Herring			  "PWM1_OUT", /* GPIO45 */
76724ba675SRob Herring			  "HDMI_HPD_N",
77724ba675SRob Herring			  "STATUS_LED",
78724ba675SRob Herring			  /* Used by SD Card */
79724ba675SRob Herring			  "SD_CLK_R",
80724ba675SRob Herring			  "SD_CMD_R",
81724ba675SRob Herring			  "SD_DATA0_R",
82724ba675SRob Herring			  "SD_DATA1_R",
83724ba675SRob Herring			  "SD_DATA2_R",
84724ba675SRob Herring			  "SD_DATA3_R";
85724ba675SRob Herring
86*2a28a5cdSStefan Wahren	pinctrl-names = "default";
87724ba675SRob Herring	pinctrl-0 = <&gpioout &alt0 &i2s_alt0>;
88724ba675SRob Herring
89724ba675SRob Herring	/* I2S interface */
90724ba675SRob Herring	i2s_alt0: i2s_alt0 {
91724ba675SRob Herring		brcm,pins = <18 19 20 21>;
92724ba675SRob Herring		brcm,function = <BCM2835_FSEL_ALT0>;
93724ba675SRob Herring	};
94724ba675SRob Herring};
95724ba675SRob Herring
96724ba675SRob Herring&hdmi {
97724ba675SRob Herring	hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>;
98724ba675SRob Herring	power-domains = <&power RPI_POWER_DOMAIN_HDMI>;
99724ba675SRob Herring	status = "okay";
100724ba675SRob Herring};
101724ba675SRob Herring
102724ba675SRob Herring&led_act {
103724ba675SRob Herring	gpios = <&gpio 47 GPIO_ACTIVE_HIGH>;
104724ba675SRob Herring};
105724ba675SRob Herring
106724ba675SRob Herring&leds {
107724ba675SRob Herring	led-pwr {
108724ba675SRob Herring		label = "PWR";
109724ba675SRob Herring		gpios = <&gpio 35 GPIO_ACTIVE_HIGH>;
110724ba675SRob Herring		default-state = "keep";
111724ba675SRob Herring		linux,default-trigger = "default-on";
112724ba675SRob Herring	};
113724ba675SRob Herring};
114724ba675SRob Herring
115724ba675SRob Herring&pwm {
116724ba675SRob Herring	pinctrl-names = "default";
117724ba675SRob Herring	pinctrl-0 = <&pwm0_gpio40 &pwm1_gpio45>;
118724ba675SRob Herring	status = "okay";
119724ba675SRob Herring};
120724ba675SRob Herring
121724ba675SRob Herring&sdhost {
122724ba675SRob Herring	pinctrl-names = "default";
123724ba675SRob Herring	pinctrl-0 = <&sdhost_gpio48>;
124724ba675SRob Herring	bus-width = <4>;
125724ba675SRob Herring	status = "okay";
126724ba675SRob Herring};
127724ba675SRob Herring
128724ba675SRob Herring&uart0 {
129724ba675SRob Herring	pinctrl-names = "default";
130724ba675SRob Herring	pinctrl-0 = <&uart0_gpio14>;
131724ba675SRob Herring	status = "okay";
132724ba675SRob Herring};
133