diff options
author | Felix Fietkau <nbd@openwrt.org> | 2014-06-11 06:47:55 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2014-06-19 15:49:17 -0400 |
commit | 78b21949711ee3c877f1aab5b51abe1981e1161d (patch) | |
tree | 317ab473cd8a8ca5a96fdd000a5fc70a644868be /drivers/net/wireless/ath/ath9k/init.c | |
parent | c083ce9980109065297aa2171d18980a0ac92bb9 (diff) |
ath9k: Implement hw_scan support
Implement hw_scan support for enabling multi-channel cuncurrency.
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Rajkumar Manoharan <rmanohar@qti.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/init.c')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/init.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/net/wireless/ath/ath9k/init.c b/drivers/net/wireless/ath/ath9k/init.c index 8bd3e422b82b..9f5e1e4931af 100644 --- a/drivers/net/wireless/ath/ath9k/init.c +++ b/drivers/net/wireless/ath/ath9k/init.c | |||
@@ -61,7 +61,7 @@ static int ath9k_ps_enable; | |||
61 | module_param_named(ps_enable, ath9k_ps_enable, int, 0444); | 61 | module_param_named(ps_enable, ath9k_ps_enable, int, 0444); |
62 | MODULE_PARM_DESC(ps_enable, "Enable WLAN PowerSave"); | 62 | MODULE_PARM_DESC(ps_enable, "Enable WLAN PowerSave"); |
63 | 63 | ||
64 | static int ath9k_use_chanctx; | 64 | int ath9k_use_chanctx; |
65 | module_param_named(use_chanctx, ath9k_use_chanctx, int, 0444); | 65 | module_param_named(use_chanctx, ath9k_use_chanctx, int, 0444); |
66 | MODULE_PARM_DESC(use_chanctx, "Enable channel context for concurrency"); | 66 | MODULE_PARM_DESC(use_chanctx, "Enable channel context for concurrency"); |
67 | 67 | ||
@@ -566,6 +566,8 @@ static int ath9k_init_softc(u16 devid, struct ath_softc *sc, | |||
566 | INIT_WORK(&sc->paprd_work, ath_paprd_calibrate); | 566 | INIT_WORK(&sc->paprd_work, ath_paprd_calibrate); |
567 | INIT_WORK(&sc->chanctx_work, ath_chanctx_work); | 567 | INIT_WORK(&sc->chanctx_work, ath_chanctx_work); |
568 | INIT_DELAYED_WORK(&sc->hw_pll_work, ath_hw_pll_work); | 568 | INIT_DELAYED_WORK(&sc->hw_pll_work, ath_hw_pll_work); |
569 | setup_timer(&sc->offchannel.timer, ath_offchannel_timer, | ||
570 | (unsigned long)sc); | ||
569 | 571 | ||
570 | /* | 572 | /* |
571 | * Cache line size is used to size and align various | 573 | * Cache line size is used to size and align various |
@@ -745,8 +747,11 @@ static void ath9k_set_hw_capab(struct ath_softc *sc, struct ieee80211_hw *hw) | |||
745 | if (!ath9k_use_chanctx) { | 747 | if (!ath9k_use_chanctx) { |
746 | hw->wiphy->n_iface_combinations = ARRAY_SIZE(if_comb); | 748 | hw->wiphy->n_iface_combinations = ARRAY_SIZE(if_comb); |
747 | hw->wiphy->interface_modes |= BIT(NL80211_IFTYPE_WDS); | 749 | hw->wiphy->interface_modes |= BIT(NL80211_IFTYPE_WDS); |
748 | } else | 750 | } else { |
749 | hw->wiphy->n_iface_combinations = 1; | 751 | hw->wiphy->n_iface_combinations = 1; |
752 | hw->wiphy->max_scan_ssids = 255; | ||
753 | hw->wiphy->max_scan_ie_len = IEEE80211_MAX_DATA_LEN; | ||
754 | } | ||
750 | } | 755 | } |
751 | 756 | ||
752 | hw->wiphy->flags &= ~WIPHY_FLAG_PS_ON_BY_DEFAULT; | 757 | hw->wiphy->flags &= ~WIPHY_FLAG_PS_ON_BY_DEFAULT; |