mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 03:27:44 -04:00
Merge ssh://master.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem
This commit is contained in:
commit
31ec97d9ce
143 changed files with 1822 additions and 977 deletions
|
|
@ -245,6 +245,7 @@ struct cfg80211_event {
|
|||
u16 status;
|
||||
} cr;
|
||||
struct {
|
||||
struct ieee80211_channel *channel;
|
||||
u8 bssid[ETH_ALEN];
|
||||
const u8 *req_ie;
|
||||
const u8 *resp_ie;
|
||||
|
|
@ -392,7 +393,9 @@ int __cfg80211_disconnect(struct cfg80211_registered_device *rdev,
|
|||
int cfg80211_disconnect(struct cfg80211_registered_device *rdev,
|
||||
struct net_device *dev, u16 reason,
|
||||
bool wextev);
|
||||
void __cfg80211_roamed(struct wireless_dev *wdev, const u8 *bssid,
|
||||
void __cfg80211_roamed(struct wireless_dev *wdev,
|
||||
struct ieee80211_channel *channel,
|
||||
const u8 *bssid,
|
||||
const u8 *req_ie, size_t req_ie_len,
|
||||
const u8 *resp_ie, size_t resp_ie_len);
|
||||
int cfg80211_mgd_wext_connect(struct cfg80211_registered_device *rdev,
|
||||
|
|
|
|||
|
|
@ -3294,8 +3294,6 @@ static int nl80211_trigger_scan(struct sk_buff *skb, struct genl_info *info)
|
|||
struct cfg80211_registered_device *rdev = info->user_ptr[0];
|
||||
struct net_device *dev = info->user_ptr[1];
|
||||
struct cfg80211_scan_request *request;
|
||||
struct cfg80211_ssid *ssid;
|
||||
struct ieee80211_channel *channel;
|
||||
struct nlattr *attr;
|
||||
struct wiphy *wiphy;
|
||||
int err, tmp, n_ssids = 0, n_channels, i;
|
||||
|
|
@ -3342,8 +3340,8 @@ static int nl80211_trigger_scan(struct sk_buff *skb, struct genl_info *info)
|
|||
return -EINVAL;
|
||||
|
||||
request = kzalloc(sizeof(*request)
|
||||
+ sizeof(*ssid) * n_ssids
|
||||
+ sizeof(channel) * n_channels
|
||||
+ sizeof(*request->ssids) * n_ssids
|
||||
+ sizeof(*request->channels) * n_channels
|
||||
+ ie_len, GFP_KERNEL);
|
||||
if (!request)
|
||||
return -ENOMEM;
|
||||
|
|
@ -3449,8 +3447,6 @@ static int nl80211_start_sched_scan(struct sk_buff *skb,
|
|||
struct cfg80211_sched_scan_request *request;
|
||||
struct cfg80211_registered_device *rdev = info->user_ptr[0];
|
||||
struct net_device *dev = info->user_ptr[1];
|
||||
struct cfg80211_ssid *ssid;
|
||||
struct ieee80211_channel *channel;
|
||||
struct nlattr *attr;
|
||||
struct wiphy *wiphy;
|
||||
int err, tmp, n_ssids = 0, n_channels, i;
|
||||
|
|
@ -3507,8 +3503,8 @@ static int nl80211_start_sched_scan(struct sk_buff *skb,
|
|||
return -EINVAL;
|
||||
|
||||
request = kzalloc(sizeof(*request)
|
||||
+ sizeof(*ssid) * n_ssids
|
||||
+ sizeof(channel) * n_channels
|
||||
+ sizeof(*request->ssids) * n_ssids
|
||||
+ sizeof(*request->channels) * n_channels
|
||||
+ ie_len, GFP_KERNEL);
|
||||
if (!request)
|
||||
return -ENOMEM;
|
||||
|
|
|
|||
|
|
@ -250,7 +250,8 @@ static struct cfg80211_bss *cfg80211_get_conn_bss(struct wireless_dev *wdev)
|
|||
if (wdev->conn->params.privacy)
|
||||
capa |= WLAN_CAPABILITY_PRIVACY;
|
||||
|
||||
bss = cfg80211_get_bss(wdev->wiphy, NULL, wdev->conn->params.bssid,
|
||||
bss = cfg80211_get_bss(wdev->wiphy, wdev->conn->params.channel,
|
||||
wdev->conn->params.bssid,
|
||||
wdev->conn->params.ssid,
|
||||
wdev->conn->params.ssid_len,
|
||||
WLAN_CAPABILITY_ESS | WLAN_CAPABILITY_PRIVACY,
|
||||
|
|
@ -470,7 +471,10 @@ void __cfg80211_connect_result(struct net_device *dev, const u8 *bssid,
|
|||
}
|
||||
|
||||
if (!bss)
|
||||
bss = cfg80211_get_bss(wdev->wiphy, NULL, bssid,
|
||||
bss = cfg80211_get_bss(wdev->wiphy,
|
||||
wdev->conn ? wdev->conn->params.channel :
|
||||
NULL,
|
||||
bssid,
|
||||
wdev->ssid, wdev->ssid_len,
|
||||
WLAN_CAPABILITY_ESS,
|
||||
WLAN_CAPABILITY_ESS);
|
||||
|
|
@ -538,7 +542,9 @@ void cfg80211_connect_result(struct net_device *dev, const u8 *bssid,
|
|||
}
|
||||
EXPORT_SYMBOL(cfg80211_connect_result);
|
||||
|
||||
void __cfg80211_roamed(struct wireless_dev *wdev, const u8 *bssid,
|
||||
void __cfg80211_roamed(struct wireless_dev *wdev,
|
||||
struct ieee80211_channel *channel,
|
||||
const u8 *bssid,
|
||||
const u8 *req_ie, size_t req_ie_len,
|
||||
const u8 *resp_ie, size_t resp_ie_len)
|
||||
{
|
||||
|
|
@ -565,7 +571,7 @@ void __cfg80211_roamed(struct wireless_dev *wdev, const u8 *bssid,
|
|||
cfg80211_put_bss(&wdev->current_bss->pub);
|
||||
wdev->current_bss = NULL;
|
||||
|
||||
bss = cfg80211_get_bss(wdev->wiphy, NULL, bssid,
|
||||
bss = cfg80211_get_bss(wdev->wiphy, channel, bssid,
|
||||
wdev->ssid, wdev->ssid_len,
|
||||
WLAN_CAPABILITY_ESS, WLAN_CAPABILITY_ESS);
|
||||
|
||||
|
|
@ -603,7 +609,9 @@ void __cfg80211_roamed(struct wireless_dev *wdev, const u8 *bssid,
|
|||
#endif
|
||||
}
|
||||
|
||||
void cfg80211_roamed(struct net_device *dev, const u8 *bssid,
|
||||
void cfg80211_roamed(struct net_device *dev,
|
||||
struct ieee80211_channel *channel,
|
||||
const u8 *bssid,
|
||||
const u8 *req_ie, size_t req_ie_len,
|
||||
const u8 *resp_ie, size_t resp_ie_len, gfp_t gfp)
|
||||
{
|
||||
|
|
@ -619,6 +627,7 @@ void cfg80211_roamed(struct net_device *dev, const u8 *bssid,
|
|||
return;
|
||||
|
||||
ev->type = EVENT_ROAMED;
|
||||
ev->rm.channel = channel;
|
||||
memcpy(ev->rm.bssid, bssid, ETH_ALEN);
|
||||
ev->rm.req_ie = ((u8 *)ev) + sizeof(*ev);
|
||||
ev->rm.req_ie_len = req_ie_len;
|
||||
|
|
|
|||
|
|
@ -746,7 +746,7 @@ static void cfg80211_process_wdev_events(struct wireless_dev *wdev)
|
|||
NULL);
|
||||
break;
|
||||
case EVENT_ROAMED:
|
||||
__cfg80211_roamed(wdev, ev->rm.bssid,
|
||||
__cfg80211_roamed(wdev, ev->rm.channel, ev->rm.bssid,
|
||||
ev->rm.req_ie, ev->rm.req_ie_len,
|
||||
ev->rm.resp_ie, ev->rm.resp_ie_len);
|
||||
break;
|
||||
|
|
|
|||
Loading…
Reference in a new issue