summaryrefslogtreecommitdiffstats
path: root/target/linux
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux')
-rwxr-xr-xtarget/linux/brcm63xx/base-files/lib/brcm63xx.sh10
-rw-r--r--target/linux/brcm63xx/image/Makefile4
-rw-r--r--target/linux/brcm63xx/patches-2.6.35/430-board_gw6200_gw6000.patch129
3 files changed, 141 insertions, 2 deletions
diff --git a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
index 25f2ab47e..e2c563460 100755
--- a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
+++ b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
@@ -19,6 +19,16 @@ brcm63xx_detect() {
brcm63xx_has_reset_button="true"
ifname=eth1
;;
+ "bcm63xx/GW6000 "*)
+ brcm63xx_has_reset_button="true"
+ ifname=eth1
+ ;;
+ "bcm63xx/GW6200 "*)
+ status_led="line1"
+ status_led2="tel"
+ brcm63xx_has_reset_button="true"
+ ifname=eth1
+ ;;
"bcm63xx/96348GW-11 "*)
status_led="power"
brcm63xx_has_reset_button="true"
diff --git a/target/linux/brcm63xx/image/Makefile b/target/linux/brcm63xx/image/Makefile
index 3f532f0b1..25c9b36a4 100644
--- a/target/linux/brcm63xx/image/Makefile
+++ b/target/linux/brcm63xx/image/Makefile
@@ -146,9 +146,9 @@ define Image/Build
# RTA1025W_16 (numerous routers)
$(call Image/Build/CFE,$(1),RTA1025W_16,6348,RTA1025W_16,,--layoutver 5)
# Tecom GW6000
- $(call Image/Build/CFE,$(1),96348GW,6348,GW6000)
+ $(call Image/Build/CFEFIXUP,$(1),96348GW,6348,GW6000)
# Tecom GW6200
- $(call Image/Build/CFE,$(1),96348GW,6348,GW6200,$(shell printf '\x99'))
+ $(call Image/Build/CFEFIXUP,$(1),96348GW,6348,GW6200,$(shell printf '\x99'))
# Neufbox4
$(call Image/Build/CFE,$(1),96358VW,6358,NEUFBOX4,OpenWRT-$(REVISION))
# Comtrend 536, 5621
diff --git a/target/linux/brcm63xx/patches-2.6.35/430-board_gw6200_gw6000.patch b/target/linux/brcm63xx/patches-2.6.35/430-board_gw6200_gw6000.patch
new file mode 100644
index 000000000..2e2398eb8
--- /dev/null
+++ b/target/linux/brcm63xx/patches-2.6.35/430-board_gw6200_gw6000.patch
@@ -0,0 +1,129 @@
+--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
++++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
+@@ -432,6 +432,117 @@ static struct board_info __initdata boar
+ },
+ };
+
++static struct board_info __initdata board_gw6200 = {
++ .name = "GW6200",
++ .expected_cpu_id = 0x6348,
++
++ .has_uart0 = 1,
++ .has_enet0 = 1,
++ .has_enet1 = 1,
++ .has_pci = 1,
++
++ .enet0 = {
++ .has_phy = 1,
++ .use_internal_phy = 1,
++ },
++ .enet1 = {
++ .force_speed_100 = 1,
++ .force_duplex_full = 1,
++ },
++
++ .has_ohci0 = 1,
++
++ .has_dsp = 1,
++ .dsp = {
++ .gpio_rst = 8, /* FIXME: What is real GPIO here? */
++ .gpio_int = 34,
++ .ext_irq = 2,
++ .cs = 2,
++ },
++
++ .leds = {
++ {
++ .name = "line1",
++ .gpio = 4,
++ .active_low = 1,
++ },
++ {
++ .name = "line2",
++ .gpio = 5,
++ .active_low = 1,
++ },
++ {
++ .name = "line3",
++ .gpio = 6,
++ .active_low = 1,
++ },
++ {
++ .name = "tel",
++ .gpio = 7,
++ .active_low = 1,
++ },
++ {
++ .name = "ethernet",
++ .gpio = 35,
++ .active_low = 1,
++ },
++ },
++ .buttons = {
++ {
++ .desc = "reset",
++ .gpio = 36,
++ .active_low = 1,
++ .type = EV_KEY,
++ .code = KEY_RESTART,
++ .threshold = 3,
++ },
++ },
++};
++
++static struct board_info __initdata board_gw6000 = {
++ .name = "GW6000",
++ .expected_cpu_id = 0x6348,
++
++ .has_uart0 = 1,
++ .has_enet0 = 1,
++ .has_enet1 = 1,
++ .has_pci = 1,
++
++ .enet0 = {
++ .has_phy = 1,
++ .use_internal_phy = 1,
++ },
++ .enet1 = {
++ .force_speed_100 = 1,
++ .force_duplex_full = 1,
++ },
++
++ .has_ohci0 = 1,
++
++ .has_dsp = 1,
++ .dsp = {
++ .gpio_rst = 6,
++ .gpio_int = 34,
++ .ext_irq = 2,
++ .cs = 2,
++ },
++
++ /* GW6000 has no GPIO-controlled leds */
++
++ .buttons = {
++ {
++ .desc = "reset",
++ .gpio = 36,
++ .active_low = 1,
++ .type = EV_KEY,
++ .code = KEY_RESTART,
++ .threshold = 3,
++ },
++ },
++};
++
++
++
+ static struct board_info __initdata board_FAST2404 = {
+ .name = "F@ST2404",
+ .expected_cpu_id = 0x6348,
+@@ -1521,6 +1632,8 @@ static const struct board_info __initdat
+ #ifdef CONFIG_BCM63XX_CPU_6348
+ &board_96348r,
+ &board_96348gw,
++ &board_gw6000,
++ &board_gw6200,
+ &board_96348gw_10,
+ &board_96348gw_11,
+ &board_FAST2404,