openwrtv3/package/mac80211/patches/406-ath9k-set-AH_USE_EEPROM-only-if-no-platform-data-present.patch

43 lines
1.2 KiB
Diff

--- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c
@@ -427,11 +427,8 @@ static void ath9k_hw_init_defaults(struc
ah->hw_version.magic = AR5416_MAGIC;
ah->hw_version.subvendorid = 0;
- ah->ah_flags = 0;
if (ah->hw_version.devid == AR5416_AR9100_DEVID)
ah->hw_version.macVersion = AR_SREV_VERSION_9100;
- if (!AR_SREV_9100(ah))
- ah->ah_flags = AH_USE_EEPROM;
ah->atim_window = 0;
ah->sta_id1_defaults = AR_STA_ID1_CRPT_MIC_ENABLE;
--- a/drivers/net/wireless/ath/ath9k/main.c
+++ b/drivers/net/wireless/ath/ath9k/main.c
@@ -15,6 +15,7 @@
*/
#include <linux/nl80211.h>
+#include <linux/ath9k_platform.h>
#include "ath9k.h"
#include "btcoex.h"
@@ -1606,6 +1607,7 @@ static int ath_init_softc(u16 devid, str
{
struct ath_hw *ah = NULL;
struct ath_common *common;
+ struct ath9k_platform_data *pdata;
int r = 0, i;
int csz = 0;
int qnum;
@@ -1629,6 +1631,10 @@ static int ath_init_softc(u16 devid, str
ah->hw_version.devid = devid;
ah->hw_version.subsysid = subsysid;
+ pdata = (struct ath9k_platform_data *) sc->dev->platform_data;
+ if (!pdata)
+ ah->ah_flags |= AH_USE_EEPROM;
+
sc->sc_ah = ah;
common = ath9k_hw_common(ah);