* [PATCH] b43: Handle B43_PHYTYPE_LP in RX path
From: Gábor Stefanik @ 2009-08-14 22:52 UTC (permalink / raw)
To: John Linville, Michael Buesch, Larry Finger
Cc: Mark Huijgen, Broadcom Wireless, linux-wireless
Don't drop all packets received from an LP-PHY with WARN_ON.
Also update a comment with LP-specific information.
Signed-off-by: Gábor Stefanik <netrolller.3d@gmail.com>
---
drivers/net/wireless/b43/wa.c | 2 +-
drivers/net/wireless/b43/xmit.c | 1 +
2 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/drivers/net/wireless/b43/wa.c b/drivers/net/wireless/b43/wa.c
index 73e97fa..97c7916 100644
--- a/drivers/net/wireless/b43/wa.c
+++ b/drivers/net/wireless/b43/wa.c
@@ -628,7 +628,7 @@ void b43_wa_all(struct b43_wldev *dev)
B43_WARN_ON(1);
}
b43_wa_boards_g(dev);
- } else { /* No N PHY support so far */
+ } else { /* No N PHY support so far, LP PHY is in phy_lp.c */
B43_WARN_ON(1);
}
diff --git a/drivers/net/wireless/b43/xmit.c b/drivers/net/wireless/b43/xmit.c
index 5280ebc..be1c53e 100644
--- a/drivers/net/wireless/b43/xmit.c
+++ b/drivers/net/wireless/b43/xmit.c
@@ -655,6 +655,7 @@ void b43_rx(struct b43_wldev *dev, struct sk_buff *skb, const void *_rxhdr)
status.freq = chanid + 2400;
break;
case B43_PHYTYPE_N:
+ case B43_PHYTYPE_LP:
/* chanid is the SHM channel cookie. Which is the plain
* channel number in b43. */
if (chanstat & B43_RX_CHAN_5GHZ) {
--
1.6.2.4
^ permalink raw reply related
* Re: [PATCH] b43: LP-PHY: Fix another TX power control abuse
From: Larry Finger @ 2009-08-14 22:12 UTC (permalink / raw)
To: Gábor Stefanik
Cc: Broadcom Wireless, linux-wireless, Michael Buesch, Mark Huijgen
In-Reply-To: <69e28c910908141500s2e6ee71avcebffd6107fe5a1@mail.gmail.com>
Gábor Stefanik wrote:
> 2009/8/14 Larry Finger <Larry.Finger@lwfinger.net>:
>> Yes, this one got rid of the warnings.
>>
>> Larry
>>
>>
>
> I guess the device still doesn't TX/RX.
>
Not yet. The fact that it keeps getting shut down/restarted indicates
that the TX operations are not completing. I'm currently tracking the
path of operations.
Larry
^ permalink raw reply
* Re: [PATCH] b43: LP-PHY: Fix another TX power control abuse
From: Gábor Stefanik @ 2009-08-14 22:00 UTC (permalink / raw)
To: Larry Finger
Cc: John Linville, Michael Buesch, Mark Huijgen, Broadcom Wireless,
linux-wireless
In-Reply-To: <4A85D7A3.9020009@lwfinger.net>
2009/8/14 Larry Finger <Larry.Finger@lwfinger.net>:
> Gábor Stefanik wrote:
>> This should fix the remaining WARN_ON.
>>
>> Signed-off-by: Gábor Stefanik <netrolller.3d@gmail.com>
>> ---
>> drivers/net/wireless/b43/phy_lp.c | 7 ++++---
>> 1 files changed, 4 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/net/wireless/b43/phy_lp.c
>> b/drivers/net/wireless/b43/phy_lp.c
>> index bf89173..3872a31 100644
>> --- a/drivers/net/wireless/b43/phy_lp.c
>> +++ b/drivers/net/wireless/b43/phy_lp.c
>> @@ -1059,7 +1059,8 @@ static void lpphy_rev0_1_rc_calib(struct b43_wldev
>> *dev)
>> bool old_txg_ovr;
>> u8 old_bbmult;
>> u16 old_rf_ovr, old_rf_ovrval, old_afe_ovr, old_afe_ovrval,
>> - old_rf2_ovr, old_rf2_ovrval, old_phy_ctl, old_txpctl;
>> + old_rf2_ovr, old_rf2_ovrval, old_phy_ctl;
>> + enum b43_lpphy_txpctl_mode old_txpctl;
>> u32 normal_pwr, ideal_pwr, mean_sq_pwr, tmp = 0, mean_sq_pwr_min = 0;
>> int loopback, i, j, inner_sum;
>>
>> @@ -1077,8 +1078,8 @@ static void lpphy_rev0_1_rc_calib(struct b43_wldev
>> *dev)
>> old_rf2_ovr = b43_phy_read(dev, B43_LPPHY_RF_OVERRIDE_2);
>> old_rf2_ovrval = b43_phy_read(dev, B43_LPPHY_RF_OVERRIDE_2_VAL);
>> old_phy_ctl = b43_phy_read(dev, B43_LPPHY_LP_PHY_CTL);
>> - old_txpctl = b43_phy_read(dev, B43_LPPHY_TX_PWR_CTL_CMD) &
>> - B43_LPPHY_TX_PWR_CTL_CMD_MODE;
>> + lpphy_read_tx_pctl_mode_from_hardware(dev);
>> + old_txpctl = lpphy->txpctl_mode;
>>
>> lpphy_set_tx_power_control(dev, B43_LPPHY_TXPCTL_OFF);
>> lpphy_disable_crs(dev);
>
> Yes, this one got rid of the warnings.
>
> Larry
>
>
I guess the device still doesn't TX/RX.
--
Vista: [V]iruses, [I]ntruders, [S]pyware, [T]rojans and [A]dware. :-)
^ permalink raw reply
* iwlwifi 1000 uCode available
From: reinette chatre @ 2009-08-14 21:55 UTC (permalink / raw)
To: linux-wireless, ipw3945-devel
Hi,
uCode for Intel WiFi Link 1000BGN is now available for download
from http://intellinuxwireless.org/?n=Downloads
Reinette
^ permalink raw reply
* Re: [PATCH] b43: Fix sparse warnings
From: Pavel Roskin @ 2009-08-14 21:46 UTC (permalink / raw)
To: Michael Buesch; +Cc: Larry Finger, John W Linville, bcm43xx-dev, linux-wireless
In-Reply-To: <1250285371.8137.44.camel@mj>
On Fri, 2009-08-14 at 17:29 -0400, Pavel Roskin wrote:
> On Fri, 2009-08-14 at 23:00 +0200, Michael Buesch wrote:
> > On Friday 14 August 2009 22:52:13 Pavel Roskin wrote:
> > > On Fri, 2009-08-14 at 22:15 +0200, Michael Buesch wrote:
> > >
> > > > > - b43_phy_mask(dev, 0x048A, (u16)~0x8000);
> > > > > + b43_phy_mask(dev, 0x048A, (u16)(~0x8000 & 0xFFFF));
> > > >
> >
> > > I would just use 0x7fff here.
> >
> > That does not work if 0x8000 is a #defined bit.
>
> One approach would be to use a macro and tell sparse to ignore it
>
> #define NEGATE(x) (__force typeof(x))(~x)
Scratch that. It has no change to work for constants unless we hardcode
the size, e.g. by having NEGATE16, NEGATE32 etc.
The best I could do is:
#define NEGATE16(x) (0xFFFF & ~x)
b43_phy_mask(dev, 0x048A, NEGATE16(0x8000));
> Another approach would be to have b43_phy_mask() and similar functions
> accept int and do the bit cutting in one place.
I tend to think that it would be the best approach.
> It should also be possible to have separate functions e.g.
> b43_phy_unmask() that would do the negation, so that the caller won't
> need to do it.
This could make the code hard to read.
--
Regards,
Pavel Roskin
^ permalink raw reply
* Re: [PATCH] b43: Fix sparse warnings
From: Pavel Roskin @ 2009-08-14 21:35 UTC (permalink / raw)
To: Gábor Stefanik
Cc: Michael Buesch, linux-wireless, bcm43xx-dev, Larry Finger
In-Reply-To: <69e28c910908141404q42685aebo93718a7504020c06@mail.gmail.com>
On Fri, 2009-08-14 at 23:04 +0200, Gábor Stefanik wrote:
> On Fri, Aug 14, 2009 at 11:00 PM, Michael Buesch<mb@bu3sch.de> wrote:
> > On Friday 14 August 2009 22:52:13 Pavel Roskin wrote:
> >> On Fri, 2009-08-14 at 22:15 +0200, Michael Buesch wrote:
> >>
> >> > > - b43_phy_mask(dev, 0x048A, (u16)~0x8000);
> >> > > + b43_phy_mask(dev, 0x048A, (u16)(~0x8000 & 0xFFFF));
> >> >
> >
> >> I would just use 0x7fff here.
> >
> > That does not work if 0x8000 is a #defined bit.
>
> What about ~((u16)0x8000)?
phy_g.c:974: warning: large integer implicitly truncated to unsigned
type
> (Or maybe ~(u16)0x8000 is enough, without
> the extra parentheses.)
Same thing. Sparse complains whether the cast is explicit or implicit.
--
Regards,
Pavel Roskin
^ permalink raw reply
* Re: [PATCH] b43: Fix sparse warnings
From: Larry Finger @ 2009-08-14 21:33 UTC (permalink / raw)
To: Michael Buesch, John W Linville; +Cc: bcm43xx-dev, linux-wireless
In-Reply-To: <200908142215.38112.mb@bu3sch.de>
Michael Buesch wrote:
> On Friday 14 August 2009 00:15:07 Larry Finger wrote:
>> The b43 driver generates the following sparse warnings:
>>
>> CHECK drivers/net/wireless/b43/phy_g.c
>> drivers/net/wireless/b43/phy_g.c:974:35: warning: cast truncates bits from constant value (ffff7fff becomes 7fff)
>> CHECK drivers/net/wireless/b43/wa.c
>> drivers/net/wireless/b43/wa.c:385:53: warning: cast truncates bits from constant value (ffff00ff becomes ff)
>> drivers/net/wireless/b43/wa.c:403:48: warning: cast truncates bits from constant value (ffff00ff becomes ff)
>> drivers/net/wireless/b43/wa.c:405:48: warning: cast truncates bits from constant value (ffff00ff becomes ff)
>> drivers/net/wireless/b43/wa.c:415:50: warning: cast truncates bits from constant value (ffff0fff becomes fff)
>>
>> Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
>> ---
>>
>> John,
>>
>> There is no hurry for this material.
>>
>> Larry
>> ---
>>
>> Index: wireless-testing/drivers/net/wireless/b43/phy_g.c
>> ===================================================================
>> --- wireless-testing.orig/drivers/net/wireless/b43/phy_g.c
>> +++ wireless-testing/drivers/net/wireless/b43/phy_g.c
>> @@ -971,7 +971,7 @@ b43_radio_interference_mitigation_enable
>> b43_phy_maskset(dev, 0x04A2, 0xFFF0, 0x000B);
>>
>> if (phy->rev >= 3) {
>> - b43_phy_mask(dev, 0x048A, (u16)~0x8000);
>> + b43_phy_mask(dev, 0x048A, (u16)(~0x8000 & 0xFFFF));
>
> Uh come on...
> The u16 cast already is stupid as hell, but this is becoming braindead.
> The code is perfectly fine. Sparse should instead provide an option to disable
> this fragile check.
John,
Just drop this patch. The code is OK as is.
Larry
^ permalink raw reply
* Re: [PATCH] b43: LP-PHY: Fix another TX power control abuse
From: Larry Finger @ 2009-08-14 21:31 UTC (permalink / raw)
To: Gábor Stefanik
Cc: John Linville, Michael Buesch, Mark Huijgen, Broadcom Wireless,
linux-wireless
In-Reply-To: <4A85D070.6070702@gmail.com>
Gábor Stefanik wrote:
> This should fix the remaining WARN_ON.
>
> Signed-off-by: Gábor Stefanik <netrolller.3d@gmail.com>
> ---
> drivers/net/wireless/b43/phy_lp.c | 7 ++++---
> 1 files changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/net/wireless/b43/phy_lp.c
> b/drivers/net/wireless/b43/phy_lp.c
> index bf89173..3872a31 100644
> --- a/drivers/net/wireless/b43/phy_lp.c
> +++ b/drivers/net/wireless/b43/phy_lp.c
> @@ -1059,7 +1059,8 @@ static void lpphy_rev0_1_rc_calib(struct b43_wldev
> *dev)
> bool old_txg_ovr;
> u8 old_bbmult;
> u16 old_rf_ovr, old_rf_ovrval, old_afe_ovr, old_afe_ovrval,
> - old_rf2_ovr, old_rf2_ovrval, old_phy_ctl, old_txpctl;
> + old_rf2_ovr, old_rf2_ovrval, old_phy_ctl;
> + enum b43_lpphy_txpctl_mode old_txpctl;
> u32 normal_pwr, ideal_pwr, mean_sq_pwr, tmp = 0, mean_sq_pwr_min = 0;
> int loopback, i, j, inner_sum;
>
> @@ -1077,8 +1078,8 @@ static void lpphy_rev0_1_rc_calib(struct b43_wldev
> *dev)
> old_rf2_ovr = b43_phy_read(dev, B43_LPPHY_RF_OVERRIDE_2);
> old_rf2_ovrval = b43_phy_read(dev, B43_LPPHY_RF_OVERRIDE_2_VAL);
> old_phy_ctl = b43_phy_read(dev, B43_LPPHY_LP_PHY_CTL);
> - old_txpctl = b43_phy_read(dev, B43_LPPHY_TX_PWR_CTL_CMD) &
> - B43_LPPHY_TX_PWR_CTL_CMD_MODE;
> + lpphy_read_tx_pctl_mode_from_hardware(dev);
> + old_txpctl = lpphy->txpctl_mode;
>
> lpphy_set_tx_power_control(dev, B43_LPPHY_TXPCTL_OFF);
> lpphy_disable_crs(dev);
Yes, this one got rid of the warnings.
Larry
^ permalink raw reply
* Re: [PATCH] b43: Fix sparse warnings
From: Pavel Roskin @ 2009-08-14 21:29 UTC (permalink / raw)
To: Michael Buesch; +Cc: Larry Finger, John W Linville, bcm43xx-dev, linux-wireless
In-Reply-To: <200908142300.01397.mb@bu3sch.de>
On Fri, 2009-08-14 at 23:00 +0200, Michael Buesch wrote:
> On Friday 14 August 2009 22:52:13 Pavel Roskin wrote:
> > On Fri, 2009-08-14 at 22:15 +0200, Michael Buesch wrote:
> >
> > > > - b43_phy_mask(dev, 0x048A, (u16)~0x8000);
> > > > + b43_phy_mask(dev, 0x048A, (u16)(~0x8000 & 0xFFFF));
> > >
>
> > I would just use 0x7fff here.
>
> That does not work if 0x8000 is a #defined bit.
One approach would be to use a macro and tell sparse to ignore it
#define NEGATE(x) (__force typeof(x))(~x)
Another approach would be to have b43_phy_mask() and similar functions
accept int and do the bit cutting in one place.
It should also be possible to have separate functions e.g.
b43_phy_unmask() that would do the negation, so that the caller won't
need to do it.
--
Regards,
Pavel Roskin
^ permalink raw reply
* Re: [PATCH v4 28/34] wireless: update cfg80211 kconfig entry
From: Johannes Berg @ 2009-08-14 21:13 UTC (permalink / raw)
To: Luis R. Rodriguez; +Cc: linville, linux-wireless, Larry.Finger
In-Reply-To: <1250281559-13041-29-git-send-email-lrodriguez@atheros.com>
[-- Attachment #1: Type: text/plain, Size: 1136 bytes --]
On Fri, 2009-08-14 at 16:25 -0400, Luis R. Rodriguez wrote:
> config CFG80211
> - tristate "Improved wireless configuration API"
> + tristate "cfg80211 - wireless configuration API"
> + ---help---
> + cfg80211 is the Linux wireless LAN (802.11) configuration API.
> + Enable this if you have a wireless device or if you just want
> + to test the wireless subsystem (see mac80211_hwsim).
This is not really correct, hwsim depends on mac80211, not cfg80211 --
the latter only implicitly.
> cfg80211
> + allows for device drivers to register themselves with the
> + networking subsystem and allows for userspace configuration
> + through a generic netlink family for wireless called nl80211.
Again, too much background information. Nobody cares at this point -- it
should answer the question "will this help get my hardware working?"
> + For more information refer to documentation on the wireless wiki:
> +
> + http://wireless.kernel.org/en/developers/Documentation/cfg80211
> +
> + When built as a module cfg80211 will be built as cfg80211.ko
Again -- don't mention .ko.
johannes
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 801 bytes --]
^ permalink raw reply
* Re: [PATCH v4 31/34] wireless: update mac80211 kconfig entry
From: Johannes Berg @ 2009-08-14 21:12 UTC (permalink / raw)
To: Luis R. Rodriguez; +Cc: linville, linux-wireless, Larry.Finger, Jouni Malinen
In-Reply-To: <1250281559-13041-32-git-send-email-lrodriguez@atheros.com>
[-- Attachment #1: Type: text/plain, Size: 1611 bytes --]
> - This option enables the hardware independent IEEE 802.11
> - networking stack.
> + This option enables support for a framework used by IEEE-802.11
> + SoftMAC devices. SoftMAC devices allow for a finer control of the
> + hardware, allowing for 802.11 frame management to be done in software
> + for them, for both parsing and generation of 802.11 wireless frames.
> + Most 802.11 devices today tend to be of this type.
> + mac8011 implements the cfg80211 callbacks for SoftMAC devices,
mac80211
> + mac80211 then depends on cfg80211 for both registration to the networking
> + subsystem and for configuration. Configuration is handled by cfg80211 both
> + through nl80211 and wireless extensions.
> +
> + If you have new userspace utitlities which support nl80211 you do not
utilities
> + need wireless-extensions to support a mac80211 device.
And in any case I really don't see a need to explain the wireless
configuration stuff in a Kconfig entry.
IMHO the text should be short and to the point, your texts give too much
background information that doesn't help anyone except people who
already know about wireless stuff to make a choice.
> + For more information refer the the wireless wiki entry on mac80211:
> +
> + http://wireless.kernel.org/en/developers/Documentation/mac80211
> +
> + When built as a module mac80211 will be built as mac80211.ko, if not sure
> + you should build this as a module.
We do not include the '.ko' in the module name, just say "The module
will be named mac80211" or so.
johannes
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 801 bytes --]
^ permalink raw reply
* Re: [PATCH v4 30/34] wireless: update WIRELESS_EXT kconfig entry
From: Johannes Berg @ 2009-08-14 21:09 UTC (permalink / raw)
To: Luis R. Rodriguez; +Cc: linville, linux-wireless, Larry.Finger
In-Reply-To: <1250281559-13041-31-git-send-email-lrodriguez@atheros.com>
[-- Attachment #1: Type: text/plain, Size: 1165 bytes --]
On Fri, 2009-08-14 at 16:25 -0400, Luis R. Rodriguez wrote:
> Provide more documentation as to why its being deprecated.
>
> Cc: Johannes Berg <johannes@sipsolutions.net>
> Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
> ---
> net/wireless/Kconfig | 12 ++++++++++--
> 1 files changed, 10 insertions(+), 2 deletions(-)
>
> diff --git a/net/wireless/Kconfig b/net/wireless/Kconfig
> index 60dd09e..b07ed2c 100644
> --- a/net/wireless/Kconfig
> +++ b/net/wireless/Kconfig
> @@ -86,8 +86,16 @@ config WIRELESS_EXT
> bool "Wireless extensions"
> default y
> ---help---
> - This option enables the legacy wireless extensions
> - (wireless network interface configuration via ioctls.)
> + This option enables the legacy wireless extensions.
> + Wireless extensions was the first 802.11 wireless configuration
> + API used by the networking subsystem. You will not need this unless
> + you have old userspace utilities or old wireless devices which
> + have not yet been ported to cfg80211.
I cannot agree with this wording -- all current tools still use wext
unless you go really experimental.
johannes
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 801 bytes --]
^ permalink raw reply
* Re: [PATCH v4 32/34] wireless: make mac80211 select cfg80211
From: Johannes Berg @ 2009-08-14 21:06 UTC (permalink / raw)
To: Luis R. Rodriguez; +Cc: linville, linux-wireless, Larry.Finger
In-Reply-To: <1250281559-13041-33-git-send-email-lrodriguez@atheros.com>
[-- Attachment #1: Type: text/plain, Size: 364 bytes --]
On Fri, 2009-08-14 at 16:25 -0400, Luis R. Rodriguez wrote:
> We can now remove that comment about mac80211 requiring
> cfg80211 and do that for the user.
"now"? What changed to make this possible?
NAK this change, because with it, it's possible to select
mac80211 = Y
-> cfg80211 = Y
while rfkill = M
which will break the kernel build.
johannes
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 801 bytes --]
^ permalink raw reply
* Re: [PATCH] b43: Fix sparse warnings
From: Gábor Stefanik @ 2009-08-14 21:04 UTC (permalink / raw)
To: Michael Buesch; +Cc: Pavel Roskin, linux-wireless, bcm43xx-dev, Larry Finger
In-Reply-To: <200908142300.01397.mb@bu3sch.de>
On Fri, Aug 14, 2009 at 11:00 PM, Michael Buesch<mb@bu3sch.de> wrote:
> On Friday 14 August 2009 22:52:13 Pavel Roskin wrote:
>> On Fri, 2009-08-14 at 22:15 +0200, Michael Buesch wrote:
>>
>> > > - b43_phy_mask(dev, 0x048A, (u16)~0x8000);
>> > > + b43_phy_mask(dev, 0x048A, (u16)(~0x8000 & 0xFFFF));
>> >
>
>> I would just use 0x7fff here.
>
> That does not work if 0x8000 is a #defined bit.
What about ~((u16)0x8000)? (Or maybe ~(u16)0x8000 is enough, without
the extra parentheses.)
>
> --
> Greetings, Michael.
> _______________________________________________
> Bcm43xx-dev mailing list
> Bcm43xx-dev@lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/bcm43xx-dev
>
--
Vista: [V]iruses, [I]ntruders, [S]pyware, [T]rojans and [A]dware. :-)
^ permalink raw reply
* Re: [PATCH v4 13/34] wireless: move AIRO_CS closer to AIRO_CS
From: Gábor Stefanik @ 2009-08-14 21:02 UTC (permalink / raw)
To: Pavel Roskin; +Cc: Luis R. Rodriguez, linville, linux-wireless, Larry.Finger
In-Reply-To: <1250283432.8137.19.camel@mj>
On Fri, Aug 14, 2009 at 10:57 PM, Pavel Roskin<proski@gnu.org> wrote:
> On Fri, 2009-08-14 at 16:25 -0400, Luis R. Rodriguez wrote:
>> Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
>
> You mean "wireless: move AIRO_CS closer to AIRO"
>
> Otherwise it's sort of pointless :-)
>
Unless AIRO_CS has a split personality. :-)
--
Vista: [V]iruses, [I]ntruders, [S]pyware, [T]rojans and [A]dware. :-)
^ permalink raw reply
* [PATCH] b43: LP-PHY: Fix another TX power control abuse
From: Gábor Stefanik @ 2009-08-14 21:00 UTC (permalink / raw)
To: John Linville, Michael Buesch, Larry Finger, Mark Huijgen
Cc: Broadcom Wireless, linux-wireless
This should fix the remaining WARN_ON.
Signed-off-by: Gábor Stefanik <netrolller.3d@gmail.com>
---
drivers/net/wireless/b43/phy_lp.c | 7 ++++---
1 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/net/wireless/b43/phy_lp.c b/drivers/net/wireless/b43/phy_lp.c
index bf89173..3872a31 100644
--- a/drivers/net/wireless/b43/phy_lp.c
+++ b/drivers/net/wireless/b43/phy_lp.c
@@ -1059,7 +1059,8 @@ static void lpphy_rev0_1_rc_calib(struct b43_wldev *dev)
bool old_txg_ovr;
u8 old_bbmult;
u16 old_rf_ovr, old_rf_ovrval, old_afe_ovr, old_afe_ovrval,
- old_rf2_ovr, old_rf2_ovrval, old_phy_ctl, old_txpctl;
+ old_rf2_ovr, old_rf2_ovrval, old_phy_ctl;
+ enum b43_lpphy_txpctl_mode old_txpctl;
u32 normal_pwr, ideal_pwr, mean_sq_pwr, tmp = 0, mean_sq_pwr_min = 0;
int loopback, i, j, inner_sum;
@@ -1077,8 +1078,8 @@ static void lpphy_rev0_1_rc_calib(struct b43_wldev *dev)
old_rf2_ovr = b43_phy_read(dev, B43_LPPHY_RF_OVERRIDE_2);
old_rf2_ovrval = b43_phy_read(dev, B43_LPPHY_RF_OVERRIDE_2_VAL);
old_phy_ctl = b43_phy_read(dev, B43_LPPHY_LP_PHY_CTL);
- old_txpctl = b43_phy_read(dev, B43_LPPHY_TX_PWR_CTL_CMD) &
- B43_LPPHY_TX_PWR_CTL_CMD_MODE;
+ lpphy_read_tx_pctl_mode_from_hardware(dev);
+ old_txpctl = lpphy->txpctl_mode;
lpphy_set_tx_power_control(dev, B43_LPPHY_TXPCTL_OFF);
lpphy_disable_crs(dev);
--
1.6.2.4
^ permalink raw reply related
* Re: [PATCH] b43: Fix sparse warnings
From: Michael Buesch @ 2009-08-14 21:00 UTC (permalink / raw)
To: Pavel Roskin; +Cc: Larry Finger, John W Linville, bcm43xx-dev, linux-wireless
In-Reply-To: <1250283133.8137.16.camel@mj>
On Friday 14 August 2009 22:52:13 Pavel Roskin wrote:
> On Fri, 2009-08-14 at 22:15 +0200, Michael Buesch wrote:
>
> > > - b43_phy_mask(dev, 0x048A, (u16)~0x8000);
> > > + b43_phy_mask(dev, 0x048A, (u16)(~0x8000 & 0xFFFF));
> >
> I would just use 0x7fff here.
That does not work if 0x8000 is a #defined bit.
--
Greetings, Michael.
^ permalink raw reply
* Re: [PATCH v4 13/34] wireless: move AIRO_CS closer to AIRO_CS
From: Pavel Roskin @ 2009-08-14 20:57 UTC (permalink / raw)
To: Luis R. Rodriguez; +Cc: linville, linux-wireless, Larry.Finger
In-Reply-To: <1250281559-13041-14-git-send-email-lrodriguez@atheros.com>
On Fri, 2009-08-14 at 16:25 -0400, Luis R. Rodriguez wrote:
> Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
You mean "wireless: move AIRO_CS closer to AIRO"
Otherwise it's sort of pointless :-)
--
Regards,
Pavel Roskin
^ permalink raw reply
* Re: [PATCH] ssb: Fix e typo in the rev8 SPROM extraction routine
From: Michael Buesch @ 2009-08-14 20:53 UTC (permalink / raw)
To: Gábor Stefanik
Cc: John Linville, Larry Finger, Mark Huijgen, Broadcom Wireless,
linux-wireless
In-Reply-To: <4A855489.6010102@gmail.com>
On Friday 14 August 2009 14:11:53 Gábor Stefanik wrote:
> No comment. :-)
>
> Signed-off-by: Gábor Stefanik <netrolller.3d@gmail.com>
> ---
> Mark, this should fix your MAC address bug.
> Anyone else testing LP-PHY should also apply this.
>
> drivers/ssb/pci.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/ssb/pci.c b/drivers/ssb/pci.c
> index 50811e4..335a43f 100644
> --- a/drivers/ssb/pci.c
> +++ b/drivers/ssb/pci.c
> @@ -480,7 +480,7 @@ static void sprom_extract_r8(struct ssb_sprom *out, const u16 *in)
>
> /* extract the MAC address */
> for (i = 0; i < 3; i++) {
> - v = in[SPOFF(SSB_SPROM1_IL0MAC) + i];
> + v = in[SPOFF(SSB_SPROM8_IL0MAC) + i];
> *(((__be16 *)out->il0mac) + i) = cpu_to_be16(v);
> }
> SPEX(country_code, SSB_SPROM8_CCODE, 0xFFFF, 0);
ack
--
Greetings, Michael.
^ permalink raw reply
* Re: [PATCH] b43: Fix sparse warnings
From: Pavel Roskin @ 2009-08-14 20:52 UTC (permalink / raw)
To: Michael Buesch; +Cc: Larry Finger, John W Linville, bcm43xx-dev, linux-wireless
In-Reply-To: <200908142215.38112.mb@bu3sch.de>
On Fri, 2009-08-14 at 22:15 +0200, Michael Buesch wrote:
> > - b43_phy_mask(dev, 0x048A, (u16)~0x8000);
> > + b43_phy_mask(dev, 0x048A, (u16)(~0x8000 & 0xFFFF));
>
> Uh come on...
> The u16 cast already is stupid as hell, but this is becoming braindead.
> The code is perfectly fine. Sparse should instead provide an option to disable
> this fragile check.
There are cases where we want to know that a constant was truncated. In
fact, in most cases it's a useful warning.
In this case, we intuitively expect that it's OK to cast a result of a
bitwise operation to its original type, as if it was never promoted.
But sparse will need to have a special exception for this case.
I would just use 0x7fff here.
--
Regards,
Pavel Roskin
^ permalink raw reply
* Re: [PATCH] b43: LP-PHY: Fix setting TX power control mode during RC calibration
From: Gábor Stefanik @ 2009-08-14 20:50 UTC (permalink / raw)
To: Larry Finger
Cc: John Linville, Michael Buesch, Mark Huijgen, linux-wireless,
Broadcom Wireless
In-Reply-To: <4A85CC6C.1030005@lwfinger.net>
2009/8/14 Larry Finger <Larry.Finger@lwfinger.net>:
> Gábor Stefanik wrote:
>> Call set_tx_power_control with a LPPHY_TXPCTL rather than an
>> LPPHY_TX_PWR_CTL_CMD_MODE.
>>
>> Signed-off-by: Gábor Stefanik <netrolller.3d@gmail.com>
>> ---
>> This should fix the WARN_ON testers were seeing during init.
>>
>> 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 adfa7bf..558224b 100644
>> --- a/drivers/net/wireless/b43/phy_lp.c
>> +++ b/drivers/net/wireless/b43/phy_lp.c
>> @@ -1080,7 +1080,7 @@ static void lpphy_rev0_1_rc_calib(struct b43_wldev *dev)
>> old_txpctl = b43_phy_read(dev, B43_LPPHY_TX_PWR_CTL_CMD) &
>> B43_LPPHY_TX_PWR_CTL_CMD_MODE;
>>
>> - lpphy_set_tx_power_control(dev, B43_LPPHY_TX_PWR_CTL_CMD_MODE_OFF);
>> + lpphy_set_tx_power_control(dev, B43_LPPHY_TXPCTL_OFF);
>> lpphy_disable_crs(dev);
>> loopback = lpphy_loopback(dev);
>> if (loopback == -1)
>
>
> With this one, I still get WARNING: at
> drivers/net/wireless/b43/phy_lp.c:1006
> lpphy_set_tx_power_control+0xbf/0xdd [b43]().
>
> To get rid of them, I need to modify the enum b43_lpphy_txpctl_mode{}
> as I wrote earlier.
Is ctl still 0? Please check.
>
> I'm also seeing the interface stopped and restarted. I'll try to track
> that down.
>
> Larry
>
>
>
--
Vista: [V]iruses, [I]ntruders, [S]pyware, [T]rojans and [A]dware. :-)
^ permalink raw reply
* Re: [PATCH] b43: LP-PHY: Fix setting TX power control mode during RC calibration
From: Larry Finger @ 2009-08-14 20:43 UTC (permalink / raw)
To: Gábor Stefanik
Cc: John Linville, Michael Buesch, Mark Huijgen, linux-wireless,
Broadcom Wireless
In-Reply-To: <4A85B8DE.3000704@gmail.com>
Gábor Stefanik wrote:
> Call set_tx_power_control with a LPPHY_TXPCTL rather than an
> LPPHY_TX_PWR_CTL_CMD_MODE.
>
> Signed-off-by: Gábor Stefanik <netrolller.3d@gmail.com>
> ---
> This should fix the WARN_ON testers were seeing during init.
>
> 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 adfa7bf..558224b 100644
> --- a/drivers/net/wireless/b43/phy_lp.c
> +++ b/drivers/net/wireless/b43/phy_lp.c
> @@ -1080,7 +1080,7 @@ static void lpphy_rev0_1_rc_calib(struct b43_wldev *dev)
> old_txpctl = b43_phy_read(dev, B43_LPPHY_TX_PWR_CTL_CMD) &
> B43_LPPHY_TX_PWR_CTL_CMD_MODE;
>
> - lpphy_set_tx_power_control(dev, B43_LPPHY_TX_PWR_CTL_CMD_MODE_OFF);
> + lpphy_set_tx_power_control(dev, B43_LPPHY_TXPCTL_OFF);
> lpphy_disable_crs(dev);
> loopback = lpphy_loopback(dev);
> if (loopback == -1)
With this one, I still get WARNING: at
drivers/net/wireless/b43/phy_lp.c:1006
lpphy_set_tx_power_control+0xbf/0xdd [b43]().
To get rid of them, I need to modify the enum b43_lpphy_txpctl_mode{}
as I wrote earlier.
I'm also seeing the interface stopped and restarted. I'll try to track
that down.
Larry
^ permalink raw reply
* Re: [PATCH] b43: Add LP-PHY firmware loading support
From: Michael Buesch @ 2009-08-14 20:41 UTC (permalink / raw)
To: Gábor Stefanik
Cc: John Linville, Larry Finger, Mark Huijgen, Broadcom Wireless,
linux-wireless
In-Reply-To: <69e28c910908141320x12e6988emc2bbdbb5fe1cecbe@mail.gmail.com>
On Friday 14 August 2009 22:20:55 Gábor Stefanik wrote:
> 2009/8/14 Michael Buesch <mb@bu3sch.de>:
> > On Friday 14 August 2009 13:51:59 Gábor Stefanik wrote:
> >> Add support for loading LP-PHY firmware to b43_try_request_fw.
> >>
> >> Signed-off-by: Gábor Stefanik <netrolller.3d@gmail.com>
> >
> > ack
> > --
> > Greetings, Michael.
> >
>
> This version is broken - ack "v3 this time really" instead.
>
yeah whatever
--
Greetings, Michael.
^ permalink raw reply
* [PATCH v4 34/34] wireless: mark prism54.ko as deprecated and mark for removal
From: Luis R. Rodriguez @ 2009-08-14 20:25 UTC (permalink / raw)
To: linville
Cc: linux-wireless, Larry.Finger, Luis R. Rodriguez, aquilaver,
linux-kernel, Dan Williams, Kai Engert, Jean Tourrilhes,
Tim de Waal, Roy Marples, Alan Cox, Christian Lamparter,
Björn Steinbrink, Tim Gardner, Johannes Berg
In-Reply-To: <1250281559-13041-1-git-send-email-lrodriguez@atheros.com>
The preferred modules is p54.ko, which also supports FullMAC
PCI / Cardbus devices. We schedule removal for 2.6.34. Reason
to remove this is no one really is testing prism54.ko anymore,
and while it works p54.ko provides support for the same hardware.
It should be noted I have been told some FullMAC devices may not
have worked with the SoftMAC driver but to date we have yet to
recieve a single bug report regarding this. If there are users
out there please let us know!
Cc: aquilaver@yahoo.com
Cc: linux-kernel@vger.kernel.org
Cc: Dan Williams <dcbw@redhat.com>
Cc: Kai Engert <kengert@redhat.com>
Cc: Jean Tourrilhes <jt@hpl.hp.com>
Cc: Tim de Waal<tim.dewaal@yahoo.com>
Cc: Roy Marples <uberlord@gentoo.org>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Christian Lamparter <chunkeey@web.de>
Cc: Björn Steinbrink <B.Steinbrink@gmx.de>
Cc: Tim Gardner <tim.gardner@canonical.com>
Cc: Larry Finger <Larry.Finger@lwfinger.net>
Cc: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
---
Documentation/feature-removal-schedule.txt | 29 +++++++++++++++
drivers/net/wireless/Kconfig | 53 +++++++--------------------
2 files changed, 43 insertions(+), 39 deletions(-)
diff --git a/Documentation/feature-removal-schedule.txt b/Documentation/feature-removal-schedule.txt
index 09e031c..e887764 100644
--- a/Documentation/feature-removal-schedule.txt
+++ b/Documentation/feature-removal-schedule.txt
@@ -6,6 +6,35 @@ be removed from this file.
---------------------------
+What: PRISM54
+When: 2.6.34
+
+Why: prism54 FullMAC PCI / Cardbus devices used to be supported only by the
+ prism54.ko wireless driver. After Intersil stopped selling these
+ devices in preference for the newer more flexible SoftMAC devices
+ a SoftMAC device driver was required and prism54.ko did not support
+ them. The p54 driver now exists and has been present in the kernel for
+ a while. This driver supports both SoftMAC devices and FullMAC devices.
+ The main difference between these devices was the amount of memory which
+ could be used for the firmware. The SoftMAC devices support a smaller
+ amount of memory. Because of this the SoftMAC firmware fits into FullMAC
+ devices's memory. p54 supports not only PCI / Cardbus but also USB
+ and SPI. Since p54.ko supports all devices prism54.ko supports
+ you will have a conflict. I'm not quite sure how distributions are
+ handling this conflict right now. prism54.ko was kept around due to
+ claims users may experience issues when using the SoftMAC driver.
+ Time has passed users have not reported issues. If you use prism54.ko
+ and for whatever reason you cannot use p54.ko please let us know!
+ E-mail us at: linux-wireless@vger.kernel.org
+
+ For more information see the p54 wiki page:
+
+ http://wireless.kernel.org/en/users/Drivers/p54
+
+Who: Luis R. Rodriguez <lrodriguez@atheros.com>
+
+---------------------------
+
What: IRQF_SAMPLE_RANDOM
Check: IRQF_SAMPLE_RANDOM
When: July 2009
diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig
index 2b0fdf4..974c4ae 100644
--- a/drivers/net/wireless/Kconfig
+++ b/drivers/net/wireless/Kconfig
@@ -267,51 +267,26 @@ if CONEXANT_ST_80211
source "drivers/net/wireless/p54/Kconfig"
config PRISM54
- tristate 'Intersil Prism GT/Duette/Indigo PCI/Cardbus'
+ tristate 'Intersil Prism GT/Duette/Indigo PCI/Cardbus (DEPRECATED)'
depends on PCI && EXPERIMENTAL
select WIRELESS_EXT
select FW_LOADER
---help---
- Enable PCI and Cardbus support for the following chipset based cards:
+ This enables support for FullMAC PCI/Cardbus prism54 devices. This
+ driver is now deprecated in favor for the SoftMAC driver, p54. p54
+ supports FullMAC PCI/Cardbus devices as well. For details on the
+ removal of this driver on the kernel see the feature removal
+ schedule:
- ISL3880 - Prism GT 802.11 b/g
- ISL3877 - Prism Indigo 802.11 a
- ISL3890 - Prism Duette 802.11 a/b/g
-
- For a complete list of supported cards visit <http://prism54.org>.
- Here is the latest confirmed list of supported cards:
-
- 3com OfficeConnect 11g Cardbus Card aka 3CRWE154G72 (version 1)
- Allnet ALL0271 PCI Card
- Compex WL54G Cardbus Card
- Corega CG-WLCB54GT Cardbus Card
- D-Link Air Plus Xtreme G A1 Cardbus Card aka DWL-g650
- I-O Data WN-G54/CB Cardbus Card
- Kobishi XG-300 aka Z-Com Cardbus Card
- Netgear WG511 Cardbus Card
- Ovislink WL-5400PCI PCI Card
- Peabird WLG-PCI PCI Card
- Sitecom WL-100i Cardbus Card
- Sitecom WL-110i PCI Card
- SMC2802W - EZ Connect g 2.4GHz 54 Mbps Wireless PCI Card
- SMC2835W - EZ Connect g 2.4GHz 54 Mbps Wireless Cardbus Card
- SMC2835W-V2 - EZ Connect g 2.4GHz 54 Mbps Wireless Cardbus Card
- Z-Com XG-900 PCI Card
- Zyxel G-100 Cardbus Card
-
- If you enable this you will need a firmware file as well.
- You will need to copy this to /usr/lib/hotplug/firmware/isl3890.
- You can get this non-GPL'd firmware file from the Prism54 project page:
- <http://prism54.org>
- You will also need the /etc/hotplug/firmware.agent script from
- a current hotplug package.
-
- Note: You need a motherboard with DMA support to use any of these cards
+ Documentation/feature-removal-schedule.txt
+
+ For more information refer to the prism54 wiki:
+
+ http://wireless.kernel.org/en/users/Drivers/p54
+
+ Note: You need a motherboard with DMA support to use any of these cards
- If you want to compile the driver as a module ( = code which can be
- inserted in and removed from the running kernel whenever you want),
- say M here and read <file:Documentation/kbuild/modules.txt>.
- The module will be called prism54.
+ When built as module you get prism54.ko
endif # CONEXANT_ST_80211
--
1.6.2.5
^ permalink raw reply related
* [PATCH v4 33/34] wireless: remove mac80211 rate selection extra menu
From: Luis R. Rodriguez @ 2009-08-14 20:25 UTC (permalink / raw)
To: linville; +Cc: linux-wireless, Larry.Finger, Luis R. Rodriguez, Johannes Berg
In-Reply-To: <1250281559-13041-1-git-send-email-lrodriguez@atheros.com>
We can just display this upon enabling mac80211 with an
'if MAC80211 != n' check.
Cc: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
---
net/mac80211/Kconfig | 5 ++---
1 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/net/mac80211/Kconfig b/net/mac80211/Kconfig
index 6293b21..8e4c8cf 100644
--- a/net/mac80211/Kconfig
+++ b/net/mac80211/Kconfig
@@ -28,8 +28,7 @@ config MAC80211
When built as a module mac80211 will be built as mac80211.ko, if not sure
you should build this as a module.
-menu "Rate control algorithm selection"
- depends on MAC80211 != n
+if MAC80211 != n
config MAC80211_RC_PID
bool "PID controller based rate control algorithm" if EMBEDDED
@@ -76,7 +75,7 @@ config MAC80211_RC_DEFAULT
default "pid" if MAC80211_RC_DEFAULT_PID
default ""
-endmenu
+endif
config MAC80211_MESH
bool "Enable mac80211 mesh networking (pre-802.11s) support"
--
1.6.2.5
^ permalink raw reply related
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox