linux,code = <KEY_WPS_BUTTON>;
};
};
+
+ switch {
+ compatible = "realtek,rtl8367";
+ gpio-sda = <&gpio0 18 0>;
+ gpio-sck = <&gpio0 20 0>;
+
+ realtek,extif0 = <1 5 1 1 1 1 1 1 2>;
+ };
};
+++ /dev/null
---- a/arch/mips/bcm63xx/boards/board_common.c
-+++ b/arch/mips/bcm63xx/boards/board_common.c
-@@ -207,6 +207,9 @@ int __init board_register_devices(void)
-
- bcm63xx_hsspi_register();
-
-+ if (board.num_devs)
-+ platform_add_devices(board.devs, board.num_devs);
-+
- bcm63xx_flash_register();
-
- bcm63xx_led_data.num_leds = ARRAY_SIZE(board.leds);
---- a/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
-+++ b/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
-@@ -53,6 +53,10 @@ struct board_info {
-
- /* External PHY reset GPIO flags from gpio.h */
- unsigned long ephy_reset_gpio_flags;
-+
-+ /* Additional platform devices */
-+ struct platform_device **devs;
-+ unsigned int num_devs;
- };
-
- #endif /* ! BOARD_BCM963XX_H_ */
#include <asm/addrspace.h>
#include <bcm63xx_board.h>
#include <bcm63xx_cpu.h>
-@@ -210,6 +211,9 @@ int __init board_register_devices(void)
- if (board.num_devs)
- platform_add_devices(board.devs, board.num_devs);
+@@ -207,6 +208,9 @@ int __init board_register_devices(void)
+
+ bcm63xx_hsspi_register();
+ if (board.num_spis)
+ spi_register_board_info(board.spis, board.num_spis);
bcm63xx_led_data.num_leds = ARRAY_SIZE(board.leds);
--- a/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
+++ b/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
-@@ -57,6 +57,10 @@ struct board_info {
- /* Additional platform devices */
- struct platform_device **devs;
- unsigned int num_devs;
+@@ -53,6 +53,10 @@ struct board_info {
+
+ /* External PHY reset GPIO flags from gpio.h */
+ unsigned long ephy_reset_gpio_flags;
+
+ /* Additional platform devices */
+ struct spi_board_info *spis;
+ struct fallback_sprom_data fallback_sprom;
+
/* Additional platform devices */
- struct platform_device **devs;
- unsigned int num_devs;
+ struct spi_board_info *spis;
+ unsigned int num_spis;
if (strncmp(board_name, bcm963xx_boards[i]->name, 16))
--- a/arch/mips/bcm63xx/boards/board_common.c
+++ b/arch/mips/bcm63xx/boards/board_common.c
-@@ -250,3 +250,21 @@ int __init board_register_devices(void)
+@@ -247,3 +247,21 @@ int __init board_register_devices(void)
return 0;
}
--- a/arch/mips/bcm63xx/boards/board_common.c
+++ b/arch/mips/bcm63xx/boards/board_common.c
-@@ -258,9 +258,10 @@ int __init board_register_devices(void)
+@@ -255,9 +255,10 @@ int __init board_register_devices(void)
platform_device_register(&bcm63xx_gpio_leds);
#if CONFIG_OF
if (of_have_populated_dt()) {
-@@ -274,6 +276,10 @@ int __init board_register_devices(void)
+@@ -271,6 +273,10 @@ int __init board_register_devices(void)
board.ephy_reset_gpio_flags);
}
--- a/arch/mips/bcm63xx/boards/board_common.c
+++ b/arch/mips/bcm63xx/boards/board_common.c
-@@ -264,7 +264,7 @@ int __init board_register_devices(void)
+@@ -261,7 +261,7 @@ int __init board_register_devices(void)
if (board.num_spis)
spi_register_board_info(board.spis, board.num_spis);
return;
--- a/arch/mips/bcm63xx/boards/board_common.c
+++ b/arch/mips/bcm63xx/boards/board_common.c
-@@ -278,7 +278,8 @@ int __init board_register_devices(void)
+@@ -275,7 +275,8 @@ int __init board_register_devices(void)
/* register any fixups */
for (i = 0; i < board.has_caldata; i++)
--- a/arch/mips/bcm63xx/boards/board_common.c
+++ b/arch/mips/bcm63xx/boards/board_common.c
-@@ -279,7 +279,7 @@ int __init board_register_devices(void)
+@@ -276,7 +276,7 @@ int __init board_register_devices(void)
/* register any fixups */
for (i = 0; i < board.has_caldata; i++)
pci_enable_ath9k_fixup(board.caldata[i].slot, board.caldata[i].caldata_offset,
#include "board_common.h"
-@@ -277,9 +278,19 @@ int __init board_register_devices(void)
+@@ -274,9 +275,19 @@ int __init board_register_devices(void)
}
/* register any fixups */
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -12,6 +12,8 @@
- #include <linux/init.h>
- #include <linux/kernel.h>
- #include <linux/string.h>
-+#include <linux/platform_device.h>
-+#include <linux/rtl8367.h>
- #include <asm/addrspace.h>
- #include <bcm63xx_board.h>
- #include <bcm63xx_cpu.h>
-@@ -27,6 +29,9 @@
-
- #define HCS_OFFSET_128K 0x20000
-
-+#define NB6_GPIO_RTL8367_SDA 18
-+#define NB6_GPIO_RTL8367_SCK 20
-+
- /*
- * known 3368 boards
- */
-@@ -1315,6 +1320,69 @@ static struct board_info __initdata boar
+@@ -1315,6 +1315,34 @@ static struct board_info __initdata boar
};
#endif /* CONFIG_BCM63XX_CPU_6358 */
+#ifdef CONFIG_BCM63XX_CPU_6362
-+static struct rtl8367_extif_config nb6_rtl8367_extif0_cfg = {
-+ .mode = RTL8367_EXTIF_MODE_RGMII,
-+ .txdelay = 1,
-+ .rxdelay = 5,
-+ .ability = {
-+ .force_mode = 1,
-+ .txpause = 1,
-+ .rxpause = 1,
-+ .link = 1,
-+ .duplex = 1,
-+ .speed = RTL8367_PORT_SPEED_1000,
-+ },
-+};
-+
-+static struct rtl8367_platform_data nb6_rtl8367_data = {
-+ .gpio_sda = NB6_GPIO_RTL8367_SDA,
-+ .gpio_sck = NB6_GPIO_RTL8367_SCK,
-+ .extif0_cfg = &nb6_rtl8367_extif0_cfg,
-+};
-+
-+static struct platform_device nb6_rtl8367_device = {
-+ .name = RTL8367_DRIVER_NAME,
-+ .id = -1,
-+ .dev = {
-+ .platform_data = &nb6_rtl8367_data,
-+ }
-+};
-+
-+static struct platform_device * __initdata nb6_devices[] = {
-+ &nb6_rtl8367_device,
-+};
-+
+static struct board_info __initdata board_nb6 = {
+ .name = "NB6",
+ .expected_cpu_id = 0x6362,
+ },
+ },
+ },
-+
-+ .devs = nb6_devices,
-+ .num_devs = ARRAY_SIZE(nb6_devices),
+};
+#endif /* CONFIG_BCM63XX_CPU_6362 */
+
/*
* known 6368 boards
*/
-@@ -1466,6 +1534,10 @@ static const struct board_info __initcon
+@@ -1466,6 +1494,10 @@ static const struct board_info __initcon
&board_DVAG3810BN,
#endif
#ifdef CONFIG_BCM63XX_CPU_6368
&board_96368mvwg,
&board_96368mvngr,
-@@ -1534,6 +1606,9 @@ static struct of_device_id const bcm963x
+@@ -1534,6 +1566,9 @@ static struct of_device_id const bcm963x
{ .compatible = "t-com,spw303v", .data = &board_spw303v, },
{ .compatible = "telsey,cpva642", .data = &board_CPVA642, },
#endif
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -765,6 +765,23 @@ static struct board_info __initdata boar
+@@ -760,6 +760,23 @@ static struct board_info __initdata boar
.has_ehci0 = 1,
};
static struct board_info __initdata board_rta1025w_16 = {
.name = "RTA1025W_16",
.expected_cpu_id = 0x6348,
-@@ -1505,6 +1522,7 @@ static const struct board_info __initcon
+@@ -1465,6 +1482,7 @@ static const struct board_info __initcon
&board_96348gw_10,
&board_96348gw_11,
&board_FAST2404,
&board_DV201AMR,
&board_96348gw_a,
&board_rta1025w_16,
-@@ -1580,6 +1598,7 @@ static struct of_device_id const bcm963x
+@@ -1540,6 +1558,7 @@ static struct of_device_id const bcm963x
{ .compatible = "netgear,dg834gtpn", .data = &board_96348gw_10, },
{ .compatible = "netgear,dg834g-v4", .data = &board_96348W3, },
{ .compatible = "sagem,f@st2404", .data = &board_FAST2404, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -174,6 +174,50 @@ static struct board_info __initdata boar
+@@ -169,6 +169,50 @@ static struct board_info __initdata boar
},
};
static struct board_info __initdata board_dsl_274xb_f1 = {
.name = "AW4339U",
.expected_cpu_id = 0x6328,
-@@ -1503,6 +1547,7 @@ static const struct board_info __initcon
+@@ -1463,6 +1507,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6328
&board_96328avng,
&board_963281TAN,
&board_dsl_274xb_f1,
#endif
#ifdef CONFIG_BCM63XX_CPU_6338
-@@ -1568,6 +1613,7 @@ static struct of_device_id const bcm963x
+@@ -1528,6 +1573,7 @@ static struct of_device_id const bcm963x
{ .compatible = "netgear,cvg834g", .data = &board_cvg834g, },
#endif
#ifdef CONFIG_BCM63XX_CPU_6328
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -139,6 +139,79 @@ static struct board_info __initdata boar
+@@ -134,6 +134,79 @@ static struct board_info __initdata boar
},
};
static struct board_info __initdata board_963281TAN = {
.name = "963281TAN",
.expected_cpu_id = 0x6328,
-@@ -1546,6 +1619,7 @@ static const struct board_info __initcon
+@@ -1506,6 +1579,7 @@ static const struct board_info __initcon
#endif
#ifdef CONFIG_BCM63XX_CPU_6328
&board_96328avng,
&board_963281TAN,
&board_A4001N1,
&board_dsl_274xb_f1,
-@@ -1616,6 +1690,7 @@ static struct of_device_id const bcm963x
+@@ -1576,6 +1650,7 @@ static struct of_device_id const bcm963x
{ .compatible = "adb,a4001n1", .data = &board_A4001N1, },
{ .compatible = "brcm,bcm963281TAN", .data = &board_963281TAN, },
{ .compatible = "brcm,bcm96328avng", .data = &board_96328avng, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -139,6 +139,61 @@ static struct board_info __initdata boar
+@@ -134,6 +134,61 @@ static struct board_info __initdata boar
},
};
static struct sprom_fixup __initdata ar5387un_fixups[] = {
{ .offset = 2, .value = 0x05bb },
{ .offset = 65, .value = 0x1204 },
-@@ -1619,6 +1674,7 @@ static const struct board_info __initcon
+@@ -1579,6 +1634,7 @@ static const struct board_info __initcon
#endif
#ifdef CONFIG_BCM63XX_CPU_6328
&board_96328avng,
&board_AR5387un,
&board_963281TAN,
&board_A4001N1,
-@@ -1690,6 +1746,7 @@ static struct of_device_id const bcm963x
+@@ -1650,6 +1706,7 @@ static struct of_device_id const bcm963x
{ .compatible = "adb,a4001n1", .data = &board_A4001N1, },
{ .compatible = "brcm,bcm963281TAN", .data = &board_963281TAN, },
{ .compatible = "brcm,bcm96328avng", .data = &board_96328avng, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -525,6 +525,22 @@ static struct board_info __initdata boar
+@@ -520,6 +520,22 @@ static struct board_info __initdata boar
.has_uart0 = 1,
};
#endif /* CONFIG_BCM63XX_CPU_6345 */
/*
-@@ -1688,6 +1704,7 @@ static const struct board_info __initcon
+@@ -1648,6 +1664,7 @@ static const struct board_info __initcon
#endif
#ifdef CONFIG_BCM63XX_CPU_6345
&board_96345gw2,
#endif
#ifdef CONFIG_BCM63XX_CPU_6348
&board_96348r,
-@@ -1758,6 +1775,7 @@ static struct of_device_id const bcm963x
+@@ -1718,6 +1735,7 @@ static struct of_device_id const bcm963x
#endif
#ifdef CONFIG_BCM63XX_CPU_6345
{ .compatible = "brcm,bcm96345gw2", .data = &board_96345gw2, },
#include <linux/kernel.h>
#include <linux/string.h>
+#include <linux/pci_ids.h>
- #include <linux/platform_device.h>
- #include <linux/rtl8367.h>
#include <asm/addrspace.h>
-@@ -1479,6 +1480,95 @@ static struct board_info __initdata boar
+ #include <bcm63xx_board.h>
+ #include <bcm63xx_cpu.h>
+@@ -1474,6 +1475,95 @@ static struct board_info __initdata boar
},
};
/* T-Home Speedport W 303V Typ B */
static struct board_info __initdata board_spw303v = {
.name = "96358-502V",
-@@ -1740,6 +1830,9 @@ static const struct board_info __initcon
+@@ -1700,6 +1790,9 @@ static const struct board_info __initcon
&board_nb4_fxc_r1,
&board_ct6373_1,
&board_HW553,
&board_spw303v,
&board_DVAG3810BN,
#endif
-@@ -1812,6 +1905,9 @@ static struct of_device_id const bcm963x
+@@ -1772,6 +1865,9 @@ static struct of_device_id const bcm963x
{ .compatible = "d-link,dsl-2650u", .data = &board_96358vw2, },
{ .compatible = "d-link,dva-g3810bn/tl", .data = &board_DVAG3810BN, },
{ .compatible = "huawei,hg553", .data = &board_HW553, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -542,6 +542,27 @@ static struct board_info __initdata boar
+@@ -537,6 +537,27 @@ static struct board_info __initdata boar
.force_duplex_full = 1,
},
};
#endif /* CONFIG_BCM63XX_CPU_6345 */
/*
-@@ -1795,6 +1816,7 @@ static const struct board_info __initcon
+@@ -1755,6 +1776,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6345
&board_96345gw2,
&board_rta770bw,
#endif
#ifdef CONFIG_BCM63XX_CPU_6348
&board_96348r,
-@@ -1869,6 +1891,7 @@ static struct of_device_id const bcm963x
+@@ -1829,6 +1851,7 @@ static struct of_device_id const bcm963x
#ifdef CONFIG_BCM63XX_CPU_6345
{ .compatible = "brcm,bcm96345gw2", .data = &board_96345gw2, },
{ .compatible = "dynalink,rta770bw", .data = &board_rta770bw, },
---
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -392,6 +392,44 @@ static struct board_info __initdata boar
+@@ -387,6 +387,44 @@ static struct board_info __initdata boar
},
},
};
#endif /* CONFIG_BCM63XX_CPU_6328 */
/*
-@@ -1806,6 +1844,7 @@ static const struct board_info __initcon
+@@ -1766,6 +1804,7 @@ static const struct board_info __initcon
&board_963281TAN,
&board_A4001N1,
&board_dsl_274xb_f1,
#endif
#ifdef CONFIG_BCM63XX_CPU_6338
&board_96338gw,
-@@ -1881,6 +1920,7 @@ static struct of_device_id const bcm963x
+@@ -1841,6 +1880,7 @@ static struct of_device_id const bcm963x
{ .compatible = "comtrend,ar-5381u", .data = &board_AR5381u, },
{ .compatible = "comtrend,ar-5387un", .data = &board_AR5387un, },
{ .compatible = "d-link,dsl-274xb-f", .data = &board_dsl_274xb_f1, },
---
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1735,6 +1735,43 @@ static struct board_info __initdata boar
- .devs = nb6_devices,
- .num_devs = ARRAY_SIZE(nb6_devices),
+@@ -1695,6 +1695,43 @@ static struct board_info __initdata boar
+ },
+ },
};
+
+static struct board_info __initdata board_fast2504n = {
#endif /* CONFIG_BCM63XX_CPU_6362 */
/*
-@@ -1900,6 +1937,7 @@ static const struct board_info __initcon
+@@ -1860,6 +1897,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6362
&board_nb6,
#endif
#ifdef CONFIG_BCM63XX_CPU_6368
-@@ -1981,6 +2019,7 @@ static struct of_device_id const bcm963x
+@@ -1941,6 +1979,7 @@ static struct of_device_id const bcm963x
{ .compatible = "telsey,cpva642", .data = &board_CPVA642, },
#endif
#ifdef CONFIG_BCM63XX_CPU_6362
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -52,14 +52,6 @@ static struct board_info __initdata boar
+@@ -47,14 +47,6 @@ static struct board_info __initdata boar
.use_internal_phy = 1,
},
.ephy_reset_gpio = 36,
.ephy_reset_gpio_flags = GPIO_ACTIVE_LOW,
};
-@@ -83,35 +75,6 @@ static struct board_info __initdata boar
+@@ -78,35 +70,6 @@ static struct board_info __initdata boar
.port_no = 0,
},
.has_enetsw = 1,
.enetsw = {
-@@ -450,35 +413,6 @@ static struct board_info __initdata boar
+@@ -445,35 +408,6 @@ static struct board_info __initdata boar
},
.has_ohci0 = 1,
};
static struct board_info __initdata board_96338w = {
-@@ -493,35 +427,6 @@ static struct board_info __initdata boar
+@@ -488,35 +422,6 @@ static struct board_info __initdata boar
.force_speed_100 = 1,
.force_duplex_full = 1,
},
};
static struct board_info __initdata board_96338w2_e7t = {
-@@ -620,36 +525,6 @@ static struct board_info __initdata boar
+@@ -615,36 +520,6 @@ static struct board_info __initdata boar
.has_phy = 1,
.use_internal_phy = 1,
},
};
static struct board_info __initdata board_96348gw_10 = {
-@@ -684,35 +559,6 @@ static struct board_info __initdata boar
+@@ -679,35 +554,6 @@ static struct board_info __initdata boar
.cs = 2,
.ext_irq = 2,
},
};
static struct board_info __initdata board_96348gw_11 = {
-@@ -741,35 +587,6 @@ static struct board_info __initdata boar
+@@ -736,35 +582,6 @@ static struct board_info __initdata boar
.has_ohci0 = 1,
.has_pccard = 1,
.has_ehci0 = 1,
};
-@@ -895,35 +712,6 @@ static struct board_info __initdata boar
+@@ -890,35 +707,6 @@ static struct board_info __initdata boar
.ext_irq = 2,
.cs = 2,
},
};
static struct board_info __initdata board_gw6200 = {
-@@ -1260,33 +1048,6 @@ static struct board_info __initdata boar
+@@ -1255,33 +1043,6 @@ static struct board_info __initdata boar
.has_ohci0 = 1,
.has_pccard = 1,
.has_ehci0 = 1,
};
static struct board_info __initdata board_96358vw2 = {
-@@ -1316,29 +1077,6 @@ static struct board_info __initdata boar
+@@ -1311,29 +1072,6 @@ static struct board_info __initdata boar
.has_pccard = 1,
.has_ehci0 = 1,
.num_usbh_ports = 2,
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -58,6 +58,56 @@ static struct board_info __initdata boar
+@@ -53,6 +53,56 @@ static struct board_info __initdata boar
#endif /* CONFIG_BCM63XX_CPU_3368 */
/*
* known 6328 boards
*/
#ifdef CONFIG_BCM63XX_CPU_6328
-@@ -1612,6 +1662,9 @@ static const struct board_info __initcon
+@@ -1572,6 +1622,9 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_3368
&board_cvg834g,
#endif
#ifdef CONFIG_BCM63XX_CPU_6328
&board_96328avng,
&board_AR5381u,
-@@ -1689,6 +1742,9 @@ static struct of_device_id const bcm963x
+@@ -1649,6 +1702,9 @@ static struct of_device_id const bcm963x
#ifdef CONFIG_BCM63XX_CPU_3368
{ .compatible = "netgear,cvg834g", .data = &board_cvg834g, },
#endif
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -105,6 +105,51 @@ static struct board_info __initdata boar
+@@ -100,6 +100,51 @@ static struct board_info __initdata boar
},
},
};
#endif /* CONFIG_BCM63XX_CPU_6318 */
/*
-@@ -1664,6 +1709,7 @@ static const struct board_info __initcon
+@@ -1624,6 +1669,7 @@ static const struct board_info __initcon
#endif
#ifdef CONFIG_BCM63XX_CPU_6318
&board_96318ref,
#endif
#ifdef CONFIG_BCM63XX_CPU_6328
&board_96328avng,
-@@ -1744,6 +1790,7 @@ static struct of_device_id const bcm963x
+@@ -1704,6 +1750,7 @@ static struct of_device_id const bcm963x
#endif
#ifdef CONFIG_BCM63XX_CPU_6318
{ .compatible = "brcm,bcm96318ref", .data = &board_96318ref, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1701,6 +1701,52 @@ static struct board_info __initdata boar
+@@ -1661,6 +1661,52 @@ static struct board_info __initdata boar
#endif /* CONFIG_BCM63XX_CPU_6368 */
/*
* all boards
*/
static const struct board_info __initconst *bcm963xx_boards[] = {
-@@ -1781,6 +1827,9 @@ static const struct board_info __initcon
+@@ -1741,6 +1787,9 @@ static const struct board_info __initcon
&board_96368mvwg,
&board_96368mvngr,
#endif
};
static struct of_device_id const bcm963xx_boards_dt[] = {
-@@ -1868,6 +1917,7 @@ static struct of_device_id const bcm963x
+@@ -1828,6 +1877,7 @@ static struct of_device_id const bcm963x
{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
---
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -684,6 +684,22 @@ static struct board_info __initdata boar
+@@ -679,6 +679,22 @@ static struct board_info __initdata boar
.has_ehci0 = 1,
};
/* BT Voyager 2110 */
static struct board_info __initdata board_V2110 = {
-@@ -1798,6 +1814,7 @@ static const struct board_info __initcon
+@@ -1758,6 +1774,7 @@ static const struct board_info __initcon
&board_96348A_122,
&board_CPVA502plus,
&board_96348W3,
#endif
#ifdef CONFIG_BCM63XX_CPU_6358
-@@ -1862,6 +1879,7 @@ static struct of_device_id const bcm963x
+@@ -1822,6 +1839,7 @@ static struct of_device_id const bcm963x
{ .compatible = "dynalink,rta770w", .data = &board_rta770w, },
#endif
#ifdef CONFIG_BCM63XX_CPU_6348
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1760,6 +1760,53 @@ static struct board_info __initdata boar
+@@ -1720,6 +1720,53 @@ static struct board_info __initdata boar
},
},
};
#endif /* CONFIG_BCM63XX_CPU_63268 */
/*
-@@ -1846,6 +1893,7 @@ static const struct board_info __initcon
+@@ -1806,6 +1853,7 @@ static const struct board_info __initcon
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
&board_963269bhr,
#endif
};
-@@ -1936,6 +1984,7 @@ static struct of_device_id const bcm963x
+@@ -1896,6 +1944,7 @@ static struct of_device_id const bcm963x
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
{ .compatible = "brcm,bcm963269bhr", .data = &board_963269bhr, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1720,6 +1720,66 @@ static struct board_info __initdata boar
+@@ -1680,6 +1680,66 @@ static struct board_info __initdata boar
* known 63268/63269 boards
*/
#ifdef CONFIG_BCM63XX_CPU_63268
static struct board_info __initdata board_963269bhr = {
.name = "963269BHR",
.expected_cpu_id = 0x63268,
-@@ -1892,6 +1952,7 @@ static const struct board_info __initcon
+@@ -1852,6 +1912,7 @@ static const struct board_info __initcon
&board_96368mvngr,
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
&board_963269bhr,
&board_vw6339gu,
#endif
-@@ -1983,6 +2044,7 @@ static struct of_device_id const bcm963x
+@@ -1943,6 +2004,7 @@ static struct of_device_id const bcm963x
{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -14,7 +14,9 @@
+@@ -13,6 +13,8 @@
+ #include <linux/kernel.h>
#include <linux/string.h>
#include <linux/pci_ids.h>
- #include <linux/platform_device.h>
+#include <linux/platform_data/b53.h>
- #include <linux/rtl8367.h>
+#include <linux/spi/spi.h>
#include <asm/addrspace.h>
#include <bcm63xx_board.h>
#include <bcm63xx_cpu.h>
-@@ -1714,6 +1716,65 @@ static struct board_info __initdata boar
+@@ -1674,6 +1676,65 @@ static struct board_info __initdata boar
.has_ohci0 = 1,
.has_ehci0 = 1,
};
#endif /* CONFIG_BCM63XX_CPU_6368 */
/*
-@@ -1950,6 +2011,7 @@ static const struct board_info __initcon
+@@ -1910,6 +1971,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6368
&board_96368mvwg,
&board_96368mvngr,
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
&board_963268bu_p300,
-@@ -2042,6 +2104,7 @@ static struct of_device_id const bcm963x
+@@ -2002,6 +2064,7 @@ static struct of_device_id const bcm963x
#ifdef CONFIG_BCM63XX_CPU_6368
{ .compatible = "brcm,bcm96368mvngr", .data = &board_96368mvngr, },
{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1717,6 +1717,60 @@ static struct board_info __initdata boar
+@@ -1677,6 +1677,60 @@ static struct board_info __initdata boar
.has_ehci0 = 1,
};
static struct b53_platform_data WAP5813n_b53_pdata = {
.alias = "eth0",
};
-@@ -2011,6 +2065,7 @@ static const struct board_info __initcon
+@@ -1971,6 +2025,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6368
&board_96368mvwg,
&board_96368mvngr,
&board_WAP5813n,
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
-@@ -2104,6 +2159,7 @@ static struct of_device_id const bcm963x
+@@ -2064,6 +2119,7 @@ static struct of_device_id const bcm963x
#ifdef CONFIG_BCM63XX_CPU_6368
{ .compatible = "brcm,bcm96368mvngr", .data = &board_96368mvngr, },
{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1771,6 +1771,60 @@ static struct board_info __initdata boar
+@@ -1731,6 +1731,60 @@ static struct board_info __initdata boar
},
};
static struct b53_platform_data WAP5813n_b53_pdata = {
.alias = "eth0",
};
-@@ -2066,6 +2120,7 @@ static const struct board_info __initcon
+@@ -2026,6 +2080,7 @@ static const struct board_info __initcon
&board_96368mvwg,
&board_96368mvngr,
&board_VR3025u,
&board_WAP5813n,
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
-@@ -2160,6 +2215,7 @@ static struct of_device_id const bcm963x
+@@ -2120,6 +2175,7 @@ static struct of_device_id const bcm963x
{ .compatible = "brcm,bcm96368mvngr", .data = &board_96368mvngr, },
{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1726,6 +1726,49 @@ static struct sprom_fixup __initdata vr3
+@@ -1686,6 +1686,49 @@ static struct sprom_fixup __initdata vr3
{ .offset = 115, .value = 0xfad9 },
};
static struct board_info __initdata board_VR3025u = {
.name = "96368M-1541N",
.expected_cpu_id = 0x6368,
-@@ -2119,6 +2162,7 @@ static const struct board_info __initcon
+@@ -2079,6 +2122,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6368
&board_96368mvwg,
&board_96368mvngr,
&board_VR3025u,
&board_VR3025un,
&board_WAP5813n,
-@@ -2217,6 +2261,7 @@ static struct of_device_id const bcm963x
+@@ -2177,6 +2221,7 @@ static struct of_device_id const bcm963x
{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
{ .compatible = "comtrend,wap-5813n", .data = &board_WAP5813n, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1362,6 +1362,37 @@ static struct board_info __initdata boar
+@@ -1357,6 +1357,37 @@ static struct board_info __initdata boar
},
};
static struct board_info __initdata board_HW553 = {
.name = "HW553",
.expected_cpu_id = 0x6358,
-@@ -2146,6 +2177,7 @@ static const struct board_info __initcon
+@@ -2106,6 +2137,7 @@ static const struct board_info __initcon
&board_nb4_ser_r0,
&board_nb4_fxc_r1,
&board_ct6373_1,
&board_HW553,
&board_HW556_A,
&board_HW556_B,
-@@ -2238,6 +2270,7 @@ static struct of_device_id const bcm963x
+@@ -2198,6 +2230,7 @@ static struct of_device_id const bcm963x
{ .compatible = "d-link,dsl-274xb-c2", .data = &board_dsl_274xb_rev_c, },
{ .compatible = "d-link,dsl-2650u", .data = &board_96358vw2, },
{ .compatible = "d-link,dva-g3810bn/tl", .data = &board_DVAG3810BN, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -363,6 +363,50 @@ static struct board_info __initdata boar
+@@ -358,6 +358,50 @@ static struct board_info __initdata boar
},
};
static struct board_info __initdata board_A4001N1 = {
.name = "963281T_TEF",
.expected_cpu_id = 0x6328,
-@@ -2128,6 +2172,7 @@ static const struct board_info __initcon
+@@ -2088,6 +2132,7 @@ static const struct board_info __initcon
&board_AR5381u,
&board_AR5387un,
&board_963281TAN,
&board_A4001N1,
&board_dsl_274xb_f1,
&board_FAST2704V2,
-@@ -2216,6 +2261,7 @@ static struct of_device_id const bcm963x
+@@ -2176,6 +2221,7 @@ static struct of_device_id const bcm963x
{ .compatible = "brcm,bcm96318ref_p300", .data = &board_96318ref_p300, },
#endif
#ifdef CONFIG_BCM63XX_CPU_6328
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -152,6 +152,75 @@ static struct board_info __initdata boar
+@@ -147,6 +147,75 @@ static struct board_info __initdata boar
},
},
};
#endif /* CONFIG_BCM63XX_CPU_6318 */
/*
-@@ -2166,6 +2235,7 @@ static const struct board_info __initcon
+@@ -2126,6 +2195,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6318
&board_96318ref,
&board_96318ref_p300,
#endif
#ifdef CONFIG_BCM63XX_CPU_6328
&board_96328avng,
-@@ -2259,6 +2329,7 @@ static struct of_device_id const bcm963x
+@@ -2219,6 +2289,7 @@ static struct of_device_id const bcm963x
#ifdef CONFIG_BCM63XX_CPU_6318
{ .compatible = "brcm,bcm96318ref", .data = &board_96318ref, },
{ .compatible = "brcm,bcm96318ref_p300", .data = &board_96318ref_p300, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1861,6 +1861,48 @@ static struct board_info __initdata boar
+@@ -1821,6 +1821,48 @@ static struct board_info __initdata boar
.has_ehci0 = 1,
};
static struct sprom_fixup __initdata vr3025u_fixups[] = {
{ .offset = 97, .value = 0xfeb3 },
{ .offset = 98, .value = 0x1618 },
-@@ -2309,6 +2351,7 @@ static const struct board_info __initcon
+@@ -2269,6 +2311,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6368
&board_96368mvwg,
&board_96368mvngr,
&board_P870HW51A_V2,
&board_VR3025u,
&board_VR3025un,
-@@ -2411,6 +2454,7 @@ static struct of_device_id const bcm963x
+@@ -2371,6 +2414,7 @@ static struct of_device_id const bcm963x
{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
{ .compatible = "comtrend,wap-5813n", .data = &board_WAP5813n, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1475,6 +1475,32 @@ static struct board_info __initdata boar
+@@ -1470,6 +1470,32 @@ static struct board_info __initdata boar
},
};
static struct board_info __initdata board_HW520 = {
.name = "HW6358GW_B",
.expected_cpu_id = 0x6358,
-@@ -2334,6 +2360,7 @@ static const struct board_info __initcon
+@@ -2294,6 +2320,7 @@ static const struct board_info __initcon
&board_nb4_ser_r0,
&board_nb4_fxc_r1,
&board_ct6373_1,
&board_HW520,
&board_HW553,
&board_HW556_A,
-@@ -2443,6 +2470,7 @@ static struct of_device_id const bcm963x
+@@ -2403,6 +2430,7 @@ static struct of_device_id const bcm963x
{ .compatible = "sfr,nb4-fxc-r1", .data = &board_nb4_fxc_r1, },
{ .compatible = "t-com,spw303v", .data = &board_spw303v, },
{ .compatible = "telsey,cpva642", .data = &board_CPVA642, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1929,6 +1929,53 @@ static struct board_info __initdata boar
+@@ -1889,6 +1889,53 @@ static struct board_info __initdata boar
.num_spis = ARRAY_SIZE(DGND3700v1_3800B_spi_devices),
};
static struct sprom_fixup __initdata vr3025u_fixups[] = {
{ .offset = 97, .value = 0xfeb3 },
{ .offset = 98, .value = 0x1618 },
-@@ -2379,6 +2426,7 @@ static const struct board_info __initcon
+@@ -2339,6 +2386,7 @@ static const struct board_info __initcon
&board_96368mvwg,
&board_96368mvngr,
&board_DGND3700v1_3800B,
&board_P870HW51A_V2,
&board_VR3025u,
&board_VR3025un,
-@@ -2482,6 +2530,7 @@ static struct of_device_id const bcm963x
+@@ -2442,6 +2490,7 @@ static struct of_device_id const bcm963x
{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
{ .compatible = "comtrend,wap-5813n", .data = &board_WAP5813n, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -221,6 +221,46 @@ static struct board_info __initdata boar
+@@ -216,6 +216,46 @@ static struct board_info __initdata boar
.num_board_fixups = ARRAY_SIZE(dsl2751b_e1_fixups),
},
};
#endif /* CONFIG_BCM63XX_CPU_6318 */
/*
-@@ -2351,6 +2391,7 @@ static const struct board_info __initcon
+@@ -2311,6 +2351,7 @@ static const struct board_info __initcon
&board_96318ref,
&board_96318ref_p300,
&board_dsl_2751b_d1,
#endif
#ifdef CONFIG_BCM63XX_CPU_6328
&board_96328avng,
-@@ -2448,6 +2489,7 @@ static struct of_device_id const bcm963x
+@@ -2408,6 +2449,7 @@ static struct of_device_id const bcm963x
{ .compatible = "brcm,bcm96318ref", .data = &board_96318ref, },
{ .compatible = "brcm,bcm96318ref_p300", .data = &board_96318ref_p300, },
{ .compatible = "d-link,dsl-275xb-d", .data = &board_dsl_2751b_d1, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -2167,6 +2167,60 @@ static struct board_info __initdata boar
+@@ -2127,6 +2127,60 @@ static struct board_info __initdata boar
},
};
static struct b53_platform_data WAP5813n_b53_pdata = {
.alias = "eth0",
};
-@@ -2471,6 +2525,7 @@ static const struct board_info __initcon
+@@ -2431,6 +2485,7 @@ static const struct board_info __initcon
&board_P870HW51A_V2,
&board_VR3025u,
&board_VR3025un,
&board_WAP5813n,
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
-@@ -2571,6 +2626,7 @@ static struct of_device_id const bcm963x
+@@ -2531,6 +2586,7 @@ static struct of_device_id const bcm963x
{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -643,6 +643,51 @@ static struct board_info __initdata boar
+@@ -638,6 +638,51 @@ static struct board_info __initdata boar
},
},
};
#endif /* CONFIG_BCM63XX_CPU_6328 */
/*
-@@ -2456,6 +2501,7 @@ static const struct board_info __initcon
+@@ -2416,6 +2461,7 @@ static const struct board_info __initcon
&board_A4001N1,
&board_dsl_274xb_f1,
&board_FAST2704V2,
#endif
#ifdef CONFIG_BCM63XX_CPU_6338
&board_96338gw,
-@@ -2554,6 +2600,7 @@ static struct of_device_id const bcm963x
+@@ -2514,6 +2560,7 @@ static struct of_device_id const bcm963x
{ .compatible = "comtrend,ar-5381u", .data = &board_AR5381u, },
{ .compatible = "comtrend,ar-5387un", .data = &board_AR5387un, },
{ .compatible = "d-link,dsl-274xb-f", .data = &board_dsl_274xb_f1, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -2061,6 +2061,53 @@ static struct board_info __initdata boar
+@@ -2021,6 +2021,53 @@ static struct board_info __initdata boar
},
};
static struct sprom_fixup __initdata vr3025u_fixups[] = {
{ .offset = 97, .value = 0xfeb3 },
{ .offset = 98, .value = 0x1618 },
-@@ -2567,6 +2614,7 @@ static const struct board_info __initcon
+@@ -2527,6 +2574,7 @@ static const struct board_info __initcon
&board_96368mvwg,
&board_96368mvngr,
&board_DGND3700v1_3800B,
&board_HG655b,
&board_P870HW51A_V2,
&board_VR3025u,
-@@ -2675,6 +2723,7 @@ static struct of_device_id const bcm963x
+@@ -2635,6 +2683,7 @@ static struct of_device_id const bcm963x
{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
{ .compatible = "comtrend,vr-3026e", .data = &board_VR3026e, },
{ .compatible = "comtrend,wap-5813n", .data = &board_WAP5813n, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -2014,6 +2014,43 @@ static struct board_info __initdata boar
+@@ -1974,6 +1974,43 @@ static struct board_info __initdata boar
.num_spis = ARRAY_SIZE(DGND3700v1_3800B_spi_devices),
};
static struct board_info __initdata board_HG655b = {
.name = "HW65x",
.expected_cpu_id = 0x6368,
-@@ -2614,6 +2651,7 @@ static const struct board_info __initcon
+@@ -2574,6 +2611,7 @@ static const struct board_info __initcon
&board_96368mvwg,
&board_96368mvngr,
&board_DGND3700v1_3800B,
&board_HG622,
&board_HG655b,
&board_P870HW51A_V2,
-@@ -2726,6 +2764,7 @@ static struct of_device_id const bcm963x
+@@ -2686,6 +2724,7 @@ static struct of_device_id const bcm963x
{ .compatible = "huawei,hg622", .data = &board_HG622, },
{ .compatible = "huawei,hg655b", .data = &board_HG655b, },
{ .compatible = "netgear,dgnd3700v1", .data = &board_DGND3700v1_3800B, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1884,6 +1884,52 @@ static struct board_info __initdata boar
+@@ -1844,6 +1844,52 @@ static struct board_info __initdata boar
* known 6368 boards
*/
#ifdef CONFIG_BCM63XX_CPU_6368
static struct board_info __initdata board_96368mvwg = {
.name = "96368MVWG",
.expected_cpu_id = 0x6368,
-@@ -2648,6 +2694,7 @@ static const struct board_info __initcon
+@@ -2608,6 +2654,7 @@ static const struct board_info __initcon
#endif
#ifdef CONFIG_BCM63XX_CPU_6368
&board_96368mvwg,
&board_96368mvngr,
&board_DGND3700v1_3800B,
-@@ -2755,6 +2802,7 @@ static struct of_device_id const bcm963x
+@@ -2715,6 +2762,7 @@ static struct of_device_id const bcm963x
{ .compatible = "sfr,nb6-ser-r0", .data = &board_nb6, },
#endif
#ifdef CONFIG_BCM63XX_CPU_6368