mirror of
https://github.com/torvalds/linux.git
synced 2026-06-01 19:13:47 +02:00
wifi: mt76: mt7996: update register for CFEND_RATE
In newer chipsets, CFEND_RATE setting has been moved to different hw
module.
Fixes: 98686cd216 ("wifi: mt76: mt7996: add driver for MediaTek Wi-Fi 7 (802.11be) devices")
Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
parent
eb1fdb9f5a
commit
793445cf81
|
|
@ -1690,7 +1690,7 @@ void mt7996_mac_set_timing(struct mt7996_phy *phy)
|
|||
else
|
||||
val = MT7996_CFEND_RATE_11B;
|
||||
|
||||
mt76_rmw_field(dev, MT_AGG_ACR0(band_idx), MT_AGG_ACR_CFEND_RATE, val);
|
||||
mt76_rmw_field(dev, MT_RATE_HRCR0(band_idx), MT_RATE_HRCR0_CFEND_RATE, val);
|
||||
mt76_clear(dev, MT_ARB_SCR(band_idx),
|
||||
MT_ARB_SCR_TX_DISABLE | MT_ARB_SCR_RX_DISABLE);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,6 +21,7 @@ static const struct __base mt7996_reg_base[] = {
|
|||
[WF_ETBF_BASE] = { { 0x820ea000, 0x820fa000, 0x830ea000 } },
|
||||
[WF_LPON_BASE] = { { 0x820eb000, 0x820fb000, 0x830eb000 } },
|
||||
[WF_MIB_BASE] = { { 0x820ed000, 0x820fd000, 0x830ed000 } },
|
||||
[WF_RATE_BASE] = { { 0x820ee000, 0x820fe000, 0x830ee000 } },
|
||||
};
|
||||
|
||||
static const struct __map mt7996_reg_map[] = {
|
||||
|
|
|
|||
|
|
@ -33,6 +33,7 @@ enum base_rev {
|
|||
WF_ETBF_BASE,
|
||||
WF_LPON_BASE,
|
||||
WF_MIB_BASE,
|
||||
WF_RATE_BASE,
|
||||
__MT_REG_BASE_MAX,
|
||||
};
|
||||
|
||||
|
|
@ -235,13 +236,6 @@ enum base_rev {
|
|||
FIELD_PREP(MT_WTBL_LMAC_ID, _id) | \
|
||||
FIELD_PREP(MT_WTBL_LMAC_DW, _dw))
|
||||
|
||||
/* AGG: band 0(0x820e2000), band 1(0x820f2000), band 2(0x830e2000) */
|
||||
#define MT_WF_AGG_BASE(_band) __BASE(WF_AGG_BASE, (_band))
|
||||
#define MT_WF_AGG(_band, ofs) (MT_WF_AGG_BASE(_band) + (ofs))
|
||||
|
||||
#define MT_AGG_ACR0(_band) MT_WF_AGG(_band, 0x054)
|
||||
#define MT_AGG_ACR_CFEND_RATE GENMASK(13, 0)
|
||||
|
||||
/* ARB: band 0(0x820e3000), band 1(0x820f3000), band 2(0x830e3000) */
|
||||
#define MT_WF_ARB_BASE(_band) __BASE(WF_ARB_BASE, (_band))
|
||||
#define MT_WF_ARB(_band, ofs) (MT_WF_ARB_BASE(_band) + (ofs))
|
||||
|
|
@ -300,6 +294,13 @@ enum base_rev {
|
|||
#define MT_WF_RMAC_RSVD0(_band) MT_WF_RMAC(_band, 0x03e0)
|
||||
#define MT_WF_RMAC_RSVD0_EIFS_CLR BIT(21)
|
||||
|
||||
/* RATE: band 0(0x820ee000), band 1(0x820fe000), band 2(0x830ee000) */
|
||||
#define MT_WF_RATE_BASE(_band) __BASE(WF_RATE_BASE, (_band))
|
||||
#define MT_WF_RATE(_band, ofs) (MT_WF_RATE_BASE(_band) + (ofs))
|
||||
|
||||
#define MT_RATE_HRCR0(_band) MT_WF_RATE(_band, 0x050)
|
||||
#define MT_RATE_HRCR0_CFEND_RATE GENMASK(14, 0)
|
||||
|
||||
/* WFDMA0 */
|
||||
#define MT_WFDMA0_BASE 0xd4000
|
||||
#define MT_WFDMA0(ofs) (MT_WFDMA0_BASE + (ofs))
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user