diff options
author | Helmut Schaa <helmut.schaa@googlemail.com> | 2011-03-28 07:33:40 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-04-04 16:20:03 -0400 |
commit | 9e33a3553821418b2c4f53d09311476c55176b13 (patch) | |
tree | fa0538ca1775be5b598949b2418721268e0ece53 /drivers/net/wireless/rt2x00/rt2x00.h | |
parent | 2f2bb7e8bdc977c94cdaaf84328526555eba89b1 (diff) |
rt2x00: Implement tx power temperature compensation
rt2800 devices should adjust their tx power in accordance with the
eeproms temperature calibration values. Add a new driver callback
gain_calibration that is called every 4 seconds.
The rt2800 gain calibration routine simply runs the tx power
configuration that takes care of calculating the temperature
compensation delta.
We don't need to synchronize the calls to rt2800_config_txpower
as they should all happen from mac80211's single threaded workqueue.
Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2x00.h')
-rw-r--r-- | drivers/net/wireless/rt2x00/rt2x00.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00.h b/drivers/net/wireless/rt2x00/rt2x00.h index 60b1cb05a70d..dd0f66ade6e8 100644 --- a/drivers/net/wireless/rt2x00/rt2x00.h +++ b/drivers/net/wireless/rt2x00/rt2x00.h | |||
@@ -348,6 +348,11 @@ struct link { | |||
348 | * to bring the device/driver back into the desired state. | 348 | * to bring the device/driver back into the desired state. |
349 | */ | 349 | */ |
350 | struct delayed_work watchdog_work; | 350 | struct delayed_work watchdog_work; |
351 | |||
352 | /* | ||
353 | * Work structure for scheduling periodic AGC adjustments. | ||
354 | */ | ||
355 | struct delayed_work agc_work; | ||
351 | }; | 356 | }; |
352 | 357 | ||
353 | enum rt2x00_delayed_flags { | 358 | enum rt2x00_delayed_flags { |
@@ -556,6 +561,7 @@ struct rt2x00lib_ops { | |||
556 | struct link_qual *qual); | 561 | struct link_qual *qual); |
557 | void (*link_tuner) (struct rt2x00_dev *rt2x00dev, | 562 | void (*link_tuner) (struct rt2x00_dev *rt2x00dev, |
558 | struct link_qual *qual, const u32 count); | 563 | struct link_qual *qual, const u32 count); |
564 | void (*gain_calibration) (struct rt2x00_dev *rt2x00dev); | ||
559 | 565 | ||
560 | /* | 566 | /* |
561 | * Data queue handlers. | 567 | * Data queue handlers. |