From: Lorenzo Bianconi Date: Thu, 14 Dec 2017 15:39:18 +0000 (+0100) Subject: mt76x2: init: fix rx filter default value during init X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=a86af66f9b0cacd8e9e6a8fd9e7cf9db624765be;p=linux.git mt76x2: init: fix rx filter default value during init mt76x2_mac_start writes dev->rxfilter to the hardware. It also happens during init, before dev->rxfilter is filled with the initval register value, leading to issues like promisc mode being enabled unconditionally. Fix this by reading the default value into dev->rxfilter earlier Signed-off-by: Lorenzo Bianconi Signed-off-by: Felix Fietkau Signed-off-by: Kalle Valo --- diff --git a/drivers/net/wireless/mediatek/mt76/mt76x2_init.c b/drivers/net/wireless/mediatek/mt76/mt76x2_init.c index 160a8c40ce9b9..4373a2ba5143a 100644 --- a/drivers/net/wireless/mediatek/mt76/mt76x2_init.c +++ b/drivers/net/wireless/mediatek/mt76/mt76x2_init.c @@ -584,6 +584,8 @@ int mt76x2_init_hardware(struct mt76x2_dev *dev) if (ret) return ret; + dev->rxfilter = mt76_rr(dev, MT_RX_FILTR_CFG); + ret = mt76x2_dma_init(dev); if (ret) return ret; @@ -598,7 +600,6 @@ int mt76x2_init_hardware(struct mt76x2_dev *dev) return ret; mt76x2_mac_stop(dev, false); - dev->rxfilter = mt76_rr(dev, MT_RX_FILTR_CFG); return 0; }