ath79: support Ruckus ZoneFlex 7025
[openwrt/staging/ldir.git] / target / linux / ath79 / dts / ar7240_ruckus_zf7025.dts
1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2
3 #include "ar7240.dtsi"
4
5 #include <dt-bindings/gpio/gpio.h>
6 #include <dt-bindings/input/input.h>
7
8
9 / {
10 model = "Ruckus ZoneFlex 7025";
11 compatible = "ruckus,zf7025", "qca,ar7240";
12
13 aliases {
14 led-boot = &led_power_green;
15 led-failsafe = &led_power_red;
16 led-running = &led_power_green;
17 led-upgrade = &led_power_red;
18 label-mac-device = &eth0;
19 };
20
21 keys {
22 compatible = "gpio-keys";
23
24 hard-reset {
25 label = "hard-reset";
26 linux,code = <KEY_RESTART>;
27 gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
28 debounce-interval = <60>;
29 };
30 };
31
32 leds: leds {
33 compatible = "gpio-leds";
34
35 pinctrl-names = "default";
36 pinctrl-0 = <&jtag_disable_pins &switch_led_disable_pins &clks_disable_pins>;
37
38 dir {
39 label = "green:dir";
40 gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
41 };
42
43 lan1 {
44 label = "green:lan1";
45 gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
46 };
47
48 lan2 {
49 label = "green:lan2";
50 gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
51 };
52
53 lan3 {
54 label = "green:lan3";
55 gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
56 };
57
58 lan4 {
59 label = "green:lan4";
60 gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
61 };
62
63 lan5 {
64 label = "green:lan5";
65 gpios = <&gpio 17 GPIO_ACTIVE_LOW>;
66 };
67
68 opt {
69 label = "green:opt";
70 gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
71 };
72
73 led_power_red: power-red {
74 label = "red:power";
75 gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
76 panic-indicator;
77 };
78
79 led_power_green: power-green {
80 label = "green:power";
81 gpios = <&gpio 7 GPIO_ACTIVE_LOW>;
82 default-state = "on";
83 };
84
85 wlan-green {
86 label = "green:wlan";
87 gpios = <&gpio 0 GPIO_ACTIVE_LOW>;
88 linux,default-trigger = "phy0assoc";
89 };
90
91 wlan-yellow {
92 label = "yellow:wlan";
93 gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
94 linux,default-trigger = "phy0tpt";
95 };
96 };
97
98 reserved-memory {
99 #address-cells = <1>;
100 #size-cells = <1>;
101 ranges;
102
103 ruckus-himem@3ff0000 {
104 /* Ruckus Himem area used to control
105 * redundant boot image selection
106 */
107 compatible = "nvmem-rmem";
108 reg = <0x3ff0000 0x10000>;
109 no-map;
110 };
111 };
112 };
113
114 &spi {
115 status = "okay";
116
117 flash@0 {
118 compatible = "jedec,spi-nor";
119 reg = <0>;
120 spi-max-frequency = <104000000>;
121 m25p,fast-read;
122
123 partitions {
124 compatible = "fixed-partitions";
125 #address-cells = <1>;
126 #size-cells = <1>;
127
128 partition@0 {
129 reg = <0x0 0x40000>;
130 label = "u-boot";
131 read-only;
132 };
133
134 /* On stock FW this encompasses rcks_wlan.main,
135 * rcks_wlan.bkup and datafs partitions
136 */
137 partition@40000 {
138 compatible = "openwrt,uimage", "denx,uimage";
139 reg = <0x40000 0xf40000>;
140 label = "firmware";
141 };
142
143 partition@f80000 {
144 compatible = "u-boot,env";
145 reg = <0xf80000 0x40000>;
146 label = "u-boot-env";
147 };
148
149 board_data: partition@fc0000 {
150 reg = <0xfc0000 0x40000>;
151 label = "board-data";
152 read-only;
153 };
154 };
155 };
156 };
157
158 &eth0 {
159 nvmem-cells = <&macaddr_board_data_66>;
160 nvmem-cell-names = "mac-address";
161 };
162
163 &eth1 {
164 status = "okay";
165 nvmem-cells = <&macaddr_board_data_6c>;
166 nvmem-cell-names = "mac-address";
167 };
168
169 &pcie {
170 status = "okay";
171
172 ath9k: wifi@0,0 {
173 compatible = "pci168c,002b";
174 reg = <0x0000 0 0 0 0>;
175 nvmem-cells = <&macaddr_board_data_60>;
176 nvmem-cell-names = "mac-address";
177 };
178 };
179
180 &board_data {
181 compatible = "nvmem-cells";
182 #address-cells = <1>;
183 #size-cells = <1>;
184
185 macaddr_board_data_60: macaddr@60 {
186 reg = <0x60 0x6>;
187 };
188
189 macaddr_board_data_66: macaddr@66 {
190 reg = <0x66 0x6>;
191 };
192
193 macaddr_board_data_6c: macaddr@6c {
194 reg = <0x6c 0x6>;
195 };
196 };