diff options
author | Ivo van Doorn <ivdoorn@gmail.com> | 2008-07-09 09:12:06 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-07-14 14:52:56 -0400 |
commit | e360c4cb2bc2fb2a37981809685984efe8433c52 (patch) | |
tree | bd3a378a0f50d010e6fe13e587377485471f641e | |
parent | 9d139c810a2aa17365cc548d0cd2a189d8433c65 (diff) |
rt2x00: Add support for CTS protection in rt2x00lib
Inform drivers about the changed CTS protection settings.
Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r-- | drivers/net/wireless/rt2x00/rt2x00.h | 1 | ||||
-rw-r--r-- | drivers/net/wireless/rt2x00/rt2x00config.c | 2 | ||||
-rw-r--r-- | drivers/net/wireless/rt2x00/rt2x00mac.c | 2 |
3 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00.h b/drivers/net/wireless/rt2x00/rt2x00.h index 9ad3ce43e6cd..b32fedf4a1b9 100644 --- a/drivers/net/wireless/rt2x00/rt2x00.h +++ b/drivers/net/wireless/rt2x00/rt2x00.h | |||
@@ -434,6 +434,7 @@ struct rt2x00lib_conf { | |||
434 | */ | 434 | */ |
435 | struct rt2x00lib_erp { | 435 | struct rt2x00lib_erp { |
436 | int short_preamble; | 436 | int short_preamble; |
437 | int cts_protection; | ||
437 | 438 | ||
438 | int ack_timeout; | 439 | int ack_timeout; |
439 | int ack_consume_time; | 440 | int ack_consume_time; |
diff --git a/drivers/net/wireless/rt2x00/rt2x00config.c b/drivers/net/wireless/rt2x00/rt2x00config.c index 48608e8cc8b4..f20ca712504f 100644 --- a/drivers/net/wireless/rt2x00/rt2x00config.c +++ b/drivers/net/wireless/rt2x00/rt2x00config.c | |||
@@ -84,6 +84,8 @@ void rt2x00lib_config_erp(struct rt2x00_dev *rt2x00dev, | |||
84 | memset(&erp, 0, sizeof(erp)); | 84 | memset(&erp, 0, sizeof(erp)); |
85 | 85 | ||
86 | erp.short_preamble = bss_conf->use_short_preamble; | 86 | erp.short_preamble = bss_conf->use_short_preamble; |
87 | erp.cts_protection = bss_conf->use_cts_prot; | ||
88 | |||
87 | erp.ack_timeout = PLCP + get_duration(ACK_SIZE, 10); | 89 | erp.ack_timeout = PLCP + get_duration(ACK_SIZE, 10); |
88 | erp.ack_consume_time = SIFS + PLCP + get_duration(ACK_SIZE, 10); | 90 | erp.ack_consume_time = SIFS + PLCP + get_duration(ACK_SIZE, 10); |
89 | 91 | ||
diff --git a/drivers/net/wireless/rt2x00/rt2x00mac.c b/drivers/net/wireless/rt2x00/rt2x00mac.c index 84b51f49175e..ff853c430bdf 100644 --- a/drivers/net/wireless/rt2x00/rt2x00mac.c +++ b/drivers/net/wireless/rt2x00/rt2x00mac.c | |||
@@ -511,7 +511,7 @@ void rt2x00mac_bss_info_changed(struct ieee80211_hw *hw, | |||
511 | * When the erp information has changed, we should perform | 511 | * When the erp information has changed, we should perform |
512 | * additional configuration steps. For all other changes we are done. | 512 | * additional configuration steps. For all other changes we are done. |
513 | */ | 513 | */ |
514 | if (changes & BSS_CHANGED_ERP_PREAMBLE) { | 514 | if (changes & (BSS_CHANGED_ERP_PREAMBLE | BSS_CHANGED_ERP_CTS_PROT)) { |
515 | if (!test_bit(DRIVER_REQUIRE_SCHEDULED, &rt2x00dev->flags)) | 515 | if (!test_bit(DRIVER_REQUIRE_SCHEDULED, &rt2x00dev->flags)) |
516 | rt2x00lib_config_erp(rt2x00dev, intf, bss_conf); | 516 | rt2x00lib_config_erp(rt2x00dev, intf, bss_conf); |
517 | else | 517 | else |