diff options
author | Felix Fietkau <nbd@openwrt.org> | 2015-04-14 12:17:34 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2015-04-14 12:17:34 +0000 |
commit | cd59cb2a4004c0a4bd13ded3c0ee7abf850fda7d (patch) | |
tree | 580c994a8d121e191f2de5383c8de7ea84afb665 /package/kernel/mac80211/patches/332-ath9k-ath9k_hw_analog_shift_rmw-use-REG_RMW.patch | |
parent | 054044ff91891723025a6b35bd583c98e141ea3d (diff) | |
download | master-187ad058-cd59cb2a4004c0a4bd13ded3c0ee7abf850fda7d.tar.gz master-187ad058-cd59cb2a4004c0a4bd13ded3c0ee7abf850fda7d.tar.bz2 master-187ad058-cd59cb2a4004c0a4bd13ded3c0ee7abf850fda7d.zip |
mac80211: merge a number of upstream driver fixes/improvements
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45432 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/kernel/mac80211/patches/332-ath9k-ath9k_hw_analog_shift_rmw-use-REG_RMW.patch')
-rw-r--r-- | package/kernel/mac80211/patches/332-ath9k-ath9k_hw_analog_shift_rmw-use-REG_RMW.patch | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/package/kernel/mac80211/patches/332-ath9k-ath9k_hw_analog_shift_rmw-use-REG_RMW.patch b/package/kernel/mac80211/patches/332-ath9k-ath9k_hw_analog_shift_rmw-use-REG_RMW.patch new file mode 100644 index 0000000000..3ce4428f56 --- /dev/null +++ b/package/kernel/mac80211/patches/332-ath9k-ath9k_hw_analog_shift_rmw-use-REG_RMW.patch @@ -0,0 +1,27 @@ +From: Oleksij Rempel <linux@rempel-privat.de> +Date: Sun, 22 Mar 2015 19:29:59 +0100 +Subject: [PATCH] ath9k: ath9k_hw_analog_shift_rmw: use REG_RMW + +use REG_RMW in ath9k_hw_analog_shift_rmw. +It will double execution speed on usb bus. + +Signed-off-by: Oleksij Rempel <linux@rempel-privat.de> +Signed-off-by: Kalle Valo <kvalo@codeaurora.org> +--- + +--- a/drivers/net/wireless/ath/ath9k/eeprom.c ++++ b/drivers/net/wireless/ath/ath9k/eeprom.c +@@ -27,12 +27,7 @@ void ath9k_hw_analog_shift_regwrite(stru + void ath9k_hw_analog_shift_rmw(struct ath_hw *ah, u32 reg, u32 mask, + u32 shift, u32 val) + { +- u32 regVal; +- +- regVal = REG_READ(ah, reg) & ~mask; +- regVal |= (val << shift) & mask; +- +- REG_WRITE(ah, reg, regVal); ++ REG_RMW(ah, reg, ((val << shift) & mask), mask); + + if (ah->config.analog_shiftreg) + udelay(100); |