mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-04-29 02:19:54 -04:00
mt76: mt76x02: add channel switch support for usb interfaces
This patch enables channel switch support on mt76 usb interfaces. Signed-off-by: Markus Theil <markus.theil@tu-ilmenau.de> Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
committed by
Felix Fietkau
parent
9446248669
commit
d3cc4e7640
@@ -216,6 +216,13 @@ static void mt76x02u_pre_tbtt_work(struct work_struct *work)
|
||||
IEEE80211_IFACE_ITER_RESUME_ALL,
|
||||
mt76x02_update_beacon_iter, dev);
|
||||
|
||||
mt76_csa_check(&dev->mt76);
|
||||
|
||||
if (dev->mt76.csa_complete) {
|
||||
mt76_csa_finish(&dev->mt76);
|
||||
goto out;
|
||||
}
|
||||
|
||||
nbeacons = hweight8(dev->mt76.beacon_mask);
|
||||
mt76x02_enqueue_buffered_bc(dev, &data, N_BCN_SLOTS - nbeacons);
|
||||
|
||||
@@ -224,6 +231,7 @@ static void mt76x02u_pre_tbtt_work(struct work_struct *work)
|
||||
mt76x02_mac_set_beacon(dev, skb);
|
||||
}
|
||||
|
||||
out:
|
||||
mt76_wr(dev, MT_BCN_BYPASS_MASK,
|
||||
0xff00 | ~(0xff00 >> dev->beacon_data_count));
|
||||
|
||||
|
||||
@@ -166,7 +166,6 @@ void mt76x02_init_device(struct mt76x02_dev *dev)
|
||||
wiphy->reg_notifier = mt76x02_regd_notifier;
|
||||
wiphy->iface_combinations = mt76x02_if_comb;
|
||||
wiphy->n_iface_combinations = ARRAY_SIZE(mt76x02_if_comb);
|
||||
wiphy->flags |= WIPHY_FLAG_HAS_CHANNEL_SWITCH;
|
||||
|
||||
/* init led callbacks */
|
||||
if (IS_ENABLED(CONFIG_MT76_LEDS)) {
|
||||
@@ -176,6 +175,7 @@ void mt76x02_init_device(struct mt76x02_dev *dev)
|
||||
}
|
||||
}
|
||||
|
||||
wiphy->flags |= WIPHY_FLAG_HAS_CHANNEL_SWITCH;
|
||||
wiphy_ext_feature_set(wiphy, NL80211_EXT_FEATURE_VHT_IBSS);
|
||||
|
||||
hw->sta_data_size = sizeof(struct mt76x02_sta);
|
||||
|
||||
Reference in New Issue
Block a user