Lines Matching refs:offchannel

56 	if (!sc->cur_chan->offchannel && sc->cur_survey != &sc->survey[pos]) {  in ath_set_channel()
240 if (ctx == &sc->offchannel.chan) { in ath_chanctx_check_active()
516 sc->next_chan = &sc->offchannel.chan; in ath_chanctx_event()
576 if (sc->next_chan == &sc->offchannel.chan) { in ath_chanctx_event()
655 sc->cur_chan == &sc->offchannel.chan) in ath_chanctx_event()
693 sc->cur_chan == &sc->offchannel.chan) in ath_chanctx_event()
724 if (sc->cur_chan == &sc->offchannel.chan || in ath_chanctx_event()
734 sc->next_chan != &sc->offchannel.chan) in ath_chanctx_event()
772 struct cfg80211_scan_request *req = sc->offchannel.scan_req; in ath_scan_channel_duration()
788 (sc->cur_chan != ctx) && (ctx == &sc->offchannel.chan)) { in ath_chanctx_switch()
795 jiffies_to_usecs(sc->offchannel.duration) + in ath_chanctx_switch()
811 if (sc->next_chan == &sc->offchannel.chan) { in ath_chanctx_switch()
813 jiffies_to_usecs(sc->offchannel.duration) + in ath_chanctx_switch()
837 ath_chanctx_switch(sc, &sc->offchannel.chan, &chandef); in ath_chanctx_offchan_switch()
862 struct cfg80211_scan_request *req = sc->offchannel.scan_req; in ath_scan_next_channel()
865 if (sc->offchannel.scan_idx >= req->n_channels) { in ath_scan_next_channel()
869 sc->offchannel.scan_idx, in ath_scan_next_channel()
872 sc->offchannel.state = ATH_OFFCHANNEL_IDLE; in ath_scan_next_channel()
880 sc->offchannel.scan_idx); in ath_scan_next_channel()
882 chan = req->channels[sc->offchannel.scan_idx++]; in ath_scan_next_channel()
883 sc->offchannel.duration = ath_scan_channel_duration(sc, chan); in ath_scan_next_channel()
884 sc->offchannel.state = ATH_OFFCHANNEL_PROBE_SEND; in ath_scan_next_channel()
893 if (sc->offchannel.scan_req) { in ath_offchannel_next()
894 vif = sc->offchannel.scan_vif; in ath_offchannel_next()
895 sc->offchannel.chan.txpower = vif->bss_conf.txpower; in ath_offchannel_next()
897 } else if (sc->offchannel.roc_vif) { in ath_offchannel_next()
898 vif = sc->offchannel.roc_vif; in ath_offchannel_next()
899 sc->offchannel.chan.txpower = vif->bss_conf.txpower; in ath_offchannel_next()
900 sc->offchannel.duration = in ath_offchannel_next()
901 msecs_to_jiffies(sc->offchannel.roc_duration); in ath_offchannel_next()
902 sc->offchannel.state = ATH_OFFCHANNEL_ROC_START; in ath_offchannel_next()
903 ath_chanctx_offchan_switch(sc, sc->offchannel.roc_chan); in ath_offchannel_next()
912 sc->offchannel.state = ATH_OFFCHANNEL_IDLE; in ath_offchannel_next()
922 sc->offchannel.roc_vif = NULL; in ath_roc_complete()
923 sc->offchannel.roc_chan = NULL; in ath_roc_complete()
952 sc->offchannel.scan_req = NULL; in ath_scan_complete()
953 sc->offchannel.scan_vif = NULL; in ath_scan_complete()
954 sc->offchannel.state = ATH_OFFCHANNEL_IDLE; in ath_scan_complete()
968 struct cfg80211_scan_request *req = sc->offchannel.scan_req; in ath_scan_send_probe()
969 struct ieee80211_vif *vif = sc->offchannel.scan_vif; in ath_scan_send_probe()
973 int band = sc->offchannel.chan.chandef.chan->band; in ath_scan_send_probe()
1006 struct cfg80211_scan_request *req = sc->offchannel.scan_req; in ath_scan_channel_start()
1019 sc->offchannel.state = ATH_OFFCHANNEL_PROBE_WAIT; in ath_scan_channel_start()
1020 mod_timer(&sc->offchannel.timer, jiffies + sc->offchannel.duration); in ath_scan_channel_start()
1041 __func__, offchannel_state_string(sc->offchannel.state)); in ath_offchannel_timer()
1043 switch (sc->offchannel.state) { in ath_offchannel_timer()
1045 if (!sc->offchannel.scan_req) in ath_offchannel_timer()
1055 sc->offchannel.state = ATH_OFFCHANNEL_SUSPEND; in ath_offchannel_timer()
1057 mod_timer(&sc->offchannel.timer, jiffies + HZ / 10); in ath_offchannel_timer()
1062 if (!sc->offchannel.scan_req) in ath_offchannel_timer()
1069 sc->offchannel.state = ATH_OFFCHANNEL_ROC_DONE; in ath_offchannel_timer()
1144 if (sc->cur_chan == &sc->offchannel.chan) in ath_chanctx_defer_switch()
1171 __func__, offchannel_state_string(sc->offchannel.state)); in ath_offchannel_channel_change()
1173 switch (sc->offchannel.state) { in ath_offchannel_channel_change()
1175 if (!sc->offchannel.scan_req) in ath_offchannel_channel_change()
1179 sc->offchannel.chan.chandef.chan) in ath_offchannel_channel_change()
1185 if (!sc->offchannel.scan_req) in ath_offchannel_channel_change()
1191 if (sc->cur_chan != &sc->offchannel.chan) in ath_offchannel_channel_change()
1194 sc->offchannel.state = ATH_OFFCHANNEL_ROC_WAIT; in ath_offchannel_channel_change()
1195 mod_timer(&sc->offchannel.timer, in ath_offchannel_channel_change()
1196 jiffies + sc->offchannel.duration); in ath_offchannel_channel_change()
1239 if (sc->next_chan == &sc->offchannel.chan) { in ath_chanctx_set_next()
1256 if (sc->cur_chan != &sc->offchannel.chan) { in ath_chanctx_set_next()
1324 ctx = &sc->offchannel.chan; in ath9k_offchannel_init()
1332 sc->offchannel.chan.offchannel = true; in ath9k_offchannel_init()
1339 setup_timer(&sc->offchannel.timer, ath_offchannel_timer, in ath9k_init_channel_context()
1366 if (ctx == &sc->offchannel.chan) { in ath9k_chanctx_stop_queues()
1385 if (ctx == &sc->offchannel.chan) { in ath9k_chanctx_wake_queues()