1984e446b263fdf4e24e8d1513eea7905e43db88
[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 console=ttyS0,115200";
14                 stdout-path = "serial0:115200n8";
15         };
16
17         memory {
18                 /* 256Mbytes DDR */
19                 reg = <0x60000000 0x10000000>;
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         keys {
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         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                         trigger-sources = <&ehci_port1>, <&ehci_port2>;
100                         linux,default-trigger = "usbport";
101                 };
102         };
103
104         beeper: beeper {
105                 compatible = "gpio-beeper";
106                 gpios = <&gpio1 11 0>;
107         };
108
109         gpio-fan {
110                 compatible = "gpio-fan";
111                 gpios = <&gpio0 2 1>;
112                 gpio-fan,speed-map = <0    0
113                                       3000 1>;
114         };
115
116         gpio-poweroff {
117                 compatible = "gpio-poweroff";
118                 gpios = <&gpio0 9 0>;
119         };
120 };
121
122 &uart0 {
123         status = "okay";
124
125         pinctrl-names = "default";
126         pinctrl-0 = <&pinctrl_uart0>;
127 };
128
129 &nandc {
130         status = "okay";
131
132         pinctrl-names = "default";
133         pinctrl-0 = <&pinctrl_nand>;
134
135         nand@0 {
136                 reg = <0>;
137                 #address-cells = <1>;
138                 #size-cells = <1>;
139                 nand-ecc-mode = "soft";
140                 nand-ecc-algo = "hamming";
141
142                 partition@0 {
143                         label = "stage1";
144                         reg = <0x00000000 0x00040000>;
145                         read-only;
146                 };
147
148                 partition@40000 {
149                         label = "u-boot";
150                         reg = <0x00040000 0x001e0000>;
151                         read-only;
152                 };
153
154                 partition@220000 {
155                         label = "u-boot-env";
156                         reg = <0x00220000 0x00020000>;
157                 };
158
159                 partition@240000 {
160                         label = "initrd";
161                         reg = <0x00240000 0x00600000>;
162                 };
163
164                 partition@840000 {
165                         label = "kernel";
166                         reg = <0x00840000 0x007C0000>;
167                 };
168
169                 partition@e00000 {
170                         label = "ubi";
171                         reg = <0x01000000 0x07000000>;
172                 };
173         };
174 };
175
176 &etha {
177         status = "okay";
178
179         pinctrl-names = "default";
180         pinctrl-0 = <&pinctrl_etha_mdio>;
181 };
182
183 &ehci {
184         status = "okay";
185 };
186
187 &sata {
188         status = "okay";
189         nr-ports = <2>;
190 };
191
192 &pcie0 {
193         status = "okay";
194 };