718b287ee6b441aefcef9acd8e15bb9593e84379
[openwrt/staging/ynezz.git] / target / linux / brcm63xx / patches-4.9 / 534-board_hw556.patch
1 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
2 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
3 @@ -12,6 +12,7 @@
4 #include <linux/init.h>
5 #include <linux/kernel.h>
6 #include <linux/string.h>
7 +#include <linux/pci_ids.h>
8 #include <asm/addrspace.h>
9 #include <bcm63xx_board.h>
10 #include <bcm63xx_cpu.h>
11 @@ -1123,6 +1124,92 @@ static struct board_info __initdata boar
12 },
13 };
14
15 +static struct board_info __initdata board_HW556_C = {
16 + .name = "HW556_C",
17 + .expected_cpu_id = 0x6358,
18 +
19 + .has_pci = 1,
20 + .has_ohci0 = 1,
21 + .has_ehci0 = 1,
22 + .num_usbh_ports = 2,
23 +
24 + .has_caldata = 1,
25 + .caldata = {
26 + {
27 + .vendor = PCI_VENDOR_ID_RALINK,
28 + .caldata_offset = 0xeffe00,
29 + .slot = 1,
30 + .eeprom = "rt2x00.eeprom",
31 + },
32 + },
33 +
34 + .has_enet1 = 1,
35 + .enet1 = {
36 + .has_phy = 1,
37 + .phy_id = 0,
38 + .force_speed_100 = 1,
39 + .force_duplex_full = 1,
40 + },
41 +};
42 +static struct board_info __initdata board_HW556_A = {
43 + .name = "HW556_A",
44 + .expected_cpu_id = 0x6358,
45 +
46 + .has_pci = 1,
47 + .has_ohci0 = 1,
48 + .has_ehci0 = 1,
49 + .num_usbh_ports = 2,
50 +
51 + .has_caldata = 1,
52 + .caldata = {
53 + {
54 + .vendor = PCI_VENDOR_ID_ATHEROS,
55 + .caldata_offset = 0xf7e000,
56 + .slot = 1,
57 + .endian_check = 1,
58 + .led_pin = 2,
59 + .led_active_high = 1,
60 + },
61 + },
62 +
63 + .has_enet1 = 1,
64 + .enet1 = {
65 + .has_phy = 1,
66 + .phy_id = 0,
67 + .force_speed_100 = 1,
68 + .force_duplex_full = 1,
69 + },
70 +};
71 +static struct board_info __initdata board_HW556_B = {
72 + .name = "HW556_B",
73 + .expected_cpu_id = 0x6358,
74 +
75 + .has_pci = 1,
76 + .has_ohci0 = 1,
77 + .has_ehci0 = 1,
78 + .num_usbh_ports = 2,
79 +
80 + .has_caldata = 1,
81 + .caldata = {
82 + {
83 + .vendor = PCI_VENDOR_ID_ATHEROS,
84 + .caldata_offset = 0xefe000,
85 + .slot = 1,
86 + .endian_check = 1,
87 + .led_pin = 2,
88 + .led_active_high = 1,
89 + },
90 + },
91 +
92 + .has_enet1 = 1,
93 + .enet1 = {
94 + .has_phy = 1,
95 + .phy_id = 0,
96 + .force_speed_100 = 1,
97 + .force_duplex_full = 1,
98 + },
99 +};
100 +
101 /* T-Home Speedport W 303V Typ B */
102 static struct board_info __initdata board_spw303v = {
103 .name = "96358-502V",
104 @@ -1343,6 +1430,9 @@ static const struct board_info __initcon
105 &board_nb4_fxc_r1,
106 &board_ct6373_1,
107 &board_HW553,
108 + &board_HW556_A,
109 + &board_HW556_B,
110 + &board_HW556_C,
111 &board_spw303v,
112 &board_DVAG3810BN,
113 #endif
114 @@ -1415,6 +1505,9 @@ static struct of_device_id const bcm963x
115 { .compatible = "d-link,dsl-2650u", .data = &board_96358vw2, },
116 { .compatible = "d-link,dva-g3810bn/tl", .data = &board_DVAG3810BN, },
117 { .compatible = "huawei,hg553", .data = &board_HW553, },
118 + { .compatible = "huawei,hg556a-a", .data = &board_HW556_A, },
119 + { .compatible = "huawei,hg556a-b", .data = &board_HW556_B, },
120 + { .compatible = "huawei,hg556a-c", .data = &board_HW556_C, },
121 { .compatible = "pirelli,a226g", .data = &board_DWVS0, },
122 { .compatible = "pirelli,a226m", .data = &board_DWVS0, },
123 { .compatible = "pirelli,a226m-fwb", .data = &board_DWVS0, },