Re: [RFC][PATCH] b43: LP-PHY: always adjust gain table on channel switch

2010-02-06 Thread Gábor Stefanik
On Sat, Feb 6, 2010 at 1:06 AM, Larry Finger larry.fin...@lwfinger.net wrote:
 On 02/05/2010 10:27 AM, Gábor Stefanik wrote:
 On Fri, Feb 5, 2010 at 4:24 AM, Larry Finger larry.fin...@lwfinger.net 
 wrote:
 On 02/04/2010 02:57 PM, Rafał Miłecki wrote:
 ---
 Gábor: I think you missed specs here. Could you check whole routine just 
 for
 sure, please? I don't understand whole radio and chanspec magic yet.
 ---
  drivers/net/wireless/b43/phy_lp.c |    2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)

 diff --git a/drivers/net/wireless/b43/phy_lp.c 
 b/drivers/net/wireless/b43/phy_lp.c
 index 185219e..61009ee 100644
 --- a/drivers/net/wireless/b43/phy_lp.c
 +++ b/drivers/net/wireless/b43/phy_lp.c
 @@ -2655,8 +2655,8 @@ static int b43_lpphy_op_switch_channel(struct 
 b43_wldev *dev,
               if (err)
                       return err;
               lpphy_set_analog_filter(dev, new_channel);
 -             lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel));
       }
 +     lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel));

       lpphy-channel = new_channel;
       b43_write16(dev, B43_MMIO_CHANNEL, new_channel);

 Both the lpphy_set_analog_filter() and lpphy_adjust_gain_table() calls 
 should be
 outside the if statement. I changed the spec a little. It used to test 
 radio
 enabled, but I have found that is always true for our driver.

 Larry



 Isn't set_analog_filter() rev0/1-specific?

 The new routines are described in

 http://bcm-v4.sipsolutions.net/802.11/PHY/LP/TxFilterInit

 http://bcm-v4.sipsolutions.net/802.11/PHY/LP/TxDigFiltUcodeRev2

 The revised routines are:

 http://bcm-v4.sipsolutions.net/802.11/PHY/LP/SetChanSpecLPPHY

 http://bcm-v4.sipsolutions.net/802.11/PHY/LP/PR41573

 Larry



Note to implementors: Chanspec is broadcrap, please do NOT use in b43.
Use a struct if you need the extra parameters contained in chanspec.

-- 
Vista: [V]iruses, [I]ntruders, [S]pyware, [T]rojans and [A]dware. :-)
___
Bcm43xx-dev mailing list
Bcm43xx-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev


Re: [RFC][PATCH] b43: LP-PHY: always adjust gain table on channel switch

2010-02-05 Thread Gábor Stefanik
On Fri, Feb 5, 2010 at 4:24 AM, Larry Finger larry.fin...@lwfinger.net wrote:
 On 02/04/2010 02:57 PM, Rafał Miłecki wrote:
 ---
 Gábor: I think you missed specs here. Could you check whole routine just for
 sure, please? I don't understand whole radio and chanspec magic yet.
 ---
  drivers/net/wireless/b43/phy_lp.c |    2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)

 diff --git a/drivers/net/wireless/b43/phy_lp.c 
 b/drivers/net/wireless/b43/phy_lp.c
 index 185219e..61009ee 100644
 --- a/drivers/net/wireless/b43/phy_lp.c
 +++ b/drivers/net/wireless/b43/phy_lp.c
 @@ -2655,8 +2655,8 @@ static int b43_lpphy_op_switch_channel(struct 
 b43_wldev *dev,
               if (err)
                       return err;
               lpphy_set_analog_filter(dev, new_channel);
 -             lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel));
       }
 +     lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel));

       lpphy-channel = new_channel;
       b43_write16(dev, B43_MMIO_CHANNEL, new_channel);

 Both the lpphy_set_analog_filter() and lpphy_adjust_gain_table() calls should 
 be
 outside the if statement. I changed the spec a little. It used to test radio
 enabled, but I have found that is always true for our driver.

 Larry



Isn't set_analog_filter() rev0/1-specific?

-- 
Vista: [V]iruses, [I]ntruders, [S]pyware, [T]rojans and [A]dware. :-)
___
Bcm43xx-dev mailing list
Bcm43xx-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev


Re: [RFC][PATCH] b43: LP-PHY: always adjust gain table on channel switch

2010-02-05 Thread Gábor Stefanik
On Fri, Feb 5, 2010 at 4:24 AM, Larry Finger larry.fin...@lwfinger.net wrote:
 On 02/04/2010 02:57 PM, Rafał Miłecki wrote:
 ---
 Gábor: I think you missed specs here. Could you check whole routine just for
 sure, please? I don't understand whole radio and chanspec magic yet.
 ---
  drivers/net/wireless/b43/phy_lp.c |    2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)

 diff --git a/drivers/net/wireless/b43/phy_lp.c 
 b/drivers/net/wireless/b43/phy_lp.c
 index 185219e..61009ee 100644
 --- a/drivers/net/wireless/b43/phy_lp.c
 +++ b/drivers/net/wireless/b43/phy_lp.c
 @@ -2655,8 +2655,8 @@ static int b43_lpphy_op_switch_channel(struct 
 b43_wldev *dev,
               if (err)
                       return err;
               lpphy_set_analog_filter(dev, new_channel);
 -             lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel));
       }
 +     lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel));

       lpphy-channel = new_channel;
       b43_write16(dev, B43_MMIO_CHANNEL, new_channel);

 Both the lpphy_set_analog_filter() and lpphy_adjust_gain_table() calls should 
 be
 outside the if statement. I changed the spec a little. It used to test radio
 enabled, but I have found that is always true for our driver.

 Larry



Isn't set_analog_filter() rev0/1-specific?

-- 
Vista: [V]iruses, [I]ntruders, [S]pyware, [T]rojans and [A]dware. :-)
___
Bcm43xx-dev mailing list
Bcm43xx-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev


Re: [RFC][PATCH] b43: LP-PHY: always adjust gain table on channel switch

2010-02-05 Thread Larry Finger
On 02/05/2010 10:41 AM, Gábor Stefanik wrote:
 On Fri, Feb 5, 2010 at 4:24 AM, Larry Finger larry.fin...@lwfinger.net 
 wrote:
 On 02/04/2010 02:57 PM, Rafał Miłecki wrote:
 ---
 Gábor: I think you missed specs here. Could you check whole routine just 
 for
 sure, please? I don't understand whole radio and chanspec magic yet.
 ---
  drivers/net/wireless/b43/phy_lp.c |2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)

 diff --git a/drivers/net/wireless/b43/phy_lp.c 
 b/drivers/net/wireless/b43/phy_lp.c
 index 185219e..61009ee 100644
 --- a/drivers/net/wireless/b43/phy_lp.c
 +++ b/drivers/net/wireless/b43/phy_lp.c
 @@ -2655,8 +2655,8 @@ static int b43_lpphy_op_switch_channel(struct 
 b43_wldev *dev,
   if (err)
   return err;
   lpphy_set_analog_filter(dev, new_channel);
 - lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel));
   }
 + lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel));

   lpphy-channel = new_channel;
   b43_write16(dev, B43_MMIO_CHANNEL, new_channel);

 Both the lpphy_set_analog_filter() and lpphy_adjust_gain_table() calls 
 should be
 outside the if statement. I changed the spec a little. It used to test radio
 enabled, but I have found that is always true for our driver.

 Larry


 
 Isn't set_analog_filter() rev0/1-specific?

It was in the 4.174.64.19 driver that I RE'd when you wrote the LP PHY code.
That as changed in 5.10.56.46, which I am now doing. It will take me a while to
complete the new routine LP PHY TX Filter Init and a routine that it calls.

Certainly, there is no hurry that these changes be made. Whenever you or Rafał
have time. There is no guarantee that these changes will have any effect on the
LP PHY operations. Hitting a moving target is not easy.

Larry





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


Re: [RFC][PATCH] b43: LP-PHY: always adjust gain table on channel switch

2010-02-05 Thread Gábor Stefanik
On Fri, Feb 5, 2010 at 7:09 PM, Larry Finger larry.fin...@lwfinger.net wrote:
 On 02/05/2010 10:41 AM, Gábor Stefanik wrote:
 On Fri, Feb 5, 2010 at 4:24 AM, Larry Finger larry.fin...@lwfinger.net 
 wrote:
 On 02/04/2010 02:57 PM, Rafał Miłecki wrote:
 ---
 Gábor: I think you missed specs here. Could you check whole routine just 
 for
 sure, please? I don't understand whole radio and chanspec magic yet.
 ---
  drivers/net/wireless/b43/phy_lp.c |    2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)

 diff --git a/drivers/net/wireless/b43/phy_lp.c 
 b/drivers/net/wireless/b43/phy_lp.c
 index 185219e..61009ee 100644
 --- a/drivers/net/wireless/b43/phy_lp.c
 +++ b/drivers/net/wireless/b43/phy_lp.c
 @@ -2655,8 +2655,8 @@ static int b43_lpphy_op_switch_channel(struct 
 b43_wldev *dev,
               if (err)
                       return err;
               lpphy_set_analog_filter(dev, new_channel);
 -             lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel));
       }
 +     lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel));

       lpphy-channel = new_channel;
       b43_write16(dev, B43_MMIO_CHANNEL, new_channel);

 Both the lpphy_set_analog_filter() and lpphy_adjust_gain_table() calls 
 should be
 outside the if statement. I changed the spec a little. It used to test 
 radio
 enabled, but I have found that is always true for our driver.

 Larry



 Isn't set_analog_filter() rev0/1-specific?

 It was in the 4.174.64.19 driver that I RE'd when you wrote the LP PHY code.
 That as changed in 5.10.56.46, which I am now doing. It will take me a while 
 to
 complete the new routine LP PHY TX Filter Init and a routine that it calls.

 Certainly, there is no hurry that these changes be made. Whenever you or Rafał
 have time. There is no guarantee that these changes will have any effect on 
 the
 LP PHY operations. Hitting a moving target is not easy.

 Larry


Just out of curiosity, is 5.10.56.46 available anywhere (for firmware reasons)?

-- 
Vista: [V]iruses, [I]ntruders, [S]pyware, [T]rojans and [A]dware. :-)
___
Bcm43xx-dev mailing list
Bcm43xx-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev


Re: [RFC][PATCH] b43: LP-PHY: always adjust gain table on channel switch

2010-02-05 Thread Larry Finger
On 02/05/2010 12:46 PM, Gábor Stefanik wrote:
 On Fri, Feb 5, 2010 at 7:09 PM, Larry Finger larry.fin...@lwfinger.net 
 wrote:
 On 02/05/2010 10:41 AM, Gábor Stefanik wrote:
 On Fri, Feb 5, 2010 at 4:24 AM, Larry Finger larry.fin...@lwfinger.net 
 wrote:
 On 02/04/2010 02:57 PM, Rafał Miłecki wrote:
 ---
 Gábor: I think you missed specs here. Could you check whole routine just 
 for
 sure, please? I don't understand whole radio and chanspec magic yet.
 ---
  drivers/net/wireless/b43/phy_lp.c |2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)

 diff --git a/drivers/net/wireless/b43/phy_lp.c 
 b/drivers/net/wireless/b43/phy_lp.c
 index 185219e..61009ee 100644
 --- a/drivers/net/wireless/b43/phy_lp.c
 +++ b/drivers/net/wireless/b43/phy_lp.c
 @@ -2655,8 +2655,8 @@ static int b43_lpphy_op_switch_channel(struct 
 b43_wldev *dev,
   if (err)
   return err;
   lpphy_set_analog_filter(dev, new_channel);
 - lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel));
   }
 + lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel));

   lpphy-channel = new_channel;
   b43_write16(dev, B43_MMIO_CHANNEL, new_channel);

 Both the lpphy_set_analog_filter() and lpphy_adjust_gain_table() calls 
 should be
 outside the if statement. I changed the spec a little. It used to test 
 radio
 enabled, but I have found that is always true for our driver.

 Larry



 Isn't set_analog_filter() rev0/1-specific?

 It was in the 4.174.64.19 driver that I RE'd when you wrote the LP PHY code.
 That as changed in 5.10.56.46, which I am now doing. It will take me a while 
 to
 complete the new routine LP PHY TX Filter Init and a routine that it calls.

 Certainly, there is no hurry that these changes be made. Whenever you or 
 Rafał
 have time. There is no guarantee that these changes will have any effect on 
 the
 LP PHY operations. Hitting a moving target is not easy.

 Larry

 
 Just out of curiosity, is 5.10.56.46 available anywhere (for firmware 
 reasons)?

I'm not sure what the driver version is, but a file with 508 ucode dated 6/26/09
is found at:

http://www.linksysbycisco.com/gpl/wrt610n_v2.00.00.05_us.tar.gz

The binaries are in directory wrt610n_v2.00.00.05_us/release/src/wl/linux/. I
used Daniel Lenski's script names b43_fwcutter.py can extract the firmware from
wl_apsta.o. Included are ucode_2w20 - Rev 20 802.11 cores have an SSLPN PHY.

I'm still looking for a file with 5XX firmware that is not a huge download. This
file contains everything needed to build the firmware for a WRT610N AP and is
356 MB. If anyone knows of a smaller file, please let me know.

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


Re: [RFC][PATCH] b43: LP-PHY: always adjust gain table on channel switch

2010-02-05 Thread Larry Finger
On 02/05/2010 10:27 AM, Gábor Stefanik wrote:
 On Fri, Feb 5, 2010 at 4:24 AM, Larry Finger larry.fin...@lwfinger.net 
 wrote:
 On 02/04/2010 02:57 PM, Rafał Miłecki wrote:
 ---
 Gábor: I think you missed specs here. Could you check whole routine just 
 for
 sure, please? I don't understand whole radio and chanspec magic yet.
 ---
  drivers/net/wireless/b43/phy_lp.c |2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)

 diff --git a/drivers/net/wireless/b43/phy_lp.c 
 b/drivers/net/wireless/b43/phy_lp.c
 index 185219e..61009ee 100644
 --- a/drivers/net/wireless/b43/phy_lp.c
 +++ b/drivers/net/wireless/b43/phy_lp.c
 @@ -2655,8 +2655,8 @@ static int b43_lpphy_op_switch_channel(struct 
 b43_wldev *dev,
   if (err)
   return err;
   lpphy_set_analog_filter(dev, new_channel);
 - lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel));
   }
 + lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel));

   lpphy-channel = new_channel;
   b43_write16(dev, B43_MMIO_CHANNEL, new_channel);

 Both the lpphy_set_analog_filter() and lpphy_adjust_gain_table() calls 
 should be
 outside the if statement. I changed the spec a little. It used to test radio
 enabled, but I have found that is always true for our driver.

 Larry


 
 Isn't set_analog_filter() rev0/1-specific?

The new routines are described in

http://bcm-v4.sipsolutions.net/802.11/PHY/LP/TxFilterInit

http://bcm-v4.sipsolutions.net/802.11/PHY/LP/TxDigFiltUcodeRev2

The revised routines are:

http://bcm-v4.sipsolutions.net/802.11/PHY/LP/SetChanSpecLPPHY

http://bcm-v4.sipsolutions.net/802.11/PHY/LP/PR41573

Larry

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


[RFC][PATCH] b43: LP-PHY: always adjust gain table on channel switch

2010-02-04 Thread Rafał Miłecki
---
Gábor: I think you missed specs here. Could you check whole routine just for
sure, please? I don't understand whole radio and chanspec magic yet.
---
 drivers/net/wireless/b43/phy_lp.c |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/wireless/b43/phy_lp.c 
b/drivers/net/wireless/b43/phy_lp.c
index 185219e..61009ee 100644
--- a/drivers/net/wireless/b43/phy_lp.c
+++ b/drivers/net/wireless/b43/phy_lp.c
@@ -2655,8 +2655,8 @@ static int b43_lpphy_op_switch_channel(struct b43_wldev 
*dev,
if (err)
return err;
lpphy_set_analog_filter(dev, new_channel);
-   lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel));
}
+   lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel));
 
lpphy-channel = new_channel;
b43_write16(dev, B43_MMIO_CHANNEL, new_channel);
-- 
1.6.4.2

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


Re: [RFC][PATCH] b43: LP-PHY: always adjust gain table on channel switch

2010-02-04 Thread Larry Finger
On 02/04/2010 02:57 PM, Rafał Miłecki wrote:
 ---
 Gábor: I think you missed specs here. Could you check whole routine just for
 sure, please? I don't understand whole radio and chanspec magic yet.
 ---
  drivers/net/wireless/b43/phy_lp.c |2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)
 
 diff --git a/drivers/net/wireless/b43/phy_lp.c 
 b/drivers/net/wireless/b43/phy_lp.c
 index 185219e..61009ee 100644
 --- a/drivers/net/wireless/b43/phy_lp.c
 +++ b/drivers/net/wireless/b43/phy_lp.c
 @@ -2655,8 +2655,8 @@ static int b43_lpphy_op_switch_channel(struct b43_wldev 
 *dev,
   if (err)
   return err;
   lpphy_set_analog_filter(dev, new_channel);
 - lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel));
   }
 + lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel));
  
   lpphy-channel = new_channel;
   b43_write16(dev, B43_MMIO_CHANNEL, new_channel);

Both the lpphy_set_analog_filter() and lpphy_adjust_gain_table() calls should be
outside the if statement. I changed the spec a little. It used to test radio
enabled, but I have found that is always true for our driver.

Larry

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