Re: [PATCH] - try2 Add analog switching support for LP PHY based chips

2009-09-14 Thread Michael Buesch
On Monday 14 September 2009 21:10:32 Thomas Ilnseher wrote:
> On Mo, 2009-09-14 at 20:51 +0200, Michael Buesch wrote:
> > On Monday 14 September 2009 20:44:54 Thomas Ilnseher wrote:
> > > 
> > > 
> > 
> > *) Please inline the patch
> > *) Why do you rename b43_phyop_switch_analog_generic? It's "generic", 
> > because
> >it works on the generic PHY0 MMIO register shadow.
> It's renamed to b43_phyop_switch_analog_ag. I reverted that change.
> > *) Please use b43_phy_mask and b43_phy_set.
> didn't know these functions, they come in handy.
> 
> 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.0 
> +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_maskset(dev, B43_LPPHY_AFE_CTL_OVRVAL, 0x0007);
> + b43_phy_maskset(dev, B43_LPPHY_AFE_CTL_OVR, 0x0007);

Does this even compile??

-- 
Greetings, Michael.
___
Bcm43xx-dev mailing list
Bcm43xx-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev


[PATCH] - try2 Add analog switching support for LP PHY based chips

2009-09-14 Thread Thomas Ilnseher
On Mo, 2009-09-14 at 20:51 +0200, Michael Buesch wrote:
> On Monday 14 September 2009 20:44:54 Thomas Ilnseher wrote:
> > 
> > 
> 
> *) Please inline the patch
> *) Why do you rename b43_phyop_switch_analog_generic? It's "generic", because
>it works on the generic PHY0 MMIO register shadow.
It's renamed to b43_phyop_switch_analog_ag. I reverted that change.
> *) Please use b43_phy_mask and b43_phy_set.
didn't know these functions, they come in handy.

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.0 +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_maskset(dev, B43_LPPHY_AFE_CTL_OVRVAL, 0x0007);
+   b43_phy_maskset(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,

___
Bcm43xx-dev mailing list
Bcm43xx-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev