130944f4f5ca33ef9e84616b54ffdbf83379eb5d
[oweals/openwrt.git] / target / linux / ath79 / dts / qca9531_tplink_archer-d50-v1.dts
1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2 /dts-v1/;
3
4 #include <dt-bindings/gpio/gpio.h>
5 #include <dt-bindings/input/input.h>
6
7 #include "qca953x.dtsi"
8
9 / {
10         compatible = "tplink,archer-d50-v1", "qca,qca9531";
11         model = "TP-Link Archer D50 v1";
12
13         aliases {
14                 led-boot = &led_system;
15                 led-failsafe = &led_system;
16                 led-running = &led_system;
17                 led-upgrade = &led_system;
18                 label-mac-device = &wmac;
19         };
20
21         chosen {
22                 bootargs = "console=ttyS0,115200n8";
23         };
24
25         leds {
26                 compatible = "gpio-leds";
27
28                 wlan2g {
29                         label = "tp-link:white:wlan2g";
30                         gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
31                         linux,default-trigger = "phy0tpt";
32                 };
33
34                 wlan5g {
35                         label = "tp-link:white:wlan5g";
36                         gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
37                         linux,default-trigger = "phy1tpt";
38                 };
39
40                 qss {
41                         label = "tp-link:white:qss";
42                         gpios = <&gpio 17 GPIO_ACTIVE_LOW>;
43                 };
44
45                 wan {
46                         label = "tp-link:white:wan";
47                         gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
48                 };
49
50                 lan {
51                         label = "tp-link:white:lan";
52                         gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
53                 };
54
55                 usb {
56                         label = "tp-link:white:usb";
57                         gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
58                         trigger-sources = <&hub_port0>;
59                         linux,default-trigger = "usbport";
60                 };
61
62                 internet {
63                         label = "tp-link:white:internet";
64                         gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
65                 };
66
67                 led_system: system {
68                         label = "tp-link:white:system";
69                         gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
70                         default-state = "on";
71                 };
72         };
73
74         keys {
75                 compatible = "gpio-keys";
76
77                 reset {
78                         label = "Reset button";
79                         linux,code = <KEY_RESTART>;
80                         gpios = <&gpio 0 GPIO_ACTIVE_LOW>;
81                 };
82
83                 rfkill {
84                         label = "RFKILL button";
85                         linux,code = <KEY_RFKILL>;
86                         gpios = <&gpio 3 GPIO_ACTIVE_LOW>;
87                 };
88
89                 wps {
90                         label = "WPS button";
91                         linux,code = <KEY_WPS_BUTTON>;
92                         gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
93                 };
94         };
95 };
96
97 &uart {
98         status = "okay";
99 };
100
101 &spi {
102         status = "okay";
103
104         flash@0 {
105                 compatible = "jedec,spi-nor";
106                 reg = <0>;
107                 spi-max-frequency = <10000000>;
108
109                 partitions {
110                         compatible = "fixed-partitions";
111                         #address-cells = <1>;
112                         #size-cells = <1>;
113
114                         partition@0 {
115                                 label = "u-boot";
116                                 reg = <0x000000 0x020000>;
117                                 read-only;
118                         };
119
120                         partition@20000 {
121                                 compatible = "tplink,firmware";
122                                 label = "firmware";
123                                 reg = <0x020000 0x7a0000>;
124                         };
125
126                         partition@7c0000 {
127                                 label = "config";
128                                 reg = <0x7c0000 0x010000>;
129                                 read-only;
130                         };
131
132                         romfile: partition@7d0000 {
133                                 label = "romfile";
134                                 reg = <0x7d0000 0x010000>;
135                                 read-only;
136                         };
137
138                         partition@7e0000 {
139                                 label = "rom";
140                                 reg = <0x7e0000 0x010000>;
141                                 read-only;
142                         };
143
144                         art: partition@7f0000 {
145                                 label = "art";
146                                 reg = <0x7f0000 0x010000>;
147                                 read-only;
148                         };
149                 };
150         };
151 };
152
153 &eth1 {
154         mtd-mac-address = <&romfile 0xf100>;
155 };
156
157 &eth0 {
158         status = "okay";
159
160         phy-handle = <&swphy4>;
161
162         mtd-mac-address = <&romfile 0xf100>;
163         mtd-mac-address-increment = <1>;
164 };
165
166 &wmac {
167         status = "okay";
168
169         mtd-cal-data = <&art 0x1000>;
170         mtd-mac-address = <&romfile 0xf100>;
171 };
172
173 &pcie0 {
174         status = "okay";
175
176         wifi@0,0 {
177                 compatible = "pci168c,003c";
178                 reg = <0x0000 0 0 0 0>;
179         };
180 };
181
182 &usb_phy {
183         status = "okay";
184 };
185
186 &usb0 {
187         #address-cells = <1>;
188         #size-cells = <0>;
189         status = "okay";
190
191         hub_port0: port@1 {
192                 reg = <1>;
193                 #trigger-source-cells = <0>;
194         };
195 };