Changeset 24818


Ignore:
Timestamp:
2010-12-24T13:09:36+01:00 (7 years ago)
Author:
nbd
Message:

ath9k: add pending fixes for revision checks and handling of the hw workaround register

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/package/mac80211/patches/310-ath9k_pending_work.patch

    r24655 r24818  
    9393--- a/drivers/net/wireless/ath/ath9k/hw.c 
    9494+++ b/drivers/net/wireless/ath/ath9k/hw.c 
    95 @@ -1399,7 +1399,7 @@ int ath9k_hw_reset(struct ath_hw *ah, st 
     95@@ -491,6 +491,17 @@ static int __ath9k_hw_init(struct ath_hw 
     96        if (ah->hw_version.devid == AR5416_AR9100_DEVID) 
     97                ah->hw_version.macVersion = AR_SREV_VERSION_9100; 
     98  
     99+       ath9k_hw_read_revisions(ah); 
     100+ 
     101+       /* 
     102+        * Read back AR_WA into a permanent copy and set bits 14 and 17. 
     103+        * We need to do this to avoid RMW of this register. We cannot 
     104+        * read the reg when chip is asleep. 
     105+        */ 
     106+       ah->WARegVal = REG_READ(ah, AR_WA); 
     107+       ah->WARegVal |= (AR_WA_D3_L1_DISABLE | 
     108+                        AR_WA_ASPM_TIMER_BASED_DISABLE); 
     109+ 
     110        if (!ath9k_hw_set_reset_reg(ah, ATH9K_RESET_POWER_ON)) { 
     111                ath_err(common, "Couldn't reset chip\n"); 
     112                return -EIO; 
     113@@ -559,14 +570,6 @@ static int __ath9k_hw_init(struct ath_hw 
     114  
     115        ath9k_hw_init_mode_regs(ah); 
     116  
     117-       /* 
     118-        * Read back AR_WA into a permanent copy and set bits 14 and 17. 
     119-        * We need to do this to avoid RMW of this register. We cannot 
     120-        * read the reg when chip is asleep. 
     121-        */ 
     122-       ah->WARegVal = REG_READ(ah, AR_WA); 
     123-       ah->WARegVal |= (AR_WA_D3_L1_DISABLE | 
     124-                        AR_WA_ASPM_TIMER_BASED_DISABLE); 
     125  
     126        if (ah->is_pciexpress) 
     127                ath9k_hw_configpcipowersave(ah, 0, 0); 
     128@@ -1078,8 +1081,6 @@ static bool ath9k_hw_set_reset_power_on( 
     129                return false; 
     130        } 
     131  
     132-       ath9k_hw_read_revisions(ah); 
     133- 
     134        return ath9k_hw_set_reset(ah, ATH9K_RESET_WARM); 
     135 } 
     136  
     137@@ -1399,7 +1400,7 @@ int ath9k_hw_reset(struct ath_hw *ah, st 
    96138        ath9k_hw_init_qos(ah); 
    97139  
Note: See TracChangeset for help on using the changeset viewer.