summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xtarget/linux/brcm63xx/base-files/lib/brcm63xx.sh6
-rw-r--r--target/linux/brcm63xx/dts/bcm96318ref.dts47
-rw-r--r--target/linux/brcm63xx/dts/bcm96318ref_p300.dts53
-rwxr-xr-xtarget/linux/brcm63xx/image/Makefile4
-rw-r--r--target/linux/brcm63xx/patches-3.18/555-board_96318ref.patch51
-rw-r--r--target/linux/brcm63xx/patches-3.18/556-board_96318ref_p300.patch55
-rw-r--r--target/linux/brcm63xx/patches-3.18/557-board_bcm963269bhr.patch4
-rw-r--r--target/linux/brcm63xx/patches-3.18/558-board_AR1004G.patch6
-rw-r--r--target/linux/brcm63xx/patches-3.18/559-board_vw6339gu.patch6
-rw-r--r--target/linux/brcm63xx/patches-3.18/560-board_963268gu_p300.patch6
-rw-r--r--target/linux/brcm63xx/patches-3.18/561-board_WAP-5813n.patch6
-rw-r--r--target/linux/brcm63xx/patches-3.18/562-board_VR-3025u.patch6
-rw-r--r--target/linux/brcm63xx/patches-3.18/563-board_VR-3025un.patch6
-rw-r--r--target/linux/brcm63xx/patches-3.18/564-board_P870HW-51a_v2.patch6
-rw-r--r--target/linux/brcm63xx/patches-3.18/565-board_hw520.patch6
-rw-r--r--target/linux/brcm63xx/patches-3.18/566-board_A4001N.patch8
-rw-r--r--target/linux/brcm63xx/patches-3.18/567-board_dsl-2751b_e1.patch4
-rw-r--r--target/linux/brcm63xx/patches-3.18/568-board_DGND3700v1_3800B.patch6
-rw-r--r--target/linux/brcm63xx/patches-3.18/569-board_homehub2a.patch6
-rw-r--r--target/linux/brcm63xx/profiles/broadcom.mk18
20 files changed, 188 insertions, 122 deletions
diff --git a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
index f78ade0..159537d 100755
--- a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
+++ b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
@@ -30,6 +30,12 @@ brcm63xx_dt_detect() {
"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"
;;
diff --git a/target/linux/brcm63xx/dts/bcm96318ref.dts b/target/linux/brcm63xx/dts/bcm96318ref.dts
new file mode 100644
index 0000000..84b3336
--- /dev/null
+++ b/target/linux/brcm63xx/dts/bcm96318ref.dts
@@ -0,0 +1,47 @@
+/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>;
+ };
+ };
+};
diff --git a/target/linux/brcm63xx/dts/bcm96318ref_p300.dts b/target/linux/brcm63xx/dts/bcm96318ref_p300.dts
new file mode 100644
index 0000000..5d91d76
--- /dev/null
+++ b/target/linux/brcm63xx/dts/bcm96318ref_p300.dts
@@ -0,0 +1,53 @@
+/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";
+ };
+ };
+};
diff --git a/target/linux/brcm63xx/image/Makefile b/target/linux/brcm63xx/image/Makefile
index bd0fe0a..0727343 100755
--- a/target/linux/brcm63xx/image/Makefile
+++ b/target/linux/brcm63xx/image/Makefile
@@ -298,6 +298,10 @@ $(eval $(call ImageDTB,CFEDTB,RG100A,RG100A,rg100a,96358VW2,6358,--block-size 0x
$(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
diff --git a/target/linux/brcm63xx/patches-3.18/555-board_96318ref.patch b/target/linux/brcm63xx/patches-3.18/555-board_96318ref.patch
index 76ae147..595ac07 100644
--- a/target/linux/brcm63xx/patches-3.18/555-board_96318ref.patch
+++ b/target/linux/brcm63xx/patches-3.18/555-board_96318ref.patch
@@ -1,6 +1,6 @@
--- 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 */
/*
@@ -50,43 +50,6 @@
+ },
+ },
+ },
-+
-+ .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 */
+
@@ -94,7 +57,7 @@
* 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
@@ -104,3 +67,13 @@
#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, },
diff --git a/target/linux/brcm63xx/patches-3.18/556-board_96318ref_p300.patch b/target/linux/brcm63xx/patches-3.18/556-board_96318ref_p300.patch
index e8e69b3..81493fd 100644
--- a/target/linux/brcm63xx/patches-3.18/556-board_96318ref_p300.patch
+++ b/target/linux/brcm63xx/patches-3.18/556-board_96318ref_p300.patch
@@ -1,6 +1,6 @@
--- 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
},
},
};
@@ -48,54 +48,11 @@
+ },
+ },
+ },
-+
-+ .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,
@@ -103,3 +60,11 @@
#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, },
diff --git a/target/linux/brcm63xx/patches-3.18/557-board_bcm963269bhr.patch b/target/linux/brcm63xx/patches-3.18/557-board_bcm963269bhr.patch
index 85003ed..a2f4529 100644
--- a/target/linux/brcm63xx/patches-3.18/557-board_bcm963269bhr.patch
+++ b/target/linux/brcm63xx/patches-3.18/557-board_bcm963269bhr.patch
@@ -1,6 +1,6 @@
--- 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 */
/*
@@ -76,7 +76,7 @@
* 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
diff --git a/target/linux/brcm63xx/patches-3.18/558-board_AR1004G.patch b/target/linux/brcm63xx/patches-3.18/558-board_AR1004G.patch
index 1ca0319..2a7bc90 100644
--- a/target/linux/brcm63xx/patches-3.18/558-board_AR1004G.patch
+++ b/target/linux/brcm63xx/patches-3.18/558-board_AR1004G.patch
@@ -8,7 +8,7 @@ Signed-off-by: Adrian Feliks <mexit@o2.pl>
---
--- 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,
};
@@ -31,7 +31,7 @@ Signed-off-by: Adrian Feliks <mexit@o2.pl>
/* 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,
@@ -39,7 +39,7 @@ Signed-off-by: Adrian Feliks <mexit@o2.pl>
#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
diff --git a/target/linux/brcm63xx/patches-3.18/559-board_vw6339gu.patch b/target/linux/brcm63xx/patches-3.18/559-board_vw6339gu.patch
index 51c4b68..be0e017 100644
--- a/target/linux/brcm63xx/patches-3.18/559-board_vw6339gu.patch
+++ b/target/linux/brcm63xx/patches-3.18/559-board_vw6339gu.patch
@@ -1,6 +1,6 @@
--- 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
},
},
};
@@ -54,7 +54,7 @@
#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,
@@ -62,7 +62,7 @@
#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
diff --git a/target/linux/brcm63xx/patches-3.18/560-board_963268gu_p300.patch b/target/linux/brcm63xx/patches-3.18/560-board_963268gu_p300.patch
index 487867c..8eef982 100644
--- a/target/linux/brcm63xx/patches-3.18/560-board_963268gu_p300.patch
+++ b/target/linux/brcm63xx/patches-3.18/560-board_963268gu_p300.patch
@@ -1,6 +1,6 @@
--- 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
@@ -67,7 +67,7 @@
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
@@ -75,7 +75,7 @@
&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
diff --git a/target/linux/brcm63xx/patches-3.18/561-board_WAP-5813n.patch b/target/linux/brcm63xx/patches-3.18/561-board_WAP-5813n.patch
index e45da0a..27d925c 100644
--- a/target/linux/brcm63xx/patches-3.18/561-board_WAP-5813n.patch
+++ b/target/linux/brcm63xx/patches-3.18/561-board_WAP-5813n.patch
@@ -10,7 +10,7 @@
#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,
};
@@ -76,7 +76,7 @@
#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,
@@ -84,7 +84,7 @@
#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, },
diff --git a/target/linux/brcm63xx/patches-3.18/562-board_VR-3025u.patch b/target/linux/brcm63xx/patches-3.18/562-board_VR-3025u.patch
index c906494..1d23af1 100644
--- a/target/linux/brcm63xx/patches-3.18/562-board_VR-3025u.patch
+++ b/target/linux/brcm63xx/patches-3.18/562-board_VR-3025u.patch
@@ -1,6 +1,6 @@
--- 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,
};
@@ -61,7 +61,7 @@
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,
@@ -69,7 +69,7 @@
&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, },
diff --git a/target/linux/brcm63xx/patches-3.18/563-board_VR-3025un.patch b/target/linux/brcm63xx/patches-3.18/563-board_VR-3025un.patch
index bce8e56..c48ef64 100644
--- a/target/linux/brcm63xx/patches-3.18/563-board_VR-3025un.patch
+++ b/target/linux/brcm63xx/patches-3.18/563-board_VR-3025un.patch
@@ -1,6 +1,6 @@
--- 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
},
};
@@ -61,7 +61,7 @@
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,
@@ -69,7 +69,7 @@
&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, },
diff --git a/target/linux/brcm63xx/patches-3.18/564-board_P870HW-51a_v2.patch b/target/linux/brcm63xx/patches-3.18/564-board_P870HW-51a_v2.patch
index 5ba3ef8..bc2b115 100644
--- a/target/linux/brcm63xx/patches-3.18/564-board_P870HW-51a_v2.patch
+++ b/target/linux/brcm63xx/patches-3.18/564-board_P870HW-51a_v2.patch
@@ -1,6 +1,6 @@
--- 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 },
};
@@ -50,7 +50,7 @@
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,
@@ -58,7 +58,7 @@
&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, },
diff --git a/target/linux/brcm63xx/patches-3.18/565-board_hw520.patch b/target/linux/brcm63xx/patches-3.18/565-board_hw520.patch
index cb4b822..a10d33c 100644
--- a/target/linux/brcm63xx/patches-3.18/565-board_hw520.patch
+++ b/target/linux/brcm63xx/patches-3.18/565-board_hw520.patch
@@ -1,6 +1,6 @@
--- 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
},
};
@@ -38,7 +38,7 @@
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,
@@ -46,7 +46,7 @@
&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, },
diff --git a/target/linux/brcm63xx/patches-3.18/566-board_A4001N.patch b/target/linux/brcm63xx/patches-3.18/566-board_A4001N.patch
index 6d1935f..a9385ea 100644
--- a/target/linux/brcm63xx/patches-3.18/566-board_A4001N.patch
+++ b/target/linux/brcm63xx/patches-3.18/566-board_A4001N.patch
@@ -1,6 +1,6 @@
--- 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
},
};
@@ -51,7 +51,7 @@
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,
@@ -59,8 +59,8 @@
&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, },
diff --git a/target/linux/brcm63xx/patches-3.18/567-board_dsl-2751b_e1.patch b/target/linux/brcm63xx/patches-3.18/567-board_dsl-2751b_e1.patch
index 8dbd57f..fe7b544 100644
--- a/target/linux/brcm63xx/patches-3.18/567-board_dsl-2751b_e1.patch
+++ b/target/linux/brcm63xx/patches-3.18/567-board_dsl-2751b_e1.patch
@@ -1,6 +1,6 @@
--- 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
},
},
};
@@ -142,7 +142,7 @@
#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,
diff --git a/target/linux/brcm63xx/patches-3.18/568-board_DGND3700v1_3800B.patch b/target/linux/brcm63xx/patches-3.18/568-board_DGND3700v1_3800B.patch
index c8fb206..2eb6136 100644
--- a/target/linux/brcm63xx/patches-3.18/568-board_DGND3700v1_3800B.patch
+++ b/target/linux/brcm63xx/patches-3.18/568-board_DGND3700v1_3800B.patch
@@ -1,6 +1,6 @@
--- 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,
};
@@ -49,7 +49,7 @@
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,
@@ -57,7 +57,7 @@
&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, },
diff --git a/target/linux/brcm63xx/patches-3.18/569-board_homehub2a.patch b/target/linux/brcm63xx/patches-3.18/569-board_homehub2a.patch
index a24e6a0..0f05d4c 100644
--- a/target/linux/brcm63xx/patches-3.18/569-board_homehub2a.patch
+++ b/target/linux/brcm63xx/patches-3.18/569-board_homehub2a.patch
@@ -1,6 +1,6 @@
--- 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
},
};
@@ -33,7 +33,7 @@
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,
@@ -41,7 +41,7 @@
&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, },
diff --git a/target/linux/brcm63xx/profiles/broadcom.mk b/target/linux/brcm63xx/profiles/broadcom.mk
index 54eed76..8fb2159 100644
--- a/target/linux/brcm63xx/profiles/broadcom.mk
+++ b/target/linux/brcm63xx/profiles/broadcom.mk
@@ -5,6 +5,24 @@
# 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