Search Linux Wireless

Re: [PATCH] b43: Add LP PHY Analog Switch Support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Monday 14 September 2009 23:01:33 Thomas Ilnseher wrote:
> The current verison of b43 uses "b43_phyop_switch_analog_generic" for A,
> G and LP phys.
> 
> According to the spec, this is the wrong behaviour for the LP PHY
> (see: http://bcm-v4.sipsolutions.net/802.11/PHY/Anacore )
> 
> While no problems on the x86 plattform where seen, this leads to a crash
> on the BCM5354 SoC (MIPS 32 LE plattform).
> This patch implements the analog switch for LP PHYs according to the
> specs. It fixes the crash
> 
> signed-off-by: Thomas Ilnseher <illth@xxxxxx>
> ---
> diff -uNr b/drivers/net/wireless/b43/phy_lp.c
> a/drivers/net/wireless/b43/phy_lp.c
> --- b/drivers/net/wireless/b43/phy_lp.c 2009-09-14 06:14:18.000000000 +0200
> +++ a/drivers/net/wireless/b43/phy_lp.c 2009-09-14 21:03:15.158507573 +0200
> @@ -2228,6 +2228,16 @@
>         return B43_TXPWR_RES_DONE;
>  }
>  
> +void b43_lpphy_op_switch_analog(struct b43_wldev *dev, bool on)
> +{
> +       if (on) {
> +               b43_phy_mask(dev, B43_LPPHY_AFE_CTL_OVR, 0xfff8);
> +       } else {
> +               b43_phy_set(dev, B43_LPPHY_AFE_CTL_OVRVAL, 0x0007);
> +               b43_phy_set(dev, B43_LPPHY_AFE_CTL_OVR, 0x0007);
> +       }
> +}
> +
>  const struct b43_phy_operations b43_phyops_lp = {
>         .allocate               = b43_lpphy_op_allocate,
>         .free                   = b43_lpphy_op_free,
> @@ -2239,7 +2249,7 @@
>         .radio_read             = b43_lpphy_op_radio_read,
>         .radio_write            = b43_lpphy_op_radio_write,
>         .software_rfkill        = b43_lpphy_op_software_rfkill,
> -       .switch_analog          = b43_phyop_switch_analog_generic,
> +       .switch_analog          = b43_lpphy_op_switch_analog,
>         .switch_channel         = b43_lpphy_op_switch_channel,
>         .get_default_chan       = b43_lpphy_op_get_default_chan,
>         .set_rx_antenna         = b43_lpphy_op_set_rx_antenna,
> 

ack

-- 
Greetings, Michael.
--
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

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux