Changeset 24924


Ignore:
Timestamp:
2011-01-08T11:17:49+01:00 (7 years ago)
Author:
juhosg
Message:

backfire: ar71xx: add helper function to setup ath9k LED/GPIO on the AP94 based boards (backport of r24649, r24651)

Location:
branches/backfire/target/linux/ar71xx/files/arch/mips/ar71xx
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/backfire/target/linux/ar71xx/files/arch/mips/ar71xx/dev-ap94-pci.c

    r24921 r24924  
    130130DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_ATHEROS, PCI_ANY_ID, ap94_pci_fixup); 
    131131 
    132 void __init ap94_pci_enable_quirk_wndr3700(void) 
     132__init void ap94_pci_setup_wmac_led_pin(unsigned wmac, int pin) 
    133133{ 
    134         /* WNDR3700 uses GPIO 6-9 for antenna configuration */ 
     134        switch (wmac) { 
     135        case 0: 
     136                ap94_wmac0_data.led_pin = pin; 
     137                break; 
     138        case 1: 
     139                ap94_wmac1_data.led_pin = pin; 
     140                break; 
     141        } 
     142} 
    135143 
    136         ap94_wmac0_data.led_pin = 5; 
    137         ap94_wmac0_data.gpio_mask = (0xf << 6); 
    138         /* 2.4 GHz uses the first fixed antenna group (0, 1, 0, 1) */ 
    139         ap94_wmac0_data.gpio_val = (10 << 6); 
    140  
    141         ap94_wmac1_data.led_pin = 5; 
    142         ap94_wmac1_data.gpio_mask = (0xf << 6); 
    143         /* 5 GHz uses the second fixed antenna group (0, 1, 1, 0) */ 
    144         ap94_wmac1_data.gpio_val = (6 << 6); 
     144__init void ap94_pci_setup_wmac_gpio(unsigned wmac, u32 mask, u32 val) 
     145{ 
     146        switch (wmac) { 
     147        case 0: 
     148                ap94_wmac0_data.gpio_mask = mask; 
     149                ap94_wmac0_data.gpio_val = val; 
     150                break; 
     151        case 1: 
     152                ap94_wmac1_data.gpio_mask = mask; 
     153                ap94_wmac1_data.gpio_val = val; 
     154                break; 
     155        } 
    145156} 
    146157 
  • branches/backfire/target/linux/ar71xx/files/arch/mips/ar71xx/dev-ap94-pci.h

    r19565 r24924  
    1616                   u8 *cal_data1, u8 *mac_addr1) __init; 
    1717 
    18 void ap94_pci_enable_quirk_wndr3700(void) __init; 
     18void ap94_pci_setup_wmac_led_pin(unsigned wmac, int pin) __init; 
     19void ap94_pci_setup_wmac_gpio(unsigned wmac, u32 mask, u32 val) __init; 
    1920 
    2021#else 
     
    2223                                 u8 *cal_data1, u8 *mac_addr1) {} 
    2324 
    24 static inline void ap94_pci_enable_quirk_wndr3700(void) {} 
     25static inline void ap94_pci_setup_wmac_led_pin(unsigned wmac, int pin) {} 
     26static inline void ap94_pci_setup_wmac_gpio(unsigned wmac, 
     27                                            u32 mask, u32 val) {} 
    2528#endif 
    2629 
  • branches/backfire/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wndr3700.c

    r20358 r24924  
    199199        platform_device_register_simple("wndr3700-led-usb", -1, NULL, 0); 
    200200 
    201         ap94_pci_enable_quirk_wndr3700(); 
     201        ap94_pci_setup_wmac_led_pin(0, 5); 
     202        ap94_pci_setup_wmac_led_pin(1, 5); 
     203 
     204        /* 2.4 GHz uses the first fixed antenna group (1, 0, 1, 0) */ 
     205        ap94_pci_setup_wmac_gpio(0, (0xf << 6), (0xa << 6)); 
     206 
     207        /* 5 GHz uses the second fixed antenna group (0, 1, 1, 0) */ 
     208        ap94_pci_setup_wmac_gpio(1, (0xf << 6), (0x6 << 6)); 
     209 
    202210        ap94_pci_init(art + WNDR3700_CALDATA0_OFFSET, 
    203211                      art + WNDR3700_WMAC0_MAC_OFFSET, 
Note: See TracChangeset for help on using the changeset viewer.