1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0+
2724ba675SRob Herring/*
3724ba675SRob Herring * Copyright (C) 2022 Stefan Wahren <stefan.wahren@i2se.com>
4724ba675SRob Herring */
5724ba675SRob Herring
6724ba675SRob Herring/dts-v1/;
7724ba675SRob Herring#include "bcm2837.dtsi"
8724ba675SRob Herring#include "bcm2836-rpi.dtsi"
9724ba675SRob Herring#include "bcm283x-rpi-led-deprecated.dtsi"
10724ba675SRob Herring#include "bcm283x-rpi-usb-otg.dtsi"
11724ba675SRob Herring#include "bcm283x-rpi-wifi-bt.dtsi"
12724ba675SRob Herring
13724ba675SRob Herring/ {
14724ba675SRob Herring	compatible = "raspberrypi,model-zero-2-w", "brcm,bcm2837";
15724ba675SRob Herring	model = "Raspberry Pi Zero 2 W";
16724ba675SRob Herring
17724ba675SRob Herring	memory@0 {
18724ba675SRob Herring		device_type = "memory";
19724ba675SRob Herring		reg = <0 0x20000000>;
20724ba675SRob Herring	};
21724ba675SRob Herring
22724ba675SRob Herring	chosen {
23724ba675SRob Herring		/* 8250 auxiliary UART instead of pl011 */
24724ba675SRob Herring		stdout-path = "serial1:115200n8";
25724ba675SRob Herring	};
26724ba675SRob Herring};
27724ba675SRob Herring
28724ba675SRob Herring&bt {
29724ba675SRob Herring	shutdown-gpios = <&gpio 42 GPIO_ACTIVE_HIGH>;
30724ba675SRob Herring};
31724ba675SRob Herring
32724ba675SRob Herring&gpio {
33724ba675SRob Herring	/*
34724ba675SRob Herring	 * This is based on the official GPU firmware DT blob.
35724ba675SRob Herring	 *
36724ba675SRob Herring	 * Legend:
37724ba675SRob Herring	 * "NC" = not connected (no rail from the SoC)
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			  "HDMI_HPD_N",
71724ba675SRob Herring			  "STATUS_LED_N",
72724ba675SRob Herring			  "NC", /* GPIO30 */
73724ba675SRob Herring			  "NC", /* GPIO31 */
74724ba675SRob Herring			  "NC", /* GPIO32 */
75724ba675SRob Herring			  "NC", /* GPIO33 */
76724ba675SRob Herring			  "NC", /* GPIO34 */
77724ba675SRob Herring			  "NC", /* GPIO35 */
78724ba675SRob Herring			  "NC", /* GPIO36 */
79724ba675SRob Herring			  "NC", /* GPIO37 */
80724ba675SRob Herring			  "NC", /* GPIO38 */
81724ba675SRob Herring			  "NC", /* GPIO39 */
82724ba675SRob Herring			  "CAM_GPIO0", /* GPIO40 */
83724ba675SRob Herring			  "WL_ON", /* GPIO41 */
84724ba675SRob Herring			  "BT_ON", /* GPIO42 */
85724ba675SRob Herring			  "WIFI_CLK", /* GPIO43 */
86724ba675SRob Herring			  "SDA0", /* GPIO44 */
87724ba675SRob Herring			  "SCL0", /* GPIO45 */
88724ba675SRob Herring			  "SMPS_SCL",
89724ba675SRob Herring			  "SMPS_SDA",
90724ba675SRob Herring			  /* Used by SD Card */
91724ba675SRob Herring			  "SD_CLK_R",
92724ba675SRob Herring			  "SD_CMD_R",
93724ba675SRob Herring			  "SD_DATA0_R",
94724ba675SRob Herring			  "SD_DATA1_R",
95724ba675SRob Herring			  "SD_DATA2_R",
96724ba675SRob Herring			  "SD_DATA3_R";
97724ba675SRob Herring
98*2a28a5cdSStefan Wahren	pinctrl-names = "default";
99724ba675SRob Herring	pinctrl-0 = <&gpioout &alt0>;
100724ba675SRob Herring};
101724ba675SRob Herring
102724ba675SRob Herring&hdmi {
103724ba675SRob Herring	hpd-gpios = <&gpio 28 GPIO_ACTIVE_LOW>;
104724ba675SRob Herring	power-domains = <&power RPI_POWER_DOMAIN_HDMI>;
105724ba675SRob Herring	status = "okay";
106724ba675SRob Herring};
107724ba675SRob Herring
108724ba675SRob Herring&led_act {
109724ba675SRob Herring	gpios = <&gpio 29 GPIO_ACTIVE_LOW>;
110724ba675SRob Herring};
111724ba675SRob Herring
112724ba675SRob Herring&sdhci {
113*2a28a5cdSStefan Wahren	pinctrl-names = "default";
114724ba675SRob Herring	pinctrl-0 = <&emmc_gpio34 &gpclk2_gpio43>;
115724ba675SRob Herring};
116724ba675SRob Herring
117724ba675SRob Herring&sdhost {
118724ba675SRob Herring	pinctrl-names = "default";
119724ba675SRob Herring	pinctrl-0 = <&sdhost_gpio48>;
120724ba675SRob Herring	bus-width = <4>;
121724ba675SRob Herring	status = "okay";
122724ba675SRob Herring};
123724ba675SRob Herring
124724ba675SRob Herring&uart0 {
125724ba675SRob Herring	pinctrl-names = "default";
126724ba675SRob Herring	pinctrl-0 = <&uart0_gpio32 &uart0_ctsrts_gpio30>;
127724ba675SRob Herring};
128724ba675SRob Herring
129724ba675SRob Herring&uart1 {
130724ba675SRob Herring	pinctrl-names = "default";
131724ba675SRob Herring	pinctrl-0 = <&uart1_gpio14>;
132724ba675SRob Herring	status = "okay";
133724ba675SRob Herring};
134724ba675SRob Herring
135724ba675SRob Herring&wifi_pwrseq {
136724ba675SRob Herring	reset-gpios = <&gpio 41 GPIO_ACTIVE_LOW>;
137724ba675SRob Herring};
138