Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4cb54fa3 authored by Sujith Manoharan's avatar Sujith Manoharan Committed by John W. Linville
Browse files

ath9k: Remove SC_OP_OFFCHANNEL



mac80211's IEEE80211_CONF_OFFCHANNEL can be used directly
to track offchannel state. Also pass the correct boolean
value to ath9k_hw_startpcureceive().

Signed-off-by: default avatarSujith Manoharan <c_manoha@qca.qualcomm.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 2fd5d35b
Loading
Loading
Loading
Loading
+6 −7
Original line number Diff line number Diff line
@@ -586,13 +586,12 @@ struct ath_ant_comb {

#define SC_OP_INVALID                BIT(0)
#define SC_OP_BEACONS                BIT(1)
#define SC_OP_OFFCHANNEL             BIT(2)
#define SC_OP_RXFLUSH                BIT(3)
#define SC_OP_TSF_RESET              BIT(4)
#define SC_OP_BT_PRIORITY_DETECTED   BIT(5)
#define SC_OP_BT_SCAN                BIT(6)
#define SC_OP_ANI_RUN                BIT(7)
#define SC_OP_PRIM_STA_VIF           BIT(8)
#define SC_OP_RXFLUSH                BIT(2)
#define SC_OP_TSF_RESET              BIT(3)
#define SC_OP_BT_PRIORITY_DETECTED   BIT(4)
#define SC_OP_BT_SCAN                BIT(5)
#define SC_OP_ANI_RUN                BIT(6)
#define SC_OP_PRIM_STA_VIF           BIT(7)

/* Powersave flags */
#define PS_WAIT_FOR_BEACON        BIT(0)
+3 −8
Original line number Diff line number Diff line
@@ -152,7 +152,7 @@ void ath_start_ani(struct ath_common *common)
	if (!(sc->sc_flags & SC_OP_ANI_RUN))
		return;

	if (sc->sc_flags & SC_OP_OFFCHANNEL)
	if (sc->hw->conf.flags & IEEE80211_CONF_OFFCHANNEL)
		return;

	common->ani.longcal_timer = timestamp;
@@ -282,7 +282,7 @@ static bool ath_complete_reset(struct ath_softc *sc, bool start)
	ath9k_hw_set_interrupts(ah);
	ath9k_hw_enable_interrupts(ah);

	if (!(sc->sc_flags & (SC_OP_OFFCHANNEL)) && start) {
	if (!(sc->hw->conf.flags & IEEE80211_CONF_OFFCHANNEL) && start) {
		if (sc->sc_flags & SC_OP_BEACONS)
			ath_set_beacon(sc);

@@ -328,7 +328,7 @@ static int ath_reset_internal(struct ath_softc *sc, struct ath9k_channel *hchan,

	spin_lock_bh(&sc->sc_pcu_lock);

	if (!(sc->sc_flags & SC_OP_OFFCHANNEL)) {
	if (!(sc->hw->conf.flags & IEEE80211_CONF_OFFCHANNEL)) {
		fastcc = false;
		caldata = &sc->caldata;
	}
@@ -1626,11 +1626,6 @@ static int ath9k_config(struct ieee80211_hw *hw, u32 changed)
		if (ah->curchan)
			old_pos = ah->curchan - &ah->channels[0];

		if (hw->conf.flags & IEEE80211_CONF_OFFCHANNEL)
			sc->sc_flags |= SC_OP_OFFCHANNEL;
		else
			sc->sc_flags &= ~SC_OP_OFFCHANNEL;

		ath_dbg(common, CONFIG, "Set channel: %d MHz type: %d\n",
			curchan->center_freq, conf->channel_type);

+2 −2
Original line number Diff line number Diff line
@@ -303,7 +303,7 @@ static void ath_edma_start_recv(struct ath_softc *sc)

	ath_opmode_init(sc);

	ath9k_hw_startpcureceive(sc->sc_ah, (sc->sc_flags & SC_OP_OFFCHANNEL));
	ath9k_hw_startpcureceive(sc->sc_ah, !!(sc->hw->conf.flags & IEEE80211_CONF_OFFCHANNEL));

	spin_unlock_bh(&sc->rx.rxbuflock);
}
@@ -500,7 +500,7 @@ int ath_startrecv(struct ath_softc *sc)

start_recv:
	ath_opmode_init(sc);
	ath9k_hw_startpcureceive(ah, (sc->sc_flags & SC_OP_OFFCHANNEL));
	ath9k_hw_startpcureceive(ah, !!(sc->hw->conf.flags & IEEE80211_CONF_OFFCHANNEL));

	spin_unlock_bh(&sc->rx.rxbuflock);