fix strange LED behavior with Netgear WGT634U (#3552)
authorFlorian Fainelli <florian@openwrt.org>
Mon, 20 Apr 2009 10:27:46 +0000 (10:27 +0000)
committerFlorian Fainelli <florian@openwrt.org>
Mon, 20 Apr 2009 10:27:46 +0000 (10:27 +0000)
SVN-Revision: 15290

package/switch/Makefile
package/switch/src/switch-robo.c

index 1a5f46f3f42a5f234802f24cb2ddad83a7af8240..a9b881c40ea180febbbae8639096cfd9537f2b14 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=kmod-switch
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 include $(INCLUDE_DIR)/package.mk
 
index 5733d5024e4069e43b20164af56276425f64fe93..46abc94e901f61d926c6c1b8efeab705b3920e59 100644 (file)
@@ -68,6 +68,9 @@
 #define bool int
 #endif
 
+
+extern char *nvram_get(const char *name);
+
 /* Data structure for a Roboswitch device. */
 struct robo_switch {
        char *device;                   /* The device name string (ethX) */
@@ -271,8 +274,9 @@ static int robo_switch_enable(void)
                        robo_write16(ROBO_CTRL_PAGE, i, 0);
        }
 
-       /* WAN port LED */
-       robo_write16(ROBO_CTRL_PAGE, 0x16, 0x1F);
+       /* WAN port LED, except for Netgear WGT634U */
+       if (strcmp(nvram_get("nvram_type"), "cfe"))
+               robo_write16(ROBO_CTRL_PAGE, 0x16, 0x1F);
 
        return 0;
 }