lantiq: remove support for kernel 4.19
[openwrt/staging/mkresin.git] / target / linux / lantiq / files / arch / mips / boot / dts / lantiq / danube_arcadyan_arv7519pw.dts
1 #include "danube.dtsi"
2
3 #include <dt-bindings/input/input.h>
4
5 / {
6 compatible = "arcadyan,arv7519pw", "lantiq,xway", "lantiq,danube";
7 model = "Astoria Networks ARV7519PW";
8
9 chosen {
10 bootargs = "console=ttyLTQ0,115200";
11 };
12
13 aliases {
14 led-boot = &power;
15 led-failsafe = &power2;
16 led-running = &power;
17 led-upgrade = &power;
18
19 led-dsl = &dsl;
20 led-internet = &online;
21 led-wifi = &wifi;
22 };
23
24 memory@0 {
25 device_type = "memory";
26 reg = <0x0 0x4000000>;
27 };
28
29 keys {
30 compatible = "gpio-keys-polled";
31 poll-interval = <100>;
32
33 rfkill {
34 label = "rfkill";
35 gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
36 linux,code = <KEY_RFKILL>;
37 };
38 reset {
39 label = "reset";
40 gpios = <&gpio 28 GPIO_ACTIVE_LOW>;
41 linux,code = <KEY_RESTART>;
42 };
43 };
44
45 leds {
46 compatible = "gpio-leds";
47 power: power {
48 label = "power";
49 gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
50 default-state = "keep";
51 };
52 power2: power2 {
53 label = "power2";
54 gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
55 };
56 online: online {
57 label = "online";
58 gpios = <&gpio 3 GPIO_ACTIVE_LOW>;
59 };
60 online2 {
61 label = "online2";
62 gpios = <&gpio 30 GPIO_ACTIVE_LOW>;
63 };
64 wifi: wifi {
65 label = "wifi";
66 gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
67 };
68 wifi2 {
69 label = "wifi2";
70 gpios = <&gpio 10 GPIO_ACTIVE_LOW>;
71 };
72 wifi3 {
73 label = "wifi3";
74 gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
75 };
76 voice {
77 label = "voice";
78 gpios = <&gpio 31 GPIO_ACTIVE_LOW>;
79 };
80 wps {
81 label = "wps";
82 gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
83 };
84 wps2 {
85 label = "wps2";
86 gpios = <&gpio 7 GPIO_ACTIVE_LOW>;
87 };
88 wps3 {
89 label = "wps3";
90 gpios = <&gpio 23 GPIO_ACTIVE_LOW>;
91 };
92 dsl: dsl {
93 label = "dsl";
94 gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
95 };
96 lan {
97 label = "lan";
98 gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
99 };
100 tv {
101 label = "tv";
102 gpios = <&gpio 20 GPIO_ACTIVE_LOW>;
103 };
104 upgrade {
105 label = "upgrade";
106 gpios = <&gpio 29 GPIO_ACTIVE_LOW>;
107 };
108 };
109
110 /* is there another way to "reserve" the GPIO? */
111 gpio_export {
112 compatible = "gpio-export";
113 #size-cells = <0>;
114
115 switch {
116 gpio-export,name = "switch";
117 gpio-export,output = <1>;
118 gpios = <&gpio 19 GPIO_ACTIVE_HIGH>;
119 };
120 };
121 };
122
123 &gpio {
124 pinctrl-names = "default";
125 pinctrl-0 = <&state_default>;
126
127 state_default: pinmux {
128 ebu {
129 lantiq,groups = "ebu cs1";
130 lantiq,function = "ebu";
131 };
132 pci_rst {
133 lantiq,pins = "io21";
134 lantiq,pull = <2>;
135 lantiq,output = <1>;
136 };
137 switch_rst {
138 lantiq,pins = "io19";
139 lantiq,pull = <2>;
140 lantiq,output = <1>;
141 };
142 };
143 };
144
145 &gsw {
146 phy-mode = "mii";
147 mtd-mac-address = <&boardconfig 0x16>;
148 };
149
150 &localbus {
151 flash@0 {
152 compatible = "lantiq,nor";
153 bank-width = <2>;
154 reg = <0 0x0 0x2000000>;
155
156 partitions {
157 compatible = "fixed-partitions";
158 #address-cells = <1>;
159 #size-cells = <1>;
160
161 partition@0 {
162 label = "uboot";
163 reg = <0x00000 0x40000>;
164 read-only;
165 };
166
167 partition@40000 {
168 label = "u-boot-env";
169 reg = <0x40000 0x20000>;
170 };
171
172 partition@60000 {
173 label = "firmware";
174 reg = <0x60000 0xf80000>;
175 };
176
177 boardconfig: partition@fe0000 {
178 label = "board_config";
179 reg = <0xfe0000 0x20000>;
180 read-only;
181 };
182 };
183 };
184 };
185
186 &pci0 {
187 status = "okay";
188
189 pinctrl-0 = <&pci_gnt1_pins>, <&pci_req1_pins>;
190 pinctrl-names = "default";
191
192 lantiq,external-clock;
193 gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
194 req-mask = <0xf>;
195
196 wifi@0,0 {
197 compatible = "pci0,0";
198 reg = <0x7000 0 0 0 0>;
199 ralink,mtd-eeprom = <&boardconfig 0x410>;
200 ralink,mtd-eeprom-swap;
201 };
202 };
203
204 &usb_phy {
205 status = "okay";
206 };
207
208 /* warning: passive port only works with active devices */
209 &usb {
210 status = "okay";
211 };
212
213 &vmmc {
214 status = "okay";
215 };