"Broadcom 96348R reference board")
board_name="bcm96348r"
;;
+ "Broadcom BCM96318REF reference board")
+ board_name="bcm96318ref"
+ ;;
+ "Broadcom BCM96318REF_P300 reference board")
+ board_name="bcm96318ref_p300"
+ ;;
"Broadcom BCM963268BU_P300 reference board")
board_name="bcm963268bu_p300"
;;
--- /dev/null
+/dts-v1/;
+
+/include/ "bcm6318.dtsi"
+
+/ {
+ model = "Broadcom BCM96318REF reference board";
+ compatible = "brcm,bcm96318ref", "brcm,bcm6318";
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ debounce-interval = <60>;
+
+ wps {
+ label = "wps";
+ gpios = <&gpio1 1 1>;
+ linux,code = <0x211>;
+ };
+
+ reset {
+ label = "reset";
+ gpios = <&gpio1 2 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+
+ inet {
+ label = "96318REF:green:inet";
+ gpios = <&gpio0 8 1>;
+ };
+
+ inet_fail {
+ label = "96318REF:red:inet-fail";
+ gpios = <&gpio0 9 1>;
+ };
+
+ post_failed {
+ label = "96318REF:red:post-failed";
+ gpios = <&gpio0 11 1>;
+ };
+ };
+};
--- /dev/null
+/dts-v1/;
+
+/include/ "bcm6318.dtsi"
+
+/ {
+ model = "Broadcom BCM96318REF_P300 reference board";
+ compatible = "brcm,bcm96318ref_p300", "brcm,bcm6318";
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ debounce-interval = <60>;
+
+ wps {
+ label = "wps";
+ gpios = <&gpio1 1 1>;
+ linux,code = <0x211>;
+ };
+
+ reset {
+ label = "reset";
+ gpios = <&gpio1 2 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+
+ inet {
+ label = "96318REF_P300:green:inet";
+ gpios = <&gpio0 8 1>;
+ };
+
+ inet_fail {
+ label = "96318REF_P300:red:inet-fail";
+ gpios = <&gpio0 9 1>;
+ };
+
+ post_failed {
+ label = "96318REF_P300:red:post-failed";
+ gpios = <&gpio0 11 1>;
+ };
+
+ usb_pwron {
+ label = "96318REF_P300::usb-pwron";
+ gpios = <&gpio0 13 1>;
+ default-state = "on";
+ };
+ };
+};
$(eval $(call ImageDTB,CFEDTB,AR1004G,AR1004G,ar1004g,96348GW-10,6348))
# Belkin F5D7633
$(eval $(call ImageDTB,CFEDTB,F5D7633,F5D7633,f5d7633,96348GW-10,6348,--block-size 0x20000 --image-offset 0x20000))
+# Broadcom BCM96318REF
+$(eval $(call ImageDTB,Dummy,BCM96318REF,BCM96318REF,bcm96318ref,96318REF,6318))
+# Broadcom BCM96318REF_P300
+$(eval $(call ImageDTB,Dummy,BCM96318REF_P300,BCM96318ref_P300,bcm96318ref_p300,96318REF_P300,6318))
# Broadcom BCM963268BU_P300
$(eval $(call ImageDTB,Dummy,BCM963268BU_P300,BCM963268BU_P300,bcm963268bu_p300,963268BU_P300,63268))
# BT Home Hub 2.0 A
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -62,6 +62,93 @@ static struct board_info __initdata boar
+@@ -62,6 +62,56 @@ static struct board_info __initdata boar
#endif /* CONFIG_BCM63XX_CPU_3368 */
/*
+ },
+ },
+ },
-+
-+ .leds = {
-+ {
-+ .name = "96318REF:red:post-failed",
-+ .gpio = 11,
-+ .active_low = 1,
-+ },
-+ {
-+ .name = "96318REF:green:inet",
-+ .gpio = 8,
-+ .active_low = 1,
-+ },
-+ {
-+ .name = "96318REF:red:inet-fail",
-+ .gpio = 9,
-+ .active_low = 1,
-+ },
-+ },
-+
-+ .buttons = {
-+ {
-+ .desc = "wps",
-+ .gpio = 33,
-+ .active_low = 1,
-+ .type = EV_KEY,
-+ .code = KEY_WPS_BUTTON,
-+ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
-+ },
-+ {
-+ .desc = "reset",
-+ .gpio = 34,
-+ .active_low = 1,
-+ .type = EV_KEY,
-+ .code = KEY_RESTART,
-+ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
-+ },
-+ },
+};
+#endif /* CONFIG_BCM63XX_CPU_6318 */
+
* known 6328 boards
*/
#ifdef CONFIG_BCM63XX_CPU_6328
-@@ -1613,6 +1700,9 @@ static const struct board_info __initcon
+@@ -1613,6 +1663,9 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_3368
&board_cvg834g,
#endif
#ifdef CONFIG_BCM63XX_CPU_6328
&board_96328avng,
&board_AR5381u,
+@@ -1690,6 +1743,9 @@ static struct of_device_id const bcm963x
+ #ifdef CONFIG_BCM63XX_CPU_3368
+ { .compatible = "netgear,cvg834g", .data = &board_cvg834g, },
+ #endif
++#ifdef CONFIG_BCM63XX_CPU_6318
++ { .compatible = "brcm,bcm96318ref", .data = &board_96318ref, },
++#endif
+ #ifdef CONFIG_BCM63XX_CPU_6328
+ { .compatible = "adb,a4001n1", .data = &board_A4001N1, },
+ { .compatible = "brcm,bcm963281TAN", .data = &board_963281TAN, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -146,6 +146,94 @@ static struct board_info __initdata boar
+@@ -109,6 +109,51 @@ static struct board_info __initdata boar
},
},
};
+ },
+ },
+ },
-+
-+ .leds = {
-+ {
-+ .name = "96318REF_P300:red:post-failed",
-+ .gpio = 11,
-+ .active_low = 1,
-+ },
-+ {
-+ .name = "96318REF_P300:green:inet",
-+ .gpio = 8,
-+ .active_low = 1,
-+ },
-+ {
-+ .name = "96318REF_P300:red:inet-fail",
-+ .gpio = 9,
-+ .active_low = 1,
-+ },
-+ {
-+ .name = "96318REF_P300::usb-pwron",
-+ .gpio = 13,
-+ .active_low = 1,
-+ .default_trigger = "default-on",
-+ },
-+ },
-+
-+ .buttons = {
-+ {
-+ .desc = "wps",
-+ .gpio = 33,
-+ .active_low = 1,
-+ .type = EV_KEY,
-+ .code = KEY_WPS_BUTTON,
-+ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
-+ },
-+ {
-+ .desc = "reset",
-+ .gpio = 34,
-+ .active_low = 1,
-+ .type = EV_KEY,
-+ .code = KEY_RESTART,
-+ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
-+ },
-+ },
+};
#endif /* CONFIG_BCM63XX_CPU_6318 */
/*
-@@ -1702,6 +1790,7 @@ static const struct board_info __initcon
+@@ -1665,6 +1710,7 @@ static const struct board_info __initcon
#endif
#ifdef CONFIG_BCM63XX_CPU_6318
&board_96318ref,
#endif
#ifdef CONFIG_BCM63XX_CPU_6328
&board_96328avng,
+@@ -1745,6 +1791,7 @@ static struct of_device_id const bcm963x
+ #endif
+ #ifdef CONFIG_BCM63XX_CPU_6318
+ { .compatible = "brcm,bcm96318ref", .data = &board_96318ref, },
++ { .compatible = "brcm,bcm96318ref_p300", .data = &board_96318ref_p300, },
+ #endif
+ #ifdef CONFIG_BCM63XX_CPU_6328
+ { .compatible = "adb,a4001n1", .data = &board_A4001N1, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1782,6 +1782,75 @@ static struct board_info __initdata boar
+@@ -1702,6 +1702,75 @@ static struct board_info __initdata boar
#endif /* CONFIG_BCM63XX_CPU_6368 */
/*
* all boards
*/
static const struct board_info __initconst *bcm963xx_boards[] = {
-@@ -1862,6 +1931,9 @@ static const struct board_info __initcon
+@@ -1782,6 +1851,9 @@ static const struct board_info __initcon
&board_96368mvwg,
&board_96368mvngr,
#endif
---
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -767,6 +767,22 @@ static struct board_info __initdata boar
+@@ -687,6 +687,22 @@ static struct board_info __initdata boar
.has_ehci0 = 1,
};
/* BT Voyager 2110 */
static struct board_info __initdata board_V2110 = {
-@@ -1902,6 +1918,7 @@ static const struct board_info __initcon
+@@ -1822,6 +1838,7 @@ static const struct board_info __initcon
&board_96348A_122,
&board_CPVA502plus,
&board_96348W3,
#endif
#ifdef CONFIG_BCM63XX_CPU_6358
-@@ -1962,6 +1979,7 @@ static struct of_device_id const bcm963x
+@@ -1886,6 +1903,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
-@@ -1864,6 +1864,53 @@ static struct board_info __initdata boar
+@@ -1784,6 +1784,53 @@ static struct board_info __initdata boar
},
},
};
#endif /* CONFIG_BCM63XX_CPU_63268 */
/*
-@@ -1950,6 +1997,7 @@ static const struct board_info __initcon
+@@ -1870,6 +1917,7 @@ static const struct board_info __initcon
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
&board_963269bhr,
#endif
};
-@@ -2035,6 +2083,7 @@ static struct of_device_id const bcm963x
+@@ -1959,6 +2007,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
-@@ -1801,6 +1801,66 @@ static struct board_info __initdata boar
+@@ -1721,6 +1721,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,
-@@ -1996,6 +2056,7 @@ static const struct board_info __initcon
+@@ -1916,6 +1976,7 @@ static const struct board_info __initcon
&board_96368mvngr,
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
&board_963269bhr,
&board_vw6339gu,
#endif
-@@ -2083,6 +2144,7 @@ static struct of_device_id const bcm963x
+@@ -2007,6 +2068,7 @@ static struct of_device_id const bcm963x
{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
#include <asm/addrspace.h>
#include <bcm63xx_board.h>
#include <bcm63xx_cpu.h>
-@@ -1795,6 +1797,65 @@ static struct board_info __initdata boar
+@@ -1715,6 +1717,65 @@ static struct board_info __initdata boar
.has_ohci0 = 1,
.has_ehci0 = 1,
};
#endif /* CONFIG_BCM63XX_CPU_6368 */
/*
-@@ -2054,6 +2115,7 @@ static const struct board_info __initcon
+@@ -1974,6 +2035,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,
-@@ -2142,6 +2204,7 @@ static struct of_device_id const bcm963x
+@@ -2066,6 +2128,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
-@@ -1798,6 +1798,60 @@ static struct board_info __initdata boar
+@@ -1718,6 +1718,60 @@ static struct board_info __initdata boar
.has_ehci0 = 1,
};
static struct b53_platform_data WAP5813n_b53_pdata = {
.alias = "eth0",
};
-@@ -2115,6 +2169,7 @@ static const struct board_info __initcon
+@@ -2035,6 +2089,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6368
&board_96368mvwg,
&board_96368mvngr,
&board_WAP5813n,
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
-@@ -2204,6 +2259,7 @@ static struct of_device_id const bcm963x
+@@ -2128,6 +2183,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
-@@ -1852,6 +1852,60 @@ static struct board_info __initdata boar
+@@ -1772,6 +1772,60 @@ static struct board_info __initdata boar
},
};
static struct b53_platform_data WAP5813n_b53_pdata = {
.alias = "eth0",
};
-@@ -2170,6 +2224,7 @@ static const struct board_info __initcon
+@@ -2090,6 +2144,7 @@ static const struct board_info __initcon
&board_96368mvwg,
&board_96368mvngr,
&board_VR3025u,
&board_WAP5813n,
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
-@@ -2260,6 +2315,7 @@ static struct of_device_id const bcm963x
+@@ -2184,6 +2239,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
-@@ -1807,6 +1807,49 @@ static struct sprom_fixup __initdata vr3
+@@ -1727,6 +1727,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,
-@@ -2223,6 +2266,7 @@ static const struct board_info __initcon
+@@ -2143,6 +2186,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6368
&board_96368mvwg,
&board_96368mvngr,
&board_VR3025u,
&board_VR3025un,
&board_WAP5813n,
-@@ -2317,6 +2361,7 @@ static struct of_device_id const bcm963x
+@@ -2241,6 +2285,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
-@@ -1445,6 +1445,37 @@ static struct board_info __initdata boar
+@@ -1365,6 +1365,37 @@ static struct board_info __initdata boar
},
};
static struct board_info __initdata board_HW553 = {
.name = "HW553",
.expected_cpu_id = 0x6358,
-@@ -2250,6 +2281,7 @@ static const struct board_info __initcon
+@@ -2170,6 +2201,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,
-@@ -2338,6 +2370,7 @@ static struct of_device_id const bcm963x
+@@ -2262,6 +2294,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
-@@ -447,6 +447,50 @@ static struct board_info __initdata boar
+@@ -367,6 +367,50 @@ static struct board_info __initdata boar
},
};
static struct board_info __initdata board_A4001N1 = {
.name = "963281T_TEF",
.expected_cpu_id = 0x6328,
-@@ -2232,6 +2276,7 @@ static const struct board_info __initcon
+@@ -2152,6 +2196,7 @@ static const struct board_info __initcon
&board_AR5381u,
&board_AR5387un,
&board_963281TAN,
&board_A4001N1,
&board_dsl_274xb_f1,
&board_FAST2704V2,
-@@ -2316,6 +2361,7 @@ static struct of_device_id const bcm963x
- { .compatible = "netgear,cvg834g", .data = &board_cvg834g, },
+@@ -2240,6 +2285,7 @@ static struct of_device_id const bcm963x
+ { .compatible = "brcm,bcm96318ref_p300", .data = &board_96318ref_p300, },
#endif
#ifdef CONFIG_BCM63XX_CPU_6328
+ { .compatible = "adb,a4001n", .data = &board_A4001N, },
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -236,6 +236,141 @@ static struct board_info __initdata boar
+@@ -156,6 +156,141 @@ static struct board_info __initdata boar
},
},
};
#endif /* CONFIG_BCM63XX_CPU_6318 */
/*
-@@ -2270,6 +2405,7 @@ static const struct board_info __initcon
+@@ -2190,6 +2325,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6318
&board_96318ref,
&board_96318ref_p300,
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -2008,6 +2008,48 @@ static struct board_info __initdata boar
+@@ -1928,6 +1928,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 },
-@@ -2479,6 +2521,7 @@ static const struct board_info __initcon
+@@ -2399,6 +2441,7 @@ static const struct board_info __initcon
#ifdef CONFIG_BCM63XX_CPU_6368
&board_96368mvwg,
&board_96368mvngr,
&board_P870HW51A_V2,
&board_VR3025u,
&board_VR3025un,
-@@ -2576,6 +2619,7 @@ static struct of_device_id const bcm963x
+@@ -2500,6 +2543,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
-@@ -1624,6 +1624,32 @@ static struct board_info __initdata boar
+@@ -1544,6 +1544,32 @@ static struct board_info __initdata boar
},
};
static struct board_info __initdata board_HW520 = {
.name = "HW6358GW_B",
.expected_cpu_id = 0x6358,
-@@ -2504,6 +2530,7 @@ static const struct board_info __initcon
+@@ -2424,6 +2450,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,
-@@ -2608,6 +2635,7 @@ static struct of_device_id const bcm963x
+@@ -2532,6 +2559,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, },
# See /LICENSE for more information.
#
+define Profile/BCM96318REF
+ NAME:=Broadcom BCM9618REF reference board
+ PACKAGES:= kmod-b43 wpad-mini kmod-usb-ohci kmod-usb2 kmod-bcm63xx-udc
+endef
+define Profile/BCM96318REF/Description
+ Package set optimized for the Broadcom BCM96318REF reference board.
+endef
+$(eval $(call Profile,BCM96318REF))
+
+define Profile/BCM96318REF_P300
+ NAME:=Broadcom BCM96328BU_P300 reference board
+ PACKAGES:= kmod-b43 wpad-mini kmod-usb-ohci kmod-usb2 kmod-bcm63xx-udc
+endef
+define Profile/BCM96318REF_P300/Description
+ Package set optimized for the Broadcom BCM96318REF_P300 reference board.
+endef
+$(eval $(call Profile,BCM96318REF_P300))
+
define Profile/BCM963268BU_P300
NAME:=Broadcom BCM96328BU_P300 reference board
PACKAGES:= kmod-usb-ohci kmod-usb2 kmod-bcm63xx-udc