rt2x00: Remove last usage of beacon_int from ieee80211_config
This removes the last usage of beacon_int inside the iee80211_config structure from rt2x00. The attempt is a bit hackish, and subject to change in the future when the entire rt2x00_dev structure is cleaned up and restructured.
Signed-off-by Ivo van Doorn <[email protected]>
--- drivers/net/wireless/rt2x00/rt2400pci.c | 2 +- drivers/net/wireless/rt2x00/rt2500pci.c | 2 +- drivers/net/wireless/rt2x00/rt2500usb.c | 2 +- drivers/net/wireless/rt2x00/rt2x00.h | 5 +++++ drivers/net/wireless/rt2x00/rt2x00config.c | 3 +++ drivers/net/wireless/rt2x00/rt61pci.c | 2 +- drivers/net/wireless/rt2x00/rt73usb.c | 2 +- 7 files changed, 13 insertions(+), 5 deletions(-)
drivers/net/wireless/rt2x00/rt2400pci.c +1 -1
@@ -520,7 +520,7 @@ static void rt2400pci_config_ps(struct rt2x00_dev *rt2x00dev,if (state ==STATE_SLEEP ) {rt2x00pci_register_read (rt2x00dev,CSR20 , ®);rt2x00_set_field32 (®,CSR20_DELAY_AFTER_TBCN , - (libconf->conf->beacon_int -20 ) *16 ); + (rt2x00dev->beacon_int -20 ) *16 );rt2x00_set_field32 (®,CSR20_TBCN_BEFORE_WAKEUP , libconf->conf->listen_interval -1 );
drivers/net/wireless/rt2x00/rt2500pci.c +1 -1
@@ -569,7 +569,7 @@ static void rt2500pci_config_ps(struct rt2x00_dev *rt2x00dev,if (state ==STATE_SLEEP ) {rt2x00pci_register_read (rt2x00dev,CSR20 , ®);rt2x00_set_field32 (®,CSR20_DELAY_AFTER_TBCN , - (libconf->conf->beacon_int -20 ) *16 ); + (rt2x00dev->beacon_int -20 ) *16 );rt2x00_set_field32 (®,CSR20_TBCN_BEFORE_WAKEUP , libconf->conf->listen_interval -1 );
drivers/net/wireless/rt2x00/rt2500usb.c +1 -1
@@ -647,7 +647,7 @@ static void rt2500usb_config_ps(struct rt2x00_dev *rt2x00dev,if (state ==STATE_SLEEP ) {rt2500usb_register_read (rt2x00dev,MAC_CSR18 , ®);rt2x00_set_field16 (®,MAC_CSR18_DELAY_AFTER_BEACON , - libconf->conf->beacon_int -20 ); + rt2x00dev->beacon_int -20 );rt2x00_set_field16 (®,MAC_CSR18_BEACONS_BEFORE_WAKEUP , libconf->conf->listen_interval -1 );
drivers/net/wireless/rt2x00/rt2x00.h +5 -0
@@ -808,6 +808,11 @@ struct rt2x00_dev {u8 calibration[2 ];/* +* Beacon interval. +*/ +u16 beacon_int; + +/* * Low level statistics which will have * to be kept up to date while device is running. */
drivers/net/wireless/rt2x00/rt2x00config.c +3 -0
@@ -108,6 +108,9 @@ void rt2x00lib_config_erp(struct rt2x00_dev *rt2x00dev, erp.basic_rates = bss_conf->basic_rates; erp.beacon_int = bss_conf->beacon_int; +/* Update global beacon interval time, this is needed for PS support */ + rt2x00dev->beacon_int = bss_conf->beacon_int; + rt2x00dev->ops->lib->config_erp (rt2x00dev, &erp); }
drivers/net/wireless/rt2x00/rt61pci.c +1 -1
@@ -956,7 +956,7 @@ static void rt61pci_config_ps(struct rt2x00_dev *rt2x00dev,if (state ==STATE_SLEEP ) {rt2x00pci_register_read (rt2x00dev,MAC_CSR11 , ®);rt2x00_set_field32 (®,MAC_CSR11_DELAY_AFTER_TBCN , - libconf->conf->beacon_int -10 ); + rt2x00dev->beacon_int -10 );rt2x00_set_field32 (®,MAC_CSR11_TBCN_BEFORE_WAKEUP , libconf->conf->listen_interval -1 );rt2x00_set_field32 (®,MAC_CSR11_WAKEUP_LATENCY ,5 );
drivers/net/wireless/rt2x00/rt73usb.c +1 -1
@@ -852,7 +852,7 @@ static void rt73usb_config_ps(struct rt2x00_dev *rt2x00dev,if (state ==STATE_SLEEP ) {rt2x00usb_register_read (rt2x00dev,MAC_CSR11 , ®);rt2x00_set_field32 (®,MAC_CSR11_DELAY_AFTER_TBCN , - libconf->conf->beacon_int -10 ); + rt2x00dev->beacon_int -10 );rt2x00_set_field32 (®,MAC_CSR11_TBCN_BEFORE_WAKEUP , libconf->conf->listen_interval -1 );rt2x00_set_field32 (®,MAC_CSR11_WAKEUP_LATENCY ,5 );
Signature · 1 line
1.6.3