openwrt/staging/blogic.git
13 years agoiwlagn: 5000 do not support idle mode
Wey-Yi Guy [Tue, 2 Aug 2011 16:08:37 +0000 (09:08 -0700)]
iwlagn: 5000 do not support idle mode

5000 series has issue supporting power save idle mode:

commit 9dc2153315650eae220898668b6aa56a25c130be

iwlwifi: always support idle mode for agn devices

For agn devices, always support idle mode which help power
consumption in idle unassociated state.

the above changes cause 5000 become not stable when power management is "on"

http://bugzilla.intellinuxwireless.org/show_bug.cgi?id=2312

Cc: stable@kernel.org #2.6.39, #3.0.0
Reported-by: Devin J Pohly <djpohly+iwl@gmail.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agort2x00: fix usage of NULL queue
Stanislaw Gruszka [Tue, 2 Aug 2011 11:29:02 +0000 (13:29 +0200)]
rt2x00: fix usage of NULL queue

We may call rt2x00queue_pause_queue(queue) with queue == NULL. Bug
was introduced by commit 62fe778412b36791b7897cfa139342906fbbf07b
"rt2x00: Fix stuck queue in tx failure case" .

Cc: stable@kernel.org # 3.0+
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
Acked-by: Ivo van Doorn <IvDoorn@gmail.com>
Acked-by: Gertjan van Wingerde <gwingerde@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agort2x00: Fix compilation without CONFIG_RT2X00_LIB_CRYPTO
Helmut Schaa [Tue, 2 Aug 2011 09:43:14 +0000 (11:43 +0200)]
rt2x00: Fix compilation without CONFIG_RT2X00_LIB_CRYPTO

This was introduced by commit
77b5621bac4a56b83b9081f48d4e7d1accdde400 (rt2x00: Don't use queue entry
as parameter when creating TX descriptor.)

Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
Acked-by: Gertjan van Wingerde <gwingerde@gmail.com>
Acked-by: Ivo van Doorn <IvDoorn@gmail.com>
Reported-by: Randy Dunlap <rdunlap@xenotime.net>
Acked-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoiwlagn: sysfs couldn't find the priv pointer
Emmanuel Grumbach [Mon, 1 Aug 2011 19:46:57 +0000 (12:46 -0700)]
iwlagn: sysfs couldn't find the priv pointer

This bug has been introduced by:
d593411084a56124aa9d80aafa15db8463b2d8f7
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Mon Jul 11 10:48:51 2011 +0300

    iwlagn: simplify the bus architecture

Revert part of the buggy patch: dev_get_drvdata will now return
iwl_priv as it did before the patch.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Tested-by: Daniel Halperin <dhalperi@cs.washington.edu>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agort2x00: rt2800: fix zeroing skb structure
Stanislaw Gruszka [Sat, 30 Jul 2011 11:32:56 +0000 (13:32 +0200)]
rt2x00: rt2800: fix zeroing skb structure

We should clear skb->data not skb itself. Bug was introduced by:
commit 0b8004aa12d13ec750d102ba4082a95f0107c649 "rt2x00: Properly
reserve room for descriptors in skbs".

Cc: stable@kernel.org # 2.6.36+
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
Acked-by: Gertjan van Wingerde <gwingerde@gmail.com>
Acked-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agortlwifi: Fix kernel oops on ARM SOC
Larry Finger [Fri, 29 Jul 2011 15:53:12 +0000 (10:53 -0500)]
rtlwifi: Fix kernel oops on ARM SOC

This driver uses information from the self member of the pci_bus struct to
get information regarding the bridge to which the PCIe device is attached.
Unfortunately, this member is not established on all architectures, which
leads to a kernel oops.

Skipping the entire block that uses the self member to determine the bridge
vendor will only affect RTL8192DE devices as that driver sets the ASPM support
flag differently when the bridge vendor is Intel. If the self member is
available, there is no functional change.

This patch fixes Bugzilla No. 40212.

Reported-by: Hubert Liao <liao.hubertt@gmail.com>
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Cc: Stable <stable@kernel.org> [back to 2.6.38]
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoath9k: skip ->config_pci_powersave() if PCIe port has ASPM disabled
Stanislaw Gruszka [Fri, 29 Jul 2011 13:59:08 +0000 (15:59 +0200)]
ath9k: skip ->config_pci_powersave() if PCIe port has ASPM disabled

We receive many bug reports about system hang during suspend/resume
when ath9k driver is in use. Adrian Chadd remarked that this problem
happens on systems that have ASPM disabled.

To do not hit the bug, skip doing ->config_pci_powersave magic if PCIe
downstream port device, which ath9k device is connected to, has ASPM
disabled.

Bug was introduced by:

commit 53bc7aa08b48e5cd745f986731cc7dc24eef2a9f
Author: Vivek Natarajan <vnatarajan@atheros.com>
Date:   Mon Apr 5 14:48:04 2010 +0530

    ath9k: Add support for newer AR9285 chipsets.

Patch should address:
https://bugzilla.kernel.org/show_bug.cgi?id=37462
https://bugzilla.kernel.org/show_bug.cgi?id=37082
https://bugzilla.redhat.com/show_bug.cgi?id=697157

however I did not receive confirmation about that, except from Camilo
Mesias, whose system stops hang regularly with this patch (but still
hangs from time to time, but this is probably some other bug).

Tested-by: Camilo Mesias <camilo@mesias.co.uk>
Cc: stable@kernel.org # 2.6.35+
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agocfg80211: off by one in nl80211_trigger_scan()
Dan Carpenter [Fri, 29 Jul 2011 08:52:18 +0000 (11:52 +0300)]
cfg80211: off by one in nl80211_trigger_scan()

The test is off by one so we'd read past the end of the
wiphy->bands[] array on the next line.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoiwlegacy: set tx power after rxon_assoc
Stanislaw Gruszka [Wed, 27 Jul 2011 13:37:43 +0000 (15:37 +0200)]
iwlegacy: set tx power after rxon_assoc

If settings of tx power was deferred during scan or changing channel we
have to setup them during commit rxon. Fix problem on 3945 (4965 already
has this fix).

Optimize code to apply tx settings only when tx power was actually
changed.

Cc: stable@kernel.org # 2.6.39+
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoath9k: initialize tx chainmask before testing channel tx power values
Felix Fietkau [Wed, 27 Jul 2011 13:01:02 +0000 (15:01 +0200)]
ath9k: initialize tx chainmask before testing channel tx power values

With an uninitialized chainmask, the per-channel power will only contain
the power limits for a single chain instead of the combined tx power.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Cc: stable@kernel.org
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agowireless: fix a typo in ignore_reg_update
Mihai Moldovan [Mon, 25 Jul 2011 09:18:58 +0000 (11:18 +0200)]
wireless: fix a typo in ignore_reg_update

Just a typo fix changing regulaotry to regulatory.

Signed-off-by: Mihai Moldovan <ionic@ionic.de>
CC: John W. Linville <linville@tuxdriver.com>
CC: Mohammed Shafi <shafi.wireless@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agob43: fix invalid memory access in b43_ssb_remove()
Pavel Roskin [Fri, 22 Jul 2011 22:07:13 +0000 (18:07 -0400)]
b43: fix invalid memory access in b43_ssb_remove()

wldev is freed in b43_one_core_detach() and should not be accessed after
that call.  Keep wldev->dev in a local variable.

Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agob43: bcma: drop BROKEN
Rafał Miłecki [Fri, 22 Jul 2011 11:11:05 +0000 (13:11 +0200)]
b43: bcma: drop BROKEN

We've fixed the last issue with BCMA support which caused memory
corruption on loading and unloading b43. Support for BCMA in b43 was
tested with 14e4:4353, 14e4:4357, 14e4:4727 and 14e4:4331. First two
cards (BCM43224 and BCM43225) are supported.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agob43: bus: fix memory corruption when setting driver's data
Rafał Miłecki [Fri, 22 Jul 2011 11:11:04 +0000 (13:11 +0200)]
b43: bus: fix memory corruption when setting driver's data

Fixes bug described in:
https://bugzilla.kernel.org/show_bug.cgi?id=39172

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agocfg80211: really ignore the regulatory request
Sven Neumann [Tue, 12 Jul 2011 13:52:07 +0000 (15:52 +0200)]
cfg80211: really ignore the regulatory request

At the beginning of wiphy_update_regulatory() a check is performed
whether the request is to be ignored. Then the request is sent to
the driver nevertheless. This happens even if last_request points
to NULL, leading to a crash in the driver:

 [<bf01d864>] (lbs_set_11d_domain_info+0x28/0x1e4 [libertas]) from [<c03b714c>] (wiphy_update_regulatory+0x4d0/0x4f4)
 [<c03b714c>] (wiphy_update_regulatory+0x4d0/0x4f4) from [<c03b4008>] (wiphy_register+0x354/0x420)
 [<c03b4008>] (wiphy_register+0x354/0x420) from [<bf01b17c>] (lbs_cfg_register+0x80/0x164 [libertas])
 [<bf01b17c>] (lbs_cfg_register+0x80/0x164 [libertas]) from [<bf020e64>] (lbs_start_card+0x20/0x88 [libertas])
 [<bf020e64>] (lbs_start_card+0x20/0x88 [libertas]) from [<bf02cbd8>] (if_sdio_probe+0x898/0x9c0 [libertas_sdio])

Fix this by returning early. Also remove the out: label as it is
not any longer needed.

Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Cc: linux-wireless@vger.kernel.org
Cc: Johannes Berg <johannes@sipsolutions.net>
Cc: Daniel Mack <daniel@zonque.org>
Cc: stable@kernel.org
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoNFC: pn533: use after free in pn533_disconnect()
Dan Carpenter [Fri, 8 Jul 2011 07:21:15 +0000 (10:21 +0300)]
NFC: pn533: use after free in pn533_disconnect()

We freed "dev" on the line before.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agobcma: fix 'SSB_PCICORE_BFL_NOPCI' undeclared build breakage
John W. Linville [Fri, 22 Jul 2011 20:22:14 +0000 (16:22 -0400)]
bcma: fix 'SSB_PCICORE_BFL_NOPCI' undeclared build breakage

linux-next-20110722/drivers/bcma/driver_pci.c:175: error: 'SSB_PCICORE_BFL_NOPCI' undeclared (first use in this function)

Reported-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agob43legacy: dma: cache translation (routing bits)
Rafał Miłecki [Thu, 21 Jul 2011 22:25:00 +0000 (00:25 +0200)]
b43legacy: dma: cache translation (routing bits)

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Tested-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoath5k: use get_unaligned_le32() in ath5k_write_pwr_to_pdadc_table()
Pavel Roskin [Thu, 21 Jul 2011 17:36:42 +0000 (13:36 -0400)]
ath5k: use get_unaligned_le32() in ath5k_write_pwr_to_pdadc_table()

Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoath5k: remove ath5k_hw_get_capability(), don't use VEOL on AR5210
Pavel Roskin [Thu, 21 Jul 2011 17:36:35 +0000 (13:36 -0400)]
ath5k: remove ath5k_hw_get_capability(), don't use VEOL on AR5210

There are only two capabilities we need, and both are trivial to find.

ath5k_hw_hasbssidmask() is true on AR5212, but not on AR5210 or AR5211.

ath5k_hw_hasveol() is true on AR5211 and AR5212, but not on AR5210,
according to the HAL source.

Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoath5k: merge ath5k_{init, deinit}_hw() with their thin wrappers
Pavel Roskin [Thu, 21 Jul 2011 17:36:28 +0000 (13:36 -0400)]
ath5k: merge ath5k_{init, deinit}_hw() with their thin wrappers

Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agob43: (un)initialize driver on the BCMA bus
Rafał Miłecki [Wed, 20 Jul 2011 18:02:39 +0000 (20:02 +0200)]
b43: (un)initialize driver on the BCMA bus

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agob43: bcma: get DMA translation bits
Rafał Miłecki [Wed, 20 Jul 2011 17:52:16 +0000 (19:52 +0200)]
b43: bcma: get DMA translation bits

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agobcma: inform drivers about translation bits needed for the core
Rafał Miłecki [Wed, 20 Jul 2011 17:52:15 +0000 (19:52 +0200)]
bcma: inform drivers about translation bits needed for the core

When using DMA, drivers need to pass special translation info to the
hardware.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agossb: return correct translation bit for 64-bit DMA
Rafał Miłecki [Wed, 20 Jul 2011 17:52:14 +0000 (19:52 +0200)]
ssb: return correct translation bit for 64-bit DMA

Remove b43's workarounds at the same time. Other users of
ssb_dma_translation do not support any 64-bit DMA devices, so they are
not affected.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agob43: disable parity check on BCMA devices
Rafał Miłecki [Wed, 20 Jul 2011 17:47:07 +0000 (19:47 +0200)]
b43: disable parity check on BCMA devices

Analyze of MMIO dumps from BCM43224, BCM43225, BCM4313 and BCM4331 has
shown that wl disables parity check for all that cards. This is required
for receiving any packets from the hardware.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agortlwifi: Convert printks to pr_<level>
Joe Perches [Wed, 20 Jul 2011 15:51:35 +0000 (08:51 -0700)]
rtlwifi: Convert printks to pr_<level>

Use the current logging styles.
Add pr_fmt where appropriate.
Remove now unnecessary prefixes from printks.
Convert hard coded prefix to __func__.
Add a missing "\n" to a format.

Signed-off-by: Joe Perches <joe@perches.com>
Acked-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoath9k_hw: validate and fix broken eeprom chainmask settings
Felix Fietkau [Tue, 19 Jul 2011 06:46:44 +0000 (08:46 +0200)]
ath9k_hw: validate and fix broken eeprom chainmask settings

Some devices (e.g. Ubiquiti AirRouter) ship with broken EEPROM chainmask
data, which breaks the initial calibration after a hardware reset.
To fix this, mask the eeprom chainmask with the chainmask of the chip,
and use the chip chainmask if the result is zero.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agomwifiex: disable auto deep sleep before unloading the driver
Amitkumar Karwar [Thu, 14 Jul 2011 03:51:59 +0000 (20:51 -0700)]
mwifiex: disable auto deep sleep before unloading the driver

Since the auto deep sleep mode has been enabled at driver init time
we should disable it at driver unloading to shutdown the function
gracefully.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agomwifiex: check SDIO multi-port aggregation buffer room correctly
Amitkumar Karwar [Thu, 14 Jul 2011 03:51:58 +0000 (20:51 -0700)]
mwifiex: check SDIO multi-port aggregation buffer room correctly

We should consider current packet length also while checking
Tx aggregation buffer room.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agomwifiex: put multicast/broadcast packets to the same RA
Amitkumar Karwar [Thu, 14 Jul 2011 03:51:57 +0000 (20:51 -0700)]
mwifiex: put multicast/broadcast packets to the same RA

For ad-hoc mode, RA is created for each peer connected. In case of
multicast traffic new RA will be created for each multicast
address. While processing Tx packets we have to go through this
RA list. We can avoid some RA nodes by sharing same RA for both
multicast and broadcast packets.

Therefore "memset(0xff)" is used to treat multicast packet as broadcast
one while choosing RA.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoiwlagn: probe would crash with DEBUG_SHIRQ
Emmanuel Grumbach [Thu, 21 Jul 2011 00:51:22 +0000 (17:51 -0700)]
iwlagn: probe would crash with DEBUG_SHIRQ

This is since my patch:

    iwlagn: introduce transport layer and implement rx_init

The IRQ is requested before the locks are initialized, hence the crash.
Initialize the tasklet before we request the IRQ on the way.

Reported-by: Johannes Berg <johannes.berg@intel.com>
Tested-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: remove "disable otp refresh" W/A
Wey-Yi Guy [Mon, 18 Jul 2011 23:58:58 +0000 (16:58 -0700)]
iwlagn: remove "disable otp refresh" W/A

Remove the "disable otp refresh" work-around, not needed anymore.

Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: rename iwlagn_set_dynamic_key
Johannes Berg [Sun, 17 Jul 2011 08:44:11 +0000 (01:44 -0700)]
iwlagn: rename iwlagn_set_dynamic_key

We now have iwlagn_set_dynamic_key() and
iwl_set_dynamic_key() which is confusing,
rename the former to iwlagn_send_sta_key()
to better reflect what it does -- it only
sends a command and doesn't change driver
state.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: track beacon interval sent to device
Johannes Berg [Mon, 18 Jul 2011 08:59:22 +0000 (01:59 -0700)]
iwlagn: track beacon interval sent to device

Sometimes, when mac80211 changes the beacon
interval or when it isn't yet set in mac80211
before association, the uCode will sysassert
because we send it confusing RXON timing vs.
PAN parameters. To fix this, track the last
beacon interval sent to the device and use
that in PAN parameter calculations.

This fixes a bug during P2P group formation
as a client (and possibly association to a
regular AP) while connected to another AP.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: write iq invert register for 105/135 device
Wey-Yi Guy [Mon, 18 Jul 2011 20:59:23 +0000 (13:59 -0700)]
iwlagn: write iq invert register for 105/135 device

For 105/135 series of devices, we need to do I/Q invert just like 2000
series devices.

Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: implement WoWLAN
Johannes Berg [Fri, 15 Jul 2011 20:23:45 +0000 (13:23 -0700)]
iwlagn: implement WoWLAN

Implement WoWLAN support in iwlagn. The device
supports a number of wakeup triggers and can do
GTK rekeying when asleep (if HW crypto is used).
Unfortunately, we need to disconnect from the AP
after resume since we can't yet get all the info
out of the wowlan uCode to stay connected safely.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: rewrite HW crypto
Johannes Berg [Fri, 15 Jul 2011 20:03:12 +0000 (13:03 -0700)]
iwlagn: rewrite HW crypto

As I just discovered while doing WoWLAN, HW crypto
is done wrong for GTKs: they should be programmed
for the AP station ID (in the managed mode case)
and the HW can actually deal with multiple group
keys per station as well (which is useful in IBSS
RSN but that I've chosen not to use this).

To fix all this, modify the way keys are sent to
the device and key offsets are allocated. After
these changes, key offsets are stored into the
hw_key_idx which we can then track for the key
lifetime, not relying on our sta_cmd array. WEP
default keys get special treatment, of course.

Additionally, since I had the API for it, we can
now pre-fill TKIP phase 1 keys for RX now that we
can obtain the P1K from mac80211, a capability I
had added for WoWLAN initially.

Finally, some keys simply don't need to be added
into the device's key cache -- a key that won't
be used for RX is only needed in the TX header,
so "pretend" to have accepted any key without
adding it into the device -- no need to use up
key space there for it.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: remove forgotten debugfs function
Johannes Berg [Thu, 14 Jul 2011 19:55:36 +0000 (12:55 -0700)]
iwlagn: remove forgotten debugfs function

It seems that due to merge issues between different
trees or so this function prototype wasn't removed
when it should have been, do it now.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: remove un-necessary "_agn"
Wey-Yi Guy [Wed, 13 Jul 2011 15:38:57 +0000 (08:38 -0700)]
iwlagn: remove un-necessary "_agn"

After driver split, extra _agn in priv structure is no needed, remove it.

Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: remove keyinfo cache
Johannes Berg [Wed, 13 Jul 2011 20:27:25 +0000 (13:27 -0700)]
iwlagn: remove keyinfo cache

iwlagn keeps a copy of key stuff internally but
never actually uses it, so remove it.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: testmode fixed rate available for testmode only
Wey-Yi Guy [Wed, 13 Jul 2011 18:13:46 +0000 (11:13 -0700)]
iwlagn: testmode fixed rate available for testmode only

Move tm_fixed_rate inside CONFIG_IWLWIFI_DEVICE_SVTOOL and only
available when the option is enable.

Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: add comment to warn about WoWLAN in resume / suspend flows
Emmanuel Grumbach [Mon, 11 Jul 2011 10:14:37 +0000 (13:14 +0300)]
iwlagn: add comment to warn about WoWLAN in resume / suspend flows

WoWLAN may need the NIC even after suspend. One should not do anything to the
NIC in the bus level, since one cannot check whether WoWLAN is enabled or not.
Same for resume.

Add a simple comment to the code to warn about this.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: iwl_bus holds drv_data as void * instead of iwl_priv
Emmanuel Grumbach [Mon, 11 Jul 2011 08:18:48 +0000 (11:18 +0300)]
iwlagn: iwl_bus holds drv_data as void * instead of iwl_priv

The price to pay is the access to the log system. Therefore logs from bus layer
are sent by dev_printk instead of IWL_XXXX.

Rename bus->priv to bus->drv_data to make the separation even clearer.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: simplify the bus architecture
Emmanuel Grumbach [Mon, 11 Jul 2011 07:48:51 +0000 (10:48 +0300)]
iwlagn: simplify the bus architecture

Call iwl_probe with a ready iwl_bus struct. This means that the bus layer
assigns the irq, dev and iwl_bus_ops pointers to iwl_bus before giving it to
iwl_probe.

The device specific struct is allocated together with the common iwl_bus struct
by the bus specific layer. The pointer to the aggregate struct is passed to the
upper layer that holds a pointer to iwl_bus instead of an embedded iw_bus.
The private data given to the PCI subsystem is now iwl_bus and not iwl_priv.

Provide bus_* inliners on the way in order  to simplify the syntax.

Rename iwl-pci.h -> iwl-bus.h since it is bus agnostic and represent the
external of the bus layer.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: transport layer receives struct iwl_trans*
Emmanuel Grumbach [Mon, 11 Jul 2011 05:51:04 +0000 (08:51 +0300)]
iwlagn: transport layer receives struct iwl_trans*

It still holds a pointer to iwl_priv. But hopefully this will disappear at some point.
Also add the multiple inclusion protection to iwl-trans.h that was forgotten.
Move iwl-trans structures to iwl-trans.h

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: move iwl_prepare_card_hw to the transport layer
Emmanuel Grumbach [Sun, 10 Jul 2011 12:39:57 +0000 (15:39 +0300)]
iwlagn: move iwl_prepare_card_hw to the transport layer

This function is really related to the transport layer - move it.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: move more functions from the start flow to the transport layer
Emmanuel Grumbach [Sun, 10 Jul 2011 12:30:15 +0000 (15:30 +0300)]
iwlagn: move more functions from the start flow to the transport layer

Basically all the nic_init flow should be in the transport layer.
iwl_prepare_card_hw will move to the transport too in a separate patch.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: SCD configuration for AMPDU moves to transport layer
Emmanuel Grumbach [Sun, 10 Jul 2011 07:47:01 +0000 (10:47 +0300)]
iwlagn: SCD configuration for AMPDU moves to transport layer

All the configurations of the HW for AMPDU are now in the transport layer.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: radio sensor offset in le16 format
Wey-Yi Guy [Fri, 8 Jul 2011 21:29:48 +0000 (14:29 -0700)]
iwlagn: radio sensor offset in le16 format

For temperature offset calibration, send radio sensor offset in le16 format

Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: define valid init calibration mask
Wey-Yi Guy [Fri, 8 Jul 2011 21:29:47 +0000 (14:29 -0700)]
iwlagn: define valid init calibration mask

Use the valid calibration mask for init calibration

Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: remove legacy calibration command
Wey-Yi Guy [Fri, 8 Jul 2011 21:29:46 +0000 (14:29 -0700)]
iwlagn: remove legacy calibration command

IWL_PHY_CALIBRATE_DIFF_GAIN_CMD is for legacy device, remove it

Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: set correct calibration flag
Wey-Yi Guy [Fri, 8 Jul 2011 21:29:45 +0000 (14:29 -0700)]
iwlagn: set correct calibration flag

Set calibration config flag for complete notification

Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
13 years agoiwlagn: kill iwlagn_setup_deferred_work
Emmanuel Grumbach [Sun, 3 Jul 2011 12:45:34 +0000 (15:45 +0300)]
iwlagn: kill iwlagn_setup_deferred_work

Since iwlagn_setup_deferred_work is always called, fold it into
iwl_setup_deferred_work. BT related works are setup by the new
bt_setup_deferred_work lib_ops.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.guy@intel.com>
13 years agoiwlagn: kill iwlagn_rx_handler_setup
Emmanuel Grumbach [Sun, 3 Jul 2011 12:45:34 +0000 (15:45 +0300)]
iwlagn: kill iwlagn_rx_handler_setup

Since iwlagn_rx_handler_setup is always called, fold it into
iwl_rx_handler_setup. BT related handlers are setup by the new
bt_rx_handler_setup lib_ops.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.guy@intel.com>
13 years agoiwlagn: add kick_nic API to transport layer
Emmanuel Grumbach [Thu, 7 Jul 2011 15:20:01 +0000 (18:20 +0300)]
iwlagn: add kick_nic API to transport layer

kick_nic means to remove the RESET bit from the embedded CPU

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.guy@intel.com>
13 years agolibertas: only enable mesh when interface is active
Daniel Drake [Wed, 20 Jul 2011 16:53:56 +0000 (17:53 +0100)]
libertas: only enable mesh when interface is active

Previously, the mesh was running whenever the appropriate hardware
and firmware was present.

Now we only run the mesh when the interface is running.

Also simplifies interface management a little.

Signed-off-by: Daniel Drake <dsd@laptop.org>
Acked-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agolibertas: mesh: misc cleanup
Daniel Drake [Wed, 20 Jul 2011 16:53:50 +0000 (17:53 +0100)]
libertas: mesh: misc cleanup

Remove unused blindlist code.

Mark a few items const and static where possible. Involved some
code re-ordering, but no code changes.

Signed-off-by: Daniel Drake <dsd@laptop.org>
Acked-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agowireless: mwifiex: print hw address via %pM
Andy Shevchenko [Wed, 20 Jul 2011 13:34:31 +0000 (16:34 +0300)]
wireless: mwifiex: print hw address via %pM

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: Bing Zhao <bzhao@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agowireless: ath9k: use %pM to print MAC
Andy Shevchenko [Wed, 20 Jul 2011 13:34:30 +0000 (16:34 +0300)]
wireless: ath9k: use %pM to print MAC

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: "Luis R. Rodriguez" <lrodriguez@atheros.com>
Cc: ath9k-devel@lists.ath9k.org
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agowireless: rtlwifi: throw away MAC_FMT and use %pM instead
Andy Shevchenko [Wed, 20 Jul 2011 13:34:29 +0000 (16:34 +0300)]
wireless: rtlwifi: throw away MAC_FMT and use %pM instead

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agocfg80211: fix scan crash on single-band cards
Johannes Berg [Tue, 19 Jul 2011 22:52:16 +0000 (00:52 +0200)]
cfg80211: fix scan crash on single-band cards

commit 58389c69150e6032504dfcd3edca6b1975c8b5bc
Author: Johannes Berg <johannes.berg@intel.com>
Date:   Mon Jul 18 18:08:35 2011 +0200

     cfg80211: allow userspace to control supported rates in scan

made single-band cards crash since it would always
access all wiphy->bands[]. Fix this and reject any
attempts in the new helper ieee80211_get_ratemask()
to do the same, rejecting rates configuration for
unsupported bands.

Reported-by: Pavel Roskin <proski@gnu.org>
Tested-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agocarl9170: fix sparse warnings enabled by CONFIG_SPARSE_RCU_POINTER
Pavel Roskin [Tue, 19 Jul 2011 22:02:15 +0000 (18:02 -0400)]
carl9170: fix sparse warnings enabled by CONFIG_SPARSE_RCU_POINTER

Signed-off-by: Pavel Roskin <proski@gnu.org>
Acked-by: Christian Lamparter <chunkeey@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agomac80211: check sta_info_get() return value
Eliad Peller [Tue, 19 Jul 2011 10:14:42 +0000 (13:14 +0300)]
mac80211: check sta_info_get() return value

ieee80211_stop_rx_ba_session() was calling sta_info_get()
without rcu locking, and the return value was not
checked.
This resulted in the following panic:

[<bf05726c>] (ieee80211_stop_rx_ba_session+0x0/0x60 [mac80211])
[<bf0abd94>] (wl1271_event_handle+0x0/0xdc8 [wl12xx])
[<bf0a7308>] (wl1271_irq+0x0/0x4a0 [wl12xx])
[<c00c40a8>] (irq_thread+0x0/0x254)
[<c00a7398>] (kthread+0x0/0x8c)

Signed-off-by: Eliad Peller <eliad@wizery.com>
Reviewed-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agocfg80211: enter psm when working as p2p_cli
Eliad Peller [Tue, 19 Jul 2011 09:57:13 +0000 (12:57 +0300)]
cfg80211: enter psm when working as p2p_cli

cfg80211_netdev_notifier_call() is configuring psm in case
of NL80211_IFTYPE_STATION interface type (on NETDEV_UP).
do the same for NL80211_IFTYPE_P2P_CLIENT interface type.

Signed-off-by: Eliad Peller <eliad@wizery.com>
Reviewed-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agomac80211: sync driver before TX
Johannes Berg [Tue, 19 Jul 2011 08:39:53 +0000 (10:39 +0200)]
mac80211: sync driver before TX

In P2P client mode, the GO (AP) to connect to might
have periods of time where it is not available due
to powersave. To allow the driver to sync with it
and send frames to the GO only when it is available
add a new callback tx_sync (and the corresponding
finish_tx_sync). These callbacks can sleep unlike
the actual TX.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoath5k: merge ath5k_hw and ath5k_softc
Pavel Roskin [Fri, 15 Jul 2011 00:21:55 +0000 (20:21 -0400)]
ath5k: merge ath5k_hw and ath5k_softc

Both ath5k_hw and ath5k_softc represent one instance of the hardware.
This duplication is historical and is not needed anymore.

Keep the name "ath5k_hw" for the merged structure and "ah" for the
variable pointing to it.  "ath5k_hw" is shorter than "ath5k_softc", more
descriptive and more widely used.

Put the combined structure to ath5k.h where the old ath5k_softc used to
be. Move some code from base.h to ath5k.h as needed.

Remove memory allocation for struct ath5k_hw and the corresponding error
handling.  Merge iobase and ah_iobase fields.

Signed-off-by: Pavel Roskin <proski@gnu.org>
Acked-by: Nick Kossifidis <mickflemm@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agob43: bcma: implement full core reset
Rafał Miłecki [Sat, 16 Jul 2011 23:06:06 +0000 (01:06 +0200)]
b43: bcma: implement full core reset

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agobcma: allow enabling PLL
Rafał Miłecki [Sat, 16 Jul 2011 23:06:05 +0000 (01:06 +0200)]
bcma: allow enabling PLL

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agobcma: allow setting FAST clockmode for a core
Rafał Miłecki [Sat, 16 Jul 2011 23:06:04 +0000 (01:06 +0200)]
bcma: allow setting FAST clockmode for a core

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agobcma: trivial: add helpers for masking/setting
Rafał Miłecki [Sat, 16 Jul 2011 23:06:03 +0000 (01:06 +0200)]
bcma: trivial: add helpers for masking/setting

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agobcma: move define of BCMA_CLKCTLST register
Rafał Miłecki [Sat, 16 Jul 2011 16:43:36 +0000 (18:43 +0200)]
bcma: move define of BCMA_CLKCTLST register

Recent experiments have shown many cores share 0x1E0 register used for
clock management.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agob43: correctly display longer chipsets ids
Rafał Miłecki [Mon, 18 Jul 2011 20:45:58 +0000 (22:45 +0200)]
b43: correctly display longer chipsets ids

Some of the newer Broadcom chipsets have longe names like BCM43224,
BCM43225, etc. However Broadcom decided to keep using u16 for storing
them. Use %X or %d depending on chip_id value to avoid BCMA8D8, etc.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Acked-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agomac80211: implement scan supported rates
Johannes Berg [Mon, 18 Jul 2011 16:08:36 +0000 (18:08 +0200)]
mac80211: implement scan supported rates

Scanning currently uses the TX rate mask to
restrict the rate set, which is bogus. Make
it use the new set of rates from userspace.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agocfg80211: allow userspace to control supported rates in scan
Johannes Berg [Mon, 18 Jul 2011 16:08:35 +0000 (18:08 +0200)]
cfg80211: allow userspace to control supported rates in scan

Some P2P scans are not allowed to advertise
11b rates, but that is a rather special case
so instead of having that, allow userspace
to request the rate sets (per band) that are
advertised in scan probe request frames.

Since it's needed in two places now, factor
out some common code parsing a rate array.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agob43: HT-PHY: fix masks in radio ctl
Rafał Miłecki [Mon, 18 Jul 2011 00:13:23 +0000 (02:13 +0200)]
b43: HT-PHY: fix masks in radio ctl

Old masks were causing ugly, delayed lock ups.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agob43: bcma: read info about supported bands
Rafał Miłecki [Mon, 18 Jul 2011 00:01:30 +0000 (02:01 +0200)]
b43: bcma: read info about supported bands

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agob43: bcma: define 80211 core specific IO status bits
Rafał Miłecki [Mon, 18 Jul 2011 00:01:29 +0000 (02:01 +0200)]
b43: bcma: define 80211 core specific IO status bits

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agobcma: define IO status register
Rafał Miłecki [Mon, 18 Jul 2011 00:01:28 +0000 (02:01 +0200)]
bcma: define IO status register

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoieee80211: add few wmm tspec values
Kalle Valo [Sun, 17 Jul 2011 09:13:56 +0000 (12:13 +0300)]
ieee80211: add few wmm tspec values

These are needed by ath6kl for parsing tspec status from an IE.

Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agobcma: handle alternative SPROM location
Rafał Miłecki [Sun, 17 Jul 2011 09:00:59 +0000 (11:00 +0200)]
bcma: handle alternative SPROM location

Some cards do not use additional 0x30 offset for SPROM location. We do
not know the real condition for it yet, make it BCM4331 specific for
now.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agob43: HT-PHY: fix typo in 0x2059 radio init
Rafał Miłecki [Sun, 17 Jul 2011 08:30:34 +0000 (10:30 +0200)]
b43: HT-PHY: fix typo in 0x2059 radio init

Following operation was incorrectly translated:
 radio_read(0x0011) -> 0xffff
radio_write(0x0011) <- 0xfff7

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agob43: HT-PHY: find channel entry with regs data
Rafał Miłecki [Sun, 17 Jul 2011 08:30:33 +0000 (10:30 +0200)]
b43: HT-PHY: find channel entry with regs data

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agob43: HT-PHY: switch to channel after enabling radio
Rafał Miłecki [Sun, 17 Jul 2011 08:30:32 +0000 (10:30 +0200)]
b43: HT-PHY: switch to channel after enabling radio

Also change the default channel to 11. This is the first channel closed
driver switches to.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agob43: use agent R/W ops for BCMA_IOCTL
Rafał Miłecki [Sat, 16 Jul 2011 16:27:55 +0000 (18:27 +0200)]
b43: use agent R/W ops for BCMA_IOCTL

BCMA_IOCTL is register in agent (AKA wrapper) core, we need to use
special R/W ops for it.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoath9k: Fix some smatch warnings
Rajkumar Manoharan [Sun, 17 Jul 2011 06:08:49 +0000 (11:38 +0530)]
ath9k: Fix some smatch warnings

drivers/net/wireless/ath/ath9k/hif_usb.c +135 hif_usb_mgmt_cb(6) warn:
variable dereferenced before check 'cmd'
drivers/net/wireless/ath/ath9k/btcoex.c +77 ath9k_hw_init_btcoex_hw(38)
error: buffer overflow 'ah->hw_gen_timers.gen_timer_index' 32 <=
2009813776

Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoMAINTAINERS: change maintainer of the wl1251 driver
Luciano Coelho [Sun, 17 Jul 2011 07:06:34 +0000 (10:06 +0300)]
MAINTAINERS: change maintainer of the wl1251 driver

Kalle Valo has asked me to take over the maintenance of the wl1251
driver.  Thanks Kalle for all his work on the wl1251 driver, I'll try
to keep up with his good work from now on.

At the same time, update the Web URL to something more specific.
There's not much in that page, but we will try to update it soon.

Signed-off-by: Luciano Coelho <coelho@ti.com>
Acked-by: Kalle Valo <kvalo@adurom.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoath9k: Fix sparse warnings
Rajkumar Manoharan [Sun, 17 Jul 2011 06:13:02 +0000 (11:43 +0530)]
ath9k: Fix sparse warnings

drivers/net/wireless/ath/ath9k/init.c:199:21: warning: context imbalance
in 'ath9k_reg_rmw' - different lock contexts for basic block
drivers/net/wireless/ath/ath9k/xmit.c:1175:31: warning: context
imbalance in 'ath_drain_txq_list' - unexpected unlock
drivers/net/wireless/ath/ath9k/xmit.c:2047:23: warning: context
imbalance in 'ath_tx_process_buffer' - unexpected unlock
drivers/net/wireless/ath/ath9k/ar9003_eeprom.c:3041:24: warning: cast to
restricted __le32

Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agob43: bus: drop inline from SSB functions
Rafał Miłecki [Sat, 16 Jul 2011 23:15:18 +0000 (01:15 +0200)]
b43: bus: drop inline from SSB functions

We use all that functions by pointers only. This forces compiler to
create additional duplicated functions that are not inline.
Noticed by Michael in similar bcma code.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agocarl9170: set beacon xmit power to the max
Christian Lamparter [Sat, 16 Jul 2011 15:30:19 +0000 (17:30 +0200)]
carl9170: set beacon xmit power to the max

Harshal Chhaya discovered during network tests, that
several of his clients dropped-off the network. The
captured packets shows that the beacons sent by the
AP are at a much lower power than the other data
packets.

The reason for this mishap: The driver never updated
the beacon phy register, so all beacons were always
sent at the lowest power.

Reference: http://marc.info/?l=linux-wireless&m=131067225105801
Reported-by: Harshal Chhaya <harshal@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agocarl9170: move beacon_update into tx.c
Christian Lamparter [Sat, 16 Jul 2011 15:25:14 +0000 (17:25 +0200)]
carl9170: move beacon_update into tx.c

Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agocarl9170 firmware: update firmware headers
Christian Lamparter [Sat, 16 Jul 2011 15:21:01 +0000 (17:21 +0200)]
carl9170 firmware: update firmware headers

 * reserves feature bit for CCA counters

 * extends hardware register file definitions

Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoath9k: use ath_opmode_to_string()
Pavel Roskin [Fri, 15 Jul 2011 23:06:46 +0000 (19:06 -0400)]
ath9k: use ath_opmode_to_string()

Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoath9k: remove defines in reg.h that exist in ../reg.h
Pavel Roskin [Fri, 15 Jul 2011 23:06:40 +0000 (19:06 -0400)]
ath9k: remove defines in reg.h that exist in ../reg.h

Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoath9k: use get_unaligned_{b16, le16, le32} where possible
Pavel Roskin [Fri, 15 Jul 2011 23:06:33 +0000 (19:06 -0400)]
ath9k: use get_unaligned_{b16, le16, le32} where possible

Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agoath: use get_unaligned_le{16,32} in ath_hw_keysetmac()
Pavel Roskin [Fri, 15 Jul 2011 23:06:27 +0000 (19:06 -0400)]
ath: use get_unaligned_le{16,32} in ath_hw_keysetmac()

Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agobcma: extract SPROM rev 9 the same way as rev 8
Rafał Miłecki [Thu, 14 Jul 2011 19:49:21 +0000 (21:49 +0200)]
bcma: extract SPROM rev 9 the same way as rev 8

SPROM rev 9 was discovered on 14e4:4331, it seems to have very similar
layout to rev 8 one. Use the same extracting function until we find some
differences.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agobcma: cc: set GPIOTIMER register
Rafał Miłecki [Thu, 14 Jul 2011 19:49:19 +0000 (21:49 +0200)]
bcma: cc: set GPIOTIMER register

We use value supplied via SPROM, or default 10:90 as fallback.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agossb: SPROM: add LED duty cycle fields
Rafał Miłecki [Thu, 14 Jul 2011 19:49:18 +0000 (21:49 +0200)]
ssb: SPROM: add LED duty cycle fields

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
13 years agomac80211: reconfigure tx on device reconfiguration
Eliad Peller [Thu, 14 Jul 2011 17:29:42 +0000 (20:29 +0300)]
mac80211: reconfigure tx on device reconfiguration

Add tx_conf array to save the current tx queues
configuration, and reconfig it on resume (ieee80211_reconfig).

On resume, the driver is being reconfigured. Without
reconfiguring the tx queues as well, the driver might
configure the device to use wrong ac params (e.g. ps-poll
instead of uapsd).

Signed-off-by: Eliad Peller <eliad@wizery.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>