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
Bcm43xx-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev

Reply via email to