Changeset 18950


Ignore:
Timestamp:
2009-12-27T21:59:50+01:00 (7 years ago)
Author:
juhosg
Message:

ar71xx: pass eeprom and mac address location to the ar913x_add_device_wmac function

Location:
trunk/target/linux/ar71xx/files/arch/mips/ar71xx
Files:
12 edited

Legend:

Unmodified
Added
Removed
  • trunk/target/linux/ar71xx/files/arch/mips/ar71xx/dev-ar913x-wmac.c

    r18820 r18950  
    2323#include "dev-ar913x-wmac.h" 
    2424 
     25static struct ath9k_platform_data ar913x_wmac_data; 
     26static char ar913x_wmac_mac[6]; 
     27 
    2528static struct resource ar913x_wmac_resources[] = { 
    2629        { 
     
    3538}; 
    3639 
    37 static struct ath9k_platform_data ar913x_wmac_data; 
    38  
    3940static struct platform_device ar913x_wmac_device = { 
    4041        .name           = "ath9k", 
     
    4748}; 
    4849 
    49 void __init ar913x_add_device_wmac(void) 
     50void __init ar913x_add_device_wmac(u8 *cal_data, u8 *mac_addr) 
    5051{ 
    51         u8 *ee = (u8 *) KSEG1ADDR(0x1fff1000); 
     52        if (cal_data) 
     53                memcpy(ar913x_wmac_data.eeprom_data, cal_data, 
     54                       sizeof(ar913x_wmac_data.eeprom_data)); 
    5255 
    53         memcpy(ar913x_wmac_data.eeprom_data, ee, 
    54                sizeof(ar913x_wmac_data.eeprom_data)); 
     56        if (mac_addr) { 
     57                memcpy(ar913x_wmac_mac, mac_addr, sizeof(ar913x_wmac_mac)); 
     58                ar913x_wmac_data.macaddr = ar913x_wmac_mac; 
     59        } 
    5560 
    5661        ar71xx_device_stop(RESET_MODULE_AMBA2WMAC); 
  • trunk/target/linux/ar71xx/files/arch/mips/ar71xx/dev-ar913x-wmac.h

    r18820 r18950  
    1515#define _AR71XX_DEV_AR913X_WMAC_H 
    1616 
    17 void ar913x_add_device_wmac(void) __init; 
     17void ar913x_add_device_wmac(u8 *cal_data, u8 *mac_addr) __init; 
    1818 
    1919#endif /* _AR71XX_DEV_AR913X_WMAC_H */ 
  • trunk/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ap81.c

    r18942 r18950  
    108108static void __init ap81_setup(void) 
    109109{ 
    110         u8 *mac = (u8 *) KSEG1ADDR(0x1fff1000); 
     110        u8 *eeprom = (u8 *) KSEG1ADDR(0x1fff1000); 
    111111 
    112         ar71xx_set_mac_base(mac); 
     112        ar71xx_set_mac_base(eeprom); 
    113113        ar71xx_add_device_mdio(0x0); 
    114114 
     
    136136                                        ap81_gpio_buttons); 
    137137 
    138         ar913x_add_device_wmac(); 
     138        ar913x_add_device_wmac(eeprom, NULL); 
    139139} 
    140140 
  • trunk/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ap83.c

    r18942 r18950  
    195195static void __init ap83_generic_setup(void) 
    196196{ 
    197         u8 *mac = (u8 *) KSEG1ADDR(0x1fff1000); 
    198  
    199         ar71xx_set_mac_base(mac); 
     197        u8 *eeprom = (u8 *) KSEG1ADDR(0x1fff1000); 
     198 
     199        ar71xx_set_mac_base(eeprom); 
    200200 
    201201        ar71xx_add_device_mdio(0xfffffffe); 
     
    224224        ar71xx_add_device_usb(); 
    225225 
    226         ar913x_add_device_wmac(); 
     226        ar913x_add_device_wmac(eeprom, NULL); 
    227227 
    228228        platform_device_register(&ap83_flash_device); 
  • trunk/target/linux/ar71xx/files/arch/mips/ar71xx/mach-dir-615-c1.c

    r18942 r18950  
    127127static void __init dir_615c1_setup(void) 
    128128{ 
     129        u8 *eeprom = (u8 *) KSEG1ADDR(0x1fff1000); 
     130 
    129131        ar71xx_add_device_mdio(0x0); 
    130132 
     
    149151                                        dir_615c1_gpio_buttons); 
    150152 
    151         ar913x_add_device_wmac(); 
     153        ar913x_add_device_wmac(eeprom, NULL); 
    152154} 
    153155 
  • trunk/target/linux/ar71xx/files/arch/mips/ar71xx/mach-mzk-w04nu.c

    r18942 r18950  
    129129static void __init mzk_w04nu_setup(void) 
    130130{ 
    131         u8 *mac = (u8 *) KSEG1ADDR(0x1fff1000); 
     131        u8 *eeprom = (u8 *) KSEG1ADDR(0x1fff1000); 
    132132 
    133         ar71xx_set_mac_base(mac); 
     133        ar71xx_set_mac_base(eeprom); 
    134134 
    135135        ar71xx_add_device_mdio(0x0); 
     
    157157        ar71xx_add_device_usb(); 
    158158 
    159         ar913x_add_device_wmac(); 
     159        ar913x_add_device_wmac(eeprom, NULL); 
    160160} 
    161161 
  • trunk/target/linux/ar71xx/files/arch/mips/ar71xx/mach-mzk-w300nh.c

    r18942 r18950  
    128128static void __init mzk_w300nh_setup(void) 
    129129{ 
    130         u8 *mac = (u8 *) KSEG1ADDR(0x1fff1000); 
     130        u8 *eeprom = (u8 *) KSEG1ADDR(0x1fff1000); 
    131131 
    132         ar71xx_set_mac_base(mac); 
     132        ar71xx_set_mac_base(eeprom); 
    133133 
    134134        ar71xx_add_device_mdio(0x0); 
     
    154154                                       ARRAY_SIZE(mzk_w300nh_gpio_buttons), 
    155155                                       mzk_w300nh_gpio_buttons); 
    156         ar913x_add_device_wmac(); 
     156        ar913x_add_device_wmac(eeprom, NULL); 
    157157} 
    158158 
  • trunk/target/linux/ar71xx/files/arch/mips/ar71xx/mach-tew-632brp.c

    r18942 r18950  
    103103static void __init tew_632brp_setup(void) 
    104104{ 
     105        u8 *eeprom = (u8 *) KSEG1ADDR(0x1fff1000); 
     106 
    105107        ar71xx_add_device_mdio(0x0); 
    106108 
     
    125127                                        tew_632brp_gpio_buttons); 
    126128 
    127         ar913x_add_device_wmac(); 
     129        ar913x_add_device_wmac(eeprom, NULL); 
    128130} 
    129131 
  • trunk/target/linux/ar71xx/files/arch/mips/ar71xx/mach-tl-wr1043nd.c

    r18942 r18950  
    108108{ 
    109109        u8 *mac = (u8 *) KSEG1ADDR(0x1f01fc00); 
     110        u8 *eeprom = (u8 *) KSEG1ADDR(0x1fff1000); 
    110111 
    111112        ar71xx_set_mac_base(mac); 
     
    130131                                        ARRAY_SIZE(tl_wr1043nd_gpio_buttons), 
    131132                                        tl_wr1043nd_gpio_buttons); 
    132         ar913x_add_device_wmac(); 
     133        ar913x_add_device_wmac(eeprom, NULL); 
    133134} 
    134135 
  • trunk/target/linux/ar71xx/files/arch/mips/ar71xx/mach-tl-wr941nd.c

    r18943 r18950  
    112112{ 
    113113        u8 *mac = (u8 *) KSEG1ADDR(0x1f01fc00); 
     114        u8 *eeprom = (u8 *) KSEG1ADDR(0x1fff1000); 
    114115 
    115116        ar71xx_set_mac_base(mac); 
     
    133134                                        ARRAY_SIZE(tl_wr941nd_gpio_buttons), 
    134135                                        tl_wr941nd_gpio_buttons); 
    135         ar913x_add_device_wmac(); 
     136        ar913x_add_device_wmac(eeprom, mac); 
    136137} 
    137138 
  • trunk/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wnr2000.c

    r18942 r18950  
    117117static void __init wnr2000_setup(void) 
    118118{ 
    119         u8 *mac = (u8 *) KSEG1ADDR(0x1fff1000); 
     119        u8 *eeprom = (u8 *) KSEG1ADDR(0x1fff1000); 
    120120 
    121         ar71xx_set_mac_base(mac); 
     121        ar71xx_set_mac_base(eeprom); 
    122122        ar71xx_add_device_mdio(0x0); 
    123123 
     
    144144 
    145145 
    146         ar913x_add_device_wmac(); 
     146        ar913x_add_device_wmac(eeprom, NULL); 
    147147} 
    148148 
  • trunk/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wrt160nl.c

    r18942 r18950  
    113113static void __init wrt160nl_setup(void) 
    114114{ 
     115        u8 *eeprom = (u8 *) KSEG1ADDR(0x1fff1000); 
     116 
    115117        ar71xx_add_device_mdio(0x0); 
    116118 
     
    127129 
    128130        ar71xx_add_device_usb(); 
    129         ar913x_add_device_wmac(); 
     131        ar913x_add_device_wmac(eeprom, NULL); 
    130132 
    131133        ar71xx_add_device_leds_gpio(-1, ARRAY_SIZE(wrt160nl_leds_gpio), 
Note: See TracChangeset for help on using the changeset viewer.