diff options
| -rw-r--r-- | package/broadcom-diag/Makefile | 2 | ||||
| -rw-r--r-- | package/broadcom-diag/src/diag.c | 20 | ||||
| -rwxr-xr-x | package/nvram/files/nvram.init | 8 | ||||
| -rwxr-xr-x | target/linux/brcm-2.4/base-files/etc/init.d/netconfig | 6 | 
4 files changed, 35 insertions, 1 deletions
| diff --git a/package/broadcom-diag/Makefile b/package/broadcom-diag/Makefile index deffaf6d2..6c55dc3fe 100644 --- a/package/broadcom-diag/Makefile +++ b/package/broadcom-diag/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk  include $(INCLUDE_DIR)/kernel.mk  PKG_NAME:=broadcom-diag -PKG_RELEASE:=5 +PKG_RELEASE:=6  include $(INCLUDE_DIR)/package.mk diff --git a/package/broadcom-diag/src/diag.c b/package/broadcom-diag/src/diag.c index fefd036c7..8f296248b 100644 --- a/package/broadcom-diag/src/diag.c +++ b/package/broadcom-diag/src/diag.c @@ -138,6 +138,9 @@ enum {  	/* Askey */  	RT210W, + +	/* OvisLink */ +	WL1600GL,  };  static void __init bcm4780_init(void) { @@ -852,6 +855,19 @@ static struct platform_t __initdata platforms[] = {  			{ .name = "power",	.gpio = 1 << 5, .polarity = REVERSE },  		},  	}, +	[WL1600GL] = { +		.name		= "OvisLink WL-1600GL", +		.buttons	= { +			{ .name = "reset",	.gpio = 1 << 3 }, +			{ .name = "ses",	.gpio = 1 << 4 }, +		}, +		.leds		= { +			{ .name = "power",	.gpio = 1 << 5, .polarity = REVERSE }, +			{ .name = "wps",	.gpio = 1 << 2, .polarity = REVERSE }, +			{ .name = "wlan",	.gpio = 1 << 1, .polarity = REVERSE }, +			{ .name = "connected",	.gpio = 1 << 0, .polarity = REVERSE }, +		}, +	},  };  static struct platform_t __init *platform_detect(void) @@ -966,6 +982,10 @@ static struct platform_t __init *platform_detect(void)  		if (!strcmp(boardnum, "1024") && !strcmp(boardtype, "0x0446"))  			return &platforms[WAP54GV2]; +		if (!strcmp(boardnum, "8") && !strcmp(boardtype, "0x048e")) +			return &platforms[WL1600GL]; + +  		if (!strcmp(boardnum, "44") || !strcmp(boardnum, "44\r")) {  			if (!strcmp(boardtype,"0x0101") || !strcmp(boardtype, "0x0101\r"))  				return &platforms[TM2300V2]; /* Dell TrueMobile 2300 v2 */ diff --git a/package/nvram/files/nvram.init b/package/nvram/files/nvram.init index 75d712b59..9eae17fd8 100755 --- a/package/nvram/files/nvram.init +++ b/package/nvram/files/nvram.init @@ -74,5 +74,13 @@ start() {  		nvram set il0macaddr=$(nvram get et0macaddr|  		awk '{OFS=FS=":";for(x=7,y=2;--x;){$x=sprintf("%02x",(y+="0x"$x)%256);y/=256}print}')  	} + +	[ "$(nvram get et0macaddr)" = "00:90:4c:c0:00:08" ] && { +		# OvisLink WL-1600GL mac workaround +		nvram set et0macaddr=$(hexdump -n 6 -s 130976 -e '5/1 "%02x:" "%02x" ' /dev/mtd/0) +		nvram set il0macaddr=$(nvram get et0macaddr| +		awk '{OFS=FS=":";for(x=7,y=2;--x;){$x=sprintf("%02x",(y+="0x"$x)%256);y/=256}print}') +	} +  	[ "$COMMIT" = "1" ] && nvram commit  } 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 d63f17b12..d1e45e5bb 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 @@ -207,6 +207,12 @@ start() {  			c["vlan0ports"] = "0 1 2 3 4 5u"  			c["vlan1ports"] = ""  		} +		if (model == "OvisLink WL-1600GL") { +			c["lan_ifname"] = "eth0.0" +			c["wan_ifname"] = "eth0.1" +			c["vlan0ports"] = "0 1 2 3 5*" +			c["vlan1ports"] = "4 5" +		}  		if (c["vlan0ports"] || c["vlan1ports"]) {  			print "#### VLAN configuration " | 
