arm64: dts: fsl-ls1028a-kontron-sl28: move MTD partitions
[linux-2.6-microblaze.git] / arch / arm64 / boot / dts / freescale / fsl-ls1028a-kontron-sl28.dts
1 // SPDX-License-Identifier: GPL-2.0+
2 /*
3  * Device Tree file for the Kontron SMARC-sAL28 board.
4  *
5  * Copyright (C) 2019 Michael Walle <michael@walle.cc>
6  *
7  */
8
9 /dts-v1/;
10 #include "fsl-ls1028a.dtsi"
11 #include <dt-bindings/interrupt-controller/irq.h>
12 #include <dt-bindings/gpio/gpio.h>
13 #include <dt-bindings/input/input.h>
14
15 / {
16         model = "Kontron SMARC-sAL28";
17         compatible = "kontron,sl28", "fsl,ls1028a";
18
19         aliases {
20                 crypto = &crypto;
21                 serial0 = &duart0;
22                 serial1 = &duart1;
23                 serial2 = &lpuart1;
24                 spi0 = &fspi;
25                 spi1 = &dspi2;
26                 mmc0 = &esdhc1;
27                 mmc1 = &esdhc;
28         };
29
30         buttons0 {
31                 compatible = "gpio-keys";
32
33                 power-button {
34                         interrupts-extended = <&sl28cpld_intc
35                                                4 IRQ_TYPE_EDGE_BOTH>;
36                         linux,code = <KEY_POWER>;
37                         label = "Power";
38                 };
39
40                 sleep-button {
41                         interrupts-extended = <&sl28cpld_intc
42                                                5 IRQ_TYPE_EDGE_BOTH>;
43                         linux,code = <KEY_SLEEP>;
44                         label = "Sleep";
45                 };
46         };
47
48         buttons1 {
49                 compatible = "gpio-keys-polled";
50                 poll-interval = <200>;
51
52                 lid-switch {
53                         linux,input-type = <EV_SW>;
54                         linux,code = <SW_LID>;
55                         gpios = <&sl28cpld_gpio3 4 GPIO_ACTIVE_LOW>;
56                         label = "Lid";
57                 };
58         };
59
60         chosen {
61                 stdout-path = "serial0:115200n8";
62         };
63 };
64
65 &can0 {
66         status = "okay";
67 };
68
69 &dspi2 {
70         status = "okay";
71 };
72
73 &duart0 {
74         status = "okay";
75 };
76
77 &duart1 {
78         status = "okay";
79 };
80
81 &enetc_port0 {
82         phy-handle = <&phy0>;
83         phy-connection-type = "sgmii";
84         managed = "in-band-status";
85         status = "okay";
86
87         mdio {
88                 #address-cells = <1>;
89                 #size-cells = <0>;
90
91                 phy0: ethernet-phy@5 {
92                         reg = <0x5>;
93                         eee-broken-1000t;
94                         eee-broken-100tx;
95                 };
96         };
97 };
98
99 &esdhc {
100         sd-uhs-sdr104;
101         sd-uhs-sdr50;
102         sd-uhs-sdr25;
103         sd-uhs-sdr12;
104         status = "okay";
105 };
106
107 &esdhc1 {
108         mmc-hs200-1_8v;
109         mmc-hs400-1_8v;
110         bus-width = <8>;
111         status = "okay";
112 };
113
114 &fspi {
115         status = "okay";
116
117         flash@0 {
118                 compatible = "jedec,spi-nor";
119                 m25p,fast-read;
120                 spi-max-frequency = <133000000>;
121                 reg = <0>;
122                 /* The following setting enables 1-1-2 (CMD-ADDR-DATA) mode */
123                 spi-rx-bus-width = <2>; /* 2 SPI Rx lines */
124                 spi-tx-bus-width = <1>; /* 1 SPI Tx line */
125
126                 partitions {
127                         compatible = "fixed-partitions";
128                         #address-cells = <1>;
129                         #size-cells = <1>;
130
131                         partition@0 {
132                                 reg = <0x000000 0x010000>;
133                                 label = "rcw";
134                                 read-only;
135                         };
136
137                         partition@10000 {
138                                 reg = <0x010000 0x0f0000>;
139                                 label = "failsafe bootloader";
140                                 read-only;
141                         };
142
143                         partition@100000 {
144                                 reg = <0x100000 0x040000>;
145                                 label = "failsafe DP firmware";
146                                 read-only;
147                         };
148
149                         partition@140000 {
150                                 reg = <0x140000 0x0a0000>;
151                                 label = "failsafe trusted firmware";
152                                 read-only;
153                         };
154
155                         partition@1e0000 {
156                                 reg = <0x1e0000 0x020000>;
157                                 label = "reserved";
158                                 read-only;
159                         };
160
161                         partition@200000 {
162                                 reg = <0x200000 0x010000>;
163                                 label = "configuration store";
164                         };
165
166                         partition@210000 {
167                                 reg = <0x210000 0x1d0000>;
168                                 label = "bootloader";
169                         };
170
171                         partition@3e0000 {
172                                 reg = <0x3e0000 0x020000>;
173                                 label = "bootloader environment";
174                         };
175                 };
176         };
177 };
178
179 &gpio1 {
180         gpio-line-names =
181                 "", "", "", "", "", "", "", "",
182                 "", "", "", "", "", "", "", "",
183                 "", "", "", "", "", "", "TDO", "TCK",
184                 "", "", "", "", "", "", "", "";
185 };
186
187 &gpio2 {
188         gpio-line-names =
189                 "", "", "", "", "", "", "TMS", "TDI",
190                 "", "", "", "", "", "", "", "",
191                 "", "", "", "", "", "", "", "",
192                 "", "", "", "", "", "", "", "";
193 };
194
195 &i2c0 {
196         status = "okay";
197
198         rtc@32 {
199                 compatible = "microcrystal,rv8803";
200                 reg = <0x32>;
201         };
202
203         sl28cpld@4a {
204                 compatible = "kontron,sl28cpld";
205                 reg = <0x4a>;
206                 #address-cells = <1>;
207                 #size-cells = <0>;
208
209                 watchdog@4 {
210                         compatible = "kontron,sl28cpld-wdt";
211                         reg = <0x4>;
212                         kontron,assert-wdt-timeout-pin;
213                 };
214
215                 hwmon@b {
216                         compatible = "kontron,sl28cpld-fan";
217                         reg = <0xb>;
218                 };
219
220                 sl28cpld_pwm0: pwm@c {
221                         compatible = "kontron,sl28cpld-pwm";
222                         reg = <0xc>;
223                         #pwm-cells = <2>;
224                 };
225
226                 sl28cpld_pwm1: pwm@e {
227                         compatible = "kontron,sl28cpld-pwm";
228                         reg = <0xe>;
229                         #pwm-cells = <2>;
230                 };
231
232                 sl28cpld_gpio0: gpio@10 {
233                         compatible = "kontron,sl28cpld-gpio";
234                         reg = <0x10>;
235                         interrupts-extended = <&gpio2 6
236                                                IRQ_TYPE_EDGE_FALLING>;
237
238                         gpio-controller;
239                         #gpio-cells = <2>;
240                         gpio-line-names =
241                                 "GPIO0_CAM0_PWR_N", "GPIO1_CAM1_PWR_N",
242                                 "GPIO2_CAM0_RST_N", "GPIO3_CAM1_RST_N",
243                                 "GPIO4_HDA_RST_N", "GPIO5_PWM_OUT",
244                                 "GPIO6_TACHIN", "GPIO7";
245
246                         interrupt-controller;
247                         #interrupt-cells = <2>;
248                 };
249
250                 sl28cpld_gpio1: gpio@15 {
251                         compatible = "kontron,sl28cpld-gpio";
252                         reg = <0x15>;
253                         interrupts-extended = <&gpio2 6
254                                                IRQ_TYPE_EDGE_FALLING>;
255
256                         gpio-controller;
257                         #gpio-cells = <2>;
258                         gpio-line-names =
259                                 "GPIO8", "GPIO9", "GPIO10", "GPIO11",
260                                 "", "", "", "";
261
262                         interrupt-controller;
263                         #interrupt-cells = <2>;
264                 };
265
266                 sl28cpld_gpio2: gpio@1a {
267                         compatible = "kontron,sl28cpld-gpo";
268                         reg = <0x1a>;
269
270                         gpio-controller;
271                         #gpio-cells = <2>;
272                         gpio-line-names =
273                                 "LCD0 voltage enable",
274                                 "LCD0 backlight enable",
275                                 "eMMC reset", "LVDS bridge reset",
276                                 "LVDS bridge power-down",
277                                 "SDIO power enable",
278                                 "", "";
279                 };
280
281                 sl28cpld_gpio3: gpio@1b {
282                         compatible = "kontron,sl28cpld-gpi";
283                         reg = <0x1b>;
284
285                         gpio-controller;
286                         #gpio-cells = <2>;
287                         gpio-line-names =
288                                 "Power button", "Force recovery", "Sleep",
289                                 "Battery low", "Lid state", "Charging",
290                                 "Charger present", "";
291                 };
292
293                 sl28cpld_intc: interrupt-controller@1c {
294                         compatible = "kontron,sl28cpld-intc";
295                         reg = <0x1c>;
296                         interrupts-extended = <&gpio2 6
297                                                IRQ_TYPE_EDGE_FALLING>;
298
299                         interrupt-controller;
300                         #interrupt-cells = <2>;
301                 };
302         };
303
304         eeprom@50 {
305                 compatible = "atmel,24c32";
306                 reg = <0x50>;
307                 pagesize = <32>;
308         };
309 };
310
311 &i2c3 {
312         status = "okay";
313 };
314
315 &i2c4 {
316         status = "okay";
317
318         eeprom@50 {
319                 compatible = "atmel,24c32";
320                 reg = <0x50>;
321                 pagesize = <32>;
322         };
323 };
324
325 &lpuart1 {
326         status = "okay";
327 };