1// SPDX-License-Identifier: GPL-2.0-or-later
2/*
3 * at91-kizbox.dts - Device Tree file for Overkiz Kizbox board
4 *
5 * Copyright (C) 2012-2014 Boris BREZILLON <b.brezillon@overkiz.com>
6 *               2014-2015 Gaël PORTAY <g.portay@overkiz.com>
7 */
8/dts-v1/;
9#include "at91sam9g20.dtsi"
10#include <dt-bindings/pwm/pwm.h>
11
12/ {
13	model = "Overkiz Kizbox";
14	compatible = "overkiz,kizbox", "atmel,at91sam9g20", "atmel,at91sam9";
15
16	chosen {
17		bootargs = "ubi.mtd=ubi";
18		stdout-path = &dbgu;
19	};
20
21	memory@20000000 {
22		reg = <0x20000000 0x2000000>;
23	};
24
25	clocks {
26		main_xtal {
27			clock-frequency = <18432000>;
28		};
29	};
30
31	gpio-keys {
32		compatible = "gpio-keys";
33
34		button-reset {
35			label = "PB_RST";
36			gpios = <&pioB 30 GPIO_ACTIVE_HIGH>;
37			linux,code = <0x100>;
38			wakeup-source;
39		};
40
41		button-user {
42			label = "PB_USER";
43			gpios = <&pioB 31 GPIO_ACTIVE_HIGH>;
44			linux,code = <0x101>;
45			wakeup-source;
46		};
47	};
48
49	led-controller {
50		compatible = "pwm-leds";
51
52		led-1 {
53			label = "pwm:green:network";
54			pwms = <&tcb1_pwm1 0 10000000 PWM_POLARITY_INVERTED>;
55			max-brightness = <255>;
56			linux,default-trigger = "default-on";
57		};
58
59		led-2 {
60			label = "pwm:red:network";
61			pwms = <&tcb1_pwm2 0 10000000 PWM_POLARITY_INVERTED>;
62			max-brightness = <255>;
63			linux,default-trigger = "default-on";
64		};
65
66		led-3 {
67			label = "pwm:green:user";
68			pwms = <&tcb1_pwm0 0 10000000 PWM_POLARITY_INVERTED>;
69			max-brightness = <255>;
70			linux,default-trigger = "default-on";
71		};
72
73		led-4 {
74			label = "pwm:red:user";
75			pwms = <&tcb1_pwm0 1 10000000 PWM_POLARITY_INVERTED>;
76			max-brightness = <255>;
77			linux,default-trigger = "default-on";
78		};
79	};
80};
81
82&tcb0 {
83	timer@0 {
84		compatible = "atmel,tcb-timer";
85		reg = <0>, <1>;
86	};
87
88	timer@2 {
89		compatible = "atmel,tcb-timer";
90		reg = <2>;
91	};
92};
93
94&tcb1 {
95	tcb1_pwm0: pwm@0 {
96		compatible = "atmel,tcb-pwm";
97		reg = <0>;
98		#pwm-cells = <3>;
99		pinctrl-names = "default";
100		pinctrl-0 = <&pinctrl_tcb1_tioa0 &pinctrl_tcb1_tiob0>;
101	};
102
103	tcb1_pwm1: pwm@1 {
104		compatible = "atmel,tcb-pwm";
105		reg = <1>;
106		#pwm-cells = <3>;
107		pinctrl-names = "default";
108		pinctrl-0 = <&pinctrl_tcb1_tioa1>;
109	};
110
111	tcb1_pwm2: pwm@2 {
112		compatible = "atmel,tcb-pwm";
113		reg = <2>;
114		#pwm-cells = <3>;
115		pinctrl-names = "default";
116		pinctrl-0 = <&pinctrl_tcb1_tioa2>;
117	};
118};
119
120&ebi {
121	status = "okay";
122};
123
124&nand_controller {
125	status = "okay";
126	pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
127	pinctrl-names = "default";
128
129	nand@3 {
130		reg = <0x3 0x0 0x800000>;
131		rb-gpios = <&pioC 13 GPIO_ACTIVE_HIGH>;
132		cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>;
133		nand-bus-width = <8>;
134		nand-ecc-mode = "soft";
135		nand-on-flash-bbt;
136		label = "atmel_nand";
137
138		partitions {
139			compatible = "fixed-partitions";
140			#address-cells = <1>;
141			#size-cells = <1>;
142
143			bootstrap@0 {
144				label = "bootstrap";
145				reg = <0x0 0x20000>;
146			};
147
148			ubi@20000 {
149				label = "ubi";
150				reg = <0x20000 0x7fe0000>;
151			};
152		};
153	};
154};
155
156&macb0 {
157	phy-mode = "mii";
158	pinctrl-0 = <&pinctrl_macb_rmii
159		     &pinctrl_macb_rmii_mii_alt>;
160	status = "okay";
161};
162
163&usart3 {
164	status = "okay";
165};
166
167&dbgu {
168	status = "okay";
169};
170
171&watchdog {
172	timeout-sec = <15>;
173	atmel,max-heartbeat-sec = <16>;
174	atmel,min-heartbeat-sec = <0>;
175	status = "okay";
176};
177
178&usb0 {
179	num-ports = <1>;
180	status = "okay";
181};
182
183&i2c_gpio0 {
184	status = "okay";
185
186	rtc: pcf8563@51 {
187		compatible = "nxp,pcf8563";
188		reg = <0x51>;
189	};
190};
191