summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>2011-05-11 13:34:14 +0000
committerflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>2011-05-11 13:34:14 +0000
commit4b838055c4a99f7aacd762722b346620b7bb03e1 (patch)
treec2055d736b6231dd48cd79791c57355f61b8bce4
parentc2fec0edf0e9ab178e3d26dfa09f17084c55fdee (diff)
bcm63xx: Add support for the T-Home Speedport W 303V
Add the required board definition, default config and image generation for the T-Home Speedport W 303V Typ B. Signed-off-by: Jonas Gorski <jonas.gorski+openwrt@gmail.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@26878 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--target/linux/brcm63xx/base-files/etc/defconfig/96358-502V/network14
-rwxr-xr-xtarget/linux/brcm63xx/base-files/lib/brcm63xx.sh5
-rw-r--r--target/linux/brcm63xx/image/Makefile18
-rw-r--r--target/linux/brcm63xx/patches-2.6.37/453-board_spw303v.patch83
4 files changed, 120 insertions, 0 deletions
diff --git a/target/linux/brcm63xx/base-files/etc/defconfig/96358-502V/network b/target/linux/brcm63xx/base-files/etc/defconfig/96358-502V/network
new file mode 100644
index 000000000..a35fd2ef9
--- /dev/null
+++ b/target/linux/brcm63xx/base-files/etc/defconfig/96358-502V/network
@@ -0,0 +1,14 @@
+# Copyright (C) 2006 OpenWrt.org
+
+config interface loopback
+ option ifname lo
+ option proto static
+ option ipaddr 127.0.0.1
+ option netmask 255.0.0.0
+
+config interface lan
+ option ifname eth0
+ option type bridge
+ option proto static
+ option ipaddr 192.168.1.1
+ option netmask 255.255.255.0
diff --git a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
index b18386e0d..2c62928a5 100755
--- a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
+++ b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
@@ -49,6 +49,11 @@ brcm63xx_detect() {
brcm63xx_has_reset_button="true"
ifname=eth0
;;
+ "bcm63xx/96358-502V "*)
+ status_led="spw303v:green:power+adsl"
+ brcm63xx_has_reset_button="true"
+ ifname=eth0
+ ;;
"bcm63xx/CPVA642 "* )
status_led="power:green"
brcm63xx_has_reset_button="true"
diff --git a/target/linux/brcm63xx/image/Makefile b/target/linux/brcm63xx/image/Makefile
index 144f5559e..bf292de7e 100644
--- a/target/linux/brcm63xx/image/Makefile
+++ b/target/linux/brcm63xx/image/Makefile
@@ -87,6 +87,21 @@ define Image/Build/RedBoot
dd if=$(KDIR)/vmlinux.bin.gz of=$(BIN_DIR)/openwrt-$(1)-vmlinux.gz bs=65536 conv=sync
endef
+define Image/Build/SPW303V
+ # Generate the tagged image
+ $(STAGING_DIR_HOST)/bin/imagetag -i $(KDIR)/vmlinux.lzma.cfe -f $(KDIR)/root.$(1) \
+ --output $(BIN_DIR)/openwrt-$(4)-$(1)-cfe.bin.tmp \
+ --boardid $(2) --chipid $(3) --entry $(KERNEL_ENTRY) \
+ --load-addr $(LOADADDR) --rsa-signature "$(5)" \
+ $(6) $(7) $(8) $(9)
+ # Fix up header
+ $(STAGING_DIR_HOST)/bin/spw303v -i $(BIN_DIR)/openwrt-$(4)-$(1)-cfe.bin.tmp \
+ -o $(BIN_DIR)/openwrt-$(4)-$(1)-cfe-sysupgrade.bin
+ $(STAGING_DIR_HOST)/bin/xorimage -i $(BIN_DIR)/openwrt-$(4)-$(1)-cfe-sysupgrade.bin \
+ -o $(BIN_DIR)/openwrt-$(4)-$(1)-cfe-factory.bin
+ rm -f $(BIN_DIR)/openwrt-$(4)-$(1)-cfe.bin.tmp
+endef
+
define Image/Build/CFEOLD
$(TOPDIR)/scripts/brcmImage.pl -t -p \
-b $(2) -c $(3) \
@@ -209,6 +224,9 @@ define Image/Build
#HW553
$(call Image/Build/CFEHW553,$(1),HW553,6358,0x20000,HW553)
+
+ # T-Com Speedport W 303V Typ B
+ $(call Image/Build/SPW303V,$(1),96358-502V,6358,SPW303V)
endef
$(eval $(call BuildImage))
diff --git a/target/linux/brcm63xx/patches-2.6.37/453-board_spw303v.patch b/target/linux/brcm63xx/patches-2.6.37/453-board_spw303v.patch
new file mode 100644
index 000000000..8e97fcf00
--- /dev/null
+++ b/target/linux/brcm63xx/patches-2.6.37/453-board_spw303v.patch
@@ -0,0 +1,83 @@
+--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
++++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
+@@ -1728,6 +1728,72 @@ static struct board_info __initdata boar
+ .spis = nb4_spi_devices,
+ .num_spis = ARRAY_SIZE(nb4_spi_devices),
+ };
++
++ /* T-Home Speedport W 303V Typ B */
++static struct board_info __initdata board_spw303v = {
++ .name = "96358-502V",
++ .expected_cpu_id = 0x6358,
++
++ .has_uart0 = 1,
++ .has_enet0 = 1,
++ .has_pci = 1,
++
++ .enet0 = {
++ .has_phy = 1,
++ .use_internal_phy = 1,
++ },
++
++ .leds = {
++ {
++ .name = "spw303v:green:power+adsl",
++ .gpio = 22,
++ .active_low = 1,
++ },
++ {
++ .name = "spw303v:red:power+adsl",
++ .gpio = 2,
++ .active_low = 1,
++ },
++ {
++ .name = "spw303v:green:ppp",
++ .gpio = 5,
++ .active_low = 1,
++ },
++ {
++ .name = "spw303v:green:ses",
++ .gpio = 0,
++ .active_low = 1,
++ },
++ {
++ .name = "spw303v:green:voip",
++ .gpio = 27,
++ .active_low = 1,
++ },
++ {
++ .name = "spw303v:green:pots",
++ .gpio = 31,
++ .active_low = 1,
++ },
++ },
++
++ .buttons = {
++ {
++ .desc = "reset",
++ .gpio = 11,
++ .type = EV_KEY,
++ .code = KEY_RESTART,
++ .threshold = 3,
++ },
++ {
++ .desc = "ses",
++ .gpio = 37,
++ .active_low = 1,
++ .type = EV_KEY,
++ .code = KEY_WPS_BUTTON,
++ .threshold = 3,
++ },
++ }
++};
+ #endif
+
+ static struct board_info __initdata board_HW553 = {
+@@ -1845,6 +1911,7 @@ static const struct board_info __initdat
+ &board_nb4_fxc_r1,
+ &board_nb4_fxc_r2,
+ &board_HW553,
++ &board_spw303v,
+ #endif
+ };
+