diff options
author | mbm <mbm@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2005-04-18 08:51:29 +0000 |
---|---|---|
committer | mbm <mbm@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2005-04-18 08:51:29 +0000 |
commit | 28cfd9e40c98c640edf9467604e5b187bddaa447 (patch) | |
tree | e1c5beeb639dbbfad2f0c36b2b7e3160d99d9544 /package | |
parent | 6da495256c143c5eb1d3fd4797f4c5feb408d23c (diff) |
base reset polarity off initial readings
git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@672 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package')
-rw-r--r-- | package/linux/kernel-source/drivers/net/diag/diag_led.c | 25 |
1 files changed, 12 insertions, 13 deletions
diff --git a/package/linux/kernel-source/drivers/net/diag/diag_led.c b/package/linux/kernel-source/drivers/net/diag/diag_led.c index 9945dbe00..1c1a759e2 100644 --- a/package/linux/kernel-source/drivers/net/diag/diag_led.c +++ b/package/linux/kernel-source/drivers/net/diag/diag_led.c @@ -27,6 +27,7 @@ * 2004/08/26 asus & buffalo support added * 2005/03/14 asus wl-500g deluxe and buffalo v2 support added * 2005/04/13 added licensing informations + * 2005/04/18 base reset polarity off initial readings */ #include <linux/module.h> @@ -181,12 +182,10 @@ static int __init diag_init() set_diag=v1_set_diag; set_dmz=v1_set_dmz; reset_gpio=(1<<6); - reset_polarity=0; } else if (!strcmp(buf,"asusX")) { //asus wl-500g //no leds reset_gpio=(1<<6); - reset_polarity=1; } } else if (!strcmp(buf,"bcm94710ap")) { buf=nvram_get("boardnum")?:""; @@ -194,44 +193,44 @@ static int __init diag_init() // buffalo set_dmz=v2_set_dmz; reset_gpio=(1<<4); - reset_polarity=1; } else if (!strcmp(buf,"44")) { //dell truemobile set_dmz=v2_set_dmz; reset_gpio=(1<<0); - reset_polarity=0; } } } else { - board_type=2; - set_diag=v2_set_diag; - set_dmz=v2_set_dmz; - reset_gpio=(1<<6); - reset_polarity=0; buf=nvram_get("boardnum")?:""; + if (!strcmp(buf,"42")) { + //linksys + set_diag=v2_set_diag; + set_dmz=v2_set_dmz; + reset_gpio=(1<<6); + } if (!strcmp(buf,"44")) { //motorola set_diag=ignore; set_dmz=ignore; reset_gpio=(1<<5); - reset_polarity=0; } if (!strcmp(buf,"00")) { //buffalo set_diag=ignore; set_dmz=ignore; reset_gpio=(1<<7); - reset_polarity=1; } if (!strcmp(buf,"45")) { //wl-500g deluxe set_diag=ignore; set_dmz=ignore; reset_gpio=(1<<6); - reset_polarity=1; } } - printk(KERN_INFO "using v%d hardware\n",board_type); + + + sb_gpiocontrol(sbh,reset_gpio,reset_gpio); + sb_gpioouten(sbh,reset_gpio,0); + reset_polarity=!(sb_gpioin(sbh)&reset_gpio); diag_sysctl_header = register_sysctl_table(sys_diag, 0); diag_change(); |