xref: /freebsd/sys/contrib/device-tree/src/arm/microchip/at91-kizbox3-hs.dts (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * at91-kizbox3-hs.dts - Device Tree file for Overkiz KIZBOX3-HS board
4*f126890aSEmmanuel Vadot *
5*f126890aSEmmanuel Vadot * Copyright (C) 2018 Overkiz SAS
6*f126890aSEmmanuel Vadot *
7*f126890aSEmmanuel Vadot * Authors: Dorian Rocipon <d.rocipon@overkiz.com>
8*f126890aSEmmanuel Vadot *          Kevin Carli <k.carli@overkiz.com>
9*f126890aSEmmanuel Vadot *          Mickael Gardet <m.gardet@overkiz.com>
10*f126890aSEmmanuel Vadot */
11*f126890aSEmmanuel Vadot/dts-v1/;
12*f126890aSEmmanuel Vadot#include "at91-kizbox3_common.dtsi"
13*f126890aSEmmanuel Vadot
14*f126890aSEmmanuel Vadot/ {
15*f126890aSEmmanuel Vadot	model = "Overkiz KIZBOX3-HS";
16*f126890aSEmmanuel Vadot	compatible = "overkiz,kizbox3-hs", "atmel,sama5d2", "atmel,sama5";
17*f126890aSEmmanuel Vadot
18*f126890aSEmmanuel Vadot	led-controller-1 {
19*f126890aSEmmanuel Vadot		status = "okay";
20*f126890aSEmmanuel Vadot
21*f126890aSEmmanuel Vadot		led-1 {
22*f126890aSEmmanuel Vadot			status = "okay";
23*f126890aSEmmanuel Vadot		};
24*f126890aSEmmanuel Vadot
25*f126890aSEmmanuel Vadot		led-2 {
26*f126890aSEmmanuel Vadot			status = "okay";
27*f126890aSEmmanuel Vadot		};
28*f126890aSEmmanuel Vadot
29*f126890aSEmmanuel Vadot		led-3 {
30*f126890aSEmmanuel Vadot			status = "okay";
31*f126890aSEmmanuel Vadot		};
32*f126890aSEmmanuel Vadot
33*f126890aSEmmanuel Vadot		led-4 {
34*f126890aSEmmanuel Vadot			status = "okay";
35*f126890aSEmmanuel Vadot		};
36*f126890aSEmmanuel Vadot	};
37*f126890aSEmmanuel Vadot
38*f126890aSEmmanuel Vadot	led-controller-2  {
39*f126890aSEmmanuel Vadot		compatible = "gpio-leds";
40*f126890aSEmmanuel Vadot		pinctrl-names = "default";
41*f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_led_red
42*f126890aSEmmanuel Vadot			     &pinctrl_led_white>;
43*f126890aSEmmanuel Vadot		status = "okay";
44*f126890aSEmmanuel Vadot
45*f126890aSEmmanuel Vadot		led-5 {
46*f126890aSEmmanuel Vadot			label = "pio:red:user";
47*f126890aSEmmanuel Vadot			gpios = <&pioA PIN_PB1 GPIO_ACTIVE_HIGH>;
48*f126890aSEmmanuel Vadot			default-state = "off";
49*f126890aSEmmanuel Vadot		};
50*f126890aSEmmanuel Vadot
51*f126890aSEmmanuel Vadot		led-6 {
52*f126890aSEmmanuel Vadot			label = "pio:white:user";
53*f126890aSEmmanuel Vadot			gpios = <&pioA PIN_PB8 GPIO_ACTIVE_HIGH>;
54*f126890aSEmmanuel Vadot			default-state = "off";
55*f126890aSEmmanuel Vadot		};
56*f126890aSEmmanuel Vadot	};
57*f126890aSEmmanuel Vadot
58*f126890aSEmmanuel Vadot	gpio-keys {
59*f126890aSEmmanuel Vadot		compatible = "gpio-keys";
60*f126890aSEmmanuel Vadot		pinctrl-names = "default" , "default", "default",
61*f126890aSEmmanuel Vadot				"default", "default" ;
62*f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_key_gpio_default>;
63*f126890aSEmmanuel Vadot		pinctrl-1 = <&pinctrl_pio_rf &pinctrl_pio_wifi>;
64*f126890aSEmmanuel Vadot		pinctrl-2 = <&pinctrl_pio_io_boot
65*f126890aSEmmanuel Vadot			     &pinctrl_pio_io_reset
66*f126890aSEmmanuel Vadot			     &pinctrl_pio_io_test_radio>;
67*f126890aSEmmanuel Vadot		pinctrl-3 = <&pinctrl_pio_zbe_test_radio
68*f126890aSEmmanuel Vadot			     &pinctrl_pio_zbe_rst>;
69*f126890aSEmmanuel Vadot		pinctrl-4 = <&pinctrl_pio_input>;
70*f126890aSEmmanuel Vadot
71*f126890aSEmmanuel Vadot		switch-1 {
72*f126890aSEmmanuel Vadot			label = "SW1";
73*f126890aSEmmanuel Vadot			gpios = <&pioA PIN_PA29 GPIO_ACTIVE_LOW>;
74*f126890aSEmmanuel Vadot			linux,code = <0x101>;
75*f126890aSEmmanuel Vadot			wakeup-source;
76*f126890aSEmmanuel Vadot		};
77*f126890aSEmmanuel Vadot
78*f126890aSEmmanuel Vadot		switch-2 {
79*f126890aSEmmanuel Vadot			label = "SW2";
80*f126890aSEmmanuel Vadot			gpios = <&pioA PIN_PA18 GPIO_ACTIVE_LOW>;
81*f126890aSEmmanuel Vadot			linux,code = <0x102>;
82*f126890aSEmmanuel Vadot			wakeup-source;
83*f126890aSEmmanuel Vadot		};
84*f126890aSEmmanuel Vadot
85*f126890aSEmmanuel Vadot		switch-3 {
86*f126890aSEmmanuel Vadot			label = "SW3";
87*f126890aSEmmanuel Vadot			gpios = <&pioA PIN_PA22 GPIO_ACTIVE_LOW>;
88*f126890aSEmmanuel Vadot			linux,code = <0x103>;
89*f126890aSEmmanuel Vadot			wakeup-source;
90*f126890aSEmmanuel Vadot		};
91*f126890aSEmmanuel Vadot
92*f126890aSEmmanuel Vadot		switch-7 {
93*f126890aSEmmanuel Vadot			label = "SW7";
94*f126890aSEmmanuel Vadot			gpios = <&pioA PIN_PA26 GPIO_ACTIVE_LOW>;
95*f126890aSEmmanuel Vadot			linux,code = <0x107>;
96*f126890aSEmmanuel Vadot			wakeup-source;
97*f126890aSEmmanuel Vadot		};
98*f126890aSEmmanuel Vadot
99*f126890aSEmmanuel Vadot		switch-8 {
100*f126890aSEmmanuel Vadot			label = "SW8";
101*f126890aSEmmanuel Vadot			gpios = <&pioA PIN_PA24 GPIO_ACTIVE_LOW>;
102*f126890aSEmmanuel Vadot			linux,code = <0x108>;
103*f126890aSEmmanuel Vadot			wakeup-source;
104*f126890aSEmmanuel Vadot		};
105*f126890aSEmmanuel Vadot	};
106*f126890aSEmmanuel Vadot
107*f126890aSEmmanuel Vadot	gpios {
108*f126890aSEmmanuel Vadot		compatible = "gpio";
109*f126890aSEmmanuel Vadot		status = "okay";
110*f126890aSEmmanuel Vadot
111*f126890aSEmmanuel Vadot		rf_on {
112*f126890aSEmmanuel Vadot			label = "rf on";
113*f126890aSEmmanuel Vadot			gpio = <&pioA PIN_PC19 GPIO_ACTIVE_HIGH>;
114*f126890aSEmmanuel Vadot			output;
115*f126890aSEmmanuel Vadot			init-low;
116*f126890aSEmmanuel Vadot		};
117*f126890aSEmmanuel Vadot
118*f126890aSEmmanuel Vadot		wifi_on {
119*f126890aSEmmanuel Vadot			label = "wifi on";
120*f126890aSEmmanuel Vadot			gpio = <&pioA PIN_PC20 GPIO_ACTIVE_HIGH>;
121*f126890aSEmmanuel Vadot			output;
122*f126890aSEmmanuel Vadot			init-low;
123*f126890aSEmmanuel Vadot		};
124*f126890aSEmmanuel Vadot
125*f126890aSEmmanuel Vadot		zbe_test_radio {
126*f126890aSEmmanuel Vadot			label = "zbe test radio";
127*f126890aSEmmanuel Vadot			gpio = <&pioA PIN_PB21 GPIO_ACTIVE_HIGH>;
128*f126890aSEmmanuel Vadot			output;
129*f126890aSEmmanuel Vadot			init-low;
130*f126890aSEmmanuel Vadot		};
131*f126890aSEmmanuel Vadot
132*f126890aSEmmanuel Vadot		zbe_rst {
133*f126890aSEmmanuel Vadot			label = "zbe rst";
134*f126890aSEmmanuel Vadot			gpio = <&pioA PIN_PB25 GPIO_ACTIVE_HIGH>;
135*f126890aSEmmanuel Vadot			output;
136*f126890aSEmmanuel Vadot			init-low;
137*f126890aSEmmanuel Vadot		};
138*f126890aSEmmanuel Vadot
139*f126890aSEmmanuel Vadot		io_reset {
140*f126890aSEmmanuel Vadot			label = "io reset";
141*f126890aSEmmanuel Vadot			gpio = <&pioA PIN_PB30 GPIO_ACTIVE_HIGH>;
142*f126890aSEmmanuel Vadot			output;
143*f126890aSEmmanuel Vadot			init-low;
144*f126890aSEmmanuel Vadot		};
145*f126890aSEmmanuel Vadot
146*f126890aSEmmanuel Vadot		io_test_radio {
147*f126890aSEmmanuel Vadot			label = "io test radio";
148*f126890aSEmmanuel Vadot			gpio = <&pioA PIN_PC9 GPIO_ACTIVE_HIGH>;
149*f126890aSEmmanuel Vadot			output;
150*f126890aSEmmanuel Vadot			init-low;
151*f126890aSEmmanuel Vadot		};
152*f126890aSEmmanuel Vadot
153*f126890aSEmmanuel Vadot		io_boot_0 {
154*f126890aSEmmanuel Vadot			label = "io boot 0";
155*f126890aSEmmanuel Vadot			gpio = <&pioA PIN_PC11 GPIO_ACTIVE_HIGH>;
156*f126890aSEmmanuel Vadot			output;
157*f126890aSEmmanuel Vadot			init-low;
158*f126890aSEmmanuel Vadot		};
159*f126890aSEmmanuel Vadot
160*f126890aSEmmanuel Vadot		io_boot_1 {
161*f126890aSEmmanuel Vadot			label = "io boot 1";
162*f126890aSEmmanuel Vadot			gpio = <&pioA PIN_PC17 GPIO_ACTIVE_HIGH>;
163*f126890aSEmmanuel Vadot			output;
164*f126890aSEmmanuel Vadot			init-low;
165*f126890aSEmmanuel Vadot		};
166*f126890aSEmmanuel Vadot
167*f126890aSEmmanuel Vadot		verbose_bootloader {
168*f126890aSEmmanuel Vadot			label = "verbose bootloader";
169*f126890aSEmmanuel Vadot			gpio = <&pioA PIN_PB11 GPIO_ACTIVE_HIGH>;
170*f126890aSEmmanuel Vadot			input;
171*f126890aSEmmanuel Vadot		};
172*f126890aSEmmanuel Vadot
173*f126890aSEmmanuel Vadot		 nail_bed_detection  {
174*f126890aSEmmanuel Vadot			label = "nail bed detection";
175*f126890aSEmmanuel Vadot			gpio = <&pioA PIN_PB12 GPIO_ACTIVE_HIGH>;
176*f126890aSEmmanuel Vadot			input;
177*f126890aSEmmanuel Vadot		};
178*f126890aSEmmanuel Vadot
179*f126890aSEmmanuel Vadot		 id_usba {
180*f126890aSEmmanuel Vadot			label = "id usba";
181*f126890aSEmmanuel Vadot			gpio = <&pioA PIN_PC0 GPIO_ACTIVE_LOW>;
182*f126890aSEmmanuel Vadot			input;
183*f126890aSEmmanuel Vadot		};
184*f126890aSEmmanuel Vadot	};
185*f126890aSEmmanuel Vadot};
186*f126890aSEmmanuel Vadot
187*f126890aSEmmanuel Vadot&pioA {
188*f126890aSEmmanuel Vadot	pinctrl_key_gpio_default: key_gpio_default {
189*f126890aSEmmanuel Vadot		pinmux = <PIN_PA22__GPIO>,
190*f126890aSEmmanuel Vadot		<PIN_PA24__GPIO>,
191*f126890aSEmmanuel Vadot		<PIN_PA26__GPIO>,
192*f126890aSEmmanuel Vadot		<PIN_PA29__GPIO>,
193*f126890aSEmmanuel Vadot		<PIN_PA18__GPIO>;
194*f126890aSEmmanuel Vadot		bias-disable;
195*f126890aSEmmanuel Vadot		};
196*f126890aSEmmanuel Vadot
197*f126890aSEmmanuel Vadot	pinctrl_gpio {
198*f126890aSEmmanuel Vadot		pinctrl_pio_rf: gpio_rf {
199*f126890aSEmmanuel Vadot			pinmux = <PIN_PC19__GPIO>;
200*f126890aSEmmanuel Vadot			bias-disable;
201*f126890aSEmmanuel Vadot		};
202*f126890aSEmmanuel Vadot		pinctrl_pio_wifi: gpio_wifi {
203*f126890aSEmmanuel Vadot			pinmux = <PIN_PC20__GPIO>;
204*f126890aSEmmanuel Vadot			bias-disable;
205*f126890aSEmmanuel Vadot		};
206*f126890aSEmmanuel Vadot		pinctrl_pio_io_boot: gpio_io_boot {
207*f126890aSEmmanuel Vadot			pinmux =
208*f126890aSEmmanuel Vadot			<PIN_PC11__GPIO>,
209*f126890aSEmmanuel Vadot			<PIN_PC17__GPIO>;
210*f126890aSEmmanuel Vadot			bias-disable;
211*f126890aSEmmanuel Vadot		};
212*f126890aSEmmanuel Vadot		pinctrl_pio_io_test_radio: gpio_io_test_radio {
213*f126890aSEmmanuel Vadot			pinmux = <PIN_PC9__GPIO>;
214*f126890aSEmmanuel Vadot			bias-disable;
215*f126890aSEmmanuel Vadot		};
216*f126890aSEmmanuel Vadot		pinctrl_pio_zbe_test_radio: gpio_zbe_test_radio {
217*f126890aSEmmanuel Vadot			pinmux = <PIN_PB21__GPIO>;
218*f126890aSEmmanuel Vadot			bias-disable;
219*f126890aSEmmanuel Vadot		};
220*f126890aSEmmanuel Vadot		pinctrl_pio_zbe_rst: gpio_zbe_rst {
221*f126890aSEmmanuel Vadot			pinmux = <PIN_PB25__GPIO>;
222*f126890aSEmmanuel Vadot			bias-disable;
223*f126890aSEmmanuel Vadot		};
224*f126890aSEmmanuel Vadot		/* stm32 reset must be open drain (internal pull up) */
225*f126890aSEmmanuel Vadot		pinctrl_pio_io_reset: gpio_io_reset {
226*f126890aSEmmanuel Vadot			pinmux = <PIN_PB30__GPIO>;
227*f126890aSEmmanuel Vadot			bias-disable;
228*f126890aSEmmanuel Vadot			drive-open-drain;
229*f126890aSEmmanuel Vadot			output-low;
230*f126890aSEmmanuel Vadot		};
231*f126890aSEmmanuel Vadot		pinctrl_pio_input: gpio_input {
232*f126890aSEmmanuel Vadot			pinmux =
233*f126890aSEmmanuel Vadot			<PIN_PB11__GPIO>,
234*f126890aSEmmanuel Vadot			<PIN_PB12__GPIO>,
235*f126890aSEmmanuel Vadot			<PIN_PC0__GPIO>;
236*f126890aSEmmanuel Vadot			bias-disable;
237*f126890aSEmmanuel Vadot		};
238*f126890aSEmmanuel Vadot	};
239*f126890aSEmmanuel Vadot
240*f126890aSEmmanuel Vadot	pinctrl_leds {
241*f126890aSEmmanuel Vadot		pinctrl_led_red: led_red {
242*f126890aSEmmanuel Vadot			pinmux = <PIN_PB1__GPIO>;
243*f126890aSEmmanuel Vadot			bias-disable;
244*f126890aSEmmanuel Vadot		};
245*f126890aSEmmanuel Vadot		pinctrl_led_white: led_white {
246*f126890aSEmmanuel Vadot			pinmux = <PIN_PB8__GPIO>;
247*f126890aSEmmanuel Vadot			bias-disable;
248*f126890aSEmmanuel Vadot		};
249*f126890aSEmmanuel Vadot	};
250*f126890aSEmmanuel Vadot};
251*f126890aSEmmanuel Vadot
252*f126890aSEmmanuel Vadot&adc {
253*f126890aSEmmanuel Vadot	status = "okay";
254*f126890aSEmmanuel Vadot};
255*f126890aSEmmanuel Vadot
256*f126890aSEmmanuel Vadot&uart0 {
257*f126890aSEmmanuel Vadot	status = "okay";
258*f126890aSEmmanuel Vadot};
259*f126890aSEmmanuel Vadot
260*f126890aSEmmanuel Vadot&uart1 {
261*f126890aSEmmanuel Vadot	status = "okay";
262*f126890aSEmmanuel Vadot};
263*f126890aSEmmanuel Vadot
264*f126890aSEmmanuel Vadot&uart2 {
265*f126890aSEmmanuel Vadot	status = "okay";
266*f126890aSEmmanuel Vadot};
267*f126890aSEmmanuel Vadot
268*f126890aSEmmanuel Vadot&uart3 {
269*f126890aSEmmanuel Vadot	status = "okay";
270*f126890aSEmmanuel Vadot};
271*f126890aSEmmanuel Vadot
272*f126890aSEmmanuel Vadot&uart4 {
273*f126890aSEmmanuel Vadot	status = "okay";
274*f126890aSEmmanuel Vadot};
275*f126890aSEmmanuel Vadot
276*f126890aSEmmanuel Vadot&flx0 {
277*f126890aSEmmanuel Vadot	status = "okay";
278*f126890aSEmmanuel Vadot
279*f126890aSEmmanuel Vadot	uart5: serial@200  {
280*f126890aSEmmanuel Vadot			status = "okay";
281*f126890aSEmmanuel Vadot	};
282*f126890aSEmmanuel Vadot};
283*f126890aSEmmanuel Vadot
284*f126890aSEmmanuel Vadot&flx3 {
285*f126890aSEmmanuel Vadot	status = "okay";
286*f126890aSEmmanuel Vadot	uart8: serial@200 {
287*f126890aSEmmanuel Vadot		status = "okay";
288*f126890aSEmmanuel Vadot	};
289*f126890aSEmmanuel Vadot};
290*f126890aSEmmanuel Vadot
291*f126890aSEmmanuel Vadot&flx4 {
292*f126890aSEmmanuel Vadot	status = "okay";
293*f126890aSEmmanuel Vadot
294*f126890aSEmmanuel Vadot	i2c6: i2c@600 {
295*f126890aSEmmanuel Vadot		status = "okay";
296*f126890aSEmmanuel Vadot	};
297*f126890aSEmmanuel Vadot};
298*f126890aSEmmanuel Vadot
299*f126890aSEmmanuel Vadot&usb0 {
300*f126890aSEmmanuel Vadot	status = "okay";
301*f126890aSEmmanuel Vadot};
302*f126890aSEmmanuel Vadot
303*f126890aSEmmanuel Vadot&usb1 {
304*f126890aSEmmanuel Vadot	status = "okay";
305*f126890aSEmmanuel Vadot};
306*f126890aSEmmanuel Vadot
307*f126890aSEmmanuel Vadot&usb2 {
308*f126890aSEmmanuel Vadot	status = "okay";
309*f126890aSEmmanuel Vadot};
310