From: Felix Fietkau Date: Fri, 21 Jan 2011 01:43:32 +0000 (+0000) Subject: ath9k: disable PA predistortion on AR93xx for now until it is properly fixed X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=02bf1599a3b87a41686bf1cb78d62fe71040b192;p=openwrt%2Fstaging%2F981213.git ath9k: disable PA predistortion on AR93xx for now until it is properly fixed SVN-Revision: 25056 --- diff --git a/package/mac80211/patches/310-ath9k_pending_work.patch b/package/mac80211/patches/310-ath9k_pending_work.patch index 0a3372c467..d0c2f39142 100644 --- a/package/mac80211/patches/310-ath9k_pending_work.patch +++ b/package/mac80211/patches/310-ath9k_pending_work.patch @@ -88,3 +88,35 @@ } } +--- a/drivers/net/wireless/ath/ath9k/hw.c ++++ b/drivers/net/wireless/ath/ath9k/hw.c +@@ -369,6 +369,9 @@ static void ath9k_hw_init_config(struct + else + ah->config.ht_enable = 0; + ++ /* PAPRD needs some more work to be enabled */ ++ ah->config.paprd_disable = 1; ++ + ah->config.rx_intr_mitigation = true; + ah->config.pcieSerDesWrite = true; + +@@ -1949,7 +1952,8 @@ int ath9k_hw_fill_cap_info(struct ath_hw + pCap->rx_status_len = sizeof(struct ar9003_rxs); + pCap->tx_desc_len = sizeof(struct ar9003_txc); + pCap->txs_len = sizeof(struct ar9003_txs); +- if (ah->eep_ops->get_eeprom(ah, EEP_PAPRD)) ++ if (!ah->config.paprd_disable && ++ ah->eep_ops->get_eeprom(ah, EEP_PAPRD)) + pCap->hw_caps |= ATH9K_HW_CAP_PAPRD; + } else { + pCap->tx_desc_len = sizeof(struct ath_desc); +--- a/drivers/net/wireless/ath/ath9k/hw.h ++++ b/drivers/net/wireless/ath/ath9k/hw.h +@@ -228,6 +228,7 @@ struct ath9k_ops_config { + u32 pcie_waen; + u8 analog_shiftreg; + u8 ht_enable; ++ u8 paprd_disable; + u32 ofdm_trig_low; + u32 ofdm_trig_high; + u32 cck_trig_high; diff --git a/package/mac80211/patches/403-ath9k-fix-invalid-mac-address-handling.patch b/package/mac80211/patches/403-ath9k-fix-invalid-mac-address-handling.patch index 700854d21c..cf3f96bb17 100644 --- a/package/mac80211/patches/403-ath9k-fix-invalid-mac-address-handling.patch +++ b/package/mac80211/patches/403-ath9k-fix-invalid-mac-address-handling.patch @@ -8,7 +8,7 @@ #include #include "hw.h" -@@ -428,8 +429,16 @@ static int ath9k_hw_init_macaddr(struct +@@ -431,8 +432,16 @@ static int ath9k_hw_init_macaddr(struct common->macaddr[2 * i] = eeval >> 8; common->macaddr[2 * i + 1] = eeval & 0xff; } diff --git a/package/mac80211/patches/409-ath9k_platform_settings.patch b/package/mac80211/patches/409-ath9k_platform_settings.patch index 31de3e4092..ba3479b581 100644 --- a/package/mac80211/patches/409-ath9k_platform_settings.patch +++ b/package/mac80211/patches/409-ath9k_platform_settings.patch @@ -18,7 +18,7 @@ common->ops = &ath9k_common_ops; --- a/drivers/net/wireless/ath/ath9k/hw.h +++ b/drivers/net/wireless/ath/ath9k/hw.h -@@ -793,7 +793,7 @@ struct ath_hw { +@@ -794,7 +794,7 @@ struct ath_hw { u32 originalGain[22]; int initPDADC; int PDADCdelta; diff --git a/package/mac80211/patches/520-ath9k_intr_mitigation_tweak.patch b/package/mac80211/patches/520-ath9k_intr_mitigation_tweak.patch index be17062ccb..797c950f90 100644 --- a/package/mac80211/patches/520-ath9k_intr_mitigation_tweak.patch +++ b/package/mac80211/patches/520-ath9k_intr_mitigation_tweak.patch @@ -1,6 +1,6 @@ --- a/drivers/net/wireless/ath/ath9k/hw.c +++ b/drivers/net/wireless/ath/ath9k/hw.c -@@ -1426,8 +1426,8 @@ int ath9k_hw_reset(struct ath_hw *ah, st +@@ -1429,8 +1429,8 @@ int ath9k_hw_reset(struct ath_hw *ah, st REG_WRITE(ah, AR_OBS, 8); if (ah->config.rx_intr_mitigation) {