oxnas: bring in new oxnas target
[oweals/openwrt.git] / target / linux / oxnas / files / arch / arm / boot / dts / ox820-shuttle-kd20.dts
1 /dts-v1/;
2
3 #include "ox820.dtsi"
4
5 #include <dt-bindings/input/input.h>
6
7 / {
8         model = "Shuttle KD20";
9
10         compatible = "shuttle,kd20", "oxsemi,ox820";
11
12         chosen {
13                 bootargs = "earlyprintk";
14                 stdout-path = "serial0:115200n8";
15         };
16
17         memory {
18                 /* 128Mbytes DDR */
19                 reg = <0x60000000 0x8000000>;
20         };
21
22         aliases {
23                 serial0 = &uart0;
24                 gpio0 = &gpio0;
25                 gpio1 = &gpio1;
26         };
27
28         i2c-gpio {
29                 compatible = "i2c-gpio";
30                 gpios = <&gpio1 9 0 &gpio1 10 0>;
31                 i2c-gpio,delay-us = <10>;
32                 #address-cells = <1>;
33                 #size-cells = <0>;
34                 rtc0: rtc@51 {
35                         compatible = "nxp,pcf8563";
36                         reg = <0x51>;
37                 };
38         };
39
40         gpio-keys-polled {
41                 compatible = "gpio-keys-polled";
42                 #address-cells = <1>;
43                 #size-cells = <0>;
44                 poll-interval = <100>;
45
46                 power {
47                         label = "power";
48                         gpios = <&gpio0 10 1>;
49                         linux,code = <KEY_POWER>;
50                 };
51                 reset {
52                         label = "reset";
53                         gpios = <&gpio0 11 1>;
54                         linux,code = <KEY_RESTART>;
55                 };
56                 eject1 {
57                         label = "eject1";
58                         gpios = <&gpio0 5 1>;
59                         linux,code = <KEY_EJECTCD>;
60                 };
61                 eject2 {
62                         label = "eject2";
63                         gpios = <&gpio0 6 1>;
64                         linux,code = <162>;
65                 };
66         };
67
68         gpio-leds {
69                 compatible = "gpio-leds";
70                 status {
71                         label = "kd20:blue:status";
72                         gpios = <&gpio1 16 0>;
73                 };
74                 status2 {
75                         label = "kd20:red:status";
76                         gpios = <&gpio1 17 0>;
77                 };
78                 hdd1blue {
79                         label = "kd20:blue:hdd1";
80                         gpios = <&gpio0 27 0>;
81                         linux,default-trigger = "ata1";
82                 };
83                 hdd1red {
84                         label = "kd20:red:hdd1";
85                         gpios = <&gpio1 4 0>;
86                 };
87                 hdd2blue {
88                         label = "kd20:blue:hdd2";
89                         gpios = <&gpio1 6 0>;
90                         linux,default-trigger = "ata2";
91                 };
92                 hdd2red {
93                         label = "kd20:red:hdd2";
94                         gpios = <&gpio1 7 0>;
95                 };
96                 usb {
97                         label = "kd20:blue:usb";
98                         gpios = <&gpio1 8 0>;
99                 };
100         };
101
102         beeper: beeper {
103                 compatible = "gpio-beeper";
104                 gpios = <&gpio1 11 0>;
105         };
106
107         gpio-fan {
108                 compatible = "gpio-fan";
109                 gpios = <&gpio0 2 1>;
110                 gpio-fan,speed-map = <0    0
111                                       3000 1>;
112         };
113
114         gpio-poweroff {
115                 compatible = "gpio-poweroff";
116                 gpios = <&gpio0 9 0>;
117         };
118 };
119
120 &uart0 {
121         status = "okay";
122
123         pinctrl-names = "default";
124         pinctrl-0 = <&pinctrl_uart0>;
125 };
126
127 &nandc {
128         status = "okay";
129
130         pinctrl-names = "default";
131         pinctrl-0 = <&pinctrl_nand>;
132
133         nand@0 {
134                 reg = <0>;
135                 #address-cells = <1>;
136                 #size-cells = <1>;
137                 nand-ecc-mode = "soft";
138                 nand-ecc-algo = "hamming";
139
140                 partition@0 {
141                         label = "stage1";
142                         reg = <0x00000000 0x00040000>;
143                         read-only;
144                 };
145
146                 partition@40000 {
147                         label = "u-boot";
148                         reg = <0x00040000 0x00200000>;
149                         read-only;
150                 };
151
152                 partition@240000 {
153                         label = "initrd";
154                         reg = <0x00240000 0x00600000>;
155                 };
156
157                 partition@840000 {
158                         label = "kernel";
159                         reg = <0x00840000 0x007C0000>;
160                 };
161
162                 partition@e00000 {
163                         label = "ubi";
164                         reg = <0x01000000 0x07000000>;
165                 };
166         };
167 };
168
169 &etha {
170         status = "okay";
171
172         pinctrl-names = "default";
173         pinctrl-0 = <&pinctrl_etha_mdio>;
174 };
175
176 &ehci {
177         status = "okay";
178 };
179
180 &sata {
181         status = "okay";
182         nr-ports = <2>;
183 };
184
185 &pcie0 {
186         status = "okay";
187 };