summaryrefslogtreecommitdiffstats
path: root/drivers
Commit message (Collapse)AuthorAgeFilesLines
* Bluetooth: btusb: fix bInterval for high/super speed isochronous endpointsBing Zhao2011-12-211-7/+2
| | | | | | | | | | | | For high-speed/super-speed isochronous endpoints, the bInterval value is used as exponent, 2^(bInterval-1). Luckily we have usb_fill_int_urb() function that handles it correctly. So we just call this function to fill in the RX URB. Cc: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Bing Zhao <bzhao@marvell.com> Acked-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
* ath9k: fix tx locking issuesFelix Fietkau2011-12-192-32/+65
| | | | | | | | | | | | The commit "ath9k: simplify tx locking" introduced a soft lockup triggered by mac80211 sending a BAR frame triggered by a driver call to ieee80211_tx_send_bar or ieee80211_tx_status. Fix these issues by queueing processed tx status skbs and submitting them to mac80211 outside of the lock. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: Mohammed Shafi Shajakhan <mohammed@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* ath9k_hw: make bluetooth coexistence support optional at compile timeFelix Fietkau2011-12-1913-17/+145
| | | | | | | | | | | | | | | | Many systems (e.g. embedded systems) do not have wifi modules connected to bluetooth modules, so bluetooth coexistence is irrelevant there. With the addition of MCI support, ath9k picked up quite a bit of extra code that can be compiled out this way. This patch redefines ATH9K_HW_CAP_MCI and adds an inline wrapper for querying the bluetooth coexistence scheme, allowing the compiler to eliminate code that uses it, with only very little use of #ifdef. On MIPS this reduces the total size for the modules by about 20k. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: reorder functions: random cleanupsRafał Miłecki2011-12-191-107/+116
| | | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Acked-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: reorder functions: move rest of workaroundsRafał Miłecki2011-12-191-226/+226
| | | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Acked-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: reorder functions: move RSSI calibrationRafał Miłecki2011-12-191-300/+300
| | | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Acked-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: split gain control workaroundsRafał Miłecki2011-12-191-264/+267
| | | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Acked-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: reorder functions: collect RSSI selectsRafał Miłecki2011-12-191-221/+225
| | | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Acked-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: reorder functions: collect samples onesRafał Miłecki2011-12-191-131/+135
| | | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Acked-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: reorder functions: collect radio onesRafał Miłecki2011-12-191-190/+198
| | | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Acked-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: reorder functions: put basic ones at beginningRafał Miłecki2011-12-191-333/+332
| | | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Acked-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* rtlwifi: Fix locking problem introduces with commit 6539306bLarry Finger2011-12-193-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When I tested commit 6539306, I did not notice that loading an out-of-tree module turns off lockdep testing in kernel 3.2. For that reason, I missed the kernel WARNING shown below: The solution fixes the warning by partially reverting commit 6539306. [ 84.168146] ------------[ cut here ]------------ [ 84.168155] WARNING: at kernel/mutex.c:198 mutex_lock_nested+0x309/0x310() [ 84.168158] Hardware name: HP Pavilion dv2700 Notebook PC [ 84.168161] Modules linked in: nfs lockd auth_rpcgss nfs_acl sunrpc af_packet cpufreq_conservative cpufreq_userspace cpufreq_powersave powernow_k8 mperf e xt3 jbd ide_cd_mod cdrom snd_hda_codec_conexant arc4 rtl8192ce ide_pci_generic rtl8192c_common rtlwifi snd_hda_intel mac80211 snd_hda_codec snd_pcm snd_timer amd74xx ide_core cfg80211 k8temp snd joydev soundcore hwmon battery forcedeth i2c_nforce2 sg rfkill ac serio_raw snd_page_alloc button video i2c_core ipv6 a utofs4 ext4 mbcache jbd2 crc16 sd_mod ahci ohci_hcd libahci libata scsi_mod ehci_hcd usbcore usb_common fan processor thermal [ 84.168231] Pid: 1218, comm: kworker/u:2 Not tainted 3.2.0-rc5-wl+ #155 [ 84.168234] Call Trace: [ 84.168240] [<ffffffff81048aaa>] warn_slowpath_common+0x7a/0xb0 [ 84.168245] [<ffffffff81048af5>] warn_slowpath_null+0x15/0x20 [ 84.168249] [<ffffffff813811f9>] mutex_lock_nested+0x309/0x310 [ 84.168269] [<ffffffffa00793f9>] ? rtl_ips_nic_on+0x49/0xb0 [rtlwifi] [ 84.168277] [<ffffffffa00793f9>] rtl_ips_nic_on+0x49/0xb0 [rtlwifi] [ 84.168284] [<ffffffffa007ab85>] rtl_pci_tx+0x1b5/0x560 [rtlwifi] [ 84.168291] [<ffffffffa007635a>] rtl_op_tx+0x9a/0xa0 [rtlwifi] [ 84.168359] [<ffffffffa043cf51>] __ieee80211_tx+0x181/0x2b0 [mac80211] [ 84.168375] [<ffffffffa043ef06>] ieee80211_tx+0xf6/0x120 [mac80211] [ 84.168391] [<ffffffffa043ee49>] ? ieee80211_tx+0x39/0x120 [mac80211] [ 84.168408] [<ffffffffa043f80b>] ieee80211_xmit+0xdb/0x100 [mac80211] [ 84.168425] [<ffffffffa043f730>] ? ieee80211_skb_resize.isra.26+0xb0/0xb0 [mac80211] [ 84.168441] [<ffffffffa0440b2a>] ieee80211_tx_skb_tid+0x5a/0x70 [mac80211] [ 84.168458] [<ffffffffa0443da2>] ieee80211_send_auth+0x152/0x1b0 [mac80211] [ 84.168474] [<ffffffffa042e169>] ieee80211_work_work+0x1049/0x1860 [mac80211] [ 84.168489] [<ffffffffa042d120>] ? free_work+0x20/0x20 [mac80211] [ 84.168504] [<ffffffffa042d120>] ? free_work+0x20/0x20 [mac80211] [ 84.168510] [<ffffffff81065ffc>] process_one_work+0x17c/0x530 [ 84.168514] [<ffffffff81065f92>] ? process_one_work+0x112/0x530 [ 84.168519] [<ffffffff81066994>] worker_thread+0x164/0x350 [ 84.168524] [<ffffffff8108420d>] ? trace_hardirqs_on+0xd/0x10 [ 84.168528] [<ffffffff81066830>] ? manage_workers.isra.28+0x220/0x220 [ 84.168533] [<ffffffff8106bc17>] kthread+0x87/0x90 [ 84.168539] [<ffffffff813854b4>] kernel_thread_helper+0x4/0x10 [ 84.168543] [<ffffffff81382bdd>] ? retint_restore_args+0xe/0xe [ 84.168547] [<ffffffff8106bb90>] ? __init_kthread_worker+0x70/0x70 [ 84.168552] [<ffffffff813854b0>] ? gs_change+0xb/0xb [ 84.168554] ---[ end trace f25a4fdc768c028f ]--- Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Cc: Stanislaw Gruska <sgruszka@redhat.com> Cc: Chaoming Li <chaoming_li@realsil.com.cn> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: add Kconfig option for SDIO bus supportFranky Lin2011-12-192-15/+25
| | | | | | | | | | | | This patch adds a Kconfig option for SDIO bus support and abstracts a build subset correspondingly. It's the final patch of fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: exclude unnecessary header filesFranky Lin2011-12-194-6/+0
| | | | | | | | | | | This patch removes some headers files include lines from sdio layer code. This is part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: move idle macros to dhd_sdio.cFranky Lin2011-12-192-6/+6
| | | | | | | | | | | The idle macros are only used by dhd_sdio.c. It's more appropriate to place them in dhd_sdio.c instead of dhd.h. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: move debug level macros to dhd_dbg.hFranky Lin2011-12-192-15/+15
| | | | | | | | | | | Debug message level macros are used for debug purpose. It would be more appropriate to place them at dhd_dbg.h. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: abstract ctrl frames interface function pointersFranky Lin2011-12-193-17/+13
| | | | | | | | | | | | Abstract bus layer brcmf_bus_txctl/brcmf_bus_rxctl function pointers for common layer. This patch is part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: abstract bus_txdata interface function pointerFranky Lin2011-12-193-5/+5
| | | | | | | | | | | Abstract bus layer brcmf_bus_txdata function pointer for common layer. This patch is part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: abstract bus_init interface function pointerFranky Lin2011-12-193-5/+5
| | | | | | | | | | | Abstract bus layer brcmf_bus_init function pointer for common layer. This patch is part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: move common layer bus interface context to dhd_bus.hFranky Lin2011-12-194-75/+78
| | | | | | | | | | | | dhd_bus.h is the header file for bus interface. Move functions declarations and brcmf_bus structure to there. This is part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: abstract bus_stop interface function pointerFranky Lin2011-12-194-86/+88
| | | | | | | | | | | | Common layer should use interface function pointer stored in brcmf_bus to invoke corresponding interface function in bus layer. This patch is part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: move sdio related macros to sdio_host.hFranky Lin2011-12-196-10/+13
| | | | | | | | | | | | | dhd_bus.h will be used as the shared header file for common layer and bus layer. It should not contain any sdio specific macros. This patch moves them to sdio_host.h as part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: stop referencing brcmf_sdio in common layerFranky Lin2011-12-195-11/+7
| | | | | | | | | | | | brcmf_sdio is the data structure for sdio bus layer. Stop referencing brcmf_sdio from common layer. This patch is part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: stop referencing brcmf_pub in bus layerFranky Lin2011-12-193-33/+29
| | | | | | | | | | | | | brcmf_pub is the data structure for common layer. Since brcmf_bus should be the only structure shared by common layer and bus layer, stop referencing brcmf_pub from bus layer. This patch is part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: move tx flow ctrl flag to bus layerFranky Lin2011-12-193-4/+8
| | | | | | | | | | | | | txoff is the flow control flag for transmit used in sdio layer. Move it to bus layer data structure brcmf_sdio. Also flag management code is moved out of brcmf_txflowcontrol(). This is part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: move packet realloc stats to struct brcmf_busFranky Lin2011-12-193-4/+3
| | | | | | | | | | | | tx_realloc is used by both common layer and bus layer. This patch moves it to interface structure brcmf_bus as part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: move dongle statistics to struct brcmf_busFranky Lin2011-12-193-27/+27
| | | | | | | | | | | | Dongle statistics are shared data between common layer and bus layer. This patch places them in bus interface structure brcmf_bus as part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: remove duplicate statistics from driver data structureFranky Lin2011-12-195-45/+13
| | | | | | | | | | | | | Some dongle statistics are stored in two places and synced when net device status inquired. There is no need to do it this way any more. Direct all usage to dongle stats structure in order to increase readability. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: move driver up status to struct brcmf_busFranky Lin2011-12-193-12/+13
| | | | | | | | | | | | Driver up/down status to network interface need to be shared by common layer and bus layer. Move it to bus interface structure brcmf_bus as part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: move maxctl to struct brcmf_busFranky Lin2011-12-193-9/+9
| | | | | | | | | | | | maxctl is the max size of rxctl request from protocol layer to bus layer. Move it to bus interface structure brcmf_bus. This is part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: move sdio used statistics to struct brcmf_sdioFranky Lin2011-12-192-18/+14
| | | | | | | | | | | | Some statistics only used by sdio modules. Move them to sdio layer private structure brcmf_sdio. This is part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: change function proto_hdrpull parameterFranky Lin2011-12-194-6/+9
| | | | | | | | | | | | Change parameter to device pointer for bus layer interface function brcmf_proto_hdrpull This is part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: change function rx_frame parameterFranky Lin2011-12-193-6/+8
| | | | | | | | | | | | Change parameter to device pointer for bus layer interface function brcmf_rx_frame. This is part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: change function brcmf_c_prec_enq parameterFranky Lin2011-12-193-3/+6
| | | | | | | | | | | | Change parameter to device pointer for bus layer interface function brcmf_c_prec_enq. This is part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: change function txcomplete parameterFranky Lin2011-12-193-4/+6
| | | | | | | | | | | | Change parameter to device pointer for bus layer interface function brcmf_txcomplete. This is part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: change function txflowcontrol parameterFranky Lin2011-12-193-4/+6
| | | | | | | | | | | | Change parameter to device pointer for bus layer interface function brcmf_txflowcontrol. This is part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: change function brcmf_detach parameterFranky Lin2011-12-193-19/+20
| | | | | | | | | | | Change parameter to device pointer for bus layer interface function brcmf_detach. This is part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: change function bus_start parameterFranky Lin2011-12-193-6/+8
| | | | | | | | | | | | Change parameter to device pointer for bus layer interface function brcmf_bus_start. This is part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: change function add_if parameterFranky Lin2011-12-194-4/+9
| | | | | | | | | | | | Change parameter to device pointer for bus layer interface function brcmf_add_if. This is part of the fullmac bus interface refactoring. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: register a dummy irq handler for SDIO function 2Franky Lin2011-12-191-0/+7
| | | | | | | | | | | | | | | | When there is data available in dongle for driver to fetch, an interrupt will be triggered and both SDIO function 1 and 2 will be flagged by default in bcm4329. These two interrupt flags are identical and only need to be handled once. Since there is no way to turn off one flag from the dongle side, a dummy handler for function 2 interrupt is placed. Reported-by: Denis 'GNUtoo' Carikli <GNUtoo@no-log.org> Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: remove oneline proto block functionsFranky Lin2011-12-194-29/+7
| | | | | | | | | | | | brcmf_os_proto_block and brcmf_os_proto_unblock are oneline functions handling proto_block mutex. Place the mutex interface call inline to increase readability. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* brcm80211: fmac: unify common layer driver data structureFranky Lin2011-12-194-214/+180
| | | | | | | | | | | | No need to split data structure for common layer into brcmf_pub and brcmf_info. Absorb brcmf_info into brcmf_pub to increase code readability. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Arend van Spriel <arend@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Franky Lin <frankyl@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: avoid packet losses in the dma worker code.francesco.gringoli@ing.unibs.it2011-12-193-19/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | Following Rafal request, we verified that on "modern" CPUs using one or more workers is equivalent. Here is patch V3 that addresses the packet loss bug in the dma engine using only one worker. ------- This patch addresses a bug in the dma worker code that keeps draining packets even when the hardware queues are full. In such cases packets can not be passed down to the device and are erroneusly dropped by the code. This problem was already discussed here http://www.mail-archive.com/b43-dev@lists.infradead.org/msg01413.html and acknowledged by Michael. Number of hardware queues is now defined in b43.h (B43_QOS_QUEUE_NUM). Acknowledgements to Riccardo Paolillo <riccardo.paolillo@gmail.com> and Michele Orru <michele.orru@hotmail.it> Signed-off-by: Francesco Gringoli <francesco.gringoli@ing.unibs.it> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* mwifiex: cleanup work in scan.cAmitkumar Karwar2011-12-191-4/+4
| | | | | | | | | | | | Scan type derived from IEEE80211_CHAN_PASSIVE_SCAN bit is a boolean flag representing passive scanning. We should not again compare it with driver specific macro MWIFIEX_SCAN_TYPE_PASSIVE to determine passive or active scan. We can also avoid the use of local variable by using the flag directly. 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>
* ath: Convert ath_dbg(bar, ATH_DBG_<FOO>, to ath_dbg(bar, FOOJoe Perches2011-12-1934-799/+647
| | | | | | | | | | | | | | Add ATH_DBG_ to macros to shorten the uses and reduce the line count. Coalesce ath_dbg formats. Add missing spaces to coalesced formats. Add missing newline terminations to ath_dbg formats. Align ath_dbg arguments where appropriate. Standardize ath_dbg formats without periods. Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* Merge branch 'for-linville' of git://github.com/kvalo/ath6klJohn W. Linville2011-12-1922-653/+1809
|\
| * Merge remote branch 'wireless-next/master' into ath6kl-nextKalle Valo2011-12-163020-94166/+197384
| |\ | | | | | | | | | | | | Conflicts: drivers/net/wireless/ath/ath6kl/init.c
| * | ath6kl: support for P2P mgmt operations on station interfaceAarthi Thiruvengadam2011-12-144-10/+297
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch enables support for doing P2P management operations like device discovery on top of a station interface. After group formation, the station interface will become a P2P GO/client interface as the case may be. This feature requires modifications to a couple of existing WMI structures and therefore new command ids and structures have been defined in order to be compatible with older firmware versions and other chips. The exception here is the wmi_connect_cmd. Adding a new field to the end of the structure will not cause any issues with previous firmware versions since firmware only checks for minimum length of the command. The other structures are of variable length, hence it was not possible to add new fields to the end. The new command ids have to be added to the end of enum wmi_cmd_id, so it has updated to match the firmware. The driver will support both the 'old' and the 'new' commands for a while by checking the firmware capabilities. Signed-off-by: Aarthi Thiruvengadam <athiruve@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
| * | ath6kl: Support different uart_tx pin and refclk configurationRyan Hsu2011-12-142-9/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | AR6003 family use uart_tx=8 and refclk=26Mhz by default, and AR6004 family uses different uart_tx pin and could also support various xtal source, moves these per hw configuration. Signed-off-by: Ryan Hsu <ryanhsu@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
| * | ath6kl: implement scheduled scanKalle Valo2011-12-137-3/+209
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ath6kl firmware supports scheduled scan functionality with the wow ssid filter. But the firmware does not send any events after scan results so I had to add a timer which notifies about new scan results. Sched scan needs firmware version 3.2.0.6 or later. If firmware doesn't support sched scan the driver will not enable the feature. Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>