diff options
Diffstat (limited to 'drivers/net/wireless/ipw2200.c')
-rw-r--r-- | drivers/net/wireless/ipw2200.c | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/drivers/net/wireless/ipw2200.c b/drivers/net/wireless/ipw2200.c index 0500e8006a14..61cbf2ec0ab4 100644 --- a/drivers/net/wireless/ipw2200.c +++ b/drivers/net/wireless/ipw2200.c | |||
@@ -4489,6 +4489,24 @@ static void ipw_rx_notification(struct ipw_priv *priv, | |||
4489 | && priv->status & STATUS_ASSOCIATED) | 4489 | && priv->status & STATUS_ASSOCIATED) |
4490 | queue_delayed_work(priv->workqueue, | 4490 | queue_delayed_work(priv->workqueue, |
4491 | &priv->request_scan, HZ); | 4491 | &priv->request_scan, HZ); |
4492 | |||
4493 | /* Send an empty event to user space. | ||
4494 | * We don't send the received data on the event because | ||
4495 | * it would require us to do complex transcoding, and | ||
4496 | * we want to minimise the work done in the irq handler | ||
4497 | * Use a request to extract the data. | ||
4498 | * Also, we generate this even for any scan, regardless | ||
4499 | * on how the scan was initiated. User space can just | ||
4500 | * sync on periodic scan to get fresh data... | ||
4501 | * Jean II */ | ||
4502 | if (x->status == SCAN_COMPLETED_STATUS_COMPLETE) { | ||
4503 | union iwreq_data wrqu; | ||
4504 | |||
4505 | wrqu.data.length = 0; | ||
4506 | wrqu.data.flags = 0; | ||
4507 | wireless_send_event(priv->net_dev, SIOCGIWSCAN, | ||
4508 | &wrqu, NULL); | ||
4509 | } | ||
4492 | break; | 4510 | break; |
4493 | } | 4511 | } |
4494 | 4512 | ||
@@ -8379,7 +8397,8 @@ static int ipw_wx_get_range(struct net_device *dev, | |||
8379 | /* Event capability (kernel + driver) */ | 8397 | /* Event capability (kernel + driver) */ |
8380 | range->event_capa[0] = (IW_EVENT_CAPA_K_0 | | 8398 | range->event_capa[0] = (IW_EVENT_CAPA_K_0 | |
8381 | IW_EVENT_CAPA_MASK(SIOCGIWTHRSPY) | | 8399 | IW_EVENT_CAPA_MASK(SIOCGIWTHRSPY) | |
8382 | IW_EVENT_CAPA_MASK(SIOCGIWAP)); | 8400 | IW_EVENT_CAPA_MASK(SIOCGIWAP) | |
8401 | IW_EVENT_CAPA_MASK(SIOCGIWSCAN)); | ||
8383 | range->event_capa[1] = IW_EVENT_CAPA_K_1; | 8402 | range->event_capa[1] = IW_EVENT_CAPA_K_1; |
8384 | 8403 | ||
8385 | range->enc_capa = IW_ENC_CAPA_WPA | IW_ENC_CAPA_WPA2 | | 8404 | range->enc_capa = IW_ENC_CAPA_WPA | IW_ENC_CAPA_WPA2 | |