]> Git Repo - linux.git/commitdiff
mt76: mt76x2: fix multi-interface beacon configuration
authorFelix Fietkau <[email protected]>
Mon, 1 Oct 2018 11:24:00 +0000 (13:24 +0200)
committerFelix Fietkau <[email protected]>
Mon, 1 Oct 2018 11:26:21 +0000 (13:26 +0200)
If the first virtual interface is a station (or an AP with beacons
temporarily disabled), the beacon of the second interface needs to
occupy hardware beacon slot 0.
For some reason the beacon index was incorrectly masked with the
virtual interface beacon mask, which prevents the secondary
interface from sending beacons unless the first one also does.

Cc: [email protected]
Signed-off-by: Felix Fietkau <[email protected]>
drivers/net/wireless/mediatek/mt76/mt76x2_mac.c

index 25ce8fcbb873d3fbae77bdd25767a351c10fe934..bb9c0a059a6e9cdb2138b476aa62195617ddc0af 100644 (file)
@@ -129,8 +129,7 @@ __mt76x2_mac_set_beacon(struct mt76x2_dev *dev, u8 bcn_idx, struct sk_buff *skb)
        if (skb) {
                ret = mt76_write_beacon(dev, beacon_addr, skb);
                if (!ret)
-                       dev->beacon_data_mask |= BIT(bcn_idx) &
-                                                dev->beacon_mask;
+                       dev->beacon_data_mask |= BIT(bcn_idx);
        } else {
                dev->beacon_data_mask &= ~BIT(bcn_idx);
                for (i = 0; i < beacon_len; i += 4)
This page took 0.059593 seconds and 4 git commands to generate.