Changeset 34779


Ignore:
Timestamp:
2012-12-19T09:50:35+01:00 (5 years ago)
Author:
juhosg
Message:

ar71xx: add kernel support for the TL-MR3220 v2

Based on the following patch:
http://patchwork.openwrt.org/patch/3043/

[juhosg:

  • remove custom LED and button arrays
  • use separate machine specific patch
  • update Kconfig]

Signed-off-by: Cezary Jackiewicz <cezary.jackiewicz@…>
Signed-off-by: Gabor Juhos <juhosg@…>

Location:
trunk/target/linux/ar71xx
Files:
1 added
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wr741nd-v4.c

    r32092 r34779  
    11/* 
    2  *  TP-LINK TL-WR741ND v4 board support 
     2 *  TP-LINK TL-WR741ND v4/TL-MR3220 v2 board support 
    33 * 
    44 *  Copyright (C) 2011-2012 Gabor Juhos <juhosg@openwrt.org> 
     
    1919#include "dev-leds-gpio.h" 
    2020#include "dev-m25p80.h" 
     21#include "dev-usb.h" 
    2122#include "dev-wmac.h" 
    2223#include "machtypes.h" 
     
    3233#define TL_WR741NDV4_GPIO_LED_LAN3      16 
    3334#define TL_WR741NDV4_GPIO_LED_LAN4      17 
     35#define TL_WR741NDV4_GPIO_LED_SYSTEM    27 
    3436 
    35 #define TL_WR741NDV4_GPIO_LED_SYSTEM    27 
     37#define TL_MR3220V2_GPIO_LED_3G         26 
     38#define TL_MR3220V2_GPIO_USB_POWER      8 
    3639 
    3740#define TL_WR741NDV4_KEYS_POLL_INTERVAL 20      /* msecs */ 
     
    8083                .gpio           = TL_WR741NDV4_GPIO_LED_WLAN, 
    8184                .active_low     = 0, 
     85        }, { 
     86                /* the 3G LED is only present on the MR3220 v2 */ 
     87                .name           = "tp-link:green:3g", 
     88                .gpio           = TL_MR3220V2_GPIO_LED_3G, 
     89                .active_low     = 0, 
    8290        }, 
    8391}; 
     
    92100                .active_low     = 0, 
    93101        }, { 
     102                /* the WPS button is only present on the WR741ND v4 */ 
    94103                .desc           = "WPS", 
    95104                .type           = EV_KEY, 
     
    101110}; 
    102111 
    103 static void __init tl_wr741ndv4_setup(void) 
     112static void __init tl_ap121_setup(void) 
    104113{ 
    105114        u8 *mac = (u8 *) KSEG1ADDR(0x1f01fc00); 
     
    114123                                    AR933X_GPIO_FUNC_ETH_SWITCH_LED4_EN); 
    115124 
    116         ath79_register_leds_gpio(-1, ARRAY_SIZE(tl_wr741ndv4_leds_gpio), 
    117                                  tl_wr741ndv4_leds_gpio); 
    118  
    119         ath79_register_gpio_keys_polled(1, TL_WR741NDV4_KEYS_POLL_INTERVAL, 
    120                                         ARRAY_SIZE(tl_wr741ndv4_gpio_keys), 
    121                                         tl_wr741ndv4_gpio_keys); 
    122  
    123125        ath79_register_m25p80(&tl_wr741ndv4_flash_data); 
    124126        ath79_init_mac(ath79_eth0_data.mac_addr, mac, 1); 
     
    132134} 
    133135 
     136static void __init tl_wr741ndv4_setup(void) 
     137{ 
     138        tl_ap121_setup(); 
     139 
     140        ath79_register_leds_gpio(-1, ARRAY_SIZE(tl_wr741ndv4_leds_gpio) - 1, 
     141                                 tl_wr741ndv4_leds_gpio); 
     142        ath79_register_gpio_keys_polled(1, TL_WR741NDV4_KEYS_POLL_INTERVAL, 
     143                                        ARRAY_SIZE(tl_wr741ndv4_gpio_keys), 
     144                                        tl_wr741ndv4_gpio_keys); 
     145} 
     146 
    134147MIPS_MACHINE(ATH79_MACH_TL_WR741ND_V4, "TL-WR741ND-v4", 
    135148             "TP-LINK TL-WR741ND v4", tl_wr741ndv4_setup); 
     149 
     150static void __init tl_mr3220v2_setup(void) 
     151{ 
     152        tl_ap121_setup(); 
     153 
     154        gpio_request_one(TL_MR3220V2_GPIO_USB_POWER, 
     155                         GPIOF_OUT_INIT_HIGH | GPIOF_EXPORT_DIR_FIXED, 
     156                         "USB power"); 
     157        ath79_register_usb(); 
     158 
     159        ath79_register_leds_gpio(-1, ARRAY_SIZE(tl_wr741ndv4_leds_gpio), 
     160                                 tl_wr741ndv4_leds_gpio); 
     161        ath79_register_gpio_keys_polled(1, TL_WR741NDV4_KEYS_POLL_INTERVAL, 
     162                                        ARRAY_SIZE(tl_wr741ndv4_gpio_keys) - 1, 
     163                                        tl_wr741ndv4_gpio_keys); 
     164} 
     165 
     166MIPS_MACHINE(ATH79_MACH_TL_MR3220_V2, "TL-MR3220-v2", 
     167             "TP-LINK TL-MR3220 v2", tl_mr3220v2_setup); 
Note: See TracChangeset for help on using the changeset viewer.