aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless
Commit message (Collapse)AuthorAgeFilesLines
* bcmdhd: Enable Ad-Hoc (IBSS) modeBruno Randolf2013-03-191-2/+63
| | | | | | | | | | Enable Ad-Hoc (IBSS) mode for bcmdhd. We basically just need to set the interface flag and avoid some P2P specific settings while scanning. Also add the "station get" command for IBSS mode. Change-Id: Ice320bc65b0b9b738fa09acc1e3dea2a58805ad9 Signed-off-by: Bruno Randolf <br1@einfach.org>
* Merge branch android android-3.0 into HEADKalimochoAz2012-10-315-12/+94
|\
| * net: wireless: bcmdhd: Fix WD wakelock behaviorDmitry Shmidt2012-10-242-8/+64
| | | | | | | | | | | | | | | | | | Change-Id: I7ebae2be248cbb4bc98e2b448641f65b77a320f4 Signed-off-by: Dmitry Shmidt <dimitrysh@google.com> Conflicts: drivers/net/wireless/bcmdhd/dhd_linux.c
| * net: wireless: bcmdhd: Fix BSSID report for disassocDmitry Shmidt2012-10-243-4/+30
| | | | | | | | | | Change-Id: I5e3b01a1a471e5983ab934fc9d65802a389ab1af Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
* | Merge commit '24e842a' into HEADKalimochoAz2012-10-141-0/+2
|\ \
| * | b43legacy: Fix crash on unload when firmware not availableLarry Finger2012-10-071-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 2d838bb608e2d1f6cb4280e76748cb812dc822e7 upstream. When b43legacy is loaded without the firmware being available, a following unload generates a kernel NULL pointer dereference BUG as follows: [ 214.330789] BUG: unable to handle kernel NULL pointer dereference at 0000004c [ 214.330997] IP: [<c104c395>] drain_workqueue+0x15/0x170 [ 214.331179] *pde = 00000000 [ 214.331311] Oops: 0000 [#1] SMP [ 214.331471] Modules linked in: b43legacy(-) ssb pcmcia mac80211 cfg80211 af_packet mperf arc4 ppdev sr_mod cdrom sg shpchp yenta_socket pcmcia_rsrc pci_hotplug pcmcia_core battery parport_pc parport floppy container ac button edd autofs4 ohci_hcd ehci_hcd usbcore usb_common thermal processor scsi_dh_rdac scsi_dh_hp_sw scsi_dh_emc scsi_dh_alua scsi_dh fan thermal_sys hwmon ata_generic pata_ali libata [last unloaded: cfg80211] [ 214.333421] Pid: 3639, comm: modprobe Not tainted 3.6.0-rc6-wl+ #163 Source Technology VIC 9921/ALI Based Notebook [ 214.333580] EIP: 0060:[<c104c395>] EFLAGS: 00010246 CPU: 0 [ 214.333687] EIP is at drain_workqueue+0x15/0x170 [ 214.333788] EAX: c162ac40 EBX: cdfb8360 ECX: 0000002a EDX: 00002a2a [ 214.333890] ESI: 00000000 EDI: 00000000 EBP: cd767e7c ESP: cd767e5c [ 214.333957] DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068 [ 214.333957] CR0: 8005003b CR2: 0000004c CR3: 0c96a000 CR4: 00000090 [ 214.333957] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000 [ 214.333957] DR6: ffff0ff0 DR7: 00000400 [ 214.333957] Process modprobe (pid: 3639, ti=cd766000 task=cf802e90 task.ti=cd766000) [ 214.333957] Stack: [ 214.333957] 00000292 cd767e74 c12c5e09 00000296 00000296 cdfb8360 cdfb9220 00000000 [ 214.333957] cd767e90 c104c4fd cdfb8360 cdfb9220 cd682800 cd767ea4 d0c10184 cd682800 [ 214.333957] cd767ea4 cba31064 cd767eb8 d0867908 cba31064 d087e09c cd96f034 cd767ec4 [ 214.333957] Call Trace: [ 214.333957] [<c12c5e09>] ? skb_dequeue+0x49/0x60 [ 214.333957] [<c104c4fd>] destroy_workqueue+0xd/0x150 [ 214.333957] [<d0c10184>] ieee80211_unregister_hw+0xc4/0x100 [mac80211] [ 214.333957] [<d0867908>] b43legacy_remove+0x78/0x80 [b43legacy] [ 214.333957] [<d083654d>] ssb_device_remove+0x1d/0x30 [ssb] [ 214.333957] [<c126f15a>] __device_release_driver+0x5a/0xb0 [ 214.333957] [<c126fb07>] driver_detach+0x87/0x90 [ 214.333957] [<c126ef4c>] bus_remove_driver+0x6c/0xe0 [ 214.333957] [<c1270120>] driver_unregister+0x40/0x70 [ 214.333957] [<d083686b>] ssb_driver_unregister+0xb/0x10 [ssb] [ 214.333957] [<d087c488>] b43legacy_exit+0xd/0xf [b43legacy] [ 214.333957] [<c1089dde>] sys_delete_module+0x14e/0x2b0 [ 214.333957] [<c110a4a7>] ? vfs_write+0xf7/0x150 [ 214.333957] [<c1240050>] ? tty_write_lock+0x50/0x50 [ 214.333957] [<c110a6f8>] ? sys_write+0x38/0x70 [ 214.333957] [<c1397c55>] syscall_call+0x7/0xb [ 214.333957] Code: bc 27 00 00 00 00 a1 74 61 56 c1 55 89 e5 e8 a3 fc ff ff 5d c3 90 55 89 e5 57 56 89 c6 53 b8 40 ac 62 c1 83 ec 14 e8 bb b7 34 00 <8b> 46 4c 8d 50 01 85 c0 89 56 4c 75 03 83 0e 40 80 05 40 ac 62 [ 214.333957] EIP: [<c104c395>] drain_workqueue+0x15/0x170 SS:ESP 0068:cd767e5c [ 214.333957] CR2: 000000000000004c [ 214.341110] ---[ end trace c7e90ec026d875a6 ]---Index: wireless-testing/drivers/net/wireless/b43legacy/main.c The problem is fixed by making certain that the ucode pointer is not NULL before deregistering the driver in mac80211. Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* | | Merge commit 'b9a7985' into HEADKalimochoAz2012-10-1411-9/+78
|\ \ \ | |/ / | | | | | | | | | Conflicts: kernel/time/timekeeping.c
| * | rt2x00: Fix rfkill polling prior to interface start.Gertjan van Wingerde2012-10-0211-0/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit a396e10019eaf3809b0219c966865aaafec12630 upstream. We need to program the rfkill switch GPIO pin direction to input at device initialization time, not only when the interface is brought up. Doing this only when the interface is brought up could lead to rfkill detecting the switch is turned on erroneously and inability to create the interface and bringing it up. Reported-and-tested-by: Andreas Messer <andi@bastelmap.de> Signed-off-by: Gertjan van Wingerde <gwingerde@gmail.com> Acked-by: Ivo Van Doorn <ivdoorn@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| * | rt2x00: Fix word size of rt2500usb MAC_CSR19 register.Gertjan van Wingerde2012-10-022-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 6ced58a5dbb94dbfbea1b33ca3c56d1e929cd548 upstream. The register is 16 bits wide, not 32. Signed-off-by: Gertjan van Wingerde <gwingerde@gmail.com> Acked-by: Ivo Van Doorn <ivdoorn@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* | | Merge remote-tracking branch 'google/android-samsung-3.0-jb-mr0' into HEADKalimochoAz2012-10-141-2/+1
|\ \ \ | | | | | | | | | | | | | | | | Conflicts: drivers/net/wireless/bcmdhd/wl_cfg80211.c
| * | | net: wireless: bcmdhd: Report proper mcs rate maskDmitry Shmidt2012-09-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Setting proper mcs rate mask allows to connect in 802.11n-only mode Change-Id: Iffd47a60c92a74d29e42d81d79fa64463f5895c5 Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
* | | | Merge remote-tracking branch 'android/android-3.0' into HEADKalimochoAz2012-10-145-3/+26
|\ \ \ \ | | |_|/ | |/| |
| * | | net: wireless: bcmdhd: Adjust roaming treshold to -65 dBDmitry Shmidt2012-09-201-1/+1
| | | | | | | | | | | | | | | | | | | | Change-Id: I88bb0cf759ee4262f31f054ef2dd5fc6258e8628 Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Add print when power-save mode is OFFDmitry Shmidt2012-09-171-2/+2
| | | | | | | | | | | | | | | | | | | | Change-Id: Idc72198b2d59c76dd45ba918cef982bcd7b570ab Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Update wifi stack ps state if was changedDmitry Shmidt2012-09-174-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Ib1ee0b6ee05077d1ed6cfb578b6384dfc9787c81 Signed-off-by: Dmitry Shmidt <dimitrysh@google.com> Conflicts: drivers/net/wireless/bcmdhd/wl_cfg80211.h
* | | | Merge remote-tracking branch 'android/android-3.0' into HEADKalimochoAz2012-09-1620-144/+289
|\ \ \ \ | |/ / / | | | | | | | | | | | | | | | | | | | | Conflicts: drivers/net/wireless/bcmdhd/dhd_linux.c drivers/net/wireless/bcmdhd/wl_cfg80211.c drivers/net/wireless/bcmdhd/wl_cfg80211.h
| * | | net: wireless: bcmdhd: Add ROAM setting per platform from MakefleDmitry Shmidt2012-09-133-0/+26
| | | | | | | | | | | | | | | | | | | | Change-Id: Ia6bc3025e3641cb6b91022ab1c9976c0f6ad16a4 Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Report proper mcs rate maskDmitry Shmidt2012-09-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Setting proper mcs rate mask allows to connect in 802.11n-only mode Change-Id: Iffd47a60c92a74d29e42d81d79fa64463f5895c5 Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Fix sending ctrl packetDmitry Shmidt2012-08-281-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Schedule dpc thread to send ctrl frame if we cannot send ctrl packet immediately. Change-Id: I5ae8b705a6ccddcc1f5c86b4c094342b57d26c7f Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Add ASSOC event processingDmitry Shmidt2012-08-271-0/+1
| | | | | | | | | | | | | | | | | | | | Change-Id: Ide0b887ba52af56d0aaa415111df5ba16265c8d8 Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Update to version 5.90.195.104Dmitry Shmidt2012-08-279-78/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Fix p2p support for new wpa_supplicant - Propagate disconnect error code for cfg80211 Change-Id: I9643fbad7b6170b0e794fd7854201931d5eefb22 Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Remove WIPHY_FLAG_SUPPORTS_FW_ROAM flagDmitry Shmidt2012-08-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If driver advertises FW_ROAM, the supplicant wouldn't send the BSSID & Freq in the connect command allowing the driver to choose the AP to connect to. But unless we support ROAM_CACHE in firware this will delay the ASSOC as the FW need to do a full scan before attempting to connect. Change-Id: Iebc88a60243196b9ad27b8302f2b1473710308f6 Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Remove PMKID_CACHE and TXFAIL events for CFG80211Dmitry Shmidt2012-08-221-0/+2
| | | | | | | | | | | | | | | | | | | | Change-Id: I82b6a1c9941485f3b47bc5978873379ab8853601 Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Update to Version 5.90.195.98Dmitry Shmidt2012-08-2217-81/+204
| | | | | | | | | | | | | | | | | | | | Change-Id: I2854300bc03b133d8276bea2f36f4c5253c551a1 Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcm4329: Remove obsolete filesDmitry Shmidt2012-08-132-287/+0
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Use correct time from boot for TSFDmitry Shmidt2012-08-131-4/+4
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Fill station_info packet fieldsDmitry Shmidt2012-07-271-0/+14
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Prevent HT Avail request failure to flood the logDmitry Shmidt2012-07-183-12/+31
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Use proper jiffie-related functionsDmitry Shmidt2012-07-176-34/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com> Conflicts: drivers/net/wireless/bcmdhd/wl_cfg80211.c drivers/net/wireless/bcmdhd/wl_iw.c
| * | | net: wireless: bcmdhd: Adjust driver/fw/chip info formatDmitry Shmidt2012-07-171-2/+2
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Add info_string param with driver/fw/chip infoDmitry Shmidt2012-07-123-5/+45
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Remove country update from wl_update_wiphybandsDmitry Shmidt2012-07-123-24/+5
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Fix P2P GO hang issueNeeraj Kumar Garg2012-07-122-28/+37
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Update wiphy bands on band changeDmitry Shmidt2012-07-125-4/+38
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Init locks in dhd_attach() at the beginningAndrey Vagin2012-07-121-11/+12
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcm4329: Init locks in dhd_attach() at the beginningAndrey Vagin2012-07-121-11/+11
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Add mutex to wl_update_wiphybands()Dmitry Shmidt2012-07-121-3/+10
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Skip country setting if unnecessaryDmitry Shmidt2012-07-121-13/+14
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Return wl_construct_reginfo() callDmitry Shmidt2012-07-121-2/+0
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Add wiphyband update for country changeDmitry Shmidt2012-07-121-1/+5
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Skip inaccurate wl_construct_reginfo() callDmitry Shmidt2012-06-281-1/+3
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Ignore error if "chanspecs" command is not supportedDmitry Shmidt2012-06-201-1/+4
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Reduce priority for dhd_dpc and watchdogDmitry Shmidt2012-06-191-3/+2
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Reload FW in case of constant scan failureDmitry Shmidt2012-06-194-1/+12
| | | | | | | | | | | | | | | | Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
| * | | net: wireless: bcmdhd: Combined P2P fixesDmitry Shmidt2012-06-132-32/+77
| |/ / | | | | | | | | | | | | | | | | | | | | | - Fix p2p scan - Fix p2p processing for channels 12 and 13 - Fix service discovery Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
* | | Merge remote-tracking branch 'korg/linux-3.0.y' into HEADKalimochoAz2012-09-163-3/+3
|\ \ \ | | |/ | |/|
| * | USB: rtl8187: remove __devinit* from the struct usb_device_id tableGreg Kroah-Hartman2012-09-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit a3433179d0822ccfa8e80aa4d1d52843bd2dcc63 upstream. This structure needs to always stick around, even if CONFIG_HOTPLUG is disabled, otherwise we can oops when trying to probe a device that was added after the structure is thrown away. Thanks to Fengguang Wu and Bjørn Mork for tracking this issue down. Reported-by: Fengguang Wu <fengguang.wu@intel.com> Reported-by: Bjørn Mork <bjorn@mork.no> CC: Herton Ronaldo Krzesinski <herton@canonical.com> CC: Hin-Tak Leung <htl10@users.sourceforge.net> CC: Larry Finger <Larry.Finger@lwfinger.net> CC: "John W. Linville" <linville@tuxdriver.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| * | USB: p54usb: remove __devinit* from the struct usb_device_id tableGreg Kroah-Hartman2012-09-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit b9c4167cbbafddac3462134013bc15e63e4c53ef upstream. This structure needs to always stick around, even if CONFIG_HOTPLUG is disabled, otherwise we can oops when trying to probe a device that was added after the structure is thrown away. Thanks to Fengguang Wu and Bjørn Mork for tracking this issue down. Reported-by: Fengguang Wu <fengguang.wu@intel.com> Reported-by: Bjørn Mork <bjorn@mork.no> CC: Christian Lamparter <chunkeey@googlemail.com> CC: "John W. Linville" <linville@tuxdriver.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| * | ath9k: fix decrypt_error initialization in ath_rx_tasklet()Lorenzo Bianconi2012-09-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit e1352fde5682ab1bdd2a9e5d75c22d1fe210ef77 upstream. ath_rx_tasklet() calls ath9k_rx_skb_preprocess() and ath9k_rx_skb_postprocess() in a loop over the received frames. The decrypt_error flag is initialized to false just outside ath_rx_tasklet() loop. ath9k_rx_accept(), called by ath9k_rx_skb_preprocess(), only sets decrypt_error to true and never to false. Then ath_rx_tasklet() calls ath9k_rx_skb_postprocess() and passes decrypt_error to it. So, after a decryption error, in ath9k_rx_skb_postprocess(), we can have a leftover value from another processed frame. In that case, the frame will not be marked with RX_FLAG_DECRYPTED even if it is decrypted correctly. When using CCMP encryption this issue can lead to connection stuck because of CCMP PN corruption and a waste of CPU time since mac80211 tries to decrypt an already deciphered frame with ieee80211_aes_ccm_decrypt. Fix the issue initializing decrypt_error flag at the begging of the ath_rx_tasklet() loop. Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi83@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* | | Merge branch 'linux-3.0.y' into HEADKalimochoAz2012-08-302-2/+2
|\ \ \ | |/ / | | | | | | | | | Conflicts: drivers/net/tun.c