History log of /drivers/net/wireless/ath/ath9k/phy.h
Revision Date Author Comments
c2b8359d7878f75584ed68b7a2b930bd9bea814d 23-Jul-2013 Sujith Manoharan <c_manoha@qca.qualcomm.com> ath9k: Fix diversity combining for AR9285

When antenna diversity combining is enabled in the EEPROM,
the initial values for the MAIN/ALT config have to be
programmed correctly. This patch adds it for AR9285.

Since the diversity combining macros are common to all chip
families, remove the redundant AR9285 macros and move the
definitions to phy.h.

Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
5b68138e5659cbfd5df2879d17f9ba0b66477fec 17-May-2011 Sujith Manoharan <Sujith.Manoharan@atheros.com> ath9k: Drag the driver to the year 2011

The Times They Are a-Changin'.

Signed-off-by: Sujith Manoharan <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
0b488ac6ece598fda69b5f3348015994129c48b9 20-Apr-2011 Vasanthakumar Thiagarajan <vasanth@atheros.com> ath9k_hw: Configure pll control register accordingly for AR9340

Signed-off-by: Vasanthakumar Thiagarajan <vasanth@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
9d5e6bdb3013acfb311ab407eeca0b6a6a3dedbf 13-Apr-2011 Jiri Kosina <jkosina@suse.cz> ath9k_hw: don't touch with treewide double semicolon removal

This is a partial revert of 6eab04a87677 ("treewide: remove extra
semicolons"). Wireless tree removes the code in question, so
drop the hunk to avoid conflict.

Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
3dfd7f606645279c788f48cfdfdf9565ec72c4f0 11-Apr-2011 Vasanthakumar Thiagarajan <vasanth@atheros.com> ath9k: Implement integer mode for AR9485

This fixes random disconnect.

Signed-off-by: Vasanthakumar Thiagarajan <vasanth@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
6eab04a87677a37cf15b52e2b4b4fd57917102ad 09-Apr-2011 Justin P. Mattock <justinmattock@gmail.com> treewide: remove extra semicolons

Signed-off-by: Justin P. Mattock <justinmattock@gmail.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
a9b6b2569cf107fe541381e82faa0a3c47a9a7fd 23-Mar-2011 Felix Fietkau <nbd@openwrt.org> ath9k_hw: turn a few big macros into functions

RF_BANK_SETUP, REG_WRITE_RF_ARRAY and REG_WRITE_ARRAY are way too big,
so they shouldn't be inlined at every single callsite, especially since they
can easily be turned into real functions.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
e7fc63388def06d2d1bdb6916748c92c037a42c6 15-Mar-2011 Rajkumar Manoharan <rmanoharan@atheros.com> ath9k_hw: Speedup register ops for HTC driver

Fine-tuning register write operation and avoid unnecessay
delays for ath9k_htc driver, saves hw reset time which
improves scanning time and also solves one of the following
scenario.

Sometimes the ACK is sent by STA for assoc response is not
seen at AP side. So the AP continues to send retry assoc
responses. At the STA side, since the assoc response was
already forwarded to mac80211, it proceeded to channel change
which in turns does chip reset.

In most of the cases the chip reset was completed before
max retries are reached at AP side. Hence STA can able to ACK
the retried frames again. But in clear environment these retries
are completed within shortspan of time.

Since ath9k_htc consumes more time for hw reset, this latency
is causing dissociation by AP due to max reties are reached.
This issue was originally reported with Cisco Aironet 1250 AP
in HT40 mode in noise free environment.

Signed-off-by: Rajkumar Manoharan <rmanoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
85dd0921e686ed2f0283cef358a91ecaa36ccc8f 06-Dec-2010 Vasanthakumar Thiagarajan <vasanth@atheros.com> ath9k_hw: Find chansel of AR_PHY_65NM_CH0_SYNTH7 for AR9485

Signed-off-by: Vasanthakumar Thiagarajan <vasanth@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
040e539e8e8d5585e1c3d7d15fa7215d3a691258 08-Sep-2010 Bruno Randolf <br1@einfach.org> ath9k: Use common ath key management functions

Use key management functions which have been moved to ath/key.c and remove
ath9k copies of these functions and other now unused definitions.

Signed-off-by: Bruno Randolf <br1@einfach.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
1547da37db9b56eb98eb0f33b84d49ab4e83e01e 15-Apr-2010 Luis R. Rodriguez <lrodriguez@atheros.com> ath9k_hw: add OFDM spur mitigation for AR9003

We add this now as OFDM spur mitigation required accessing
the EEPROM for the AR9003 devices.

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
7152451aa12558ab032f319a119ceb928396b905 15-Apr-2010 Luis R. Rodriguez <lrodriguez@atheros.com> ath9k_hw: add common channel select helpers for ar900[23]

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
8fe6536850ae49609704a263cbc7542133536922 15-Apr-2010 Luis R. Rodriguez <lrodriguez@atheros.com> ath9k_hw: Move some RF ops to the private callbacks

The PHY split is easier done in a few steps. First move
the RF ops to the private ops and rename them accordingly.
We split PHY stuff up first for the AR5008 and AR9002
families. There are some callbacks that AR9002 share
with the AR5008 familiy so we set those first, if AR9002
has some different callbacks it will override them upon
hardware init.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
aed1baf1ab10f4b6bd40952a9deb791dbba48f3a 15-Apr-2010 Luis R. Rodriguez <lrodriguez@atheros.com> ath9k_hw: remove wrapper ath9k_hw_write_regs()

This is used only once by ath9k_hw_process_ini() to
write an array of phy registers through REG_WRITE_ARRAY(),
but we already call REG_WRITE_ARRAY() multiple times
on the same caller so just remove this pointless wrapper.
We'll eventually just move the ath9k_hw_process_ini()
caller as an callback to abstract away between different
hardware families.

Although this change is subtle I should note that this
does change the delay pattern on writing the next series
of registers. REG_WRITE_ARRAY() uses a counter for each
register write and does a udelay(1) every 64 writes. By
removing this call it means that the counter is processed
for all the iniBB_RfGain registers and is incremented
on ath9k_hw_process_ini(), before this the after the call
ath9k_hw_write_regs() was made the register counter was
kept at the same index number prior to the call.

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
53bc7aa08b48e5cd745f986731cc7dc24eef2a9f 05-Apr-2010 Vivek Natarajan <vnatarajan@atheros.com> ath9k: Add support for newer AR9285 chipsets.

This patch adds support for a modified newer version of AR9285
chipsets.

Signed-off-by: Vivek Natarajan <vnatarajan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
7bfbae10dc10a5c94a780d117a57e875d77e8e5a 24-Feb-2010 Felix Fietkau <nbd@openwrt.org> ath9k: disable RIFS search for AR91xx based chips

While ath9k does not support RIFS yet, the ability to receive RIFS
frames is currently enabled for most chipsets in the initvals.
This is causing baseband related issues on AR9160 and AR9130 based
chipsets, which can lock up under certain conditions.

This patch fixes these issues by overriding the initvals, effectively
disabling RIFS for all affected chipsets.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Cc: stable@kernel.org
Acked-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
201cd6cce4f67ccead6240eb04ffa2f311661174 16-Nov-2009 Sujith <Sujith.Manoharan@atheros.com> ath9k: Remove a few unused functions

ATH9K_ANT_VARIABLE is the default diversity control used.
Consequently ath9k_hw_decrease_chain_power() does nothing.
ath9k_hw_setantennaswitch() is unused too.

Also, gbeacon_rate is unused.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
896ff260351f736f0d9d32f4fd36257f3e75bd97 19-Oct-2009 Luis R. Rodriguez <lrodriguez@atheros.com> ath9k_hw: remove unused modesIndex param from ath9k_hw_write_regs()

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
e16393bbb17e828aa433be9909462f9a61e4cbdb 19-Oct-2009 Luis R. Rodriguez <lrodriguez@atheros.com> ath9k_hw: order phy.c code and integrate spur mitigation

This reorders phy.c routines in the order in the order in which they are used
and also moves the spur mitigation helpers for each type of chip into phy.c
as they are RF related.

This patch has no functional changes.

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
0a3b7bac673ee9462f5defe808609746d27af50d 19-Oct-2009 Luis R. Rodriguez <lrodriguez@atheros.com> ath9k_hw: make both analog channel change routines return int

This allows us to later define a callback for both.

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
dc51dd503953a8bed545d10eb89fb3340a98879b 19-Oct-2009 Luis R. Rodriguez <lrodriguez@atheros.com> ath9k_hw: rename ath9k_hw_rf_free() to ath9k_hw_rf_free_ext_banks()

This clarifies this is only required for external radios.

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
574d6b122d37549bc2817a4939d238f3d8b41da4 19-Oct-2009 Luis R. Rodriguez <lrodriguez@atheros.com> ath9k_hw: simplify rf attach and rename to ath9k_hw_rf_alloc_ext_banks()

ath9k_hw_rfattach() was just calling a helper and this helper was
doing nothing for single-chip devices, and for non single-chip devices
it is just allocating memory for banks to program the RF registers
at a later time. Simplify this by having the hw initialization call
the rf bank allocation directly for external radios.

Also, propagate an -ENOMEM properly now upon failure.

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
ec11bb88f977321f117865b4d21079bbacc474ee 27-Oct-2009 Luis R. Rodriguez <lrodriguez@atheros.com> ath9k_hw: correct AR_PHY_SPECTRAL_SCAN register offset

We had 0x9912 but AR_PHY_SPECTRAL_SCAN is 0x9910. By using the
0x9912 we were making the hardware unresponsive. This allows us
to move forward with hardware reset on ar9271 on the ath9k_htc
driver.

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
6420014ca4a6b0e853c9a19a8649d93682a5bdac 14-Sep-2009 Luis R. Rodriguez <lrodriguez@atheros.com> ath9k: remove ath9k 25 MHz HT40 spacing stuff

This was for supporting 25 MHz spacing for HT40, this is not used
as we use 20 MHz spacing instead for HT40 as per 802.11n. The hardware
is capable of it though so we leave the phymode definition and EEPROM
parsing for it. If some experimenter wants to work on this stuff stuff
you can add an extension enabling bool on ath_common and perhaps some
debugfs knob to enable it. Keep in mind you'll also need to update the
phymode with the AR_PHY_FC_DYN2040_EXT_CH which has been left on the
driver.

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
db91f2e4d410bf3011b3649b9257e5b3c60b25ff 14-Aug-2009 Vivek Natarajan <vivek.natraj@gmail.com> ath9k: Add open loop power control support for AR9287.

Signed-off-by: Vivek Natarajan <vnatarajan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
7f63845f2a5f54c64968a4221561c619468b8a54 07-Aug-2009 Sujith <Sujith.Manoharan@atheros.com> ath9k: Clean antenna configuration for 4K EEPROM chips

This patch revamps the antenna configuration mechanism
for 4K chips.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
066edc80ebd9e429d593dcfe97b3ed01c9823847 07-Aug-2009 Sujith <Sujith.Manoharan@atheros.com> ath9k: Add macros for Antenna Diversity

A subsequent patch would use these for configuring
antennae on AR9285.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
670388c5f56383e1d5b9f4f7fc835a280487754e 04-Aug-2009 Luis R. Rodriguez <lrodriguez@atheros.com> ath9k: add initvals and registry definitions for AR9271

Cc: Stephen Chen <stephen.chen@atheros.com>
Cc: Zhifeng Cai <zhifeng.cai@atheros.com>
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
ac88b6ecdfa629fd1261dab1504d78a56fd4cabf 23-Jul-2009 Vivek Natarajan <vivek.natraj@gmail.com> ath9k: Add support for AR9287 based chipsets.

Signed-off-by: Vivek Natarajan <vnatarajan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
8fbff4b838c53945d6baeafe609c627000f85cd6 09-May-2009 Vasanthakumar Thiagarajan <vasanth@atheros.com> ath9k: Cleanup ineffective return values

This patch makes the return type of some of the functions
void as those functions always return true

Signed-off-by: Vasanthakumar Thiagarajan <vasanth@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
203c4805e91786f9a010bc7945a0fde70c9da28e 31-Mar-2009 Luis R. Rodriguez <lrodriguez@atheros.com> atheros: put atheros wireless drivers into ath/

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>