1/*
2 * PAN1782 EVB configuration
3 *
4 * Copyright (c) 2022 Panasonic Industrial Devices Europe GmbH
5 * SPDX-License-Identifier: Apache-2.0
6 */
7
8/dts-v1/;
9#include <nordic/nrf52833_qiaa.dtsi>
10#include "pan1782_evb-pinctrl.dtsi"
11#include <zephyr/dt-bindings/input/input-event-codes.h>
12
13/ {
14	model = "pan1782-evb";
15	compatible = "panasonic-industrial-devices-europe-gmbh,pan1782-evb";
16
17	chosen {
18		zephyr,console = &uart0;
19		zephyr,shell-uart = &uart0;
20		zephyr,uart-mcumgr = &uart0;
21		zephyr,bt-mon-uart = &uart0;
22		zephyr,bt-c2h-uart = &uart0;
23		zephyr,sram = &sram0;
24		zephyr,flash = &flash0;
25		zephyr,code-partition = &slot0_partition;
26		zephyr,ieee802154 = &ieee802154;
27	};
28
29	leds {
30		compatible = "gpio-leds";
31		evb_led1: evb_led_1 {
32			gpios = <&gpio0 15 GPIO_ACTIVE_LOW>;
33			label = "LED1 on EVB";
34		};
35		evb_led2: evb_led_2 {
36			gpios = <&gpio0 17 GPIO_ACTIVE_LOW>;
37			label = "LED2 on EVB";
38		};
39	};
40
41	pwmleds {
42		compatible = "pwm-leds";
43		pwm_evb_led1: pwm_evb_led_1 {
44			pwms = <&pwm0 0 PWM_MSEC(20) PWM_POLARITY_INVERTED>;
45		};
46	};
47
48	buttons {
49		compatible = "gpio-keys";
50		evb_sw1: evb_sw1 {
51			gpios = <&gpio0 4 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>;
52			label = "SW1 on EVB";
53			zephyr,code = <INPUT_KEY_0>;
54		};
55		evb_sw2: evb_sw2 {
56			gpios = <&gpio0 5 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>;
57			label = "SW2 on EVB";
58			zephyr,code = <INPUT_KEY_1>;
59		};
60	};
61
62	arduino_header: connector {
63		compatible = "panasonic,reduced-arduino-header";
64		#gpio-cells = <2>;
65		gpio-map-mask = <0xffffffff 0xffffffc0>;
66		gpio-map-pass-thru = <0 0x3f>;
67		gpio-map = <0 0 &gpio0 31 0>,	/* A0 */
68			   <1 0 &gpio0 30 0>,	/* A1 */
69			   <2 0 &gpio0 4 0>,	/* A2 */
70			   <3 0 &gpio0 5 0>,	/* A3 */
71			   <6 0 &gpio1 9 0>,	/* D0 */
72			   <7 0 &gpio1 3 0>,	/* D1 */
73			   <8 0 &gpio1 15 0>,	/* D2 */
74			   <9 0 &gpio1 17 0>,	/* D3 */
75			   <10 0 &gpio1 4 0>,	/* D4 */
76			   <11 0 &gpio1 5 0>,	/* D5 */
77			   <16 0 &gpio0 30 0>,	/* D10 */
78			   <17 0 &gpio0 20 0>,	/* D11 */
79			   <18 0 &gpio0 2 0>,	/* D12 */
80			   <19 0 &gpio0 29 0>,	/* D13 */
81			   <20 0 &gpio0 11 0>,	/* D14 */
82			   <21 0 &gpio0 28 0>;	/* D15 */
83	};
84
85	/* These aliases are provided for compatibility with samples */
86	aliases {
87		led0 = &evb_led1;
88		led1 = &evb_led2;
89		pwm-led0 = &pwm_evb_led1;
90		sw0 = &evb_sw1;
91		sw1 = &evb_sw2;
92		bootloader-led0 = &evb_led1;
93		watchdog0 = &wdt0;
94	};
95};
96
97&adc {
98	status = "okay";
99};
100
101&uicr {
102	gpio-as-nreset;
103};
104
105&gpiote {
106	status = "okay";
107};
108
109&gpio0 {
110	status = "okay";
111};
112
113&gpio1 {
114	status = "okay";
115};
116
117arduino_serial: &uart0 {
118	compatible = "nordic,nrf-uarte";
119	status = "okay";
120	current-speed = <115200>;
121	pinctrl-0 = <&uart0_default>;
122	pinctrl-1 = <&uart0_sleep>;
123	pinctrl-names = "default", "sleep";
124};
125
126arduino_i2c: &i2c0 {
127	compatible = "nordic,nrf-twi";
128	status = "okay";
129	pinctrl-0 = <&i2c0_default>;
130	pinctrl-1 = <&i2c0_sleep>;
131	pinctrl-names = "default", "sleep";
132};
133
134&i2c1 {
135	compatible = "nordic,nrf-twi";
136	/* Cannot be used together with spi1, so disabled by default. */
137	pinctrl-0 = <&i2c1_default>;
138	pinctrl-1 = <&i2c1_sleep>;
139	pinctrl-names = "default", "sleep";
140};
141
142&pwm0 {
143	status = "okay";
144	pinctrl-0 = <&pwm0_default>;
145	pinctrl-1 = <&pwm0_sleep>;
146	pinctrl-names = "default", "sleep";
147};
148
149&spi0 {
150	compatible = "nordic,nrf-spi";
151	/* Cannot be used together with i2c0, so disabled by default. */
152	pinctrl-0 = <&spi0_default>;
153	pinctrl-1 = <&spi0_sleep>;
154	pinctrl-names = "default", "sleep";
155};
156
157&spi1 {
158	compatible = "nordic,nrf-spi";
159	status = "okay";
160	pinctrl-0 = <&spi1_default>;
161	pinctrl-1 = <&spi1_sleep>;
162	pinctrl-names = "default", "sleep";
163};
164
165arduino_spi: &spi3 {
166	status = "okay";
167	cs-gpios = <&gpio0 30 GPIO_ACTIVE_LOW>; /* D10 */
168	pinctrl-0 = <&spi3_default>;
169	pinctrl-1 = <&spi3_sleep>;
170	pinctrl-names = "default", "sleep";
171};
172
173&ieee802154 {
174	status = "okay";
175};
176
177&flash0 {
178	partitions {
179		compatible = "fixed-partitions";
180		#address-cells = <1>;
181		#size-cells = <1>;
182
183		boot_partition: partition@0 {
184			label = "mcuboot";
185			reg = <0x000000000 0xC000>;
186		};
187		slot0_partition: partition@c000 {
188			label = "image-0";
189			reg = <0x0000C000 0x32000>;
190		};
191		slot1_partition: partition@3e000 {
192			label = "image-1";
193			reg = <0x0003E000 0x32000>;
194		};
195		scratch_partition: partition@70000 {
196			label = "image-scratch";
197			reg = <0x00070000 0xA000>;
198		};
199		storage_partition: partition@7a000 {
200			label = "storage";
201			reg = <0x0007A000 0x00006000>;
202		};
203	};
204};
205
206zephyr_udc0: &usbd {
207	compatible = "nordic,nrf-usbd";
208	status = "okay";
209};
210