aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath9k/main.c
diff options
context:
space:
mode:
authorJouni Malinen <jouni.malinen@atheros.com>2009-03-03 12:23:39 -0500
committerJohn W. Linville <linville@tuxdriver.com>2009-03-05 14:39:48 -0500
commitf98c3bd24161e9aaa73b9cd4dc6b1742c085ac17 (patch)
tree82a34790535b773f8d2d6b59a715385dc40b3ef9 /drivers/net/wireless/ath9k/main.c
parent8089cc47ed45df8f5a44f92f53140e6fd0958409 (diff)
ath9k: Add a simple virtual wiphy scheduler
This is a very simple scheduler that goes through the wiphys and schedules one at a time every N milliseconds (current default value: 500 ms). This is enough for initial testing, but there are number of areas where a more complex scheduler can improve operations greatly. Signed-off-by: Jouni Malinen <jouni.malinen@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath9k/main.c')
-rw-r--r--drivers/net/wireless/ath9k/main.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath9k/main.c b/drivers/net/wireless/ath9k/main.c
index 626392241d4..f473fee72a2 100644
--- a/drivers/net/wireless/ath9k/main.c
+++ b/drivers/net/wireless/ath9k/main.c
@@ -1325,6 +1325,7 @@ void ath_detach(struct ath_softc *sc)
1325#endif 1325#endif
1326 ath_deinit_leds(sc); 1326 ath_deinit_leds(sc);
1327 cancel_work_sync(&sc->chan_work); 1327 cancel_work_sync(&sc->chan_work);
1328 cancel_delayed_work_sync(&sc->wiphy_work);
1328 1329
1329 for (i = 0; i < sc->num_sec_wiphy; i++) { 1330 for (i = 0; i < sc->num_sec_wiphy; i++) {
1330 struct ath_wiphy *aphy = sc->sec_wiphy[i]; 1331 struct ath_wiphy *aphy = sc->sec_wiphy[i];
@@ -1672,6 +1673,8 @@ int ath_attach(u16 devid, struct ath_softc *sc)
1672 ath9k_reg_apply_world_flags(hw->wiphy, REGDOM_SET_BY_INIT); 1673 ath9k_reg_apply_world_flags(hw->wiphy, REGDOM_SET_BY_INIT);
1673 1674
1674 INIT_WORK(&sc->chan_work, ath9k_wiphy_chan_work); 1675 INIT_WORK(&sc->chan_work, ath9k_wiphy_chan_work);
1676 INIT_DELAYED_WORK(&sc->wiphy_work, ath9k_wiphy_work);
1677 sc->wiphy_scheduler_int = msecs_to_jiffies(500);
1675 1678
1676 error = ieee80211_register_hw(hw); 1679 error = ieee80211_register_hw(hw);
1677 1680