f9fefaccb8103ca92277cf086a28f75f70ddb0be
[openwrt/staging/nbd.git] / target / linux / bmips / dts / bcm6368-observa-vh4032n.dts
1 // SPDX-License-Identifier: GPL-2.0-or-later
2
3 #include <dt-bindings/leds/common.h>
4
5 #include "bcm6368.dtsi"
6
7 / {
8 model = "Observa VH4032N";
9 compatible = "observa,vh4032n", "brcm,bcm6368";
10
11 aliases {
12 led-boot = &led_power_blue;
13 led-failsafe = &led_power_red;
14 led-running = &led_power_blue;
15 led-upgrade = &led_power_blue;
16 };
17
18 keys {
19 compatible = "gpio-keys-polled";
20 poll-interval = <100>;
21
22 reset {
23 label = "reset";
24 gpios = <&gpio 34 GPIO_ACTIVE_LOW>;
25 linux,code = <KEY_RESTART>;
26 debounce-interval = <60>;
27 };
28
29 rfkill {
30 label = "rfkill";
31 gpios = <&gpio 35 GPIO_ACTIVE_LOW>;
32 linux,code = <KEY_RFKILL>;
33 debounce-interval = <60>;
34 };
35 };
36
37 leds {
38 compatible = "gpio-leds";
39
40 led@2 {
41 label = "blue:dsl";
42 gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
43 };
44
45 led@5 {
46 label = "red:dsl";
47 gpios = <&gpio 5 GPIO_ACTIVE_LOW>;
48 };
49
50 led@11 {
51 label = "blue:hspa";
52 gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
53 };
54
55 led@12 {
56 label = "red:hspa";
57 gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
58 };
59
60 led_power_blue: led@22 {
61 function = LED_FUNCTION_POWER;
62 color = <LED_COLOR_ID_BLUE>;
63 gpios = <&gpio 22 GPIO_ACTIVE_HIGH>;
64 };
65
66 led_power_red: led@24 {
67 function = LED_FUNCTION_POWER;
68 color = <LED_COLOR_ID_RED>;
69 gpios = <&gpio 24 GPIO_ACTIVE_HIGH>;
70 panic-indicator;
71 };
72
73 led@25 {
74 label = "blue:voice";
75 gpios = <&gpio 25 GPIO_ACTIVE_LOW>;
76 };
77
78 led@26 {
79 label = "red:voice";
80 gpios = <&gpio 26 GPIO_ACTIVE_LOW>;
81 };
82 };
83
84 bcm43222-sprom {
85 compatible = "brcm,ssb-sprom";
86
87 pci-bus = <0>;
88 pci-dev = <1>;
89
90 nvmem-cells = <&macaddr_cfe_6a0 1>;
91 nvmem-cell-names = "mac-address";
92
93 brcm,sprom = "brcm/bcm43222-sprom.bin";
94 brcm,sprom-fixups = <2 0x04d2>, <4 0x4350>,
95 <65 0x1300>, <68 0x0402>,
96 <70 0x0090>, <71 0x4c19>,
97 <72 0x2345>, <87 0x0315>,
98 <88 0x0315>, <96 0x2048>,
99 <97 0xfed7>, <98 0x15a6>,
100 <99 0xfaee>, <100 0x3e3a>,
101 <101 0x3a36>, <102 0xff7f>,
102 <103 0x11b9>, <104 0xfc53>,
103 <105 0xffe6>, <106 0xfdd2>,
104 <107 0xfe49>, <108 0xff6a>,
105 <109 0x136e>, <110 0xfbed>,
106 <111 0x0000>, <112 0x2048>,
107 <113 0xfee2>, <114 0x15e5>,
108 <115 0xfaed>, <116 0x3e3a>,
109 <117 0x3a36>, <118 0xffc8>,
110 <119 0x12b8>, <120 0xfca1>,
111 <121 0xff9b>, <122 0x122a>,
112 <123 0xfcc8>, <124 0xff95>,
113 <125 0x146b>, <126 0xfbba>,
114 <127 0x0000>, <161 0x0000>,
115 <162 0x0000>, <169 0x0000>,
116 <170 0x0000>, <171 0x0000>,
117 <172 0x0000>, <173 0x0000>,
118 <174 0x0000>, <175 0x0000>,
119 <176 0x0000>, <219 0x1108>;
120 };
121 };
122
123 &ehci {
124 status = "okay";
125 };
126
127 &ethernet {
128 status = "okay";
129
130 nvmem-cells = <&macaddr_cfe_6a0 0>;
131 nvmem-cell-names = "mac-address";
132 };
133
134 &gpio {
135 usb_hub_reset {
136 gpio-hog;
137 gpios = <27 GPIO_ACTIVE_HIGH>;
138 output-high;
139 line-name = "usb-hub-reset-gpio";
140 };
141 };
142
143 &ohci {
144 status = "okay";
145 };
146
147 &pci {
148 status = "okay";
149 };
150
151 &pflash {
152 status = "okay";
153
154 partitions {
155 compatible = "fixed-partitions";
156 #address-cells = <1>;
157 #size-cells = <1>;
158
159 partition@0 {
160 label = "CFE";
161 reg = <0x0000000 0x0020000>;
162 read-only;
163
164 nvmem-layout {
165 compatible = "fixed-layout";
166 #address-cells = <1>;
167 #size-cells = <1>;
168
169 macaddr_cfe_6a0: macaddr@6a0 {
170 compatible = "mac-base";
171 reg = <0x6a0 0x6>;
172 #nvmem-cell-cells = <1>;
173 };
174 };
175 };
176
177 partition@20000 {
178 compatible = "brcm,bcm963xx-imagetag";
179 label = "firmware";
180 reg = <0x0020000 0x1fc0000>;
181 };
182
183 partition@1fe0000 {
184 label = "nvram";
185 reg = <0x1fe0000 0x020000>;
186 };
187 };
188 };
189
190 &pinctrl {
191 pinctrl-names = "default";
192 pinctrl-0 = <&pinctrl_ephy0_led &pinctrl_ephy1_led
193 &pinctrl_ephy2_led &pinctrl_ephy3_led>;
194 };
195
196 &switch0 {
197 ports {
198 port@0 {
199 reg = <0>;
200 label = "lan4";
201
202 phy-handle = <&phy1>;
203 phy-mode = "mii";
204 };
205
206 port@1 {
207 reg = <1>;
208 label = "lan3";
209
210 phy-handle = <&phy2>;
211 phy-mode = "mii";
212 };
213
214 port@2 {
215 reg = <2>;
216 label = "lan2";
217
218 phy-handle = <&phy3>;
219 phy-mode = "mii";
220 };
221
222 port@3 {
223 reg = <3>;
224 label = "lan1";
225
226 phy-handle = <&phy4>;
227 phy-mode = "mii";
228 };
229 };
230 };
231
232 &uart0 {
233 status = "okay";
234 };
235
236 &usbh {
237 status = "okay";
238 };