X-Git-Url: http://git.ozo.com/?a=blobdiff_plain;f=target%2Flinux%2Far71xx%2Ffiles%2Farch%2Fmips%2Far71xx%2Fmach-mzk-w04nu.c;h=63fbeb855987ae45d06126f9280601da7cf6f85c;hb=f84b320e3395fe1eb4a113d6d4f74c476db62a9f;hp=a3d71f6242726d2052bfe375b1a6b271b2a8855a;hpb=1bb20685418e882074c97230a76eeb8835d9288f;p=openwrt-10.03%2F.git diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-mzk-w04nu.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-mzk-w04nu.c index a3d71f624..63fbeb855 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-mzk-w04nu.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-mzk-w04nu.c @@ -8,19 +8,18 @@ * by the Free Software Foundation. */ -#include #include #include -#include -#include -#include #include +#include "machtype.h" #include "devices.h" #include "dev-ar913x-wmac.h" #include "dev-gpio-buttons.h" #include "dev-leds-gpio.h" +#include "dev-m25p80.h" +#include "dev-usb.h" #define MZK_W04NU_GPIO_LED_USB 0 #define MZK_W04NU_GPIO_LED_STATUS 1 @@ -62,7 +61,7 @@ static struct mtd_partition mzk_w04nu_partitions[] = { } , { .name = "firmware", .offset = 0x050000, - .size = 0x770000, + .size = 0x790000, } }; #endif /* CONFIG_MTD_PARTITIONS */ @@ -74,16 +73,6 @@ static struct flash_platform_data mzk_w04nu_flash_data = { #endif }; -static struct spi_board_info mzk_w04nu_spi_info[] = { - { - .bus_num = 0, - .chip_select = 0, - .max_speed_hz = 25000000, - .modalias = "m25p80", - .platform_data = &mzk_w04nu_flash_data, - } -}; - static struct gpio_led mzk_w04nu_leds_gpio[] __initdata = { { .name = "mzk-w04nu:green:status", @@ -117,48 +106,49 @@ static struct gpio_button mzk_w04nu_gpio_buttons[] __initdata = { .desc = "reset", .type = EV_KEY, .code = BTN_0, - .threshold = 5, + .threshold = 3, .gpio = MZK_W04NU_GPIO_BTN_RESET, .active_low = 1, }, { .desc = "wps", .type = EV_KEY, .code = BTN_1, - .threshold = 5, + .threshold = 3, .gpio = MZK_W04NU_GPIO_BTN_WPS, .active_low = 1, }, { .desc = "aprouter", .type = EV_KEY, .code = BTN_2, - .threshold = 5, + .threshold = 3, .gpio = MZK_W04NU_GPIO_BTN_APROUTER, .active_low = 0, } }; +#define MZK_W04NU_WAN_PHYMASK BIT(4) +#define MZK_W04NU_MDIO_MASK (~MZK_W04NU_WAN_PHYMASK) + static void __init mzk_w04nu_setup(void) { - u8 *mac = (u8 *) KSEG1ADDR(0x1fff1000); + u8 *eeprom = (u8 *) KSEG1ADDR(0x1fff1000); - ar71xx_set_mac_base(mac); + ar71xx_set_mac_base(eeprom); - ar71xx_add_device_mdio(0x0); + ar71xx_add_device_mdio(MZK_W04NU_MDIO_MASK); ar71xx_eth0_data.phy_if_mode = PHY_INTERFACE_MODE_RMII; - ar71xx_eth0_data.phy_mask = 0xf; ar71xx_eth0_data.speed = SPEED_100; ar71xx_eth0_data.duplex = DUPLEX_FULL; ar71xx_eth0_data.has_ar8216 = 1; ar71xx_eth1_data.phy_if_mode = PHY_INTERFACE_MODE_RMII; - ar71xx_eth1_data.phy_mask = 0x10; + ar71xx_eth1_data.phy_mask = MZK_W04NU_WAN_PHYMASK; ar71xx_add_device_eth(0); ar71xx_add_device_eth(1); - ar71xx_add_device_spi(NULL, mzk_w04nu_spi_info, - ARRAY_SIZE(mzk_w04nu_spi_info)); + ar71xx_add_device_m25p80(&mzk_w04nu_flash_data); ar71xx_add_device_leds_gpio(-1, ARRAY_SIZE(mzk_w04nu_leds_gpio), mzk_w04nu_leds_gpio); @@ -168,7 +158,8 @@ static void __init mzk_w04nu_setup(void) mzk_w04nu_gpio_buttons); ar71xx_add_device_usb(); - ar913x_add_device_wmac(); + ar913x_add_device_wmac(eeprom, NULL); } -MIPS_MACHINE(AR71XX_MACH_MZK_W04NU, "Planex MZK-W04NU", mzk_w04nu_setup); +MIPS_MACHINE(AR71XX_MACH_MZK_W04NU, "MZK-W04NU", "Planex MZK-W04NU", + mzk_w04nu_setup);