diff options
author | David S. Miller <davem@davemloft.net> | 2010-02-26 02:26:21 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-02-26 02:26:21 -0500 |
commit | 19bc291c99f018bd4f2c38bbf69144086dca903f (patch) | |
tree | 9d3cf9bc0c5a78e363dc0547da8bcd1e7c394265 /drivers/net/wireless/p54 | |
parent | 04488734806948624dabc4514f96f14cd75b9a50 (diff) | |
parent | 4a6967b88af02eebeedfbb91bc09160750225bb5 (diff) |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6
Conflicts:
drivers/net/wireless/iwlwifi/iwl-core.h
drivers/net/wireless/rt2x00/rt2800pci.c
Diffstat (limited to 'drivers/net/wireless/p54')
-rw-r--r-- | drivers/net/wireless/p54/main.c | 28 | ||||
-rw-r--r-- | drivers/net/wireless/p54/p54usb.c | 2 | ||||
-rw-r--r-- | drivers/net/wireless/p54/txrx.c | 2 |
3 files changed, 22 insertions, 10 deletions
diff --git a/drivers/net/wireless/p54/main.c b/drivers/net/wireless/p54/main.c index 3fe6366e567c..4f752a21495f 100644 --- a/drivers/net/wireless/p54/main.c +++ b/drivers/net/wireless/p54/main.c | |||
@@ -33,21 +33,29 @@ MODULE_DESCRIPTION("Softmac Prism54 common code"); | |||
33 | MODULE_LICENSE("GPL"); | 33 | MODULE_LICENSE("GPL"); |
34 | MODULE_ALIAS("prism54common"); | 34 | MODULE_ALIAS("prism54common"); |
35 | 35 | ||
36 | static int p54_sta_add_remove(struct ieee80211_hw *hw, | ||
37 | struct ieee80211_vif *vif, | ||
38 | struct ieee80211_sta *sta) | ||
39 | { | ||
40 | struct p54_common *priv = hw->priv; | ||
41 | |||
42 | /* | ||
43 | * Notify the firmware that we don't want or we don't | ||
44 | * need to buffer frames for this station anymore. | ||
45 | */ | ||
46 | |||
47 | p54_sta_unlock(priv, sta->addr); | ||
48 | |||
49 | return 0; | ||
50 | } | ||
51 | |||
36 | static void p54_sta_notify(struct ieee80211_hw *dev, struct ieee80211_vif *vif, | 52 | static void p54_sta_notify(struct ieee80211_hw *dev, struct ieee80211_vif *vif, |
37 | enum sta_notify_cmd notify_cmd, | 53 | enum sta_notify_cmd notify_cmd, |
38 | struct ieee80211_sta *sta) | 54 | struct ieee80211_sta *sta) |
39 | { | 55 | { |
40 | struct p54_common *priv = dev->priv; | 56 | struct p54_common *priv = dev->priv; |
41 | switch (notify_cmd) { | ||
42 | case STA_NOTIFY_ADD: | ||
43 | case STA_NOTIFY_REMOVE: | ||
44 | /* | ||
45 | * Notify the firmware that we don't want or we don't | ||
46 | * need to buffer frames for this station anymore. | ||
47 | */ | ||
48 | 57 | ||
49 | p54_sta_unlock(priv, sta->addr); | 58 | switch (notify_cmd) { |
50 | break; | ||
51 | case STA_NOTIFY_AWAKE: | 59 | case STA_NOTIFY_AWAKE: |
52 | /* update the firmware's filter table */ | 60 | /* update the firmware's filter table */ |
53 | p54_sta_unlock(priv, sta->addr); | 61 | p54_sta_unlock(priv, sta->addr); |
@@ -506,6 +514,8 @@ static const struct ieee80211_ops p54_ops = { | |||
506 | .remove_interface = p54_remove_interface, | 514 | .remove_interface = p54_remove_interface, |
507 | .set_tim = p54_set_tim, | 515 | .set_tim = p54_set_tim, |
508 | .sta_notify = p54_sta_notify, | 516 | .sta_notify = p54_sta_notify, |
517 | .sta_add = p54_sta_add_remove, | ||
518 | .sta_remove = p54_sta_add_remove, | ||
509 | .set_key = p54_set_key, | 519 | .set_key = p54_set_key, |
510 | .config = p54_config, | 520 | .config = p54_config, |
511 | .bss_info_changed = p54_bss_info_changed, | 521 | .bss_info_changed = p54_bss_info_changed, |
diff --git a/drivers/net/wireless/p54/p54usb.c b/drivers/net/wireless/p54/p54usb.c index 92af9b96bb7a..b3c4fbd80d8d 100644 --- a/drivers/net/wireless/p54/p54usb.c +++ b/drivers/net/wireless/p54/p54usb.c | |||
@@ -36,6 +36,7 @@ static struct usb_device_id p54u_table[] __devinitdata = { | |||
36 | /* Version 1 devices (pci chip + net2280) */ | 36 | /* Version 1 devices (pci chip + net2280) */ |
37 | {USB_DEVICE(0x0506, 0x0a11)}, /* 3COM 3CRWE254G72 */ | 37 | {USB_DEVICE(0x0506, 0x0a11)}, /* 3COM 3CRWE254G72 */ |
38 | {USB_DEVICE(0x0707, 0xee06)}, /* SMC 2862W-G */ | 38 | {USB_DEVICE(0x0707, 0xee06)}, /* SMC 2862W-G */ |
39 | {USB_DEVICE(0x07aa, 0x001c)}, /* Corega CG-WLUSB2GT */ | ||
39 | {USB_DEVICE(0x083a, 0x4501)}, /* Accton 802.11g WN4501 USB */ | 40 | {USB_DEVICE(0x083a, 0x4501)}, /* Accton 802.11g WN4501 USB */ |
40 | {USB_DEVICE(0x083a, 0x4502)}, /* Siemens Gigaset USB Adapter */ | 41 | {USB_DEVICE(0x083a, 0x4502)}, /* Siemens Gigaset USB Adapter */ |
41 | {USB_DEVICE(0x083a, 0x5501)}, /* Phillips CPWUA054 */ | 42 | {USB_DEVICE(0x083a, 0x5501)}, /* Phillips CPWUA054 */ |
@@ -60,6 +61,7 @@ static struct usb_device_id p54u_table[] __devinitdata = { | |||
60 | {USB_DEVICE(0x06b9, 0x0121)}, /* Thomson SpeedTouch 121g */ | 61 | {USB_DEVICE(0x06b9, 0x0121)}, /* Thomson SpeedTouch 121g */ |
61 | {USB_DEVICE(0x0707, 0xee13)}, /* SMC 2862W-G version 2 */ | 62 | {USB_DEVICE(0x0707, 0xee13)}, /* SMC 2862W-G version 2 */ |
62 | {USB_DEVICE(0x083a, 0x4521)}, /* Siemens Gigaset USB Adapter 54 version 2 */ | 63 | {USB_DEVICE(0x083a, 0x4521)}, /* Siemens Gigaset USB Adapter 54 version 2 */ |
64 | {USB_DEVICE(0x083a, 0xf503)}, /* Accton FD7050E ver 1010ec */ | ||
63 | {USB_DEVICE(0x0846, 0x4240)}, /* Netgear WG111 (v2) */ | 65 | {USB_DEVICE(0x0846, 0x4240)}, /* Netgear WG111 (v2) */ |
64 | {USB_DEVICE(0x0915, 0x2000)}, /* Cohiba Proto board */ | 66 | {USB_DEVICE(0x0915, 0x2000)}, /* Cohiba Proto board */ |
65 | {USB_DEVICE(0x0915, 0x2002)}, /* Cohiba Proto board */ | 67 | {USB_DEVICE(0x0915, 0x2002)}, /* Cohiba Proto board */ |
diff --git a/drivers/net/wireless/p54/txrx.c b/drivers/net/wireless/p54/txrx.c index 0e8f69461ffe..66057999a93c 100644 --- a/drivers/net/wireless/p54/txrx.c +++ b/drivers/net/wireless/p54/txrx.c | |||
@@ -186,7 +186,7 @@ static int p54_tx_qos_accounting_alloc(struct p54_common *priv, | |||
186 | struct p54_tx_queue_stats *queue; | 186 | struct p54_tx_queue_stats *queue; |
187 | unsigned long flags; | 187 | unsigned long flags; |
188 | 188 | ||
189 | if (WARN_ON(p54_queue > P54_QUEUE_NUM)) | 189 | if (WARN_ON(p54_queue >= P54_QUEUE_NUM)) |
190 | return -EINVAL; | 190 | return -EINVAL; |
191 | 191 | ||
192 | queue = &priv->tx_stats[p54_queue]; | 192 | queue = &priv->tx_stats[p54_queue]; |