summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* bcma: detect PCI core working in hostmodeRafał Miłecki2011-07-075-1/+62
| | | | | | | | | We must not init it like clientmode one, it would break device (tested by Hauke on BCM4718). Add stub hostmode driver for now. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mwifiex: modify SDIO aggregation Tx/Rx buffer sizeAmitkumar Karwar2011-07-061-2/+2
| | | | | | | | | The SDIO aggregation buffer size has been modified to an optimum value which gives good throughput results. 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>
* ipw2100: Fix command list for debuggingJean Delvare2011-07-061-1/+1
| | | | | | | | There is a stray "undefined" string in the array, get rid of it. Signed-off-by: Jean Delvare <khali@linux-fr.org> Cc: "John W. Linville" <linville@tuxdriver.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: support GTK rekey offloadJohannes Berg2011-07-065-0/+107
| | | | | | | | | This adds the necessary mac80211 APIs to support GTK rekey offload, mirroring the functionality from cfg80211. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* cfg80211/nl80211: support GTK rekey offloadJohannes Berg2011-07-065-0/+193
| | | | | | | | | | | | | | | | | | | | | In certain circumstances, like WoWLAN scenarios, devices may implement (partial) GTK rekeying on the device to avoid waking up the host for it. In order to successfully go through GTK rekeying, the KEK, KCK and the replay counter are required. Add API to let the supplicant hand the parameters to the driver which may store it for future GTK rekey operations. Note that, of course, if GTK rekeying is done by the device, the EAP frame must not be passed up to userspace, instead a rekey event needs to be sent to let userspace update its replay counter. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mac80211: allow driver to iterate keysJohannes Berg2011-07-062-0/+56
| | | | | | | | | | | When in suspend/wowlan, devices might implement crypto offload differently (more features), and might require reprogramming keys for the WoWLAN (as it is the case for Intel devices that use another uCode image). Thus allow the driver to iterate all keys in this context. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* iwlwifi: remove unnecessary read of PCI_CAP_ID_EXPJon Mason2011-07-061-1/+1
| | | | | | | | | | The PCIE capability offset is saved during PCI bus walking. It will remove an unnecessary search in the PCI configuration space if this value is referenced instead of reacquiring it. Signed-off-by: Jon Mason <jdmason@kudzu.us> Acked-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* Merge branch 'for-linville' of ↵John W. Linville2011-07-0624-244/+1176
|\ | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/luca/wl12xx
| * wl12xx: Support routing FW logs to the hostIdo Yariv2011-06-2712-4/+459
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A recently added feature to the firmware enables the driver to retrieve firmware logs via the host bus (SDIO or SPI). There are two modes of operation: 1. On-demand: The FW collects its log in an internal ring buffer. This buffer can later be read, for example, upon recovery. 2. Continuous: The FW pushes the FW logs as special packets in the RX path. Reading the internal ring buffer does not involve the FW. Thus, as long as the HW is not in ELP, it should be possible to read the logs, even if the FW crashes. A sysfs binary file named "fwlog" was added to support this feature, letting a monitor process read the FW messages. The log is transferred from the FW only when available, so the reading process might block. Signed-off-by: Ido Yariv <ido@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * wl12xx: Avoid recovery while one is already in progressIdo Yariv2011-06-277-7/+21
| | | | | | | | | | | | | | | | | | | | During recovery work commands sent to the FW could fail and schedule additional recovery work. Since the chip is going to be powered off, avoid recursive recoveries. Signed-off-by: Ido Yariv <ido@wizery.com> Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * wl12xx: Check for FW quirks as soon as the FW bootsIdo Yariv2011-06-272-23/+21
| | | | | | | | | | | | | | | | The FW initialization might depend on the FW revision, so check for any FW quirks right after booting it. Signed-off-by: Ido Yariv <ido@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * wl12xx: use freezable workqueue for netstack_workEliad Peller2011-06-274-3/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When resuming (after wowlan), we want the rx packets (which is usually the wake-up packet itself) to be passed to mac80211 only after the resume notifier was completed, and mac80211 is up and running (otherwise, the packets will be dropped). By enqueueing the netstack_work to a freezable workqueue, we can guarantee the rx processing to occur only after mac80211 was resumed. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Ido Yariv <ido@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * wl12xx: use _ni version of ieee80211_tx_statusEliad Peller2011-06-273-5/+5
| | | | | | | | | | | | | | | | | | wl1271_flush_deferred_work(), which calls ieee80211_rx() and ieee80211_tx_status(), is called from a process context. hence, use ieee80211_tx_status_ni() instead of ieee80211_tx_status(). Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * wl12xx: check the vif's operstate after joinEliad Peller2011-06-271-5/+18
| | | | | | | | | | | | | | | | | | | | | | | | When resuming while connected (without wowlan), the interface is already IF_OPER_UP, so we won't get the notifier callback, and hence never complete the association (from wl12xx perspective) This situation, among other potential problems, prevents the station from entering psm. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * wl12xx_sdio: enable wowlan only if enable_irq_wake() succeededEliad Peller2011-06-272-11/+16
| | | | | | | | | | | | | | | | | | Some platforms don't support the wake_irq, so disable wowlan in this case, and avoid the "Unbalanced IRQ wake disable" warning on disable_irq_wake(). Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * wl12xx: enable/disable beacon filtering on ap suspend/resumeEliad Peller2011-06-271-9/+40
| | | | | | | | | | | | | | | | Beacon filtering needs to be enabled so AP won't wake up by by every received beacon. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * wl12xx: clear wl->wow_enabled on resumeEliad Peller2011-06-271-0/+1
| | | | | | | | | | | | | | | | | | | | We set wl->wow_enabled on every suspend(), so we need to clear it on every resume(). (we can't rely on setting wl->wow_enabled=false in suspend(), as it being called only when wowlan triggers are configured) Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * wl12xx: don't check wow param on suspend/resumeEliad Peller2011-06-271-44/+43
| | | | | | | | | | | | | | | | | | | | Since mac80211 calls suspend/resume only when wowlan triggers exist, there is no need to check for triggers existance in the callbacks as well. Add a WARN_ON() to verify it. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * wl12xx: Add Support for Low Power DRPw (LPD) ModeShahar Levi2011-06-275-2/+24
| | | | | | | | | | | | | | | | | | | | | | The Low Power DRPw (LPD) mode contains several optimizations that designed to reduce power consumption. The purpose is to save current consumption in RX and Listen mode. LPD setting apply only for wl127x AP mode (not wl128x) Signed-off-by: Shahar Levi <shahar_levi@ti.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * wl12xx: don't bail if mmc isn't MMC_CAP_POWER_OFF_CARDOhad Ben-Cohen2011-06-271-6/+11
| | | | | | | | | | | | | | | | | | | | If our SDIO function has its runtime PM disabled, don't try to manipulate its runtime PM status at all. This way we can still power on cards plugged to mmc hosts that are not MMC_CAP_POWER_OFF_CARD. Reported-and-tested-by: Tim Yamin <tim@kangatronix.co.uk> Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * wl12xx: split channel array per band in sched_scanLuciano Coelho2011-06-272-42/+36
| | | | | | | | | | | | | | | | | | The firmware, in practice, treats the channels in three separate blocks, one for each band (bg, a and j). Instead of using a single array and doing some magic with indices, split the array in 3 to make it more readable. Signed-off-by: Luciano Coelho <coelho@ti.com>
| * wl12xx: fix erroneous commit (cb5ae0)Eliad Peller2011-06-271-18/+18
| | | | | | | | | | | | | | | | | | Due to rebase error, the patch for commit cb5ae0 ("wl12xx: configure rates when working in ibss mode") was wrong - a blob was added into the wrong function. fix it. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * wl12xx: remove unused crc7 referencesEliad Peller2011-06-275-5/+1
| | | | | | | | | | | | | | | | | | | | crc7 is used only in wl12xx_spi. Remove redundant crc7.h includes, and update Kconfig to select CRC7 only if WL12XX_SPI is being selected. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * wl12xx: Enable beacon early termination in 2.4GHz band onlyShahar Levi2011-06-272-7/+12
| | | | | | | | | | | | | | | | | | | | | | Beacon early termination doesn't help much in the 5GHz band and masks channel switch IE Beacons. Thus, change the code to use BET only in 2.4GHz. [Reworded the commit log slightly -- Luca.] Signed-off-by: Shahar Levi <shahar_levi@ti.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * wl12xx: add rx_streaming debugfs entryEliad Peller2011-06-271-1/+135
| | | | | | | | | | | | | | | | | | | | | | | | Allow control over rx_streaming interval and operation mode (always/only on coex) via debugfs. e.g. echo 100 > /debug/ieee80211/phy0/wl12xx/rx_streaming/interval echo 1 > /debug/ieee80211/phy0/wl12xx/rx_streaming/always Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * wl12xx: add automatic rx streaming triggersEliad Peller2011-06-276-11/+203
| | | | | | | | | | | | | | | | | | | | | | | | When rx_streaming.interval is non-zero, use automatic rx streaming. Enable rx streaming on the each rx/tx packet, and disable it rx_streaming.duration msecs later. When rx_streaming.always=0 (default), rx streaming is enabled only when there is a coex operation. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * wl12xx: add support for rx streamingEliad Peller2011-06-274-0/+91
| | | | | | | | | | | | | | | | | | | | | | | | wl12xx supports the "rx streaming" feature: When in ps mode, and @timeout msecs have been passed since the last rx/tx, it issues trigger packets (QoS-null/PS-Poll packets, according to the ac type) in const intervals (in order to reduce the rx time). Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * net: wl12xx: remove unnecessary printsFelipe Balbi2011-06-271-14/+1
| | | | | | | | | | | | | | | | Those have little value. Remove those to make the driver less noisy. Signed-off-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * net: wl12xx: remove the nopsFelipe Balbi2011-06-271-10/+0
| | | | | | | | | | | | | | | | | | Nops aren't needed. When we actually need those calls, then we add them with meat and barbecue sauce. Signed-off-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * net: wl12xx: care for optional operationsFelipe Balbi2011-06-271-2/+4
| | | | | | | | | | | | | | | | | | ->init and ->reset are optional - at least sdio.c doesn't implement them - so allow those pointers to be NULL. Signed-off-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * net: wl12xx: remove some unnecessary printsFelipe Balbi2011-06-271-14/+1
| | | | | | | | | | | | | | | | Those have little value. Remove those to make the driver less noisy. Signed-off-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| * net: wl12xx: sdio: id_tables should be __devinitconstFelipe Balbi2011-06-271-1/+1
| | | | | | | | | | | | | | | | That's only needed during init anyway, let's free some space after we're done probing. Signed-off-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
* | ssb: use pci_dev->subsystem_{vendor,device}Sergei Shtylyov2011-07-051-4/+2
| | | | | | | | | | | | | | | | | | The SSB code reads PCI subsystem IDs from the PCI configuration registers while they are already stored by the PCI subsystem in the 'subsystem_{vendor|device}' fields of 'struct pci_dev'... Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | ssb: use pci_dev->revisionSergei Shtylyov2011-07-051-2/+1
| | | | | | | | | | | | | | | | | | The SSB code reads PCI revision ID from the PCI configuration register while it's already stored by the PCI subsystem in the 'revision' field of 'struct pci_dev'... Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | b43: Add RX side DMA memory barrierMichael Büsch2011-07-051-0/+1
| | | | | | | | | | | | | | | | | | This adds a memory barrier to ensure the writes to the ring memory are committed before the DMA ring pointer is updated. We do a similar thing on the TX side already. Signed-off-by: Michael Buesch <m@bues.ch> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | NFC: add Documentation/networking/nfc.txtAloisio Almeida Jr2011-07-051-0/+128
| | | | | | | | | | | | Signed-off-by: Aloisio Almeida Jr <aloisio.almeida@openbossa.org> Signed-off-by: Lauro Ramos Venancio <lauro.venancio@openbossa.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | NFC: pn533: add NXP pn533 nfc device driverAloisio Almeida Jr2011-07-053-0/+1643
| | | | | | | | | | | | | | Signed-off-by: Lauro Ramos Venancio <lauro.venancio@openbossa.org> Signed-off-by: Aloisio Almeida Jr <aloisio.almeida@openbossa.org> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | NFC: add the NFC socket raw protocolLauro Ramos Venancio2011-07-055-2/+388
| | | | | | | | | | | | | | | | | | | | This socket protocol is used to perform data exchange with NFC targets. Signed-off-by: Lauro Ramos Venancio <lauro.venancio@openbossa.org> Signed-off-by: Aloisio Almeida Jr <aloisio.almeida@openbossa.org> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | NFC: add NFC socket familyAloisio Almeida Jr2011-07-057-5/+129
| | | | | | | | | | | | Signed-off-by: Lauro Ramos Venancio <lauro.venancio@openbossa.org> Signed-off-by: Aloisio Almeida Jr <aloisio.almeida@openbossa.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | NFC: add nfc generic netlink interfaceLauro Ramos Venancio2011-07-056-3/+773
| | | | | | | | | | | | | | | | | | | | | | The NFC generic netlink interface exports the NFC control operations to the user space. Signed-off-by: Lauro Ramos Venancio <lauro.venancio@openbossa.org> Signed-off-by: Aloisio Almeida Jr <aloisio.almeida@openbossa.org> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com> Reviewed-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | NFC: add nfc subsystem coreLauro Ramos Venancio2011-07-0511-15/+609
| | | | | | | | | | | | | | | | | | | | | | The NFC subsystem core is responsible for providing the device driver interface. It is also responsible for providing an interface to the control operations and data exchange. Signed-off-by: Lauro Ramos Venancio <lauro.venancio@openbossa.org> Signed-off-by: Aloisio Almeida Jr <aloisio.almeida@openbossa.org> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | mac80211: allow driver to impose WoWLAN restrictionsJohannes Berg2011-07-052-6/+14
| | | | | | | | | | | | | | | | | | | | | | If the driver can't support WoWLAN in the current state, this patch allows it to return 1 from the suspend callback to do the normal deconfiguration instead of using suspend/resume calls. Note that if it does this, resume won't be called. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | ssb: PCI revision ID register is 8-bit wideSergei Shtylyov2011-07-052-2/+2
| | | | | | | | | | | | | | | | | | | | The SSB code reads PCI revision ID register as 16-bit entity while the register is actually 8-bit only (the next 8 bits are the programming interface register). Fix the read and make the 'rev' field of 'struct ssb_boardinfo' 8-bit as well, to match the register size. Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | rtlwifi: rtl8192de: Fix error exit from hw_initLarry Finger2011-07-051-1/+6
| | | | | | | | | | | | | | | | | | In routine rtl92de_hw_init(), there are two places where a failure is not handled correctly. Reported-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | rtlwifi: rtl8192de: Replace loops calling udelay with single mdelayLarry Finger2011-07-051-13/+7
| | | | | | | | | | | | | | | | | | | | There are a number of loops to implement delays. These are replaced with single calls to mdelay(). The need for a fix was noted by Andrew Morton <akpm@linux-foundation.org>. Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | carl9170: use carl9170 queue enumsChristian Lamparter2011-07-051-5/+5
| | | | | | | | | | Signed-off-by: Christian Lamparter <chunkeey@googlemail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | rtlwifi: rtl8192de: Remove comparison of boolean with trueLarry Finger2011-07-054-17/+17
| | | | | | | | | | | | | | Tests of a boolean against "true" are not needed as non-zero is sufficient.. Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | rtlwifi: rtl8192{ce,cu,se} Remove irq_enabledMike McCormack2011-07-055-19/+0
| | | | | | | | | | | | | | | | This should be unnecessary if synchronize_irq is used. Signed-off-by: Mike McCormack <mikem@ring3k.org> Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | rtlwifi: rtl8192de: Remove irq_enabled booleanLarry Finger2011-07-051-2/+0
| | | | | | | | | | | | | | Prepare rtl8192de for the removal of irq_enaqbled. Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* | drivers/net/wireless/rtlwifi/rtl8192de/phy.c: fix udelay() usageAndrew Morton2011-07-051-5/+5
| | | | | | | | | | | | | | | | ERROR: "__bad_udelay" [drivers/net/wireless/rtlwifi/rtl8192de/rtl8192de.ko] undefined! Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>