diff options
Diffstat (limited to 'drivers/net/wireless')
141 files changed, 285 insertions, 60 deletions
diff --git a/drivers/net/wireless/adm8211.c b/drivers/net/wireless/adm8211.c index 2277998b7264..880ad9d170c2 100644 --- a/drivers/net/wireless/adm8211.c +++ b/drivers/net/wireless/adm8211.c | |||
@@ -18,6 +18,7 @@ | |||
18 | #include <linux/init.h> | 18 | #include <linux/init.h> |
19 | #include <linux/if.h> | 19 | #include <linux/if.h> |
20 | #include <linux/skbuff.h> | 20 | #include <linux/skbuff.h> |
21 | #include <linux/slab.h> | ||
21 | #include <linux/etherdevice.h> | 22 | #include <linux/etherdevice.h> |
22 | #include <linux/pci.h> | 23 | #include <linux/pci.h> |
23 | #include <linux/delay.h> | 24 | #include <linux/delay.h> |
diff --git a/drivers/net/wireless/ath/ar9170/main.c b/drivers/net/wireless/ath/ar9170/main.c index b43d4b006d7e..7c4a7d84535c 100644 --- a/drivers/net/wireless/ath/ar9170/main.c +++ b/drivers/net/wireless/ath/ar9170/main.c | |||
@@ -38,6 +38,7 @@ | |||
38 | */ | 38 | */ |
39 | 39 | ||
40 | #include <linux/init.h> | 40 | #include <linux/init.h> |
41 | #include <linux/slab.h> | ||
41 | #include <linux/module.h> | 42 | #include <linux/module.h> |
42 | #include <linux/etherdevice.h> | 43 | #include <linux/etherdevice.h> |
43 | #include <net/mac80211.h> | 44 | #include <net/mac80211.h> |
diff --git a/drivers/net/wireless/ath/ar9170/usb.c b/drivers/net/wireless/ath/ar9170/usb.c index 6b1cb706e410..99a6da464bd3 100644 --- a/drivers/net/wireless/ath/ar9170/usb.c +++ b/drivers/net/wireless/ath/ar9170/usb.c | |||
@@ -38,6 +38,7 @@ | |||
38 | */ | 38 | */ |
39 | 39 | ||
40 | #include <linux/module.h> | 40 | #include <linux/module.h> |
41 | #include <linux/slab.h> | ||
41 | #include <linux/usb.h> | 42 | #include <linux/usb.h> |
42 | #include <linux/firmware.h> | 43 | #include <linux/firmware.h> |
43 | #include <linux/etherdevice.h> | 44 | #include <linux/etherdevice.h> |
diff --git a/drivers/net/wireless/ath/ath5k/attach.c b/drivers/net/wireless/ath/ath5k/attach.c index dd4099a2ff15..f571ad1a225e 100644 --- a/drivers/net/wireless/ath/ath5k/attach.c +++ b/drivers/net/wireless/ath/ath5k/attach.c | |||
@@ -21,6 +21,7 @@ | |||
21 | \*************************************/ | 21 | \*************************************/ |
22 | 22 | ||
23 | #include <linux/pci.h> | 23 | #include <linux/pci.h> |
24 | #include <linux/slab.h> | ||
24 | #include "ath5k.h" | 25 | #include "ath5k.h" |
25 | #include "reg.h" | 26 | #include "reg.h" |
26 | #include "debug.h" | 27 | #include "debug.h" |
diff --git a/drivers/net/wireless/ath/ath5k/base.c b/drivers/net/wireless/ath/ath5k/base.c index 53a2340f52bc..7ac3a720e52c 100644 --- a/drivers/net/wireless/ath/ath5k/base.c +++ b/drivers/net/wireless/ath/ath5k/base.c | |||
@@ -50,6 +50,7 @@ | |||
50 | #include <linux/pci.h> | 50 | #include <linux/pci.h> |
51 | #include <linux/ethtool.h> | 51 | #include <linux/ethtool.h> |
52 | #include <linux/uaccess.h> | 52 | #include <linux/uaccess.h> |
53 | #include <linux/slab.h> | ||
53 | 54 | ||
54 | #include <net/ieee80211_radiotap.h> | 55 | #include <net/ieee80211_radiotap.h> |
55 | 56 | ||
diff --git a/drivers/net/wireless/ath/ath5k/eeprom.c b/drivers/net/wireless/ath/ath5k/eeprom.c index a3cbfe4fc389..ed0263672d6d 100644 --- a/drivers/net/wireless/ath/ath5k/eeprom.c +++ b/drivers/net/wireless/ath/ath5k/eeprom.c | |||
@@ -21,6 +21,8 @@ | |||
21 | * EEPROM access functions and helpers * | 21 | * EEPROM access functions and helpers * |
22 | \*************************************/ | 22 | \*************************************/ |
23 | 23 | ||
24 | #include <linux/slab.h> | ||
25 | |||
24 | #include "ath5k.h" | 26 | #include "ath5k.h" |
25 | #include "reg.h" | 27 | #include "reg.h" |
26 | #include "debug.h" | 28 | #include "debug.h" |
diff --git a/drivers/net/wireless/ath/ath5k/phy.c b/drivers/net/wireless/ath/ath5k/phy.c index a8adca62e527..3ee74c839768 100644 --- a/drivers/net/wireless/ath/ath5k/phy.c +++ b/drivers/net/wireless/ath/ath5k/phy.c | |||
@@ -21,6 +21,7 @@ | |||
21 | */ | 21 | */ |
22 | 22 | ||
23 | #include <linux/delay.h> | 23 | #include <linux/delay.h> |
24 | #include <linux/slab.h> | ||
24 | 25 | ||
25 | #include "ath5k.h" | 26 | #include "ath5k.h" |
26 | #include "reg.h" | 27 | #include "reg.h" |
diff --git a/drivers/net/wireless/ath/ath9k/debug.c b/drivers/net/wireless/ath/ath9k/debug.c index 42d2a506845a..081e0085ed4c 100644 --- a/drivers/net/wireless/ath/ath9k/debug.c +++ b/drivers/net/wireless/ath/ath9k/debug.c | |||
@@ -14,6 +14,7 @@ | |||
14 | * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | 14 | * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
15 | */ | 15 | */ |
16 | 16 | ||
17 | #include <linux/slab.h> | ||
17 | #include <asm/unaligned.h> | 18 | #include <asm/unaligned.h> |
18 | 19 | ||
19 | #include "ath9k.h" | 20 | #include "ath9k.h" |
diff --git a/drivers/net/wireless/ath/ath9k/hw.c b/drivers/net/wireless/ath/ath9k/hw.c index 77db932c3137..7fdaea3a1629 100644 --- a/drivers/net/wireless/ath/ath9k/hw.c +++ b/drivers/net/wireless/ath/ath9k/hw.c | |||
@@ -15,6 +15,7 @@ | |||
15 | */ | 15 | */ |
16 | 16 | ||
17 | #include <linux/io.h> | 17 | #include <linux/io.h> |
18 | #include <linux/slab.h> | ||
18 | #include <asm/unaligned.h> | 19 | #include <asm/unaligned.h> |
19 | 20 | ||
20 | #include "hw.h" | 21 | #include "hw.h" |
diff --git a/drivers/net/wireless/ath/ath9k/init.c b/drivers/net/wireless/ath/ath9k/init.c index 6063f5463708..b78308c3c4d4 100644 --- a/drivers/net/wireless/ath/ath9k/init.c +++ b/drivers/net/wireless/ath/ath9k/init.c | |||
@@ -14,6 +14,8 @@ | |||
14 | * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | 14 | * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
15 | */ | 15 | */ |
16 | 16 | ||
17 | #include <linux/slab.h> | ||
18 | |||
17 | #include "ath9k.h" | 19 | #include "ath9k.h" |
18 | 20 | ||
19 | static char *dev_info = "ath9k"; | 21 | static char *dev_info = "ath9k"; |
diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c index 67ca4e5a6017..115e1aeedb59 100644 --- a/drivers/net/wireless/ath/ath9k/main.c +++ b/drivers/net/wireless/ath/ath9k/main.c | |||
@@ -1532,8 +1532,7 @@ static int ath9k_config(struct ieee80211_hw *hw, u32 changed) | |||
1532 | all_wiphys_idle = ath9k_all_wiphys_idle(sc); | 1532 | all_wiphys_idle = ath9k_all_wiphys_idle(sc); |
1533 | ath9k_set_wiphy_idle(aphy, idle); | 1533 | ath9k_set_wiphy_idle(aphy, idle); |
1534 | 1534 | ||
1535 | if (!idle && all_wiphys_idle) | 1535 | enable_radio = (!idle && all_wiphys_idle); |
1536 | enable_radio = true; | ||
1537 | 1536 | ||
1538 | /* | 1537 | /* |
1539 | * After we unlock here its possible another wiphy | 1538 | * After we unlock here its possible another wiphy |
diff --git a/drivers/net/wireless/ath/ath9k/phy.c b/drivers/net/wireless/ath/ath9k/phy.c index c3b59390fe38..2547b3c4a26c 100644 --- a/drivers/net/wireless/ath/ath9k/phy.c +++ b/drivers/net/wireless/ath/ath9k/phy.c | |||
@@ -39,6 +39,8 @@ | |||
39 | * AR9287 - 11n single-band 1x1 MIMO for USB | 39 | * AR9287 - 11n single-band 1x1 MIMO for USB |
40 | */ | 40 | */ |
41 | 41 | ||
42 | #include <linux/slab.h> | ||
43 | |||
42 | #include "hw.h" | 44 | #include "hw.h" |
43 | 45 | ||
44 | /** | 46 | /** |
diff --git a/drivers/net/wireless/ath/ath9k/rc.c b/drivers/net/wireless/ath/ath9k/rc.c index 3c4b5d2d9e16..ee81291f2fba 100644 --- a/drivers/net/wireless/ath/ath9k/rc.c +++ b/drivers/net/wireless/ath/ath9k/rc.c | |||
@@ -15,6 +15,8 @@ | |||
15 | * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | 15 | * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
16 | */ | 16 | */ |
17 | 17 | ||
18 | #include <linux/slab.h> | ||
19 | |||
18 | #include "ath9k.h" | 20 | #include "ath9k.h" |
19 | 21 | ||
20 | static const struct ath_rate_table ar5416_11na_ratetable = { | 22 | static const struct ath_rate_table ar5416_11na_ratetable = { |
diff --git a/drivers/net/wireless/ath/ath9k/virtual.c b/drivers/net/wireless/ath/ath9k/virtual.c index a43fbf84dab9..00c0e21a4af7 100644 --- a/drivers/net/wireless/ath/ath9k/virtual.c +++ b/drivers/net/wireless/ath/ath9k/virtual.c | |||
@@ -14,6 +14,8 @@ | |||
14 | * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | 14 | * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
15 | */ | 15 | */ |
16 | 16 | ||
17 | #include <linux/slab.h> | ||
18 | |||
17 | #include "ath9k.h" | 19 | #include "ath9k.h" |
18 | 20 | ||
19 | struct ath9k_vif_iter_data { | 21 | struct ath9k_vif_iter_data { |
diff --git a/drivers/net/wireless/ath/regd.c b/drivers/net/wireless/ath/regd.c index 04abd1f556b7..00489c40be0c 100644 --- a/drivers/net/wireless/ath/regd.c +++ b/drivers/net/wireless/ath/regd.c | |||
@@ -15,7 +15,6 @@ | |||
15 | */ | 15 | */ |
16 | 16 | ||
17 | #include <linux/kernel.h> | 17 | #include <linux/kernel.h> |
18 | #include <linux/slab.h> | ||
19 | #include <net/cfg80211.h> | 18 | #include <net/cfg80211.h> |
20 | #include <net/mac80211.h> | 19 | #include <net/mac80211.h> |
21 | #include "regd.h" | 20 | #include "regd.h" |
diff --git a/drivers/net/wireless/b43/dma.c b/drivers/net/wireless/b43/dma.c index be7abf8916ad..fa40fdfea719 100644 --- a/drivers/net/wireless/b43/dma.c +++ b/drivers/net/wireless/b43/dma.c | |||
@@ -38,6 +38,7 @@ | |||
38 | #include <linux/delay.h> | 38 | #include <linux/delay.h> |
39 | #include <linux/skbuff.h> | 39 | #include <linux/skbuff.h> |
40 | #include <linux/etherdevice.h> | 40 | #include <linux/etherdevice.h> |
41 | #include <linux/slab.h> | ||
41 | #include <asm/div64.h> | 42 | #include <asm/div64.h> |
42 | 43 | ||
43 | 44 | ||
diff --git a/drivers/net/wireless/b43/lo.c b/drivers/net/wireless/b43/lo.c index 976104f634a1..94e4f1378fc3 100644 --- a/drivers/net/wireless/b43/lo.c +++ b/drivers/net/wireless/b43/lo.c | |||
@@ -34,6 +34,7 @@ | |||
34 | 34 | ||
35 | #include <linux/delay.h> | 35 | #include <linux/delay.h> |
36 | #include <linux/sched.h> | 36 | #include <linux/sched.h> |
37 | #include <linux/slab.h> | ||
37 | 38 | ||
38 | 39 | ||
39 | static struct b43_lo_calib *b43_find_lo_calib(struct b43_txpower_lo_control *lo, | 40 | static struct b43_lo_calib *b43_find_lo_calib(struct b43_txpower_lo_control *lo, |
diff --git a/drivers/net/wireless/b43/main.c b/drivers/net/wireless/b43/main.c index 14cf3bd7ea51..997303bcf4ae 100644 --- a/drivers/net/wireless/b43/main.c +++ b/drivers/net/wireless/b43/main.c | |||
@@ -42,6 +42,7 @@ | |||
42 | #include <linux/skbuff.h> | 42 | #include <linux/skbuff.h> |
43 | #include <linux/io.h> | 43 | #include <linux/io.h> |
44 | #include <linux/dma-mapping.h> | 44 | #include <linux/dma-mapping.h> |
45 | #include <linux/slab.h> | ||
45 | #include <asm/unaligned.h> | 46 | #include <asm/unaligned.h> |
46 | 47 | ||
47 | #include "b43.h" | 48 | #include "b43.h" |
diff --git a/drivers/net/wireless/b43/pcmcia.c b/drivers/net/wireless/b43/pcmcia.c index 984174bc7b0f..609e7051e018 100644 --- a/drivers/net/wireless/b43/pcmcia.c +++ b/drivers/net/wireless/b43/pcmcia.c | |||
@@ -24,6 +24,7 @@ | |||
24 | #include "pcmcia.h" | 24 | #include "pcmcia.h" |
25 | 25 | ||
26 | #include <linux/ssb/ssb.h> | 26 | #include <linux/ssb/ssb.h> |
27 | #include <linux/slab.h> | ||
27 | 28 | ||
28 | #include <pcmcia/cs_types.h> | 29 | #include <pcmcia/cs_types.h> |
29 | #include <pcmcia/cs.h> | 30 | #include <pcmcia/cs.h> |
diff --git a/drivers/net/wireless/b43/phy_a.c b/drivers/net/wireless/b43/phy_a.c index d90217c3a706..b6428ec16dd6 100644 --- a/drivers/net/wireless/b43/phy_a.c +++ b/drivers/net/wireless/b43/phy_a.c | |||
@@ -26,6 +26,8 @@ | |||
26 | 26 | ||
27 | */ | 27 | */ |
28 | 28 | ||
29 | #include <linux/slab.h> | ||
30 | |||
29 | #include "b43.h" | 31 | #include "b43.h" |
30 | #include "phy_a.h" | 32 | #include "phy_a.h" |
31 | #include "phy_common.h" | 33 | #include "phy_common.h" |
diff --git a/drivers/net/wireless/b43/phy_g.c b/drivers/net/wireless/b43/phy_g.c index 382826a8da82..29bf34ced865 100644 --- a/drivers/net/wireless/b43/phy_g.c +++ b/drivers/net/wireless/b43/phy_g.c | |||
@@ -33,6 +33,7 @@ | |||
33 | #include "main.h" | 33 | #include "main.h" |
34 | 34 | ||
35 | #include <linux/bitrev.h> | 35 | #include <linux/bitrev.h> |
36 | #include <linux/slab.h> | ||
36 | 37 | ||
37 | 38 | ||
38 | static const s8 b43_tssi2dbm_g_table[] = { | 39 | static const s8 b43_tssi2dbm_g_table[] = { |
diff --git a/drivers/net/wireless/b43/phy_lp.c b/drivers/net/wireless/b43/phy_lp.c index 185219e0a552..c6afe9d94590 100644 --- a/drivers/net/wireless/b43/phy_lp.c +++ b/drivers/net/wireless/b43/phy_lp.c | |||
@@ -23,6 +23,8 @@ | |||
23 | 23 | ||
24 | */ | 24 | */ |
25 | 25 | ||
26 | #include <linux/slab.h> | ||
27 | |||
26 | #include "b43.h" | 28 | #include "b43.h" |
27 | #include "main.h" | 29 | #include "main.h" |
28 | #include "phy_lp.h" | 30 | #include "phy_lp.h" |
diff --git a/drivers/net/wireless/b43/phy_n.c b/drivers/net/wireless/b43/phy_n.c index 6fd140ac7f9e..c4dc369ce703 100644 --- a/drivers/net/wireless/b43/phy_n.c +++ b/drivers/net/wireless/b43/phy_n.c | |||
@@ -23,6 +23,7 @@ | |||
23 | */ | 23 | */ |
24 | 24 | ||
25 | #include <linux/delay.h> | 25 | #include <linux/delay.h> |
26 | #include <linux/slab.h> | ||
26 | #include <linux/types.h> | 27 | #include <linux/types.h> |
27 | 28 | ||
28 | #include "b43.h" | 29 | #include "b43.h" |
diff --git a/drivers/net/wireless/b43/pio.c b/drivers/net/wireless/b43/pio.c index a6062c3e89a5..aa12273ae716 100644 --- a/drivers/net/wireless/b43/pio.c +++ b/drivers/net/wireless/b43/pio.c | |||
@@ -31,6 +31,7 @@ | |||
31 | 31 | ||
32 | #include <linux/delay.h> | 32 | #include <linux/delay.h> |
33 | #include <linux/sched.h> | 33 | #include <linux/sched.h> |
34 | #include <linux/slab.h> | ||
34 | 35 | ||
35 | 36 | ||
36 | static u16 generate_cookie(struct b43_pio_txqueue *q, | 37 | static u16 generate_cookie(struct b43_pio_txqueue *q, |
diff --git a/drivers/net/wireless/b43/sdio.c b/drivers/net/wireless/b43/sdio.c index 0d3ac64147a5..4e56b7bbcebd 100644 --- a/drivers/net/wireless/b43/sdio.c +++ b/drivers/net/wireless/b43/sdio.c | |||
@@ -16,6 +16,7 @@ | |||
16 | #include <linux/mmc/card.h> | 16 | #include <linux/mmc/card.h> |
17 | #include <linux/mmc/sdio_func.h> | 17 | #include <linux/mmc/sdio_func.h> |
18 | #include <linux/mmc/sdio_ids.h> | 18 | #include <linux/mmc/sdio_ids.h> |
19 | #include <linux/slab.h> | ||
19 | #include <linux/ssb/ssb.h> | 20 | #include <linux/ssb/ssb.h> |
20 | 21 | ||
21 | #include "sdio.h" | 22 | #include "sdio.h" |
diff --git a/drivers/net/wireless/b43legacy/dma.c b/drivers/net/wireless/b43legacy/dma.c index 8b9387c6ff36..e91520d0312e 100644 --- a/drivers/net/wireless/b43legacy/dma.c +++ b/drivers/net/wireless/b43legacy/dma.c | |||
@@ -37,6 +37,7 @@ | |||
37 | #include <linux/pci.h> | 37 | #include <linux/pci.h> |
38 | #include <linux/delay.h> | 38 | #include <linux/delay.h> |
39 | #include <linux/skbuff.h> | 39 | #include <linux/skbuff.h> |
40 | #include <linux/slab.h> | ||
40 | #include <net/dst.h> | 41 | #include <net/dst.h> |
41 | 42 | ||
42 | /* 32bit DMA ops. */ | 43 | /* 32bit DMA ops. */ |
diff --git a/drivers/net/wireless/b43legacy/main.c b/drivers/net/wireless/b43legacy/main.c index 1d070be5a678..bb2dd9329aa0 100644 --- a/drivers/net/wireless/b43legacy/main.c +++ b/drivers/net/wireless/b43legacy/main.c | |||
@@ -40,6 +40,7 @@ | |||
40 | #include <linux/sched.h> | 40 | #include <linux/sched.h> |
41 | #include <linux/skbuff.h> | 41 | #include <linux/skbuff.h> |
42 | #include <linux/dma-mapping.h> | 42 | #include <linux/dma-mapping.h> |
43 | #include <linux/slab.h> | ||
43 | #include <net/dst.h> | 44 | #include <net/dst.h> |
44 | #include <asm/unaligned.h> | 45 | #include <asm/unaligned.h> |
45 | 46 | ||
diff --git a/drivers/net/wireless/b43legacy/phy.c b/drivers/net/wireless/b43legacy/phy.c index aaf227203a98..35033dd342ce 100644 --- a/drivers/net/wireless/b43legacy/phy.c +++ b/drivers/net/wireless/b43legacy/phy.c | |||
@@ -32,6 +32,7 @@ | |||
32 | #include <linux/delay.h> | 32 | #include <linux/delay.h> |
33 | #include <linux/pci.h> | 33 | #include <linux/pci.h> |
34 | #include <linux/sched.h> | 34 | #include <linux/sched.h> |
35 | #include <linux/slab.h> | ||
35 | #include <linux/types.h> | 36 | #include <linux/types.h> |
36 | 37 | ||
37 | #include "b43legacy.h" | 38 | #include "b43legacy.h" |
diff --git a/drivers/net/wireless/b43legacy/pio.c b/drivers/net/wireless/b43legacy/pio.c index 017c0e9c37ef..b033b0ed4ca0 100644 --- a/drivers/net/wireless/b43legacy/pio.c +++ b/drivers/net/wireless/b43legacy/pio.c | |||
@@ -29,6 +29,7 @@ | |||
29 | #include "xmit.h" | 29 | #include "xmit.h" |
30 | 30 | ||
31 | #include <linux/delay.h> | 31 | #include <linux/delay.h> |
32 | #include <linux/slab.h> | ||
32 | 33 | ||
33 | 34 | ||
34 | static void tx_start(struct b43legacy_pioqueue *queue) | 35 | static void tx_start(struct b43legacy_pioqueue *queue) |
diff --git a/drivers/net/wireless/hostap/hostap_80211_rx.c b/drivers/net/wireless/hostap/hostap_80211_rx.c index 3816df96a663..f4c56121d387 100644 --- a/drivers/net/wireless/hostap/hostap_80211_rx.c +++ b/drivers/net/wireless/hostap/hostap_80211_rx.c | |||
@@ -1,4 +1,5 @@ | |||
1 | #include <linux/etherdevice.h> | 1 | #include <linux/etherdevice.h> |
2 | #include <linux/slab.h> | ||
2 | #include <net/lib80211.h> | 3 | #include <net/lib80211.h> |
3 | #include <linux/if_arp.h> | 4 | #include <linux/if_arp.h> |
4 | 5 | ||
diff --git a/drivers/net/wireless/hostap/hostap_80211_tx.c b/drivers/net/wireless/hostap/hostap_80211_tx.c index 90108b698f11..c34a3b7f1292 100644 --- a/drivers/net/wireless/hostap/hostap_80211_tx.c +++ b/drivers/net/wireless/hostap/hostap_80211_tx.c | |||
@@ -1,3 +1,5 @@ | |||
1 | #include <linux/slab.h> | ||
2 | |||
1 | #include "hostap_80211.h" | 3 | #include "hostap_80211.h" |
2 | #include "hostap_common.h" | 4 | #include "hostap_common.h" |
3 | #include "hostap_wlan.h" | 5 | #include "hostap_wlan.h" |
diff --git a/drivers/net/wireless/hostap/hostap_ap.c b/drivers/net/wireless/hostap/hostap_ap.c index a2a203c90ba3..7e72ac1de49b 100644 --- a/drivers/net/wireless/hostap/hostap_ap.c +++ b/drivers/net/wireless/hostap/hostap_ap.c | |||
@@ -20,6 +20,7 @@ | |||
20 | #include <linux/delay.h> | 20 | #include <linux/delay.h> |
21 | #include <linux/random.h> | 21 | #include <linux/random.h> |
22 | #include <linux/if_arp.h> | 22 | #include <linux/if_arp.h> |
23 | #include <linux/slab.h> | ||
23 | 24 | ||
24 | #include "hostap_wlan.h" | 25 | #include "hostap_wlan.h" |
25 | #include "hostap.h" | 26 | #include "hostap.h" |
diff --git a/drivers/net/wireless/hostap/hostap_cs.c b/drivers/net/wireless/hostap/hostap_cs.c index d19748d90aaf..a36501dbbe02 100644 --- a/drivers/net/wireless/hostap/hostap_cs.c +++ b/drivers/net/wireless/hostap/hostap_cs.c | |||
@@ -3,6 +3,7 @@ | |||
3 | #include <linux/module.h> | 3 | #include <linux/module.h> |
4 | #include <linux/init.h> | 4 | #include <linux/init.h> |
5 | #include <linux/if.h> | 5 | #include <linux/if.h> |
6 | #include <linux/slab.h> | ||
6 | #include <linux/wait.h> | 7 | #include <linux/wait.h> |
7 | #include <linux/timer.h> | 8 | #include <linux/timer.h> |
8 | #include <linux/skbuff.h> | 9 | #include <linux/skbuff.h> |
diff --git a/drivers/net/wireless/hostap/hostap_info.c b/drivers/net/wireless/hostap/hostap_info.c index 4dfb40a84c96..d737091cf6ac 100644 --- a/drivers/net/wireless/hostap/hostap_info.c +++ b/drivers/net/wireless/hostap/hostap_info.c | |||
@@ -2,6 +2,7 @@ | |||
2 | 2 | ||
3 | #include <linux/if_arp.h> | 3 | #include <linux/if_arp.h> |
4 | #include <linux/sched.h> | 4 | #include <linux/sched.h> |
5 | #include <linux/slab.h> | ||
5 | #include "hostap_wlan.h" | 6 | #include "hostap_wlan.h" |
6 | #include "hostap.h" | 7 | #include "hostap.h" |
7 | #include "hostap_ap.h" | 8 | #include "hostap_ap.h" |
diff --git a/drivers/net/wireless/hostap/hostap_ioctl.c b/drivers/net/wireless/hostap/hostap_ioctl.c index 9419cebca8a5..9a082308a9d4 100644 --- a/drivers/net/wireless/hostap/hostap_ioctl.c +++ b/drivers/net/wireless/hostap/hostap_ioctl.c | |||
@@ -1,5 +1,6 @@ | |||
1 | /* ioctl() (mostly Linux Wireless Extensions) routines for Host AP driver */ | 1 | /* ioctl() (mostly Linux Wireless Extensions) routines for Host AP driver */ |
2 | 2 | ||
3 | #include <linux/slab.h> | ||
3 | #include <linux/types.h> | 4 | #include <linux/types.h> |
4 | #include <linux/sched.h> | 5 | #include <linux/sched.h> |
5 | #include <linux/ethtool.h> | 6 | #include <linux/ethtool.h> |
diff --git a/drivers/net/wireless/hostap/hostap_pci.c b/drivers/net/wireless/hostap/hostap_pci.c index 4d97ae37499b..d24dc7dc0723 100644 --- a/drivers/net/wireless/hostap/hostap_pci.c +++ b/drivers/net/wireless/hostap/hostap_pci.c | |||
@@ -9,6 +9,7 @@ | |||
9 | #include <linux/if.h> | 9 | #include <linux/if.h> |
10 | #include <linux/skbuff.h> | 10 | #include <linux/skbuff.h> |
11 | #include <linux/netdevice.h> | 11 | #include <linux/netdevice.h> |
12 | #include <linux/slab.h> | ||
12 | #include <linux/workqueue.h> | 13 | #include <linux/workqueue.h> |
13 | #include <linux/wireless.h> | 14 | #include <linux/wireless.h> |
14 | #include <net/iw_handler.h> | 15 | #include <net/iw_handler.h> |
diff --git a/drivers/net/wireless/hostap/hostap_plx.c b/drivers/net/wireless/hostap/hostap_plx.c index fc04ccdc5bef..33e79037770b 100644 --- a/drivers/net/wireless/hostap/hostap_plx.c +++ b/drivers/net/wireless/hostap/hostap_plx.c | |||
@@ -12,6 +12,7 @@ | |||
12 | #include <linux/if.h> | 12 | #include <linux/if.h> |
13 | #include <linux/skbuff.h> | 13 | #include <linux/skbuff.h> |
14 | #include <linux/netdevice.h> | 14 | #include <linux/netdevice.h> |
15 | #include <linux/slab.h> | ||
15 | #include <linux/workqueue.h> | 16 | #include <linux/workqueue.h> |
16 | #include <linux/wireless.h> | 17 | #include <linux/wireless.h> |
17 | #include <net/iw_handler.h> | 18 | #include <net/iw_handler.h> |
diff --git a/drivers/net/wireless/ipw2x00/ipw2200.c b/drivers/net/wireless/ipw2x00/ipw2200.c index cb3ba134865e..7266730680bc 100644 --- a/drivers/net/wireless/ipw2x00/ipw2200.c +++ b/drivers/net/wireless/ipw2x00/ipw2200.c | |||
@@ -31,6 +31,7 @@ | |||
31 | ******************************************************************************/ | 31 | ******************************************************************************/ |
32 | 32 | ||
33 | #include <linux/sched.h> | 33 | #include <linux/sched.h> |
34 | #include <linux/slab.h> | ||
34 | #include "ipw2200.h" | 35 | #include "ipw2200.h" |
35 | 36 | ||
36 | 37 | ||
diff --git a/drivers/net/wireless/ipw2x00/libipw_geo.c b/drivers/net/wireless/ipw2x00/libipw_geo.c index 65e8c175a4a0..c9fe3c99cb00 100644 --- a/drivers/net/wireless/ipw2x00/libipw_geo.c +++ b/drivers/net/wireless/ipw2x00/libipw_geo.c | |||
@@ -34,7 +34,6 @@ | |||
34 | #include <linux/netdevice.h> | 34 | #include <linux/netdevice.h> |
35 | #include <linux/proc_fs.h> | 35 | #include <linux/proc_fs.h> |
36 | #include <linux/skbuff.h> | 36 | #include <linux/skbuff.h> |
37 | #include <linux/slab.h> | ||
38 | #include <linux/tcp.h> | 37 | #include <linux/tcp.h> |
39 | #include <linux/types.h> | 38 | #include <linux/types.h> |
40 | #include <linux/wireless.h> | 39 | #include <linux/wireless.h> |
diff --git a/drivers/net/wireless/ipw2x00/libipw_rx.c b/drivers/net/wireless/ipw2x00/libipw_rx.c index 282b1f7ff1e9..39a34da52d52 100644 --- a/drivers/net/wireless/ipw2x00/libipw_rx.c +++ b/drivers/net/wireless/ipw2x00/libipw_rx.c | |||
@@ -17,6 +17,7 @@ | |||
17 | #include <linux/errno.h> | 17 | #include <linux/errno.h> |
18 | #include <linux/if_arp.h> | 18 | #include <linux/if_arp.h> |
19 | #include <linux/in6.h> | 19 | #include <linux/in6.h> |
20 | #include <linux/gfp.h> | ||
20 | #include <linux/in.h> | 21 | #include <linux/in.h> |
21 | #include <linux/ip.h> | 22 | #include <linux/ip.h> |
22 | #include <linux/kernel.h> | 23 | #include <linux/kernel.h> |
@@ -24,7 +25,6 @@ | |||
24 | #include <linux/netdevice.h> | 25 | #include <linux/netdevice.h> |
25 | #include <linux/proc_fs.h> | 26 | #include <linux/proc_fs.h> |
26 | #include <linux/skbuff.h> | 27 | #include <linux/skbuff.h> |
27 | #include <linux/slab.h> | ||
28 | #include <linux/tcp.h> | 28 | #include <linux/tcp.h> |
29 | #include <linux/types.h> | 29 | #include <linux/types.h> |
30 | #include <linux/wireless.h> | 30 | #include <linux/wireless.h> |
diff --git a/drivers/net/wireless/ipw2x00/libipw_wx.c b/drivers/net/wireless/ipw2x00/libipw_wx.c index 4d89f66f53b2..3633c6682e49 100644 --- a/drivers/net/wireless/ipw2x00/libipw_wx.c +++ b/drivers/net/wireless/ipw2x00/libipw_wx.c | |||
@@ -31,6 +31,7 @@ | |||
31 | ******************************************************************************/ | 31 | ******************************************************************************/ |
32 | 32 | ||
33 | #include <linux/kmod.h> | 33 | #include <linux/kmod.h> |
34 | #include <linux/slab.h> | ||
34 | #include <linux/module.h> | 35 | #include <linux/module.h> |
35 | #include <linux/jiffies.h> | 36 | #include <linux/jiffies.h> |
36 | 37 | ||
diff --git a/drivers/net/wireless/iwlwifi/iwl-3945-rs.c b/drivers/net/wireless/iwlwifi/iwl-3945-rs.c index 605aca4c78c8..8f85a0db5c39 100644 --- a/drivers/net/wireless/iwlwifi/iwl-3945-rs.c +++ b/drivers/net/wireless/iwlwifi/iwl-3945-rs.c | |||
@@ -27,6 +27,7 @@ | |||
27 | #include <linux/kernel.h> | 27 | #include <linux/kernel.h> |
28 | #include <linux/init.h> | 28 | #include <linux/init.h> |
29 | #include <linux/skbuff.h> | 29 | #include <linux/skbuff.h> |
30 | #include <linux/slab.h> | ||
30 | #include <linux/wireless.h> | 31 | #include <linux/wireless.h> |
31 | #include <net/mac80211.h> | 32 | #include <net/mac80211.h> |
32 | 33 | ||
diff --git a/drivers/net/wireless/iwlwifi/iwl-3945.c b/drivers/net/wireless/iwlwifi/iwl-3945.c index 3b5889d8d662..7ac6cec006d0 100644 --- a/drivers/net/wireless/iwlwifi/iwl-3945.c +++ b/drivers/net/wireless/iwlwifi/iwl-3945.c | |||
@@ -27,6 +27,7 @@ | |||
27 | #include <linux/kernel.h> | 27 | #include <linux/kernel.h> |
28 | #include <linux/module.h> | 28 | #include <linux/module.h> |
29 | #include <linux/init.h> | 29 | #include <linux/init.h> |
30 | #include <linux/slab.h> | ||
30 | #include <linux/pci.h> | 31 | #include <linux/pci.h> |
31 | #include <linux/dma-mapping.h> | 32 | #include <linux/dma-mapping.h> |
32 | #include <linux/delay.h> | 33 | #include <linux/delay.h> |
diff --git a/drivers/net/wireless/iwlwifi/iwl-4965.c b/drivers/net/wireless/iwlwifi/iwl-4965.c index 3297fc7b80bf..89aba76e4a2c 100644 --- a/drivers/net/wireless/iwlwifi/iwl-4965.c +++ b/drivers/net/wireless/iwlwifi/iwl-4965.c | |||
@@ -2021,7 +2021,9 @@ static void iwl4965_rx_reply_tx(struct iwl_priv *priv, | |||
2021 | IWL_DEBUG_TX_REPLY(priv, "Retry scheduler reclaim scd_ssn " | 2021 | IWL_DEBUG_TX_REPLY(priv, "Retry scheduler reclaim scd_ssn " |
2022 | "%d index %d\n", scd_ssn , index); | 2022 | "%d index %d\n", scd_ssn , index); |
2023 | freed = iwl_tx_queue_reclaim(priv, txq_id, index); | 2023 | freed = iwl_tx_queue_reclaim(priv, txq_id, index); |
2024 | iwl_free_tfds_in_queue(priv, sta_id, tid, freed); | 2024 | if (qc) |
2025 | iwl_free_tfds_in_queue(priv, sta_id, | ||
2026 | tid, freed); | ||
2025 | 2027 | ||
2026 | if (priv->mac80211_registered && | 2028 | if (priv->mac80211_registered && |
2027 | (iwl_queue_space(&txq->q) > txq->q.low_mark) && | 2029 | (iwl_queue_space(&txq->q) > txq->q.low_mark) && |
@@ -2047,14 +2049,17 @@ static void iwl4965_rx_reply_tx(struct iwl_priv *priv, | |||
2047 | tx_resp->failure_frame); | 2049 | tx_resp->failure_frame); |
2048 | 2050 | ||
2049 | freed = iwl_tx_queue_reclaim(priv, txq_id, index); | 2051 | freed = iwl_tx_queue_reclaim(priv, txq_id, index); |
2050 | iwl_free_tfds_in_queue(priv, sta_id, tid, freed); | 2052 | if (qc && likely(sta_id != IWL_INVALID_STATION)) |
2053 | iwl_free_tfds_in_queue(priv, sta_id, tid, freed); | ||
2054 | else if (sta_id == IWL_INVALID_STATION) | ||
2055 | IWL_DEBUG_TX_REPLY(priv, "Station not known\n"); | ||
2051 | 2056 | ||
2052 | if (priv->mac80211_registered && | 2057 | if (priv->mac80211_registered && |
2053 | (iwl_queue_space(&txq->q) > txq->q.low_mark)) | 2058 | (iwl_queue_space(&txq->q) > txq->q.low_mark)) |
2054 | iwl_wake_queue(priv, txq_id); | 2059 | iwl_wake_queue(priv, txq_id); |
2055 | } | 2060 | } |
2056 | 2061 | if (qc && likely(sta_id != IWL_INVALID_STATION)) | |
2057 | iwl_txq_check_empty(priv, sta_id, tid, txq_id); | 2062 | iwl_txq_check_empty(priv, sta_id, tid, txq_id); |
2058 | 2063 | ||
2059 | if (iwl_check_bits(status, TX_ABORT_REQUIRED_MSK)) | 2064 | if (iwl_check_bits(status, TX_ABORT_REQUIRED_MSK)) |
2060 | IWL_ERR(priv, "TODO: Implement Tx ABORT REQUIRED!!!\n"); | 2065 | IWL_ERR(priv, "TODO: Implement Tx ABORT REQUIRED!!!\n"); |
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn-rs.c b/drivers/net/wireless/iwlwifi/iwl-agn-rs.c index 5155b1a027eb..0de80914be77 100644 --- a/drivers/net/wireless/iwlwifi/iwl-agn-rs.c +++ b/drivers/net/wireless/iwlwifi/iwl-agn-rs.c | |||
@@ -26,6 +26,7 @@ | |||
26 | #include <linux/kernel.h> | 26 | #include <linux/kernel.h> |
27 | #include <linux/init.h> | 27 | #include <linux/init.h> |
28 | #include <linux/skbuff.h> | 28 | #include <linux/skbuff.h> |
29 | #include <linux/slab.h> | ||
29 | #include <linux/wireless.h> | 30 | #include <linux/wireless.h> |
30 | #include <net/mac80211.h> | 31 | #include <net/mac80211.h> |
31 | 32 | ||
@@ -345,6 +346,17 @@ static inline int get_num_of_ant_from_rate(u32 rate_n_flags) | |||
345 | !!(rate_n_flags & RATE_MCS_ANT_C_MSK); | 346 | !!(rate_n_flags & RATE_MCS_ANT_C_MSK); |
346 | } | 347 | } |
347 | 348 | ||
349 | /* | ||
350 | * Static function to get the expected throughput from an iwl_scale_tbl_info | ||
351 | * that wraps a NULL pointer check | ||
352 | */ | ||
353 | static s32 get_expected_tpt(struct iwl_scale_tbl_info *tbl, int rs_index) | ||
354 | { | ||
355 | if (tbl->expected_tpt) | ||
356 | return tbl->expected_tpt[rs_index]; | ||
357 | return 0; | ||
358 | } | ||
359 | |||
348 | /** | 360 | /** |
349 | * rs_collect_tx_data - Update the success/failure sliding window | 361 | * rs_collect_tx_data - Update the success/failure sliding window |
350 | * | 362 | * |
@@ -352,19 +364,21 @@ static inline int get_num_of_ant_from_rate(u32 rate_n_flags) | |||
352 | * at this rate. window->data contains the bitmask of successful | 364 | * at this rate. window->data contains the bitmask of successful |
353 | * packets. | 365 | * packets. |
354 | */ | 366 | */ |
355 | static int rs_collect_tx_data(struct iwl_rate_scale_data *windows, | 367 | static int rs_collect_tx_data(struct iwl_scale_tbl_info *tbl, |
356 | int scale_index, s32 tpt, int attempts, | 368 | int scale_index, int attempts, int successes) |
357 | int successes) | ||
358 | { | 369 | { |
359 | struct iwl_rate_scale_data *window = NULL; | 370 | struct iwl_rate_scale_data *window = NULL; |
360 | static const u64 mask = (((u64)1) << (IWL_RATE_MAX_WINDOW - 1)); | 371 | static const u64 mask = (((u64)1) << (IWL_RATE_MAX_WINDOW - 1)); |
361 | s32 fail_count; | 372 | s32 fail_count, tpt; |
362 | 373 | ||
363 | if (scale_index < 0 || scale_index >= IWL_RATE_COUNT) | 374 | if (scale_index < 0 || scale_index >= IWL_RATE_COUNT) |
364 | return -EINVAL; | 375 | return -EINVAL; |
365 | 376 | ||
366 | /* Select window for current tx bit rate */ | 377 | /* Select window for current tx bit rate */ |
367 | window = &(windows[scale_index]); | 378 | window = &(tbl->win[scale_index]); |
379 | |||
380 | /* Get expected throughput */ | ||
381 | tpt = get_expected_tpt(tbl, scale_index); | ||
368 | 382 | ||
369 | /* | 383 | /* |
370 | * Keep track of only the latest 62 tx frame attempts in this rate's | 384 | * Keep track of only the latest 62 tx frame attempts in this rate's |
@@ -734,16 +748,6 @@ static bool table_type_matches(struct iwl_scale_tbl_info *a, | |||
734 | return (a->lq_type == b->lq_type) && (a->ant_type == b->ant_type) && | 748 | return (a->lq_type == b->lq_type) && (a->ant_type == b->ant_type) && |
735 | (a->is_SGI == b->is_SGI); | 749 | (a->is_SGI == b->is_SGI); |
736 | } | 750 | } |
737 | /* | ||
738 | * Static function to get the expected throughput from an iwl_scale_tbl_info | ||
739 | * that wraps a NULL pointer check | ||
740 | */ | ||
741 | static s32 get_expected_tpt(struct iwl_scale_tbl_info *tbl, int rs_index) | ||
742 | { | ||
743 | if (tbl->expected_tpt) | ||
744 | return tbl->expected_tpt[rs_index]; | ||
745 | return 0; | ||
746 | } | ||
747 | 751 | ||
748 | /* | 752 | /* |
749 | * mac80211 sends us Tx status | 753 | * mac80211 sends us Tx status |
@@ -760,12 +764,10 @@ static void rs_tx_status(void *priv_r, struct ieee80211_supported_band *sband, | |||
760 | struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data; | 764 | struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data; |
761 | struct iwl_priv *priv = (struct iwl_priv *)priv_r; | 765 | struct iwl_priv *priv = (struct iwl_priv *)priv_r; |
762 | struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); | 766 | struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); |
763 | struct iwl_rate_scale_data *window = NULL; | ||
764 | enum mac80211_rate_control_flags mac_flags; | 767 | enum mac80211_rate_control_flags mac_flags; |
765 | u32 tx_rate; | 768 | u32 tx_rate; |
766 | struct iwl_scale_tbl_info tbl_type; | 769 | struct iwl_scale_tbl_info tbl_type; |
767 | struct iwl_scale_tbl_info *curr_tbl, *other_tbl; | 770 | struct iwl_scale_tbl_info *curr_tbl, *other_tbl, *tmp_tbl; |
768 | s32 tpt = 0; | ||
769 | 771 | ||
770 | IWL_DEBUG_RATE_LIMIT(priv, "get frame ack response, update rate scale window\n"); | 772 | IWL_DEBUG_RATE_LIMIT(priv, "get frame ack response, update rate scale window\n"); |
771 | 773 | ||
@@ -853,7 +855,6 @@ static void rs_tx_status(void *priv_r, struct ieee80211_supported_band *sband, | |||
853 | IWL_DEBUG_RATE(priv, "Neither active nor search matches tx rate\n"); | 855 | IWL_DEBUG_RATE(priv, "Neither active nor search matches tx rate\n"); |
854 | return; | 856 | return; |
855 | } | 857 | } |
856 | window = (struct iwl_rate_scale_data *)&(curr_tbl->win[0]); | ||
857 | 858 | ||
858 | /* | 859 | /* |
859 | * Updating the frame history depends on whether packets were | 860 | * Updating the frame history depends on whether packets were |
@@ -866,8 +867,7 @@ static void rs_tx_status(void *priv_r, struct ieee80211_supported_band *sband, | |||
866 | tx_rate = le32_to_cpu(table->rs_table[0].rate_n_flags); | 867 | tx_rate = le32_to_cpu(table->rs_table[0].rate_n_flags); |
867 | rs_get_tbl_info_from_mcs(tx_rate, priv->band, &tbl_type, | 868 | rs_get_tbl_info_from_mcs(tx_rate, priv->band, &tbl_type, |
868 | &rs_index); | 869 | &rs_index); |
869 | tpt = get_expected_tpt(curr_tbl, rs_index); | 870 | rs_collect_tx_data(curr_tbl, rs_index, |
870 | rs_collect_tx_data(window, rs_index, tpt, | ||
871 | info->status.ampdu_ack_len, | 871 | info->status.ampdu_ack_len, |
872 | info->status.ampdu_ack_map); | 872 | info->status.ampdu_ack_map); |
873 | 873 | ||
@@ -897,19 +897,13 @@ static void rs_tx_status(void *priv_r, struct ieee80211_supported_band *sband, | |||
897 | * table as active/search. | 897 | * table as active/search. |
898 | */ | 898 | */ |
899 | if (table_type_matches(&tbl_type, curr_tbl)) | 899 | if (table_type_matches(&tbl_type, curr_tbl)) |
900 | tpt = get_expected_tpt(curr_tbl, rs_index); | 900 | tmp_tbl = curr_tbl; |
901 | else if (table_type_matches(&tbl_type, other_tbl)) | 901 | else if (table_type_matches(&tbl_type, other_tbl)) |
902 | tpt = get_expected_tpt(other_tbl, rs_index); | 902 | tmp_tbl = other_tbl; |
903 | else | 903 | else |
904 | continue; | 904 | continue; |
905 | 905 | rs_collect_tx_data(tmp_tbl, rs_index, 1, | |
906 | /* Constants mean 1 transmission, 0 successes */ | 906 | i < retries ? 0 : legacy_success); |
907 | if (i < retries) | ||
908 | rs_collect_tx_data(window, rs_index, tpt, 1, | ||
909 | 0); | ||
910 | else | ||
911 | rs_collect_tx_data(window, rs_index, tpt, 1, | ||
912 | legacy_success); | ||
913 | } | 907 | } |
914 | 908 | ||
915 | /* Update success/fail counts if not searching for new mode */ | 909 | /* Update success/fail counts if not searching for new mode */ |
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn.c b/drivers/net/wireless/iwlwifi/iwl-agn.c index f43a45d0f1dd..fe4cec61bdec 100644 --- a/drivers/net/wireless/iwlwifi/iwl-agn.c +++ b/drivers/net/wireless/iwlwifi/iwl-agn.c | |||
@@ -31,6 +31,7 @@ | |||
31 | #include <linux/module.h> | 31 | #include <linux/module.h> |
32 | #include <linux/init.h> | 32 | #include <linux/init.h> |
33 | #include <linux/pci.h> | 33 | #include <linux/pci.h> |
34 | #include <linux/slab.h> | ||
34 | #include <linux/dma-mapping.h> | 35 | #include <linux/dma-mapping.h> |
35 | #include <linux/delay.h> | 36 | #include <linux/delay.h> |
36 | #include <linux/sched.h> | 37 | #include <linux/sched.h> |
diff --git a/drivers/net/wireless/iwlwifi/iwl-calib.c b/drivers/net/wireless/iwlwifi/iwl-calib.c index 845831ac053e..de3b3f403d1f 100644 --- a/drivers/net/wireless/iwlwifi/iwl-calib.c +++ b/drivers/net/wireless/iwlwifi/iwl-calib.c | |||
@@ -60,6 +60,7 @@ | |||
60 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 60 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
61 | *****************************************************************************/ | 61 | *****************************************************************************/ |
62 | 62 | ||
63 | #include <linux/slab.h> | ||
63 | #include <net/mac80211.h> | 64 | #include <net/mac80211.h> |
64 | 65 | ||
65 | #include "iwl-dev.h" | 66 | #include "iwl-dev.h" |
diff --git a/drivers/net/wireless/iwlwifi/iwl-core.c b/drivers/net/wireless/iwlwifi/iwl-core.c index 5180fb24cd38..0ee8cc296e48 100644 --- a/drivers/net/wireless/iwlwifi/iwl-core.c +++ b/drivers/net/wireless/iwlwifi/iwl-core.c | |||
@@ -30,6 +30,7 @@ | |||
30 | #include <linux/module.h> | 30 | #include <linux/module.h> |
31 | #include <linux/etherdevice.h> | 31 | #include <linux/etherdevice.h> |
32 | #include <linux/sched.h> | 32 | #include <linux/sched.h> |
33 | #include <linux/slab.h> | ||
33 | #include <net/mac80211.h> | 34 | #include <net/mac80211.h> |
34 | 35 | ||
35 | #include "iwl-eeprom.h" | 36 | #include "iwl-eeprom.h" |
@@ -305,10 +306,13 @@ int iwl_hw_nic_init(struct iwl_priv *priv) | |||
305 | 306 | ||
306 | spin_unlock_irqrestore(&priv->lock, flags); | 307 | spin_unlock_irqrestore(&priv->lock, flags); |
307 | 308 | ||
308 | /* Allocate and init all Tx and Command queues */ | 309 | /* Allocate or reset and init all Tx and Command queues */ |
309 | ret = iwl_txq_ctx_reset(priv); | 310 | if (!priv->txq) { |
310 | if (ret) | 311 | ret = iwl_txq_ctx_alloc(priv); |
311 | return ret; | 312 | if (ret) |
313 | return ret; | ||
314 | } else | ||
315 | iwl_txq_ctx_reset(priv); | ||
312 | 316 | ||
313 | set_bit(STATUS_INIT, &priv->status); | 317 | set_bit(STATUS_INIT, &priv->status); |
314 | 318 | ||
diff --git a/drivers/net/wireless/iwlwifi/iwl-core.h b/drivers/net/wireless/iwlwifi/iwl-core.h index b3e698b576e1..f3b6c72d82cd 100644 --- a/drivers/net/wireless/iwlwifi/iwl-core.h +++ b/drivers/net/wireless/iwlwifi/iwl-core.h | |||
@@ -455,7 +455,8 @@ void iwl_rx_csa(struct iwl_priv *priv, struct iwl_rx_mem_buffer *rxb); | |||
455 | /***************************************************** | 455 | /***************************************************** |
456 | * TX | 456 | * TX |
457 | ******************************************************/ | 457 | ******************************************************/ |
458 | int iwl_txq_ctx_reset(struct iwl_priv *priv); | 458 | int iwl_txq_ctx_alloc(struct iwl_priv *priv); |
459 | void iwl_txq_ctx_reset(struct iwl_priv *priv); | ||
459 | void iwl_hw_txq_free_tfd(struct iwl_priv *priv, struct iwl_tx_queue *txq); | 460 | void iwl_hw_txq_free_tfd(struct iwl_priv *priv, struct iwl_tx_queue *txq); |
460 | int iwl_hw_txq_attach_buf_to_tfd(struct iwl_priv *priv, | 461 | int iwl_hw_txq_attach_buf_to_tfd(struct iwl_priv *priv, |
461 | struct iwl_tx_queue *txq, | 462 | struct iwl_tx_queue *txq, |
@@ -469,6 +470,8 @@ void iwl_free_tfds_in_queue(struct iwl_priv *priv, | |||
469 | void iwl_txq_update_write_ptr(struct iwl_priv *priv, struct iwl_tx_queue *txq); | 470 | void iwl_txq_update_write_ptr(struct iwl_priv *priv, struct iwl_tx_queue *txq); |
470 | int iwl_tx_queue_init(struct iwl_priv *priv, struct iwl_tx_queue *txq, | 471 | int iwl_tx_queue_init(struct iwl_priv *priv, struct iwl_tx_queue *txq, |
471 | int slots_num, u32 txq_id); | 472 | int slots_num, u32 txq_id); |
473 | void iwl_tx_queue_reset(struct iwl_priv *priv, struct iwl_tx_queue *txq, | ||
474 | int slots_num, u32 txq_id); | ||
472 | void iwl_tx_queue_free(struct iwl_priv *priv, int txq_id); | 475 | void iwl_tx_queue_free(struct iwl_priv *priv, int txq_id); |
473 | int iwl_tx_agg_start(struct iwl_priv *priv, const u8 *ra, u16 tid, u16 *ssn); | 476 | int iwl_tx_agg_start(struct iwl_priv *priv, const u8 *ra, u16 tid, u16 *ssn); |
474 | int iwl_tx_agg_stop(struct iwl_priv *priv , const u8 *ra, u16 tid); | 477 | int iwl_tx_agg_stop(struct iwl_priv *priv , const u8 *ra, u16 tid); |
diff --git a/drivers/net/wireless/iwlwifi/iwl-debugfs.c b/drivers/net/wireless/iwlwifi/iwl-debugfs.c index 5f5820249a29..607a91f3eb6b 100644 --- a/drivers/net/wireless/iwlwifi/iwl-debugfs.c +++ b/drivers/net/wireless/iwlwifi/iwl-debugfs.c | |||
@@ -26,6 +26,7 @@ | |||
26 | * Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497 | 26 | * Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497 |
27 | *****************************************************************************/ | 27 | *****************************************************************************/ |
28 | 28 | ||
29 | #include <linux/slab.h> | ||
29 | #include <linux/kernel.h> | 30 | #include <linux/kernel.h> |
30 | #include <linux/module.h> | 31 | #include <linux/module.h> |
31 | #include <linux/debugfs.h> | 32 | #include <linux/debugfs.h> |
diff --git a/drivers/net/wireless/iwlwifi/iwl-devtrace.c b/drivers/net/wireless/iwlwifi/iwl-devtrace.c index 36580d8d8b8d..2ffc2edbf4f0 100644 --- a/drivers/net/wireless/iwlwifi/iwl-devtrace.c +++ b/drivers/net/wireless/iwlwifi/iwl-devtrace.c | |||
@@ -28,6 +28,8 @@ | |||
28 | 28 | ||
29 | /* sparse doesn't like tracepoint macros */ | 29 | /* sparse doesn't like tracepoint macros */ |
30 | #ifndef __CHECKER__ | 30 | #ifndef __CHECKER__ |
31 | #include "iwl-dev.h" | ||
32 | |||
31 | #define CREATE_TRACE_POINTS | 33 | #define CREATE_TRACE_POINTS |
32 | #include "iwl-devtrace.h" | 34 | #include "iwl-devtrace.h" |
33 | 35 | ||
diff --git a/drivers/net/wireless/iwlwifi/iwl-devtrace.h b/drivers/net/wireless/iwlwifi/iwl-devtrace.h index ff4d012ce260..ae7319bb3a99 100644 --- a/drivers/net/wireless/iwlwifi/iwl-devtrace.h +++ b/drivers/net/wireless/iwlwifi/iwl-devtrace.h | |||
@@ -28,7 +28,6 @@ | |||
28 | #define __IWLWIFI_DEVICE_TRACE | 28 | #define __IWLWIFI_DEVICE_TRACE |
29 | 29 | ||
30 | #include <linux/tracepoint.h> | 30 | #include <linux/tracepoint.h> |
31 | #include "iwl-dev.h" | ||
32 | 31 | ||
33 | #if !defined(CONFIG_IWLWIFI_DEVICE_TRACING) || defined(__CHECKER__) | 32 | #if !defined(CONFIG_IWLWIFI_DEVICE_TRACING) || defined(__CHECKER__) |
34 | #undef TRACE_EVENT | 33 | #undef TRACE_EVENT |
diff --git a/drivers/net/wireless/iwlwifi/iwl-eeprom.c b/drivers/net/wireless/iwlwifi/iwl-eeprom.c index fd37152abae3..fb5bb487f3bc 100644 --- a/drivers/net/wireless/iwlwifi/iwl-eeprom.c +++ b/drivers/net/wireless/iwlwifi/iwl-eeprom.c | |||
@@ -63,6 +63,7 @@ | |||
63 | 63 | ||
64 | #include <linux/kernel.h> | 64 | #include <linux/kernel.h> |
65 | #include <linux/module.h> | 65 | #include <linux/module.h> |
66 | #include <linux/slab.h> | ||
66 | #include <linux/init.h> | 67 | #include <linux/init.h> |
67 | 68 | ||
68 | #include <net/mac80211.h> | 69 | #include <net/mac80211.h> |
diff --git a/drivers/net/wireless/iwlwifi/iwl-io.h b/drivers/net/wireless/iwlwifi/iwl-io.h index c719baf2585a..16eb3ced9b30 100644 --- a/drivers/net/wireless/iwlwifi/iwl-io.h +++ b/drivers/net/wireless/iwlwifi/iwl-io.h | |||
@@ -31,6 +31,7 @@ | |||
31 | 31 | ||
32 | #include <linux/io.h> | 32 | #include <linux/io.h> |
33 | 33 | ||
34 | #include "iwl-dev.h" | ||
34 | #include "iwl-debug.h" | 35 | #include "iwl-debug.h" |
35 | #include "iwl-devtrace.h" | 36 | #include "iwl-devtrace.h" |
36 | 37 | ||
diff --git a/drivers/net/wireless/iwlwifi/iwl-power.c b/drivers/net/wireless/iwlwifi/iwl-power.c index 1a1a9f081cc7..548dac2f6a96 100644 --- a/drivers/net/wireless/iwlwifi/iwl-power.c +++ b/drivers/net/wireless/iwlwifi/iwl-power.c | |||
@@ -29,6 +29,7 @@ | |||
29 | 29 | ||
30 | #include <linux/kernel.h> | 30 | #include <linux/kernel.h> |
31 | #include <linux/module.h> | 31 | #include <linux/module.h> |
32 | #include <linux/slab.h> | ||
32 | #include <linux/init.h> | 33 | #include <linux/init.h> |
33 | 34 | ||
34 | #include <net/mac80211.h> | 35 | #include <net/mac80211.h> |
diff --git a/drivers/net/wireless/iwlwifi/iwl-rx.c b/drivers/net/wireless/iwlwifi/iwl-rx.c index 2fa30dfb7c59..d3b2fb389e58 100644 --- a/drivers/net/wireless/iwlwifi/iwl-rx.c +++ b/drivers/net/wireless/iwlwifi/iwl-rx.c | |||
@@ -28,6 +28,7 @@ | |||
28 | *****************************************************************************/ | 28 | *****************************************************************************/ |
29 | 29 | ||
30 | #include <linux/etherdevice.h> | 30 | #include <linux/etherdevice.h> |
31 | #include <linux/slab.h> | ||
31 | #include <net/mac80211.h> | 32 | #include <net/mac80211.h> |
32 | #include <asm/unaligned.h> | 33 | #include <asm/unaligned.h> |
33 | #include "iwl-eeprom.h" | 34 | #include "iwl-eeprom.h" |
diff --git a/drivers/net/wireless/iwlwifi/iwl-scan.c b/drivers/net/wireless/iwlwifi/iwl-scan.c index 84b19b12ff03..e8e4b5493e89 100644 --- a/drivers/net/wireless/iwlwifi/iwl-scan.c +++ b/drivers/net/wireless/iwlwifi/iwl-scan.c | |||
@@ -25,6 +25,7 @@ | |||
25 | * Intel Linux Wireless <ilw@linux.intel.com> | 25 | * Intel Linux Wireless <ilw@linux.intel.com> |
26 | * Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497 | 26 | * Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497 |
27 | *****************************************************************************/ | 27 | *****************************************************************************/ |
28 | #include <linux/slab.h> | ||
28 | #include <linux/types.h> | 29 | #include <linux/types.h> |
29 | #include <linux/etherdevice.h> | 30 | #include <linux/etherdevice.h> |
30 | #include <net/mac80211.h> | 31 | #include <net/mac80211.h> |
diff --git a/drivers/net/wireless/iwlwifi/iwl-tx.c b/drivers/net/wireless/iwlwifi/iwl-tx.c index 1e481f3fcabf..b798fbabc3b6 100644 --- a/drivers/net/wireless/iwlwifi/iwl-tx.c +++ b/drivers/net/wireless/iwlwifi/iwl-tx.c | |||
@@ -29,6 +29,7 @@ | |||
29 | 29 | ||
30 | #include <linux/etherdevice.h> | 30 | #include <linux/etherdevice.h> |
31 | #include <linux/sched.h> | 31 | #include <linux/sched.h> |
32 | #include <linux/slab.h> | ||
32 | #include <net/mac80211.h> | 33 | #include <net/mac80211.h> |
33 | #include "iwl-eeprom.h" | 34 | #include "iwl-eeprom.h" |
34 | #include "iwl-dev.h" | 35 | #include "iwl-dev.h" |
@@ -230,10 +231,34 @@ void iwl_cmd_queue_free(struct iwl_priv *priv) | |||
230 | struct iwl_queue *q = &txq->q; | 231 | struct iwl_queue *q = &txq->q; |
231 | struct device *dev = &priv->pci_dev->dev; | 232 | struct device *dev = &priv->pci_dev->dev; |
232 | int i; | 233 | int i; |
234 | bool huge = false; | ||
233 | 235 | ||
234 | if (q->n_bd == 0) | 236 | if (q->n_bd == 0) |
235 | return; | 237 | return; |
236 | 238 | ||
239 | for (; q->read_ptr != q->write_ptr; | ||
240 | q->read_ptr = iwl_queue_inc_wrap(q->read_ptr, q->n_bd)) { | ||
241 | /* we have no way to tell if it is a huge cmd ATM */ | ||
242 | i = get_cmd_index(q, q->read_ptr, 0); | ||
243 | |||
244 | if (txq->meta[i].flags & CMD_SIZE_HUGE) { | ||
245 | huge = true; | ||
246 | continue; | ||
247 | } | ||
248 | |||
249 | pci_unmap_single(priv->pci_dev, | ||
250 | pci_unmap_addr(&txq->meta[i], mapping), | ||
251 | pci_unmap_len(&txq->meta[i], len), | ||
252 | PCI_DMA_BIDIRECTIONAL); | ||
253 | } | ||
254 | if (huge) { | ||
255 | i = q->n_window; | ||
256 | pci_unmap_single(priv->pci_dev, | ||
257 | pci_unmap_addr(&txq->meta[i], mapping), | ||
258 | pci_unmap_len(&txq->meta[i], len), | ||
259 | PCI_DMA_BIDIRECTIONAL); | ||
260 | } | ||
261 | |||
237 | /* De-alloc array of command/tx buffers */ | 262 | /* De-alloc array of command/tx buffers */ |
238 | for (i = 0; i <= TFD_CMD_SLOTS; i++) | 263 | for (i = 0; i <= TFD_CMD_SLOTS; i++) |
239 | kfree(txq->cmd[i]); | 264 | kfree(txq->cmd[i]); |
@@ -448,6 +473,26 @@ out_free_arrays: | |||
448 | } | 473 | } |
449 | EXPORT_SYMBOL(iwl_tx_queue_init); | 474 | EXPORT_SYMBOL(iwl_tx_queue_init); |
450 | 475 | ||
476 | void iwl_tx_queue_reset(struct iwl_priv *priv, struct iwl_tx_queue *txq, | ||
477 | int slots_num, u32 txq_id) | ||
478 | { | ||
479 | int actual_slots = slots_num; | ||
480 | |||
481 | if (txq_id == IWL_CMD_QUEUE_NUM) | ||
482 | actual_slots++; | ||
483 | |||
484 | memset(txq->meta, 0, sizeof(struct iwl_cmd_meta) * actual_slots); | ||
485 | |||
486 | txq->need_update = 0; | ||
487 | |||
488 | /* Initialize queue's high/low-water marks, and head/tail indexes */ | ||
489 | iwl_queue_init(priv, &txq->q, TFD_QUEUE_SIZE_MAX, slots_num, txq_id); | ||
490 | |||
491 | /* Tell device where to find queue */ | ||
492 | priv->cfg->ops->lib->txq_init(priv, txq); | ||
493 | } | ||
494 | EXPORT_SYMBOL(iwl_tx_queue_reset); | ||
495 | |||
451 | /** | 496 | /** |
452 | * iwl_hw_txq_ctx_free - Free TXQ Context | 497 | * iwl_hw_txq_ctx_free - Free TXQ Context |
453 | * | 498 | * |
@@ -459,8 +504,7 @@ void iwl_hw_txq_ctx_free(struct iwl_priv *priv) | |||
459 | 504 | ||
460 | /* Tx queues */ | 505 | /* Tx queues */ |
461 | if (priv->txq) { | 506 | if (priv->txq) { |
462 | for (txq_id = 0; txq_id < priv->hw_params.max_txq_num; | 507 | for (txq_id = 0; txq_id < priv->hw_params.max_txq_num; txq_id++) |
463 | txq_id++) | ||
464 | if (txq_id == IWL_CMD_QUEUE_NUM) | 508 | if (txq_id == IWL_CMD_QUEUE_NUM) |
465 | iwl_cmd_queue_free(priv); | 509 | iwl_cmd_queue_free(priv); |
466 | else | 510 | else |
@@ -476,15 +520,15 @@ void iwl_hw_txq_ctx_free(struct iwl_priv *priv) | |||
476 | EXPORT_SYMBOL(iwl_hw_txq_ctx_free); | 520 | EXPORT_SYMBOL(iwl_hw_txq_ctx_free); |
477 | 521 | ||
478 | /** | 522 | /** |
479 | * iwl_txq_ctx_reset - Reset TX queue context | 523 | * iwl_txq_ctx_alloc - allocate TX queue context |
480 | * Destroys all DMA structures and initialize them again | 524 | * Allocate all Tx DMA structures and initialize them |
481 | * | 525 | * |
482 | * @param priv | 526 | * @param priv |
483 | * @return error code | 527 | * @return error code |
484 | */ | 528 | */ |
485 | int iwl_txq_ctx_reset(struct iwl_priv *priv) | 529 | int iwl_txq_ctx_alloc(struct iwl_priv *priv) |
486 | { | 530 | { |
487 | int ret = 0; | 531 | int ret; |
488 | int txq_id, slots_num; | 532 | int txq_id, slots_num; |
489 | unsigned long flags; | 533 | unsigned long flags; |
490 | 534 | ||
@@ -542,8 +586,31 @@ int iwl_txq_ctx_reset(struct iwl_priv *priv) | |||
542 | return ret; | 586 | return ret; |
543 | } | 587 | } |
544 | 588 | ||
589 | void iwl_txq_ctx_reset(struct iwl_priv *priv) | ||
590 | { | ||
591 | int txq_id, slots_num; | ||
592 | unsigned long flags; | ||
593 | |||
594 | spin_lock_irqsave(&priv->lock, flags); | ||
595 | |||
596 | /* Turn off all Tx DMA fifos */ | ||
597 | priv->cfg->ops->lib->txq_set_sched(priv, 0); | ||
598 | |||
599 | /* Tell NIC where to find the "keep warm" buffer */ | ||
600 | iwl_write_direct32(priv, FH_KW_MEM_ADDR_REG, priv->kw.dma >> 4); | ||
601 | |||
602 | spin_unlock_irqrestore(&priv->lock, flags); | ||
603 | |||
604 | /* Alloc and init all Tx queues, including the command queue (#4) */ | ||
605 | for (txq_id = 0; txq_id < priv->hw_params.max_txq_num; txq_id++) { | ||
606 | slots_num = txq_id == IWL_CMD_QUEUE_NUM ? | ||
607 | TFD_CMD_SLOTS : TFD_TX_CMD_SLOTS; | ||
608 | iwl_tx_queue_reset(priv, &priv->txq[txq_id], slots_num, txq_id); | ||
609 | } | ||
610 | } | ||
611 | |||
545 | /** | 612 | /** |
546 | * iwl_txq_ctx_stop - Stop all Tx DMA channels, free Tx queue memory | 613 | * iwl_txq_ctx_stop - Stop all Tx DMA channels |
547 | */ | 614 | */ |
548 | void iwl_txq_ctx_stop(struct iwl_priv *priv) | 615 | void iwl_txq_ctx_stop(struct iwl_priv *priv) |
549 | { | 616 | { |
@@ -563,9 +630,6 @@ void iwl_txq_ctx_stop(struct iwl_priv *priv) | |||
563 | 1000); | 630 | 1000); |
564 | } | 631 | } |
565 | spin_unlock_irqrestore(&priv->lock, flags); | 632 | spin_unlock_irqrestore(&priv->lock, flags); |
566 | |||
567 | /* Deallocate memory for all Tx queues */ | ||
568 | iwl_hw_txq_ctx_free(priv); | ||
569 | } | 633 | } |
570 | EXPORT_SYMBOL(iwl_txq_ctx_stop); | 634 | EXPORT_SYMBOL(iwl_txq_ctx_stop); |
571 | 635 | ||
@@ -1075,6 +1139,14 @@ int iwl_enqueue_hcmd(struct iwl_priv *priv, struct iwl_host_cmd *cmd) | |||
1075 | 1139 | ||
1076 | spin_lock_irqsave(&priv->hcmd_lock, flags); | 1140 | spin_lock_irqsave(&priv->hcmd_lock, flags); |
1077 | 1141 | ||
1142 | /* If this is a huge cmd, mark the huge flag also on the meta.flags | ||
1143 | * of the _original_ cmd. This is used for DMA mapping clean up. | ||
1144 | */ | ||
1145 | if (cmd->flags & CMD_SIZE_HUGE) { | ||
1146 | idx = get_cmd_index(q, q->write_ptr, 0); | ||
1147 | txq->meta[idx].flags = CMD_SIZE_HUGE; | ||
1148 | } | ||
1149 | |||
1078 | idx = get_cmd_index(q, q->write_ptr, cmd->flags & CMD_SIZE_HUGE); | 1150 | idx = get_cmd_index(q, q->write_ptr, cmd->flags & CMD_SIZE_HUGE); |
1079 | out_cmd = txq->cmd[idx]; | 1151 | out_cmd = txq->cmd[idx]; |
1080 | out_meta = &txq->meta[idx]; | 1152 | out_meta = &txq->meta[idx]; |
@@ -1252,6 +1324,7 @@ void iwl_tx_cmd_complete(struct iwl_priv *priv, struct iwl_rx_mem_buffer *rxb) | |||
1252 | bool huge = !!(pkt->hdr.sequence & SEQ_HUGE_FRAME); | 1324 | bool huge = !!(pkt->hdr.sequence & SEQ_HUGE_FRAME); |
1253 | struct iwl_device_cmd *cmd; | 1325 | struct iwl_device_cmd *cmd; |
1254 | struct iwl_cmd_meta *meta; | 1326 | struct iwl_cmd_meta *meta; |
1327 | struct iwl_tx_queue *txq = &priv->txq[IWL_CMD_QUEUE_NUM]; | ||
1255 | 1328 | ||
1256 | /* If a Tx command is being handled and it isn't in the actual | 1329 | /* If a Tx command is being handled and it isn't in the actual |
1257 | * command queue then there a command routing bug has been introduced | 1330 | * command queue then there a command routing bug has been introduced |
@@ -1265,9 +1338,17 @@ void iwl_tx_cmd_complete(struct iwl_priv *priv, struct iwl_rx_mem_buffer *rxb) | |||
1265 | return; | 1338 | return; |
1266 | } | 1339 | } |
1267 | 1340 | ||
1268 | cmd_index = get_cmd_index(&priv->txq[IWL_CMD_QUEUE_NUM].q, index, huge); | 1341 | /* If this is a huge cmd, clear the huge flag on the meta.flags |
1269 | cmd = priv->txq[IWL_CMD_QUEUE_NUM].cmd[cmd_index]; | 1342 | * of the _original_ cmd. So that iwl_cmd_queue_free won't unmap |
1270 | meta = &priv->txq[IWL_CMD_QUEUE_NUM].meta[cmd_index]; | 1343 | * the DMA buffer for the scan (huge) command. |
1344 | */ | ||
1345 | if (huge) { | ||
1346 | cmd_index = get_cmd_index(&txq->q, index, 0); | ||
1347 | txq->meta[cmd_index].flags = 0; | ||
1348 | } | ||
1349 | cmd_index = get_cmd_index(&txq->q, index, huge); | ||
1350 | cmd = txq->cmd[cmd_index]; | ||
1351 | meta = &txq->meta[cmd_index]; | ||
1271 | 1352 | ||
1272 | pci_unmap_single(priv->pci_dev, | 1353 | pci_unmap_single(priv->pci_dev, |
1273 | pci_unmap_addr(meta, mapping), | 1354 | pci_unmap_addr(meta, mapping), |
@@ -1289,6 +1370,7 @@ void iwl_tx_cmd_complete(struct iwl_priv *priv, struct iwl_rx_mem_buffer *rxb) | |||
1289 | get_cmd_string(cmd->hdr.cmd)); | 1370 | get_cmd_string(cmd->hdr.cmd)); |
1290 | wake_up_interruptible(&priv->wait_command_queue); | 1371 | wake_up_interruptible(&priv->wait_command_queue); |
1291 | } | 1372 | } |
1373 | meta->flags = 0; | ||
1292 | } | 1374 | } |
1293 | EXPORT_SYMBOL(iwl_tx_cmd_complete); | 1375 | EXPORT_SYMBOL(iwl_tx_cmd_complete); |
1294 | 1376 | ||
diff --git a/drivers/net/wireless/iwlwifi/iwl3945-base.c b/drivers/net/wireless/iwlwifi/iwl3945-base.c index 64f150b19771..e0c05feb296c 100644 --- a/drivers/net/wireless/iwlwifi/iwl3945-base.c +++ b/drivers/net/wireless/iwlwifi/iwl3945-base.c | |||
@@ -31,6 +31,7 @@ | |||
31 | #include <linux/module.h> | 31 | #include <linux/module.h> |
32 | #include <linux/init.h> | 32 | #include <linux/init.h> |
33 | #include <linux/pci.h> | 33 | #include <linux/pci.h> |
34 | #include <linux/slab.h> | ||
34 | #include <linux/dma-mapping.h> | 35 | #include <linux/dma-mapping.h> |
35 | #include <linux/delay.h> | 36 | #include <linux/delay.h> |
36 | #include <linux/sched.h> | 37 | #include <linux/sched.h> |
diff --git a/drivers/net/wireless/iwmc3200wifi/cfg80211.c b/drivers/net/wireless/iwmc3200wifi/cfg80211.c index fc239a32cb6b..902e95f70f6e 100644 --- a/drivers/net/wireless/iwmc3200wifi/cfg80211.c +++ b/drivers/net/wireless/iwmc3200wifi/cfg80211.c | |||
@@ -27,6 +27,7 @@ | |||
27 | #include <linux/etherdevice.h> | 27 | #include <linux/etherdevice.h> |
28 | #include <linux/wireless.h> | 28 | #include <linux/wireless.h> |
29 | #include <linux/ieee80211.h> | 29 | #include <linux/ieee80211.h> |
30 | #include <linux/slab.h> | ||
30 | #include <net/cfg80211.h> | 31 | #include <net/cfg80211.h> |
31 | 32 | ||
32 | #include "iwm.h" | 33 | #include "iwm.h" |
diff --git a/drivers/net/wireless/iwmc3200wifi/commands.c b/drivers/net/wireless/iwmc3200wifi/commands.c index b5cbd2bfd52a..330c7d9cf101 100644 --- a/drivers/net/wireless/iwmc3200wifi/commands.c +++ b/drivers/net/wireless/iwmc3200wifi/commands.c | |||
@@ -41,6 +41,7 @@ | |||
41 | #include <linux/etherdevice.h> | 41 | #include <linux/etherdevice.h> |
42 | #include <linux/ieee80211.h> | 42 | #include <linux/ieee80211.h> |
43 | #include <linux/sched.h> | 43 | #include <linux/sched.h> |
44 | #include <linux/slab.h> | ||
44 | 45 | ||
45 | #include "iwm.h" | 46 | #include "iwm.h" |
46 | #include "bus.h" | 47 | #include "bus.h" |
diff --git a/drivers/net/wireless/iwmc3200wifi/debugfs.c b/drivers/net/wireless/iwmc3200wifi/debugfs.c index 5b75a0ddac1c..724441368a18 100644 --- a/drivers/net/wireless/iwmc3200wifi/debugfs.c +++ b/drivers/net/wireless/iwmc3200wifi/debugfs.c | |||
@@ -21,6 +21,7 @@ | |||
21 | * | 21 | * |
22 | */ | 22 | */ |
23 | 23 | ||
24 | #include <linux/slab.h> | ||
24 | #include <linux/kernel.h> | 25 | #include <linux/kernel.h> |
25 | #include <linux/bitops.h> | 26 | #include <linux/bitops.h> |
26 | #include <linux/debugfs.h> | 27 | #include <linux/debugfs.h> |
diff --git a/drivers/net/wireless/iwmc3200wifi/eeprom.c b/drivers/net/wireless/iwmc3200wifi/eeprom.c index 8091421ee5e5..e80e776b74f7 100644 --- a/drivers/net/wireless/iwmc3200wifi/eeprom.c +++ b/drivers/net/wireless/iwmc3200wifi/eeprom.c | |||
@@ -37,6 +37,7 @@ | |||
37 | */ | 37 | */ |
38 | 38 | ||
39 | #include <linux/kernel.h> | 39 | #include <linux/kernel.h> |
40 | #include <linux/slab.h> | ||
40 | 41 | ||
41 | #include "iwm.h" | 42 | #include "iwm.h" |
42 | #include "umac.h" | 43 | #include "umac.h" |
diff --git a/drivers/net/wireless/iwmc3200wifi/hal.c b/drivers/net/wireless/iwmc3200wifi/hal.c index 373b5b5001d2..9531b18cf72a 100644 --- a/drivers/net/wireless/iwmc3200wifi/hal.c +++ b/drivers/net/wireless/iwmc3200wifi/hal.c | |||
@@ -98,6 +98,7 @@ | |||
98 | */ | 98 | */ |
99 | #include <linux/kernel.h> | 99 | #include <linux/kernel.h> |
100 | #include <linux/netdevice.h> | 100 | #include <linux/netdevice.h> |
101 | #include <linux/slab.h> | ||
101 | 102 | ||
102 | #include "iwm.h" | 103 | #include "iwm.h" |
103 | #include "bus.h" | 104 | #include "bus.h" |
diff --git a/drivers/net/wireless/iwmc3200wifi/main.c b/drivers/net/wireless/iwmc3200wifi/main.c index 3a3510a6223a..362002735b12 100644 --- a/drivers/net/wireless/iwmc3200wifi/main.c +++ b/drivers/net/wireless/iwmc3200wifi/main.c | |||
@@ -41,6 +41,7 @@ | |||
41 | #include <linux/sched.h> | 41 | #include <linux/sched.h> |
42 | #include <linux/ieee80211.h> | 42 | #include <linux/ieee80211.h> |
43 | #include <linux/wireless.h> | 43 | #include <linux/wireless.h> |
44 | #include <linux/slab.h> | ||
44 | 45 | ||
45 | #include "iwm.h" | 46 | #include "iwm.h" |
46 | #include "debug.h" | 47 | #include "debug.h" |
diff --git a/drivers/net/wireless/iwmc3200wifi/netdev.c b/drivers/net/wireless/iwmc3200wifi/netdev.c index c4c0d23c63ec..13a69ebf2a94 100644 --- a/drivers/net/wireless/iwmc3200wifi/netdev.c +++ b/drivers/net/wireless/iwmc3200wifi/netdev.c | |||
@@ -46,6 +46,7 @@ | |||
46 | * -> sdio_disable_func() | 46 | * -> sdio_disable_func() |
47 | */ | 47 | */ |
48 | #include <linux/netdevice.h> | 48 | #include <linux/netdevice.h> |
49 | #include <linux/slab.h> | ||
49 | 50 | ||
50 | #include "iwm.h" | 51 | #include "iwm.h" |
51 | #include "commands.h" | 52 | #include "commands.h" |
diff --git a/drivers/net/wireless/iwmc3200wifi/rx.c b/drivers/net/wireless/iwmc3200wifi/rx.c index ce36baf34039..ad5398779240 100644 --- a/drivers/net/wireless/iwmc3200wifi/rx.c +++ b/drivers/net/wireless/iwmc3200wifi/rx.c | |||
@@ -44,6 +44,7 @@ | |||
44 | #include <linux/ieee80211.h> | 44 | #include <linux/ieee80211.h> |
45 | #include <linux/if_arp.h> | 45 | #include <linux/if_arp.h> |
46 | #include <linux/list.h> | 46 | #include <linux/list.h> |
47 | #include <linux/slab.h> | ||
47 | #include <net/iw_handler.h> | 48 | #include <net/iw_handler.h> |
48 | 49 | ||
49 | #include "iwm.h" | 50 | #include "iwm.h" |
diff --git a/drivers/net/wireless/iwmc3200wifi/sdio.c b/drivers/net/wireless/iwmc3200wifi/sdio.c index a7ec7eac9137..1eafd6dec3fd 100644 --- a/drivers/net/wireless/iwmc3200wifi/sdio.c +++ b/drivers/net/wireless/iwmc3200wifi/sdio.c | |||
@@ -63,6 +63,7 @@ | |||
63 | */ | 63 | */ |
64 | 64 | ||
65 | #include <linux/kernel.h> | 65 | #include <linux/kernel.h> |
66 | #include <linux/slab.h> | ||
66 | #include <linux/netdevice.h> | 67 | #include <linux/netdevice.h> |
67 | #include <linux/debugfs.h> | 68 | #include <linux/debugfs.h> |
68 | #include <linux/mmc/sdio_ids.h> | 69 | #include <linux/mmc/sdio_ids.h> |
diff --git a/drivers/net/wireless/iwmc3200wifi/tx.c b/drivers/net/wireless/iwmc3200wifi/tx.c index a20b936ae21f..9537cdb13d3f 100644 --- a/drivers/net/wireless/iwmc3200wifi/tx.c +++ b/drivers/net/wireless/iwmc3200wifi/tx.c | |||
@@ -64,6 +64,7 @@ | |||
64 | * (i.e. half of the max size). [iwm_tx_worker] | 64 | * (i.e. half of the max size). [iwm_tx_worker] |
65 | */ | 65 | */ |
66 | 66 | ||
67 | #include <linux/slab.h> | ||
67 | #include <linux/skbuff.h> | 68 | #include <linux/skbuff.h> |
68 | #include <linux/netdevice.h> | 69 | #include <linux/netdevice.h> |
69 | #include <linux/ieee80211.h> | 70 | #include <linux/ieee80211.h> |
diff --git a/drivers/net/wireless/libertas/assoc.c b/drivers/net/wireless/libertas/assoc.c index 95d3d4c5e08b..aa06070e5eab 100644 --- a/drivers/net/wireless/libertas/assoc.c +++ b/drivers/net/wireless/libertas/assoc.c | |||
@@ -4,6 +4,7 @@ | |||
4 | #include <linux/etherdevice.h> | 4 | #include <linux/etherdevice.h> |
5 | #include <linux/ieee80211.h> | 5 | #include <linux/ieee80211.h> |
6 | #include <linux/if_arp.h> | 6 | #include <linux/if_arp.h> |
7 | #include <linux/slab.h> | ||
7 | #include <net/lib80211.h> | 8 | #include <net/lib80211.h> |
8 | 9 | ||
9 | #include "assoc.h" | 10 | #include "assoc.h" |
diff --git a/drivers/net/wireless/libertas/cfg.c b/drivers/net/wireless/libertas/cfg.c index 82ebe1461a77..ce7bec402a33 100644 --- a/drivers/net/wireless/libertas/cfg.c +++ b/drivers/net/wireless/libertas/cfg.c | |||
@@ -6,6 +6,7 @@ | |||
6 | * | 6 | * |
7 | */ | 7 | */ |
8 | 8 | ||
9 | #include <linux/slab.h> | ||
9 | #include <net/cfg80211.h> | 10 | #include <net/cfg80211.h> |
10 | 11 | ||
11 | #include "cfg.h" | 12 | #include "cfg.h" |
diff --git a/drivers/net/wireless/libertas/cmd.c b/drivers/net/wireless/libertas/cmd.c index 82371ef39524..cdb9b9650d73 100644 --- a/drivers/net/wireless/libertas/cmd.c +++ b/drivers/net/wireless/libertas/cmd.c | |||
@@ -5,6 +5,7 @@ | |||
5 | 5 | ||
6 | #include <linux/kfifo.h> | 6 | #include <linux/kfifo.h> |
7 | #include <linux/sched.h> | 7 | #include <linux/sched.h> |
8 | #include <linux/slab.h> | ||
8 | 9 | ||
9 | #include "host.h" | 10 | #include "host.h" |
10 | #include "decl.h" | 11 | #include "decl.h" |
diff --git a/drivers/net/wireless/libertas/cmdresp.c b/drivers/net/wireless/libertas/cmdresp.c index e7470442f76b..88f7131d66e9 100644 --- a/drivers/net/wireless/libertas/cmdresp.c +++ b/drivers/net/wireless/libertas/cmdresp.c | |||
@@ -2,6 +2,7 @@ | |||
2 | * This file contains the handling of command | 2 | * This file contains the handling of command |
3 | * responses as well as events generated by firmware. | 3 | * responses as well as events generated by firmware. |
4 | */ | 4 | */ |
5 | #include <linux/slab.h> | ||
5 | #include <linux/delay.h> | 6 | #include <linux/delay.h> |
6 | #include <linux/sched.h> | 7 | #include <linux/sched.h> |
7 | #include <linux/if_arp.h> | 8 | #include <linux/if_arp.h> |
diff --git a/drivers/net/wireless/libertas/debugfs.c b/drivers/net/wireless/libertas/debugfs.c index 587b0cb0088d..a48ccaffb288 100644 --- a/drivers/net/wireless/libertas/debugfs.c +++ b/drivers/net/wireless/libertas/debugfs.c | |||
@@ -4,6 +4,7 @@ | |||
4 | #include <linux/delay.h> | 4 | #include <linux/delay.h> |
5 | #include <linux/mm.h> | 5 | #include <linux/mm.h> |
6 | #include <linux/string.h> | 6 | #include <linux/string.h> |
7 | #include <linux/slab.h> | ||
7 | #include <net/iw_handler.h> | 8 | #include <net/iw_handler.h> |
8 | #include <net/lib80211.h> | 9 | #include <net/lib80211.h> |
9 | 10 | ||
diff --git a/drivers/net/wireless/libertas/if_cs.c b/drivers/net/wireless/libertas/if_cs.c index 1f6cb58dd66c..6d55439a7b97 100644 --- a/drivers/net/wireless/libertas/if_cs.c +++ b/drivers/net/wireless/libertas/if_cs.c | |||
@@ -22,6 +22,7 @@ | |||
22 | */ | 22 | */ |
23 | 23 | ||
24 | #include <linux/module.h> | 24 | #include <linux/module.h> |
25 | #include <linux/slab.h> | ||
25 | #include <linux/delay.h> | 26 | #include <linux/delay.h> |
26 | #include <linux/moduleparam.h> | 27 | #include <linux/moduleparam.h> |
27 | #include <linux/firmware.h> | 28 | #include <linux/firmware.h> |
diff --git a/drivers/net/wireless/libertas/if_sdio.c b/drivers/net/wireless/libertas/if_sdio.c index 7a73f625273b..7d1a3c6b6ce0 100644 --- a/drivers/net/wireless/libertas/if_sdio.c +++ b/drivers/net/wireless/libertas/if_sdio.c | |||
@@ -28,6 +28,7 @@ | |||
28 | 28 | ||
29 | #include <linux/kernel.h> | 29 | #include <linux/kernel.h> |
30 | #include <linux/moduleparam.h> | 30 | #include <linux/moduleparam.h> |
31 | #include <linux/slab.h> | ||
31 | #include <linux/firmware.h> | 32 | #include <linux/firmware.h> |
32 | #include <linux/netdevice.h> | 33 | #include <linux/netdevice.h> |
33 | #include <linux/delay.h> | 34 | #include <linux/delay.h> |
diff --git a/drivers/net/wireless/libertas/if_spi.c b/drivers/net/wireless/libertas/if_spi.c index 3ea03f259ee7..fe3f08028eb3 100644 --- a/drivers/net/wireless/libertas/if_spi.c +++ b/drivers/net/wireless/libertas/if_spi.c | |||
@@ -24,6 +24,7 @@ | |||
24 | #include <linux/list.h> | 24 | #include <linux/list.h> |
25 | #include <linux/netdevice.h> | 25 | #include <linux/netdevice.h> |
26 | #include <linux/semaphore.h> | 26 | #include <linux/semaphore.h> |
27 | #include <linux/slab.h> | ||
27 | #include <linux/spi/libertas_spi.h> | 28 | #include <linux/spi/libertas_spi.h> |
28 | #include <linux/spi/spi.h> | 29 | #include <linux/spi/spi.h> |
29 | 30 | ||
diff --git a/drivers/net/wireless/libertas/if_usb.c b/drivers/net/wireless/libertas/if_usb.c index 65e174595d12..fcea5741ba62 100644 --- a/drivers/net/wireless/libertas/if_usb.c +++ b/drivers/net/wireless/libertas/if_usb.c | |||
@@ -5,6 +5,7 @@ | |||
5 | #include <linux/moduleparam.h> | 5 | #include <linux/moduleparam.h> |
6 | #include <linux/firmware.h> | 6 | #include <linux/firmware.h> |
7 | #include <linux/netdevice.h> | 7 | #include <linux/netdevice.h> |
8 | #include <linux/slab.h> | ||
8 | #include <linux/usb.h> | 9 | #include <linux/usb.h> |
9 | 10 | ||
10 | #ifdef CONFIG_OLPC | 11 | #ifdef CONFIG_OLPC |
diff --git a/drivers/net/wireless/libertas/main.c b/drivers/net/wireless/libertas/main.c index ff7b0d0cca56..38edad6f24b8 100644 --- a/drivers/net/wireless/libertas/main.c +++ b/drivers/net/wireless/libertas/main.c | |||
@@ -13,6 +13,7 @@ | |||
13 | #include <linux/kfifo.h> | 13 | #include <linux/kfifo.h> |
14 | #include <linux/stddef.h> | 14 | #include <linux/stddef.h> |
15 | #include <linux/ieee80211.h> | 15 | #include <linux/ieee80211.h> |
16 | #include <linux/slab.h> | ||
16 | #include <net/iw_handler.h> | 17 | #include <net/iw_handler.h> |
17 | #include <net/cfg80211.h> | 18 | #include <net/cfg80211.h> |
18 | 19 | ||
diff --git a/drivers/net/wireless/libertas/rx.c b/drivers/net/wireless/libertas/rx.c index 7a867e31ca5a..e2b8d886b091 100644 --- a/drivers/net/wireless/libertas/rx.c +++ b/drivers/net/wireless/libertas/rx.c | |||
@@ -2,6 +2,7 @@ | |||
2 | * This file contains the handling of RX in wlan driver. | 2 | * This file contains the handling of RX in wlan driver. |
3 | */ | 3 | */ |
4 | #include <linux/etherdevice.h> | 4 | #include <linux/etherdevice.h> |
5 | #include <linux/slab.h> | ||
5 | #include <linux/types.h> | 6 | #include <linux/types.h> |
6 | 7 | ||
7 | #include "host.h" | 8 | #include "host.h" |
diff --git a/drivers/net/wireless/libertas/scan.c b/drivers/net/wireless/libertas/scan.c index 220361e69cd3..24cd54b3a806 100644 --- a/drivers/net/wireless/libertas/scan.c +++ b/drivers/net/wireless/libertas/scan.c | |||
@@ -4,6 +4,7 @@ | |||
4 | * IOCTL handlers as well as command preperation and response routines | 4 | * IOCTL handlers as well as command preperation and response routines |
5 | * for sending scan commands to the firmware. | 5 | * for sending scan commands to the firmware. |
6 | */ | 6 | */ |
7 | #include <linux/slab.h> | ||
7 | #include <linux/types.h> | 8 | #include <linux/types.h> |
8 | #include <linux/kernel.h> | 9 | #include <linux/kernel.h> |
9 | #include <linux/etherdevice.h> | 10 | #include <linux/etherdevice.h> |
diff --git a/drivers/net/wireless/libertas/wext.c b/drivers/net/wireless/libertas/wext.c index aad6263dee6d..f96a96031a50 100644 --- a/drivers/net/wireless/libertas/wext.c +++ b/drivers/net/wireless/libertas/wext.c | |||
@@ -2,6 +2,7 @@ | |||
2 | * This file contains ioctl functions | 2 | * This file contains ioctl functions |
3 | */ | 3 | */ |
4 | #include <linux/ctype.h> | 4 | #include <linux/ctype.h> |
5 | #include <linux/slab.h> | ||
5 | #include <linux/delay.h> | 6 | #include <linux/delay.h> |
6 | #include <linux/if.h> | 7 | #include <linux/if.h> |
7 | #include <linux/if_arp.h> | 8 | #include <linux/if_arp.h> |
diff --git a/drivers/net/wireless/libertas_tf/cmd.c b/drivers/net/wireless/libertas_tf/cmd.c index 28790e03dc43..b620daf59ef7 100644 --- a/drivers/net/wireless/libertas_tf/cmd.c +++ b/drivers/net/wireless/libertas_tf/cmd.c | |||
@@ -7,6 +7,8 @@ | |||
7 | * the Free Software Foundation; either version 2 of the License, or (at | 7 | * the Free Software Foundation; either version 2 of the License, or (at |
8 | * your option) any later version. | 8 | * your option) any later version. |
9 | */ | 9 | */ |
10 | #include <linux/slab.h> | ||
11 | |||
10 | #include "libertas_tf.h" | 12 | #include "libertas_tf.h" |
11 | 13 | ||
12 | static const struct channel_range channel_ranges[] = { | 14 | static const struct channel_range channel_ranges[] = { |
diff --git a/drivers/net/wireless/libertas_tf/if_usb.c b/drivers/net/wireless/libertas_tf/if_usb.c index 3691c307e674..8cc9db60c14b 100644 --- a/drivers/net/wireless/libertas_tf/if_usb.c +++ b/drivers/net/wireless/libertas_tf/if_usb.c | |||
@@ -11,6 +11,7 @@ | |||
11 | #include <linux/moduleparam.h> | 11 | #include <linux/moduleparam.h> |
12 | #include <linux/firmware.h> | 12 | #include <linux/firmware.h> |
13 | #include <linux/netdevice.h> | 13 | #include <linux/netdevice.h> |
14 | #include <linux/slab.h> | ||
14 | #include <linux/usb.h> | 15 | #include <linux/usb.h> |
15 | 16 | ||
16 | #define DRV_NAME "lbtf_usb" | 17 | #define DRV_NAME "lbtf_usb" |
diff --git a/drivers/net/wireless/libertas_tf/main.c b/drivers/net/wireless/libertas_tf/main.c index c20eef6b95c2..7533a23e0500 100644 --- a/drivers/net/wireless/libertas_tf/main.c +++ b/drivers/net/wireless/libertas_tf/main.c | |||
@@ -7,6 +7,8 @@ | |||
7 | * the Free Software Foundation; either version 2 of the License, or (at | 7 | * the Free Software Foundation; either version 2 of the License, or (at |
8 | * your option) any later version. | 8 | * your option) any later version. |
9 | */ | 9 | */ |
10 | #include <linux/slab.h> | ||
11 | |||
10 | #include "libertas_tf.h" | 12 | #include "libertas_tf.h" |
11 | #include "linux/etherdevice.h" | 13 | #include "linux/etherdevice.h" |
12 | 14 | ||
diff --git a/drivers/net/wireless/mac80211_hwsim.c b/drivers/net/wireless/mac80211_hwsim.c index 6ea77e95277b..7cd5f56662fc 100644 --- a/drivers/net/wireless/mac80211_hwsim.c +++ b/drivers/net/wireless/mac80211_hwsim.c | |||
@@ -14,6 +14,7 @@ | |||
14 | */ | 14 | */ |
15 | 15 | ||
16 | #include <linux/list.h> | 16 | #include <linux/list.h> |
17 | #include <linux/slab.h> | ||
17 | #include <linux/spinlock.h> | 18 | #include <linux/spinlock.h> |
18 | #include <net/dst.h> | 19 | #include <net/dst.h> |
19 | #include <net/xfrm.h> | 20 | #include <net/xfrm.h> |
diff --git a/drivers/net/wireless/mwl8k.c b/drivers/net/wireless/mwl8k.c index 1b5d0aebbb0e..73bbd080c6e7 100644 --- a/drivers/net/wireless/mwl8k.c +++ b/drivers/net/wireless/mwl8k.c | |||
@@ -19,6 +19,7 @@ | |||
19 | #include <linux/delay.h> | 19 | #include <linux/delay.h> |
20 | #include <linux/completion.h> | 20 | #include <linux/completion.h> |
21 | #include <linux/etherdevice.h> | 21 | #include <linux/etherdevice.h> |
22 | #include <linux/slab.h> | ||
22 | #include <net/mac80211.h> | 23 | #include <net/mac80211.h> |
23 | #include <linux/moduleparam.h> | 24 | #include <linux/moduleparam.h> |
24 | #include <linux/firmware.h> | 25 | #include <linux/firmware.h> |
diff --git a/drivers/net/wireless/orinoco/fw.c b/drivers/net/wireless/orinoco/fw.c index cfa72962052b..5ea0f7cf85b1 100644 --- a/drivers/net/wireless/orinoco/fw.c +++ b/drivers/net/wireless/orinoco/fw.c | |||
@@ -3,6 +3,7 @@ | |||
3 | * See copyright notice in main.c | 3 | * See copyright notice in main.c |
4 | */ | 4 | */ |
5 | #include <linux/kernel.h> | 5 | #include <linux/kernel.h> |
6 | #include <linux/slab.h> | ||
6 | #include <linux/firmware.h> | 7 | #include <linux/firmware.h> |
7 | #include <linux/device.h> | 8 | #include <linux/device.h> |
8 | 9 | ||
diff --git a/drivers/net/wireless/orinoco/main.c b/drivers/net/wireless/orinoco/main.c index b42634c614b5..413e9ab6cab3 100644 --- a/drivers/net/wireless/orinoco/main.c +++ b/drivers/net/wireless/orinoco/main.c | |||
@@ -78,6 +78,7 @@ | |||
78 | 78 | ||
79 | #include <linux/module.h> | 79 | #include <linux/module.h> |
80 | #include <linux/kernel.h> | 80 | #include <linux/kernel.h> |
81 | #include <linux/slab.h> | ||
81 | #include <linux/init.h> | 82 | #include <linux/init.h> |
82 | #include <linux/delay.h> | 83 | #include <linux/delay.h> |
83 | #include <linux/device.h> | 84 | #include <linux/device.h> |
diff --git a/drivers/net/wireless/orinoco/scan.c b/drivers/net/wireless/orinoco/scan.c index d2f10e9c2162..330d42d45333 100644 --- a/drivers/net/wireless/orinoco/scan.c +++ b/drivers/net/wireless/orinoco/scan.c | |||
@@ -3,6 +3,7 @@ | |||
3 | * See copyright notice in main.c | 3 | * See copyright notice in main.c |
4 | */ | 4 | */ |
5 | 5 | ||
6 | #include <linux/gfp.h> | ||
6 | #include <linux/kernel.h> | 7 | #include <linux/kernel.h> |
7 | #include <linux/string.h> | 8 | #include <linux/string.h> |
8 | #include <linux/ieee80211.h> | 9 | #include <linux/ieee80211.h> |
diff --git a/drivers/net/wireless/orinoco/wext.c b/drivers/net/wireless/orinoco/wext.c index 29f9bc03190a..57b850ebfeb2 100644 --- a/drivers/net/wireless/orinoco/wext.c +++ b/drivers/net/wireless/orinoco/wext.c | |||
@@ -2,6 +2,7 @@ | |||
2 | * | 2 | * |
3 | * See copyright notice in main.c | 3 | * See copyright notice in main.c |
4 | */ | 4 | */ |
5 | #include <linux/slab.h> | ||
5 | #include <linux/kernel.h> | 6 | #include <linux/kernel.h> |
6 | #include <linux/if_arp.h> | 7 | #include <linux/if_arp.h> |
7 | #include <linux/wireless.h> | 8 | #include <linux/wireless.h> |
diff --git a/drivers/net/wireless/p54/eeprom.c b/drivers/net/wireless/p54/eeprom.c index 8e3818f6832e..187e263b045a 100644 --- a/drivers/net/wireless/p54/eeprom.c +++ b/drivers/net/wireless/p54/eeprom.c | |||
@@ -20,6 +20,7 @@ | |||
20 | #include <linux/firmware.h> | 20 | #include <linux/firmware.h> |
21 | #include <linux/etherdevice.h> | 21 | #include <linux/etherdevice.h> |
22 | #include <linux/sort.h> | 22 | #include <linux/sort.h> |
23 | #include <linux/slab.h> | ||
23 | 24 | ||
24 | #include <net/mac80211.h> | 25 | #include <net/mac80211.h> |
25 | 26 | ||
diff --git a/drivers/net/wireless/p54/fwio.c b/drivers/net/wireless/p54/fwio.c index e7b9e9cb39f5..c43a5d461ab2 100644 --- a/drivers/net/wireless/p54/fwio.c +++ b/drivers/net/wireless/p54/fwio.c | |||
@@ -17,6 +17,7 @@ | |||
17 | */ | 17 | */ |
18 | 18 | ||
19 | #include <linux/init.h> | 19 | #include <linux/init.h> |
20 | #include <linux/slab.h> | ||
20 | #include <linux/firmware.h> | 21 | #include <linux/firmware.h> |
21 | #include <linux/etherdevice.h> | 22 | #include <linux/etherdevice.h> |
22 | 23 | ||
diff --git a/drivers/net/wireless/p54/main.c b/drivers/net/wireless/p54/main.c index 36f4c820ad01..7bbd9d3bba60 100644 --- a/drivers/net/wireless/p54/main.c +++ b/drivers/net/wireless/p54/main.c | |||
@@ -17,6 +17,7 @@ | |||
17 | */ | 17 | */ |
18 | 18 | ||
19 | #include <linux/init.h> | 19 | #include <linux/init.h> |
20 | #include <linux/slab.h> | ||
20 | #include <linux/firmware.h> | 21 | #include <linux/firmware.h> |
21 | #include <linux/etherdevice.h> | 22 | #include <linux/etherdevice.h> |
22 | 23 | ||
diff --git a/drivers/net/wireless/p54/p54pci.c b/drivers/net/wireless/p54/p54pci.c index ed4bdffdd63e..269fda362836 100644 --- a/drivers/net/wireless/p54/p54pci.c +++ b/drivers/net/wireless/p54/p54pci.c | |||
@@ -15,6 +15,7 @@ | |||
15 | 15 | ||
16 | #include <linux/init.h> | 16 | #include <linux/init.h> |
17 | #include <linux/pci.h> | 17 | #include <linux/pci.h> |
18 | #include <linux/slab.h> | ||
18 | #include <linux/firmware.h> | 19 | #include <linux/firmware.h> |
19 | #include <linux/etherdevice.h> | 20 | #include <linux/etherdevice.h> |
20 | #include <linux/delay.h> | 21 | #include <linux/delay.h> |
diff --git a/drivers/net/wireless/p54/p54spi.c b/drivers/net/wireless/p54/p54spi.c index afd26bf06649..c8f09da1f84d 100644 --- a/drivers/net/wireless/p54/p54spi.c +++ b/drivers/net/wireless/p54/p54spi.c | |||
@@ -29,6 +29,7 @@ | |||
29 | #include <linux/spi/spi.h> | 29 | #include <linux/spi/spi.h> |
30 | #include <linux/etherdevice.h> | 30 | #include <linux/etherdevice.h> |
31 | #include <linux/gpio.h> | 31 | #include <linux/gpio.h> |
32 | #include <linux/slab.h> | ||
32 | 33 | ||
33 | #include "p54spi.h" | 34 | #include "p54spi.h" |
34 | #include "p54spi_eeprom.h" | 35 | #include "p54spi_eeprom.h" |
diff --git a/drivers/net/wireless/p54/p54usb.c b/drivers/net/wireless/p54/p54usb.c index e3cfc001d2fd..743a6c68b29d 100644 --- a/drivers/net/wireless/p54/p54usb.c +++ b/drivers/net/wireless/p54/p54usb.c | |||
@@ -15,6 +15,7 @@ | |||
15 | #include <linux/init.h> | 15 | #include <linux/init.h> |
16 | #include <linux/usb.h> | 16 | #include <linux/usb.h> |
17 | #include <linux/pci.h> | 17 | #include <linux/pci.h> |
18 | #include <linux/slab.h> | ||
18 | #include <linux/firmware.h> | 19 | #include <linux/firmware.h> |
19 | #include <linux/etherdevice.h> | 20 | #include <linux/etherdevice.h> |
20 | #include <linux/delay.h> | 21 | #include <linux/delay.h> |
diff --git a/drivers/net/wireless/prism54/isl_ioctl.c b/drivers/net/wireless/prism54/isl_ioctl.c index f7f5c793514b..a45818ebfdfb 100644 --- a/drivers/net/wireless/prism54/isl_ioctl.c +++ b/drivers/net/wireless/prism54/isl_ioctl.c | |||
@@ -23,6 +23,7 @@ | |||
23 | #include <linux/module.h> | 23 | #include <linux/module.h> |
24 | #include <linux/kernel.h> | 24 | #include <linux/kernel.h> |
25 | #include <linux/if_arp.h> | 25 | #include <linux/if_arp.h> |
26 | #include <linux/slab.h> | ||
26 | #include <linux/pci.h> | 27 | #include <linux/pci.h> |
27 | 28 | ||
28 | #include <asm/uaccess.h> | 29 | #include <asm/uaccess.h> |
diff --git a/drivers/net/wireless/prism54/islpci_dev.c b/drivers/net/wireless/prism54/islpci_dev.c index a3ba3539db02..689d59a13d5b 100644 --- a/drivers/net/wireless/prism54/islpci_dev.c +++ b/drivers/net/wireless/prism54/islpci_dev.c | |||
@@ -19,6 +19,7 @@ | |||
19 | */ | 19 | */ |
20 | 20 | ||
21 | #include <linux/module.h> | 21 | #include <linux/module.h> |
22 | #include <linux/slab.h> | ||
22 | 23 | ||
23 | #include <linux/netdevice.h> | 24 | #include <linux/netdevice.h> |
24 | #include <linux/ethtool.h> | 25 | #include <linux/ethtool.h> |
diff --git a/drivers/net/wireless/prism54/islpci_eth.c b/drivers/net/wireless/prism54/islpci_eth.c index 872b64783e78..ac99eaaeabce 100644 --- a/drivers/net/wireless/prism54/islpci_eth.c +++ b/drivers/net/wireless/prism54/islpci_eth.c | |||
@@ -17,6 +17,7 @@ | |||
17 | */ | 17 | */ |
18 | 18 | ||
19 | #include <linux/module.h> | 19 | #include <linux/module.h> |
20 | #include <linux/gfp.h> | ||
20 | 21 | ||
21 | #include <linux/pci.h> | 22 | #include <linux/pci.h> |
22 | #include <linux/delay.h> | 23 | #include <linux/delay.h> |
diff --git a/drivers/net/wireless/prism54/islpci_mgt.c b/drivers/net/wireless/prism54/islpci_mgt.c index 69d2f882fd06..adb289723a96 100644 --- a/drivers/net/wireless/prism54/islpci_mgt.c +++ b/drivers/net/wireless/prism54/islpci_mgt.c | |||
@@ -21,6 +21,7 @@ | |||
21 | #include <linux/module.h> | 21 | #include <linux/module.h> |
22 | #include <linux/pci.h> | 22 | #include <linux/pci.h> |
23 | #include <linux/sched.h> | 23 | #include <linux/sched.h> |
24 | #include <linux/slab.h> | ||
24 | 25 | ||
25 | #include <asm/io.h> | 26 | #include <asm/io.h> |
26 | #include <asm/system.h> | 27 | #include <asm/system.h> |
diff --git a/drivers/net/wireless/prism54/islpci_mgt.h b/drivers/net/wireless/prism54/islpci_mgt.h index 87a1734663da..0b27e50fe0d5 100644 --- a/drivers/net/wireless/prism54/islpci_mgt.h +++ b/drivers/net/wireless/prism54/islpci_mgt.h | |||
@@ -22,6 +22,7 @@ | |||
22 | 22 | ||
23 | #include <linux/wireless.h> | 23 | #include <linux/wireless.h> |
24 | #include <linux/skbuff.h> | 24 | #include <linux/skbuff.h> |
25 | #include <linux/slab.h> | ||
25 | 26 | ||
26 | /* | 27 | /* |
27 | * Function definitions | 28 | * Function definitions |
diff --git a/drivers/net/wireless/prism54/oid_mgt.c b/drivers/net/wireless/prism54/oid_mgt.c index 1187e6112a64..d66933d70fb9 100644 --- a/drivers/net/wireless/prism54/oid_mgt.c +++ b/drivers/net/wireless/prism54/oid_mgt.c | |||
@@ -17,6 +17,7 @@ | |||
17 | */ | 17 | */ |
18 | 18 | ||
19 | #include <linux/kernel.h> | 19 | #include <linux/kernel.h> |
20 | #include <linux/slab.h> | ||
20 | 21 | ||
21 | #include "prismcompat.h" | 22 | #include "prismcompat.h" |
22 | #include "islpci_dev.h" | 23 | #include "islpci_dev.h" |
diff --git a/drivers/net/wireless/ray_cs.c b/drivers/net/wireless/ray_cs.c index 54680a3a5acb..2940d7d3775e 100644 --- a/drivers/net/wireless/ray_cs.c +++ b/drivers/net/wireless/ray_cs.c | |||
@@ -35,7 +35,6 @@ | |||
35 | #include <linux/proc_fs.h> | 35 | #include <linux/proc_fs.h> |
36 | #include <linux/ptrace.h> | 36 | #include <linux/ptrace.h> |
37 | #include <linux/seq_file.h> | 37 | #include <linux/seq_file.h> |
38 | #include <linux/slab.h> | ||
39 | #include <linux/string.h> | 38 | #include <linux/string.h> |
40 | #include <linux/timer.h> | 39 | #include <linux/timer.h> |
41 | #include <linux/init.h> | 40 | #include <linux/init.h> |
diff --git a/drivers/net/wireless/rndis_wlan.c b/drivers/net/wireless/rndis_wlan.c index 8ab9f094747b..babdcdf6d71d 100644 --- a/drivers/net/wireless/rndis_wlan.c +++ b/drivers/net/wireless/rndis_wlan.c | |||
@@ -41,6 +41,7 @@ | |||
41 | #include <linux/if_arp.h> | 41 | #include <linux/if_arp.h> |
42 | #include <linux/ctype.h> | 42 | #include <linux/ctype.h> |
43 | #include <linux/spinlock.h> | 43 | #include <linux/spinlock.h> |
44 | #include <linux/slab.h> | ||
44 | #include <net/iw_handler.h> | 45 | #include <net/iw_handler.h> |
45 | #include <net/cfg80211.h> | 46 | #include <net/cfg80211.h> |
46 | #include <linux/usb/usbnet.h> | 47 | #include <linux/usb/usbnet.h> |
diff --git a/drivers/net/wireless/rt2x00/rt2400pci.c b/drivers/net/wireless/rt2x00/rt2400pci.c index c22b04042d5c..5f5204b82891 100644 --- a/drivers/net/wireless/rt2x00/rt2400pci.c +++ b/drivers/net/wireless/rt2x00/rt2400pci.c | |||
@@ -31,6 +31,7 @@ | |||
31 | #include <linux/module.h> | 31 | #include <linux/module.h> |
32 | #include <linux/pci.h> | 32 | #include <linux/pci.h> |
33 | #include <linux/eeprom_93cx6.h> | 33 | #include <linux/eeprom_93cx6.h> |
34 | #include <linux/slab.h> | ||
34 | 35 | ||
35 | #include "rt2x00.h" | 36 | #include "rt2x00.h" |
36 | #include "rt2x00pci.h" | 37 | #include "rt2x00pci.h" |
diff --git a/drivers/net/wireless/rt2x00/rt2500pci.c b/drivers/net/wireless/rt2x00/rt2500pci.c index 52bbcf1bd17c..2a73f593aab0 100644 --- a/drivers/net/wireless/rt2x00/rt2500pci.c +++ b/drivers/net/wireless/rt2x00/rt2500pci.c | |||
@@ -31,6 +31,7 @@ | |||
31 | #include <linux/module.h> | 31 | #include <linux/module.h> |
32 | #include <linux/pci.h> | 32 | #include <linux/pci.h> |
33 | #include <linux/eeprom_93cx6.h> | 33 | #include <linux/eeprom_93cx6.h> |
34 | #include <linux/slab.h> | ||
34 | 35 | ||
35 | #include "rt2x00.h" | 36 | #include "rt2x00.h" |
36 | #include "rt2x00pci.h" | 37 | #include "rt2x00pci.h" |
diff --git a/drivers/net/wireless/rt2x00/rt2500usb.c b/drivers/net/wireless/rt2x00/rt2500usb.c index 13444b6b3e37..8ebb705fe106 100644 --- a/drivers/net/wireless/rt2x00/rt2500usb.c +++ b/drivers/net/wireless/rt2x00/rt2500usb.c | |||
@@ -29,6 +29,7 @@ | |||
29 | #include <linux/init.h> | 29 | #include <linux/init.h> |
30 | #include <linux/kernel.h> | 30 | #include <linux/kernel.h> |
31 | #include <linux/module.h> | 31 | #include <linux/module.h> |
32 | #include <linux/slab.h> | ||
32 | #include <linux/usb.h> | 33 | #include <linux/usb.h> |
33 | 34 | ||
34 | #include "rt2x00.h" | 35 | #include "rt2x00.h" |
diff --git a/drivers/net/wireless/rt2x00/rt2800lib.c b/drivers/net/wireless/rt2x00/rt2800lib.c index 326fce78489d..c015ce9fdd09 100644 --- a/drivers/net/wireless/rt2x00/rt2800lib.c +++ b/drivers/net/wireless/rt2x00/rt2800lib.c | |||
@@ -35,6 +35,7 @@ | |||
35 | 35 | ||
36 | #include <linux/kernel.h> | 36 | #include <linux/kernel.h> |
37 | #include <linux/module.h> | 37 | #include <linux/module.h> |
38 | #include <linux/slab.h> | ||
38 | 39 | ||
39 | #include "rt2x00.h" | 40 | #include "rt2x00.h" |
40 | #if defined(CONFIG_RT2X00_LIB_USB) || defined(CONFIG_RT2X00_LIB_USB_MODULE) | 41 | #if defined(CONFIG_RT2X00_LIB_USB) || defined(CONFIG_RT2X00_LIB_USB_MODULE) |
diff --git a/drivers/net/wireless/rt2x00/rt2x00debug.c b/drivers/net/wireless/rt2x00/rt2x00debug.c index 28a1c46ec4eb..9569fb4e5bc5 100644 --- a/drivers/net/wireless/rt2x00/rt2x00debug.c +++ b/drivers/net/wireless/rt2x00/rt2x00debug.c | |||
@@ -28,6 +28,7 @@ | |||
28 | #include <linux/module.h> | 28 | #include <linux/module.h> |
29 | #include <linux/poll.h> | 29 | #include <linux/poll.h> |
30 | #include <linux/sched.h> | 30 | #include <linux/sched.h> |
31 | #include <linux/slab.h> | ||
31 | #include <linux/uaccess.h> | 32 | #include <linux/uaccess.h> |
32 | 33 | ||
33 | #include "rt2x00.h" | 34 | #include "rt2x00.h" |
diff --git a/drivers/net/wireless/rt2x00/rt2x00dev.c b/drivers/net/wireless/rt2x00/rt2x00dev.c index dd5ab8fe2321..eda73ba735a6 100644 --- a/drivers/net/wireless/rt2x00/rt2x00dev.c +++ b/drivers/net/wireless/rt2x00/rt2x00dev.c | |||
@@ -25,6 +25,7 @@ | |||
25 | 25 | ||
26 | #include <linux/kernel.h> | 26 | #include <linux/kernel.h> |
27 | #include <linux/module.h> | 27 | #include <linux/module.h> |
28 | #include <linux/slab.h> | ||
28 | 29 | ||
29 | #include "rt2x00.h" | 30 | #include "rt2x00.h" |
30 | #include "rt2x00lib.h" | 31 | #include "rt2x00lib.h" |
diff --git a/drivers/net/wireless/rt2x00/rt2x00pci.c b/drivers/net/wireless/rt2x00/rt2x00pci.c index 047123b766fc..cf3f1c0c4382 100644 --- a/drivers/net/wireless/rt2x00/rt2x00pci.c +++ b/drivers/net/wireless/rt2x00/rt2x00pci.c | |||
@@ -27,6 +27,7 @@ | |||
27 | #include <linux/kernel.h> | 27 | #include <linux/kernel.h> |
28 | #include <linux/module.h> | 28 | #include <linux/module.h> |
29 | #include <linux/pci.h> | 29 | #include <linux/pci.h> |
30 | #include <linux/slab.h> | ||
30 | 31 | ||
31 | #include "rt2x00.h" | 32 | #include "rt2x00.h" |
32 | #include "rt2x00pci.h" | 33 | #include "rt2x00pci.h" |
diff --git a/drivers/net/wireless/rt2x00/rt2x00queue.c b/drivers/net/wireless/rt2x00/rt2x00queue.c index 5b6b789cad3d..a0bd36fc4d2e 100644 --- a/drivers/net/wireless/rt2x00/rt2x00queue.c +++ b/drivers/net/wireless/rt2x00/rt2x00queue.c | |||
@@ -24,6 +24,7 @@ | |||
24 | Abstract: rt2x00 queue specific routines. | 24 | Abstract: rt2x00 queue specific routines. |
25 | */ | 25 | */ |
26 | 26 | ||
27 | #include <linux/slab.h> | ||
27 | #include <linux/kernel.h> | 28 | #include <linux/kernel.h> |
28 | #include <linux/module.h> | 29 | #include <linux/module.h> |
29 | #include <linux/dma-mapping.h> | 30 | #include <linux/dma-mapping.h> |
diff --git a/drivers/net/wireless/rt2x00/rt2x00soc.c b/drivers/net/wireless/rt2x00/rt2x00soc.c index 111c0ff5c6c7..fc98063de71d 100644 --- a/drivers/net/wireless/rt2x00/rt2x00soc.c +++ b/drivers/net/wireless/rt2x00/rt2x00soc.c | |||
@@ -28,6 +28,7 @@ | |||
28 | #include <linux/kernel.h> | 28 | #include <linux/kernel.h> |
29 | #include <linux/module.h> | 29 | #include <linux/module.h> |
30 | #include <linux/platform_device.h> | 30 | #include <linux/platform_device.h> |
31 | #include <linux/slab.h> | ||
31 | 32 | ||
32 | #include "rt2x00.h" | 33 | #include "rt2x00.h" |
33 | #include "rt2x00soc.h" | 34 | #include "rt2x00soc.h" |
diff --git a/drivers/net/wireless/rt2x00/rt2x00usb.c b/drivers/net/wireless/rt2x00/rt2x00usb.c index 0a751e73aa0f..f9a7f8b17411 100644 --- a/drivers/net/wireless/rt2x00/rt2x00usb.c +++ b/drivers/net/wireless/rt2x00/rt2x00usb.c | |||
@@ -25,6 +25,7 @@ | |||
25 | 25 | ||
26 | #include <linux/kernel.h> | 26 | #include <linux/kernel.h> |
27 | #include <linux/module.h> | 27 | #include <linux/module.h> |
28 | #include <linux/slab.h> | ||
28 | #include <linux/usb.h> | 29 | #include <linux/usb.h> |
29 | #include <linux/bug.h> | 30 | #include <linux/bug.h> |
30 | 31 | ||
diff --git a/drivers/net/wireless/rt2x00/rt61pci.c b/drivers/net/wireless/rt2x00/rt61pci.c index 177472742172..432e75f960b7 100644 --- a/drivers/net/wireless/rt2x00/rt61pci.c +++ b/drivers/net/wireless/rt2x00/rt61pci.c | |||
@@ -30,6 +30,7 @@ | |||
30 | #include <linux/init.h> | 30 | #include <linux/init.h> |
31 | #include <linux/kernel.h> | 31 | #include <linux/kernel.h> |
32 | #include <linux/module.h> | 32 | #include <linux/module.h> |
33 | #include <linux/slab.h> | ||
33 | #include <linux/pci.h> | 34 | #include <linux/pci.h> |
34 | #include <linux/eeprom_93cx6.h> | 35 | #include <linux/eeprom_93cx6.h> |
35 | 36 | ||
diff --git a/drivers/net/wireless/rt2x00/rt73usb.c b/drivers/net/wireless/rt2x00/rt73usb.c index 290d70bc5d22..bb58d797fb72 100644 --- a/drivers/net/wireless/rt2x00/rt73usb.c +++ b/drivers/net/wireless/rt2x00/rt73usb.c | |||
@@ -30,6 +30,7 @@ | |||
30 | #include <linux/init.h> | 30 | #include <linux/init.h> |
31 | #include <linux/kernel.h> | 31 | #include <linux/kernel.h> |
32 | #include <linux/module.h> | 32 | #include <linux/module.h> |
33 | #include <linux/slab.h> | ||
33 | #include <linux/usb.h> | 34 | #include <linux/usb.h> |
34 | 35 | ||
35 | #include "rt2x00.h" | 36 | #include "rt2x00.h" |
diff --git a/drivers/net/wireless/rtl818x/rtl8180_dev.c b/drivers/net/wireless/rtl818x/rtl8180_dev.c index fb8a62f2b9b4..6b46329b732f 100644 --- a/drivers/net/wireless/rtl818x/rtl8180_dev.c +++ b/drivers/net/wireless/rtl818x/rtl8180_dev.c | |||
@@ -17,6 +17,7 @@ | |||
17 | 17 | ||
18 | #include <linux/init.h> | 18 | #include <linux/init.h> |
19 | #include <linux/pci.h> | 19 | #include <linux/pci.h> |
20 | #include <linux/slab.h> | ||
20 | #include <linux/delay.h> | 21 | #include <linux/delay.h> |
21 | #include <linux/etherdevice.h> | 22 | #include <linux/etherdevice.h> |
22 | #include <linux/eeprom_93cx6.h> | 23 | #include <linux/eeprom_93cx6.h> |
diff --git a/drivers/net/wireless/rtl818x/rtl8187_dev.c b/drivers/net/wireless/rtl818x/rtl8187_dev.c index 441d817ed489..738921fda027 100644 --- a/drivers/net/wireless/rtl818x/rtl8187_dev.c +++ b/drivers/net/wireless/rtl818x/rtl8187_dev.c | |||
@@ -22,6 +22,7 @@ | |||
22 | 22 | ||
23 | #include <linux/init.h> | 23 | #include <linux/init.h> |
24 | #include <linux/usb.h> | 24 | #include <linux/usb.h> |
25 | #include <linux/slab.h> | ||
25 | #include <linux/delay.h> | 26 | #include <linux/delay.h> |
26 | #include <linux/etherdevice.h> | 27 | #include <linux/etherdevice.h> |
27 | #include <linux/eeprom_93cx6.h> | 28 | #include <linux/eeprom_93cx6.h> |
diff --git a/drivers/net/wireless/wl12xx/wl1251_acx.c b/drivers/net/wireless/wl12xx/wl1251_acx.c index beff084040b5..91891f928070 100644 --- a/drivers/net/wireless/wl12xx/wl1251_acx.c +++ b/drivers/net/wireless/wl12xx/wl1251_acx.c | |||
@@ -1,6 +1,7 @@ | |||
1 | #include "wl1251_acx.h" | 1 | #include "wl1251_acx.h" |
2 | 2 | ||
3 | #include <linux/module.h> | 3 | #include <linux/module.h> |
4 | #include <linux/slab.h> | ||
4 | #include <linux/crc7.h> | 5 | #include <linux/crc7.h> |
5 | 6 | ||
6 | #include "wl1251.h" | 7 | #include "wl1251.h" |
diff --git a/drivers/net/wireless/wl12xx/wl1251_boot.c b/drivers/net/wireless/wl12xx/wl1251_boot.c index acb334184d70..2545123931e8 100644 --- a/drivers/net/wireless/wl12xx/wl1251_boot.c +++ b/drivers/net/wireless/wl12xx/wl1251_boot.c | |||
@@ -22,6 +22,7 @@ | |||
22 | */ | 22 | */ |
23 | 23 | ||
24 | #include <linux/gpio.h> | 24 | #include <linux/gpio.h> |
25 | #include <linux/slab.h> | ||
25 | 26 | ||
26 | #include "wl1251_reg.h" | 27 | #include "wl1251_reg.h" |
27 | #include "wl1251_boot.h" | 28 | #include "wl1251_boot.h" |
diff --git a/drivers/net/wireless/wl12xx/wl1251_cmd.c b/drivers/net/wireless/wl12xx/wl1251_cmd.c index 0320b478bb3f..a37b30cef489 100644 --- a/drivers/net/wireless/wl12xx/wl1251_cmd.c +++ b/drivers/net/wireless/wl12xx/wl1251_cmd.c | |||
@@ -1,6 +1,7 @@ | |||
1 | #include "wl1251_cmd.h" | 1 | #include "wl1251_cmd.h" |
2 | 2 | ||
3 | #include <linux/module.h> | 3 | #include <linux/module.h> |
4 | #include <linux/slab.h> | ||
4 | #include <linux/crc7.h> | 5 | #include <linux/crc7.h> |
5 | 6 | ||
6 | #include "wl1251.h" | 7 | #include "wl1251.h" |
diff --git a/drivers/net/wireless/wl12xx/wl1251_debugfs.c b/drivers/net/wireless/wl12xx/wl1251_debugfs.c index 05e4d68eb4cc..5e4465ac08fa 100644 --- a/drivers/net/wireless/wl12xx/wl1251_debugfs.c +++ b/drivers/net/wireless/wl12xx/wl1251_debugfs.c | |||
@@ -24,6 +24,7 @@ | |||
24 | #include "wl1251_debugfs.h" | 24 | #include "wl1251_debugfs.h" |
25 | 25 | ||
26 | #include <linux/skbuff.h> | 26 | #include <linux/skbuff.h> |
27 | #include <linux/slab.h> | ||
27 | 28 | ||
28 | #include "wl1251.h" | 29 | #include "wl1251.h" |
29 | #include "wl1251_acx.h" | 30 | #include "wl1251_acx.h" |
diff --git a/drivers/net/wireless/wl12xx/wl1251_init.c b/drivers/net/wireless/wl12xx/wl1251_init.c index 5aad56ea7153..b538bdd7b320 100644 --- a/drivers/net/wireless/wl12xx/wl1251_init.c +++ b/drivers/net/wireless/wl12xx/wl1251_init.c | |||
@@ -23,6 +23,7 @@ | |||
23 | 23 | ||
24 | #include <linux/kernel.h> | 24 | #include <linux/kernel.h> |
25 | #include <linux/module.h> | 25 | #include <linux/module.h> |
26 | #include <linux/slab.h> | ||
26 | 27 | ||
27 | #include "wl1251_init.h" | 28 | #include "wl1251_init.h" |
28 | #include "wl12xx_80211.h" | 29 | #include "wl12xx_80211.h" |
diff --git a/drivers/net/wireless/wl12xx/wl1251_main.c b/drivers/net/wireless/wl12xx/wl1251_main.c index 0155653b7105..56b78e4b0198 100644 --- a/drivers/net/wireless/wl12xx/wl1251_main.c +++ b/drivers/net/wireless/wl12xx/wl1251_main.c | |||
@@ -29,6 +29,7 @@ | |||
29 | #include <linux/crc32.h> | 29 | #include <linux/crc32.h> |
30 | #include <linux/etherdevice.h> | 30 | #include <linux/etherdevice.h> |
31 | #include <linux/vmalloc.h> | 31 | #include <linux/vmalloc.h> |
32 | #include <linux/slab.h> | ||
32 | 33 | ||
33 | #include "wl1251.h" | 34 | #include "wl1251.h" |
34 | #include "wl12xx_80211.h" | 35 | #include "wl12xx_80211.h" |
diff --git a/drivers/net/wireless/wl12xx/wl1251_rx.c b/drivers/net/wireless/wl12xx/wl1251_rx.c index b56732226cc0..6f229e0990f4 100644 --- a/drivers/net/wireless/wl12xx/wl1251_rx.c +++ b/drivers/net/wireless/wl12xx/wl1251_rx.c | |||
@@ -23,6 +23,7 @@ | |||
23 | */ | 23 | */ |
24 | 24 | ||
25 | #include <linux/skbuff.h> | 25 | #include <linux/skbuff.h> |
26 | #include <linux/gfp.h> | ||
26 | #include <net/mac80211.h> | 27 | #include <net/mac80211.h> |
27 | 28 | ||
28 | #include "wl1251.h" | 29 | #include "wl1251.h" |
diff --git a/drivers/net/wireless/wl12xx/wl1251_spi.c b/drivers/net/wireless/wl12xx/wl1251_spi.c index 9cc8c323830f..3bfb59bd4635 100644 --- a/drivers/net/wireless/wl12xx/wl1251_spi.c +++ b/drivers/net/wireless/wl12xx/wl1251_spi.c | |||
@@ -23,6 +23,7 @@ | |||
23 | 23 | ||
24 | #include <linux/irq.h> | 24 | #include <linux/irq.h> |
25 | #include <linux/module.h> | 25 | #include <linux/module.h> |
26 | #include <linux/slab.h> | ||
26 | #include <linux/crc7.h> | 27 | #include <linux/crc7.h> |
27 | #include <linux/spi/spi.h> | 28 | #include <linux/spi/spi.h> |
28 | #include <linux/spi/wl12xx.h> | 29 | #include <linux/spi/wl12xx.h> |
diff --git a/drivers/net/wireless/wl12xx/wl1271_acx.c b/drivers/net/wireless/wl12xx/wl1271_acx.c index 7e337cea9905..adaa3f2485c3 100644 --- a/drivers/net/wireless/wl12xx/wl1271_acx.c +++ b/drivers/net/wireless/wl12xx/wl1271_acx.c | |||
@@ -27,6 +27,7 @@ | |||
27 | #include <linux/platform_device.h> | 27 | #include <linux/platform_device.h> |
28 | #include <linux/crc7.h> | 28 | #include <linux/crc7.h> |
29 | #include <linux/spi/spi.h> | 29 | #include <linux/spi/spi.h> |
30 | #include <linux/slab.h> | ||
30 | 31 | ||
31 | #include "wl1271.h" | 32 | #include "wl1271.h" |
32 | #include "wl12xx_80211.h" | 33 | #include "wl12xx_80211.h" |
diff --git a/drivers/net/wireless/wl12xx/wl1271_boot.c b/drivers/net/wireless/wl12xx/wl1271_boot.c index 41c6affbee29..1937859d74eb 100644 --- a/drivers/net/wireless/wl12xx/wl1271_boot.c +++ b/drivers/net/wireless/wl12xx/wl1271_boot.c | |||
@@ -22,6 +22,7 @@ | |||
22 | */ | 22 | */ |
23 | 23 | ||
24 | #include <linux/gpio.h> | 24 | #include <linux/gpio.h> |
25 | #include <linux/slab.h> | ||
25 | 26 | ||
26 | #include "wl1271_acx.h" | 27 | #include "wl1271_acx.h" |
27 | #include "wl1271_reg.h" | 28 | #include "wl1271_reg.h" |
diff --git a/drivers/net/wireless/wl12xx/wl1271_cmd.c b/drivers/net/wireless/wl12xx/wl1271_cmd.c index d005729e0312..92254d0d6c4c 100644 --- a/drivers/net/wireless/wl12xx/wl1271_cmd.c +++ b/drivers/net/wireless/wl12xx/wl1271_cmd.c | |||
@@ -27,6 +27,7 @@ | |||
27 | #include <linux/spi/spi.h> | 27 | #include <linux/spi/spi.h> |
28 | #include <linux/etherdevice.h> | 28 | #include <linux/etherdevice.h> |
29 | #include <linux/ieee80211.h> | 29 | #include <linux/ieee80211.h> |
30 | #include <linux/slab.h> | ||
30 | 31 | ||
31 | #include "wl1271.h" | 32 | #include "wl1271.h" |
32 | #include "wl1271_reg.h" | 33 | #include "wl1271_reg.h" |
diff --git a/drivers/net/wireless/wl12xx/wl1271_debugfs.c b/drivers/net/wireless/wl12xx/wl1271_debugfs.c index 3c0f5b1ac272..c239ef4d0b8d 100644 --- a/drivers/net/wireless/wl12xx/wl1271_debugfs.c +++ b/drivers/net/wireless/wl12xx/wl1271_debugfs.c | |||
@@ -24,6 +24,7 @@ | |||
24 | #include "wl1271_debugfs.h" | 24 | #include "wl1271_debugfs.h" |
25 | 25 | ||
26 | #include <linux/skbuff.h> | 26 | #include <linux/skbuff.h> |
27 | #include <linux/slab.h> | ||
27 | 28 | ||
28 | #include "wl1271.h" | 29 | #include "wl1271.h" |
29 | #include "wl1271_acx.h" | 30 | #include "wl1271_acx.h" |
diff --git a/drivers/net/wireless/wl12xx/wl1271_init.c b/drivers/net/wireless/wl12xx/wl1271_init.c index d9335fc2a575..e3806b035d0c 100644 --- a/drivers/net/wireless/wl12xx/wl1271_init.c +++ b/drivers/net/wireless/wl12xx/wl1271_init.c | |||
@@ -23,6 +23,7 @@ | |||
23 | 23 | ||
24 | #include <linux/kernel.h> | 24 | #include <linux/kernel.h> |
25 | #include <linux/module.h> | 25 | #include <linux/module.h> |
26 | #include <linux/slab.h> | ||
26 | 27 | ||
27 | #include "wl1271_init.h" | 28 | #include "wl1271_init.h" |
28 | #include "wl12xx_80211.h" | 29 | #include "wl12xx_80211.h" |
diff --git a/drivers/net/wireless/wl12xx/wl1271_main.c b/drivers/net/wireless/wl12xx/wl1271_main.c index 6036d0206fec..aa970b759dd5 100644 --- a/drivers/net/wireless/wl12xx/wl1271_main.c +++ b/drivers/net/wireless/wl12xx/wl1271_main.c | |||
@@ -30,6 +30,7 @@ | |||
30 | #include <linux/vmalloc.h> | 30 | #include <linux/vmalloc.h> |
31 | #include <linux/inetdevice.h> | 31 | #include <linux/inetdevice.h> |
32 | #include <linux/platform_device.h> | 32 | #include <linux/platform_device.h> |
33 | #include <linux/slab.h> | ||
33 | 34 | ||
34 | #include "wl1271.h" | 35 | #include "wl1271.h" |
35 | #include "wl12xx_80211.h" | 36 | #include "wl12xx_80211.h" |
diff --git a/drivers/net/wireless/wl12xx/wl1271_rx.c b/drivers/net/wireless/wl12xx/wl1271_rx.c index b824c6cc2cc5..6f1b732ae43b 100644 --- a/drivers/net/wireless/wl12xx/wl1271_rx.c +++ b/drivers/net/wireless/wl12xx/wl1271_rx.c | |||
@@ -21,6 +21,8 @@ | |||
21 | * | 21 | * |
22 | */ | 22 | */ |
23 | 23 | ||
24 | #include <linux/gfp.h> | ||
25 | |||
24 | #include "wl1271.h" | 26 | #include "wl1271.h" |
25 | #include "wl1271_acx.h" | 27 | #include "wl1271_acx.h" |
26 | #include "wl1271_reg.h" | 28 | #include "wl1271_reg.h" |
diff --git a/drivers/net/wireless/wl12xx/wl1271_spi.c b/drivers/net/wireless/wl12xx/wl1271_spi.c index f44b05a32b0d..256e84ad0baf 100644 --- a/drivers/net/wireless/wl12xx/wl1271_spi.c +++ b/drivers/net/wireless/wl12xx/wl1271_spi.c | |||
@@ -26,6 +26,7 @@ | |||
26 | #include <linux/crc7.h> | 26 | #include <linux/crc7.h> |
27 | #include <linux/spi/spi.h> | 27 | #include <linux/spi/spi.h> |
28 | #include <linux/spi/wl12xx.h> | 28 | #include <linux/spi/wl12xx.h> |
29 | #include <linux/slab.h> | ||
29 | 30 | ||
30 | #include "wl1271.h" | 31 | #include "wl1271.h" |
31 | #include "wl12xx_80211.h" | 32 | #include "wl12xx_80211.h" |
diff --git a/drivers/net/wireless/wl12xx/wl1271_testmode.c b/drivers/net/wireless/wl12xx/wl1271_testmode.c index 2401e6035d51..554deb4d024e 100644 --- a/drivers/net/wireless/wl12xx/wl1271_testmode.c +++ b/drivers/net/wireless/wl12xx/wl1271_testmode.c | |||
@@ -22,6 +22,7 @@ | |||
22 | */ | 22 | */ |
23 | #include "wl1271_testmode.h" | 23 | #include "wl1271_testmode.h" |
24 | 24 | ||
25 | #include <linux/slab.h> | ||
25 | #include <net/genetlink.h> | 26 | #include <net/genetlink.h> |
26 | 27 | ||
27 | #include "wl1271.h" | 28 | #include "wl1271.h" |
diff --git a/drivers/net/wireless/zd1201.c b/drivers/net/wireless/zd1201.c index 74530b2d672c..1e2b684f8ed4 100644 --- a/drivers/net/wireless/zd1201.c +++ b/drivers/net/wireless/zd1201.c | |||
@@ -14,6 +14,7 @@ | |||
14 | 14 | ||
15 | #include <linux/module.h> | 15 | #include <linux/module.h> |
16 | #include <linux/usb.h> | 16 | #include <linux/usb.h> |
17 | #include <linux/slab.h> | ||
17 | #include <linux/netdevice.h> | 18 | #include <linux/netdevice.h> |
18 | #include <linux/etherdevice.h> | 19 | #include <linux/etherdevice.h> |
19 | #include <linux/wireless.h> | 20 | #include <linux/wireless.h> |
diff --git a/drivers/net/wireless/zd1211rw/zd_chip.c b/drivers/net/wireless/zd1211rw/zd_chip.c index 7ca95c414fa8..b2af3c549bb3 100644 --- a/drivers/net/wireless/zd1211rw/zd_chip.c +++ b/drivers/net/wireless/zd1211rw/zd_chip.c | |||
@@ -25,6 +25,7 @@ | |||
25 | 25 | ||
26 | #include <linux/kernel.h> | 26 | #include <linux/kernel.h> |
27 | #include <linux/errno.h> | 27 | #include <linux/errno.h> |
28 | #include <linux/slab.h> | ||
28 | 29 | ||
29 | #include "zd_def.h" | 30 | #include "zd_def.h" |
30 | #include "zd_chip.h" | 31 | #include "zd_chip.h" |
diff --git a/drivers/net/wireless/zd1211rw/zd_mac.c b/drivers/net/wireless/zd1211rw/zd_mac.c index 6d95e4d74d7f..b0b666019a93 100644 --- a/drivers/net/wireless/zd1211rw/zd_mac.c +++ b/drivers/net/wireless/zd1211rw/zd_mac.c | |||
@@ -22,6 +22,7 @@ | |||
22 | 22 | ||
23 | #include <linux/netdevice.h> | 23 | #include <linux/netdevice.h> |
24 | #include <linux/etherdevice.h> | 24 | #include <linux/etherdevice.h> |
25 | #include <linux/slab.h> | ||
25 | #include <linux/usb.h> | 26 | #include <linux/usb.h> |
26 | #include <linux/jiffies.h> | 27 | #include <linux/jiffies.h> |
27 | #include <net/ieee80211_radiotap.h> | 28 | #include <net/ieee80211_radiotap.h> |
diff --git a/drivers/net/wireless/zd1211rw/zd_rf_uw2453.c b/drivers/net/wireless/zd1211rw/zd_rf_uw2453.c index 439799b84876..9e74eb1b67d5 100644 --- a/drivers/net/wireless/zd1211rw/zd_rf_uw2453.c +++ b/drivers/net/wireless/zd1211rw/zd_rf_uw2453.c | |||
@@ -19,6 +19,7 @@ | |||
19 | */ | 19 | */ |
20 | 20 | ||
21 | #include <linux/kernel.h> | 21 | #include <linux/kernel.h> |
22 | #include <linux/slab.h> | ||
22 | 23 | ||
23 | #include "zd_rf.h" | 24 | #include "zd_rf.h" |
24 | #include "zd_usb.h" | 25 | #include "zd_usb.h" |
diff --git a/drivers/net/wireless/zd1211rw/zd_usb.c b/drivers/net/wireless/zd1211rw/zd_usb.c index 442fc1117326..d91ad1a612af 100644 --- a/drivers/net/wireless/zd1211rw/zd_usb.c +++ b/drivers/net/wireless/zd1211rw/zd_usb.c | |||
@@ -24,6 +24,7 @@ | |||
24 | #include <linux/firmware.h> | 24 | #include <linux/firmware.h> |
25 | #include <linux/device.h> | 25 | #include <linux/device.h> |
26 | #include <linux/errno.h> | 26 | #include <linux/errno.h> |
27 | #include <linux/slab.h> | ||
27 | #include <linux/skbuff.h> | 28 | #include <linux/skbuff.h> |
28 | #include <linux/usb.h> | 29 | #include <linux/usb.h> |
29 | #include <linux/workqueue.h> | 30 | #include <linux/workqueue.h> |