ar71xx: routerboot: export extended wlan data via sysfs
[openwrt.git] / target / linux / ar71xx / files / arch / mips / ath79 / mach-dir-615-c1.c
index b15fc68..e55a43f 100644 (file)
@@ -9,9 +9,6 @@
  *  by the Free Software Foundation.
  */
 
-#include <linux/mtd/mtd.h>
-#include <linux/mtd/partitions.h>
-
 #include <asm/mach-ath79/ath79.h>
 
 #include "dev-eth.h"
 #define DIR_615C1_CONFIG_ADDR          0x1f020000
 #define DIR_615C1_CONFIG_SIZE          0x10000
 
-static struct mtd_partition dir_615c1_partitions[] = {
-       {
-               .name           = "u-boot",
-               .offset         = 0,
-               .size           = 0x020000,
-               .mask_flags     = MTD_WRITEABLE,
-       }, {
-               .name           = "config",
-               .offset         = 0x020000,
-               .size           = 0x010000,
-       }, {
-               .name           = "kernel",
-               .offset         = 0x030000,
-               .size           = 0x0e0000,
-       }, {
-               .name           = "rootfs",
-               .offset         = 0x110000,
-               .size           = 0x2e0000,
-       }, {
-               .name           = "art",
-               .offset         = 0x3f0000,
-               .size           = 0x010000,
-               .mask_flags     = MTD_WRITEABLE,
-       }, {
-               .name           = "firmware",
-               .offset         = 0x030000,
-               .size           = 0x3c0000,
-       }
-};
-
-static struct flash_platform_data dir_615c1_flash_data = {
-       .parts          = dir_615c1_partitions,
-       .nr_parts       = ARRAY_SIZE(dir_615c1_partitions),
-};
+#define DIR_615C1_WLAN_MAC_ADDR                0x1f3fffb4
 
 static struct gpio_led dir_615c1_leds_gpio[] __initdata = {
        {
@@ -134,16 +98,16 @@ static void __init dir_615c1_setup(void)
 {
        const char *config = (char *) KSEG1ADDR(DIR_615C1_CONFIG_ADDR);
        u8 *eeprom = (u8 *) KSEG1ADDR(0x1fff1000);
-       u8 mac[6];
-       u8 *wlan_mac = NULL;
+       u8 mac[ETH_ALEN], wlan_mac[ETH_ALEN];
 
        if (ath79_nvram_parse_mac_addr(config, DIR_615C1_CONFIG_SIZE,
                                       "lan_mac=", mac) == 0) {
                ath79_init_mac(ath79_eth0_data.mac_addr, mac, 0);
                ath79_init_mac(ath79_eth1_data.mac_addr, mac, 1);
-               wlan_mac = mac;
        }
 
+       ath79_parse_ascii_mac((char *) KSEG1ADDR(DIR_615C1_WLAN_MAC_ADDR), wlan_mac);
+
        ath79_register_mdio(0, DIR_615C1_MDIO_MASK);
 
        ath79_eth0_data.phy_if_mode = PHY_INTERFACE_MODE_RMII;
@@ -155,7 +119,7 @@ static void __init dir_615c1_setup(void)
        ath79_register_eth(0);
        ath79_register_eth(1);
 
-       ath79_register_m25p80(&dir_615c1_flash_data);
+       ath79_register_m25p80(NULL);
 
        ath79_register_leds_gpio(-1, ARRAY_SIZE(dir_615c1_leds_gpio),
                                 dir_615c1_leds_gpio);