diff options
author | Daniel Dickinson <daniel@cshore.neomailbox.net> | 2010-12-07 15:15:54 +0000 |
---|---|---|
committer | Daniel Dickinson <daniel@cshore.neomailbox.net> | 2010-12-07 15:15:54 +0000 |
commit | 194d1e24c013283ea5149af702ebe04626f7f862 (patch) | |
tree | a504c3e8547774a77c6943f6cc9588dee2ab86db | |
parent | efe3905b6cf2532074fd41f958b9211f57a1bd4a (diff) | |
download | upstream-194d1e24c013283ea5149af702ebe04626f7f862.tar.gz upstream-194d1e24c013283ea5149af702ebe04626f7f862.tar.bz2 upstream-194d1e24c013283ea5149af702ebe04626f7f862.zip |
[brcm63xx] boards: Added GW6x00 fixups and GPIOs. The GW6200 GPIOs are different than the reference design 96348GW so we use fixup to allow us to define the correct ones, also the GW6000 has no GPIO-controlled leds.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24305 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rwxr-xr-x | target/linux/brcm63xx/base-files/lib/brcm63xx.sh | 10 | ||||
-rw-r--r-- | target/linux/brcm63xx/image/Makefile | 4 | ||||
-rw-r--r-- | target/linux/brcm63xx/patches-2.6.35/430-board_gw6200_gw6000.patch | 129 |
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 25f2ab47e6..e2c563460a 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 3f532f0b1d..25c9b36a49 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 0000000000..2e2398eb8e --- /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, |