forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-01-04 1543e317f1da31b75942316931e8f491a8920811
kernel/arch/mips/bcm63xx/boards/board_bcm963xx.c
....@@ -1,8 +1,5 @@
1
+// SPDX-License-Identifier: GPL-2.0-only
12 /*
2
- * This file is subject to the terms and conditions of the GNU General Public
3
- * License. See the file "COPYING" in the main directory of this archive
4
- * for more details.
5
- *
63 * Copyright (C) 2008 Maxime Bizon <mbizon@freebox.fr>
74 * Copyright (C) 2008 Florian Fainelli <florian@openwrt.org>
85 */
....@@ -32,7 +29,6 @@
3229
3330 #include <uapi/linux/bcm933xx_hcs.h>
3431
35
-
3632 #define HCS_OFFSET_128K 0x20000
3733
3834 static struct board_info board;
....@@ -42,619 +38,608 @@
4238 */
4339 #ifdef CONFIG_BCM63XX_CPU_3368
4440 static struct board_info __initdata board_cvg834g = {
45
- .name = "CVG834G_E15R3921",
46
- .expected_cpu_id = 0x3368,
41
+ .name = "CVG834G_E15R3921",
42
+ .expected_cpu_id = 0x3368,
4743
48
- .has_uart0 = 1,
49
- .has_uart1 = 1,
44
+ .ephy_reset_gpio = 36,
45
+ .ephy_reset_gpio_flags = GPIOF_INIT_HIGH,
46
+ .has_pci = 1,
47
+ .has_uart0 = 1,
48
+ .has_uart1 = 1,
5049
51
- .has_enet0 = 1,
52
- .has_pci = 1,
53
-
50
+ .has_enet0 = 1,
5451 .enet0 = {
55
- .has_phy = 1,
56
- .use_internal_phy = 1,
52
+ .has_phy = 1,
53
+ .use_internal_phy = 1,
5754 },
5855
5956 .leds = {
6057 {
61
- .name = "CVG834G:green:power",
62
- .gpio = 37,
58
+ .name = "CVG834G:green:power",
59
+ .gpio = 37,
6360 .default_trigger= "default-on",
6461 },
6562 },
66
-
67
- .ephy_reset_gpio = 36,
68
- .ephy_reset_gpio_flags = GPIOF_INIT_HIGH,
6963 };
70
-#endif
64
+#endif /* CONFIG_BCM63XX_CPU_3368 */
7165
7266 /*
7367 * known 6328 boards
7468 */
7569 #ifdef CONFIG_BCM63XX_CPU_6328
7670 static struct board_info __initdata board_96328avng = {
77
- .name = "96328avng",
78
- .expected_cpu_id = 0x6328,
71
+ .name = "96328avng",
72
+ .expected_cpu_id = 0x6328,
7973
80
- .has_uart0 = 1,
81
- .has_pci = 1,
82
- .has_usbd = 0,
74
+ .has_pci = 1,
75
+ .has_uart0 = 1,
8376
77
+ .has_usbd = 0,
8478 .usbd = {
85
- .use_fullspeed = 0,
86
- .port_no = 0,
79
+ .use_fullspeed = 0,
80
+ .port_no = 0,
8781 },
8882
8983 .leds = {
9084 {
91
- .name = "96328avng::ppp-fail",
92
- .gpio = 2,
93
- .active_low = 1,
85
+ .name = "96328avng::ppp-fail",
86
+ .gpio = 2,
87
+ .active_low = 1,
9488 },
9589 {
96
- .name = "96328avng::power",
97
- .gpio = 4,
98
- .active_low = 1,
90
+ .name = "96328avng::power",
91
+ .gpio = 4,
92
+ .active_low = 1,
9993 .default_trigger = "default-on",
10094 },
10195 {
102
- .name = "96328avng::power-fail",
103
- .gpio = 8,
104
- .active_low = 1,
96
+ .name = "96328avng::power-fail",
97
+ .gpio = 8,
98
+ .active_low = 1,
10599 },
106100 {
107
- .name = "96328avng::wps",
108
- .gpio = 9,
109
- .active_low = 1,
101
+ .name = "96328avng::wps",
102
+ .gpio = 9,
103
+ .active_low = 1,
110104 },
111105 {
112
- .name = "96328avng::ppp",
113
- .gpio = 11,
114
- .active_low = 1,
106
+ .name = "96328avng::ppp",
107
+ .gpio = 11,
108
+ .active_low = 1,
115109 },
116110 },
117111 };
118
-#endif
112
+#endif /* CONFIG_BCM63XX_CPU_6328 */
119113
120114 /*
121115 * known 6338 boards
122116 */
123117 #ifdef CONFIG_BCM63XX_CPU_6338
124118 static struct board_info __initdata board_96338gw = {
125
- .name = "96338GW",
126
- .expected_cpu_id = 0x6338,
119
+ .name = "96338GW",
120
+ .expected_cpu_id = 0x6338,
127121
128
- .has_uart0 = 1,
129
- .has_enet0 = 1,
122
+ .has_ohci0 = 1,
123
+ .has_uart0 = 1,
124
+
125
+ .has_enet0 = 1,
130126 .enet0 = {
131
- .force_speed_100 = 1,
132
- .force_duplex_full = 1,
127
+ .force_speed_100 = 1,
128
+ .force_duplex_full = 1,
133129 },
134
-
135
- .has_ohci0 = 1,
136130
137131 .leds = {
138132 {
139
- .name = "adsl",
140
- .gpio = 3,
141
- .active_low = 1,
133
+ .name = "adsl",
134
+ .gpio = 3,
135
+ .active_low = 1,
142136 },
143137 {
144
- .name = "ses",
145
- .gpio = 5,
146
- .active_low = 1,
138
+ .name = "ses",
139
+ .gpio = 5,
140
+ .active_low = 1,
147141 },
148142 {
149
- .name = "ppp-fail",
150
- .gpio = 4,
151
- .active_low = 1,
143
+ .name = "ppp-fail",
144
+ .gpio = 4,
145
+ .active_low = 1,
152146 },
153147 {
154
- .name = "power",
155
- .gpio = 0,
156
- .active_low = 1,
148
+ .name = "power",
149
+ .gpio = 0,
150
+ .active_low = 1,
157151 .default_trigger = "default-on",
158152 },
159153 {
160
- .name = "stop",
161
- .gpio = 1,
162
- .active_low = 1,
154
+ .name = "stop",
155
+ .gpio = 1,
156
+ .active_low = 1,
163157 }
164158 },
165159 };
166160
167161 static struct board_info __initdata board_96338w = {
168
- .name = "96338W",
169
- .expected_cpu_id = 0x6338,
162
+ .name = "96338W",
163
+ .expected_cpu_id = 0x6338,
170164
171
- .has_uart0 = 1,
172
- .has_enet0 = 1,
165
+ .has_uart0 = 1,
166
+
167
+ .has_enet0 = 1,
173168 .enet0 = {
174
- .force_speed_100 = 1,
175
- .force_duplex_full = 1,
169
+ .force_speed_100 = 1,
170
+ .force_duplex_full = 1,
176171 },
177172
178173 .leds = {
179174 {
180
- .name = "adsl",
181
- .gpio = 3,
182
- .active_low = 1,
175
+ .name = "adsl",
176
+ .gpio = 3,
177
+ .active_low = 1,
183178 },
184179 {
185
- .name = "ses",
186
- .gpio = 5,
187
- .active_low = 1,
180
+ .name = "ses",
181
+ .gpio = 5,
182
+ .active_low = 1,
188183 },
189184 {
190
- .name = "ppp-fail",
191
- .gpio = 4,
192
- .active_low = 1,
185
+ .name = "ppp-fail",
186
+ .gpio = 4,
187
+ .active_low = 1,
193188 },
194189 {
195
- .name = "power",
196
- .gpio = 0,
197
- .active_low = 1,
190
+ .name = "power",
191
+ .gpio = 0,
192
+ .active_low = 1,
198193 .default_trigger = "default-on",
199194 },
200195 {
201
- .name = "stop",
202
- .gpio = 1,
203
- .active_low = 1,
196
+ .name = "stop",
197
+ .gpio = 1,
198
+ .active_low = 1,
204199 },
205200 },
206201 };
207
-#endif
202
+#endif /* CONFIG_BCM63XX_CPU_6338 */
208203
209204 /*
210205 * known 6345 boards
211206 */
212207 #ifdef CONFIG_BCM63XX_CPU_6345
213208 static struct board_info __initdata board_96345gw2 = {
214
- .name = "96345GW2",
215
- .expected_cpu_id = 0x6345,
209
+ .name = "96345GW2",
210
+ .expected_cpu_id = 0x6345,
216211
217
- .has_uart0 = 1,
212
+ .has_uart0 = 1,
218213 };
219
-#endif
214
+#endif /* CONFIG_BCM63XX_CPU_6345 */
220215
221216 /*
222217 * known 6348 boards
223218 */
224219 #ifdef CONFIG_BCM63XX_CPU_6348
225220 static struct board_info __initdata board_96348r = {
226
- .name = "96348R",
227
- .expected_cpu_id = 0x6348,
221
+ .name = "96348R",
222
+ .expected_cpu_id = 0x6348,
228223
229
- .has_uart0 = 1,
230
- .has_enet0 = 1,
231
- .has_pci = 1,
224
+ .has_pci = 1,
225
+ .has_uart0 = 1,
232226
227
+ .has_enet0 = 1,
233228 .enet0 = {
234
- .has_phy = 1,
235
- .use_internal_phy = 1,
229
+ .has_phy = 1,
230
+ .use_internal_phy = 1,
236231 },
237232
238233 .leds = {
239234 {
240
- .name = "adsl-fail",
241
- .gpio = 2,
242
- .active_low = 1,
235
+ .name = "adsl-fail",
236
+ .gpio = 2,
237
+ .active_low = 1,
243238 },
244239 {
245
- .name = "ppp",
246
- .gpio = 3,
247
- .active_low = 1,
240
+ .name = "ppp",
241
+ .gpio = 3,
242
+ .active_low = 1,
248243 },
249244 {
250
- .name = "ppp-fail",
251
- .gpio = 4,
252
- .active_low = 1,
245
+ .name = "ppp-fail",
246
+ .gpio = 4,
247
+ .active_low = 1,
253248 },
254249 {
255
- .name = "power",
256
- .gpio = 0,
257
- .active_low = 1,
250
+ .name = "power",
251
+ .gpio = 0,
252
+ .active_low = 1,
258253 .default_trigger = "default-on",
259254
260255 },
261256 {
262
- .name = "stop",
263
- .gpio = 1,
264
- .active_low = 1,
257
+ .name = "stop",
258
+ .gpio = 1,
259
+ .active_low = 1,
265260 },
266261 },
267262 };
268263
269264 static struct board_info __initdata board_96348gw_10 = {
270
- .name = "96348GW-10",
271
- .expected_cpu_id = 0x6348,
265
+ .name = "96348GW-10",
266
+ .expected_cpu_id = 0x6348,
272267
273
- .has_uart0 = 1,
274
- .has_enet0 = 1,
275
- .has_enet1 = 1,
276
- .has_pci = 1,
268
+ .has_ohci0 = 1,
269
+ .has_pccard = 1,
270
+ .has_pci = 1,
271
+ .has_uart0 = 1,
277272
273
+ .has_enet0 = 1,
278274 .enet0 = {
279
- .has_phy = 1,
280
- .use_internal_phy = 1,
281
- },
282
- .enet1 = {
283
- .force_speed_100 = 1,
284
- .force_duplex_full = 1,
275
+ .has_phy = 1,
276
+ .use_internal_phy = 1,
285277 },
286278
287
- .has_ohci0 = 1,
288
- .has_pccard = 1,
289
- .has_ehci0 = 1,
279
+ .has_enet1 = 1,
280
+ .enet1 = {
281
+ .force_speed_100 = 1,
282
+ .force_duplex_full = 1,
283
+ },
290284
291285 .leds = {
292286 {
293
- .name = "adsl-fail",
294
- .gpio = 2,
295
- .active_low = 1,
287
+ .name = "adsl-fail",
288
+ .gpio = 2,
289
+ .active_low = 1,
296290 },
297291 {
298
- .name = "ppp",
299
- .gpio = 3,
300
- .active_low = 1,
292
+ .name = "ppp",
293
+ .gpio = 3,
294
+ .active_low = 1,
301295 },
302296 {
303
- .name = "ppp-fail",
304
- .gpio = 4,
305
- .active_low = 1,
297
+ .name = "ppp-fail",
298
+ .gpio = 4,
299
+ .active_low = 1,
306300 },
307301 {
308
- .name = "power",
309
- .gpio = 0,
310
- .active_low = 1,
302
+ .name = "power",
303
+ .gpio = 0,
304
+ .active_low = 1,
311305 .default_trigger = "default-on",
312306 },
313307 {
314
- .name = "stop",
315
- .gpio = 1,
316
- .active_low = 1,
308
+ .name = "stop",
309
+ .gpio = 1,
310
+ .active_low = 1,
317311 },
318312 },
319313 };
320314
321315 static struct board_info __initdata board_96348gw_11 = {
322
- .name = "96348GW-11",
323
- .expected_cpu_id = 0x6348,
324
-
325
- .has_uart0 = 1,
326
- .has_enet0 = 1,
327
- .has_enet1 = 1,
328
- .has_pci = 1,
329
-
330
- .enet0 = {
331
- .has_phy = 1,
332
- .use_internal_phy = 1,
333
- },
334
-
335
- .enet1 = {
336
- .force_speed_100 = 1,
337
- .force_duplex_full = 1,
338
- },
339
-
316
+ .name = "96348GW-11",
317
+ .expected_cpu_id = 0x6348,
340318
341319 .has_ohci0 = 1,
342320 .has_pccard = 1,
343
- .has_ehci0 = 1,
321
+ .has_pci = 1,
322
+ .has_uart0 = 1,
323
+
324
+ .has_enet0 = 1,
325
+ .enet0 = {
326
+ .has_phy = 1,
327
+ .use_internal_phy = 1,
328
+ },
329
+
330
+ .has_enet1 = 1,
331
+ .enet1 = {
332
+ .force_speed_100 = 1,
333
+ .force_duplex_full = 1,
334
+ },
344335
345336 .leds = {
346337 {
347
- .name = "adsl-fail",
348
- .gpio = 2,
349
- .active_low = 1,
338
+ .name = "adsl-fail",
339
+ .gpio = 2,
340
+ .active_low = 1,
350341 },
351342 {
352
- .name = "ppp",
353
- .gpio = 3,
354
- .active_low = 1,
343
+ .name = "ppp",
344
+ .gpio = 3,
345
+ .active_low = 1,
355346 },
356347 {
357
- .name = "ppp-fail",
358
- .gpio = 4,
359
- .active_low = 1,
348
+ .name = "ppp-fail",
349
+ .gpio = 4,
350
+ .active_low = 1,
360351 },
361352 {
362
- .name = "power",
363
- .gpio = 0,
364
- .active_low = 1,
353
+ .name = "power",
354
+ .gpio = 0,
355
+ .active_low = 1,
365356 .default_trigger = "default-on",
366357 },
367358 {
368
- .name = "stop",
369
- .gpio = 1,
370
- .active_low = 1,
359
+ .name = "stop",
360
+ .gpio = 1,
361
+ .active_low = 1,
371362 },
372363 },
373364 };
374365
375366 static struct board_info __initdata board_96348gw = {
376
- .name = "96348GW",
377
- .expected_cpu_id = 0x6348,
378
-
379
- .has_uart0 = 1,
380
- .has_enet0 = 1,
381
- .has_enet1 = 1,
382
- .has_pci = 1,
383
-
384
- .enet0 = {
385
- .has_phy = 1,
386
- .use_internal_phy = 1,
387
- },
388
- .enet1 = {
389
- .force_speed_100 = 1,
390
- .force_duplex_full = 1,
391
- },
367
+ .name = "96348GW",
368
+ .expected_cpu_id = 0x6348,
392369
393370 .has_ohci0 = 1,
371
+ .has_pci = 1,
372
+ .has_uart0 = 1,
373
+
374
+ .has_enet0 = 1,
375
+ .enet0 = {
376
+ .has_phy = 1,
377
+ .use_internal_phy = 1,
378
+ },
379
+
380
+ .has_enet1 = 1,
381
+ .enet1 = {
382
+ .force_speed_100 = 1,
383
+ .force_duplex_full = 1,
384
+ },
394385
395386 .leds = {
396387 {
397
- .name = "adsl-fail",
398
- .gpio = 2,
399
- .active_low = 1,
388
+ .name = "adsl-fail",
389
+ .gpio = 2,
390
+ .active_low = 1,
400391 },
401392 {
402
- .name = "ppp",
403
- .gpio = 3,
404
- .active_low = 1,
393
+ .name = "ppp",
394
+ .gpio = 3,
395
+ .active_low = 1,
405396 },
406397 {
407
- .name = "ppp-fail",
408
- .gpio = 4,
409
- .active_low = 1,
398
+ .name = "ppp-fail",
399
+ .gpio = 4,
400
+ .active_low = 1,
410401 },
411402 {
412
- .name = "power",
413
- .gpio = 0,
414
- .active_low = 1,
403
+ .name = "power",
404
+ .gpio = 0,
405
+ .active_low = 1,
415406 .default_trigger = "default-on",
416407 },
417408 {
418
- .name = "stop",
419
- .gpio = 1,
420
- .active_low = 1,
409
+ .name = "stop",
410
+ .gpio = 1,
411
+ .active_low = 1,
421412 },
422413 },
423414 };
424415
425416 static struct board_info __initdata board_FAST2404 = {
426
- .name = "F@ST2404",
427
- .expected_cpu_id = 0x6348,
417
+ .name = "F@ST2404",
418
+ .expected_cpu_id = 0x6348,
428419
429
- .has_uart0 = 1,
430
- .has_enet0 = 1,
431
- .has_enet1 = 1,
432
- .has_pci = 1,
420
+ .has_ohci0 = 1,
421
+ .has_pccard = 1,
422
+ .has_pci = 1,
423
+ .has_uart0 = 1,
433424
425
+ .has_enet0 = 1,
434426 .enet0 = {
435
- .has_phy = 1,
436
- .use_internal_phy = 1,
427
+ .has_phy = 1,
428
+ .use_internal_phy = 1,
437429 },
438430
431
+ .has_enet1 = 1,
439432 .enet1 = {
440
- .force_speed_100 = 1,
441
- .force_duplex_full = 1,
433
+ .force_speed_100 = 1,
434
+ .force_duplex_full = 1,
442435 },
443
-
444
- .has_ohci0 = 1,
445
- .has_pccard = 1,
446
- .has_ehci0 = 1,
447436 };
448437
449438 static struct board_info __initdata board_rta1025w_16 = {
450
- .name = "RTA1025W_16",
451
- .expected_cpu_id = 0x6348,
439
+ .name = "RTA1025W_16",
440
+ .expected_cpu_id = 0x6348,
452441
453
- .has_enet0 = 1,
454
- .has_enet1 = 1,
455
- .has_pci = 1,
442
+ .has_pci = 1,
456443
444
+ .has_enet0 = 1,
457445 .enet0 = {
458
- .has_phy = 1,
459
- .use_internal_phy = 1,
446
+ .has_phy = 1,
447
+ .use_internal_phy = 1,
460448 },
449
+
450
+ .has_enet1 = 1,
461451 .enet1 = {
462
- .force_speed_100 = 1,
463
- .force_duplex_full = 1,
452
+ .force_speed_100 = 1,
453
+ .force_duplex_full = 1,
464454 },
465455 };
466456
467
-
468457 static struct board_info __initdata board_DV201AMR = {
469
- .name = "DV201AMR",
470
- .expected_cpu_id = 0x6348,
458
+ .name = "DV201AMR",
459
+ .expected_cpu_id = 0x6348,
471460
472
- .has_uart0 = 1,
473
- .has_pci = 1,
474
- .has_ohci0 = 1,
461
+ .has_ohci0 = 1,
462
+ .has_pci = 1,
463
+ .has_uart0 = 1,
475464
476
- .has_enet0 = 1,
477
- .has_enet1 = 1,
465
+ .has_enet0 = 1,
478466 .enet0 = {
479
- .has_phy = 1,
480
- .use_internal_phy = 1,
467
+ .has_phy = 1,
468
+ .use_internal_phy = 1,
481469 },
470
+
471
+ .has_enet1 = 1,
482472 .enet1 = {
483
- .force_speed_100 = 1,
484
- .force_duplex_full = 1,
473
+ .force_speed_100 = 1,
474
+ .force_duplex_full = 1,
485475 },
486476 };
487477
488478 static struct board_info __initdata board_96348gw_a = {
489
- .name = "96348GW-A",
490
- .expected_cpu_id = 0x6348,
491
-
492
- .has_uart0 = 1,
493
- .has_enet0 = 1,
494
- .has_enet1 = 1,
495
- .has_pci = 1,
496
-
497
- .enet0 = {
498
- .has_phy = 1,
499
- .use_internal_phy = 1,
500
- },
501
- .enet1 = {
502
- .force_speed_100 = 1,
503
- .force_duplex_full = 1,
504
- },
479
+ .name = "96348GW-A",
480
+ .expected_cpu_id = 0x6348,
505481
506482 .has_ohci0 = 1,
483
+ .has_pci = 1,
484
+ .has_uart0 = 1,
485
+
486
+ .has_enet0 = 1,
487
+ .enet0 = {
488
+ .has_phy = 1,
489
+ .use_internal_phy = 1,
490
+ },
491
+
492
+ .has_enet1 = 1,
493
+ .enet1 = {
494
+ .force_speed_100 = 1,
495
+ .force_duplex_full = 1,
496
+ },
507497 };
508
-#endif
498
+#endif /* CONFIG_BCM63XX_CPU_6348 */
509499
510500 /*
511501 * known 6358 boards
512502 */
513503 #ifdef CONFIG_BCM63XX_CPU_6358
514504 static struct board_info __initdata board_96358vw = {
515
- .name = "96358VW",
516
- .expected_cpu_id = 0x6358,
505
+ .name = "96358VW",
506
+ .expected_cpu_id = 0x6358,
517507
518
- .has_uart0 = 1,
519
- .has_enet0 = 1,
520
- .has_enet1 = 1,
521
- .has_pci = 1,
522
-
523
- .enet0 = {
524
- .has_phy = 1,
525
- .use_internal_phy = 1,
526
- },
527
-
528
- .enet1 = {
529
- .force_speed_100 = 1,
530
- .force_duplex_full = 1,
531
- },
532
-
533
-
508
+ .has_ehci0 = 1,
534509 .has_ohci0 = 1,
535510 .has_pccard = 1,
536
- .has_ehci0 = 1,
511
+ .has_pci = 1,
512
+ .has_uart0 = 1,
513
+
514
+ .has_enet0 = 1,
515
+ .enet0 = {
516
+ .has_phy = 1,
517
+ .use_internal_phy = 1,
518
+ },
519
+
520
+ .has_enet1 = 1,
521
+ .enet1 = {
522
+ .force_speed_100 = 1,
523
+ .force_duplex_full = 1,
524
+ },
537525
538526 .leds = {
539527 {
540
- .name = "adsl-fail",
541
- .gpio = 15,
542
- .active_low = 1,
528
+ .name = "adsl-fail",
529
+ .gpio = 15,
530
+ .active_low = 1,
543531 },
544532 {
545
- .name = "ppp",
546
- .gpio = 22,
547
- .active_low = 1,
533
+ .name = "ppp",
534
+ .gpio = 22,
535
+ .active_low = 1,
548536 },
549537 {
550
- .name = "ppp-fail",
551
- .gpio = 23,
552
- .active_low = 1,
538
+ .name = "ppp-fail",
539
+ .gpio = 23,
540
+ .active_low = 1,
553541 },
554542 {
555
- .name = "power",
556
- .gpio = 4,
543
+ .name = "power",
544
+ .gpio = 4,
557545 .default_trigger = "default-on",
558546 },
559547 {
560
- .name = "stop",
561
- .gpio = 5,
548
+ .name = "stop",
549
+ .gpio = 5,
562550 },
563551 },
564552 };
565553
566554 static struct board_info __initdata board_96358vw2 = {
567
- .name = "96358VW2",
568
- .expected_cpu_id = 0x6358,
555
+ .name = "96358VW2",
556
+ .expected_cpu_id = 0x6358,
569557
570
- .has_uart0 = 1,
571
- .has_enet0 = 1,
572
- .has_enet1 = 1,
573
- .has_pci = 1,
574
-
575
- .enet0 = {
576
- .has_phy = 1,
577
- .use_internal_phy = 1,
578
- },
579
-
580
- .enet1 = {
581
- .force_speed_100 = 1,
582
- .force_duplex_full = 1,
583
- },
584
-
585
-
558
+ .has_ehci0 = 1,
586559 .has_ohci0 = 1,
587560 .has_pccard = 1,
588
- .has_ehci0 = 1,
561
+ .has_pci = 1,
562
+ .has_uart0 = 1,
563
+
564
+ .has_enet0 = 1,
565
+ .enet0 = {
566
+ .has_phy = 1,
567
+ .use_internal_phy = 1,
568
+ },
569
+
570
+ .has_enet1 = 1,
571
+ .enet1 = {
572
+ .force_speed_100 = 1,
573
+ .force_duplex_full = 1,
574
+ },
589575
590576 .leds = {
591577 {
592
- .name = "adsl",
593
- .gpio = 22,
594
- .active_low = 1,
578
+ .name = "adsl",
579
+ .gpio = 22,
580
+ .active_low = 1,
595581 },
596582 {
597
- .name = "ppp-fail",
598
- .gpio = 23,
583
+ .name = "ppp-fail",
584
+ .gpio = 23,
599585 },
600586 {
601
- .name = "power",
602
- .gpio = 5,
603
- .active_low = 1,
587
+ .name = "power",
588
+ .gpio = 5,
589
+ .active_low = 1,
604590 .default_trigger = "default-on",
605591 },
606592 {
607
- .name = "stop",
608
- .gpio = 4,
609
- .active_low = 1,
593
+ .name = "stop",
594
+ .gpio = 4,
595
+ .active_low = 1,
610596 },
611597 },
612598 };
613599
614600 static struct board_info __initdata board_AGPFS0 = {
615
- .name = "AGPF-S0",
616
- .expected_cpu_id = 0x6358,
601
+ .name = "AGPF-S0",
602
+ .expected_cpu_id = 0x6358,
617603
618
- .has_uart0 = 1,
619
- .has_enet0 = 1,
620
- .has_enet1 = 1,
621
- .has_pci = 1,
622
-
623
- .enet0 = {
624
- .has_phy = 1,
625
- .use_internal_phy = 1,
626
- },
627
-
628
- .enet1 = {
629
- .force_speed_100 = 1,
630
- .force_duplex_full = 1,
631
- },
632
-
633
- .has_ohci0 = 1,
634604 .has_ehci0 = 1,
605
+ .has_ohci0 = 1,
606
+ .has_pci = 1,
607
+ .has_uart0 = 1,
608
+
609
+ .has_enet0 = 1,
610
+ .enet0 = {
611
+ .has_phy = 1,
612
+ .use_internal_phy = 1,
613
+ },
614
+
615
+ .has_enet1 = 1,
616
+ .enet1 = {
617
+ .force_speed_100 = 1,
618
+ .force_duplex_full = 1,
619
+ },
635620 };
636621
637622 static struct board_info __initdata board_DWVS0 = {
638
- .name = "DWV-S0",
639
- .expected_cpu_id = 0x6358,
623
+ .name = "DWV-S0",
624
+ .expected_cpu_id = 0x6358,
640625
641
- .has_enet0 = 1,
642
- .has_enet1 = 1,
643
- .has_pci = 1,
626
+ .has_ehci0 = 1,
627
+ .has_ohci0 = 1,
628
+ .has_pci = 1,
644629
630
+ .has_enet0 = 1,
645631 .enet0 = {
646
- .has_phy = 1,
647
- .use_internal_phy = 1,
632
+ .has_phy = 1,
633
+ .use_internal_phy = 1,
648634 },
649635
636
+ .has_enet1 = 1,
650637 .enet1 = {
651
- .force_speed_100 = 1,
652
- .force_duplex_full = 1,
638
+ .force_speed_100 = 1,
639
+ .force_duplex_full = 1,
653640 },
654
-
655
- .has_ohci0 = 1,
656641 };
657
-#endif
642
+#endif /* CONFIG_BCM63XX_CPU_6358 */
658643
659644 /*
660645 * all boards
....@@ -662,17 +647,17 @@
662647 static const struct board_info __initconst *bcm963xx_boards[] = {
663648 #ifdef CONFIG_BCM63XX_CPU_3368
664649 &board_cvg834g,
665
-#endif
650
+#endif /* CONFIG_BCM63XX_CPU_3368 */
666651 #ifdef CONFIG_BCM63XX_CPU_6328
667652 &board_96328avng,
668
-#endif
653
+#endif /* CONFIG_BCM63XX_CPU_6328 */
669654 #ifdef CONFIG_BCM63XX_CPU_6338
670655 &board_96338gw,
671656 &board_96338w,
672
-#endif
657
+#endif /* CONFIG_BCM63XX_CPU_6338 */
673658 #ifdef CONFIG_BCM63XX_CPU_6345
674659 &board_96345gw2,
675
-#endif
660
+#endif /* CONFIG_BCM63XX_CPU_6345 */
676661 #ifdef CONFIG_BCM63XX_CPU_6348
677662 &board_96348r,
678663 &board_96348gw,
....@@ -682,14 +667,13 @@
682667 &board_DV201AMR,
683668 &board_96348gw_a,
684669 &board_rta1025w_16,
685
-#endif
686
-
670
+#endif /* CONFIG_BCM63XX_CPU_6348 */
687671 #ifdef CONFIG_BCM63XX_CPU_6358
688672 &board_96358vw,
689673 &board_96358vw2,
690674 &board_AGPFS0,
691675 &board_DWVS0,
692
-#endif
676
+#endif /* CONFIG_BCM63XX_CPU_6358 */
693677 };
694678
695679 /*
....@@ -728,7 +712,7 @@
728712 return -EINVAL;
729713 }
730714 }
731
-#endif
715
+#endif /* CONFIG_SSB_PCIHOST */
732716
733717 /*
734718 * return board name for /proc/cpuinfo
....@@ -763,11 +747,25 @@
763747
764748 /* dump cfe version */
765749 cfe = boot_addr + BCM963XX_CFE_VERSION_OFFSET;
766
- if (!memcmp(cfe, "cfe-v", 5))
767
- snprintf(cfe_version, sizeof(cfe_version), "%u.%u.%u-%u.%u",
768
- cfe[5], cfe[6], cfe[7], cfe[8], cfe[9]);
769
- else
750
+ if (strstarts(cfe, "cfe-")) {
751
+ if(cfe[4] == 'v') {
752
+ if(cfe[5] == 'd')
753
+ snprintf(cfe_version, 11, "%s",
754
+ (char *) &cfe[5]);
755
+ else if (cfe[10] > 0)
756
+ snprintf(cfe_version, sizeof(cfe_version),
757
+ "%u.%u.%u-%u.%u-%u", cfe[5], cfe[6],
758
+ cfe[7], cfe[8], cfe[9], cfe[10]);
759
+ else
760
+ snprintf(cfe_version, sizeof(cfe_version),
761
+ "%u.%u.%u-%u.%u", cfe[5], cfe[6],
762
+ cfe[7], cfe[8], cfe[9]);
763
+ } else {
764
+ snprintf(cfe_version, 12, "%s", (char *) &cfe[4]);
765
+ }
766
+ } else {
770767 strcpy(cfe_version, "unknown");
768
+ }
771769 pr_info("CFE version: %s\n", cfe_version);
772770
773771 bcm63xx_nvram_init(boot_addr + BCM963XX_NVRAM_OFFSET);
....@@ -807,7 +805,7 @@
807805 if (BCMCPU_IS_6348())
808806 val |= GPIO_MODE_6348_G2_PCI;
809807 }
810
-#endif
808
+#endif /* CONFIG_PCI */
811809
812810 if (board.has_pccard) {
813811 if (BCMCPU_IS_6348())
....@@ -892,7 +890,7 @@
892890 &bcm63xx_get_fallback_sprom) < 0)
893891 pr_err("failed to register fallback SPROM\n");
894892 }
895
-#endif
893
+#endif /* CONFIG_SSB_PCIHOST */
896894
897895 bcm63xx_spi_register();
898896