1/*
2 * Copyright (c) 2023 Espressif Systems (Shanghai) Co., Ltd.
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6/dts-v1/;
7
8#include <espressif/esp32/esp32_wroom_32ue_n4.dtsi>
9#include "esp32_devkitc_wroom-pinctrl.dtsi"
10#include <zephyr/dt-bindings/input/input-event-codes.h>
11
12/ {
13	model = "Espressif ESP32-DEVKITC-WROOM-32D";
14	compatible = "espressif,esp32";
15
16	aliases {
17		uart-0 = &uart0;
18		i2c-0 = &i2c0;
19		sw0 = &button0;
20		watchdog0 = &wdt0;
21	};
22
23	buttons {
24		compatible = "gpio-keys";
25		button0: button_0 {
26			gpios = <&gpio0 0 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>;
27			label = "BOOT Button";
28			zephyr,code = <INPUT_KEY_0>;
29		};
30	};
31
32	chosen {
33		zephyr,sram = &sram0;
34		zephyr,console = &uart0;
35		zephyr,shell-uart = &uart0;
36		zephyr,flash = &flash0;
37	};
38};
39
40&cpu0 {
41	clock-frequency = <ESP32_CLK_CPU_240M>;
42	cpu-power-states = <&light_sleep &deep_sleep>;
43};
44
45&cpu1 {
46	clock-frequency = <ESP32_CLK_CPU_240M>;
47};
48
49&uart0 {
50	status = "okay";
51	current-speed = <115200>;
52	pinctrl-0 = <&uart0_default>;
53	pinctrl-names = "default";
54};
55
56&uart1 {
57	current-speed = <115200>;
58	pinctrl-0 = <&uart1_default>;
59	pinctrl-names = "default";
60};
61
62&uart2 {
63	current-speed = <115200>;
64	pinctrl-0 = <&uart2_default>;
65	pinctrl-names = "default";
66};
67
68&gpio0 {
69	status = "okay";
70};
71
72&gpio1 {
73	status = "okay";
74};
75
76&i2c0 {
77	status = "okay";
78	clock-frequency = <I2C_BITRATE_STANDARD>;
79	sda-gpios = <&gpio0 21 GPIO_OPEN_DRAIN>;
80	scl-gpios = <&gpio0 22 GPIO_OPEN_DRAIN>;
81	pinctrl-0 = <&i2c0_default>;
82	pinctrl-names = "default";
83};
84
85&spi2 {
86	#address-cells = <1>;
87	#size-cells = <0>;
88	status = "okay";
89	pinctrl-0 = <&spim2_default>;
90	pinctrl-names = "default";
91};
92
93&spi3 {
94	#address-cells = <1>;
95	#size-cells = <0>;
96	status = "okay";
97	pinctrl-0 = <&spim3_default>;
98	pinctrl-names = "default";
99};
100
101&timer0 {
102	status = "disabled";
103};
104
105&timer1 {
106	status = "disabled";
107};
108
109&timer2 {
110	status = "disabled";
111};
112
113&timer3 {
114	status = "disabled";
115};
116
117&trng0 {
118	status = "okay";
119};
120
121&psram0 {
122	status = "disabled";
123};
124
125&flash0 {
126	status = "okay";
127	partitions {
128		compatible = "fixed-partitions";
129		#address-cells = <1>;
130		#size-cells = <1>;
131
132		/* Reserve 60kB for the bootloader */
133		boot_partition: partition@1000 {
134			label = "mcuboot";
135			reg = <0x00001000 0x0000F000>;
136			read-only;
137		};
138
139		/* Reserve 1024kB for the application in slot 0 */
140		slot0_partition: partition@10000 {
141			label = "image-0";
142			reg = <0x00010000 0x00100000>;
143		};
144
145		/* Reserve 1024kB for the application in slot 1 */
146		slot1_partition: partition@110000 {
147			label = "image-1";
148			reg = <0x00110000 0x00100000>;
149		};
150
151		/* Reserve 256kB for the scratch partition */
152		scratch_partition: partition@210000 {
153			   label = "image-scratch";
154			   reg = <0x00210000 0x00040000>;
155		};
156
157		storage_partition: partition@250000 {
158			label = "storage";
159			reg = <0x00250000 0x00006000>;
160		};
161	};
162};
163