Commit 330ee004 authored by John W. Linville's avatar John W. Linville

Merge branch 'master' of...

Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless into for-davem
parents 3da3fff8 f89ff644
...@@ -38,6 +38,7 @@ static struct usb_device_id ath9k_hif_usb_ids[] = { ...@@ -38,6 +38,7 @@ static struct usb_device_id ath9k_hif_usb_ids[] = {
{ USB_DEVICE(0x04CA, 0x4605) }, /* Liteon */ { USB_DEVICE(0x04CA, 0x4605) }, /* Liteon */
{ USB_DEVICE(0x040D, 0x3801) }, /* VIA */ { USB_DEVICE(0x040D, 0x3801) }, /* VIA */
{ USB_DEVICE(0x0cf3, 0xb003) }, /* Ubiquiti WifiStation Ext */ { USB_DEVICE(0x0cf3, 0xb003) }, /* Ubiquiti WifiStation Ext */
{ USB_DEVICE(0x0cf3, 0xb002) }, /* Ubiquiti WifiStation */
{ USB_DEVICE(0x057c, 0x8403) }, /* AVM FRITZ!WLAN 11N v2 USB */ { USB_DEVICE(0x057c, 0x8403) }, /* AVM FRITZ!WLAN 11N v2 USB */
{ USB_DEVICE(0x0cf3, 0x7015), { USB_DEVICE(0x0cf3, 0x7015),
......
...@@ -5404,6 +5404,8 @@ static void b43_bcma_remove(struct bcma_device *core) ...@@ -5404,6 +5404,8 @@ static void b43_bcma_remove(struct bcma_device *core)
cancel_work_sync(&wldev->restart_work); cancel_work_sync(&wldev->restart_work);
B43_WARN_ON(!wl); B43_WARN_ON(!wl);
if (!wldev->fw.ucode.data)
return; /* NULL if firmware never loaded */
if (wl->current_dev == wldev && wl->hw_registred) { if (wl->current_dev == wldev && wl->hw_registred) {
b43_leds_stop(wldev); b43_leds_stop(wldev);
ieee80211_unregister_hw(wl->hw); ieee80211_unregister_hw(wl->hw);
...@@ -5478,6 +5480,8 @@ static void b43_ssb_remove(struct ssb_device *sdev) ...@@ -5478,6 +5480,8 @@ static void b43_ssb_remove(struct ssb_device *sdev)
cancel_work_sync(&wldev->restart_work); cancel_work_sync(&wldev->restart_work);
B43_WARN_ON(!wl); B43_WARN_ON(!wl);
if (!wldev->fw.ucode.data)
return; /* NULL if firmware never loaded */
if (wl->current_dev == wldev && wl->hw_registred) { if (wl->current_dev == wldev && wl->hw_registred) {
b43_leds_stop(wldev); b43_leds_stop(wldev);
ieee80211_unregister_hw(wl->hw); ieee80211_unregister_hw(wl->hw);
......
...@@ -3569,7 +3569,7 @@ brcmf_cfg80211_sched_scan_start(struct wiphy *wiphy, ...@@ -3569,7 +3569,7 @@ brcmf_cfg80211_sched_scan_start(struct wiphy *wiphy,
if (!request || !request->n_ssids || !request->n_match_sets) { if (!request || !request->n_ssids || !request->n_match_sets) {
WL_ERR("Invalid sched scan req!! n_ssids:%d\n", WL_ERR("Invalid sched scan req!! n_ssids:%d\n",
request->n_ssids); request ? request->n_ssids : 0);
return -EINVAL; return -EINVAL;
} }
......
...@@ -1825,8 +1825,6 @@ mwifiex_cfg80211_scan(struct wiphy *wiphy, ...@@ -1825,8 +1825,6 @@ mwifiex_cfg80211_scan(struct wiphy *wiphy,
return -EBUSY; return -EBUSY;
} }
priv->scan_request = request;
priv->user_scan_cfg = kzalloc(sizeof(struct mwifiex_user_scan_cfg), priv->user_scan_cfg = kzalloc(sizeof(struct mwifiex_user_scan_cfg),
GFP_KERNEL); GFP_KERNEL);
if (!priv->user_scan_cfg) { if (!priv->user_scan_cfg) {
...@@ -1834,6 +1832,8 @@ mwifiex_cfg80211_scan(struct wiphy *wiphy, ...@@ -1834,6 +1832,8 @@ mwifiex_cfg80211_scan(struct wiphy *wiphy,
return -ENOMEM; return -ENOMEM;
} }
priv->scan_request = request;
priv->user_scan_cfg->num_ssids = request->n_ssids; priv->user_scan_cfg->num_ssids = request->n_ssids;
priv->user_scan_cfg->ssid_list = request->ssids; priv->user_scan_cfg->ssid_list = request->ssids;
...@@ -1870,6 +1870,9 @@ mwifiex_cfg80211_scan(struct wiphy *wiphy, ...@@ -1870,6 +1870,9 @@ mwifiex_cfg80211_scan(struct wiphy *wiphy,
ret = mwifiex_scan_networks(priv, priv->user_scan_cfg); ret = mwifiex_scan_networks(priv, priv->user_scan_cfg);
if (ret) { if (ret) {
dev_err(priv->adapter->dev, "scan failed: %d\n", ret); dev_err(priv->adapter->dev, "scan failed: %d\n", ret);
priv->scan_request = NULL;
kfree(priv->user_scan_cfg);
priv->user_scan_cfg = NULL;
return ret; return ret;
} }
......
...@@ -1843,21 +1843,18 @@ static int mwifiex_scan_specific_ssid(struct mwifiex_private *priv, ...@@ -1843,21 +1843,18 @@ static int mwifiex_scan_specific_ssid(struct mwifiex_private *priv,
struct cfg80211_ssid *req_ssid) struct cfg80211_ssid *req_ssid)
{ {
struct mwifiex_adapter *adapter = priv->adapter; struct mwifiex_adapter *adapter = priv->adapter;
int ret = 0; int ret;
struct mwifiex_user_scan_cfg *scan_cfg; struct mwifiex_user_scan_cfg *scan_cfg;
if (!req_ssid)
return -1;
if (adapter->scan_processing) { if (adapter->scan_processing) {
dev_dbg(adapter->dev, "cmd: Scan already in process...\n"); dev_err(adapter->dev, "cmd: Scan already in process...\n");
return ret; return -EBUSY;
} }
if (priv->scan_block) { if (priv->scan_block) {
dev_dbg(adapter->dev, dev_err(adapter->dev,
"cmd: Scan is blocked during association...\n"); "cmd: Scan is blocked during association...\n");
return ret; return -EBUSY;
} }
scan_cfg = kzalloc(sizeof(struct mwifiex_user_scan_cfg), GFP_KERNEL); scan_cfg = kzalloc(sizeof(struct mwifiex_user_scan_cfg), GFP_KERNEL);
......
...@@ -1988,6 +1988,7 @@ static struct usb_driver rt2500usb_driver = { ...@@ -1988,6 +1988,7 @@ static struct usb_driver rt2500usb_driver = {
.disconnect = rt2x00usb_disconnect, .disconnect = rt2x00usb_disconnect,
.suspend = rt2x00usb_suspend, .suspend = rt2x00usb_suspend,
.resume = rt2x00usb_resume, .resume = rt2x00usb_resume,
.reset_resume = rt2x00usb_resume,
.disable_hub_initiated_lpm = 1, .disable_hub_initiated_lpm = 1,
}; };
......
...@@ -1282,6 +1282,7 @@ static struct usb_driver rt2800usb_driver = { ...@@ -1282,6 +1282,7 @@ static struct usb_driver rt2800usb_driver = {
.disconnect = rt2x00usb_disconnect, .disconnect = rt2x00usb_disconnect,
.suspend = rt2x00usb_suspend, .suspend = rt2x00usb_suspend,
.resume = rt2x00usb_resume, .resume = rt2x00usb_resume,
.reset_resume = rt2x00usb_resume,
.disable_hub_initiated_lpm = 1, .disable_hub_initiated_lpm = 1,
}; };
......
...@@ -2535,6 +2535,7 @@ static struct usb_driver rt73usb_driver = { ...@@ -2535,6 +2535,7 @@ static struct usb_driver rt73usb_driver = {
.disconnect = rt2x00usb_disconnect, .disconnect = rt2x00usb_disconnect,
.suspend = rt2x00usb_suspend, .suspend = rt2x00usb_suspend,
.resume = rt2x00usb_resume, .resume = rt2x00usb_resume,
.reset_resume = rt2x00usb_resume,
.disable_hub_initiated_lpm = 1, .disable_hub_initiated_lpm = 1,
}; };
......
...@@ -673,7 +673,7 @@ static int rtl_usb_start(struct ieee80211_hw *hw) ...@@ -673,7 +673,7 @@ static int rtl_usb_start(struct ieee80211_hw *hw)
set_hal_start(rtlhal); set_hal_start(rtlhal);
/* Start bulk IN */ /* Start bulk IN */
_rtl_usb_receive(hw); err = _rtl_usb_receive(hw);
} }
return err; return err;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment