Linux wireless drivers development
 help / color / mirror / Atom feed
* [PATCH v5 07/33] wireless: move zd1211rw option closer to old ZyDAS on kconfig
From: Luis R. Rodriguez @ 2009-08-17 17:27 UTC (permalink / raw)
  To: linville; +Cc: linux-wireless, Luis R. Rodriguez, Daniel Drake, Stephen Chen
In-Reply-To: <1250530052-14783-1-git-send-email-lrodriguez@atheros.com>

Cc: Daniel Drake <dsd@gentoo.org>
Cc: Stephen Chen <stephen.chen@atheros.com>
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
---
 drivers/net/wireless/Kconfig |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig
index a123f6e..9f1b5b6 100644
--- a/drivers/net/wireless/Kconfig
+++ b/drivers/net/wireless/Kconfig
@@ -347,6 +347,8 @@ config PRISM54
 
 endif # CONEXANT_ST_80211
 
+source "drivers/net/wireless/zd1211rw/Kconfig"
+
 config USB_ZD1201
 	tristate "USB ZD1201 based Wireless device support"
 	depends on USB && WLAN_80211
@@ -539,7 +541,6 @@ endif # INTEL_80211
 source "drivers/net/wireless/hostap/Kconfig"
 source "drivers/net/wireless/b43/Kconfig"
 source "drivers/net/wireless/b43legacy/Kconfig"
-source "drivers/net/wireless/zd1211rw/Kconfig"
 source "drivers/net/wireless/rt2x00/Kconfig"
 source "drivers/net/wireless/orinoco/Kconfig"
 source "drivers/net/wireless/wl12xx/Kconfig"
-- 
1.6.2.5


^ permalink raw reply related

* [PATCH v5 00/33] wireless: kconfig updates
From: Luis R. Rodriguez @ 2009-08-17 17:26 UTC (permalink / raw)
  To: linville; +Cc: linux-wireless, Luis R. Rodriguez

This is revision number 5 on the wireless kconfig updates, I apologize
for the spam but I had to rebase based on reviews on some earlier
patches. In this series I've removed the .ko references for modules
both in the commit logs and in the kconfig entries, I've also
made the changes pointed out in the TI kconfig, and left the comments
on the mac80211 and cfg80211 kconfig simpler based on johill's feedback.

I left out the patch that selects cfg80211 when you select mac80211
as there is an issue there that is still under review (building cfg80211
and mac80211 built-in but rfkill as a module).

Luis R. Rodriguez (33):
  wireless: move iwmc3200wifi closer to the other intel drivers
  wireless: group intel wireless drivers on kconfig
  wireless: move MWL8K right below libertas on kconfig
  wireless: group Marvell wireless in kconfig
  wireless: move p54 and prism54 drivers closer on kconfig
  wireless: group Conexant / STEricsson drivers in kconfig
  wireless: move zd1211rw option closer to old ZyDAS on kconfig
  wireless: group ZyDAS wireless drivers in kconfig
  wireless: group Realtek wireless on kconfig
  wireless: group Broadcom drivers on kconfig
  wireless: clarify rndis_wlan is not broadcom specific
  wireless: group Atmel wireless together on kconfig
  wireless: move AIRO_CS closer to AIRO_CS
  wireless: group Cisco together on kconfig
  wireless: move group drivers together
  wireless: organize group drivers alphabetically
  wireless: remove IEEE 802.11 description on hostapd
  wireless: move mac80211_hwsim to top level wireless driver menu
  wireless: organize individual drivers alphabetically
  wireless: simplify WLAN_PRE80211 entries
  wireless: simplify WLAN_80211 entries
  wireless: remove "Wireless" from rndis kconfig entry
  wireless: downgrade TI driver from menuconfig to config
  wireless: Update TI kconfig description
  wireless: make ath consistent with the other groups
  wireless: mark prism54 as deprecated and mark for removal
  wireless: update top level wireless driver entry
  wireless: update wireless kconfig description
  wireless: update cfg80211 kconfig entry
  wireless: update reg debug kconfig entry
  wireless: update WIRELESS_EXT kconfig entry
  wireless: update mac80211 kconfig entry
  wireless: remove mac80211 rate selection extra menu

 Documentation/feature-removal-schedule.txt |   29 ++
 drivers/net/wireless/Kconfig               |  522 ++++++++++++++++------------
 drivers/net/wireless/ath/Kconfig           |    3 +-
 drivers/net/wireless/ath/ar9170/Kconfig    |    2 +-
 drivers/net/wireless/ath/ath5k/Kconfig     |    2 +-
 drivers/net/wireless/ath/ath9k/Kconfig     |    2 +-
 drivers/net/wireless/b43/Kconfig           |    2 +-
 drivers/net/wireless/b43legacy/Kconfig     |    2 +-
 drivers/net/wireless/hostap/Kconfig        |    3 +-
 drivers/net/wireless/ipw2x00/Kconfig       |    6 +-
 drivers/net/wireless/iwlwifi/Kconfig       |    2 +-
 drivers/net/wireless/iwmc3200wifi/Kconfig  |    2 +-
 drivers/net/wireless/orinoco/Kconfig       |    2 +-
 drivers/net/wireless/p54/Kconfig           |    2 +-
 drivers/net/wireless/rt2x00/Kconfig        |    2 +-
 drivers/net/wireless/wl12xx/Kconfig        |   17 +-
 drivers/net/wireless/zd1211rw/Kconfig      |    2 +-
 net/Kconfig                                |    8 +-
 net/mac80211/Kconfig                       |   24 +-
 net/wireless/Kconfig                       |   27 ++-
 20 files changed, 406 insertions(+), 255 deletions(-)


^ permalink raw reply

* [PATCH v5 03/33] wireless: move MWL8K right below libertas on kconfig
From: Luis R. Rodriguez @ 2009-08-17 17:27 UTC (permalink / raw)
  To: linville; +Cc: linux-wireless, Luis R. Rodriguez
In-Reply-To: <1250530052-14783-1-git-send-email-lrodriguez@atheros.com>

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
---
 drivers/net/wireless/Kconfig |   18 +++++++++---------
 1 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig
index ab7a185..abb6930 100644
--- a/drivers/net/wireless/Kconfig
+++ b/drivers/net/wireless/Kconfig
@@ -176,6 +176,15 @@ config LIBERTAS_THINFIRM_USB
 	---help---
 	  A driver for Marvell Libertas 8388 USB devices using thinfirm.
 
+config MWL8K
+	tristate "Marvell 88W8xxx PCI/PCIe Wireless support"
+	depends on MAC80211 && PCI && WLAN_80211 && EXPERIMENTAL
+	---help---
+	  This driver supports Marvell TOPDOG 802.11 wireless cards.
+
+	  To compile this driver as a module, choose M here: the module
+	  will be called mwl8k.  If unsure, say N.
+
 config AIRO
 	tristate "Cisco/Aironet 34X/35X/4500/4800 ISA and PCI cards"
 	depends on ISA_DMA_API && WLAN_80211 && (PCI || BROKEN)
@@ -484,15 +493,6 @@ config MAC80211_HWSIM
 	  To compile this driver as a module, choose M here: the module will be
 	  called mac80211_hwsim.  If unsure, say N.
 
-config MWL8K
-	tristate "Marvell 88W8xxx PCI/PCIe Wireless support"
-	depends on MAC80211 && PCI && WLAN_80211 && EXPERIMENTAL
-	---help---
-	  This driver supports Marvell TOPDOG 802.11 wireless cards.
-
-	  To compile this driver as a module, choose M here: the module
-	  will be called mwl8k.  If unsure, say N.
-
 source "drivers/net/wireless/p54/Kconfig"
 source "drivers/net/wireless/ath/Kconfig"
 
-- 
1.6.2.5


^ permalink raw reply related

* [PATCH v5 08/33] wireless: group ZyDAS wireless drivers in kconfig
From: Luis R. Rodriguez @ 2009-08-17 17:27 UTC (permalink / raw)
  To: linville; +Cc: linux-wireless, Luis R. Rodriguez, Daniel Drake, Stephen Chen
In-Reply-To: <1250530052-14783-1-git-send-email-lrodriguez@atheros.com>

There's only a few of these so we keep them under a config option
which expands upon selection.

Cc: Daniel Drake <dsd@gentoo.org>
Cc: Stephen Chen <stephen.chen@atheros.com>
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
---
 drivers/net/wireless/Kconfig |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig
index 9f1b5b6..a04ca56 100644
--- a/drivers/net/wireless/Kconfig
+++ b/drivers/net/wireless/Kconfig
@@ -347,6 +347,15 @@ config PRISM54
 
 endif # CONEXANT_ST_80211
 
+config ZYDAS_80211
+	bool "ZyDAS"
+	depends on WLAN_80211
+	---help---
+	  This will enable the support for ZyDAS wireless drivers. This includes
+	  the 802.11g zd1211rw usb driver and the older 802.11b zd1201 usb driver.
+
+if ZYDAS_80211
+
 source "drivers/net/wireless/zd1211rw/Kconfig"
 
 config USB_ZD1201
@@ -367,6 +376,8 @@ config USB_ZD1201
 	  To compile this driver as a module, choose M here: the
 	  module will be called zd1201.
 
+endif # ZYDAS_80211
+
 config USB_NET_RNDIS_WLAN
 	tristate "Wireless RNDIS USB support"
 	depends on USB && WLAN_80211 && EXPERIMENTAL
-- 
1.6.2.5


^ permalink raw reply related

* [PATCH v5 01/33] wireless: move iwmc3200wifi closer to the other intel drivers
From: Luis R. Rodriguez @ 2009-08-17 17:27 UTC (permalink / raw)
  To: linville
  Cc: linux-wireless, Luis R. Rodriguez, Zhu Yi, Wey-Yi Guy,
	Samuel Ortiz, Reinette Chatre
In-Reply-To: <1250530052-14783-1-git-send-email-lrodriguez@atheros.com>

Cc: Zhu Yi <yi.zhu@intel.com>
Cc: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Cc: Samuel Ortiz <samuel.ortiz@intel.com>
Cc: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
---
 drivers/net/wireless/Kconfig |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig
index dda7cc2..72dbac6 100644
--- a/drivers/net/wireless/Kconfig
+++ b/drivers/net/wireless/Kconfig
@@ -497,6 +497,7 @@ source "drivers/net/wireless/p54/Kconfig"
 source "drivers/net/wireless/ath/Kconfig"
 source "drivers/net/wireless/ipw2x00/Kconfig"
 source "drivers/net/wireless/iwlwifi/Kconfig"
+source "drivers/net/wireless/iwmc3200wifi/Kconfig"
 source "drivers/net/wireless/hostap/Kconfig"
 source "drivers/net/wireless/b43/Kconfig"
 source "drivers/net/wireless/b43legacy/Kconfig"
@@ -504,6 +505,5 @@ source "drivers/net/wireless/zd1211rw/Kconfig"
 source "drivers/net/wireless/rt2x00/Kconfig"
 source "drivers/net/wireless/orinoco/Kconfig"
 source "drivers/net/wireless/wl12xx/Kconfig"
-source "drivers/net/wireless/iwmc3200wifi/Kconfig"
 
 endmenu
-- 
1.6.2.5


^ permalink raw reply related

* [PATCH v5 06/33] wireless: group Conexant / STEricsson drivers in kconfig
From: Luis R. Rodriguez @ 2009-08-17 17:27 UTC (permalink / raw)
  To: linville; +Cc: linux-wireless, Luis R. Rodriguez, Christian Lamparter,
	Kalle Valo
In-Reply-To: <1250530052-14783-1-git-send-email-lrodriguez@atheros.com>

There's only a few of these so we keep them under a
config option which expands upon selection.

Cc: Christian Lamparter <chunkeey@web.de>
Cc: Kalle Valo <kalle.valo@nokia.com>
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
---
 drivers/net/wireless/Kconfig |   14 ++++++++++++++
 1 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig
index cfd192e..a123f6e 100644
--- a/drivers/net/wireless/Kconfig
+++ b/drivers/net/wireless/Kconfig
@@ -284,6 +284,18 @@ config PCMCIA_WL3501
 	 It has basic support for Linux wireless extensions and initial
 	 micro support for ethtool.
 
+config CONEXANT_ST_80211
+	bool "Intersil / Conexant / STEricsson"
+	depends on WLAN_80211
+	---help---
+	  This will enable the support for Intersil / Conexant and STEricsson
+	  wireless drivers. All these companies have sell wireless cards which
+	  have shared common parts one way or another. The drivers for these cards
+	  include the mac80211 based p54 drivers for PCI, USB and SPI (Nokia N810
+	  and N800), and and the old PCI FullMAC driver prism54.
+
+if CONEXANT_ST_80211
+
 source "drivers/net/wireless/p54/Kconfig"
 
 config PRISM54
@@ -333,6 +345,8 @@ config PRISM54
 	  say M here and read <file:Documentation/kbuild/modules.txt>.
 	  The module will be called prism54.
 
+endif # CONEXANT_ST_80211
+
 config USB_ZD1201
 	tristate "USB ZD1201 based Wireless device support"
 	depends on USB && WLAN_80211
-- 
1.6.2.5


^ permalink raw reply related

* [PATCH v5 12/33] wireless: group Atmel wireless together on kconfig
From: Luis R. Rodriguez @ 2009-08-17 17:27 UTC (permalink / raw)
  To: linville; +Cc: linux-wireless, Luis R. Rodriguez
In-Reply-To: <1250530052-14783-1-git-send-email-lrodriguez@atheros.com>

There's only a few of these so we keep them under a config option
which expands upon selection.

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
---
 drivers/net/wireless/Kconfig |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig
index c557056..b489d9c 100644
--- a/drivers/net/wireless/Kconfig
+++ b/drivers/net/wireless/Kconfig
@@ -213,6 +213,14 @@ config AIRO
 
 	  The driver can be compiled as a module and will be named "airo".
 
+config ATMEL_80211
+	bool "Atmel"
+	depends on WLAN_80211
+	---help---
+	  This will enable the support for Atmel wireless drivers.
+
+if ATMEL_80211
+
 config ATMEL
       tristate "Atmel at76c50x chipset  802.11b support"
       depends on (PCI || PCMCIA) && WLAN_80211
@@ -255,6 +263,8 @@ config AT76C50X_USB
           Enable support for USB Wireless devices using Atmel at76c503,
           at76c505 or at76c505a chips.
 
+endif # ATMEL_80211
+
 config AIRO_CS
 	tristate "Cisco/Aironet 34X/35X/4500/4800 PCMCIA cards"
 	depends on PCMCIA && (BROKEN || !M32R) && WLAN_80211
-- 
1.6.2.5


^ permalink raw reply related

* [PATCH v5 02/33] wireless: group intel wireless drivers on kconfig
From: Luis R. Rodriguez @ 2009-08-17 17:27 UTC (permalink / raw)
  To: linville
  Cc: linux-wireless, Luis R. Rodriguez, Zhu Yi, Wey-Yi Guy,
	Samuel Ortiz, Reinette Chatre
In-Reply-To: <1250530052-14783-1-git-send-email-lrodriguez@atheros.com>

This moves intel wireless drivers into their own menu.
Intel drivers are plenty and so are their driver options so we
give them its own menuconfig.

Cc: Zhu Yi <yi.zhu@intel.com>
Cc: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Cc: Samuel Ortiz <samuel.ortiz@intel.com>
Cc: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
---
 drivers/net/wireless/Kconfig |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig
index 72dbac6..ab7a185 100644
--- a/drivers/net/wireless/Kconfig
+++ b/drivers/net/wireless/Kconfig
@@ -495,9 +495,22 @@ config MWL8K
 
 source "drivers/net/wireless/p54/Kconfig"
 source "drivers/net/wireless/ath/Kconfig"
+
+menuconfig INTEL_80211
+	bool "Intel"
+	depends on WLAN_80211
+	---help---
+	  This will enable the support for Intel wireless drivers. This
+	  includes ipw2100, ipw2200, iwl3945, iwlagn, and iwmc3200wifi
+
+if INTEL_80211
+
 source "drivers/net/wireless/ipw2x00/Kconfig"
 source "drivers/net/wireless/iwlwifi/Kconfig"
 source "drivers/net/wireless/iwmc3200wifi/Kconfig"
+
+endif # INTEL_80211
+
 source "drivers/net/wireless/hostap/Kconfig"
 source "drivers/net/wireless/b43/Kconfig"
 source "drivers/net/wireless/b43legacy/Kconfig"
-- 
1.6.2.5


^ permalink raw reply related

* [PATCH v5 05/33] wireless: move p54 and prism54 drivers closer on kconfig
From: Luis R. Rodriguez @ 2009-08-17 17:27 UTC (permalink / raw)
  To: linville; +Cc: linux-wireless, Luis R. Rodriguez, Christian Lamparter
In-Reply-To: <1250530052-14783-1-git-send-email-lrodriguez@atheros.com>

Cc: Christian Lamparter <chunkeey@web.de>
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
---
 drivers/net/wireless/Kconfig |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig
index fdf0257..cfd192e 100644
--- a/drivers/net/wireless/Kconfig
+++ b/drivers/net/wireless/Kconfig
@@ -284,6 +284,8 @@ config PCMCIA_WL3501
 	 It has basic support for Linux wireless extensions and initial
 	 micro support for ethtool.
 
+source "drivers/net/wireless/p54/Kconfig"
+
 config PRISM54
 	tristate 'Intersil Prism GT/Duette/Indigo PCI/Cardbus' 
 	depends on PCI && EXPERIMENTAL && WLAN_80211
@@ -503,7 +505,6 @@ config MAC80211_HWSIM
 	  To compile this driver as a module, choose M here: the module will be
 	  called mac80211_hwsim.  If unsure, say N.
 
-source "drivers/net/wireless/p54/Kconfig"
 source "drivers/net/wireless/ath/Kconfig"
 
 menuconfig INTEL_80211
-- 
1.6.2.5


^ permalink raw reply related

* Re: [PATCH v4 34/34] wireless: mark prism54.ko as deprecated and mark for removal
From: Luis R. Rodriguez @ 2009-08-17 17:06 UTC (permalink / raw)
  To: Johannes Berg
  Cc: Luis Rodriguez, linville@tuxdriver.com,
	linux-wireless@vger.kernel.org, Larry.Finger@lwfinger.net,
	aquilaver@yahoo.com, linux-kernel@vger.kernel.org, Dan Williams,
	Kai Engert, Jean Tourrilhes, Tim de Waal, Roy Marples, Alan Cox,
	Christian Lamparter, Björn Steinbrink, Tim Gardner
In-Reply-To: <1250323182.15069.0.camel@johannes.local>

On Sat, Aug 15, 2009 at 12:59:42AM -0700, Johannes Berg wrote:
> On Fri, 2009-08-14 at 16:25 -0400, Luis R. Rodriguez wrote:
> > 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!
> 
> Not that I care about the changelog, but I do find it illogical to refer
> to modules w/o .ko everywhere and then with .ko in the changelog. Of
> course you were consistent ;)

Heh I've gone and cleaned this up in the series, I just removed the
.ko usage when I refer to modules in the entries and commit log.

> > -	  The module will be called prism54.
> > +	  When built as module you get prism54.ko
> 
> NAK this change.

Heh ok, changed it.

  Luis

^ permalink raw reply

* Re: [PATCH v4 32/34] wireless: make mac80211 select cfg80211
From: Luis R. Rodriguez @ 2009-08-17 17:00 UTC (permalink / raw)
  To: Johannes Berg; +Cc: linville, linux-wireless, Larry.Finger
In-Reply-To: <1250283993.4411.1.camel@johannes.local>

On Fri, Aug 14, 2009 at 2:06 PM, Johannes Berg<johannes@sipsolutions.net> wrote:
> 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.

I'm able to do this with current kconfig, does this need to be fixed?

  Luis

^ permalink raw reply

* [PATCH 5/7] rt2x00: wireless CLI ID and packet ID must not be 0
From: Ivo van Doorn @ 2009-08-17 16:55 UTC (permalink / raw)
  To: John Linville; +Cc: linux-wireless, users, Benoit PAPILLAULT
In-Reply-To: <200908171854.50790.IvDoorn@gmail.com>

In the TX descriptor the Packet ID must not be 0,
so add 1 to the ID. The wireless CLI ID is not allowed
to be 0 either, but also must be initialized with the
wcid value rather then keyid.

Based on a patch for rt2800pci from Benoit

Signed-off-by: Benoit PAPILLAULT <benoit.papillault@free.fr>
Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
---
 drivers/net/wireless/rt2x00/rt2800usb.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/wireless/rt2x00/rt2800usb.c b/drivers/net/wireless/rt2x00/rt2800usb.c
index 6de2eda..3633e58 100644
--- a/drivers/net/wireless/rt2x00/rt2800usb.c
+++ b/drivers/net/wireless/rt2x00/rt2800usb.c
@@ -1995,11 +1995,11 @@ static void rt2800usb_write_tx_desc(struct rt2x00_dev *rt2x00dev,
 	rt2x00_set_field32(&word, TXWI_W1_BW_WIN_SIZE, txdesc->ba_size);
 	rt2x00_set_field32(&word, TXWI_W1_WIRELESS_CLI_ID,
 			   test_bit(ENTRY_TXD_ENCRYPT, &txdesc->flags) ?
-			       txdesc->key_idx : 0xff);
+			       (skbdesc->entry->entry_idx + 1) : 0xff);
 	rt2x00_set_field32(&word, TXWI_W1_MPDU_TOTAL_BYTE_COUNT,
 			   skb->len - txdesc->l2pad);
 	rt2x00_set_field32(&word, TXWI_W1_PACKETID,
-			   skbdesc->entry->entry_idx);
+			   skbdesc->entry->queue->qid + 1);
 	rt2x00_desc_write(txwi, 1, word);
 
 	/*
-- 
1.6.4


^ permalink raw reply related

* [PATCH 6/7] rt2x00: Fix MCS register intialization
From: Ivo van Doorn @ 2009-08-17 16:55 UTC (permalink / raw)
  To: John Linville; +Cc: linux-wireless, users, Benoit PAPILLAULT
In-Reply-To: <200908171855.15390.IvDoorn@gmail.com>

According to the original Ralink driver,
LG_FBK_CFG0_OFDMMCS2FBK should be initialized to 9 rather then 3.

Based on a patch for rt2800pci from Benoit

Signed-off-by: Benoit PAPILLAULT <benoit.papillault@free.fr>
Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
---
 drivers/net/wireless/rt2x00/rt2800usb.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/wireless/rt2x00/rt2800usb.c b/drivers/net/wireless/rt2x00/rt2800usb.c
index 3633e58..45e02f1 100644
--- a/drivers/net/wireless/rt2x00/rt2800usb.c
+++ b/drivers/net/wireless/rt2x00/rt2800usb.c
@@ -1520,7 +1520,7 @@ static int rt2800usb_init_registers(struct rt2x00_dev *rt2x00dev)
 	rt2x00usb_register_read(rt2x00dev, LG_FBK_CFG0, &reg);
 	rt2x00_set_field32(&reg, LG_FBK_CFG0_OFDMMCS0FBK, 8);
 	rt2x00_set_field32(&reg, LG_FBK_CFG0_OFDMMCS1FBK, 8);
-	rt2x00_set_field32(&reg, LG_FBK_CFG0_OFDMMCS2FBK, 3);
+	rt2x00_set_field32(&reg, LG_FBK_CFG0_OFDMMCS2FBK, 9);
 	rt2x00_set_field32(&reg, LG_FBK_CFG0_OFDMMCS3FBK, 10);
 	rt2x00_set_field32(&reg, LG_FBK_CFG0_OFDMMCS4FBK, 11);
 	rt2x00_set_field32(&reg, LG_FBK_CFG0_OFDMMCS5FBK, 12);
-- 
1.6.4


^ permalink raw reply related

* [PATCH 7/7] rt2x00: Add support for retry rates
From: Ivo van Doorn @ 2009-08-17 16:56 UTC (permalink / raw)
  To: John Linville; +Cc: linux-wireless, users, Benoit PAPILLAULT
In-Reply-To: <200908171855.40486.IvDoorn@gmail.com>

From: Benoit PAPILLAULT <benoit.papillault@free.fr>

rt2800pci can handle different retry rates,
it will always step 1 rate down after a failed
transmission so creating the retry rate list
for mac80211 is quite simple.

Signed-off-by: Benoit PAPILLAULT <benoit.papillault@free.fr>
Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
---
 drivers/net/wireless/rt2x00/rt2x00dev.c   |   22 +++++++++++++++++-----
 drivers/net/wireless/rt2x00/rt2x00queue.h |    2 ++
 2 files changed, 19 insertions(+), 5 deletions(-)

diff --git a/drivers/net/wireless/rt2x00/rt2x00dev.c b/drivers/net/wireless/rt2x00/rt2x00dev.c
index b6676c6..9ab70e4 100644
--- a/drivers/net/wireless/rt2x00/rt2x00dev.c
+++ b/drivers/net/wireless/rt2x00/rt2x00dev.c
@@ -220,7 +220,8 @@ void rt2x00lib_txdone(struct queue_entry *entry,
 	struct skb_frame_desc *skbdesc = get_skb_frame_desc(entry->skb);
 	enum data_queue_qid qid = skb_get_queue_mapping(entry->skb);
 	unsigned int header_length = ieee80211_get_hdrlen_from_skb(entry->skb);
-	u8 rate_idx, rate_flags;
+	u8 rate_idx, rate_flags, retry_rates;
+	unsigned int i;
 
 	/*
 	 * Unmap the skb.
@@ -259,16 +260,27 @@ void rt2x00lib_txdone(struct queue_entry *entry,
 
 	rate_idx = skbdesc->tx_rate_idx;
 	rate_flags = skbdesc->tx_rate_flags;
+	retry_rates = test_bit(TXDONE_FALLBACK, &txdesc->flags) ?
+	    (txdesc->retry + 1) : 1;
 
 	/*
 	 * Initialize TX status
 	 */
 	memset(&tx_info->status, 0, sizeof(tx_info->status));
 	tx_info->status.ack_signal = 0;
-	tx_info->status.rates[0].idx = rate_idx;
-	tx_info->status.rates[0].flags = rate_flags;
-	tx_info->status.rates[0].count = txdesc->retry + 1;
-	tx_info->status.rates[1].idx = -1; /* terminate */
+
+	/*
+	 * Frame was send with retries, hardware tried
+	 * different rates to send out the frame, at each
+	 * retry it lowered the rate 1 step.
+	 */
+	for (i = 0; i < retry_rates && i < IEEE80211_TX_MAX_RATES; i++) {
+		tx_info->status.rates[i].idx = rate_idx - i;
+		tx_info->status.rates[i].flags = rate_flags;
+		tx_info->status.rates[i].count = 1;
+	}
+	if (i < (IEEE80211_TX_MAX_RATES -1))
+		tx_info->status.rates[i].idx = -1; /* terminate */
 
 	if (!(tx_info->flags & IEEE80211_TX_CTL_NO_ACK)) {
 		if (test_bit(TXDONE_SUCCESS, &txdesc->flags) ||
diff --git a/drivers/net/wireless/rt2x00/rt2x00queue.h b/drivers/net/wireless/rt2x00/rt2x00queue.h
index 47d175a..a5591fb 100644
--- a/drivers/net/wireless/rt2x00/rt2x00queue.h
+++ b/drivers/net/wireless/rt2x00/rt2x00queue.h
@@ -214,6 +214,7 @@ struct rxdone_entry_desc {
  *
  * @TXDONE_UNKNOWN: Hardware could not determine success of transmission.
  * @TXDONE_SUCCESS: Frame was successfully send
+ * @TXDONE_FALLBACK: Frame was successfully send using a fallback rate.
  * @TXDONE_FAILURE: Frame was not successfully send
  * @TXDONE_EXCESSIVE_RETRY: In addition to &TXDONE_FAILURE, the
  *	frame transmission failed due to excessive retries.
@@ -221,6 +222,7 @@ struct rxdone_entry_desc {
 enum txdone_entry_desc_flags {
 	TXDONE_UNKNOWN,
 	TXDONE_SUCCESS,
+	TXDONE_FALLBACK,
 	TXDONE_FAILURE,
 	TXDONE_EXCESSIVE_RETRY,
 };
-- 
1.6.4


^ permalink raw reply related

* [PATCH 4/7] rt2x00: Set SKBDESC_L2_PADDED in RX path
From: Ivo van Doorn @ 2009-08-17 16:54 UTC (permalink / raw)
  To: John Linville; +Cc: linux-wireless, users
In-Reply-To: <200908171854.19205.IvDoorn@gmail.com>

When the RX descriptor indicates the frame was L2 padded,
the SKBDESC_L2_PADDED flag should be set to make sure the
L2 padding is removed before it is send to mac80211.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
---
 drivers/net/wireless/rt2x00/rt2800usb.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/drivers/net/wireless/rt2x00/rt2800usb.c b/drivers/net/wireless/rt2x00/rt2800usb.c
index c82474e..6de2eda 100644
--- a/drivers/net/wireless/rt2x00/rt2800usb.c
+++ b/drivers/net/wireless/rt2x00/rt2800usb.c
@@ -2163,8 +2163,10 @@ static void rt2800usb_fill_rxdone(struct queue_entry *entry,
 	if (rt2x00_get_field32(rxd0, RXD_W0_MY_BSS))
 		rxdesc->dev_flags |= RXDONE_MY_BSS;
 
-	if (rt2x00_get_field32(rxd0, RXD_W0_L2PAD))
+	if (rt2x00_get_field32(rxd0, RXD_W0_L2PAD)) {
 		rxdesc->dev_flags |= RXDONE_L2PAD;
+		skbdesc->flags |= SKBDESC_L2_PADDED;
+	}
 
 	if (rt2x00_get_field32(rxwi1, RXWI_W1_SHORT_GI))
 		rxdesc->flags |= RX_FLAG_SHORT_GI;
-- 
1.6.4


^ permalink raw reply related

* [PATCH 3/7] rt2x00: Add new RF chip defines
From: Ivo van Doorn @ 2009-08-17 16:54 UTC (permalink / raw)
  To: John Linville; +Cc: linux-wireless, users
In-Reply-To: <200908171853.57397.IvDoorn@gmail.com>

Add new defines for RF chipsets which can be found
by the driver. We don't have to check for these
chips specifically yet, but it is better to have
the defines in now.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
---
 drivers/net/wireless/rt2x00/rt2800usb.h |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/drivers/net/wireless/rt2x00/rt2800usb.h b/drivers/net/wireless/rt2x00/rt2800usb.h
index a79a6d9..4d9991c 100644
--- a/drivers/net/wireless/rt2x00/rt2800usb.h
+++ b/drivers/net/wireless/rt2x00/rt2800usb.h
@@ -36,6 +36,9 @@
  * RF2750 2.4G/5G 1T2R
  * RF3020 2.4G 1T1R
  * RF2020 2.4G B/G
+ * RF3021 2.4G 1T2R
+ * RF3022 2.4G 2T2R
+ * RF3052 2.4G 2T2R
  */
 #define RF2820				0x0001
 #define RF2850				0x0002
@@ -43,6 +46,9 @@
 #define RF2750				0x0004
 #define RF3020				0x0005
 #define RF2020				0x0006
+#define RF3021				0x0007
+#define RF3022				0x0008
+#define RF3052				0x0009
 
 /*
  * RT2870 version
-- 
1.6.4


^ permalink raw reply related

* [PATCH 2/7] rt2x00: Fix for rt2800usb for SHARED_KEY_TABLE initializations
From: Ivo van Doorn @ 2009-08-17 16:53 UTC (permalink / raw)
  To: John Linville; +Cc: linux-wireless, users, Benoit PAPILLAULT
In-Reply-To: <200908171853.24256.IvDoorn@gmail.com>

Fixed comments about SHARED_KEY_TABLE_BASE and SHARED_KEY_MODE_BASE.
Fixed initialization loop for SHARED_KEY_MODE_ENTRY.

Based on a patch for rt2800pci from Benoit.

Signed-off-by: Benoit PAPILLAULT <benoit.papillault@free.fr>
Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
---
 drivers/net/wireless/rt2x00/rt2800usb.c |    8 ++++----
 drivers/net/wireless/rt2x00/rt2800usb.h |    4 ++--
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/net/wireless/rt2x00/rt2800usb.c b/drivers/net/wireless/rt2x00/rt2800usb.c
index 3856f06..c82474e 100644
--- a/drivers/net/wireless/rt2x00/rt2800usb.c
+++ b/drivers/net/wireless/rt2x00/rt2800usb.c
@@ -1463,6 +1463,10 @@ static int rt2800usb_init_registers(struct rt2x00_dev *rt2x00dev)
 	/*
 	 * ASIC will keep garbage value after boot, clear encryption keys.
 	 */
+	for (i = 0; i < 4; i++)
+		rt2x00usb_register_write(rt2x00dev,
+					 SHARED_KEY_MODE_ENTRY(i), 0);
+
 	for (i = 0; i < 256; i++) {
 		u32 wcid[2] = { 0xffffffff, 0x00ffffff };
 		rt2x00usb_register_multiwrite(rt2x00dev, MAC_WCID_ENTRY(i),
@@ -1472,10 +1476,6 @@ static int rt2800usb_init_registers(struct rt2x00_dev *rt2x00dev)
 		rt2x00usb_register_write(rt2x00dev, MAC_IVEIV_ENTRY(i), 0);
 	}
 
-	for (i = 0; i < 16; i++)
-		rt2x00usb_register_write(rt2x00dev,
-					 SHARED_KEY_MODE_ENTRY(i), 0);
-
 	/*
 	 * Clear all beacons
 	 * For the Beacon base registers we only need to clear
diff --git a/drivers/net/wireless/rt2x00/rt2800usb.h b/drivers/net/wireless/rt2x00/rt2800usb.h
index 2d9dc37..a79a6d9 100644
--- a/drivers/net/wireless/rt2x00/rt2800usb.h
+++ b/drivers/net/wireless/rt2x00/rt2800usb.h
@@ -1300,8 +1300,8 @@
  * PAIRWISE_KEY_TABLE_BASE: 32-byte * 256 entry
  * MAC_IVEIV_TABLE_BASE: 8-byte * 256-entry
  * MAC_WCID_ATTRIBUTE_BASE: 4-byte * 256-entry
- * SHARED_KEY_TABLE_BASE: 32-byte * 16-entry
- * SHARED_KEY_MODE_BASE: 4-byte * 16-entry
+ * SHARED_KEY_TABLE_BASE: 32 bytes * 32-entry
+ * SHARED_KEY_MODE_BASE: 4 bits * 32-entry
  */
 #define MAC_WCID_BASE			0x1800
 #define PAIRWISE_KEY_TABLE_BASE		0x4000
-- 
1.6.4


^ permalink raw reply related

* [PATCH 1/7] rt2x00: Fix RFKILL polling
From: Ivo van Doorn @ 2009-08-17 16:53 UTC (permalink / raw)
  To: John Linville; +Cc: linux-wireless, users

The rfkill_poll callback function in the drivers check a bit
to see if the RFKILL key has been pressed. However when the
bit is set it means the radio is active and the device can be
used.

The wiphy_rfkill_set_hw_state() function expects the inversed,
so '1' must be send when the radio must be disabled.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
---
 drivers/net/wireless/rt2x00/rt2x00mac.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/wireless/rt2x00/rt2x00mac.c b/drivers/net/wireless/rt2x00/rt2x00mac.c
index cb7b6d4..b27a250 100644
--- a/drivers/net/wireless/rt2x00/rt2x00mac.c
+++ b/drivers/net/wireless/rt2x00/rt2x00mac.c
@@ -704,8 +704,8 @@ EXPORT_SYMBOL_GPL(rt2x00mac_conf_tx);
 void rt2x00mac_rfkill_poll(struct ieee80211_hw *hw)
 {
 	struct rt2x00_dev *rt2x00dev = hw->priv;
-	bool blocked = !!rt2x00dev->ops->lib->rfkill_poll(rt2x00dev);
+	bool active = !!rt2x00dev->ops->lib->rfkill_poll(rt2x00dev);
 
-	wiphy_rfkill_set_hw_state(hw->wiphy, blocked);
+	wiphy_rfkill_set_hw_state(hw->wiphy, !active);
 }
 EXPORT_SYMBOL_GPL(rt2x00mac_rfkill_poll);
-- 
1.6.4


^ permalink raw reply related

* Re: [PATCH] mac80211: allow configure_filter callback to sleep
From: Luis R. Rodriguez @ 2009-08-17 16:06 UTC (permalink / raw)
  To: Johannes Berg; +Cc: John Linville, linux-wireless
In-Reply-To: <1250521206.15103.10.camel@johannes.local>

On Mon, Aug 17, 2009 at 8:00 AM, Johannes Berg<johannes@sipsolutions.net> wrote:
> On Mon, 2009-08-17 at 16:16 +0200, Johannes Berg wrote:
>> Over time, a whole bunch of drivers have come up
>> with their own scheme to delay the configure_filter
>> operation to a workqueue. To be able to simplify
>> things, allow configure_filter to sleep, and add
>> a new prepare_multicast callback that drivers that
>> need the multicast address list implement. This new
>> callback must be atomic, but most drivers either
>> don't care or just calculate a hash which can be
>> done atomically and then uploaded to the hardware
>> non-atomically.
>
> Oh I should probably mention that
>  1) I only tested with hwsim, but
>  2) I don't think it will break much since it doesn't really change most
>    drivers.

A pm-suspend->resume test might be nice as well.

  Luis

^ permalink raw reply

* Re: [PATCH] wl1251: correct definitions for 0th bit defines
From: Kalle Valo @ 2009-08-17 15:44 UTC (permalink / raw)
  To: Bob Copeland; +Cc: linville, linux-wireless
In-Reply-To: <20090817151814.GB13125@hash.localnet>

Bob Copeland <me@bobcopeland.com> writes:

> ACX_SLV_SOFT_RESET_BIT and ACX_REG_EEPROM_START_BIT are both defined
> as "1" in the vendor driver code, but they were defined to be BIT(1)
> ("2") here.  
>
> The SOFT_RESET typo ensures that wl1251_boot_soft_reset() doesn't;
> as a result the device hangs when trying to reprogram the PLL
> registers while running.

My bad, thanks for fixing this.

> Signed-off-by: Bob Copeland <me@bobcopeland.com>

Acked-by: Kalle Valo <kalle.valo@nokia.com>

-- 
Kalle Valo

^ permalink raw reply

* Re: [PATCH v4 10/34] wireless: group Broadcom drivers on kconfig
From: Luis R. Rodriguez @ 2009-08-17 15:35 UTC (permalink / raw)
  To: Gábor Stefanik
  Cc: Luis Rodriguez, linville@tuxdriver.com,
	linux-wireless@vger.kernel.org, Larry.Finger@lwfinger.net,
	Michael Buesch, Johannes Berg
In-Reply-To: <69e28c910908160615r7bcb3966s9c09319f607f64b1@mail.gmail.com>

On Sun, Aug 16, 2009 at 06:15:43AM -0700, Gábor Stefanik wrote:
> 2009/8/16 Luis R. Rodriguez <lrodriguez@atheros.com>:
> > 2009/8/15 Gábor Stefanik <netrolller.3d@gmail.com>:
> >> On Fri, Aug 14, 2009 at 10:25 PM, Luis R.
> >> Rodriguez<lrodriguez@atheros.com> wrote:
> >>> This moves Broadcom wireless drivers into their own menu.
> >>> There are only 2 Broadcom specific drivers so we group
> >>> them into a menu which can expand. Although rndis_wlan
> >>> also supports Broadcom devices, RNDIS is a spec and other
> >>> vendors could technically implement solutions with it
> >>> as well so we keep that separate as users most likely
> >>> won't look for those devices under a Broadcom tag.
> >>>
> >>> Cc: Michael Buesch <mb@bu3sch.de>
> >>> Cc: Gábor Stefanik <netrolller.3d@gmail.com>
> >>> Cc: Johannes Berg <johannes@sipsolutions.net>
> >>> Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
> >>> ---
> >>>  drivers/net/wireless/Kconfig |   13 +++++++++++++
> >>>  1 files changed, 13 insertions(+), 0 deletions(-)
> >>>
> >>> diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig
> >>> index c2e88dc..150565d 100644
> >>> --- a/drivers/net/wireless/Kconfig
> >>> +++ b/drivers/net/wireless/Kconfig
> >>> @@ -561,8 +561,21 @@ source "drivers/net/wireless/iwmc3200wifi/Kconfig"
> >>>  endif # INTEL_80211
> >>>
> >>>  source "drivers/net/wireless/hostap/Kconfig"
> >>> +
> >>> +config BROADCOM_80211
> >>> +       bool "Broadcom"
> >>> +       depends on WLAN_80211
> >>> +       ---help---
> >>> +         This will enable the support for Broadcom wireless drivers. This
> >>> +         includes b43 driver, b43legacy driver and the rndis_wlan driver.
> >>
> >> NAK. Again, rndis_wlan is Microsoft, not Broadcom.
> >
> > Yes, the patch does not group rndis with broadcom, please re-read the patch.
> >
> >  Luis
> >
> 
> But it does say "This includes b43 driver, b43legacy driver and the
> rndis_wlan driver.", which is wrong.

Ah indeed. Thanks for the review.

  Luis

^ permalink raw reply

* Re: [PATCH v2] cfg80211: fix deadlock
From: Kalle Valo @ 2009-08-17 15:31 UTC (permalink / raw)
  To: Johannes Berg; +Cc: John Linville, linux-wireless, Christian Lamparter
In-Reply-To: <1250504737.15103.1.camel@johannes.local>

Johannes Berg <johannes@sipsolutions.net> writes:

> When removing an interface with nl80211, cfg80211 will
> deadlock in the netdev notifier because we're already
> holding rdev->mtx and try to acquire it again to verify
> the scan has been done.
>
> This bug was introduced by my patch
> "cfg80211: check for and abort dangling scan requests".

[...]

> Reported-by: Christian Lamparter <chunkeey@web.de>
> Signed-off-by: Johannes Berg <johannes@sipsolutions.net>

I was bitten by the bug as well and this patch fixed it. Thanks.

Tested-by: Kalle Valo <kalle.valo@iki.fi>

-- 
Kalle Valo

^ permalink raw reply

* Re: 2.6.31-rc6 lockdep report
From: John W. Linville @ 2009-08-17 15:24 UTC (permalink / raw)
  To: Johannes Berg; +Cc: Bob Copeland, linux-wireless
In-Reply-To: <1250522209.15103.19.camel@johannes.local>

On Mon, Aug 17, 2009 at 05:16:49PM +0200, Johannes Berg wrote:
> On Mon, 2009-08-17 at 11:12 -0400, Bob Copeland wrote:
> > Haven't looked at it yet, I just hit this one while riding the
> > train this morning and connecting to someone's adhoc station.
> > 
> > [43559.227490] wlan0: Selected IBSS BSSID 2a:51:0a:35:5c:a1 based on configured SSID
> > [43559.258660] ath5k phy0: bf=efb0b680 bf_skb=(null)
> > [43559.291501] phy0: Adding new IBSS station 00:21:e9:94:5e:93 (dev=wlan0)
> > [43559.291518] phy0: Allocated STA 00:21:e9:94:5e:93
> > [43559.292327] phy0: Inserted STA 00:21:e9:94:5e:93
> > [43633.646820] phy0: Adding new IBSS station 00:1e:c2:3b:f4:e3 (dev=wlan0)
> > [43633.646838] phy0: Allocated STA 00:1e:c2:3b:f4:e3
> > [43633.646859] 
> > [43633.646860] =========================================================
> > [43633.646864] [ INFO: possible irq lock inversion dependency detected ]
> > [43633.646867] 2.6.31-rc6 #179
> > [43633.646870] ---------------------------------------------------------
> > [43633.646873] cc1/18756 just changed the state of lock:
> > [43633.646876]  (&local->sta_lock){..-...}, at: [<fa244acd>] sta_info_insert+0x91/0x174 [mac80211]
> > [43633.646900] but this lock took another, SOFTIRQ-unsafe lock in the past:
> > [43633.646903]  (todo_lock){+.+...}
> > [43633.646906] 
> > [43633.646907] and interrupts could create inverse lock ordering between them.
> 
> Yeah, commit 6565a1c6d2e0754b5f1e8160252f6dc9493ed6c4 needs to be
> backported. I suspect it applies as-is, John mind trying that? If not,
> let me know and I'll port it.

Cherry-picked it ok, will send along w/ next batch of fixes...

-- 
John W. Linville		Someday the world will need a hero, and you
linville@tuxdriver.com			might be all we have.  Be ready.

^ permalink raw reply

* [PATCH] wl1251: correct definitions for 0th bit defines
From: Bob Copeland @ 2009-08-17 15:18 UTC (permalink / raw)
  To: linville, Kalle Valo; +Cc: linux-wireless

ACX_SLV_SOFT_RESET_BIT and ACX_REG_EEPROM_START_BIT are both defined
as "1" in the vendor driver code, but they were defined to be BIT(1)
("2") here.  

The SOFT_RESET typo ensures that wl1251_boot_soft_reset() doesn't;
as a result the device hangs when trying to reprogram the PLL
registers while running.

Signed-off-by: Bob Copeland <me@bobcopeland.com>
---
 drivers/net/wireless/wl12xx/wl1251_reg.h |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/wireless/wl12xx/wl1251_reg.h b/drivers/net/wireless/wl12xx/wl1251_reg.h
index 2de47cc..86a8666 100644
--- a/drivers/net/wireless/wl12xx/wl1251_reg.h
+++ b/drivers/net/wireless/wl12xx/wl1251_reg.h
@@ -309,8 +309,8 @@ enum wl12xx_acx_int_reg {
 	ACX_REG_TABLE_LEN
 };
 
-#define ACX_SLV_SOFT_RESET_BIT   BIT(1)
-#define ACX_REG_EEPROM_START_BIT BIT(1)
+#define ACX_SLV_SOFT_RESET_BIT   BIT(0)
+#define ACX_REG_EEPROM_START_BIT BIT(0)
 
 /* Command/Information Mailbox Pointers */
 
-- 
1.6.2.5

-- 
Bob Copeland %% www.bobcopeland.com


^ permalink raw reply related

* Re: 2.6.31-rc6 lockdep report
From: Johannes Berg @ 2009-08-17 15:16 UTC (permalink / raw)
  To: Bob Copeland; +Cc: linux-wireless, John Linville
In-Reply-To: <20090817151223.GA13125@hash.localnet>

[-- Attachment #1: Type: text/plain, Size: 1504 bytes --]

On Mon, 2009-08-17 at 11:12 -0400, Bob Copeland wrote:
> Haven't looked at it yet, I just hit this one while riding the
> train this morning and connecting to someone's adhoc station.
> 
> [43559.227490] wlan0: Selected IBSS BSSID 2a:51:0a:35:5c:a1 based on configured SSID
> [43559.258660] ath5k phy0: bf=efb0b680 bf_skb=(null)
> [43559.291501] phy0: Adding new IBSS station 00:21:e9:94:5e:93 (dev=wlan0)
> [43559.291518] phy0: Allocated STA 00:21:e9:94:5e:93
> [43559.292327] phy0: Inserted STA 00:21:e9:94:5e:93
> [43633.646820] phy0: Adding new IBSS station 00:1e:c2:3b:f4:e3 (dev=wlan0)
> [43633.646838] phy0: Allocated STA 00:1e:c2:3b:f4:e3
> [43633.646859] 
> [43633.646860] =========================================================
> [43633.646864] [ INFO: possible irq lock inversion dependency detected ]
> [43633.646867] 2.6.31-rc6 #179
> [43633.646870] ---------------------------------------------------------
> [43633.646873] cc1/18756 just changed the state of lock:
> [43633.646876]  (&local->sta_lock){..-...}, at: [<fa244acd>] sta_info_insert+0x91/0x174 [mac80211]
> [43633.646900] but this lock took another, SOFTIRQ-unsafe lock in the past:
> [43633.646903]  (todo_lock){+.+...}
> [43633.646906] 
> [43633.646907] and interrupts could create inverse lock ordering between them.

Yeah, commit 6565a1c6d2e0754b5f1e8160252f6dc9493ed6c4 needs to be
backported. I suspect it applies as-is, John mind trying that? If not,
let me know and I'll port it.

johannes

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 801 bytes --]

^ permalink raw reply


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox