Commit 3cf3e01b authored by Lorenzo Bianconi's avatar Lorenzo Bianconi Committed by Felix Fietkau

mt76: connac: add 6GHz support to mt76_connac_mcu_uni_add_bss

This is a preliminary patch to enable 6GHz band for mt7921 devices.
Tested-by: default avatarDeren Wu <deren.wu@mediatek.com>
Signed-off-by: default avatarLorenzo Bianconi <lorenzo@kernel.org>
Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
parent 5883892b
...@@ -1292,7 +1292,8 @@ int mt76_connac_mcu_uni_add_bss(struct mt76_phy *phy, ...@@ -1292,7 +1292,8 @@ int mt76_connac_mcu_uni_add_bss(struct mt76_phy *phy,
u8 short_st; u8 short_st;
u8 ht_op_info; u8 ht_op_info;
u8 sco; u8 sco;
u8 pad[3]; u8 band;
u8 pad[2];
} __packed rlm; } __packed rlm;
} __packed rlm_req = { } __packed rlm_req = {
.hdr = { .hdr = {
...@@ -1308,13 +1309,19 @@ int mt76_connac_mcu_uni_add_bss(struct mt76_phy *phy, ...@@ -1308,13 +1309,19 @@ int mt76_connac_mcu_uni_add_bss(struct mt76_phy *phy,
.ht_op_info = 4, /* set HT 40M allowed */ .ht_op_info = 4, /* set HT 40M allowed */
.rx_streams = phy->chainmask, .rx_streams = phy->chainmask,
.short_st = true, .short_st = true,
.band = band,
}, },
}; };
int err, conn_type; int err, conn_type;
u8 idx; u8 idx, basic_phy;
idx = mvif->omac_idx > EXT_BSSID_START ? HW_BSSID_0 : mvif->omac_idx; idx = mvif->omac_idx > EXT_BSSID_START ? HW_BSSID_0 : mvif->omac_idx;
basic_req.basic.hw_bss_idx = idx; basic_req.basic.hw_bss_idx = idx;
if (band == NL80211_BAND_6GHZ)
basic_req.basic.phymode_ext = BIT(0);
basic_phy = mt76_connac_get_phy_mode_v2(phy, vif, band, NULL);
basic_req.basic.nonht_basic_phy = cpu_to_le16(basic_phy);
switch (vif->type) { switch (vif->type) {
case NL80211_IFTYPE_MESH_POINT: case NL80211_IFTYPE_MESH_POINT:
......
...@@ -668,10 +668,14 @@ struct mt76_connac_bss_basic_tlv { ...@@ -668,10 +668,14 @@ struct mt76_connac_bss_basic_tlv {
* bit(3): GN * bit(3): GN
* bit(4): AN * bit(4): AN
* bit(5): AC * bit(5): AC
* bit(6): AX2
* bit(7): AX5
* bit(8): AX6
*/ */
__le16 sta_idx; __le16 sta_idx;
u8 nonht_basic_phy; __le16 nonht_basic_phy;
u8 pad[3]; u8 phymode_ext; /* bit(0) AX_6G */
u8 pad[1];
} __packed; } __packed;
struct mt76_connac_bss_qos_tlv { struct mt76_connac_bss_qos_tlv {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment