From f5fba5bc3ccf493289396deaa64a7ce7385d8590 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Sun, 22 Feb 2009 18:45:39 +0000 Subject: [PATCH] Asus WL-330gE Support Here is support for the compact Asus WL-330gE. It uses that all-in-one 5354 Broadcom chip that's also in the WL-520gU, so I assume USB support can be soldered on. I've yet to open up the device, though. Initial flashing is done through the CFE failsafe mode like on other Asus devices, where you boot holding the reset button, the power LED flashes, and you tftp an image. Signed-off-by: David Cooper SVN-Revision: 14624 --- package/broadcom-diag/src/diag.c | 12 +++++++ .../brcm-2.4/base-files/etc/init.d/netconfig | 36 +++++++++++++------ 2 files changed, 37 insertions(+), 11 deletions(-) diff --git a/package/broadcom-diag/src/diag.c b/package/broadcom-diag/src/diag.c index e47f28101b80..341880a70ea2 100644 --- a/package/broadcom-diag/src/diag.c +++ b/package/broadcom-diag/src/diag.c @@ -68,6 +68,7 @@ enum { WLHDD, WL300G, WL320GE, + WL330GE, WL500G, WL500GD, WL500GP, @@ -307,6 +308,15 @@ static struct platform_t __initdata platforms[] = { { .name = "link", .gpio = 1 << 11, .polarity = REVERSE }, }, }, + [WL330GE] = { + .name = "ASUS WL-330gE", + .buttons = { + { .name = "reset", .gpio = 1 << 2 }, + }, + .leds = { + { .name = "power", .gpio = 1 << 0, .polarity = REVERSE }, + }, + }, [WL500G] = { .name = "ASUS WL-500g", .buttons = { @@ -764,6 +774,8 @@ static struct platform_t __init *platform_detect(void) return &platforms[WL520GC]; if (startswith(buf,"WL520GU-")) /* WL520GU-* */ return &platforms[WL520GU]; + if (startswith(buf,"WL330GE-")) /* WL330GE-* */ + return &platforms[WL330GE]; } /* Based on "ModelId" */ diff --git a/target/linux/brcm-2.4/base-files/etc/init.d/netconfig b/target/linux/brcm-2.4/base-files/etc/init.d/netconfig index 44e2de25c93c..a53209e06a26 100755 --- a/target/linux/brcm-2.4/base-files/etc/init.d/netconfig +++ b/target/linux/brcm-2.4/base-files/etc/init.d/netconfig @@ -57,6 +57,12 @@ start() { c["wan_ifname"] = "" c["lan_ifname"] = "eth1" } + if (model == "ASUS WL-330gE") { + c["wan_ifname"] = "" + c["lan_ifname"] = "eth0" + c["vlan0ports"] = "" + c["vlan1ports"] = "" + } if (model == "ASUS WL-500g") { c["wan_ifname"] = "eth1" c["lan_ifname"] = "eth0" @@ -149,12 +155,14 @@ start() { c["vlan1ports"] = "" } - print "#### VLAN configuration " - print "config switch eth0" - p("vlan0", "vlan0ports") - p("vlan1", "vlan1ports") - print "" - print "" + if (c["vlan0ports"] || c["vlan1ports"]) { + print "#### VLAN configuration " + print "config switch eth0" + p("vlan0", "vlan0ports") + p("vlan1", "vlan1ports") + print "" + print "" + } print "#### Loopback configuration" print "config interface loopback" print " option ifname \"lo\"" @@ -173,10 +181,16 @@ start() { print " option netmask 255.255.255.0" print "" print "" - print "#### WAN configuration" - print "config interface wan" - p("ifname", "wan_ifname") - p("macaddr", "wan_macaddr") - print " option proto dhcp" + if (c["wan_ifname"]) { + print "#### WAN configuration" + print "config interface wan" + p("ifname", "wan_ifname") + p("macaddr", "wan_macaddr") + print " option proto dhcp" + } else { + print "#### WAN configuration (disabled)" + print "#config interface wan" + print "# option proto dhcp" + } }' > /etc/config/network } -- 2.30.2