Gábor Stefanik wrote:
> static void b43_lpphy_op_set_rx_antenna(struct b43_wldev *dev, int antenna)
> {
> - //TODO
> + int autodiv = ;
> +
> + if (dev->phy.rev >= 2)
> + return; // rev2+ doesn't support antenna diversity
> +
> + if (B43_WARN_ON(antenna > B43_ANTENNA_AUTO1))
> + return;
> +
> + b43_phy_maskset(dev, B43_LPPHY_CRSGAIN_CTL, 0xFFFD, antenna & 0x2);
> + b43_phy_maskset(dev, B43_LPPHY_CRSGAIN_CTL, 0xFFFE, antenna & 0x1);
> }
>
> static void b43_lpphy_op_adjust_txpower(struct b43_wldev *dev)
I noticed that your code didn't look like the specs, which is why I
thought the recent changes had affected this section.
It took me a while to figure it out, but the code above is correct.
The part that led to confusion is that the vendor uses 3 to indicate
"start with antenna 0", while you use 2 for that state. Even if we get
it wrong later, it shouldn't matter.
Larry
_______________________________________________
Bcm43xx-dev mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev