Browse Source

fix strange LED behavior with Netgear WGT634U (#3552)

SVN-Revision: 15290
Florian Fainelli 17 years ago
parent
commit
6f80c9cc7c
2 changed files with 7 additions and 3 deletions
  1. 1 1
      package/switch/Makefile
  2. 6 2
      package/switch/src/switch-robo.c

+ 1 - 1
package/switch/Makefile

@@ -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
 

+ 6 - 2
package/switch/src/switch-robo.c

@@ -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;
 }