1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0+
2724ba675SRob Herring/*
3724ba675SRob Herring * Copyright (C) 2017 Stefan Wahren <stefan.wahren@i2se.com>
4724ba675SRob Herring */
5724ba675SRob Herring
6724ba675SRob Herring/dts-v1/;
7724ba675SRob Herring#include "bcm2835.dtsi"
8724ba675SRob Herring#include "bcm2835-rpi.dtsi"
9724ba675SRob Herring#include "bcm2835-rpi-common.dtsi"
10724ba675SRob Herring#include "bcm283x-rpi-led-deprecated.dtsi"
11724ba675SRob Herring#include "bcm283x-rpi-usb-otg.dtsi"
12724ba675SRob Herring#include "bcm283x-rpi-wifi-bt.dtsi"
13724ba675SRob Herring
14724ba675SRob Herring/ {
15724ba675SRob Herring	compatible = "raspberrypi,model-zero-w", "brcm,bcm2835";
16724ba675SRob Herring	model = "Raspberry Pi Zero W";
17724ba675SRob Herring
18724ba675SRob Herring	memory@0 {
19724ba675SRob Herring		device_type = "memory";
20724ba675SRob Herring		reg = <0 0x20000000>;
21724ba675SRob Herring	};
22724ba675SRob Herring
23724ba675SRob Herring	chosen {
24724ba675SRob Herring		/* 8250 auxiliary UART instead of pl011 */
25724ba675SRob Herring		stdout-path = "serial1:115200n8";
26724ba675SRob Herring	};
27724ba675SRob Herring};
28724ba675SRob Herring
29724ba675SRob Herring&bt {
30724ba675SRob Herring	shutdown-gpios = <&gpio 45 GPIO_ACTIVE_HIGH>;
31724ba675SRob Herring};
32724ba675SRob Herring
33724ba675SRob Herring&gpio {
34724ba675SRob Herring	/*
35724ba675SRob Herring	 * This is based on the official GPU firmware DT blob.
36724ba675SRob Herring	 *
37724ba675SRob Herring	 * Legend:
38724ba675SRob Herring	 * "FOO" = GPIO line named "FOO" on the schematic
39724ba675SRob Herring	 * "FOO_N" = GPIO line named "FOO" on schematic, active low
40724ba675SRob Herring	 */
41724ba675SRob Herring	gpio-line-names = "ID_SDA",
42724ba675SRob Herring			  "ID_SCL",
43724ba675SRob Herring			  "SDA1",
44724ba675SRob Herring			  "SCL1",
45724ba675SRob Herring			  "GPIO_GCLK",
46724ba675SRob Herring			  "GPIO5",
47724ba675SRob Herring			  "GPIO6",
48724ba675SRob Herring			  "SPI_CE1_N",
49724ba675SRob Herring			  "SPI_CE0_N",
50724ba675SRob Herring			  "SPI_MISO",
51724ba675SRob Herring			  "SPI_MOSI",
52724ba675SRob Herring			  "SPI_SCLK",
53724ba675SRob Herring			  "GPIO12",
54724ba675SRob Herring			  "GPIO13",
55724ba675SRob Herring			  /* Serial port */
56724ba675SRob Herring			  "TXD0",
57724ba675SRob Herring			  "RXD0",
58724ba675SRob Herring			  "GPIO16",
59724ba675SRob Herring			  "GPIO17",
60724ba675SRob Herring			  "GPIO18",
61724ba675SRob Herring			  "GPIO19",
62724ba675SRob Herring			  "GPIO20",
63724ba675SRob Herring			  "GPIO21",
64724ba675SRob Herring			  "GPIO22",
65724ba675SRob Herring			  "GPIO23",
66724ba675SRob Herring			  "GPIO24",
67724ba675SRob Herring			  "GPIO25",
68724ba675SRob Herring			  "GPIO26",
69724ba675SRob Herring			  "GPIO27",
70724ba675SRob Herring			  "SDA0",
71724ba675SRob Herring			  "SCL0",
72724ba675SRob Herring			  /* Used by BT module */
73724ba675SRob Herring			  "CTS0",
74724ba675SRob Herring			  "RTS0",
75724ba675SRob Herring			  "TXD0",
76724ba675SRob Herring			  "RXD0",
77724ba675SRob Herring			  /* Used by Wifi */
78724ba675SRob Herring			  "SD1_CLK",
79724ba675SRob Herring			  "SD1_CMD",
80724ba675SRob Herring			  "SD1_DATA0",
81724ba675SRob Herring			  "SD1_DATA1",
82724ba675SRob Herring			  "SD1_DATA2",
83724ba675SRob Herring			  "SD1_DATA3",
84724ba675SRob Herring			  "CAM_GPIO1", /* GPIO40 */
85724ba675SRob Herring			  "WL_ON", /* GPIO41 */
86724ba675SRob Herring			  "", /* GPIO42 */
87724ba675SRob Herring			  "WIFI_CLK", /* GPIO43 */
88724ba675SRob Herring			  "CAM_GPIO0", /* GPIO44 */
89724ba675SRob Herring			  "BT_ON", /* GPIO45 */
90724ba675SRob Herring			  "HDMI_HPD_N",
91724ba675SRob Herring			  "STATUS_LED_N",
92724ba675SRob Herring			  /* Used by SD Card */
93724ba675SRob Herring			  "SD_CLK_R",
94724ba675SRob Herring			  "SD_CMD_R",
95724ba675SRob Herring			  "SD_DATA0_R",
96724ba675SRob Herring			  "SD_DATA1_R",
97724ba675SRob Herring			  "SD_DATA2_R",
98724ba675SRob Herring			  "SD_DATA3_R";
99724ba675SRob Herring
100*2a28a5cdSStefan Wahren	pinctrl-names = "default";
101724ba675SRob Herring	pinctrl-0 = <&gpioout &alt0>;
102724ba675SRob Herring};
103724ba675SRob Herring
104724ba675SRob Herring&hdmi {
105724ba675SRob Herring	hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>;
106724ba675SRob Herring	power-domains = <&power RPI_POWER_DOMAIN_HDMI>;
107724ba675SRob Herring	status = "okay";
108724ba675SRob Herring};
109724ba675SRob Herring
110724ba675SRob Herring&led_act {
111724ba675SRob Herring	gpios = <&gpio 47 GPIO_ACTIVE_LOW>;
112724ba675SRob Herring};
113724ba675SRob Herring
114724ba675SRob Herring&sdhci {
115*2a28a5cdSStefan Wahren	pinctrl-names = "default";
116724ba675SRob Herring	pinctrl-0 = <&emmc_gpio34 &gpclk2_gpio43>;
117724ba675SRob Herring};
118724ba675SRob Herring
119724ba675SRob Herring&sdhost {
120724ba675SRob Herring	pinctrl-names = "default";
121724ba675SRob Herring	pinctrl-0 = <&sdhost_gpio48>;
122724ba675SRob Herring	bus-width = <4>;
123724ba675SRob Herring	status = "okay";
124724ba675SRob Herring};
125724ba675SRob Herring
126724ba675SRob Herring&uart0 {
127724ba675SRob Herring	pinctrl-names = "default";
128724ba675SRob Herring	pinctrl-0 = <&uart0_gpio32 &uart0_ctsrts_gpio30>;
129724ba675SRob Herring};
130724ba675SRob Herring
131724ba675SRob Herring&uart1 {
132724ba675SRob Herring	pinctrl-names = "default";
133724ba675SRob Herring	pinctrl-0 = <&uart1_gpio14>;
134724ba675SRob Herring	status = "okay";
135724ba675SRob Herring};
136724ba675SRob Herring
137724ba675SRob Herring&wifi_pwrseq {
138724ba675SRob Herring	reset-gpios = <&gpio 41 GPIO_ACTIVE_LOW>;
139724ba675SRob Herring};
140