GNU Linux-libre 6.1.90-gnu
[releases.git] / arch / arm / boot / dts / at91-kizbox2-common.dtsi
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * at91-kizbox2_common.dtsi - Device Tree Include file for
4  * Overkiz Kizbox 2 family SoC
5  *
6  * Copyright (C) 2014-2018 Overkiz SAS
7  *
8  * Authors: Antoine Aubert <a.aubert@overkiz.com>
9  *          Gaël Portay <g.portay@overkiz.com>
10  *          Kévin Raymond <k.raymond@overkiz.com>
11  */
12 #include "sama5d31.dtsi"
13
14 / {
15         chosen {
16                 bootargs = "ubi.mtd=ubi";
17                 stdout-path = &dbgu;
18         };
19
20         memory@20000000 {
21                 reg = <0x20000000 0x10000000>;
22         };
23
24         clocks {
25                 slow_xtal {
26                         clock-frequency = <32768>;
27                 };
28
29                 main_xtal {
30                         clock-frequency = <12000000>;
31                 };
32         };
33
34         gpio-keys {
35                 compatible = "gpio-keys";
36
37                 button-prog {
38                         label = "PB_PROG";
39                         gpios = <&pioE 27 GPIO_ACTIVE_LOW>;
40                         linux,code = <0x102>;
41                         wakeup-source;
42                 };
43
44                 button-reset {
45                         label = "PB_RST";
46                         gpios = <&pioE 29 GPIO_ACTIVE_LOW>;
47                         linux,code = <0x100>;
48                         wakeup-source;
49                 };
50
51                 button-user {
52                         label = "PB_USER";
53                         gpios = <&pioE 31 GPIO_ACTIVE_HIGH>;
54                         linux,code = <0x101>;
55                         wakeup-source;
56                 };
57         };
58
59         led-controller {
60                 compatible = "pwm-leds";
61
62                 led-1 {
63                         label = "pwm:blue:user";
64                         pwms = <&pwm0 2 10000000 0>;
65                         max-brightness = <255>;
66                         linux,default-trigger = "none";
67                 };
68
69                 led-2 {
70                         label = "pwm:green:user";
71                         pwms = <&pwm0 1 10000000 0>;
72                         max-brightness = <255>;
73                         linux,default-trigger = "default-on";
74                 };
75
76                 led-3 {
77                         label = "pwm:red:user";
78                         pwms = <&pwm0 0 10000000 0>;
79                         max-brightness = <255>;
80                         linux,default-trigger = "default-on";
81                 };
82         };
83 };
84
85 &i2c1 {
86         status = "okay";
87
88         pmic: act8865@5b {
89                 compatible = "active-semi,act8865";
90                 reg = <0x5b>;
91                 status = "okay";
92
93                 regulators {
94                         vcc_1v8_reg: DCDC_REG1 {
95                                 regulator-name = "VCC_1V8";
96                                 regulator-min-microvolt = <1800000>;
97                                 regulator-max-microvolt = <1800000>;
98                                 regulator-always-on;
99                         };
100
101                         vcc_1v2_reg: DCDC_REG2 {
102                                 regulator-name = "VCC_1V2";
103                                 regulator-min-microvolt = <1200000>;
104                                 regulator-max-microvolt = <1200000>;
105                                 regulator-always-on;
106                         };
107
108                         vcc_3v3_reg: DCDC_REG3 {
109                                 regulator-name = "VCC_3V3";
110                                 regulator-min-microvolt = <3300000>;
111                                 regulator-max-microvolt = <3300000>;
112                                 regulator-always-on;
113                         };
114
115                         vddfuse_reg: LDO_REG1 {
116                                 regulator-name = "FUSE_2V5";
117                                 regulator-min-microvolt = <2500000>;
118                                 regulator-max-microvolt = <2500000>;
119                         };
120
121                         vddana_reg: LDO_REG2 {
122                                 regulator-name = "VDDANA";
123                                 regulator-min-microvolt = <3300000>;
124                                 regulator-max-microvolt = <3300000>;
125                                 regulator-always-on;
126                         };
127
128                         vled_reg: LDO_REG3 {
129                                 regulator-name = "VLED";
130                                 regulator-min-microvolt = <3300000>;
131                                 regulator-max-microvolt = <3300000>;
132                                 regulator-always-on;
133                         };
134
135                         v3v8_rf_reg: LDO_REG4 {
136                                 regulator-name = "V3V8_RF";
137                                 regulator-min-microvolt = <3800000>;
138                                 regulator-max-microvolt = <3800000>;
139                                 regulator-always-on;
140                         };
141                 };
142         };
143 };
144
145 &usart0 {
146         atmel,use-dma-rx;
147         atmel,use-dma-tx;
148         status = "disabled";
149 };
150
151 &usart1 {
152         atmel,use-dma-rx;
153         atmel,use-dma-tx;
154         status = "disabled";
155 };
156
157 &usart2 {
158         atmel,use-dma-rx;
159         atmel,use-dma-tx;
160         status = "disabled";
161 };
162
163 &pwm0 {
164         pinctrl-names = "default";
165         pinctrl-0 = <&pinctrl_pwm0_pwmh0_1
166                      &pinctrl_pwm0_pwmh1_1
167                      &pinctrl_pwm0_pwmh2_0>;
168         status = "okay";
169 };
170
171 &adc0 {
172         atmel,adc-vref = <3333>;
173         status = "okay";
174 };
175
176 &macb1 {
177         phy-mode = "rmii";
178         status = "okay";
179 };
180
181 &dbgu {
182         status = "okay";
183 };
184
185 &watchdog {
186         status = "okay";
187 };
188
189 &ebi {
190         pinctrl-0 = <&pinctrl_ebi_nand_addr>;
191         pinctrl-names = "default";
192         status = "okay";
193 };
194
195 &nand_controller {
196         status = "okay";
197
198         nand@3 {
199                 reg = <0x3 0x0 0x2>;
200                 atmel,rb = <0>;
201                 nand-bus-width = <8>;
202                 nand-ecc-mode = "hw";
203                 nand-ecc-strength = <4>;
204                 nand-ecc-step-size = <512>;
205                 nand-on-flash-bbt;
206                 label = "atmel_nand";
207
208                 partitions {
209                         compatible = "fixed-partitions";
210                         #address-cells = <1>;
211                         #size-cells = <1>;
212
213                         bootstrap@0 {
214                                 label = "bootstrap";
215                                 reg = <0x0 0x20000>;
216                         };
217
218                         ubi@20000 {
219                                 label = "ubi";
220                                 reg = <0x20000 0x7fe0000>;
221                         };
222                 };
223         };
224 };
225
226 &usb1 {
227         status = "okay";
228 };
229
230 &usb2 {
231         status = "okay";
232 };
233
234 /* WMBUS (inverted with IO in the latest schematic) */
235 &pinctrl_usart0 {
236         atmel,pins =
237                 <AT91_PIOD 17 AT91_PERIPH_A AT91_PINCTRL_NONE
238                  AT91_PIOD 18 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
239                  AT91_PIOE 2 AT91_PERIPH_GPIO AT91_PINCTRL_MULTI_DRIVE>;
240 };
241
242 /* RTS */
243 &pinctrl_usart1 {
244         atmel,pins =
245                 <AT91_PIOB 28 AT91_PERIPH_A AT91_PINCTRL_NONE
246                  AT91_PIOB 29 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
247                  AT91_PIOE 7 AT91_PERIPH_GPIO AT91_PINCTRL_MULTI_DRIVE>;
248 };
249
250 /* IO (inverted with WMBUS in the latest schematic) */
251 &pinctrl_usart2 {
252         atmel,pins =
253                 <AT91_PIOE 25 AT91_PERIPH_B AT91_PINCTRL_NONE
254                  AT91_PIOE 26 AT91_PERIPH_B AT91_PINCTRL_PULL_UP
255                  AT91_PIOE 8 AT91_PERIPH_GPIO AT91_PINCTRL_MULTI_DRIVE>;
256 };