bcm63xx: add kernel 5.10 support
[openwrt/staging/noltari.git] / target / linux / bcm63xx / patches-5.10 / 519-board_bcm63268.patch
1 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
2 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
3 @@ -2697,6 +2697,273 @@ static struct board_info __initdata boar
4 #endif /* CONFIG_BCM63XX_CPU_6368 */
5
6 /*
7 + * known 63268/63269 boards
8 + */
9 +#ifdef CONFIG_BCM63XX_CPU_63268
10 +static struct board_info __initdata board_963268bu_p300 = {
11 + .name = "963268BU_P300",
12 + .expected_cpu_id = 0x63268,
13 +
14 + .has_ohci0 = 1,
15 + .has_ehci0 = 1,
16 + .num_usbh_ports = 1,
17 +
18 + .has_usbd = 1,
19 + .usbd = {
20 + .use_fullspeed = 0,
21 + .port_no = 0,
22 + },
23 +
24 + .has_enetsw = 1,
25 + .enetsw = {
26 + .used_ports = {
27 + [0] = {
28 + .used = 1,
29 + .phy_id = 17,
30 + .name = "FE1",
31 + },
32 + [3] = {
33 + .used = 1,
34 + .phy_id = 4,
35 + .name = "GbE2",
36 + },
37 + [4] = {
38 + .used = 1,
39 + .phy_id = 0,
40 + .name = "GbE3",
41 + .mii_override = 1,
42 + .timing_sel = 1,
43 + },
44 + [5] = {
45 + .used = 1,
46 + .phy_id = 1,
47 + .name = "GbE1",
48 + .mii_override = 1,
49 + .timing_sel = 1,
50 + },
51 + [6] = {
52 + .used = 1,
53 + .phy_id = 24,
54 + .name = "GbE4",
55 + .mii_override = 1,
56 + .timing_sel = 1,
57 + },
58 + [7] = {
59 + .used = 1,
60 + .phy_id = 25,
61 + .name = "GbE5",
62 + .mii_override = 1,
63 + .timing_sel = 1,
64 + },
65 + },
66 + },
67 +};
68 +
69 +static struct board_info __initdata board_963269bhr = {
70 + .name = "963269BHR",
71 + .expected_cpu_id = 0x63268,
72 +
73 + .has_pci = 1,
74 + .has_ohci0 = 1,
75 + .has_ehci0 = 1,
76 +
77 + .has_enetsw = 1,
78 + .enetsw = {
79 + .used_ports = {
80 + [0] = {
81 + .used = 1,
82 + .phy_id = 1,
83 + .name = "port1",
84 + },
85 + [1] = {
86 + .used = 1,
87 + .phy_id = 2,
88 + .name = "port2",
89 + },
90 + [2] = {
91 + .used = 1,
92 + .phy_id = 3,
93 + .name = "port3",
94 + },
95 + [3] = {
96 + .used = 1,
97 + .phy_id = 4,
98 + .name = "port4",
99 + },
100 + },
101 + },
102 +};
103 +
104 +static struct board_info __initdata board_BSKYB_63168 = {
105 + .name = "BSKYB_63168",
106 + .expected_cpu_id = 0x63268,
107 +
108 + .has_pci = 1,
109 + .has_ohci0 = 1,
110 + .has_ehci0 = 1,
111 + .num_usbh_ports = 2,
112 +
113 + .has_enetsw = 1,
114 + .enetsw = {
115 + .used_ports = {
116 + [0] = {
117 + .used = 1,
118 + .phy_id = 1,
119 + .name = "Port 1",
120 + },
121 + [1] = {
122 + .used = 1,
123 + .phy_id = 2,
124 + .name = "Port 2",
125 + },
126 + [2] = {
127 + .used = 1,
128 + .phy_id = 3,
129 + .name = "Port 3",
130 + },
131 + [3] = {
132 + .used = 1,
133 + .phy_id = 4,
134 + .name = "Port 4",
135 + },
136 + },
137 + },
138 +};
139 +
140 +static struct board_info __initdata board_H500s = {
141 + .name = "BXK00C-1.6",
142 + .expected_cpu_id = 0x63268,
143 +
144 + .has_ohci0 = 1,
145 + .has_ehci0 = 1,
146 + .num_usbh_ports = 1,
147 +
148 + .has_enetsw = 1,
149 + .enetsw = {
150 + .used_ports = {
151 + [3] = {
152 + .used = 1,
153 + .phy_id = 12,
154 + .name = "WAN",
155 + },
156 + [4] = {
157 + .used = 1,
158 + .phy_id = 0,
159 + .bypass_link = 1,
160 + .force_speed = 1000,
161 + .force_duplex_full = 1,
162 + .mii_override = 1,
163 + .timing_sel = 1,
164 + .name = "RGMII",
165 + },
166 + },
167 + },
168 +};
169 +
170 +static struct board_info __initdata board_VG8050 = {
171 + .name = "963169P-1861N5",
172 + .expected_cpu_id = 0x63268,
173 +
174 + .has_ohci0 = 1,
175 + .has_ehci0 = 1,
176 + .num_usbh_ports = 2,
177 +
178 + .has_enetsw = 1,
179 + .enetsw = {
180 + .used_ports = {
181 + [6] = {
182 + .used = 1,
183 + .phy_id = 0xff,
184 + .bypass_link = 1,
185 + .force_speed = 1000,
186 + .force_duplex_full = 1,
187 + .mii_override = 1,
188 + .timing_sel = 1,
189 + .name = "RGMII",
190 + },
191 + },
192 + },
193 +};
194 +
195 +static struct board_info __initdata board_VR3032u = {
196 + .name = "963168M-1841N1",
197 + .expected_cpu_id = 0x63268,
198 +
199 + .has_ohci0 = 1,
200 + .has_ehci0 = 1,
201 + .num_usbh_ports = 1,
202 +
203 + .has_enetsw = 1,
204 + .enetsw = {
205 + .used_ports = {
206 + [0] = {
207 + .used = 1,
208 + .phy_id = 1,
209 + .name = "LAN2",
210 + },
211 + [1] = {
212 + .used = 1,
213 + .phy_id = 2,
214 + .name = "LAN3",
215 + },
216 + [2] = {
217 + .used = 1,
218 + .phy_id = 3,
219 + .name = "LAN4",
220 + },
221 + [3] = {
222 + .used = 1,
223 + .phy_id = 4,
224 + .name = "LAN1",
225 + },
226 + },
227 + },
228 +};
229 +
230 +static struct board_info __initdata board_vw6339gu = {
231 + .name = "VW6339GU",
232 + .expected_cpu_id = 0x63268,
233 +
234 + .has_ohci0 = 1,
235 + .has_ehci0 = 1,
236 + .num_usbh_ports = 1,
237 +
238 + .has_enetsw = 1,
239 + .enetsw = {
240 + .used_ports = {
241 + [0] = {
242 + .used = 1,
243 + .phy_id = 1,
244 + .name = "LAN2",
245 + },
246 + [1] = {
247 + .used = 1,
248 + .phy_id = 2,
249 + .name = "LAN3",
250 + },
251 + [2] = {
252 + .used = 1,
253 + .phy_id = 3,
254 + .name = "LAN4",
255 + },
256 + [3] = {
257 + .used = 1,
258 + .phy_id = 4,
259 + .name = "LAN1",
260 + },
261 + [4] = {
262 + .used = 1,
263 + .phy_id = 7,
264 + .name = "WAN",
265 + .mii_override = 1,
266 + .timing_sel = 1,
267 + },
268 + },
269 + },
270 +};
271 +#endif /* CONFIG_BCM63XX_CPU_63268 */
272 +
273 +/*
274 * all boards
275 */
276 static const struct board_info __initconst *bcm963xx_boards[] = {
277 @@ -2801,6 +3068,15 @@ static const struct board_info __initcon
278 &board_VR3026e,
279 &board_WAP5813n,
280 #endif /* CONFIG_BCM63XX_CPU_6368 */
281 +#ifdef CONFIG_BCM63XX_CPU_63268
282 + &board_963268bu_p300,
283 + &board_963269bhr,
284 + &board_BSKYB_63168,
285 + &board_H500s,
286 + &board_VG8050,
287 + &board_VR3032u,
288 + &board_vw6339gu,
289 +#endif /* CONFIG_BCM63XX_CPU_63268 */
290 };
291
292 static struct of_device_id const bcm963xx_boards_dt[] = {
293 @@ -2918,6 +3194,14 @@ static struct of_device_id const bcm963x
294 { .compatible = "zyxel,p870hw-51a-v2", .data = &board_P870HW51A_V2, },
295 #endif /* CONFIG_BCM63XX_CPU_6368 */
296 #ifdef CONFIG_BCM63XX_CPU_63268
297 + { .compatible = "brcm,bcm963268bu-p300", .data = &board_963268bu_p300, },
298 + { .compatible = "brcm,bcm963269bhr", .data = &board_963269bhr, },
299 + { .compatible = "comtrend,vg-8050", .data = &board_VG8050, },
300 + { .compatible = "comtrend,vr-3032u", .data = &board_VR3032u, },
301 + { .compatible = "inteno,vg50", .data = &board_vw6339gu, },
302 + { .compatible = "sercomm,h500-s-lowi", .data = &board_H500s, },
303 + { .compatible = "sercomm,h500-s-vfes", .data = &board_H500s, },
304 + { .compatible = "sky,sr102", .data = &board_BSKYB_63168, },
305 #endif /* CONFIG_BCM63XX_CPU_63268 */
306 #endif /* CONFIG_OF */
307 { },