Commit 1e232a9f authored by Chad Monroe's avatar Chad Monroe Committed by Felix Fietkau
Browse files

wifi: mt76: mt7996: exclude tx backoff time from airtime



This helps to make STA airtime counters more accurate.

Signed-off-by: default avatarChad Monroe <chad@monroe.io>
Suggested-by: default avatarRyder Lee <ryder.lee@mediatek.com>
Link: https://patch.msgid.link/88821d8f08e2715927939b35e630a06171962636.1732653612.git.chad@monroe.io


Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
parent c693723b
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -457,6 +457,10 @@ mt7996_mac_init_band(struct mt7996_dev *dev, u8 band)
	mt76_clear(dev, MT_WF_RMAC_MIB_AIRTIME4(band),
		   MT_WF_RMAC_MIB_QOS23_BACKOFF);

	/* clear backoff time for Tx duration */
	mt76_clear(dev, MT_WTBLOFF_ACR(band),
		   MT_WTBLOFF_ADM_BACKOFFTIME);

	/* clear backoff time and set software compensation for OBSS time */
	mask = MT_WF_RMAC_MIB_OBSS_BACKOFF | MT_WF_RMAC_MIB_ED_OFFSET;
	set = FIELD_PREP(MT_WF_RMAC_MIB_OBSS_BACKOFF, 0) |
+3 −0
Original line number Diff line number Diff line
@@ -175,6 +175,9 @@ enum offs_rev {
#define MT_WTBLOFF_RSCR_RCPI_MODE		GENMASK(31, 30)
#define MT_WTBLOFF_RSCR_RCPI_PARAM		GENMASK(25, 24)

#define MT_WTBLOFF_ACR(_band)			MT_WTBLOFF(_band, 0x010)
#define MT_WTBLOFF_ADM_BACKOFFTIME		BIT(29)

/* ETBF: band 0(0x820ea000), band 1(0x820fa000), band 2(0x830ea000) */
#define MT_WF_ETBF_BASE(_band)			__BASE(WF_ETBF_BASE, (_band))
#define MT_WF_ETBF(_band, ofs)			(MT_WF_ETBF_BASE(_band) + (ofs))