Changeset 23822


Ignore:
Timestamp:
2010-11-03T15:55:53+01:00 (7 years ago)
Author:
nbd
Message:

ar71xx: improve the wndr3700 quirks - move most of the code out of ath9k and instead allow the platform device to specify gpio overrides - fixes 5ghz signal strength issues

Location:
trunk
Files:
2 added
2 deleted
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/package/mac80211/patches/408-ath9k_tweak_rx_intr_mitigation.patch

    r23470 r23822  
    11--- a/drivers/net/wireless/ath/ath9k/hw.c 
    22+++ b/drivers/net/wireless/ath/ath9k/hw.c 
    3 @@ -1420,7 +1420,7 @@ int ath9k_hw_reset(struct ath_hw *ah, st 
     3@@ -1434,7 +1434,7 @@ int ath9k_hw_reset(struct ath_hw *ah, st 
    44  
    55        if (ah->config.rx_intr_mitigation) { 
  • trunk/package/mac80211/patches/500-ath9k_eeprom_debugfs.patch

    r23540 r23822  
    5555 { 
    5656        struct ath_common *common = ath9k_hw_common(ah); 
    57 @@ -920,6 +967,10 @@ int ath9k_init_debug(struct ath_hw *ah) 
    58                         sc->debug.debugfs_phy, &ah->config.cwm_ignore_extcca)) 
    59                 goto err; 
     57@@ -926,6 +973,10 @@ int ath9k_init_debug(struct ath_hw *ah) 
     58        debugfs_create_u32("gpio_val", S_IRUSR | S_IWUSR, 
     59                           sc->debug.debugfs_phy, &sc->sc_ah->gpio_val); 
    6060  
    6161+       if (!debugfs_create_file("eeprom", S_IRUSR, 
  • trunk/package/mac80211/patches/521-ath9k_hw_tx_power.patch

    r23543 r23822  
    253253        ath9k_hw_rfbus_done(ah); 
    254254  
    255 @@ -2177,7 +2177,7 @@ bool ath9k_hw_disable(struct ath_hw *ah) 
     255@@ -2193,7 +2193,7 @@ bool ath9k_hw_disable(struct ath_hw *ah) 
    256256 } 
    257257 EXPORT_SYMBOL(ath9k_hw_disable); 
     
    262262        struct ath_regulatory *regulatory = ath9k_hw_regulatory(ah); 
    263263        struct ath9k_channel *chan = ah->curchan; 
    264 @@ -2190,7 +2190,7 @@ void ath9k_hw_set_txpowerlimit(struct at 
     264@@ -2206,7 +2206,7 @@ void ath9k_hw_set_txpowerlimit(struct at 
    265265                                 channel->max_antenna_gain * 2, 
    266266                                 channel->max_power * 2, 
     
    273273--- a/drivers/net/wireless/ath/ath9k/hw.h 
    274274+++ b/drivers/net/wireless/ath/ath9k/hw.h 
    275 @@ -860,7 +860,7 @@ u32 ath9k_hw_getrxfilter(struct ath_hw * 
     275@@ -862,7 +862,7 @@ u32 ath9k_hw_getrxfilter(struct ath_hw * 
    276276 void ath9k_hw_setrxfilter(struct ath_hw *ah, u32 bits); 
    277277 bool ath9k_hw_phy_disable(struct ath_hw *ah); 
  • trunk/package/mac80211/patches/522-ath9k_tx_power_init.patch

    r23541 r23822  
    11--- a/drivers/net/wireless/ath/ath9k/init.c 
    22+++ b/drivers/net/wireless/ath/ath9k/init.c 
    3 @@ -650,6 +650,37 @@ err_hw: 
     3@@ -654,6 +654,37 @@ err_hw: 
    44        return ret; 
    55 } 
     
    3939 { 
    4040        struct ath_common *common = ath9k_hw_common(sc->sc_ah); 
    41 @@ -765,6 +796,8 @@ int ath9k_init_device(u16 devid, struct  
     41@@ -748,6 +779,8 @@ int ath9k_init_device(u16 devid, struct  
    4242        if (error != 0) 
    4343                goto error_rx; 
  • trunk/package/mac80211/patches/530-ath9k_locking_fix.patch

    r23649 r23822  
    99        struct list_head rxbuf; 
    1010        struct ath_descdma rxdma; 
    11 @@ -600,9 +599,9 @@ struct ath_softc { 
     11@@ -599,9 +598,9 @@ struct ath_softc { 
    1212        struct ath_hw *sc_ah; 
    1313        void __iomem *mem; 
     
    338338--- a/drivers/net/wireless/ath/ath9k/init.c 
    339339+++ b/drivers/net/wireless/ath/ath9k/init.c 
    340 @@ -588,7 +588,6 @@ static int ath9k_init_softc(u16 devid, s 
     340@@ -592,7 +592,6 @@ static int ath9k_init_softc(u16 devid, s 
    341341        spin_lock_init(&common->cc_lock); 
    342342  
  • trunk/target/linux/ar71xx/files/arch/mips/ar71xx/dev-ap91-pci.c

    r23131 r23822  
    1919#include "pci-ath9k-fixup.h" 
    2020 
    21 static struct ath9k_platform_data ap91_wmac_data; 
     21static struct ath9k_platform_data ap91_wmac_data = { 
     22        .led_pin = -1, 
     23}; 
    2224static char ap91_wmac_mac[6]; 
    2325 
  • trunk/target/linux/ar71xx/files/arch/mips/ar71xx/dev-ap94-pci.c

    r23131 r23822  
    1919#include "pci-ath9k-fixup.h" 
    2020 
    21 static struct ath9k_platform_data ap94_wmac0_data; 
    22 static struct ath9k_platform_data ap94_wmac1_data; 
     21static struct ath9k_platform_data ap94_wmac0_data = { 
     22        .led_pin = -1, 
     23}; 
     24static struct ath9k_platform_data ap94_wmac1_data = { 
     25        .led_pin = -1, 
     26}; 
    2327static char ap94_wmac0_mac[6]; 
    2428static char ap94_wmac1_mac[6]; 
     
    5357void __init ap94_pci_enable_quirk_wndr3700(void) 
    5458{ 
    55         ap94_wmac0_data.quirk_wndr3700 = 1; 
    56         ap94_wmac1_data.quirk_wndr3700 = 1; 
     59        /* WNDR3700 uses GPIO 6-9 for antenna configuration */ 
     60 
     61        ap94_wmac0_data.led_pin = 5; 
     62        ap94_wmac0_data.gpio_mask = (0xf << 6); 
     63        /* 2.4 GHz uses the first fixed antenna group (0, 1, 0, 1) */ 
     64        ap94_wmac0_data.gpio_val = (5 << 6); 
     65 
     66        ap94_wmac1_data.led_pin = 5; 
     67        ap94_wmac1_data.gpio_mask = (0xf << 6); 
     68        /* 5 GHz uses the second fixed antenna group (0, 1, 1, 0) */ 
     69        ap94_wmac1_data.gpio_val = (6 << 6); 
    5770} 
    5871 
  • trunk/target/linux/ar71xx/files/arch/mips/ar71xx/dev-ar913x-wmac.c

    r20279 r23822  
    2323#include "dev-ar913x-wmac.h" 
    2424 
    25 static struct ath9k_platform_data ar913x_wmac_data; 
     25static struct ath9k_platform_data ar913x_wmac_data = { 
     26        .led_pin = -1, 
     27}; 
    2628static char ar913x_wmac_mac[6]; 
    2729 
  • trunk/target/linux/ar71xx/files/include/linux/ath9k_platform.h

    r19565 r23822  
    11/* 
    2  * ath9k platform data defines 
     2 * Copyright (c) 2008 Atheros Communications Inc. 
     3 * Copyright (c) 2009 Gabor Juhos <juhosg@openwrt.org> 
     4 * Copyright (c) 2009 Imre Kaloz <kaloz@openwrt.org> 
    35 * 
    4  * Copyright (C) 2008 Gabor Juhos <juhosg@openwrt.org> 
     6 * Permission to use, copy, modify, and/or distribute this software for any 
     7 * purpose with or without fee is hereby granted, provided that the above 
     8 * copyright notice and this permission notice appear in all copies. 
    59 * 
    6  * This program is free software; you can redistribute it and/or modify it 
    7  * under the terms of the GNU General Public License version 2 as published 
    8  * by the Free Software Foundation. 
     10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 
     11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 
     12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 
     13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 
     14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 
     15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 
     16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 
    917 */ 
    1018 
     
    1826        u8 *macaddr; 
    1927 
    20         unsigned long quirk_wndr3700:1; 
     28        int led_pin; 
     29        u32 gpio_mask; 
     30        u32 gpio_val; 
    2131}; 
    2232 
Note: See TracChangeset for help on using the changeset viewer.