ipq806x: add ipq4019 support
[librecmc/librecmc.git] / target / linux / ipq806x / files-4.9 / arch / arm / boot / dts / qcom-ipq4019-rt-ac58u.dts
1 /* Copyright (c) 2015, The Linux Foundation. All rights reserved.
2  *
3  * Permission to use, copy, modify, and/or distribute this software for any
4  * purpose with or without fee is hereby granted, provided that the above
5  * copyright notice and this permission notice appear in all copies.
6  *
7  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
8  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
9  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
10  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
11  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
12  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
13  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
14  *
15  */
16
17 #include "qcom-ipq4019-ap.dk01.1.dtsi"
18 #include "qcom-ipq4019-bus.dtsi"
19 #include <dt-bindings/gpio/gpio.h>
20 #include <dt-bindings/input/input.h>
21 #include <dt-bindings/soc/qcom,tcsr.h>
22
23 / {
24         model = "ASUS RT-AC58U";
25         compatible = "asus,rt-ac58u", "qcom,ipq4019";
26
27         memory {
28                 device_type = "memory";
29                 reg = <0x80000000 0x8000000>;
30         };
31
32         aliases {
33                 led-boot = &power;
34                 led-failsafe = &power;
35                 led-running = &power;
36                 led-upgrade = &power;
37         };
38
39         reserved-memory {
40                 #address-cells = <0x1>;
41                 #size-cells = <0x1>;
42                 ranges;
43
44                 rsvd1@87E00000 {
45                         reg = <0x87e00000 0x200000>;
46                         no-map;
47                 };
48         };
49
50         soc {
51
52                 tcsr@194b000 {
53                         /* select hostmode */
54                         compatible = "qcom,tcsr";
55                         reg = <0x194b000 0x100>;
56                         qcom,usb-hsphy-mode-select = <TCSR_USB_HSPHY_HOST_MODE>;
57                         status = "ok";
58                 };
59
60                 ess_tcsr@1953000 {
61                         compatible = "qcom,tcsr";
62                         reg = <0x1953000 0x1000>;
63                         qcom,ess-interface-select = <TCSR_ESS_PSGMII>;
64                 };
65
66
67                 tcsr@1949000 {
68                         compatible = "qcom,tcsr";
69                         reg = <0x1949000 0x100>;
70                         qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>;
71                 };
72
73                 tcsr@1957000 {
74                         compatible = "qcom,tcsr";
75                         reg = <0x1957000 0x100>;
76                         qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
77                 };
78
79                 counter@4a1000 {
80                         compatible = "qcom,qca-gcnt";
81                         reg = <0x4a1000 0x4>;
82                 };
83
84                 mdio@90000 {
85                         status = "okay";
86                 };
87
88                 ess-switch@c000000 {
89                         status = "okay";
90                 };
91
92                 ess-psgmii@98000 {
93                         status = "okay";
94                 };
95
96                 edma@c080000 {
97                         status = "okay";
98                 };
99
100                 wifi@a000000 {
101                         status = "okay";
102                 };
103
104                 wifi@a800000 {
105                         status = "okay";
106                 };
107
108                 cryptobam: dma@8e04000 {
109                         status = "okay";
110                 };
111
112                 crypto@8e3a000 {
113                         status = "okay";
114                 };
115         };
116
117         gpio-keys {
118                 compatible = "gpio-keys";
119
120                 reset {
121                         label = "reset";
122                         gpios = <&tlmm 4 GPIO_ACTIVE_LOW>;
123                         linux,code = <KEY_RESTART>;
124                 };
125
126                 wps {
127                         label = "wps";
128                         gpios = <&tlmm 63 GPIO_ACTIVE_LOW>;
129                         linux,code = <KEY_WPS_BUTTON>;
130                 };
131         };
132
133         gpio-leds {
134                 compatible = "gpio-leds";
135
136                 power: status {
137                         label = "rt-ac58u:blue:status";
138                         gpios = <&tlmm 3 GPIO_ACTIVE_HIGH>;
139                 };
140
141                 wan {
142                         label = "rt-ac58u:blue:wan";
143                         gpios = <&tlmm 1 GPIO_ACTIVE_HIGH>;
144                 };
145
146                 wlan2G {
147                         label = "rt-ac58u:blue:wlan2G";
148                         gpios = <&tlmm 58 GPIO_ACTIVE_HIGH>;
149                 };
150
151                 wan5G {
152                         label = "rt-ac58u:blue:wlan5G";
153                         gpios = <&tlmm 5 GPIO_ACTIVE_HIGH>;
154                 };
155
156                 usb {
157                         label = "rt-ac58u:blue:usb";
158                         gpios = <&tlmm 0 GPIO_ACTIVE_HIGH>;
159                 };
160
161                 lan {
162                         label = "rt-ac58u:blue:lan";
163                         gpios = <&tlmm 2 GPIO_ACTIVE_HIGH>;
164                 };
165         };
166 };
167
168 &spi_0_pins {
169         pinmux_cs {
170                 function = "gpio";
171                 pins = "gpio54", "gpio59";
172         };
173         pinconf_cs {
174                 pins = "gpio54", "gpio59";
175                 drive-strength = <2>;
176                 bias-disable;
177                 output-high;
178         };
179 };
180
181
182 &spi_0 { /* BLSP1 QUP1 */
183         status = "ok";
184         cs-gpios = <&tlmm 54 0>,
185                    <&tlmm 59 0>;
186
187         mx25l25635e@0 {
188                 status = "disabled";
189         };
190
191         m25p80@0 {
192                 #address-cells = <1>;
193                 #size-cells = <0>;
194                 /*
195                  * U-boot looks for "n25q128a11" node,
196                  * if we don't have it, it will spit out the following warning:
197                  * "ipq: fdt fixup unable to find compatible node".
198                  */
199                 compatible = "mx25l1606e", "n25q128a11";
200                 reg = <0>;
201                 linux,modalias = "m25p80", "mx25l1606e", "n25q128a11";
202                 spi-max-frequency = <24000000>;
203
204                 partitions {
205                         compatible = "fixed-partitions";
206                         #address-cells = <1>;
207                         #size-cells = <1>;
208
209                         partition0@0 {
210                                 label = "SBL1";
211                                 reg = <0x00000000 0x00040000>;
212                                 read-only;
213                         };
214                         partition1@40000 {
215                                 label = "MIBIB";
216                                 reg = <0x00040000 0x00020000>;
217                                 read-only;
218                         };
219                         partition2@60000 {
220                                 label = "QSEE";
221                                 reg = <0x00060000 0x00060000>;
222                                 read-only;
223                         };
224                         partition3@c0000 {
225                                 label = "CDT";
226                                 reg = <0x000c0000 0x00010000>;
227                                 read-only;
228                         };
229                         partition4@d0000 {
230                                 label = "DDRPARAMS";
231                                 reg = <0x000d0000 0x00010000>;
232                                 read-only;
233                         };
234                         partition5@e0000 {
235                                 label = "APPSBLENV"; /* uboot env*/
236                                 reg = <0x000e0000 0x00010000>;
237                                 read-only;
238                         };
239                         partition5@f0000 {
240                                 label = "APPSBL"; /* uboot */
241                                 reg = <0x000f0000 0x00080000>;
242                                 read-only;
243                         };
244                         partition5@170000 {
245                                 label = "ART";
246                                 reg = <0x00170000 0x00010000>;
247                                 read-only;
248                         };
249                         /* 0x00180000 - 0x00200000 unused */
250                 };
251         };
252
253         mt29f@1 {
254                 #address-cells = <1>;
255                 #size-cells = <0>;
256                 compatible = "spinand,mt29f", "w25n01gv";
257                 reg = <1>;
258                 spi-max-frequency = <24000000>;
259
260                 partitions {
261                         compatible = "fixed-partitions";
262                         #address-cells = <1>;
263                         #size-cells = <1>;
264
265                         partition0@0 {
266                                 label = "ubi";
267                                 reg = <0x00000000 0x08000000>;
268                         };
269                 };
270         };
271 };