diff options
author | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2013-12-16 10:28:42 +0000 |
---|---|---|
committer | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2013-12-16 10:28:42 +0000 |
commit | 81ff78cb8886e90f97a2676cf2c7d75c05620707 (patch) | |
tree | 6b77a3d9f0f84d816b830c1a98283004c315cc25 /target/linux/ar71xx/files | |
parent | 7e33c9dd023dbd3e78115bad6b4ed875a9633b34 (diff) |
ar71xx: rb2011: simplify setup code
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39095 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/ar71xx/files')
-rw-r--r-- | target/linux/ar71xx/files/arch/mips/ath79/mach-rb2011.c | 35 |
1 files changed, 19 insertions, 16 deletions
diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-rb2011.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-rb2011.c index 44a1aa79b2..c0c24a5d26 100644 --- a/target/linux/ar71xx/files/arch/mips/ath79/mach-rb2011.c +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-rb2011.c @@ -49,6 +49,10 @@ #define RB_ART_SIZE 0x10000 +#define RB2011_FLAG_SFP BIT(0) +#define RB2011_FLAG_USB BIT(1) +#define RB2011_FLAG_WLAN BIT(2) + static struct mtd_partition rb2011_spi_partitions[] = { { .name = "routerboot", @@ -230,7 +234,7 @@ static void __init rb2011_sfp_init(void) rb2011_ar8327_data.get_port_link = rb2011_get_port_link; } -static int __init rb2011_setup(void) +static int __init rb2011_setup(u32 flags) { const struct rb_info *info; @@ -269,26 +273,29 @@ static int __init rb2011_setup(void) ath79_register_eth(1); + if (flags & RB2011_FLAG_SFP) + rb2011_sfp_init(); + + if (flags & RB2011_FLAG_WLAN) + rb2011_wlan_init(); + + if (flags & RB2011_FLAG_USB) + ath79_register_usb(); + return 0; } static void __init rb2011l_setup(void) { - rb2011_setup(); + rb2011_setup(0); } - MIPS_MACHINE(ATH79_MACH_RB_2011L, "2011L", "MikroTik RouterBOARD 2011L", rb2011l_setup); static void __init rb2011us_setup(void) { - if (rb2011_setup()) - return; - - rb2011_sfp_init(); - - ath79_register_usb(); + rb2011_setup(RB2011_FLAG_SFP | RB2011_FLAG_USB); } MIPS_MACHINE(ATH79_MACH_RB_2011US, "2011US", "MikroTik RouterBOARD 2011UAS", @@ -296,13 +303,9 @@ MIPS_MACHINE(ATH79_MACH_RB_2011US, "2011US", "MikroTik RouterBOARD 2011UAS", static void __init rb2011g_setup(void) { - if (rb2011_setup()) - return; - - rb2011_sfp_init(); - rb2011_wlan_init(); - - ath79_register_usb(); + rb2011_setup(RB2011_FLAG_SFP | + RB2011_FLAG_USB | + RB2011_FLAG_WLAN); } MIPS_MACHINE(ATH79_MACH_RB_2011G, "2011G", "MikroTik RouterBOARD 2011UAS-2HnD", |