The code in the mac80211 version of radio_init2050 differs from the specs in two places. Signed-off-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx> --- Index: wireless-mb/drivers/net/wireless/mac80211/bcm43xx/bcm43xx_phy.c =================================================================== --- wireless-mb.orig/drivers/net/wireless/mac80211/bcm43xx/bcm43xx_phy.c +++ wireless-mb/drivers/net/wireless/mac80211/bcm43xx/bcm43xx_phy.c @@ -3444,9 +3444,9 @@ static u16 radio2050_rfover_val(struct b if (phy_register == BCM43xx_PHY_RFOVER) { return 0x9B3; } else if (phy_register == BCM43xx_PHY_RFOVERVAL) { - extlna |= (i << 8); if (extlna) extlna |= 0x8000; + extlna |= (i << 8); switch (lpd) { case LPD(0, 1, 1): return 0x8F92; @@ -3724,9 +3724,10 @@ u16 bcm43xx_radio_init2050(struct bcm43x bcm43xx_phy_stackrestore(stack, BCM43xx_PHY_ANALOGOVERVAL); bcm43xx_phy_stackrestore(stack, BCM43xx_PHY_CRS0); bcm43xx_phy_stackrestore(stack, BCM43xx_PHY_CLASSCTL); - bcm43xx_write16(dev, BCM43xx_MMIO_PHY_RADIO, - bcm43xx_read16(dev, BCM43xx_MMIO_PHY_RADIO) - & 0x7FFF); + if (has_loopback_gain(phy)) { + bcm43xx_phy_stackrestore(stack, BCM43xx_PHY_LO_MASK); + bcm43xx_phy_stackrestore(stack, BCM43xx_PHY_LO_CTL); + } } if (i > 15) ret = radio78; - To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html