From ebb632db0f0789d2216fc0e78dd950681b569036 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Tue, 9 Oct 2018 10:44:36 +0200 Subject: [PATCH] mt76: mt76x0e: another fix for the external PA current setting - Use the register number define instead of a magic value - Fix inverted bit test (override needs to be applied if the bit is not set) Fixes: 2b2cb40bcd7d ("mt76x0: pci: add hw initialization at bootstrap") Signed-off-by: Felix Fietkau --- drivers/net/wireless/mediatek/mt76/mt76x0/pci.c | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/drivers/net/wireless/mediatek/mt76/mt76x0/pci.c b/drivers/net/wireless/mediatek/mt76/mt76x0/pci.c index cc8af17..fd2dc7e 100644 --- a/drivers/net/wireless/mediatek/mt76/mt76x0/pci.c +++ b/drivers/net/wireless/mediatek/mt76/mt76x0/pci.c @@ -111,17 +111,10 @@ static int mt76x0e_register_device(struct mt76x02_dev *dev) u16 val; mt76_clear(dev, MT_COEXCFG0, BIT(0)); + val = mt76x02_eeprom_get(dev, MT_EE_NIC_CONF_0); - if (val & MT_EE_NIC_CONF_0_PA_IO_CURRENT) { - u32 data; - - /* set external PA I/O - * current to 16mA - */ - data = mt76_rr(dev, 0x11c); - data |= 0xc03; - mt76_wr(dev, 0x11c, data); - } + if (!(val & MT_EE_NIC_CONF_0_PA_IO_CURRENT)) + mt76_set(dev, MT_XO_CTRL7, 0xc03); } mt76_clear(dev, 0x110, BIT(9)); -- 2.7.4