1 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
2 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
4 #include <linux/string.h>
5 #include <linux/gpio_keys.h>
6 #include <linux/input.h>
7 +#include <linux/pci_ids.h>
8 #include <linux/platform_device.h>
9 #include <linux/spi/spi.h>
10 #include <linux/spi/spi_gpio.h>
11 @@ -2678,6 +2679,405 @@ static struct board_info __initdata boar
15 +static struct board_info __initdata board_HW556_C = {
17 + .of_board_id = "huawei,hg556a-c",
18 + .expected_cpu_id = 0x6358,
24 + .num_usbh_ports = 2,
29 + .vendor = PCI_VENDOR_ID_RALINK,
30 + .caldata_offset = 0xeffe00,
32 + .eeprom = "rt2x00.eeprom",
40 + .force_speed_100 = 1,
41 + .force_duplex_full = 1,
46 + .name = "HW556:green:lan1",
51 + .name = "HW556:green:lan2",
56 + .name = "HW556:red:dsl",
61 + .name = "HW556:red:power",
64 + .default_trigger = "default-on",
67 + .name = "HW556:red:message",
72 + .name = "HW556:red:lan1",
77 + .name = "HW556:red:hspa",
82 + .name = "HW556:red:lan2",
87 + .name = "HW556:green:lan3",
92 + .name = "HW556:red:lan3",
97 + .name = "HW556:green:lan4",
102 + .name = "HW556:red:lan4",
115 + .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
123 + .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
130 + .code = KEY_RESTART,
131 + .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
138 + .code = KEY_CONFIG,
139 + .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
143 +static struct board_info __initdata board_HW556_A = {
145 + .of_board_id = "huawei,hg556a-a",
146 + .expected_cpu_id = 0x6358,
152 + .num_usbh_ports = 2,
157 + .vendor = PCI_VENDOR_ID_ATHEROS,
158 + .caldata_offset = 0xf7e000,
169 + .force_speed_100 = 1,
170 + .force_duplex_full = 1,
175 + .name = "HW556:red:message",
180 + .name = "HW556:red:hspa",
185 + .name = "HW556:red:dsl",
190 + .name = "HW556:red:power",
193 + .default_trigger = "default-on",
196 + .name = "HW556:red:all",
199 + .default_trigger = "default-on",
202 + .name = "HW556:green:lan1",
207 + .name = "HW556:red:lan1",
212 + .name = "HW556:green:lan2",
217 + .name = "HW556:red:lan2",
222 + .name = "HW556:green:lan3",
227 + .name = "HW556:red:lan3",
232 + .name = "HW556:green:lan4",
237 + .name = "HW556:red:lan4",
250 + .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
258 + .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
265 + .code = KEY_RESTART,
266 + .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
273 + .code = KEY_CONFIG,
274 + .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
278 +static struct board_info __initdata board_HW556_B = {
280 + .of_board_id = "huawei,hg556a-b",
281 + .expected_cpu_id = 0x6358,
287 + .num_usbh_ports = 2,
292 + .vendor = PCI_VENDOR_ID_ATHEROS,
293 + .caldata_offset = 0xefe000,
304 + .force_speed_100 = 1,
305 + .force_duplex_full = 1,
310 + .name = "HW556:red:message",
315 + .name = "HW556:red:hspa",
320 + .name = "HW556:red:dsl",
325 + .name = "HW556:red:power",
328 + .default_trigger = "default-on",
331 + .name = "HW556:red:all",
334 + .default_trigger = "default-on",
337 + .name = "HW556:green:lan1",
342 + .name = "HW556:red:lan1",
347 + .name = "HW556:green:lan2",
352 + .name = "HW556:red:lan2",
357 + .name = "HW556:green:lan3",
362 + .name = "HW556:red:lan3",
367 + .name = "HW556:green:lan4",
372 + .name = "HW556:red:lan4",
385 + .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
393 + .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
400 + .code = KEY_RESTART,
401 + .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
408 + .code = KEY_CONFIG,
409 + .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
414 /* T-Home Speedport W 303V Typ B */
415 static struct board_info __initdata board_spw303v = {
416 .name = "96358-502V",
417 @@ -3116,6 +3516,9 @@ static const struct board_info __initcon