ath9k: Add a function to check for an active GO

Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
Sujith Manoharan 2014-10-17 07:40:21 +05:30 committed by John W. Linville
parent 62ae1aef20
commit 26103b8d1d
2 changed files with 31 additions and 0 deletions

View File

@ -469,6 +469,7 @@ void ath_chanctx_set_next(struct ath_softc *sc, bool force);
void ath_offchannel_next(struct ath_softc *sc);
void ath_scan_complete(struct ath_softc *sc, bool abort);
void ath_roc_complete(struct ath_softc *sc, bool abort);
struct ath_chanctx* ath_is_go_chanctx_present(struct ath_softc *sc);
#else

View File

@ -146,6 +146,36 @@ void ath_chanctx_set_channel(struct ath_softc *sc, struct ath_chanctx *ctx,
#ifdef CONFIG_ATH9K_CHANNEL_CONTEXT
/*************/
/* Utilities */
/*************/
struct ath_chanctx* ath_is_go_chanctx_present(struct ath_softc *sc)
{
struct ath_chanctx *ctx;
struct ath_vif *avp;
struct ieee80211_vif *vif;
spin_lock_bh(&sc->chan_lock);
ath_for_each_chanctx(sc, ctx) {
if (!ctx->active)
continue;
list_for_each_entry(avp, &ctx->vifs, list) {
vif = avp->vif;
if (ieee80211_vif_type_p2p(vif) == NL80211_IFTYPE_P2P_GO) {
spin_unlock_bh(&sc->chan_lock);
return ctx;
}
}
}
spin_unlock_bh(&sc->chan_lock);
return NULL;
}
/**********************************************************/
/* Functions to handle the channel context state machine. */
/**********************************************************/