ok. Than this patch fixes the existing code of it :)
With "hwpctl=1" driver works more stable, than without this patch.
just synced code to specs )
2008/9/7, Michael Buesch <[EMAIL PROTECTED]>:
> On Sunday 07 September 2008 19:58:52 Artem Antonov wrote:
> > Hi!
> > This patch fixes hardware power control init. Now it works better :)
>
>
> Hardware power control cannot work, as we don't implement major parts of it.
>
>
> > --- linux-2.6.27/drivers/net/wireless/b43/phy_g.c 2008-09-07
> > 20:16:35.000000000 +0400
> > +++ linux-2.6.27/drivers/net/wireless/b43/phy_g.c 2008-09-07
> > 20:18:22.000000000 +0400
> > @@ -275,9 +275,9 @@
> > u16 value;
> >
> > for (i = 0; i < 32; i++)
> > - b43_ofdmtab_write16(dev, 0x3C20, i, gphy->tssi2dbm[i]);
> > + b43_ofdmtab_write16(dev, B43_OFDMTAB_TSSI, i + 32,
> gphy->tssi2dbm[i]);
> > for (i = 32; i < 64; i++)
> > - b43_ofdmtab_write16(dev, 0x3C00, i - 32, gphy->tssi2dbm[i]);
> > + b43_ofdmtab_write16(dev, B43_OFDMTAB_TSSI, i - 32,
> gphy->tssi2dbm[i]);
> > for (i = 0; i < 64; i += 2) {
> > value = (u16) gphy->tssi2dbm[i];
> > value |= ((u16) gphy->tssi2dbm[i + 1]) << 8;
> > @@ -302,9 +302,9 @@
> > tmp = lo->bbatt_list.list[bb].att;
> > tmp <<= 8;
> > if (phy->radio_rev == 8)
> > - tmp |= 0x50;
> > - else
> > tmp |= 0x40;
> > + else
> > + tmp |= 0x50;
> > tmp |= lo->rfatt_list.list[rf].att;
> > b43_phy_write(dev, 0x3C0 + nr_written, tmp);
> > nr_written++;
> > @@ -2053,7 +2053,7 @@
> > if (phy->radio_ver == 0x2050 && phy->radio_rev == 8) {
> > b43_phy_write(dev, 0x047A, (b43_phy_read(dev, 0x047A)
> > & 0xFF0F) | 0x0010);
> > - b43_phy_write(dev, 0x005D, b43_phy_read(dev, 0x005D)
> > + b43_phy_write(dev, 0x004D, b43_phy_read(dev, 0x004D)
> > | 0x8000);
> > b43_phy_write(dev, 0x004E, (b43_phy_read(dev, 0x004E)
> > & 0xFFC0) | 0x0010);
> >
> > Best regards.
> >
> >
>
>
>
>
> --
> Greetings Michael.
>
_______________________________________________
Bcm43xx-dev mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev