aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/rt2x00/rt2x00.h
diff options
context:
space:
mode:
authorHelmut Schaa <helmut.schaa@googlemail.com>2011-03-28 07:33:40 -0400
committerJohn W. Linville <linville@tuxdriver.com>2011-04-04 16:20:03 -0400
commit9e33a3553821418b2c4f53d09311476c55176b13 (patch)
treefa0538ca1775be5b598949b2418721268e0ece53 /drivers/net/wireless/rt2x00/rt2x00.h
parent2f2bb7e8bdc977c94cdaaf84328526555eba89b1 (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.h6
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
353enum rt2x00_delayed_flags { 358enum 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.