diff options
author | Gabor Juhos <juhosg@openwrt.org> | 2010-12-08 10:14:58 +0000 |
---|---|---|
committer | Gabor Juhos <juhosg@openwrt.org> | 2010-12-08 10:14:58 +0000 |
commit | a0e968135aff665d2bf93388bd8e30ac22b607a5 (patch) | |
tree | 6c49e827c217a3e8dfe40abfe13b457c2a80e11f /target/linux/ramips/files/drivers/net | |
parent | cf67d0b29a800a8435c8a2d1b640ae98e4fa238f (diff) | |
download | upstream-a0e968135aff665d2bf93388bd8e30ac22b607a5.tar.gz upstream-a0e968135aff665d2bf93388bd8e30ac22b607a5.tar.bz2 upstream-a0e968135aff665d2bf93388bd8e30ac22b607a5.zip |
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 e4c8ea3dbf..e8041b48df 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; } |