Asus WL-330gE Support
authorFelix Fietkau <nbd@openwrt.org>
Sun, 22 Feb 2009 18:45:39 +0000 (18:45 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Sun, 22 Feb 2009 18:45:39 +0000 (18:45 +0000)
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

package/broadcom-diag/src/diag.c
target/linux/brcm-2.4/base-files/etc/init.d/netconfig

index e47f281..341880a 100644 (file)
@@ -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" */
index 44e2de2..a53209e 100755 (executable)
@@ -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
 }