Ignore:
Timestamp:
2012-04-19T23:31:48+02:00 (4 years ago)
Author:
juhosg
Message:

ar71xx: use ap91_pci_init for RB751{,G}

File:
1 edited

Legend:

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

    r31355 r31356  
    2323 
    2424#include "common.h" 
     25#include "dev-ap9x-pci.h" 
    2526#include "dev-usb.h" 
    2627#include "dev-eth.h" 
    2728#include "machtypes.h" 
    28 #include "pci-ath9k-fixup.h" 
    29 #include "pci.h" 
    3029 
    3130static struct rb750_led_data rb750_leds[] = { 
     
    278277MIPS_MACHINE(ATH79_MACH_RB_750G_R3, "750Gr3", "MikroTik RouterBOARD 750GL", 
    279278             rb750gr3_setup); 
    280  
    281 static struct ath9k_platform_data rb751_wmac_data = { 
    282         .led_pin = -1, 
    283 }; 
    284  
    285 static u8 rb751_wmac_mac[6]; 
    286  
    287 static int rb751_pci_plat_dev_init(struct pci_dev *dev) 
    288 { 
    289         switch (PCI_SLOT(dev->devfn)) { 
    290         case 0: 
    291                 dev->dev.platform_data = &rb751_wmac_data; 
    292                 break; 
    293         } 
    294  
    295         return 0; 
    296 } 
    297279 
    298280static int decode_rle(char *output, int len, char *in) 
     
    333315{ 
    334316        u8 *hardconfig = (u8 *) KSEG1ADDR(RB751_HARDCONFIG); 
    335  
    336         ath79_pci_set_plat_dev_init(rb751_pci_plat_dev_init); 
    337         ath79_register_pci(); 
    338  
    339         rb751_wmac_data.macaddr = memcpy(rb751_wmac_mac, 
    340                         hardconfig + RB751_MAC_ADDRESS_OFFSET, 6); 
    341  
    342         if (decode_rle((char *)rb751_wmac_data.eeprom_data, 
    343                         sizeof(rb751_wmac_data.eeprom_data), 
    344                         hardconfig + RB751_CALDATA_OFFSET) == 
    345                         sizeof(rb751_wmac_data.eeprom_data)) { 
    346                 pr_info("rb7xx: calibration data found\n"); 
    347                 pci_enable_ath9k_fixup(0, rb751_wmac_data.eeprom_data); 
    348         } 
     317        struct ath9k_platform_data *wmac_data; 
     318        int dec_size; 
     319 
     320        wmac_data = ap9x_pci_get_wmac_data(0); 
     321        if (!wmac_data) { 
     322                pr_err("rb75x: unable to get address of wlan data\n"); 
     323                return; 
     324        } 
     325 
     326        dec_size = decode_rle((char *) wmac_data->eeprom_data, 
     327                              sizeof(wmac_data->eeprom_data), 
     328                              hardconfig + RB751_CALDATA_OFFSET); 
     329        if (dec_size != sizeof(wmac_data->eeprom_data)) { 
     330                pr_err("rb75x: unable to decode wlan eeprom data\n"); 
     331                return; 
     332        } 
     333 
     334        ap91_pci_init(NULL, hardconfig + RB751_MAC_ADDRESS_OFFSET); 
    349335} 
    350336 
Note: See TracChangeset for help on using the changeset viewer.