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 <dave@kupesoft.com>

SVN-Revision: 14624
This commit is contained in:
Felix Fietkau 2009-02-22 18:45:39 +00:00
parent 610e45ae5c
commit f5fba5bc3c
2 changed files with 37 additions and 11 deletions

View File

@ -68,6 +68,7 @@ enum {
WLHDD, WLHDD,
WL300G, WL300G,
WL320GE, WL320GE,
WL330GE,
WL500G, WL500G,
WL500GD, WL500GD,
WL500GP, WL500GP,
@ -307,6 +308,15 @@ static struct platform_t __initdata platforms[] = {
{ .name = "link", .gpio = 1 << 11, .polarity = REVERSE }, { .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] = { [WL500G] = {
.name = "ASUS WL-500g", .name = "ASUS WL-500g",
.buttons = { .buttons = {
@ -764,6 +774,8 @@ static struct platform_t __init *platform_detect(void)
return &platforms[WL520GC]; return &platforms[WL520GC];
if (startswith(buf,"WL520GU-")) /* WL520GU-* */ if (startswith(buf,"WL520GU-")) /* WL520GU-* */
return &platforms[WL520GU]; return &platforms[WL520GU];
if (startswith(buf,"WL330GE-")) /* WL330GE-* */
return &platforms[WL330GE];
} }
/* Based on "ModelId" */ /* Based on "ModelId" */

View File

@ -57,6 +57,12 @@ start() {
c["wan_ifname"] = "" c["wan_ifname"] = ""
c["lan_ifname"] = "eth1" 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") { if (model == "ASUS WL-500g") {
c["wan_ifname"] = "eth1" c["wan_ifname"] = "eth1"
c["lan_ifname"] = "eth0" c["lan_ifname"] = "eth0"
@ -149,12 +155,14 @@ start() {
c["vlan1ports"] = "" c["vlan1ports"] = ""
} }
print "#### VLAN configuration " if (c["vlan0ports"] || c["vlan1ports"]) {
print "config switch eth0" print "#### VLAN configuration "
p("vlan0", "vlan0ports") print "config switch eth0"
p("vlan1", "vlan1ports") p("vlan0", "vlan0ports")
print "" p("vlan1", "vlan1ports")
print "" print ""
print ""
}
print "#### Loopback configuration" print "#### Loopback configuration"
print "config interface loopback" print "config interface loopback"
print " option ifname \"lo\"" print " option ifname \"lo\""
@ -173,10 +181,16 @@ start() {
print " option netmask 255.255.255.0" print " option netmask 255.255.255.0"
print "" print ""
print "" print ""
print "#### WAN configuration" if (c["wan_ifname"]) {
print "config interface wan" print "#### WAN configuration"
p("ifname", "wan_ifname") print "config interface wan"
p("macaddr", "wan_macaddr") p("ifname", "wan_ifname")
print " option proto dhcp" p("macaddr", "wan_macaddr")
print " option proto dhcp"
} else {
print "#### WAN configuration (disabled)"
print "#config interface wan"
print "# option proto dhcp"
}
}' > /etc/config/network }' > /etc/config/network
} }