diff options
| author | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-12-08 10:14:58 +0000 | 
|---|---|---|
| committer | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-12-08 10:14:58 +0000 | 
| commit | a3373ca948c4564d017793a9d324d300c7fb37a1 (patch) | |
| tree | 6c49e827c217a3e8dfe40abfe13b457c2a80e11f /target/linux/ramips/files/drivers/net | |
| parent | 1fcc0bf36cba5c000e875b759e27200ddb020091 (diff) | |
ramips: ramips_esw: move hardware initialization into a separate function
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24330 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/ramips/files/drivers/net')
| -rw-r--r-- | target/linux/ramips/files/drivers/net/ramips_esw.c | 22 | 
1 files changed, 14 insertions, 8 deletions
diff --git a/target/linux/ramips/files/drivers/net/ramips_esw.c b/target/linux/ramips/files/drivers/net/ramips_esw.c index e4c8ea3db..e8041b48d 100644 --- a/target/linux/ramips/files/drivers/net/ramips_esw.c +++ b/target/linux/ramips/files/drivers/net/ramips_esw.c @@ -75,17 +75,11 @@ out:  	return ret;  } -static int -rt305x_esw_init(void) +static void +rt305x_esw_hw_init(struct rt305x_esw *esw)  { -	struct rt305x_esw *esw;  	int i; -	esw = &rt305x_esw; -	esw->base = ioremap_nocache(RT305X_SWITCH_BASE, PAGE_SIZE); -	if(!esw->base) -		return -ENOMEM; -  	/* vodoo from original driver */  	ramips_esw_wr(esw, 0xC8A07850, 0x08);  	ramips_esw_wr(esw, 0x00000000, 0xe4); @@ -124,6 +118,18 @@ rt305x_esw_init(void)  	/* set default vlan */  	ramips_esw_wr(esw, 0x2001, 0x50);  	ramips_esw_wr(esw, 0x504f, 0x70); +} + +static int +rt305x_esw_init(void) +{ +	struct rt305x_esw *esw; + +	esw = &rt305x_esw; +	esw->base = ioremap_nocache(RT305X_SWITCH_BASE, PAGE_SIZE); +	if(!esw->base) +		return -ENOMEM; +	rt305x_esw_hw_init(esw);  	return 0;  }  | 
