oxnas: backport upstream NAND driver
[lede.git] / target / linux / oxnas / files / arch / arm / boot / dts / ox820-akitio.dts
1 /*
2  * Copyright (C) 2016 Daniel Golle <daniel@makrotopia.org>
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License version 2 as
6  * published by the Free Software Foundation.
7  */
8
9 /dts-v1/;
10 #include "ox820.dtsi"
11
12 #include <dt-bindings/input/input.h>
13
14 / {
15         model = "Akitio MyCloud mini";
16
17         chosen {
18                 bootargs = "console=ttyS0,115200n8 earlyprintk=serial";
19         };
20
21         pcie-controller@47C00000 {
22                 status = "disabled";
23         };
24
25         uart@44200000 {
26                 status = "okay";
27         };
28
29         sata@45900000 {
30                 status = "okay";
31                 nr-ports = <2>;
32         };
33
34         nand@41000000 {
35                 status = "okay";
36
37         };
38
39         ethernet@40400000 {
40                 status = "okay";
41         };
42
43         ehci@40200100 {
44                 status = "okay";
45         };
46
47         i2c-gpio {
48                 compatible = "i2c-gpio";
49                 gpios = <&GPIOB 9 0 &GPIOB 10 0>;
50                 pinctrl-names = "default";
51                 pinctrl-0 = <&pinctrl_i2c>;
52                 i2c-gpio,delay-us = <10>;
53                 #address-cells = <1>;
54                 #size-cells = <0>;
55                 ds1307: rtc@68 {
56                         compatible = "dallas,ds1307";
57                         reg = <0x68>;
58                 };
59         };
60
61         gpio-keys-polled {
62                 compatible = "gpio-keys-polled";
63                 pinctrl-names = "default";
64                 pinctrl-0 = <&pinctrl_buttons>;
65                 #address-cells = <1>;
66                 #size-cells = <0>;
67                 poll-interval = <100>;
68                 power {
69                         label = "power";
70                         gpios = <&GPIOA 11 1>;
71                         linux,code = <KEY_POWER>;
72                 };
73                 reset {
74                         label = "reset";
75                         gpios = <&GPIOB 6 1>;
76                         linux,code = <KEY_RESTART>;
77                 };
78         };
79
80         gpio-leds {
81                 compatible = "gpio-leds";
82                 pinctrl-names = "default";
83                 pinctrl-0 = <&pinctrl_leds>;
84                 status {
85                         label = "akitio:red:status";
86                         gpios = <&GPIOA 29 0>;
87                 };
88         };
89
90         gpio-poweroff {
91                 compatible = "gpio-poweroff";
92                 pinctrl-names = "default";
93                 pinctrl-0 = <&pinctrl_poweroff>;
94                 gpios = <&GPIOB 13 2>;
95         };
96
97         pinctrl {
98                 i2c {
99                         pinctrl_i2c: i2c-0 {
100                                 plxtech,pins =
101                                         <1  9 0 4       /* MF_B9 GPIO debounce */
102                                          1 10 0 4>;     /* MF_B10 GPIO debounce */
103                         };
104                 };
105                 buttons {
106                         pinctrl_buttons: buttons-0 {
107                                 plxtech,pins =
108                                         <0 11 0 0       /* MF_A11 GPIO */
109                                          1  6 0 0>;     /* MF_B6 GPIO */
110                         };
111                 };
112                 leds {
113                         pinctrl_leds: leds-0 {
114                                 plxtech,pins =
115                                         <0 29 0 0>;     /* MF_A29 GPIO */
116                         };
117                 };
118                 poweroff {
119                         pinctrl_poweroff: poweroff-0 {
120                                 plxtech,pins =
121                                         <1 13 0 0>;     /* MF_B13 GPIO */
122                         };
123                 };
124         };
125 };
126
127 &nandc {
128         status = "okay";
129
130         nand@0 {
131                 reg = <0>;
132                 #address-cells = <1>;
133                 #size-cells = <1>;
134                 nand-ecc-mode = "soft";
135                 nand-ecc-algo = "hamming";
136
137                 partition@0 {
138                         label = "boot";
139                         reg = <0x00000000 0x026c0000>;
140                 };
141
142                 partition@26c0000 {
143                         label = "ubi";
144                         reg = <0x026c0000 0x0d940000>;
145                 };
146 };