diff options
Diffstat (limited to 'drivers/net')
73 files changed, 165 insertions, 95 deletions
diff --git a/drivers/net/au1000_eth.c b/drivers/net/au1000_eth.c index fdf5937233fc..04f63c77071d 100644 --- a/drivers/net/au1000_eth.c +++ b/drivers/net/au1000_eth.c | |||
@@ -721,7 +721,7 @@ static inline void update_rx_stats(struct net_device *dev, u32 status) | |||
721 | ps->rx_errors++; | 721 | ps->rx_errors++; |
722 | if (status & RX_MISSED_FRAME) | 722 | if (status & RX_MISSED_FRAME) |
723 | ps->rx_missed_errors++; | 723 | ps->rx_missed_errors++; |
724 | if (status & (RX_OVERLEN | RX_OVERLEN | RX_LEN_ERROR)) | 724 | if (status & (RX_OVERLEN | RX_RUNT | RX_LEN_ERROR)) |
725 | ps->rx_length_errors++; | 725 | ps->rx_length_errors++; |
726 | if (status & RX_CRC_ERROR) | 726 | if (status & RX_CRC_ERROR) |
727 | ps->rx_crc_errors++; | 727 | ps->rx_crc_errors++; |
@@ -794,8 +794,6 @@ static int au1000_rx(struct net_device *dev) | |||
794 | printk("rx len error\n"); | 794 | printk("rx len error\n"); |
795 | if (status & RX_U_CNTRL_FRAME) | 795 | if (status & RX_U_CNTRL_FRAME) |
796 | printk("rx u control frame\n"); | 796 | printk("rx u control frame\n"); |
797 | if (status & RX_MISSED_FRAME) | ||
798 | printk("rx miss\n"); | ||
799 | } | 797 | } |
800 | } | 798 | } |
801 | prxd->buff_stat = (u32)(pDB->dma_addr | RX_DMA_ENABLE); | 799 | prxd->buff_stat = (u32)(pDB->dma_addr | RX_DMA_ENABLE); |
diff --git a/drivers/net/benet/be_cmds.c b/drivers/net/benet/be_cmds.c index 79d35d122c08..89876ade5e33 100644 --- a/drivers/net/benet/be_cmds.c +++ b/drivers/net/benet/be_cmds.c | |||
@@ -1129,7 +1129,6 @@ int be_cmd_write_flashrom(struct be_adapter *adapter, struct be_dma_mem *cmd, | |||
1129 | spin_lock_bh(&adapter->mcc_lock); | 1129 | spin_lock_bh(&adapter->mcc_lock); |
1130 | 1130 | ||
1131 | wrb = wrb_from_mccq(adapter); | 1131 | wrb = wrb_from_mccq(adapter); |
1132 | req = embedded_payload(wrb); | ||
1133 | sge = nonembedded_sgl(wrb); | 1132 | sge = nonembedded_sgl(wrb); |
1134 | 1133 | ||
1135 | be_wrb_hdr_prepare(wrb, cmd->size, false, 1); | 1134 | be_wrb_hdr_prepare(wrb, cmd->size, false, 1); |
diff --git a/drivers/net/benet/be_cmds.h b/drivers/net/benet/be_cmds.h index 8b4c2cb9ad62..a86f917f85f4 100644 --- a/drivers/net/benet/be_cmds.h +++ b/drivers/net/benet/be_cmds.h | |||
@@ -62,7 +62,7 @@ enum { | |||
62 | MCC_STATUS_QUEUE_FLUSHING = 0x4, | 62 | MCC_STATUS_QUEUE_FLUSHING = 0x4, |
63 | /* The command is completing with a DMA error */ | 63 | /* The command is completing with a DMA error */ |
64 | MCC_STATUS_DMA_FAILED = 0x5, | 64 | MCC_STATUS_DMA_FAILED = 0x5, |
65 | MCC_STATUS_NOT_SUPPORTED = 0x66 | 65 | MCC_STATUS_NOT_SUPPORTED = 66 |
66 | }; | 66 | }; |
67 | 67 | ||
68 | #define CQE_STATUS_COMPL_MASK 0xFFFF | 68 | #define CQE_STATUS_COMPL_MASK 0xFFFF |
diff --git a/drivers/net/benet/be_ethtool.c b/drivers/net/benet/be_ethtool.c index 11445df3dbc0..cda5bf2fc50a 100644 --- a/drivers/net/benet/be_ethtool.c +++ b/drivers/net/benet/be_ethtool.c | |||
@@ -358,7 +358,7 @@ const struct ethtool_ops be_ethtool_ops = { | |||
358 | .get_rx_csum = be_get_rx_csum, | 358 | .get_rx_csum = be_get_rx_csum, |
359 | .set_rx_csum = be_set_rx_csum, | 359 | .set_rx_csum = be_set_rx_csum, |
360 | .get_tx_csum = ethtool_op_get_tx_csum, | 360 | .get_tx_csum = ethtool_op_get_tx_csum, |
361 | .set_tx_csum = ethtool_op_set_tx_csum, | 361 | .set_tx_csum = ethtool_op_set_tx_hw_csum, |
362 | .get_sg = ethtool_op_get_sg, | 362 | .get_sg = ethtool_op_get_sg, |
363 | .set_sg = ethtool_op_set_sg, | 363 | .set_sg = ethtool_op_set_sg, |
364 | .get_tso = ethtool_op_get_tso, | 364 | .get_tso = ethtool_op_get_tso, |
diff --git a/drivers/net/benet/be_main.c b/drivers/net/benet/be_main.c index 2f9b50156e0c..6d5e81f7046f 100644 --- a/drivers/net/benet/be_main.c +++ b/drivers/net/benet/be_main.c | |||
@@ -197,7 +197,7 @@ void netdev_stats_update(struct be_adapter *adapter) | |||
197 | /* no space available in linux */ | 197 | /* no space available in linux */ |
198 | dev_stats->tx_dropped = 0; | 198 | dev_stats->tx_dropped = 0; |
199 | 199 | ||
200 | dev_stats->multicast = port_stats->tx_multicastframes; | 200 | dev_stats->multicast = port_stats->rx_multicast_frames; |
201 | dev_stats->collisions = 0; | 201 | dev_stats->collisions = 0; |
202 | 202 | ||
203 | /* detailed tx_errors */ | 203 | /* detailed tx_errors */ |
@@ -1899,8 +1899,8 @@ static void be_netdev_init(struct net_device *netdev) | |||
1899 | struct be_adapter *adapter = netdev_priv(netdev); | 1899 | struct be_adapter *adapter = netdev_priv(netdev); |
1900 | 1900 | ||
1901 | netdev->features |= NETIF_F_SG | NETIF_F_HW_VLAN_RX | NETIF_F_TSO | | 1901 | netdev->features |= NETIF_F_SG | NETIF_F_HW_VLAN_RX | NETIF_F_TSO | |
1902 | NETIF_F_HW_VLAN_TX | NETIF_F_HW_VLAN_FILTER | NETIF_F_IP_CSUM | | 1902 | NETIF_F_HW_VLAN_TX | NETIF_F_HW_VLAN_FILTER | NETIF_F_HW_CSUM | |
1903 | NETIF_F_IPV6_CSUM | NETIF_F_GRO; | 1903 | NETIF_F_GRO; |
1904 | 1904 | ||
1905 | netdev->flags |= IFF_MULTICAST; | 1905 | netdev->flags |= IFF_MULTICAST; |
1906 | 1906 | ||
diff --git a/drivers/net/bonding/bond_sysfs.c b/drivers/net/bonding/bond_sysfs.c index ff449de6f3c0..8762a27a2a18 100644 --- a/drivers/net/bonding/bond_sysfs.c +++ b/drivers/net/bonding/bond_sysfs.c | |||
@@ -22,6 +22,7 @@ | |||
22 | #include <linux/kernel.h> | 22 | #include <linux/kernel.h> |
23 | #include <linux/module.h> | 23 | #include <linux/module.h> |
24 | #include <linux/device.h> | 24 | #include <linux/device.h> |
25 | #include <linux/sched.h> | ||
25 | #include <linux/sysdev.h> | 26 | #include <linux/sysdev.h> |
26 | #include <linux/fs.h> | 27 | #include <linux/fs.h> |
27 | #include <linux/types.h> | 28 | #include <linux/types.h> |
diff --git a/drivers/net/depca.c b/drivers/net/depca.c index 9686c1fa28f1..7a3bdac84abe 100644 --- a/drivers/net/depca.c +++ b/drivers/net/depca.c | |||
@@ -237,6 +237,7 @@ | |||
237 | 237 | ||
238 | #include <linux/module.h> | 238 | #include <linux/module.h> |
239 | #include <linux/kernel.h> | 239 | #include <linux/kernel.h> |
240 | #include <linux/sched.h> | ||
240 | #include <linux/string.h> | 241 | #include <linux/string.h> |
241 | #include <linux/errno.h> | 242 | #include <linux/errno.h> |
242 | #include <linux/ioport.h> | 243 | #include <linux/ioport.h> |
diff --git a/drivers/net/e100.c b/drivers/net/e100.c index 679965c2bb86..5d2f48f02251 100644 --- a/drivers/net/e100.c +++ b/drivers/net/e100.c | |||
@@ -151,6 +151,7 @@ | |||
151 | #include <linux/moduleparam.h> | 151 | #include <linux/moduleparam.h> |
152 | #include <linux/kernel.h> | 152 | #include <linux/kernel.h> |
153 | #include <linux/types.h> | 153 | #include <linux/types.h> |
154 | #include <linux/sched.h> | ||
154 | #include <linux/slab.h> | 155 | #include <linux/slab.h> |
155 | #include <linux/delay.h> | 156 | #include <linux/delay.h> |
156 | #include <linux/init.h> | 157 | #include <linux/init.h> |
diff --git a/drivers/net/e1000e/82571.c b/drivers/net/e1000e/82571.c index b53b40ba88a8..d1e0563a67df 100644 --- a/drivers/net/e1000e/82571.c +++ b/drivers/net/e1000e/82571.c | |||
@@ -1803,7 +1803,7 @@ struct e1000_info e1000_82574_info = { | |||
1803 | | FLAG_HAS_AMT | 1803 | | FLAG_HAS_AMT |
1804 | | FLAG_HAS_CTRLEXT_ON_LOAD, | 1804 | | FLAG_HAS_CTRLEXT_ON_LOAD, |
1805 | .pba = 20, | 1805 | .pba = 20, |
1806 | .max_hw_frame_size = ETH_FRAME_LEN + ETH_FCS_LEN, | 1806 | .max_hw_frame_size = DEFAULT_JUMBO, |
1807 | .get_variants = e1000_get_variants_82571, | 1807 | .get_variants = e1000_get_variants_82571, |
1808 | .mac_ops = &e82571_mac_ops, | 1808 | .mac_ops = &e82571_mac_ops, |
1809 | .phy_ops = &e82_phy_ops_bm, | 1809 | .phy_ops = &e82_phy_ops_bm, |
@@ -1820,7 +1820,7 @@ struct e1000_info e1000_82583_info = { | |||
1820 | | FLAG_HAS_AMT | 1820 | | FLAG_HAS_AMT |
1821 | | FLAG_HAS_CTRLEXT_ON_LOAD, | 1821 | | FLAG_HAS_CTRLEXT_ON_LOAD, |
1822 | .pba = 20, | 1822 | .pba = 20, |
1823 | .max_hw_frame_size = DEFAULT_JUMBO, | 1823 | .max_hw_frame_size = ETH_FRAME_LEN + ETH_FCS_LEN, |
1824 | .get_variants = e1000_get_variants_82571, | 1824 | .get_variants = e1000_get_variants_82571, |
1825 | .mac_ops = &e82571_mac_ops, | 1825 | .mac_ops = &e82571_mac_ops, |
1826 | .phy_ops = &e82_phy_ops_bm, | 1826 | .phy_ops = &e82_phy_ops_bm, |
diff --git a/drivers/net/eql.c b/drivers/net/eql.c index d4d9a3eda695..f5b96cadeb25 100644 --- a/drivers/net/eql.c +++ b/drivers/net/eql.c | |||
@@ -111,6 +111,7 @@ | |||
111 | * Sorry, I had to rewrite most of this for 2.5.x -DaveM | 111 | * Sorry, I had to rewrite most of this for 2.5.x -DaveM |
112 | */ | 112 | */ |
113 | 113 | ||
114 | #include <linux/capability.h> | ||
114 | #include <linux/module.h> | 115 | #include <linux/module.h> |
115 | #include <linux/kernel.h> | 116 | #include <linux/kernel.h> |
116 | #include <linux/init.h> | 117 | #include <linux/init.h> |
diff --git a/drivers/net/ethoc.c b/drivers/net/ethoc.c index b7311bc00258..96f5b2a2d2c5 100644 --- a/drivers/net/ethoc.c +++ b/drivers/net/ethoc.c | |||
@@ -17,8 +17,13 @@ | |||
17 | #include <linux/mii.h> | 17 | #include <linux/mii.h> |
18 | #include <linux/phy.h> | 18 | #include <linux/phy.h> |
19 | #include <linux/platform_device.h> | 19 | #include <linux/platform_device.h> |
20 | #include <linux/sched.h> | ||
20 | #include <net/ethoc.h> | 21 | #include <net/ethoc.h> |
21 | 22 | ||
23 | static int buffer_size = 0x8000; /* 32 KBytes */ | ||
24 | module_param(buffer_size, int, 0); | ||
25 | MODULE_PARM_DESC(buffer_size, "DMA buffer allocation size"); | ||
26 | |||
22 | /* register offsets */ | 27 | /* register offsets */ |
23 | #define MODER 0x00 | 28 | #define MODER 0x00 |
24 | #define INT_SOURCE 0x04 | 29 | #define INT_SOURCE 0x04 |
@@ -167,6 +172,7 @@ | |||
167 | * struct ethoc - driver-private device structure | 172 | * struct ethoc - driver-private device structure |
168 | * @iobase: pointer to I/O memory region | 173 | * @iobase: pointer to I/O memory region |
169 | * @membase: pointer to buffer memory region | 174 | * @membase: pointer to buffer memory region |
175 | * @dma_alloc: dma allocated buffer size | ||
170 | * @num_tx: number of send buffers | 176 | * @num_tx: number of send buffers |
171 | * @cur_tx: last send buffer written | 177 | * @cur_tx: last send buffer written |
172 | * @dty_tx: last buffer actually sent | 178 | * @dty_tx: last buffer actually sent |
@@ -185,6 +191,7 @@ | |||
185 | struct ethoc { | 191 | struct ethoc { |
186 | void __iomem *iobase; | 192 | void __iomem *iobase; |
187 | void __iomem *membase; | 193 | void __iomem *membase; |
194 | int dma_alloc; | ||
188 | 195 | ||
189 | unsigned int num_tx; | 196 | unsigned int num_tx; |
190 | unsigned int cur_tx; | 197 | unsigned int cur_tx; |
@@ -284,7 +291,7 @@ static int ethoc_init_ring(struct ethoc *dev) | |||
284 | dev->cur_rx = 0; | 291 | dev->cur_rx = 0; |
285 | 292 | ||
286 | /* setup transmission buffers */ | 293 | /* setup transmission buffers */ |
287 | bd.addr = 0; | 294 | bd.addr = virt_to_phys(dev->membase); |
288 | bd.stat = TX_BD_IRQ | TX_BD_CRC; | 295 | bd.stat = TX_BD_IRQ | TX_BD_CRC; |
289 | 296 | ||
290 | for (i = 0; i < dev->num_tx; i++) { | 297 | for (i = 0; i < dev->num_tx; i++) { |
@@ -295,7 +302,6 @@ static int ethoc_init_ring(struct ethoc *dev) | |||
295 | bd.addr += ETHOC_BUFSIZ; | 302 | bd.addr += ETHOC_BUFSIZ; |
296 | } | 303 | } |
297 | 304 | ||
298 | bd.addr = dev->num_tx * ETHOC_BUFSIZ; | ||
299 | bd.stat = RX_BD_EMPTY | RX_BD_IRQ; | 305 | bd.stat = RX_BD_EMPTY | RX_BD_IRQ; |
300 | 306 | ||
301 | for (i = 0; i < dev->num_rx; i++) { | 307 | for (i = 0; i < dev->num_rx; i++) { |
@@ -400,8 +406,12 @@ static int ethoc_rx(struct net_device *dev, int limit) | |||
400 | if (ethoc_update_rx_stats(priv, &bd) == 0) { | 406 | if (ethoc_update_rx_stats(priv, &bd) == 0) { |
401 | int size = bd.stat >> 16; | 407 | int size = bd.stat >> 16; |
402 | struct sk_buff *skb = netdev_alloc_skb(dev, size); | 408 | struct sk_buff *skb = netdev_alloc_skb(dev, size); |
409 | |||
410 | size -= 4; /* strip the CRC */ | ||
411 | skb_reserve(skb, 2); /* align TCP/IP header */ | ||
412 | |||
403 | if (likely(skb)) { | 413 | if (likely(skb)) { |
404 | void *src = priv->membase + bd.addr; | 414 | void *src = phys_to_virt(bd.addr); |
405 | memcpy_fromio(skb_put(skb, size), src, size); | 415 | memcpy_fromio(skb_put(skb, size), src, size); |
406 | skb->protocol = eth_type_trans(skb, dev); | 416 | skb->protocol = eth_type_trans(skb, dev); |
407 | priv->stats.rx_packets++; | 417 | priv->stats.rx_packets++; |
@@ -653,9 +663,9 @@ static int ethoc_open(struct net_device *dev) | |||
653 | if (ret) | 663 | if (ret) |
654 | return ret; | 664 | return ret; |
655 | 665 | ||
656 | /* calculate the number of TX/RX buffers */ | 666 | /* calculate the number of TX/RX buffers, maximum 128 supported */ |
657 | num_bd = (dev->mem_end - dev->mem_start + 1) / ETHOC_BUFSIZ; | 667 | num_bd = min(128, (dev->mem_end - dev->mem_start + 1) / ETHOC_BUFSIZ); |
658 | priv->num_tx = min(min_tx, num_bd / 4); | 668 | priv->num_tx = max(min_tx, num_bd / 4); |
659 | priv->num_rx = num_bd - priv->num_tx; | 669 | priv->num_rx = num_bd - priv->num_tx; |
660 | ethoc_write(priv, TX_BD_NUM, priv->num_tx); | 670 | ethoc_write(priv, TX_BD_NUM, priv->num_tx); |
661 | 671 | ||
@@ -823,7 +833,7 @@ static netdev_tx_t ethoc_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
823 | else | 833 | else |
824 | bd.stat &= ~TX_BD_PAD; | 834 | bd.stat &= ~TX_BD_PAD; |
825 | 835 | ||
826 | dest = priv->membase + bd.addr; | 836 | dest = phys_to_virt(bd.addr); |
827 | memcpy_toio(dest, skb->data, skb->len); | 837 | memcpy_toio(dest, skb->data, skb->len); |
828 | 838 | ||
829 | bd.stat &= ~(TX_BD_STATS | TX_BD_LEN_MASK); | 839 | bd.stat &= ~(TX_BD_STATS | TX_BD_LEN_MASK); |
@@ -903,22 +913,19 @@ static int ethoc_probe(struct platform_device *pdev) | |||
903 | 913 | ||
904 | /* obtain buffer memory space */ | 914 | /* obtain buffer memory space */ |
905 | res = platform_get_resource(pdev, IORESOURCE_MEM, 1); | 915 | res = platform_get_resource(pdev, IORESOURCE_MEM, 1); |
906 | if (!res) { | 916 | if (res) { |
907 | dev_err(&pdev->dev, "cannot obtain memory space\n"); | 917 | mem = devm_request_mem_region(&pdev->dev, res->start, |
908 | ret = -ENXIO; | ||
909 | goto free; | ||
910 | } | ||
911 | |||
912 | mem = devm_request_mem_region(&pdev->dev, res->start, | ||
913 | res->end - res->start + 1, res->name); | 918 | res->end - res->start + 1, res->name); |
914 | if (!mem) { | 919 | if (!mem) { |
915 | dev_err(&pdev->dev, "cannot request memory space\n"); | 920 | dev_err(&pdev->dev, "cannot request memory space\n"); |
916 | ret = -ENXIO; | 921 | ret = -ENXIO; |
917 | goto free; | 922 | goto free; |
923 | } | ||
924 | |||
925 | netdev->mem_start = mem->start; | ||
926 | netdev->mem_end = mem->end; | ||
918 | } | 927 | } |
919 | 928 | ||
920 | netdev->mem_start = mem->start; | ||
921 | netdev->mem_end = mem->end; | ||
922 | 929 | ||
923 | /* obtain device IRQ number */ | 930 | /* obtain device IRQ number */ |
924 | res = platform_get_resource(pdev, IORESOURCE_IRQ, 0); | 931 | res = platform_get_resource(pdev, IORESOURCE_IRQ, 0); |
@@ -933,6 +940,7 @@ static int ethoc_probe(struct platform_device *pdev) | |||
933 | /* setup driver-private data */ | 940 | /* setup driver-private data */ |
934 | priv = netdev_priv(netdev); | 941 | priv = netdev_priv(netdev); |
935 | priv->netdev = netdev; | 942 | priv->netdev = netdev; |
943 | priv->dma_alloc = 0; | ||
936 | 944 | ||
937 | priv->iobase = devm_ioremap_nocache(&pdev->dev, netdev->base_addr, | 945 | priv->iobase = devm_ioremap_nocache(&pdev->dev, netdev->base_addr, |
938 | mmio->end - mmio->start + 1); | 946 | mmio->end - mmio->start + 1); |
@@ -942,12 +950,27 @@ static int ethoc_probe(struct platform_device *pdev) | |||
942 | goto error; | 950 | goto error; |
943 | } | 951 | } |
944 | 952 | ||
945 | priv->membase = devm_ioremap_nocache(&pdev->dev, netdev->mem_start, | 953 | if (netdev->mem_end) { |
946 | mem->end - mem->start + 1); | 954 | priv->membase = devm_ioremap_nocache(&pdev->dev, |
947 | if (!priv->membase) { | 955 | netdev->mem_start, mem->end - mem->start + 1); |
948 | dev_err(&pdev->dev, "cannot remap memory space\n"); | 956 | if (!priv->membase) { |
949 | ret = -ENXIO; | 957 | dev_err(&pdev->dev, "cannot remap memory space\n"); |
950 | goto error; | 958 | ret = -ENXIO; |
959 | goto error; | ||
960 | } | ||
961 | } else { | ||
962 | /* Allocate buffer memory */ | ||
963 | priv->membase = dma_alloc_coherent(NULL, | ||
964 | buffer_size, (void *)&netdev->mem_start, | ||
965 | GFP_KERNEL); | ||
966 | if (!priv->membase) { | ||
967 | dev_err(&pdev->dev, "cannot allocate %dB buffer\n", | ||
968 | buffer_size); | ||
969 | ret = -ENOMEM; | ||
970 | goto error; | ||
971 | } | ||
972 | netdev->mem_end = netdev->mem_start + buffer_size; | ||
973 | priv->dma_alloc = buffer_size; | ||
951 | } | 974 | } |
952 | 975 | ||
953 | /* Allow the platform setup code to pass in a MAC address. */ | 976 | /* Allow the platform setup code to pass in a MAC address. */ |
@@ -1034,6 +1057,9 @@ free_mdio: | |||
1034 | kfree(priv->mdio->irq); | 1057 | kfree(priv->mdio->irq); |
1035 | mdiobus_free(priv->mdio); | 1058 | mdiobus_free(priv->mdio); |
1036 | free: | 1059 | free: |
1060 | if (priv->dma_alloc) | ||
1061 | dma_free_coherent(NULL, priv->dma_alloc, priv->membase, | ||
1062 | netdev->mem_start); | ||
1037 | free_netdev(netdev); | 1063 | free_netdev(netdev); |
1038 | out: | 1064 | out: |
1039 | return ret; | 1065 | return ret; |
@@ -1059,7 +1085,9 @@ static int ethoc_remove(struct platform_device *pdev) | |||
1059 | kfree(priv->mdio->irq); | 1085 | kfree(priv->mdio->irq); |
1060 | mdiobus_free(priv->mdio); | 1086 | mdiobus_free(priv->mdio); |
1061 | } | 1087 | } |
1062 | 1088 | if (priv->dma_alloc) | |
1089 | dma_free_coherent(NULL, priv->dma_alloc, priv->membase, | ||
1090 | netdev->mem_start); | ||
1063 | unregister_netdev(netdev); | 1091 | unregister_netdev(netdev); |
1064 | free_netdev(netdev); | 1092 | free_netdev(netdev); |
1065 | } | 1093 | } |
diff --git a/drivers/net/ewrk3.c b/drivers/net/ewrk3.c index b2a5ec8f3721..dd4ba01fd92d 100644 --- a/drivers/net/ewrk3.c +++ b/drivers/net/ewrk3.c | |||
@@ -145,6 +145,7 @@ | |||
145 | 145 | ||
146 | #include <linux/module.h> | 146 | #include <linux/module.h> |
147 | #include <linux/kernel.h> | 147 | #include <linux/kernel.h> |
148 | #include <linux/sched.h> | ||
148 | #include <linux/string.h> | 149 | #include <linux/string.h> |
149 | #include <linux/errno.h> | 150 | #include <linux/errno.h> |
150 | #include <linux/ioport.h> | 151 | #include <linux/ioport.h> |
diff --git a/drivers/net/forcedeth.c b/drivers/net/forcedeth.c index 0a1c2bb27d4d..e1da4666f204 100644 --- a/drivers/net/forcedeth.c +++ b/drivers/net/forcedeth.c | |||
@@ -49,6 +49,7 @@ | |||
49 | #include <linux/netdevice.h> | 49 | #include <linux/netdevice.h> |
50 | #include <linux/etherdevice.h> | 50 | #include <linux/etherdevice.h> |
51 | #include <linux/delay.h> | 51 | #include <linux/delay.h> |
52 | #include <linux/sched.h> | ||
52 | #include <linux/spinlock.h> | 53 | #include <linux/spinlock.h> |
53 | #include <linux/ethtool.h> | 54 | #include <linux/ethtool.h> |
54 | #include <linux/timer.h> | 55 | #include <linux/timer.h> |
diff --git a/drivers/net/hamachi.c b/drivers/net/hamachi.c index 1d5064a09aca..f7519a594945 100644 --- a/drivers/net/hamachi.c +++ b/drivers/net/hamachi.c | |||
@@ -145,6 +145,7 @@ static int tx_params[MAX_UNITS] = {-1, -1, -1, -1, -1, -1, -1, -1}; | |||
145 | /* Time in jiffies before concluding the transmitter is hung. */ | 145 | /* Time in jiffies before concluding the transmitter is hung. */ |
146 | #define TX_TIMEOUT (5*HZ) | 146 | #define TX_TIMEOUT (5*HZ) |
147 | 147 | ||
148 | #include <linux/capability.h> | ||
148 | #include <linux/module.h> | 149 | #include <linux/module.h> |
149 | #include <linux/kernel.h> | 150 | #include <linux/kernel.h> |
150 | #include <linux/string.h> | 151 | #include <linux/string.h> |
diff --git a/drivers/net/hamradio/baycom_epp.c b/drivers/net/hamradio/baycom_epp.c index 7bcaf7c66243..e344c84c0ef9 100644 --- a/drivers/net/hamradio/baycom_epp.c +++ b/drivers/net/hamradio/baycom_epp.c | |||
@@ -44,6 +44,7 @@ | |||
44 | #include <linux/module.h> | 44 | #include <linux/module.h> |
45 | #include <linux/kernel.h> | 45 | #include <linux/kernel.h> |
46 | #include <linux/init.h> | 46 | #include <linux/init.h> |
47 | #include <linux/sched.h> | ||
47 | #include <linux/string.h> | 48 | #include <linux/string.h> |
48 | #include <linux/workqueue.h> | 49 | #include <linux/workqueue.h> |
49 | #include <linux/fs.h> | 50 | #include <linux/fs.h> |
diff --git a/drivers/net/hamradio/baycom_ser_fdx.c b/drivers/net/hamradio/baycom_ser_fdx.c index aa4488e871b2..ed60fd664273 100644 --- a/drivers/net/hamradio/baycom_ser_fdx.c +++ b/drivers/net/hamradio/baycom_ser_fdx.c | |||
@@ -71,6 +71,7 @@ | |||
71 | 71 | ||
72 | /*****************************************************************************/ | 72 | /*****************************************************************************/ |
73 | 73 | ||
74 | #include <linux/capability.h> | ||
74 | #include <linux/module.h> | 75 | #include <linux/module.h> |
75 | #include <linux/ioport.h> | 76 | #include <linux/ioport.h> |
76 | #include <linux/string.h> | 77 | #include <linux/string.h> |
diff --git a/drivers/net/hamradio/baycom_ser_hdx.c b/drivers/net/hamradio/baycom_ser_hdx.c index 88c593596020..1686f6dcbbce 100644 --- a/drivers/net/hamradio/baycom_ser_hdx.c +++ b/drivers/net/hamradio/baycom_ser_hdx.c | |||
@@ -61,6 +61,7 @@ | |||
61 | 61 | ||
62 | /*****************************************************************************/ | 62 | /*****************************************************************************/ |
63 | 63 | ||
64 | #include <linux/capability.h> | ||
64 | #include <linux/module.h> | 65 | #include <linux/module.h> |
65 | #include <linux/ioport.h> | 66 | #include <linux/ioport.h> |
66 | #include <linux/string.h> | 67 | #include <linux/string.h> |
diff --git a/drivers/net/hamradio/hdlcdrv.c b/drivers/net/hamradio/hdlcdrv.c index 0013c409782c..91c5790c9581 100644 --- a/drivers/net/hamradio/hdlcdrv.c +++ b/drivers/net/hamradio/hdlcdrv.c | |||
@@ -42,6 +42,7 @@ | |||
42 | 42 | ||
43 | /*****************************************************************************/ | 43 | /*****************************************************************************/ |
44 | 44 | ||
45 | #include <linux/capability.h> | ||
45 | #include <linux/module.h> | 46 | #include <linux/module.h> |
46 | #include <linux/types.h> | 47 | #include <linux/types.h> |
47 | #include <linux/net.h> | 48 | #include <linux/net.h> |
diff --git a/drivers/net/hp100.c b/drivers/net/hp100.c index a9a1a99f02dd..dd8665138062 100644 --- a/drivers/net/hp100.c +++ b/drivers/net/hp100.c | |||
@@ -98,6 +98,7 @@ | |||
98 | 98 | ||
99 | #include <linux/module.h> | 99 | #include <linux/module.h> |
100 | #include <linux/kernel.h> | 100 | #include <linux/kernel.h> |
101 | #include <linux/sched.h> | ||
101 | #include <linux/string.h> | 102 | #include <linux/string.h> |
102 | #include <linux/errno.h> | 103 | #include <linux/errno.h> |
103 | #include <linux/ioport.h> | 104 | #include <linux/ioport.h> |
diff --git a/drivers/net/igb/igb_ethtool.c b/drivers/net/igb/igb_ethtool.c index d004c359244c..deaea8fa1032 100644 --- a/drivers/net/igb/igb_ethtool.c +++ b/drivers/net/igb/igb_ethtool.c | |||
@@ -34,6 +34,7 @@ | |||
34 | #include <linux/interrupt.h> | 34 | #include <linux/interrupt.h> |
35 | #include <linux/if_ether.h> | 35 | #include <linux/if_ether.h> |
36 | #include <linux/ethtool.h> | 36 | #include <linux/ethtool.h> |
37 | #include <linux/sched.h> | ||
37 | 38 | ||
38 | #include "igb.h" | 39 | #include "igb.h" |
39 | 40 | ||
diff --git a/drivers/net/irda/toim3232-sir.c b/drivers/net/irda/toim3232-sir.c index fcf287b749db..99e1ec02a011 100644 --- a/drivers/net/irda/toim3232-sir.c +++ b/drivers/net/irda/toim3232-sir.c | |||
@@ -120,6 +120,7 @@ | |||
120 | #include <linux/module.h> | 120 | #include <linux/module.h> |
121 | #include <linux/delay.h> | 121 | #include <linux/delay.h> |
122 | #include <linux/init.h> | 122 | #include <linux/init.h> |
123 | #include <linux/sched.h> | ||
123 | 124 | ||
124 | #include <net/irda/irda.h> | 125 | #include <net/irda/irda.h> |
125 | 126 | ||
diff --git a/drivers/net/ixgbe/ixgbe_82599.c b/drivers/net/ixgbe/ixgbe_82599.c index 2ec58dcdb82b..34b04924c8a1 100644 --- a/drivers/net/ixgbe/ixgbe_82599.c +++ b/drivers/net/ixgbe/ixgbe_82599.c | |||
@@ -330,6 +330,8 @@ static enum ixgbe_media_type ixgbe_get_media_type_82599(struct ixgbe_hw *hw) | |||
330 | 330 | ||
331 | switch (hw->device_id) { | 331 | switch (hw->device_id) { |
332 | case IXGBE_DEV_ID_82599_KX4: | 332 | case IXGBE_DEV_ID_82599_KX4: |
333 | case IXGBE_DEV_ID_82599_KX4_MEZZ: | ||
334 | case IXGBE_DEV_ID_82599_COMBO_BACKPLANE: | ||
333 | case IXGBE_DEV_ID_82599_XAUI_LOM: | 335 | case IXGBE_DEV_ID_82599_XAUI_LOM: |
334 | /* Default device ID is mezzanine card KX/KX4 */ | 336 | /* Default device ID is mezzanine card KX/KX4 */ |
335 | media_type = ixgbe_media_type_backplane; | 337 | media_type = ixgbe_media_type_backplane; |
diff --git a/drivers/net/ixgbe/ixgbe_main.c b/drivers/net/ixgbe/ixgbe_main.c index 28fbb9d281f9..cbb143ca1eb8 100644 --- a/drivers/net/ixgbe/ixgbe_main.c +++ b/drivers/net/ixgbe/ixgbe_main.c | |||
@@ -97,8 +97,12 @@ static struct pci_device_id ixgbe_pci_tbl[] = { | |||
97 | board_82599 }, | 97 | board_82599 }, |
98 | {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_82599_SFP), | 98 | {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_82599_SFP), |
99 | board_82599 }, | 99 | board_82599 }, |
100 | {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_82599_KX4_MEZZ), | ||
101 | board_82599 }, | ||
100 | {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_82599_CX4), | 102 | {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_82599_CX4), |
101 | board_82599 }, | 103 | board_82599 }, |
104 | {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_82599_COMBO_BACKPLANE), | ||
105 | board_82599 }, | ||
102 | 106 | ||
103 | /* required last entry */ | 107 | /* required last entry */ |
104 | {0, } | 108 | {0, } |
diff --git a/drivers/net/ixgbe/ixgbe_type.h b/drivers/net/ixgbe/ixgbe_type.h index 7c93e923bf2e..ef4bdd58e016 100644 --- a/drivers/net/ixgbe/ixgbe_type.h +++ b/drivers/net/ixgbe/ixgbe_type.h | |||
@@ -49,9 +49,11 @@ | |||
49 | #define IXGBE_DEV_ID_82598_SR_DUAL_PORT_EM 0x10E1 | 49 | #define IXGBE_DEV_ID_82598_SR_DUAL_PORT_EM 0x10E1 |
50 | #define IXGBE_DEV_ID_82598EB_XF_LR 0x10F4 | 50 | #define IXGBE_DEV_ID_82598EB_XF_LR 0x10F4 |
51 | #define IXGBE_DEV_ID_82599_KX4 0x10F7 | 51 | #define IXGBE_DEV_ID_82599_KX4 0x10F7 |
52 | #define IXGBE_DEV_ID_82599_KX4_MEZZ 0x1514 | ||
52 | #define IXGBE_DEV_ID_82599_CX4 0x10F9 | 53 | #define IXGBE_DEV_ID_82599_CX4 0x10F9 |
53 | #define IXGBE_DEV_ID_82599_SFP 0x10FB | 54 | #define IXGBE_DEV_ID_82599_SFP 0x10FB |
54 | #define IXGBE_DEV_ID_82599_XAUI_LOM 0x10FC | 55 | #define IXGBE_DEV_ID_82599_XAUI_LOM 0x10FC |
56 | #define IXGBE_DEV_ID_82599_COMBO_BACKPLANE 0x10F8 | ||
55 | 57 | ||
56 | /* General Registers */ | 58 | /* General Registers */ |
57 | #define IXGBE_CTRL 0x00000 | 59 | #define IXGBE_CTRL 0x00000 |
diff --git a/drivers/net/mlx4/main.c b/drivers/net/mlx4/main.c index 3dd481e77f92..5dd7225b178e 100644 --- a/drivers/net/mlx4/main.c +++ b/drivers/net/mlx4/main.c | |||
@@ -1282,6 +1282,7 @@ static struct pci_device_id mlx4_pci_table[] = { | |||
1282 | { PCI_VDEVICE(MELLANOX, 0x6372) }, /* MT25458 ConnectX EN 10GBASE-T 10GigE */ | 1282 | { PCI_VDEVICE(MELLANOX, 0x6372) }, /* MT25458 ConnectX EN 10GBASE-T 10GigE */ |
1283 | { PCI_VDEVICE(MELLANOX, 0x675a) }, /* MT25458 ConnectX EN 10GBASE-T+Gen2 10GigE */ | 1283 | { PCI_VDEVICE(MELLANOX, 0x675a) }, /* MT25458 ConnectX EN 10GBASE-T+Gen2 10GigE */ |
1284 | { PCI_VDEVICE(MELLANOX, 0x6764) }, /* MT26468 ConnectX EN 10GigE PCIe gen2*/ | 1284 | { PCI_VDEVICE(MELLANOX, 0x6764) }, /* MT26468 ConnectX EN 10GigE PCIe gen2*/ |
1285 | { PCI_VDEVICE(MELLANOX, 0x676e) }, /* MT26478 ConnectX2 40GigE PCIe gen2 */ | ||
1285 | { 0, } | 1286 | { 0, } |
1286 | }; | 1287 | }; |
1287 | 1288 | ||
diff --git a/drivers/net/netxen/netxen_nic_main.c b/drivers/net/netxen/netxen_nic_main.c index b5aa974827e5..9b9eab107704 100644 --- a/drivers/net/netxen/netxen_nic_main.c +++ b/drivers/net/netxen/netxen_nic_main.c | |||
@@ -1714,7 +1714,7 @@ netxen_nic_xmit_frame(struct sk_buff *skb, struct net_device *netdev) | |||
1714 | /* 4 fragments per cmd des */ | 1714 | /* 4 fragments per cmd des */ |
1715 | no_of_desc = (frag_count + 3) >> 2; | 1715 | no_of_desc = (frag_count + 3) >> 2; |
1716 | 1716 | ||
1717 | if (unlikely(no_of_desc + 2) > netxen_tx_avail(tx_ring)) { | 1717 | if (unlikely(no_of_desc + 2 > netxen_tx_avail(tx_ring))) { |
1718 | netif_stop_queue(netdev); | 1718 | netif_stop_queue(netdev); |
1719 | return NETDEV_TX_BUSY; | 1719 | return NETDEV_TX_BUSY; |
1720 | } | 1720 | } |
diff --git a/drivers/net/ns83820.c b/drivers/net/ns83820.c index c594e1946476..57fd483dbb1f 100644 --- a/drivers/net/ns83820.c +++ b/drivers/net/ns83820.c | |||
@@ -111,6 +111,7 @@ | |||
111 | #include <linux/compiler.h> | 111 | #include <linux/compiler.h> |
112 | #include <linux/prefetch.h> | 112 | #include <linux/prefetch.h> |
113 | #include <linux/ethtool.h> | 113 | #include <linux/ethtool.h> |
114 | #include <linux/sched.h> | ||
114 | #include <linux/timer.h> | 115 | #include <linux/timer.h> |
115 | #include <linux/if_vlan.h> | 116 | #include <linux/if_vlan.h> |
116 | #include <linux/rtnetlink.h> | 117 | #include <linux/rtnetlink.h> |
diff --git a/drivers/net/pasemi_mac_ethtool.c b/drivers/net/pasemi_mac_ethtool.c index 064a4fe1dd90..28a86224879d 100644 --- a/drivers/net/pasemi_mac_ethtool.c +++ b/drivers/net/pasemi_mac_ethtool.c | |||
@@ -71,6 +71,9 @@ pasemi_mac_ethtool_get_settings(struct net_device *netdev, | |||
71 | struct pasemi_mac *mac = netdev_priv(netdev); | 71 | struct pasemi_mac *mac = netdev_priv(netdev); |
72 | struct phy_device *phydev = mac->phydev; | 72 | struct phy_device *phydev = mac->phydev; |
73 | 73 | ||
74 | if (!phydev) | ||
75 | return -EOPNOTSUPP; | ||
76 | |||
74 | return phy_ethtool_gset(phydev, cmd); | 77 | return phy_ethtool_gset(phydev, cmd); |
75 | } | 78 | } |
76 | 79 | ||
diff --git a/drivers/net/pcmcia/pcnet_cs.c b/drivers/net/pcmcia/pcnet_cs.c index 474876c879cb..bd3447f04902 100644 --- a/drivers/net/pcmcia/pcnet_cs.c +++ b/drivers/net/pcmcia/pcnet_cs.c | |||
@@ -1754,14 +1754,14 @@ static struct pcmcia_device_id pcnet_ids[] = { | |||
1754 | PCMCIA_PFC_DEVICE_CIS_PROD_ID12(0, "Psion Dacom", "Gold Card V34 Ethernet", 0xf5f025c2, 0x338e8155, "cis/PCMLM28.cis"), | 1754 | PCMCIA_PFC_DEVICE_CIS_PROD_ID12(0, "Psion Dacom", "Gold Card V34 Ethernet", 0xf5f025c2, 0x338e8155, "cis/PCMLM28.cis"), |
1755 | PCMCIA_PFC_DEVICE_CIS_PROD_ID12(0, "Psion Dacom", "Gold Card V34 Ethernet GSM", 0xf5f025c2, 0x4ae85d35, "cis/PCMLM28.cis"), | 1755 | PCMCIA_PFC_DEVICE_CIS_PROD_ID12(0, "Psion Dacom", "Gold Card V34 Ethernet GSM", 0xf5f025c2, 0x4ae85d35, "cis/PCMLM28.cis"), |
1756 | PCMCIA_PFC_DEVICE_CIS_PROD_ID12(0, "LINKSYS", "PCMLM28", 0xf7cb0b07, 0x66881874, "cis/PCMLM28.cis"), | 1756 | PCMCIA_PFC_DEVICE_CIS_PROD_ID12(0, "LINKSYS", "PCMLM28", 0xf7cb0b07, 0x66881874, "cis/PCMLM28.cis"), |
1757 | PCMCIA_MFC_DEVICE_CIS_PROD_ID12(0, "DAYNA COMMUNICATIONS", "LAN AND MODEM MULTIFUNCTION", 0x8fdf8f89, 0xdd5ed9e8, "DP83903.cis"), | 1757 | PCMCIA_MFC_DEVICE_CIS_PROD_ID12(0, "DAYNA COMMUNICATIONS", "LAN AND MODEM MULTIFUNCTION", 0x8fdf8f89, 0xdd5ed9e8, "cis/DP83903.cis"), |
1758 | PCMCIA_MFC_DEVICE_CIS_PROD_ID4(0, "NSC MF LAN/Modem", 0x58fc6056, "DP83903.cis"), | 1758 | PCMCIA_MFC_DEVICE_CIS_PROD_ID4(0, "NSC MF LAN/Modem", 0x58fc6056, "cis/DP83903.cis"), |
1759 | PCMCIA_MFC_DEVICE_CIS_MANF_CARD(0, 0x0175, 0x0000, "DP83903.cis"), | 1759 | PCMCIA_MFC_DEVICE_CIS_MANF_CARD(0, 0x0175, 0x0000, "cis/DP83903.cis"), |
1760 | PCMCIA_DEVICE_CIS_MANF_CARD(0xc00f, 0x0002, "cis/LA-PCM.cis"), | 1760 | PCMCIA_DEVICE_CIS_MANF_CARD(0xc00f, 0x0002, "cis/LA-PCM.cis"), |
1761 | PCMCIA_DEVICE_CIS_PROD_ID12("KTI", "PE520 PLUS", 0xad180345, 0x9d58d392, "PE520.cis"), | 1761 | PCMCIA_DEVICE_CIS_PROD_ID12("KTI", "PE520 PLUS", 0xad180345, 0x9d58d392, "PE520.cis"), |
1762 | PCMCIA_DEVICE_CIS_PROD_ID12("NDC", "Ethernet", 0x01c43ae1, 0x00b2e941, "NE2K.cis"), | 1762 | PCMCIA_DEVICE_CIS_PROD_ID12("NDC", "Ethernet", 0x01c43ae1, 0x00b2e941, "cis/NE2K.cis"), |
1763 | PCMCIA_DEVICE_CIS_PROD_ID12("PMX ", "PE-200", 0x34f3f1c8, 0x10b59f8c, "PE-200.cis"), | 1763 | PCMCIA_DEVICE_CIS_PROD_ID12("PMX ", "PE-200", 0x34f3f1c8, 0x10b59f8c, "PE-200.cis"), |
1764 | PCMCIA_DEVICE_CIS_PROD_ID12("TAMARACK", "Ethernet", 0xcf434fba, 0x00b2e941, "tamarack.cis"), | 1764 | PCMCIA_DEVICE_CIS_PROD_ID12("TAMARACK", "Ethernet", 0xcf434fba, 0x00b2e941, "cis/tamarack.cis"), |
1765 | PCMCIA_DEVICE_PROD_ID12("Ethernet", "CF Size PC Card", 0x00b2e941, 0x43ac239b), | 1765 | PCMCIA_DEVICE_PROD_ID12("Ethernet", "CF Size PC Card", 0x00b2e941, 0x43ac239b), |
1766 | PCMCIA_DEVICE_PROD_ID123("Fast Ethernet", "CF Size PC Card", "1.0", | 1766 | PCMCIA_DEVICE_PROD_ID123("Fast Ethernet", "CF Size PC Card", "1.0", |
1767 | 0xb4be14e3, 0x43ac239b, 0x0877b627), | 1767 | 0xb4be14e3, 0x43ac239b, 0x0877b627), |
diff --git a/drivers/net/pcnet32.c b/drivers/net/pcnet32.c index 6d28b18e7e28..c1b3f09f452c 100644 --- a/drivers/net/pcnet32.c +++ b/drivers/net/pcnet32.c | |||
@@ -31,6 +31,7 @@ static const char *const version = | |||
31 | 31 | ||
32 | #include <linux/module.h> | 32 | #include <linux/module.h> |
33 | #include <linux/kernel.h> | 33 | #include <linux/kernel.h> |
34 | #include <linux/sched.h> | ||
34 | #include <linux/string.h> | 35 | #include <linux/string.h> |
35 | #include <linux/errno.h> | 36 | #include <linux/errno.h> |
36 | #include <linux/ioport.h> | 37 | #include <linux/ioport.h> |
diff --git a/drivers/net/qlge/qlge.h b/drivers/net/qlge/qlge.h index 30d5585beeee..3ec6e85587a2 100644 --- a/drivers/net/qlge/qlge.h +++ b/drivers/net/qlge/qlge.h | |||
@@ -9,6 +9,7 @@ | |||
9 | 9 | ||
10 | #include <linux/pci.h> | 10 | #include <linux/pci.h> |
11 | #include <linux/netdevice.h> | 11 | #include <linux/netdevice.h> |
12 | #include <linux/rtnetlink.h> | ||
12 | 13 | ||
13 | /* | 14 | /* |
14 | * General definitions... | 15 | * General definitions... |
@@ -135,9 +136,9 @@ enum { | |||
135 | RST_FO_TFO = (1 << 0), | 136 | RST_FO_TFO = (1 << 0), |
136 | RST_FO_RR_MASK = 0x00060000, | 137 | RST_FO_RR_MASK = 0x00060000, |
137 | RST_FO_RR_CQ_CAM = 0x00000000, | 138 | RST_FO_RR_CQ_CAM = 0x00000000, |
138 | RST_FO_RR_DROP = 0x00000001, | 139 | RST_FO_RR_DROP = 0x00000002, |
139 | RST_FO_RR_DQ = 0x00000002, | 140 | RST_FO_RR_DQ = 0x00000004, |
140 | RST_FO_RR_RCV_FUNC_CQ = 0x00000003, | 141 | RST_FO_RR_RCV_FUNC_CQ = 0x00000006, |
141 | RST_FO_FRB = (1 << 12), | 142 | RST_FO_FRB = (1 << 12), |
142 | RST_FO_MOP = (1 << 13), | 143 | RST_FO_MOP = (1 << 13), |
143 | RST_FO_REG = (1 << 14), | 144 | RST_FO_REG = (1 << 14), |
@@ -1477,7 +1478,6 @@ struct ql_adapter { | |||
1477 | u32 mailbox_in; | 1478 | u32 mailbox_in; |
1478 | u32 mailbox_out; | 1479 | u32 mailbox_out; |
1479 | struct mbox_params idc_mbc; | 1480 | struct mbox_params idc_mbc; |
1480 | struct mutex mpi_mutex; | ||
1481 | 1481 | ||
1482 | int tx_ring_size; | 1482 | int tx_ring_size; |
1483 | int rx_ring_size; | 1483 | int rx_ring_size; |
diff --git a/drivers/net/qlge/qlge_ethtool.c b/drivers/net/qlge/qlge_ethtool.c index 68f9bd280f86..52073946bce3 100644 --- a/drivers/net/qlge/qlge_ethtool.c +++ b/drivers/net/qlge/qlge_ethtool.c | |||
@@ -45,7 +45,6 @@ static int ql_update_ring_coalescing(struct ql_adapter *qdev) | |||
45 | if (!netif_running(qdev->ndev)) | 45 | if (!netif_running(qdev->ndev)) |
46 | return status; | 46 | return status; |
47 | 47 | ||
48 | spin_lock(&qdev->hw_lock); | ||
49 | /* Skip the default queue, and update the outbound handler | 48 | /* Skip the default queue, and update the outbound handler |
50 | * queues if they changed. | 49 | * queues if they changed. |
51 | */ | 50 | */ |
@@ -92,7 +91,6 @@ static int ql_update_ring_coalescing(struct ql_adapter *qdev) | |||
92 | } | 91 | } |
93 | } | 92 | } |
94 | exit: | 93 | exit: |
95 | spin_unlock(&qdev->hw_lock); | ||
96 | return status; | 94 | return status; |
97 | } | 95 | } |
98 | 96 | ||
diff --git a/drivers/net/qlge/qlge_main.c b/drivers/net/qlge/qlge_main.c index 3d0efea32111..61680715cde0 100644 --- a/drivers/net/qlge/qlge_main.c +++ b/drivers/net/qlge/qlge_main.c | |||
@@ -34,7 +34,6 @@ | |||
34 | #include <linux/etherdevice.h> | 34 | #include <linux/etherdevice.h> |
35 | #include <linux/ethtool.h> | 35 | #include <linux/ethtool.h> |
36 | #include <linux/skbuff.h> | 36 | #include <linux/skbuff.h> |
37 | #include <linux/rtnetlink.h> | ||
38 | #include <linux/if_vlan.h> | 37 | #include <linux/if_vlan.h> |
39 | #include <linux/delay.h> | 38 | #include <linux/delay.h> |
40 | #include <linux/mm.h> | 39 | #include <linux/mm.h> |
@@ -1926,12 +1925,10 @@ static void ql_vlan_rx_add_vid(struct net_device *ndev, u16 vid) | |||
1926 | status = ql_sem_spinlock(qdev, SEM_MAC_ADDR_MASK); | 1925 | status = ql_sem_spinlock(qdev, SEM_MAC_ADDR_MASK); |
1927 | if (status) | 1926 | if (status) |
1928 | return; | 1927 | return; |
1929 | spin_lock(&qdev->hw_lock); | ||
1930 | if (ql_set_mac_addr_reg | 1928 | if (ql_set_mac_addr_reg |
1931 | (qdev, (u8 *) &enable_bit, MAC_ADDR_TYPE_VLAN, vid)) { | 1929 | (qdev, (u8 *) &enable_bit, MAC_ADDR_TYPE_VLAN, vid)) { |
1932 | QPRINTK(qdev, IFUP, ERR, "Failed to init vlan address.\n"); | 1930 | QPRINTK(qdev, IFUP, ERR, "Failed to init vlan address.\n"); |
1933 | } | 1931 | } |
1934 | spin_unlock(&qdev->hw_lock); | ||
1935 | ql_sem_unlock(qdev, SEM_MAC_ADDR_MASK); | 1932 | ql_sem_unlock(qdev, SEM_MAC_ADDR_MASK); |
1936 | } | 1933 | } |
1937 | 1934 | ||
@@ -1945,12 +1942,10 @@ static void ql_vlan_rx_kill_vid(struct net_device *ndev, u16 vid) | |||
1945 | if (status) | 1942 | if (status) |
1946 | return; | 1943 | return; |
1947 | 1944 | ||
1948 | spin_lock(&qdev->hw_lock); | ||
1949 | if (ql_set_mac_addr_reg | 1945 | if (ql_set_mac_addr_reg |
1950 | (qdev, (u8 *) &enable_bit, MAC_ADDR_TYPE_VLAN, vid)) { | 1946 | (qdev, (u8 *) &enable_bit, MAC_ADDR_TYPE_VLAN, vid)) { |
1951 | QPRINTK(qdev, IFUP, ERR, "Failed to clear vlan address.\n"); | 1947 | QPRINTK(qdev, IFUP, ERR, "Failed to clear vlan address.\n"); |
1952 | } | 1948 | } |
1953 | spin_unlock(&qdev->hw_lock); | ||
1954 | ql_sem_unlock(qdev, SEM_MAC_ADDR_MASK); | 1949 | ql_sem_unlock(qdev, SEM_MAC_ADDR_MASK); |
1955 | 1950 | ||
1956 | } | 1951 | } |
@@ -2001,15 +1996,17 @@ static irqreturn_t qlge_isr(int irq, void *dev_id) | |||
2001 | /* | 1996 | /* |
2002 | * Check MPI processor activity. | 1997 | * Check MPI processor activity. |
2003 | */ | 1998 | */ |
2004 | if (var & STS_PI) { | 1999 | if ((var & STS_PI) && |
2000 | (ql_read32(qdev, INTR_MASK) & INTR_MASK_PI)) { | ||
2005 | /* | 2001 | /* |
2006 | * We've got an async event or mailbox completion. | 2002 | * We've got an async event or mailbox completion. |
2007 | * Handle it and clear the source of the interrupt. | 2003 | * Handle it and clear the source of the interrupt. |
2008 | */ | 2004 | */ |
2009 | QPRINTK(qdev, INTR, ERR, "Got MPI processor interrupt.\n"); | 2005 | QPRINTK(qdev, INTR, ERR, "Got MPI processor interrupt.\n"); |
2010 | ql_disable_completion_interrupt(qdev, intr_context->intr); | 2006 | ql_disable_completion_interrupt(qdev, intr_context->intr); |
2011 | queue_delayed_work_on(smp_processor_id(), qdev->workqueue, | 2007 | ql_write32(qdev, INTR_MASK, (INTR_MASK_PI << 16)); |
2012 | &qdev->mpi_work, 0); | 2008 | queue_delayed_work_on(smp_processor_id(), |
2009 | qdev->workqueue, &qdev->mpi_work, 0); | ||
2013 | work_done++; | 2010 | work_done++; |
2014 | } | 2011 | } |
2015 | 2012 | ||
@@ -3585,7 +3582,6 @@ static void qlge_set_multicast_list(struct net_device *ndev) | |||
3585 | status = ql_sem_spinlock(qdev, SEM_RT_IDX_MASK); | 3582 | status = ql_sem_spinlock(qdev, SEM_RT_IDX_MASK); |
3586 | if (status) | 3583 | if (status) |
3587 | return; | 3584 | return; |
3588 | spin_lock(&qdev->hw_lock); | ||
3589 | /* | 3585 | /* |
3590 | * Set or clear promiscuous mode if a | 3586 | * Set or clear promiscuous mode if a |
3591 | * transition is taking place. | 3587 | * transition is taking place. |
@@ -3662,7 +3658,6 @@ static void qlge_set_multicast_list(struct net_device *ndev) | |||
3662 | } | 3658 | } |
3663 | } | 3659 | } |
3664 | exit: | 3660 | exit: |
3665 | spin_unlock(&qdev->hw_lock); | ||
3666 | ql_sem_unlock(qdev, SEM_RT_IDX_MASK); | 3661 | ql_sem_unlock(qdev, SEM_RT_IDX_MASK); |
3667 | } | 3662 | } |
3668 | 3663 | ||
@@ -3682,10 +3677,8 @@ static int qlge_set_mac_address(struct net_device *ndev, void *p) | |||
3682 | status = ql_sem_spinlock(qdev, SEM_MAC_ADDR_MASK); | 3677 | status = ql_sem_spinlock(qdev, SEM_MAC_ADDR_MASK); |
3683 | if (status) | 3678 | if (status) |
3684 | return status; | 3679 | return status; |
3685 | spin_lock(&qdev->hw_lock); | ||
3686 | status = ql_set_mac_addr_reg(qdev, (u8 *) ndev->dev_addr, | 3680 | status = ql_set_mac_addr_reg(qdev, (u8 *) ndev->dev_addr, |
3687 | MAC_ADDR_TYPE_CAM_MAC, qdev->func * MAX_CQ); | 3681 | MAC_ADDR_TYPE_CAM_MAC, qdev->func * MAX_CQ); |
3688 | spin_unlock(&qdev->hw_lock); | ||
3689 | if (status) | 3682 | if (status) |
3690 | QPRINTK(qdev, HW, ERR, "Failed to load MAC address.\n"); | 3683 | QPRINTK(qdev, HW, ERR, "Failed to load MAC address.\n"); |
3691 | ql_sem_unlock(qdev, SEM_MAC_ADDR_MASK); | 3684 | ql_sem_unlock(qdev, SEM_MAC_ADDR_MASK); |
@@ -3928,7 +3921,6 @@ static int __devinit ql_init_device(struct pci_dev *pdev, | |||
3928 | INIT_DELAYED_WORK(&qdev->mpi_work, ql_mpi_work); | 3921 | INIT_DELAYED_WORK(&qdev->mpi_work, ql_mpi_work); |
3929 | INIT_DELAYED_WORK(&qdev->mpi_port_cfg_work, ql_mpi_port_cfg_work); | 3922 | INIT_DELAYED_WORK(&qdev->mpi_port_cfg_work, ql_mpi_port_cfg_work); |
3930 | INIT_DELAYED_WORK(&qdev->mpi_idc_work, ql_mpi_idc_work); | 3923 | INIT_DELAYED_WORK(&qdev->mpi_idc_work, ql_mpi_idc_work); |
3931 | mutex_init(&qdev->mpi_mutex); | ||
3932 | init_completion(&qdev->ide_completion); | 3924 | init_completion(&qdev->ide_completion); |
3933 | 3925 | ||
3934 | if (!cards_found) { | 3926 | if (!cards_found) { |
diff --git a/drivers/net/qlge/qlge_mpi.c b/drivers/net/qlge/qlge_mpi.c index 6685bd97da91..c2e43073047e 100644 --- a/drivers/net/qlge/qlge_mpi.c +++ b/drivers/net/qlge/qlge_mpi.c | |||
@@ -472,7 +472,6 @@ static int ql_mailbox_command(struct ql_adapter *qdev, struct mbox_params *mbcp) | |||
472 | { | 472 | { |
473 | int status, count; | 473 | int status, count; |
474 | 474 | ||
475 | mutex_lock(&qdev->mpi_mutex); | ||
476 | 475 | ||
477 | /* Begin polled mode for MPI */ | 476 | /* Begin polled mode for MPI */ |
478 | ql_write32(qdev, INTR_MASK, (INTR_MASK_PI << 16)); | 477 | ql_write32(qdev, INTR_MASK, (INTR_MASK_PI << 16)); |
@@ -541,7 +540,6 @@ static int ql_mailbox_command(struct ql_adapter *qdev, struct mbox_params *mbcp) | |||
541 | status = -EIO; | 540 | status = -EIO; |
542 | } | 541 | } |
543 | end: | 542 | end: |
544 | mutex_unlock(&qdev->mpi_mutex); | ||
545 | /* End polled mode for MPI */ | 543 | /* End polled mode for MPI */ |
546 | ql_write32(qdev, INTR_MASK, (INTR_MASK_PI << 16) | INTR_MASK_PI); | 544 | ql_write32(qdev, INTR_MASK, (INTR_MASK_PI << 16) | INTR_MASK_PI); |
547 | return status; | 545 | return status; |
@@ -776,7 +774,9 @@ static int ql_idc_wait(struct ql_adapter *qdev) | |||
776 | static int ql_set_port_cfg(struct ql_adapter *qdev) | 774 | static int ql_set_port_cfg(struct ql_adapter *qdev) |
777 | { | 775 | { |
778 | int status; | 776 | int status; |
777 | rtnl_lock(); | ||
779 | status = ql_mb_set_port_cfg(qdev); | 778 | status = ql_mb_set_port_cfg(qdev); |
779 | rtnl_unlock(); | ||
780 | if (status) | 780 | if (status) |
781 | return status; | 781 | return status; |
782 | status = ql_idc_wait(qdev); | 782 | status = ql_idc_wait(qdev); |
@@ -797,7 +797,9 @@ void ql_mpi_port_cfg_work(struct work_struct *work) | |||
797 | container_of(work, struct ql_adapter, mpi_port_cfg_work.work); | 797 | container_of(work, struct ql_adapter, mpi_port_cfg_work.work); |
798 | int status; | 798 | int status; |
799 | 799 | ||
800 | rtnl_lock(); | ||
800 | status = ql_mb_get_port_cfg(qdev); | 801 | status = ql_mb_get_port_cfg(qdev); |
802 | rtnl_unlock(); | ||
801 | if (status) { | 803 | if (status) { |
802 | QPRINTK(qdev, DRV, ERR, | 804 | QPRINTK(qdev, DRV, ERR, |
803 | "Bug: Failed to get port config data.\n"); | 805 | "Bug: Failed to get port config data.\n"); |
@@ -855,7 +857,9 @@ void ql_mpi_idc_work(struct work_struct *work) | |||
855 | * needs to be set. | 857 | * needs to be set. |
856 | * */ | 858 | * */ |
857 | set_bit(QL_CAM_RT_SET, &qdev->flags); | 859 | set_bit(QL_CAM_RT_SET, &qdev->flags); |
860 | rtnl_lock(); | ||
858 | status = ql_mb_idc_ack(qdev); | 861 | status = ql_mb_idc_ack(qdev); |
862 | rtnl_unlock(); | ||
859 | if (status) { | 863 | if (status) { |
860 | QPRINTK(qdev, DRV, ERR, | 864 | QPRINTK(qdev, DRV, ERR, |
861 | "Bug: No pending IDC!\n"); | 865 | "Bug: No pending IDC!\n"); |
@@ -871,7 +875,7 @@ void ql_mpi_work(struct work_struct *work) | |||
871 | struct mbox_params *mbcp = &mbc; | 875 | struct mbox_params *mbcp = &mbc; |
872 | int err = 0; | 876 | int err = 0; |
873 | 877 | ||
874 | mutex_lock(&qdev->mpi_mutex); | 878 | rtnl_lock(); |
875 | 879 | ||
876 | while (ql_read32(qdev, STS) & STS_PI) { | 880 | while (ql_read32(qdev, STS) & STS_PI) { |
877 | memset(mbcp, 0, sizeof(struct mbox_params)); | 881 | memset(mbcp, 0, sizeof(struct mbox_params)); |
@@ -884,7 +888,7 @@ void ql_mpi_work(struct work_struct *work) | |||
884 | break; | 888 | break; |
885 | } | 889 | } |
886 | 890 | ||
887 | mutex_unlock(&qdev->mpi_mutex); | 891 | rtnl_unlock(); |
888 | ql_enable_completion_interrupt(qdev, 0); | 892 | ql_enable_completion_interrupt(qdev, 0); |
889 | } | 893 | } |
890 | 894 | ||
diff --git a/drivers/net/sb1000.c b/drivers/net/sb1000.c index ee366c5a8fa3..c9c70ab0cce0 100644 --- a/drivers/net/sb1000.c +++ b/drivers/net/sb1000.c | |||
@@ -36,6 +36,7 @@ static char version[] = "sb1000.c:v1.1.2 6/01/98 (fventuri@mediaone.net)\n"; | |||
36 | 36 | ||
37 | #include <linux/module.h> | 37 | #include <linux/module.h> |
38 | #include <linux/kernel.h> | 38 | #include <linux/kernel.h> |
39 | #include <linux/sched.h> | ||
39 | #include <linux/string.h> | 40 | #include <linux/string.h> |
40 | #include <linux/interrupt.h> | 41 | #include <linux/interrupt.h> |
41 | #include <linux/errno.h> | 42 | #include <linux/errno.h> |
diff --git a/drivers/net/sis900.c b/drivers/net/sis900.c index 97949d0a699b..c072f7f36acf 100644 --- a/drivers/net/sis900.c +++ b/drivers/net/sis900.c | |||
@@ -52,6 +52,7 @@ | |||
52 | #include <linux/module.h> | 52 | #include <linux/module.h> |
53 | #include <linux/moduleparam.h> | 53 | #include <linux/moduleparam.h> |
54 | #include <linux/kernel.h> | 54 | #include <linux/kernel.h> |
55 | #include <linux/sched.h> | ||
55 | #include <linux/string.h> | 56 | #include <linux/string.h> |
56 | #include <linux/timer.h> | 57 | #include <linux/timer.h> |
57 | #include <linux/errno.h> | 58 | #include <linux/errno.h> |
diff --git a/drivers/net/skfp/skfddi.c b/drivers/net/skfp/skfddi.c index 38a508b4aad9..b27156eaf267 100644 --- a/drivers/net/skfp/skfddi.c +++ b/drivers/net/skfp/skfddi.c | |||
@@ -73,6 +73,7 @@ static const char * const boot_msg = | |||
73 | 73 | ||
74 | /* Include files */ | 74 | /* Include files */ |
75 | 75 | ||
76 | #include <linux/capability.h> | ||
76 | #include <linux/module.h> | 77 | #include <linux/module.h> |
77 | #include <linux/kernel.h> | 78 | #include <linux/kernel.h> |
78 | #include <linux/errno.h> | 79 | #include <linux/errno.h> |
diff --git a/drivers/net/skge.c b/drivers/net/skge.c index 01f6811f1324..8f5414348e86 100644 --- a/drivers/net/skge.c +++ b/drivers/net/skge.c | |||
@@ -37,6 +37,7 @@ | |||
37 | #include <linux/crc32.h> | 37 | #include <linux/crc32.h> |
38 | #include <linux/dma-mapping.h> | 38 | #include <linux/dma-mapping.h> |
39 | #include <linux/debugfs.h> | 39 | #include <linux/debugfs.h> |
40 | #include <linux/sched.h> | ||
40 | #include <linux/seq_file.h> | 41 | #include <linux/seq_file.h> |
41 | #include <linux/mii.h> | 42 | #include <linux/mii.h> |
42 | #include <asm/irq.h> | 43 | #include <asm/irq.h> |
diff --git a/drivers/net/slip.c b/drivers/net/slip.c index e17c535a577e..fe3cebb984de 100644 --- a/drivers/net/slip.c +++ b/drivers/net/slip.c | |||
@@ -67,6 +67,7 @@ | |||
67 | #include <asm/system.h> | 67 | #include <asm/system.h> |
68 | #include <asm/uaccess.h> | 68 | #include <asm/uaccess.h> |
69 | #include <linux/bitops.h> | 69 | #include <linux/bitops.h> |
70 | #include <linux/sched.h> | ||
70 | #include <linux/string.h> | 71 | #include <linux/string.h> |
71 | #include <linux/mm.h> | 72 | #include <linux/mm.h> |
72 | #include <linux/interrupt.h> | 73 | #include <linux/interrupt.h> |
diff --git a/drivers/net/sungem.c b/drivers/net/sungem.c index 305ec3d783db..7019a0d1a82b 100644 --- a/drivers/net/sungem.c +++ b/drivers/net/sungem.c | |||
@@ -38,6 +38,7 @@ | |||
38 | #include <linux/interrupt.h> | 38 | #include <linux/interrupt.h> |
39 | #include <linux/ioport.h> | 39 | #include <linux/ioport.h> |
40 | #include <linux/in.h> | 40 | #include <linux/in.h> |
41 | #include <linux/sched.h> | ||
41 | #include <linux/slab.h> | 42 | #include <linux/slab.h> |
42 | #include <linux/string.h> | 43 | #include <linux/string.h> |
43 | #include <linux/delay.h> | 44 | #include <linux/delay.h> |
diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c index f09bc5dfe8b2..ba5d3fe753b6 100644 --- a/drivers/net/tg3.c +++ b/drivers/net/tg3.c | |||
@@ -902,11 +902,12 @@ static int tg3_mdio_read(struct mii_bus *bp, int mii_id, int reg) | |||
902 | struct tg3 *tp = bp->priv; | 902 | struct tg3 *tp = bp->priv; |
903 | u32 val; | 903 | u32 val; |
904 | 904 | ||
905 | if (tp->tg3_flags3 & TG3_FLG3_MDIOBUS_PAUSED) | 905 | spin_lock_bh(&tp->lock); |
906 | return -EAGAIN; | ||
907 | 906 | ||
908 | if (tg3_readphy(tp, reg, &val)) | 907 | if (tg3_readphy(tp, reg, &val)) |
909 | return -EIO; | 908 | val = -EIO; |
909 | |||
910 | spin_unlock_bh(&tp->lock); | ||
910 | 911 | ||
911 | return val; | 912 | return val; |
912 | } | 913 | } |
@@ -914,14 +915,16 @@ static int tg3_mdio_read(struct mii_bus *bp, int mii_id, int reg) | |||
914 | static int tg3_mdio_write(struct mii_bus *bp, int mii_id, int reg, u16 val) | 915 | static int tg3_mdio_write(struct mii_bus *bp, int mii_id, int reg, u16 val) |
915 | { | 916 | { |
916 | struct tg3 *tp = bp->priv; | 917 | struct tg3 *tp = bp->priv; |
918 | u32 ret = 0; | ||
917 | 919 | ||
918 | if (tp->tg3_flags3 & TG3_FLG3_MDIOBUS_PAUSED) | 920 | spin_lock_bh(&tp->lock); |
919 | return -EAGAIN; | ||
920 | 921 | ||
921 | if (tg3_writephy(tp, reg, val)) | 922 | if (tg3_writephy(tp, reg, val)) |
922 | return -EIO; | 923 | ret = -EIO; |
923 | 924 | ||
924 | return 0; | 925 | spin_unlock_bh(&tp->lock); |
926 | |||
927 | return ret; | ||
925 | } | 928 | } |
926 | 929 | ||
927 | static int tg3_mdio_reset(struct mii_bus *bp) | 930 | static int tg3_mdio_reset(struct mii_bus *bp) |
@@ -1011,12 +1014,6 @@ static void tg3_mdio_config_5785(struct tg3 *tp) | |||
1011 | 1014 | ||
1012 | static void tg3_mdio_start(struct tg3 *tp) | 1015 | static void tg3_mdio_start(struct tg3 *tp) |
1013 | { | 1016 | { |
1014 | if (tp->tg3_flags3 & TG3_FLG3_MDIOBUS_INITED) { | ||
1015 | mutex_lock(&tp->mdio_bus->mdio_lock); | ||
1016 | tp->tg3_flags3 &= ~TG3_FLG3_MDIOBUS_PAUSED; | ||
1017 | mutex_unlock(&tp->mdio_bus->mdio_lock); | ||
1018 | } | ||
1019 | |||
1020 | tp->mi_mode &= ~MAC_MI_MODE_AUTO_POLL; | 1017 | tp->mi_mode &= ~MAC_MI_MODE_AUTO_POLL; |
1021 | tw32_f(MAC_MI_MODE, tp->mi_mode); | 1018 | tw32_f(MAC_MI_MODE, tp->mi_mode); |
1022 | udelay(80); | 1019 | udelay(80); |
@@ -1041,15 +1038,6 @@ static void tg3_mdio_start(struct tg3 *tp) | |||
1041 | tg3_mdio_config_5785(tp); | 1038 | tg3_mdio_config_5785(tp); |
1042 | } | 1039 | } |
1043 | 1040 | ||
1044 | static void tg3_mdio_stop(struct tg3 *tp) | ||
1045 | { | ||
1046 | if (tp->tg3_flags3 & TG3_FLG3_MDIOBUS_INITED) { | ||
1047 | mutex_lock(&tp->mdio_bus->mdio_lock); | ||
1048 | tp->tg3_flags3 |= TG3_FLG3_MDIOBUS_PAUSED; | ||
1049 | mutex_unlock(&tp->mdio_bus->mdio_lock); | ||
1050 | } | ||
1051 | } | ||
1052 | |||
1053 | static int tg3_mdio_init(struct tg3 *tp) | 1041 | static int tg3_mdio_init(struct tg3 *tp) |
1054 | { | 1042 | { |
1055 | int i; | 1043 | int i; |
@@ -1141,7 +1129,6 @@ static void tg3_mdio_fini(struct tg3 *tp) | |||
1141 | tp->tg3_flags3 &= ~TG3_FLG3_MDIOBUS_INITED; | 1129 | tp->tg3_flags3 &= ~TG3_FLG3_MDIOBUS_INITED; |
1142 | mdiobus_unregister(tp->mdio_bus); | 1130 | mdiobus_unregister(tp->mdio_bus); |
1143 | mdiobus_free(tp->mdio_bus); | 1131 | mdiobus_free(tp->mdio_bus); |
1144 | tp->tg3_flags3 &= ~TG3_FLG3_MDIOBUS_PAUSED; | ||
1145 | } | 1132 | } |
1146 | } | 1133 | } |
1147 | 1134 | ||
@@ -1363,7 +1350,7 @@ static void tg3_adjust_link(struct net_device *dev) | |||
1363 | struct tg3 *tp = netdev_priv(dev); | 1350 | struct tg3 *tp = netdev_priv(dev); |
1364 | struct phy_device *phydev = tp->mdio_bus->phy_map[PHY_ADDR]; | 1351 | struct phy_device *phydev = tp->mdio_bus->phy_map[PHY_ADDR]; |
1365 | 1352 | ||
1366 | spin_lock(&tp->lock); | 1353 | spin_lock_bh(&tp->lock); |
1367 | 1354 | ||
1368 | mac_mode = tp->mac_mode & ~(MAC_MODE_PORT_MODE_MASK | | 1355 | mac_mode = tp->mac_mode & ~(MAC_MODE_PORT_MODE_MASK | |
1369 | MAC_MODE_HALF_DUPLEX); | 1356 | MAC_MODE_HALF_DUPLEX); |
@@ -1431,7 +1418,7 @@ static void tg3_adjust_link(struct net_device *dev) | |||
1431 | tp->link_config.active_speed = phydev->speed; | 1418 | tp->link_config.active_speed = phydev->speed; |
1432 | tp->link_config.active_duplex = phydev->duplex; | 1419 | tp->link_config.active_duplex = phydev->duplex; |
1433 | 1420 | ||
1434 | spin_unlock(&tp->lock); | 1421 | spin_unlock_bh(&tp->lock); |
1435 | 1422 | ||
1436 | if (linkmesg) | 1423 | if (linkmesg) |
1437 | tg3_link_report(tp); | 1424 | tg3_link_report(tp); |
@@ -6392,8 +6379,6 @@ static int tg3_chip_reset(struct tg3 *tp) | |||
6392 | 6379 | ||
6393 | tg3_nvram_lock(tp); | 6380 | tg3_nvram_lock(tp); |
6394 | 6381 | ||
6395 | tg3_mdio_stop(tp); | ||
6396 | |||
6397 | tg3_ape_lock(tp, TG3_APE_LOCK_GRC); | 6382 | tg3_ape_lock(tp, TG3_APE_LOCK_GRC); |
6398 | 6383 | ||
6399 | /* No matching tg3_nvram_unlock() after this because | 6384 | /* No matching tg3_nvram_unlock() after this because |
@@ -8698,6 +8683,8 @@ static int tg3_close(struct net_device *dev) | |||
8698 | 8683 | ||
8699 | del_timer_sync(&tp->timer); | 8684 | del_timer_sync(&tp->timer); |
8700 | 8685 | ||
8686 | tg3_phy_stop(tp); | ||
8687 | |||
8701 | tg3_full_lock(tp, 1); | 8688 | tg3_full_lock(tp, 1); |
8702 | #if 0 | 8689 | #if 0 |
8703 | tg3_dump_state(tp); | 8690 | tg3_dump_state(tp); |
diff --git a/drivers/net/tg3.h b/drivers/net/tg3.h index 524691cd9896..bab7940158e6 100644 --- a/drivers/net/tg3.h +++ b/drivers/net/tg3.h | |||
@@ -2748,7 +2748,6 @@ struct tg3 { | |||
2748 | #define TG3_FLG3_5701_DMA_BUG 0x00000008 | 2748 | #define TG3_FLG3_5701_DMA_BUG 0x00000008 |
2749 | #define TG3_FLG3_USE_PHYLIB 0x00000010 | 2749 | #define TG3_FLG3_USE_PHYLIB 0x00000010 |
2750 | #define TG3_FLG3_MDIOBUS_INITED 0x00000020 | 2750 | #define TG3_FLG3_MDIOBUS_INITED 0x00000020 |
2751 | #define TG3_FLG3_MDIOBUS_PAUSED 0x00000040 | ||
2752 | #define TG3_FLG3_PHY_CONNECTED 0x00000080 | 2751 | #define TG3_FLG3_PHY_CONNECTED 0x00000080 |
2753 | #define TG3_FLG3_RGMII_STD_IBND_DISABLE 0x00000100 | 2752 | #define TG3_FLG3_RGMII_STD_IBND_DISABLE 0x00000100 |
2754 | #define TG3_FLG3_RGMII_EXT_IBND_RX_EN 0x00000200 | 2753 | #define TG3_FLG3_RGMII_EXT_IBND_RX_EN 0x00000200 |
diff --git a/drivers/net/tokenring/ibmtr.c b/drivers/net/tokenring/ibmtr.c index 525bbc5b9c9d..36cb2423bcf1 100644 --- a/drivers/net/tokenring/ibmtr.c +++ b/drivers/net/tokenring/ibmtr.c | |||
@@ -108,6 +108,7 @@ in the event that chatty debug messages are desired - jjs 12/30/98 */ | |||
108 | #define IBMTR_DEBUG_MESSAGES 0 | 108 | #define IBMTR_DEBUG_MESSAGES 0 |
109 | 109 | ||
110 | #include <linux/module.h> | 110 | #include <linux/module.h> |
111 | #include <linux/sched.h> | ||
111 | 112 | ||
112 | #ifdef PCMCIA /* required for ibmtr_cs.c to build */ | 113 | #ifdef PCMCIA /* required for ibmtr_cs.c to build */ |
113 | #undef MODULE /* yes, really */ | 114 | #undef MODULE /* yes, really */ |
diff --git a/drivers/net/typhoon.c b/drivers/net/typhoon.c index d6d345229fe9..5921f5bdd764 100644 --- a/drivers/net/typhoon.c +++ b/drivers/net/typhoon.c | |||
@@ -108,6 +108,7 @@ static const int multicast_filter_limit = 32; | |||
108 | 108 | ||
109 | #include <linux/module.h> | 109 | #include <linux/module.h> |
110 | #include <linux/kernel.h> | 110 | #include <linux/kernel.h> |
111 | #include <linux/sched.h> | ||
111 | #include <linux/string.h> | 112 | #include <linux/string.h> |
112 | #include <linux/timer.h> | 113 | #include <linux/timer.h> |
113 | #include <linux/errno.h> | 114 | #include <linux/errno.h> |
diff --git a/drivers/net/usb/rndis_host.c b/drivers/net/usb/rndis_host.c index d032bba9bc4c..0caa8008c51c 100644 --- a/drivers/net/usb/rndis_host.c +++ b/drivers/net/usb/rndis_host.c | |||
@@ -418,6 +418,7 @@ generic_rndis_bind(struct usbnet *dev, struct usb_interface *intf, int flags) | |||
418 | goto halt_fail_and_release; | 418 | goto halt_fail_and_release; |
419 | } | 419 | } |
420 | memcpy(net->dev_addr, bp, ETH_ALEN); | 420 | memcpy(net->dev_addr, bp, ETH_ALEN); |
421 | memcpy(net->perm_addr, bp, ETH_ALEN); | ||
421 | 422 | ||
422 | /* set a nonzero filter to enable data transfers */ | 423 | /* set a nonzero filter to enable data transfers */ |
423 | memset(u.set, 0, sizeof *u.set); | 424 | memset(u.set, 0, sizeof *u.set); |
diff --git a/drivers/net/wan/cosa.c b/drivers/net/wan/cosa.c index 66360a2a14c2..e2c33c06190b 100644 --- a/drivers/net/wan/cosa.c +++ b/drivers/net/wan/cosa.c | |||
@@ -76,6 +76,7 @@ | |||
76 | 76 | ||
77 | #include <linux/module.h> | 77 | #include <linux/module.h> |
78 | #include <linux/kernel.h> | 78 | #include <linux/kernel.h> |
79 | #include <linux/sched.h> | ||
79 | #include <linux/slab.h> | 80 | #include <linux/slab.h> |
80 | #include <linux/poll.h> | 81 | #include <linux/poll.h> |
81 | #include <linux/fs.h> | 82 | #include <linux/fs.h> |
diff --git a/drivers/net/wan/cycx_x25.c b/drivers/net/wan/cycx_x25.c index 2573c18b6aa5..cd8cb95c5bd7 100644 --- a/drivers/net/wan/cycx_x25.c +++ b/drivers/net/wan/cycx_x25.c | |||
@@ -84,6 +84,7 @@ | |||
84 | #include <linux/kernel.h> /* printk(), and other useful stuff */ | 84 | #include <linux/kernel.h> /* printk(), and other useful stuff */ |
85 | #include <linux/module.h> | 85 | #include <linux/module.h> |
86 | #include <linux/string.h> /* inline memset(), etc. */ | 86 | #include <linux/string.h> /* inline memset(), etc. */ |
87 | #include <linux/sched.h> | ||
87 | #include <linux/slab.h> /* kmalloc(), kfree() */ | 88 | #include <linux/slab.h> /* kmalloc(), kfree() */ |
88 | #include <linux/stddef.h> /* offsetof(), etc. */ | 89 | #include <linux/stddef.h> /* offsetof(), etc. */ |
89 | #include <linux/wanrouter.h> /* WAN router definitions */ | 90 | #include <linux/wanrouter.h> /* WAN router definitions */ |
diff --git a/drivers/net/wan/dscc4.c b/drivers/net/wan/dscc4.c index 81c8aec9df92..07d00b4cf48a 100644 --- a/drivers/net/wan/dscc4.c +++ b/drivers/net/wan/dscc4.c | |||
@@ -81,6 +81,7 @@ | |||
81 | */ | 81 | */ |
82 | 82 | ||
83 | #include <linux/module.h> | 83 | #include <linux/module.h> |
84 | #include <linux/sched.h> | ||
84 | #include <linux/types.h> | 85 | #include <linux/types.h> |
85 | #include <linux/errno.h> | 86 | #include <linux/errno.h> |
86 | #include <linux/list.h> | 87 | #include <linux/list.h> |
diff --git a/drivers/net/wan/farsync.c b/drivers/net/wan/farsync.c index 3e90eb816181..beda387f2fc7 100644 --- a/drivers/net/wan/farsync.c +++ b/drivers/net/wan/farsync.c | |||
@@ -19,6 +19,7 @@ | |||
19 | #include <linux/kernel.h> | 19 | #include <linux/kernel.h> |
20 | #include <linux/version.h> | 20 | #include <linux/version.h> |
21 | #include <linux/pci.h> | 21 | #include <linux/pci.h> |
22 | #include <linux/sched.h> | ||
22 | #include <linux/ioport.h> | 23 | #include <linux/ioport.h> |
23 | #include <linux/init.h> | 24 | #include <linux/init.h> |
24 | #include <linux/if.h> | 25 | #include <linux/if.h> |
diff --git a/drivers/net/wireless/b43/pio.c b/drivers/net/wireless/b43/pio.c index 9c1397996e0a..5e87650b07fb 100644 --- a/drivers/net/wireless/b43/pio.c +++ b/drivers/net/wireless/b43/pio.c | |||
@@ -30,6 +30,7 @@ | |||
30 | #include "xmit.h" | 30 | #include "xmit.h" |
31 | 31 | ||
32 | #include <linux/delay.h> | 32 | #include <linux/delay.h> |
33 | #include <linux/sched.h> | ||
33 | 34 | ||
34 | 35 | ||
35 | static u16 generate_cookie(struct b43_pio_txqueue *q, | 36 | static u16 generate_cookie(struct b43_pio_txqueue *q, |
diff --git a/drivers/net/wireless/b43legacy/main.c b/drivers/net/wireless/b43legacy/main.c index 1d9223b3d4c4..4b60148a5e61 100644 --- a/drivers/net/wireless/b43legacy/main.c +++ b/drivers/net/wireless/b43legacy/main.c | |||
@@ -37,6 +37,7 @@ | |||
37 | #include <linux/firmware.h> | 37 | #include <linux/firmware.h> |
38 | #include <linux/wireless.h> | 38 | #include <linux/wireless.h> |
39 | #include <linux/workqueue.h> | 39 | #include <linux/workqueue.h> |
40 | #include <linux/sched.h> | ||
40 | #include <linux/skbuff.h> | 41 | #include <linux/skbuff.h> |
41 | #include <linux/dma-mapping.h> | 42 | #include <linux/dma-mapping.h> |
42 | #include <net/dst.h> | 43 | #include <net/dst.h> |
diff --git a/drivers/net/wireless/b43legacy/phy.c b/drivers/net/wireless/b43legacy/phy.c index 11319ec2d64a..aaf227203a98 100644 --- a/drivers/net/wireless/b43legacy/phy.c +++ b/drivers/net/wireless/b43legacy/phy.c | |||
@@ -31,6 +31,7 @@ | |||
31 | 31 | ||
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/types.h> | 35 | #include <linux/types.h> |
35 | 36 | ||
36 | #include "b43legacy.h" | 37 | #include "b43legacy.h" |
diff --git a/drivers/net/wireless/hostap/hostap_info.c b/drivers/net/wireless/hostap/hostap_info.c index 6fa14a4e4b53..4dfb40a84c96 100644 --- a/drivers/net/wireless/hostap/hostap_info.c +++ b/drivers/net/wireless/hostap/hostap_info.c | |||
@@ -1,6 +1,7 @@ | |||
1 | /* Host AP driver Info Frame processing (part of hostap.o module) */ | 1 | /* Host AP driver Info Frame processing (part of hostap.o module) */ |
2 | 2 | ||
3 | #include <linux/if_arp.h> | 3 | #include <linux/if_arp.h> |
4 | #include <linux/sched.h> | ||
4 | #include "hostap_wlan.h" | 5 | #include "hostap_wlan.h" |
5 | #include "hostap.h" | 6 | #include "hostap.h" |
6 | #include "hostap_ap.h" | 7 | #include "hostap_ap.h" |
diff --git a/drivers/net/wireless/hostap/hostap_ioctl.c b/drivers/net/wireless/hostap/hostap_ioctl.c index 3f2bda881a4f..9419cebca8a5 100644 --- a/drivers/net/wireless/hostap/hostap_ioctl.c +++ b/drivers/net/wireless/hostap/hostap_ioctl.c | |||
@@ -1,6 +1,7 @@ | |||
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/types.h> | 3 | #include <linux/types.h> |
4 | #include <linux/sched.h> | ||
4 | #include <linux/ethtool.h> | 5 | #include <linux/ethtool.h> |
5 | #include <linux/if_arp.h> | 6 | #include <linux/if_arp.h> |
6 | #include <net/lib80211.h> | 7 | #include <net/lib80211.h> |
diff --git a/drivers/net/wireless/ipw2x00/ipw2200.c b/drivers/net/wireless/ipw2x00/ipw2200.c index 8d58e6ed4e7d..827824d45de9 100644 --- a/drivers/net/wireless/ipw2x00/ipw2200.c +++ b/drivers/net/wireless/ipw2x00/ipw2200.c | |||
@@ -30,6 +30,7 @@ | |||
30 | 30 | ||
31 | ******************************************************************************/ | 31 | ******************************************************************************/ |
32 | 32 | ||
33 | #include <linux/sched.h> | ||
33 | #include "ipw2200.h" | 34 | #include "ipw2200.h" |
34 | 35 | ||
35 | 36 | ||
diff --git a/drivers/net/wireless/iwlwifi/iwl-3945.c b/drivers/net/wireless/iwlwifi/iwl-3945.c index e70c5b0af364..68136172b823 100644 --- a/drivers/net/wireless/iwlwifi/iwl-3945.c +++ b/drivers/net/wireless/iwlwifi/iwl-3945.c | |||
@@ -30,6 +30,7 @@ | |||
30 | #include <linux/pci.h> | 30 | #include <linux/pci.h> |
31 | #include <linux/dma-mapping.h> | 31 | #include <linux/dma-mapping.h> |
32 | #include <linux/delay.h> | 32 | #include <linux/delay.h> |
33 | #include <linux/sched.h> | ||
33 | #include <linux/skbuff.h> | 34 | #include <linux/skbuff.h> |
34 | #include <linux/netdevice.h> | 35 | #include <linux/netdevice.h> |
35 | #include <linux/wireless.h> | 36 | #include <linux/wireless.h> |
diff --git a/drivers/net/wireless/iwlwifi/iwl-4965.c b/drivers/net/wireless/iwlwifi/iwl-4965.c index a22a0501c190..6f703a041847 100644 --- a/drivers/net/wireless/iwlwifi/iwl-4965.c +++ b/drivers/net/wireless/iwlwifi/iwl-4965.c | |||
@@ -30,6 +30,7 @@ | |||
30 | #include <linux/pci.h> | 30 | #include <linux/pci.h> |
31 | #include <linux/dma-mapping.h> | 31 | #include <linux/dma-mapping.h> |
32 | #include <linux/delay.h> | 32 | #include <linux/delay.h> |
33 | #include <linux/sched.h> | ||
33 | #include <linux/skbuff.h> | 34 | #include <linux/skbuff.h> |
34 | #include <linux/netdevice.h> | 35 | #include <linux/netdevice.h> |
35 | #include <linux/wireless.h> | 36 | #include <linux/wireless.h> |
diff --git a/drivers/net/wireless/iwlwifi/iwl-5000.c b/drivers/net/wireless/iwlwifi/iwl-5000.c index eb08f4411000..d6bc0e051043 100644 --- a/drivers/net/wireless/iwlwifi/iwl-5000.c +++ b/drivers/net/wireless/iwlwifi/iwl-5000.c | |||
@@ -29,6 +29,7 @@ | |||
29 | #include <linux/pci.h> | 29 | #include <linux/pci.h> |
30 | #include <linux/dma-mapping.h> | 30 | #include <linux/dma-mapping.h> |
31 | #include <linux/delay.h> | 31 | #include <linux/delay.h> |
32 | #include <linux/sched.h> | ||
32 | #include <linux/skbuff.h> | 33 | #include <linux/skbuff.h> |
33 | #include <linux/netdevice.h> | 34 | #include <linux/netdevice.h> |
34 | #include <linux/wireless.h> | 35 | #include <linux/wireless.h> |
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn.c b/drivers/net/wireless/iwlwifi/iwl-agn.c index cdc07c477457..313d3e5ee84b 100644 --- a/drivers/net/wireless/iwlwifi/iwl-agn.c +++ b/drivers/net/wireless/iwlwifi/iwl-agn.c | |||
@@ -33,6 +33,7 @@ | |||
33 | #include <linux/pci.h> | 33 | #include <linux/pci.h> |
34 | #include <linux/dma-mapping.h> | 34 | #include <linux/dma-mapping.h> |
35 | #include <linux/delay.h> | 35 | #include <linux/delay.h> |
36 | #include <linux/sched.h> | ||
36 | #include <linux/skbuff.h> | 37 | #include <linux/skbuff.h> |
37 | #include <linux/netdevice.h> | 38 | #include <linux/netdevice.h> |
38 | #include <linux/wireless.h> | 39 | #include <linux/wireless.h> |
diff --git a/drivers/net/wireless/iwlwifi/iwl-core.c b/drivers/net/wireless/iwlwifi/iwl-core.c index 484d5c1a7312..2dc928755454 100644 --- a/drivers/net/wireless/iwlwifi/iwl-core.c +++ b/drivers/net/wireless/iwlwifi/iwl-core.c | |||
@@ -29,6 +29,7 @@ | |||
29 | #include <linux/kernel.h> | 29 | #include <linux/kernel.h> |
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 <net/mac80211.h> | 33 | #include <net/mac80211.h> |
33 | 34 | ||
34 | #include "iwl-eeprom.h" | 35 | #include "iwl-eeprom.h" |
diff --git a/drivers/net/wireless/iwlwifi/iwl-hcmd.c b/drivers/net/wireless/iwlwifi/iwl-hcmd.c index 532c8d6cd8da..a6856daf14cb 100644 --- a/drivers/net/wireless/iwlwifi/iwl-hcmd.c +++ b/drivers/net/wireless/iwlwifi/iwl-hcmd.c | |||
@@ -28,6 +28,7 @@ | |||
28 | 28 | ||
29 | #include <linux/kernel.h> | 29 | #include <linux/kernel.h> |
30 | #include <linux/module.h> | 30 | #include <linux/module.h> |
31 | #include <linux/sched.h> | ||
31 | #include <net/mac80211.h> | 32 | #include <net/mac80211.h> |
32 | 33 | ||
33 | #include "iwl-dev.h" /* FIXME: remove */ | 34 | #include "iwl-dev.h" /* FIXME: remove */ |
diff --git a/drivers/net/wireless/iwlwifi/iwl-tx.c b/drivers/net/wireless/iwlwifi/iwl-tx.c index c18907544701..fb9bcfa6d947 100644 --- a/drivers/net/wireless/iwlwifi/iwl-tx.c +++ b/drivers/net/wireless/iwlwifi/iwl-tx.c | |||
@@ -28,6 +28,7 @@ | |||
28 | *****************************************************************************/ | 28 | *****************************************************************************/ |
29 | 29 | ||
30 | #include <linux/etherdevice.h> | 30 | #include <linux/etherdevice.h> |
31 | #include <linux/sched.h> | ||
31 | #include <net/mac80211.h> | 32 | #include <net/mac80211.h> |
32 | #include "iwl-eeprom.h" | 33 | #include "iwl-eeprom.h" |
33 | #include "iwl-dev.h" | 34 | #include "iwl-dev.h" |
diff --git a/drivers/net/wireless/iwlwifi/iwl3945-base.c b/drivers/net/wireless/iwlwifi/iwl3945-base.c index c390dbd877e4..aa49230422f3 100644 --- a/drivers/net/wireless/iwlwifi/iwl3945-base.c +++ b/drivers/net/wireless/iwlwifi/iwl3945-base.c | |||
@@ -33,6 +33,7 @@ | |||
33 | #include <linux/pci.h> | 33 | #include <linux/pci.h> |
34 | #include <linux/dma-mapping.h> | 34 | #include <linux/dma-mapping.h> |
35 | #include <linux/delay.h> | 35 | #include <linux/delay.h> |
36 | #include <linux/sched.h> | ||
36 | #include <linux/skbuff.h> | 37 | #include <linux/skbuff.h> |
37 | #include <linux/netdevice.h> | 38 | #include <linux/netdevice.h> |
38 | #include <linux/wireless.h> | 39 | #include <linux/wireless.h> |
diff --git a/drivers/net/wireless/iwmc3200wifi/cfg80211.c b/drivers/net/wireless/iwmc3200wifi/cfg80211.c index a56a2b0ac99a..f3c55658225b 100644 --- a/drivers/net/wireless/iwmc3200wifi/cfg80211.c +++ b/drivers/net/wireless/iwmc3200wifi/cfg80211.c | |||
@@ -23,6 +23,7 @@ | |||
23 | 23 | ||
24 | #include <linux/kernel.h> | 24 | #include <linux/kernel.h> |
25 | #include <linux/netdevice.h> | 25 | #include <linux/netdevice.h> |
26 | #include <linux/sched.h> | ||
26 | #include <linux/etherdevice.h> | 27 | #include <linux/etherdevice.h> |
27 | #include <linux/wireless.h> | 28 | #include <linux/wireless.h> |
28 | #include <linux/ieee80211.h> | 29 | #include <linux/ieee80211.h> |
diff --git a/drivers/net/wireless/iwmc3200wifi/commands.c b/drivers/net/wireless/iwmc3200wifi/commands.c index 23b52fa2605f..84158b6d35d8 100644 --- a/drivers/net/wireless/iwmc3200wifi/commands.c +++ b/drivers/net/wireless/iwmc3200wifi/commands.c | |||
@@ -40,6 +40,7 @@ | |||
40 | #include <linux/wireless.h> | 40 | #include <linux/wireless.h> |
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 | 44 | ||
44 | #include "iwm.h" | 45 | #include "iwm.h" |
45 | #include "bus.h" | 46 | #include "bus.h" |
diff --git a/drivers/net/wireless/iwmc3200wifi/main.c b/drivers/net/wireless/iwmc3200wifi/main.c index d668e4756324..222eb2cf1b30 100644 --- a/drivers/net/wireless/iwmc3200wifi/main.c +++ b/drivers/net/wireless/iwmc3200wifi/main.c | |||
@@ -38,6 +38,7 @@ | |||
38 | 38 | ||
39 | #include <linux/kernel.h> | 39 | #include <linux/kernel.h> |
40 | #include <linux/netdevice.h> | 40 | #include <linux/netdevice.h> |
41 | #include <linux/sched.h> | ||
41 | #include <linux/ieee80211.h> | 42 | #include <linux/ieee80211.h> |
42 | #include <linux/wireless.h> | 43 | #include <linux/wireless.h> |
43 | 44 | ||
diff --git a/drivers/net/wireless/iwmc3200wifi/rx.c b/drivers/net/wireless/iwmc3200wifi/rx.c index 40dbcbc16593..771a301003c9 100644 --- a/drivers/net/wireless/iwmc3200wifi/rx.c +++ b/drivers/net/wireless/iwmc3200wifi/rx.c | |||
@@ -38,6 +38,7 @@ | |||
38 | 38 | ||
39 | #include <linux/kernel.h> | 39 | #include <linux/kernel.h> |
40 | #include <linux/netdevice.h> | 40 | #include <linux/netdevice.h> |
41 | #include <linux/sched.h> | ||
41 | #include <linux/etherdevice.h> | 42 | #include <linux/etherdevice.h> |
42 | #include <linux/wireless.h> | 43 | #include <linux/wireless.h> |
43 | #include <linux/ieee80211.h> | 44 | #include <linux/ieee80211.h> |
diff --git a/drivers/net/wireless/libertas/cmd.c b/drivers/net/wireless/libertas/cmd.c index 685098148e10..0a324dcd264c 100644 --- a/drivers/net/wireless/libertas/cmd.c +++ b/drivers/net/wireless/libertas/cmd.c | |||
@@ -6,6 +6,7 @@ | |||
6 | #include <net/iw_handler.h> | 6 | #include <net/iw_handler.h> |
7 | #include <net/lib80211.h> | 7 | #include <net/lib80211.h> |
8 | #include <linux/kfifo.h> | 8 | #include <linux/kfifo.h> |
9 | #include <linux/sched.h> | ||
9 | #include "host.h" | 10 | #include "host.h" |
10 | #include "hostcmd.h" | 11 | #include "hostcmd.h" |
11 | #include "decl.h" | 12 | #include "decl.h" |
diff --git a/drivers/net/wireless/libertas/tx.c b/drivers/net/wireless/libertas/tx.c index 4c018f7a0a8d..8c3766a6e8e7 100644 --- a/drivers/net/wireless/libertas/tx.c +++ b/drivers/net/wireless/libertas/tx.c | |||
@@ -3,6 +3,7 @@ | |||
3 | */ | 3 | */ |
4 | #include <linux/netdevice.h> | 4 | #include <linux/netdevice.h> |
5 | #include <linux/etherdevice.h> | 5 | #include <linux/etherdevice.h> |
6 | #include <linux/sched.h> | ||
6 | 7 | ||
7 | #include "hostcmd.h" | 8 | #include "hostcmd.h" |
8 | #include "radiotap.h" | 9 | #include "radiotap.h" |
diff --git a/drivers/net/wireless/prism54/isl_ioctl.c b/drivers/net/wireless/prism54/isl_ioctl.c index 4c97c6ad6f5d..bc08464d8323 100644 --- a/drivers/net/wireless/prism54/isl_ioctl.c +++ b/drivers/net/wireless/prism54/isl_ioctl.c | |||
@@ -19,6 +19,7 @@ | |||
19 | * | 19 | * |
20 | */ | 20 | */ |
21 | 21 | ||
22 | #include <linux/capability.h> | ||
22 | #include <linux/module.h> | 23 | #include <linux/module.h> |
23 | #include <linux/kernel.h> | 24 | #include <linux/kernel.h> |
24 | #include <linux/if_arp.h> | 25 | #include <linux/if_arp.h> |
diff --git a/drivers/net/wireless/prism54/islpci_dev.c b/drivers/net/wireless/prism54/islpci_dev.c index e26d7b3ceab5..2505be56ae39 100644 --- a/drivers/net/wireless/prism54/islpci_dev.c +++ b/drivers/net/wireless/prism54/islpci_dev.c | |||
@@ -23,6 +23,7 @@ | |||
23 | #include <linux/netdevice.h> | 23 | #include <linux/netdevice.h> |
24 | #include <linux/ethtool.h> | 24 | #include <linux/ethtool.h> |
25 | #include <linux/pci.h> | 25 | #include <linux/pci.h> |
26 | #include <linux/sched.h> | ||
26 | #include <linux/etherdevice.h> | 27 | #include <linux/etherdevice.h> |
27 | #include <linux/delay.h> | 28 | #include <linux/delay.h> |
28 | #include <linux/if_arp.h> | 29 | #include <linux/if_arp.h> |
diff --git a/drivers/net/wireless/prism54/islpci_mgt.c b/drivers/net/wireless/prism54/islpci_mgt.c index f7c677e2094d..69d2f882fd06 100644 --- a/drivers/net/wireless/prism54/islpci_mgt.c +++ b/drivers/net/wireless/prism54/islpci_mgt.c | |||
@@ -20,6 +20,7 @@ | |||
20 | #include <linux/netdevice.h> | 20 | #include <linux/netdevice.h> |
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 | 24 | ||
24 | #include <asm/io.h> | 25 | #include <asm/io.h> |
25 | #include <asm/system.h> | 26 | #include <asm/system.h> |
diff --git a/drivers/net/wireless/rt2x00/rt2x00debug.c b/drivers/net/wireless/rt2x00/rt2x00debug.c index 7b3ee8c2eaef..68bc9bb1dbf9 100644 --- a/drivers/net/wireless/rt2x00/rt2x00debug.c +++ b/drivers/net/wireless/rt2x00/rt2x00debug.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/poll.h> | 29 | #include <linux/poll.h> |
30 | #include <linux/sched.h> | ||
30 | #include <linux/uaccess.h> | 31 | #include <linux/uaccess.h> |
31 | 32 | ||
32 | #include "rt2x00.h" | 33 | #include "rt2x00.h" |