[ar71xx] add dummy WMAC device
authorjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Tue, 30 Dec 2008 06:52:57 +0000 (06:52 +0000)
committerjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Tue, 30 Dec 2008 06:52:57 +0000 (06:52 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@13769 3c298f89-4303-0410-b956-a3cf2f4a3e73

target/linux/ar71xx/files-2.6.28/arch/mips/include/asm/mach-ar71xx/platform.h
target/linux/ar71xx/files/arch/mips/ar71xx/mach-ap83.c
target/linux/ar71xx/files/arch/mips/ar71xx/mach-tew-632brp.c
target/linux/ar71xx/files/arch/mips/ar71xx/platform.c
target/linux/ar71xx/files/include/asm-mips/mach-ar71xx/platform.h

index a82d621..20d83bb 100644 (file)
@@ -82,4 +82,6 @@ extern void ar71xx_add_device_uart(void) __init;
 
 extern void ar71xx_add_device_wdt(void) __init;
 
+extern void ar91xx_add_device_wmac(void) __init;
+
 #endif /* __ASM_MACH_AR71XX_PLATFORM_H */
index 45eace8..13fe719 100644 (file)
@@ -80,6 +80,8 @@ static void __init ap83_setup(void)
                                        ap83_gpio_buttons);
 
        ar71xx_add_device_usb();
+
+       ar91xx_add_device_wmac();
 }
 
 MIPS_MACHINE(AR71XX_MACH_AP83, "Atheros AP83", ap83_setup);
index ac0f6c1..01bab6c 100644 (file)
@@ -123,6 +123,8 @@ static void __init tew_632brp_setup(void)
        ar71xx_add_device_gpio_buttons(-1, TEW_632BRP_BUTTONS_POLL_INTERVAL,
                                        ARRAY_SIZE(tew_632brp_gpio_buttons),
                                        tew_632brp_gpio_buttons);
+
+       ar91xx_add_device_wmac();
 }
 
 MIPS_MACHINE(AR71XX_MACH_TEW_632BRP, "TRENDnet TEW-632BRP", tew_632brp_setup);
index 705f243..e4e9538 100644 (file)
@@ -592,3 +592,27 @@ void __init ar71xx_parse_mac_addr(char *mac_str)
                printk(KERN_DEBUG "ar71xx: failed to parse mac address "
                                "\"%s\"\n", mac_str);
 }
+
+static struct resource ar91xx_wmac_resources[] = {
+       {
+               .start  = AR91XX_WMAC_BASE,
+               .end    = AR91XX_WMAC_BASE + AR91XX_WMAC_SIZE - 1,
+               .flags  = IORESOURCE_MEM,
+       }, {
+               .start  = AR71XX_CPU_IRQ_WMAC,
+               .end    = AR71XX_CPU_IRQ_WMAC,
+               .flags  = IORESOURCE_IRQ,
+       },
+};
+
+static struct platform_device ar91xx_wmac_device = {
+       .name           = "ath9k",
+       .id             = -1,
+       .resource       = ar91xx_wmac_resources,
+       .num_resources  = ARRAY_SIZE(ar91xx_wmac_resources),
+};
+
+void __init ar91xx_add_device_wmac(void)
+{
+       platform_device_register(&ar91xx_wmac_device);
+}
index a82d621..20d83bb 100644 (file)
@@ -82,4 +82,6 @@ extern void ar71xx_add_device_uart(void) __init;
 
 extern void ar71xx_add_device_wdt(void) __init;
 
+extern void ar91xx_add_device_wmac(void) __init;
+
 #endif /* __ASM_MACH_AR71XX_PLATFORM_H */