diff options
Diffstat (limited to 'drivers/net')
38 files changed, 185 insertions, 149 deletions
diff --git a/drivers/net/3c509.c b/drivers/net/3c509.c index b9d097c9f6bb..3a7bc524af33 100644 --- a/drivers/net/3c509.c +++ b/drivers/net/3c509.c | |||
@@ -40,7 +40,7 @@ | |||
40 | v1.14 10/15/97 Avoided waiting..discard message for fast machines -djb | 40 | v1.14 10/15/97 Avoided waiting..discard message for fast machines -djb |
41 | v1.15 1/31/98 Faster recovery for Tx errors. -djb | 41 | v1.15 1/31/98 Faster recovery for Tx errors. -djb |
42 | v1.16 2/3/98 Different ID port handling to avoid sound cards. -djb | 42 | v1.16 2/3/98 Different ID port handling to avoid sound cards. -djb |
43 | v1.18 12Mar2001 Andrew Morton <andrewm@uow.edu.au> | 43 | v1.18 12Mar2001 Andrew Morton |
44 | - Avoid bogus detect of 3c590's (Andrzej Krzysztofowicz) | 44 | - Avoid bogus detect of 3c590's (Andrzej Krzysztofowicz) |
45 | - Reviewed against 1.18 from scyld.com | 45 | - Reviewed against 1.18 from scyld.com |
46 | v1.18a 17Nov2001 Jeff Garzik <jgarzik@pobox.com> | 46 | v1.18a 17Nov2001 Jeff Garzik <jgarzik@pobox.com> |
diff --git a/drivers/net/3c59x.c b/drivers/net/3c59x.c index 491ee16da5c1..9ba295d9dd97 100644 --- a/drivers/net/3c59x.c +++ b/drivers/net/3c59x.c | |||
@@ -90,7 +90,7 @@ static int vortex_debug = 1; | |||
90 | #include <linux/eisa.h> | 90 | #include <linux/eisa.h> |
91 | #include <linux/bitops.h> | 91 | #include <linux/bitops.h> |
92 | #include <linux/jiffies.h> | 92 | #include <linux/jiffies.h> |
93 | #include <asm/irq.h> /* For NR_IRQS only. */ | 93 | #include <asm/irq.h> /* For nr_irqs only. */ |
94 | #include <asm/io.h> | 94 | #include <asm/io.h> |
95 | #include <asm/uaccess.h> | 95 | #include <asm/uaccess.h> |
96 | 96 | ||
@@ -1221,7 +1221,7 @@ static int __devinit vortex_probe1(struct device *gendev, | |||
1221 | if (print_info) | 1221 | if (print_info) |
1222 | printk(", IRQ %d\n", dev->irq); | 1222 | printk(", IRQ %d\n", dev->irq); |
1223 | /* Tell them about an invalid IRQ. */ | 1223 | /* Tell them about an invalid IRQ. */ |
1224 | if (dev->irq <= 0 || dev->irq >= NR_IRQS) | 1224 | if (dev->irq <= 0 || dev->irq >= nr_irqs) |
1225 | printk(KERN_WARNING " *** Warning: IRQ %d is unlikely to work! ***\n", | 1225 | printk(KERN_WARNING " *** Warning: IRQ %d is unlikely to work! ***\n", |
1226 | dev->irq); | 1226 | dev->irq); |
1227 | 1227 | ||
diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig index 1d8af3348331..ad301ace6085 100644 --- a/drivers/net/Kconfig +++ b/drivers/net/Kconfig | |||
@@ -2410,7 +2410,6 @@ config IXGBE | |||
2410 | tristate "Intel(R) 10GbE PCI Express adapters support" | 2410 | tristate "Intel(R) 10GbE PCI Express adapters support" |
2411 | depends on PCI && INET | 2411 | depends on PCI && INET |
2412 | select INET_LRO | 2412 | select INET_LRO |
2413 | select INTEL_IOATDMA | ||
2414 | ---help--- | 2413 | ---help--- |
2415 | This driver supports Intel(R) 10GbE PCI Express family of | 2414 | This driver supports Intel(R) 10GbE PCI Express family of |
2416 | adapters. For more information on how to identify your adapter, go | 2415 | adapters. For more information on how to identify your adapter, go |
@@ -2426,6 +2425,11 @@ config IXGBE | |||
2426 | To compile this driver as a module, choose M here. The module | 2425 | To compile this driver as a module, choose M here. The module |
2427 | will be called ixgbe. | 2426 | will be called ixgbe. |
2428 | 2427 | ||
2428 | config IXGBE_DCA | ||
2429 | bool | ||
2430 | default y | ||
2431 | depends on IXGBE && DCA && !(IXGBE=y && DCA=m) | ||
2432 | |||
2429 | config IXGB | 2433 | config IXGB |
2430 | tristate "Intel(R) PRO/10GbE support" | 2434 | tristate "Intel(R) PRO/10GbE support" |
2431 | depends on PCI | 2435 | depends on PCI |
@@ -2462,7 +2466,6 @@ config MYRI10GE | |||
2462 | select FW_LOADER | 2466 | select FW_LOADER |
2463 | select CRC32 | 2467 | select CRC32 |
2464 | select INET_LRO | 2468 | select INET_LRO |
2465 | select INTEL_IOATDMA | ||
2466 | ---help--- | 2469 | ---help--- |
2467 | This driver supports Myricom Myri-10G Dual Protocol interface in | 2470 | This driver supports Myricom Myri-10G Dual Protocol interface in |
2468 | Ethernet mode. If the eeprom on your board is not recent enough, | 2471 | Ethernet mode. If the eeprom on your board is not recent enough, |
@@ -2474,6 +2477,11 @@ config MYRI10GE | |||
2474 | To compile this driver as a module, choose M here. The module | 2477 | To compile this driver as a module, choose M here. The module |
2475 | will be called myri10ge. | 2478 | will be called myri10ge. |
2476 | 2479 | ||
2480 | config MYRI10GE_DCA | ||
2481 | bool | ||
2482 | default y | ||
2483 | depends on MYRI10GE && DCA && !(MYRI10GE=y && DCA=m) | ||
2484 | |||
2477 | config NETXEN_NIC | 2485 | config NETXEN_NIC |
2478 | tristate "NetXen Multi port (1/10) Gigabit Ethernet NIC" | 2486 | tristate "NetXen Multi port (1/10) Gigabit Ethernet NIC" |
2479 | depends on PCI | 2487 | depends on PCI |
diff --git a/drivers/net/cs89x0.c b/drivers/net/cs89x0.c index a28de8182802..7107620f615d 100644 --- a/drivers/net/cs89x0.c +++ b/drivers/net/cs89x0.c | |||
@@ -36,8 +36,7 @@ | |||
36 | 36 | ||
37 | Alan Cox : Removed 1.2 support, added 2.1 extra counters. | 37 | Alan Cox : Removed 1.2 support, added 2.1 extra counters. |
38 | 38 | ||
39 | Andrew Morton : andrewm@uow.edu.au | 39 | Andrew Morton : Kernel 2.3.48 |
40 | : Kernel 2.3.48 | ||
41 | : Handle kmalloc() failures | 40 | : Handle kmalloc() failures |
42 | : Other resource allocation fixes | 41 | : Other resource allocation fixes |
43 | : Add SMP locks | 42 | : Add SMP locks |
@@ -49,7 +48,7 @@ | |||
49 | : Fixed an out-of-mem bug in dma_rx() | 48 | : Fixed an out-of-mem bug in dma_rx() |
50 | : Updated Documentation/networking/cs89x0.txt | 49 | : Updated Documentation/networking/cs89x0.txt |
51 | 50 | ||
52 | Andrew Morton : andrewm@uow.edu.au / Kernel 2.3.99-pre1 | 51 | Andrew Morton : Kernel 2.3.99-pre1 |
53 | : Use skb_reserve to longword align IP header (two places) | 52 | : Use skb_reserve to longword align IP header (two places) |
54 | : Remove a delay loop from dma_rx() | 53 | : Remove a delay loop from dma_rx() |
55 | : Replace '100' with HZ | 54 | : Replace '100' with HZ |
@@ -57,11 +56,11 @@ | |||
57 | : Added 'cs89x0_dma=N' kernel boot option | 56 | : Added 'cs89x0_dma=N' kernel boot option |
58 | : Correctly initialise lp->lock in non-module compile | 57 | : Correctly initialise lp->lock in non-module compile |
59 | 58 | ||
60 | Andrew Morton : andrewm@uow.edu.au / Kernel 2.3.99-pre4-1 | 59 | Andrew Morton : Kernel 2.3.99-pre4-1 |
61 | : MOD_INC/DEC race fix (see | 60 | : MOD_INC/DEC race fix (see |
62 | : http://www.uwsg.indiana.edu/hypermail/linux/kernel/0003.3/1532.html) | 61 | : http://www.uwsg.indiana.edu/hypermail/linux/kernel/0003.3/1532.html) |
63 | 62 | ||
64 | Andrew Morton : andrewm@uow.edu.au / Kernel 2.4.0-test7-pre2 | 63 | Andrew Morton : Kernel 2.4.0-test7-pre2 |
65 | : Enhanced EEPROM support to cover more devices, | 64 | : Enhanced EEPROM support to cover more devices, |
66 | : abstracted IRQ mapping to support CONFIG_ARCH_CLPS7500 arch | 65 | : abstracted IRQ mapping to support CONFIG_ARCH_CLPS7500 arch |
67 | : (Jason Gunthorpe <jgg@ualberta.ca>) | 66 | : (Jason Gunthorpe <jgg@ualberta.ca>) |
@@ -156,7 +155,7 @@ | |||
156 | #include "cs89x0.h" | 155 | #include "cs89x0.h" |
157 | 156 | ||
158 | static char version[] __initdata = | 157 | static char version[] __initdata = |
159 | "cs89x0.c: v2.4.3-pre1 Russell Nelson <nelson@crynwr.com>, Andrew Morton <andrewm@uow.edu.au>\n"; | 158 | "cs89x0.c: v2.4.3-pre1 Russell Nelson <nelson@crynwr.com>, Andrew Morton\n"; |
160 | 159 | ||
161 | #define DRV_NAME "cs89x0" | 160 | #define DRV_NAME "cs89x0" |
162 | 161 | ||
@@ -1877,7 +1876,7 @@ MODULE_PARM_DESC(dmasize , "(ignored)"); | |||
1877 | MODULE_PARM_DESC(use_dma , "(ignored)"); | 1876 | MODULE_PARM_DESC(use_dma , "(ignored)"); |
1878 | #endif | 1877 | #endif |
1879 | 1878 | ||
1880 | MODULE_AUTHOR("Mike Cruse, Russwll Nelson <nelson@crynwr.com>, Andrew Morton <andrewm@uow.edu.au>"); | 1879 | MODULE_AUTHOR("Mike Cruse, Russwll Nelson <nelson@crynwr.com>, Andrew Morton"); |
1881 | MODULE_LICENSE("GPL"); | 1880 | MODULE_LICENSE("GPL"); |
1882 | 1881 | ||
1883 | 1882 | ||
diff --git a/drivers/net/hamradio/baycom_ser_fdx.c b/drivers/net/hamradio/baycom_ser_fdx.c index 17ac6975d70d..b6a816e60c0f 100644 --- a/drivers/net/hamradio/baycom_ser_fdx.c +++ b/drivers/net/hamradio/baycom_ser_fdx.c | |||
@@ -416,10 +416,10 @@ static int ser12_open(struct net_device *dev) | |||
416 | if (!dev || !bc) | 416 | if (!dev || !bc) |
417 | return -ENXIO; | 417 | return -ENXIO; |
418 | if (!dev->base_addr || dev->base_addr > 0xffff-SER12_EXTENT || | 418 | if (!dev->base_addr || dev->base_addr > 0xffff-SER12_EXTENT || |
419 | dev->irq < 2 || dev->irq > NR_IRQS) { | 419 | dev->irq < 2 || dev->irq > nr_irqs) { |
420 | printk(KERN_INFO "baycom_ser_fdx: invalid portnumber (max %u) " | 420 | printk(KERN_INFO "baycom_ser_fdx: invalid portnumber (max %u) " |
421 | "or irq (2 <= irq <= %d)\n", | 421 | "or irq (2 <= irq <= %d)\n", |
422 | 0xffff-SER12_EXTENT, NR_IRQS); | 422 | 0xffff-SER12_EXTENT, nr_irqs); |
423 | return -ENXIO; | 423 | return -ENXIO; |
424 | } | 424 | } |
425 | if (bc->baud < 300 || bc->baud > 4800) { | 425 | if (bc->baud < 300 || bc->baud > 4800) { |
diff --git a/drivers/net/hamradio/scc.c b/drivers/net/hamradio/scc.c index 45ae9d1191d7..c17e39bc5460 100644 --- a/drivers/net/hamradio/scc.c +++ b/drivers/net/hamradio/scc.c | |||
@@ -1465,7 +1465,7 @@ static void z8530_init(void) | |||
1465 | printk(KERN_INFO "Init Z8530 driver: %u channels, IRQ", Nchips*2); | 1465 | printk(KERN_INFO "Init Z8530 driver: %u channels, IRQ", Nchips*2); |
1466 | 1466 | ||
1467 | flag=" "; | 1467 | flag=" "; |
1468 | for (k = 0; k < NR_IRQS; k++) | 1468 | for (k = 0; k < nr_irqs; k++) |
1469 | if (Ivec[k].used) | 1469 | if (Ivec[k].used) |
1470 | { | 1470 | { |
1471 | printk("%s%d", flag, k); | 1471 | printk("%s%d", flag, k); |
@@ -1728,7 +1728,7 @@ static int scc_net_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) | |||
1728 | 1728 | ||
1729 | if (hwcfg.irq == 2) hwcfg.irq = 9; | 1729 | if (hwcfg.irq == 2) hwcfg.irq = 9; |
1730 | 1730 | ||
1731 | if (hwcfg.irq < 0 || hwcfg.irq >= NR_IRQS) | 1731 | if (hwcfg.irq < 0 || hwcfg.irq >= nr_irqs) |
1732 | return -EINVAL; | 1732 | return -EINVAL; |
1733 | 1733 | ||
1734 | if (!Ivec[hwcfg.irq].used && hwcfg.irq) | 1734 | if (!Ivec[hwcfg.irq].used && hwcfg.irq) |
@@ -2148,7 +2148,7 @@ static void __exit scc_cleanup_driver(void) | |||
2148 | } | 2148 | } |
2149 | 2149 | ||
2150 | /* To unload the port must be closed so no real IRQ pending */ | 2150 | /* To unload the port must be closed so no real IRQ pending */ |
2151 | for (k=0; k < NR_IRQS ; k++) | 2151 | for (k = 0; k < nr_irqs ; k++) |
2152 | if (Ivec[k].used) free_irq(k, NULL); | 2152 | if (Ivec[k].used) free_irq(k, NULL); |
2153 | 2153 | ||
2154 | local_irq_enable(); | 2154 | local_irq_enable(); |
diff --git a/drivers/net/irda/kingsun-sir.c b/drivers/net/irda/kingsun-sir.c index 73fe83be34fe..e1429fc6d050 100644 --- a/drivers/net/irda/kingsun-sir.c +++ b/drivers/net/irda/kingsun-sir.c | |||
@@ -540,7 +540,8 @@ static int kingsun_probe(struct usb_interface *intf, | |||
540 | if (ret != 0) | 540 | if (ret != 0) |
541 | goto free_mem; | 541 | goto free_mem; |
542 | 542 | ||
543 | info("IrDA: Registered KingSun/DonShine device %s", net->name); | 543 | dev_info(&net->dev, "IrDA: Registered KingSun/DonShine device %s\n", |
544 | net->name); | ||
544 | 545 | ||
545 | usb_set_intfdata(intf, kingsun); | 546 | usb_set_intfdata(intf, kingsun); |
546 | 547 | ||
diff --git a/drivers/net/irda/ks959-sir.c b/drivers/net/irda/ks959-sir.c index 8c257a51341a..2482d61662a2 100644 --- a/drivers/net/irda/ks959-sir.c +++ b/drivers/net/irda/ks959-sir.c | |||
@@ -801,7 +801,8 @@ static int ks959_probe(struct usb_interface *intf, | |||
801 | if (ret != 0) | 801 | if (ret != 0) |
802 | goto free_mem; | 802 | goto free_mem; |
803 | 803 | ||
804 | info("IrDA: Registered KingSun KS-959 device %s", net->name); | 804 | dev_info(&net->dev, "IrDA: Registered KingSun KS-959 device %s\n", |
805 | net->name); | ||
805 | 806 | ||
806 | usb_set_intfdata(intf, kingsun); | 807 | usb_set_intfdata(intf, kingsun); |
807 | 808 | ||
diff --git a/drivers/net/irda/ksdazzle-sir.c b/drivers/net/irda/ksdazzle-sir.c index d01a28593ce2..1e0de93fd618 100644 --- a/drivers/net/irda/ksdazzle-sir.c +++ b/drivers/net/irda/ksdazzle-sir.c | |||
@@ -705,7 +705,8 @@ static int ksdazzle_probe(struct usb_interface *intf, | |||
705 | if (ret != 0) | 705 | if (ret != 0) |
706 | goto free_mem; | 706 | goto free_mem; |
707 | 707 | ||
708 | info("IrDA: Registered KingSun/Dazzle device %s", net->name); | 708 | dev_info(&net->dev, "IrDA: Registered KingSun/Dazzle device %s\n", |
709 | net->name); | ||
709 | 710 | ||
710 | usb_set_intfdata(intf, kingsun); | 711 | usb_set_intfdata(intf, kingsun); |
711 | 712 | ||
diff --git a/drivers/net/irda/sir_dongle.c b/drivers/net/irda/sir_dongle.c index 36030241f7a9..2a9930e6e2af 100644 --- a/drivers/net/irda/sir_dongle.c +++ b/drivers/net/irda/sir_dongle.c | |||
@@ -67,9 +67,7 @@ int sirdev_get_dongle(struct sir_dev *dev, IRDA_DONGLE type) | |||
67 | const struct dongle_driver *drv = NULL; | 67 | const struct dongle_driver *drv = NULL; |
68 | int err = -EINVAL; | 68 | int err = -EINVAL; |
69 | 69 | ||
70 | #ifdef CONFIG_KMOD | ||
71 | request_module("irda-dongle-%d", type); | 70 | request_module("irda-dongle-%d", type); |
72 | #endif | ||
73 | 71 | ||
74 | if (dev->dongle_drv != NULL) | 72 | if (dev->dongle_drv != NULL) |
75 | return -EBUSY; | 73 | return -EBUSY; |
diff --git a/drivers/net/irda/stir4200.c b/drivers/net/irda/stir4200.c index 051963782749..3575804fd7c6 100644 --- a/drivers/net/irda/stir4200.c +++ b/drivers/net/irda/stir4200.c | |||
@@ -506,7 +506,7 @@ static int change_speed(struct stir_cb *stir, unsigned speed) | |||
506 | goto found; | 506 | goto found; |
507 | } | 507 | } |
508 | 508 | ||
509 | warn("%s: invalid speed %d", stir->netdev->name, speed); | 509 | dev_warn(&stir->netdev->dev, "invalid speed %d\n", speed); |
510 | return -EINVAL; | 510 | return -EINVAL; |
511 | 511 | ||
512 | found: | 512 | found: |
@@ -598,8 +598,8 @@ static int fifo_txwait(struct stir_cb *stir, int space) | |||
598 | err = read_reg(stir, REG_FIFOCTL, stir->fifo_status, | 598 | err = read_reg(stir, REG_FIFOCTL, stir->fifo_status, |
599 | FIFO_REGS_SIZE); | 599 | FIFO_REGS_SIZE); |
600 | if (unlikely(err != FIFO_REGS_SIZE)) { | 600 | if (unlikely(err != FIFO_REGS_SIZE)) { |
601 | warn("%s: FIFO register read error: %d", | 601 | dev_warn(&stir->netdev->dev, |
602 | stir->netdev->name, err); | 602 | "FIFO register read error: %d\n", err); |
603 | 603 | ||
604 | return err; | 604 | return err; |
605 | } | 605 | } |
@@ -783,8 +783,9 @@ static int stir_transmit_thread(void *arg) | |||
783 | 783 | ||
784 | if (unlikely(receive_start(stir))) { | 784 | if (unlikely(receive_start(stir))) { |
785 | if (net_ratelimit()) | 785 | if (net_ratelimit()) |
786 | info("%s: receive usb submit failed", | 786 | dev_info(&dev->dev, |
787 | stir->netdev->name); | 787 | "%s: receive usb submit failed\n", |
788 | stir->netdev->name); | ||
788 | stir->receiving = 0; | 789 | stir->receiving = 0; |
789 | msleep(10); | 790 | msleep(10); |
790 | continue; | 791 | continue; |
@@ -836,8 +837,8 @@ static void stir_rcv_irq(struct urb *urb) | |||
836 | 837 | ||
837 | /* in case of error, the kernel thread will restart us */ | 838 | /* in case of error, the kernel thread will restart us */ |
838 | if (err) { | 839 | if (err) { |
839 | warn("%s: usb receive submit error: %d", | 840 | dev_warn(&stir->netdev->dev, "usb receive submit error: %d\n", |
840 | stir->netdev->name, err); | 841 | err); |
841 | stir->receiving = 0; | 842 | stir->receiving = 0; |
842 | wake_up_process(stir->thread); | 843 | wake_up_process(stir->thread); |
843 | } | 844 | } |
@@ -1073,7 +1074,8 @@ static int stir_probe(struct usb_interface *intf, | |||
1073 | if (ret != 0) | 1074 | if (ret != 0) |
1074 | goto err_out2; | 1075 | goto err_out2; |
1075 | 1076 | ||
1076 | info("IrDA: Registered SigmaTel device %s", net->name); | 1077 | dev_info(&intf->dev, "IrDA: Registered SigmaTel device %s\n", |
1078 | net->name); | ||
1077 | 1079 | ||
1078 | usb_set_intfdata(intf, stir); | 1080 | usb_set_intfdata(intf, stir); |
1079 | 1081 | ||
diff --git a/drivers/net/ixgbe/ixgbe.h b/drivers/net/ixgbe/ixgbe.h index 2198b77c53ed..e116d340dcc6 100644 --- a/drivers/net/ixgbe/ixgbe.h +++ b/drivers/net/ixgbe/ixgbe.h | |||
@@ -36,7 +36,7 @@ | |||
36 | #include "ixgbe_type.h" | 36 | #include "ixgbe_type.h" |
37 | #include "ixgbe_common.h" | 37 | #include "ixgbe_common.h" |
38 | 38 | ||
39 | #if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE) | 39 | #ifdef CONFIG_IXGBE_DCA |
40 | #include <linux/dca.h> | 40 | #include <linux/dca.h> |
41 | #endif | 41 | #endif |
42 | 42 | ||
@@ -136,7 +136,7 @@ struct ixgbe_ring { | |||
136 | * offset associated with this ring, which is different | 136 | * offset associated with this ring, which is different |
137 | * for DCE and RSS modes */ | 137 | * for DCE and RSS modes */ |
138 | 138 | ||
139 | #if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE) | 139 | #ifdef CONFIG_IXGBE_DCA |
140 | /* cpu for tx queue */ | 140 | /* cpu for tx queue */ |
141 | int cpu; | 141 | int cpu; |
142 | #endif | 142 | #endif |
diff --git a/drivers/net/ixgbe/ixgbe_main.c b/drivers/net/ixgbe/ixgbe_main.c index ca17af4349d0..7548fb7360d9 100644 --- a/drivers/net/ixgbe/ixgbe_main.c +++ b/drivers/net/ixgbe/ixgbe_main.c | |||
@@ -80,7 +80,7 @@ static struct pci_device_id ixgbe_pci_tbl[] = { | |||
80 | }; | 80 | }; |
81 | MODULE_DEVICE_TABLE(pci, ixgbe_pci_tbl); | 81 | MODULE_DEVICE_TABLE(pci, ixgbe_pci_tbl); |
82 | 82 | ||
83 | #if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE) | 83 | #ifdef CONFIG_IXGBE_DCA |
84 | static int ixgbe_notify_dca(struct notifier_block *, unsigned long event, | 84 | static int ixgbe_notify_dca(struct notifier_block *, unsigned long event, |
85 | void *p); | 85 | void *p); |
86 | static struct notifier_block dca_notifier = { | 86 | static struct notifier_block dca_notifier = { |
@@ -296,7 +296,7 @@ done_cleaning: | |||
296 | return (total_packets ? true : false); | 296 | return (total_packets ? true : false); |
297 | } | 297 | } |
298 | 298 | ||
299 | #if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE) | 299 | #ifdef CONFIG_IXGBE_DCA |
300 | static void ixgbe_update_rx_dca(struct ixgbe_adapter *adapter, | 300 | static void ixgbe_update_rx_dca(struct ixgbe_adapter *adapter, |
301 | struct ixgbe_ring *rx_ring) | 301 | struct ixgbe_ring *rx_ring) |
302 | { | 302 | { |
@@ -383,7 +383,7 @@ static int __ixgbe_notify_dca(struct device *dev, void *data) | |||
383 | return 0; | 383 | return 0; |
384 | } | 384 | } |
385 | 385 | ||
386 | #endif /* CONFIG_DCA or CONFIG_DCA_MODULE */ | 386 | #endif /* CONFIG_IXGBE_DCA */ |
387 | /** | 387 | /** |
388 | * ixgbe_receive_skb - Send a completed packet up the stack | 388 | * ixgbe_receive_skb - Send a completed packet up the stack |
389 | * @adapter: board private structure | 389 | * @adapter: board private structure |
@@ -947,7 +947,7 @@ static irqreturn_t ixgbe_msix_clean_tx(int irq, void *data) | |||
947 | r_idx = find_first_bit(q_vector->txr_idx, adapter->num_tx_queues); | 947 | r_idx = find_first_bit(q_vector->txr_idx, adapter->num_tx_queues); |
948 | for (i = 0; i < q_vector->txr_count; i++) { | 948 | for (i = 0; i < q_vector->txr_count; i++) { |
949 | tx_ring = &(adapter->tx_ring[r_idx]); | 949 | tx_ring = &(adapter->tx_ring[r_idx]); |
950 | #if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE) | 950 | #ifdef CONFIG_IXGBE_DCA |
951 | if (adapter->flags & IXGBE_FLAG_DCA_ENABLED) | 951 | if (adapter->flags & IXGBE_FLAG_DCA_ENABLED) |
952 | ixgbe_update_tx_dca(adapter, tx_ring); | 952 | ixgbe_update_tx_dca(adapter, tx_ring); |
953 | #endif | 953 | #endif |
@@ -1022,7 +1022,7 @@ static int ixgbe_clean_rxonly(struct napi_struct *napi, int budget) | |||
1022 | 1022 | ||
1023 | r_idx = find_first_bit(q_vector->rxr_idx, adapter->num_rx_queues); | 1023 | r_idx = find_first_bit(q_vector->rxr_idx, adapter->num_rx_queues); |
1024 | rx_ring = &(adapter->rx_ring[r_idx]); | 1024 | rx_ring = &(adapter->rx_ring[r_idx]); |
1025 | #if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE) | 1025 | #ifdef CONFIG_IXGBE_DCA |
1026 | if (adapter->flags & IXGBE_FLAG_DCA_ENABLED) | 1026 | if (adapter->flags & IXGBE_FLAG_DCA_ENABLED) |
1027 | ixgbe_update_rx_dca(adapter, rx_ring); | 1027 | ixgbe_update_rx_dca(adapter, rx_ring); |
1028 | #endif | 1028 | #endif |
@@ -1066,7 +1066,7 @@ static int ixgbe_clean_rxonly_many(struct napi_struct *napi, int budget) | |||
1066 | r_idx = find_first_bit(q_vector->rxr_idx, adapter->num_rx_queues); | 1066 | r_idx = find_first_bit(q_vector->rxr_idx, adapter->num_rx_queues); |
1067 | for (i = 0; i < q_vector->rxr_count; i++) { | 1067 | for (i = 0; i < q_vector->rxr_count; i++) { |
1068 | rx_ring = &(adapter->rx_ring[r_idx]); | 1068 | rx_ring = &(adapter->rx_ring[r_idx]); |
1069 | #if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE) | 1069 | #ifdef CONFIG_IXGBE_DCA |
1070 | if (adapter->flags & IXGBE_FLAG_DCA_ENABLED) | 1070 | if (adapter->flags & IXGBE_FLAG_DCA_ENABLED) |
1071 | ixgbe_update_rx_dca(adapter, rx_ring); | 1071 | ixgbe_update_rx_dca(adapter, rx_ring); |
1072 | #endif | 1072 | #endif |
@@ -2155,7 +2155,7 @@ void ixgbe_down(struct ixgbe_adapter *adapter) | |||
2155 | 2155 | ||
2156 | netif_carrier_off(netdev); | 2156 | netif_carrier_off(netdev); |
2157 | 2157 | ||
2158 | #if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE) | 2158 | #ifdef CONFIG_IXGBE_DCA |
2159 | if (adapter->flags & IXGBE_FLAG_DCA_ENABLED) { | 2159 | if (adapter->flags & IXGBE_FLAG_DCA_ENABLED) { |
2160 | adapter->flags &= ~IXGBE_FLAG_DCA_ENABLED; | 2160 | adapter->flags &= ~IXGBE_FLAG_DCA_ENABLED; |
2161 | dca_remove_requester(&adapter->pdev->dev); | 2161 | dca_remove_requester(&adapter->pdev->dev); |
@@ -2167,7 +2167,7 @@ void ixgbe_down(struct ixgbe_adapter *adapter) | |||
2167 | ixgbe_clean_all_tx_rings(adapter); | 2167 | ixgbe_clean_all_tx_rings(adapter); |
2168 | ixgbe_clean_all_rx_rings(adapter); | 2168 | ixgbe_clean_all_rx_rings(adapter); |
2169 | 2169 | ||
2170 | #if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE) | 2170 | #ifdef CONFIG_IXGBE_DCA |
2171 | /* since we reset the hardware DCA settings were cleared */ | 2171 | /* since we reset the hardware DCA settings were cleared */ |
2172 | if (dca_add_requester(&adapter->pdev->dev) == 0) { | 2172 | if (dca_add_requester(&adapter->pdev->dev) == 0) { |
2173 | adapter->flags |= IXGBE_FLAG_DCA_ENABLED; | 2173 | adapter->flags |= IXGBE_FLAG_DCA_ENABLED; |
@@ -2193,7 +2193,7 @@ static int ixgbe_poll(struct napi_struct *napi, int budget) | |||
2193 | struct ixgbe_adapter *adapter = q_vector->adapter; | 2193 | struct ixgbe_adapter *adapter = q_vector->adapter; |
2194 | int tx_cleaned, work_done = 0; | 2194 | int tx_cleaned, work_done = 0; |
2195 | 2195 | ||
2196 | #if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE) | 2196 | #ifdef CONFIG_IXGBE_DCA |
2197 | if (adapter->flags & IXGBE_FLAG_DCA_ENABLED) { | 2197 | if (adapter->flags & IXGBE_FLAG_DCA_ENABLED) { |
2198 | ixgbe_update_tx_dca(adapter, adapter->tx_ring); | 2198 | ixgbe_update_tx_dca(adapter, adapter->tx_ring); |
2199 | ixgbe_update_rx_dca(adapter, adapter->rx_ring); | 2199 | ixgbe_update_rx_dca(adapter, adapter->rx_ring); |
@@ -3922,7 +3922,7 @@ static int __devinit ixgbe_probe(struct pci_dev *pdev, | |||
3922 | if (err) | 3922 | if (err) |
3923 | goto err_register; | 3923 | goto err_register; |
3924 | 3924 | ||
3925 | #if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE) | 3925 | #ifdef CONFIG_IXGBE_DCA |
3926 | if (dca_add_requester(&pdev->dev) == 0) { | 3926 | if (dca_add_requester(&pdev->dev) == 0) { |
3927 | adapter->flags |= IXGBE_FLAG_DCA_ENABLED; | 3927 | adapter->flags |= IXGBE_FLAG_DCA_ENABLED; |
3928 | /* always use CB2 mode, difference is masked | 3928 | /* always use CB2 mode, difference is masked |
@@ -3972,7 +3972,7 @@ static void __devexit ixgbe_remove(struct pci_dev *pdev) | |||
3972 | 3972 | ||
3973 | flush_scheduled_work(); | 3973 | flush_scheduled_work(); |
3974 | 3974 | ||
3975 | #if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE) | 3975 | #ifdef CONFIG_IXGBE_DCA |
3976 | if (adapter->flags & IXGBE_FLAG_DCA_ENABLED) { | 3976 | if (adapter->flags & IXGBE_FLAG_DCA_ENABLED) { |
3977 | adapter->flags &= ~IXGBE_FLAG_DCA_ENABLED; | 3977 | adapter->flags &= ~IXGBE_FLAG_DCA_ENABLED; |
3978 | dca_remove_requester(&pdev->dev); | 3978 | dca_remove_requester(&pdev->dev); |
@@ -4105,10 +4105,10 @@ static int __init ixgbe_init_module(void) | |||
4105 | 4105 | ||
4106 | printk(KERN_INFO "%s: %s\n", ixgbe_driver_name, ixgbe_copyright); | 4106 | printk(KERN_INFO "%s: %s\n", ixgbe_driver_name, ixgbe_copyright); |
4107 | 4107 | ||
4108 | #if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE) | 4108 | #ifdef CONFIG_IXGBE_DCA |
4109 | dca_register_notify(&dca_notifier); | 4109 | dca_register_notify(&dca_notifier); |
4110 | |||
4111 | #endif | 4110 | #endif |
4111 | |||
4112 | ret = pci_register_driver(&ixgbe_driver); | 4112 | ret = pci_register_driver(&ixgbe_driver); |
4113 | return ret; | 4113 | return ret; |
4114 | } | 4114 | } |
@@ -4123,13 +4123,13 @@ module_init(ixgbe_init_module); | |||
4123 | **/ | 4123 | **/ |
4124 | static void __exit ixgbe_exit_module(void) | 4124 | static void __exit ixgbe_exit_module(void) |
4125 | { | 4125 | { |
4126 | #if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE) | 4126 | #ifdef CONFIG_IXGBE_DCA |
4127 | dca_unregister_notify(&dca_notifier); | 4127 | dca_unregister_notify(&dca_notifier); |
4128 | #endif | 4128 | #endif |
4129 | pci_unregister_driver(&ixgbe_driver); | 4129 | pci_unregister_driver(&ixgbe_driver); |
4130 | } | 4130 | } |
4131 | 4131 | ||
4132 | #if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE) | 4132 | #ifdef CONFIG_IXGBE_DCA |
4133 | static int ixgbe_notify_dca(struct notifier_block *nb, unsigned long event, | 4133 | static int ixgbe_notify_dca(struct notifier_block *nb, unsigned long event, |
4134 | void *p) | 4134 | void *p) |
4135 | { | 4135 | { |
@@ -4140,7 +4140,7 @@ static int ixgbe_notify_dca(struct notifier_block *nb, unsigned long event, | |||
4140 | 4140 | ||
4141 | return ret_val ? NOTIFY_BAD : NOTIFY_DONE; | 4141 | return ret_val ? NOTIFY_BAD : NOTIFY_DONE; |
4142 | } | 4142 | } |
4143 | #endif /* CONFIG_DCA or CONFIG_DCA_MODULE */ | 4143 | #endif /* CONFIG_IXGBE_DCA */ |
4144 | 4144 | ||
4145 | module_exit(ixgbe_exit_module); | 4145 | module_exit(ixgbe_exit_module); |
4146 | 4146 | ||
diff --git a/drivers/net/myri10ge/myri10ge.c b/drivers/net/myri10ge/myri10ge.c index 6dce901c7f45..a9aebad52652 100644 --- a/drivers/net/myri10ge/myri10ge.c +++ b/drivers/net/myri10ge/myri10ge.c | |||
@@ -188,7 +188,7 @@ struct myri10ge_slice_state { | |||
188 | dma_addr_t fw_stats_bus; | 188 | dma_addr_t fw_stats_bus; |
189 | int watchdog_tx_done; | 189 | int watchdog_tx_done; |
190 | int watchdog_tx_req; | 190 | int watchdog_tx_req; |
191 | #if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE) | 191 | #ifdef CONFIG_MYRI10GE_DCA |
192 | int cached_dca_tag; | 192 | int cached_dca_tag; |
193 | int cpu; | 193 | int cpu; |
194 | __be32 __iomem *dca_tag; | 194 | __be32 __iomem *dca_tag; |
@@ -220,7 +220,7 @@ struct myri10ge_priv { | |||
220 | int msi_enabled; | 220 | int msi_enabled; |
221 | int msix_enabled; | 221 | int msix_enabled; |
222 | struct msix_entry *msix_vectors; | 222 | struct msix_entry *msix_vectors; |
223 | #if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE) | 223 | #ifdef CONFIG_MYRI10GE_DCA |
224 | int dca_enabled; | 224 | int dca_enabled; |
225 | #endif | 225 | #endif |
226 | u32 link_state; | 226 | u32 link_state; |
@@ -902,7 +902,7 @@ static int myri10ge_reset(struct myri10ge_priv *mgp) | |||
902 | struct myri10ge_slice_state *ss; | 902 | struct myri10ge_slice_state *ss; |
903 | int i, status; | 903 | int i, status; |
904 | size_t bytes; | 904 | size_t bytes; |
905 | #if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE) | 905 | #ifdef CONFIG_MYRI10GE_DCA |
906 | unsigned long dca_tag_off; | 906 | unsigned long dca_tag_off; |
907 | #endif | 907 | #endif |
908 | 908 | ||
@@ -1012,7 +1012,7 @@ static int myri10ge_reset(struct myri10ge_priv *mgp) | |||
1012 | } | 1012 | } |
1013 | put_be32(htonl(mgp->intr_coal_delay), mgp->intr_coal_delay_ptr); | 1013 | put_be32(htonl(mgp->intr_coal_delay), mgp->intr_coal_delay_ptr); |
1014 | 1014 | ||
1015 | #if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE) | 1015 | #ifdef CONFIG_MYRI10GE_DCA |
1016 | status = myri10ge_send_cmd(mgp, MXGEFW_CMD_GET_DCA_OFFSET, &cmd, 0); | 1016 | status = myri10ge_send_cmd(mgp, MXGEFW_CMD_GET_DCA_OFFSET, &cmd, 0); |
1017 | dca_tag_off = cmd.data0; | 1017 | dca_tag_off = cmd.data0; |
1018 | for (i = 0; i < mgp->num_slices; i++) { | 1018 | for (i = 0; i < mgp->num_slices; i++) { |
@@ -1051,7 +1051,7 @@ static int myri10ge_reset(struct myri10ge_priv *mgp) | |||
1051 | return status; | 1051 | return status; |
1052 | } | 1052 | } |
1053 | 1053 | ||
1054 | #if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE) | 1054 | #ifdef CONFIG_MYRI10GE_DCA |
1055 | static void | 1055 | static void |
1056 | myri10ge_write_dca(struct myri10ge_slice_state *ss, int cpu, int tag) | 1056 | myri10ge_write_dca(struct myri10ge_slice_state *ss, int cpu, int tag) |
1057 | { | 1057 | { |
@@ -1505,7 +1505,7 @@ static int myri10ge_poll(struct napi_struct *napi, int budget) | |||
1505 | struct net_device *netdev = ss->mgp->dev; | 1505 | struct net_device *netdev = ss->mgp->dev; |
1506 | int work_done; | 1506 | int work_done; |
1507 | 1507 | ||
1508 | #if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE) | 1508 | #ifdef CONFIG_MYRI10GE_DCA |
1509 | if (ss->mgp->dca_enabled) | 1509 | if (ss->mgp->dca_enabled) |
1510 | myri10ge_update_dca(ss); | 1510 | myri10ge_update_dca(ss); |
1511 | #endif | 1511 | #endif |
@@ -1736,7 +1736,7 @@ static const char myri10ge_gstrings_main_stats[][ETH_GSTRING_LEN] = { | |||
1736 | "tx_boundary", "WC", "irq", "MSI", "MSIX", | 1736 | "tx_boundary", "WC", "irq", "MSI", "MSIX", |
1737 | "read_dma_bw_MBs", "write_dma_bw_MBs", "read_write_dma_bw_MBs", | 1737 | "read_dma_bw_MBs", "write_dma_bw_MBs", "read_write_dma_bw_MBs", |
1738 | "serial_number", "watchdog_resets", | 1738 | "serial_number", "watchdog_resets", |
1739 | #if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE) | 1739 | #ifdef CONFIG_MYRI10GE_DCA |
1740 | "dca_capable_firmware", "dca_device_present", | 1740 | "dca_capable_firmware", "dca_device_present", |
1741 | #endif | 1741 | #endif |
1742 | "link_changes", "link_up", "dropped_link_overflow", | 1742 | "link_changes", "link_up", "dropped_link_overflow", |
@@ -1815,7 +1815,7 @@ myri10ge_get_ethtool_stats(struct net_device *netdev, | |||
1815 | data[i++] = (unsigned int)mgp->read_write_dma; | 1815 | data[i++] = (unsigned int)mgp->read_write_dma; |
1816 | data[i++] = (unsigned int)mgp->serial_number; | 1816 | data[i++] = (unsigned int)mgp->serial_number; |
1817 | data[i++] = (unsigned int)mgp->watchdog_resets; | 1817 | data[i++] = (unsigned int)mgp->watchdog_resets; |
1818 | #if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE) | 1818 | #ifdef CONFIG_MYRI10GE_DCA |
1819 | data[i++] = (unsigned int)(mgp->ss[0].dca_tag != NULL); | 1819 | data[i++] = (unsigned int)(mgp->ss[0].dca_tag != NULL); |
1820 | data[i++] = (unsigned int)(mgp->dca_enabled); | 1820 | data[i++] = (unsigned int)(mgp->dca_enabled); |
1821 | #endif | 1821 | #endif |
@@ -3844,7 +3844,7 @@ static int myri10ge_probe(struct pci_dev *pdev, const struct pci_device_id *ent) | |||
3844 | dev_err(&pdev->dev, "failed reset\n"); | 3844 | dev_err(&pdev->dev, "failed reset\n"); |
3845 | goto abort_with_slices; | 3845 | goto abort_with_slices; |
3846 | } | 3846 | } |
3847 | #if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE) | 3847 | #ifdef CONFIG_MYRI10GE_DCA |
3848 | myri10ge_setup_dca(mgp); | 3848 | myri10ge_setup_dca(mgp); |
3849 | #endif | 3849 | #endif |
3850 | pci_set_drvdata(pdev, mgp); | 3850 | pci_set_drvdata(pdev, mgp); |
@@ -3948,7 +3948,7 @@ static void myri10ge_remove(struct pci_dev *pdev) | |||
3948 | netdev = mgp->dev; | 3948 | netdev = mgp->dev; |
3949 | unregister_netdev(netdev); | 3949 | unregister_netdev(netdev); |
3950 | 3950 | ||
3951 | #if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE) | 3951 | #ifdef CONFIG_MYRI10GE_DCA |
3952 | myri10ge_teardown_dca(mgp); | 3952 | myri10ge_teardown_dca(mgp); |
3953 | #endif | 3953 | #endif |
3954 | myri10ge_dummy_rdma(mgp, 0); | 3954 | myri10ge_dummy_rdma(mgp, 0); |
@@ -3993,7 +3993,7 @@ static struct pci_driver myri10ge_driver = { | |||
3993 | #endif | 3993 | #endif |
3994 | }; | 3994 | }; |
3995 | 3995 | ||
3996 | #if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE) | 3996 | #ifdef CONFIG_MYRI10GE_DCA |
3997 | static int | 3997 | static int |
3998 | myri10ge_notify_dca(struct notifier_block *nb, unsigned long event, void *p) | 3998 | myri10ge_notify_dca(struct notifier_block *nb, unsigned long event, void *p) |
3999 | { | 3999 | { |
@@ -4024,7 +4024,7 @@ static __init int myri10ge_init_module(void) | |||
4024 | myri10ge_driver.name, myri10ge_rss_hash); | 4024 | myri10ge_driver.name, myri10ge_rss_hash); |
4025 | myri10ge_rss_hash = MXGEFW_RSS_HASH_TYPE_SRC_PORT; | 4025 | myri10ge_rss_hash = MXGEFW_RSS_HASH_TYPE_SRC_PORT; |
4026 | } | 4026 | } |
4027 | #if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE) | 4027 | #ifdef CONFIG_MYRI10GE_DCA |
4028 | dca_register_notify(&myri10ge_dca_notifier); | 4028 | dca_register_notify(&myri10ge_dca_notifier); |
4029 | #endif | 4029 | #endif |
4030 | if (myri10ge_max_slices > MYRI10GE_MAX_SLICES) | 4030 | if (myri10ge_max_slices > MYRI10GE_MAX_SLICES) |
@@ -4037,7 +4037,7 @@ module_init(myri10ge_init_module); | |||
4037 | 4037 | ||
4038 | static __exit void myri10ge_cleanup_module(void) | 4038 | static __exit void myri10ge_cleanup_module(void) |
4039 | { | 4039 | { |
4040 | #if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE) | 4040 | #ifdef CONFIG_MYRI10GE_DCA |
4041 | dca_unregister_notify(&myri10ge_dca_notifier); | 4041 | dca_unregister_notify(&myri10ge_dca_notifier); |
4042 | #endif | 4042 | #endif |
4043 | pci_unregister_driver(&myri10ge_driver); | 4043 | pci_unregister_driver(&myri10ge_driver); |
diff --git a/drivers/net/pcmcia/Kconfig b/drivers/net/pcmcia/Kconfig index e8f55d8ed7a9..9b8f793b1cc8 100644 --- a/drivers/net/pcmcia/Kconfig +++ b/drivers/net/pcmcia/Kconfig | |||
@@ -111,7 +111,7 @@ config ARCNET_COM20020_CS | |||
111 | 111 | ||
112 | config PCMCIA_IBMTR | 112 | config PCMCIA_IBMTR |
113 | tristate "IBM PCMCIA tokenring adapter support" | 113 | tristate "IBM PCMCIA tokenring adapter support" |
114 | depends on IBMTR!=y && TR && !64BIT | 114 | depends on IBMTR!=y && TR |
115 | help | 115 | help |
116 | Say Y here if you intend to attach this type of Token Ring PCMCIA | 116 | Say Y here if you intend to attach this type of Token Ring PCMCIA |
117 | card to your computer. You then also need to say Y to "Token Ring | 117 | card to your computer. You then also need to say Y to "Token Ring |
diff --git a/drivers/net/phy/phy_device.c b/drivers/net/phy/phy_device.c index f11e900b437b..e11b03b2b25a 100644 --- a/drivers/net/phy/phy_device.c +++ b/drivers/net/phy/phy_device.c | |||
@@ -309,11 +309,6 @@ void phy_disconnect(struct phy_device *phydev) | |||
309 | } | 309 | } |
310 | EXPORT_SYMBOL(phy_disconnect); | 310 | EXPORT_SYMBOL(phy_disconnect); |
311 | 311 | ||
312 | static int phy_compare_id(struct device *dev, void *data) | ||
313 | { | ||
314 | return strcmp((char *)data, dev->bus_id) ? 0 : 1; | ||
315 | } | ||
316 | |||
317 | /** | 312 | /** |
318 | * phy_attach - attach a network device to a particular PHY device | 313 | * phy_attach - attach a network device to a particular PHY device |
319 | * @dev: network device to attach | 314 | * @dev: network device to attach |
@@ -337,8 +332,7 @@ struct phy_device *phy_attach(struct net_device *dev, | |||
337 | 332 | ||
338 | /* Search the list of PHY devices on the mdio bus for the | 333 | /* Search the list of PHY devices on the mdio bus for the |
339 | * PHY with the requested name */ | 334 | * PHY with the requested name */ |
340 | d = bus_find_device(bus, NULL, (void *)bus_id, phy_compare_id); | 335 | d = bus_find_device_by_name(bus, NULL, bus_id); |
341 | |||
342 | if (d) { | 336 | if (d) { |
343 | phydev = to_phy_device(d); | 337 | phydev = to_phy_device(d); |
344 | } else { | 338 | } else { |
diff --git a/drivers/net/ppp_generic.c b/drivers/net/ppp_generic.c index 0ca0fcbb7c01..7e857e938adb 100644 --- a/drivers/net/ppp_generic.c +++ b/drivers/net/ppp_generic.c | |||
@@ -866,8 +866,8 @@ static int __init ppp_init(void) | |||
866 | err = PTR_ERR(ppp_class); | 866 | err = PTR_ERR(ppp_class); |
867 | goto out_chrdev; | 867 | goto out_chrdev; |
868 | } | 868 | } |
869 | device_create_drvdata(ppp_class, NULL, MKDEV(PPP_MAJOR, 0), | 869 | device_create(ppp_class, NULL, MKDEV(PPP_MAJOR, 0), NULL, |
870 | NULL, "ppp"); | 870 | "ppp"); |
871 | } | 871 | } |
872 | 872 | ||
873 | out: | 873 | out: |
@@ -2127,13 +2127,9 @@ ppp_set_compress(struct ppp *ppp, unsigned long arg) | |||
2127 | || ccp_option[1] < 2 || ccp_option[1] > data.length) | 2127 | || ccp_option[1] < 2 || ccp_option[1] > data.length) |
2128 | goto out; | 2128 | goto out; |
2129 | 2129 | ||
2130 | cp = find_compressor(ccp_option[0]); | 2130 | cp = try_then_request_module( |
2131 | #ifdef CONFIG_KMOD | 2131 | find_compressor(ccp_option[0]), |
2132 | if (!cp) { | 2132 | "ppp-compress-%d", ccp_option[0]); |
2133 | request_module("ppp-compress-%d", ccp_option[0]); | ||
2134 | cp = find_compressor(ccp_option[0]); | ||
2135 | } | ||
2136 | #endif /* CONFIG_KMOD */ | ||
2137 | if (!cp) | 2133 | if (!cp) |
2138 | goto out; | 2134 | goto out; |
2139 | 2135 | ||
diff --git a/drivers/net/pppox.c b/drivers/net/pppox.c index c6898c1fc54d..03aecc97fb45 100644 --- a/drivers/net/pppox.c +++ b/drivers/net/pppox.c | |||
@@ -115,13 +115,8 @@ static int pppox_create(struct net *net, struct socket *sock, int protocol) | |||
115 | goto out; | 115 | goto out; |
116 | 116 | ||
117 | rc = -EPROTONOSUPPORT; | 117 | rc = -EPROTONOSUPPORT; |
118 | #ifdef CONFIG_KMOD | 118 | if (!pppox_protos[protocol]) |
119 | if (!pppox_protos[protocol]) { | 119 | request_module("pppox-proto-%d", protocol); |
120 | char buffer[32]; | ||
121 | sprintf(buffer, "pppox-proto-%d", protocol); | ||
122 | request_module(buffer); | ||
123 | } | ||
124 | #endif | ||
125 | if (!pppox_protos[protocol] || | 120 | if (!pppox_protos[protocol] || |
126 | !try_module_get(pppox_protos[protocol]->owner)) | 121 | !try_module_get(pppox_protos[protocol]->owner)) |
127 | goto out; | 122 | goto out; |
diff --git a/drivers/net/sh_eth.c b/drivers/net/sh_eth.c index b39d1cc1ef04..a24bb68887ab 100644 --- a/drivers/net/sh_eth.c +++ b/drivers/net/sh_eth.c | |||
@@ -1205,11 +1205,12 @@ static int sh_eth_drv_probe(struct platform_device *pdev) | |||
1205 | devno = 0; | 1205 | devno = 0; |
1206 | 1206 | ||
1207 | ndev->dma = -1; | 1207 | ndev->dma = -1; |
1208 | ndev->irq = platform_get_irq(pdev, 0); | 1208 | ret = platform_get_irq(pdev, 0); |
1209 | if (ndev->irq < 0) { | 1209 | if (ret < 0) { |
1210 | ret = -ENODEV; | 1210 | ret = -ENODEV; |
1211 | goto out_release; | 1211 | goto out_release; |
1212 | } | 1212 | } |
1213 | ndev->irq = ret; | ||
1213 | 1214 | ||
1214 | SET_NETDEV_DEV(ndev, &pdev->dev); | 1215 | SET_NETDEV_DEV(ndev, &pdev->dev); |
1215 | 1216 | ||
diff --git a/drivers/net/usb/catc.c b/drivers/net/usb/catc.c index 22c17bbacb69..466a89e24444 100644 --- a/drivers/net/usb/catc.c +++ b/drivers/net/usb/catc.c | |||
@@ -456,7 +456,7 @@ static void catc_tx_timeout(struct net_device *netdev) | |||
456 | { | 456 | { |
457 | struct catc *catc = netdev_priv(netdev); | 457 | struct catc *catc = netdev_priv(netdev); |
458 | 458 | ||
459 | warn("Transmit timed out."); | 459 | dev_warn(&netdev->dev, "Transmit timed out.\n"); |
460 | usb_unlink_urb(catc->tx_urb); | 460 | usb_unlink_urb(catc->tx_urb); |
461 | } | 461 | } |
462 | 462 | ||
@@ -847,7 +847,8 @@ static int catc_probe(struct usb_interface *intf, const struct usb_device_id *id | |||
847 | dbg("64k Memory\n"); | 847 | dbg("64k Memory\n"); |
848 | break; | 848 | break; |
849 | default: | 849 | default: |
850 | warn("Couldn't detect memory size, assuming 32k"); | 850 | dev_warn(&intf->dev, |
851 | "Couldn't detect memory size, assuming 32k\n"); | ||
851 | case 0x87654321: | 852 | case 0x87654321: |
852 | catc_set_reg(catc, TxBufCount, 4); | 853 | catc_set_reg(catc, TxBufCount, 4); |
853 | catc_set_reg(catc, RxBufCount, 16); | 854 | catc_set_reg(catc, RxBufCount, 16); |
@@ -953,7 +954,8 @@ static int __init catc_init(void) | |||
953 | { | 954 | { |
954 | int result = usb_register(&catc_driver); | 955 | int result = usb_register(&catc_driver); |
955 | if (result == 0) | 956 | if (result == 0) |
956 | info(DRIVER_VERSION " " DRIVER_DESC); | 957 | printk(KERN_INFO KBUILD_MODNAME ": " DRIVER_VERSION ":" |
958 | DRIVER_DESC "\n"); | ||
957 | return result; | 959 | return result; |
958 | } | 960 | } |
959 | 961 | ||
diff --git a/drivers/net/usb/kaweth.c b/drivers/net/usb/kaweth.c index d6829db51b45..fdbf3be24fda 100644 --- a/drivers/net/usb/kaweth.c +++ b/drivers/net/usb/kaweth.c | |||
@@ -832,7 +832,7 @@ static int kaweth_start_xmit(struct sk_buff *skb, struct net_device *net) | |||
832 | 832 | ||
833 | if((res = usb_submit_urb(kaweth->tx_urb, GFP_ATOMIC))) | 833 | if((res = usb_submit_urb(kaweth->tx_urb, GFP_ATOMIC))) |
834 | { | 834 | { |
835 | warn("kaweth failed tx_urb %d", res); | 835 | dev_warn(&net->dev, "kaweth failed tx_urb %d\n", res); |
836 | skip: | 836 | skip: |
837 | kaweth->stats.tx_errors++; | 837 | kaweth->stats.tx_errors++; |
838 | 838 | ||
@@ -924,7 +924,7 @@ static void kaweth_tx_timeout(struct net_device *net) | |||
924 | { | 924 | { |
925 | struct kaweth_device *kaweth = netdev_priv(net); | 925 | struct kaweth_device *kaweth = netdev_priv(net); |
926 | 926 | ||
927 | warn("%s: Tx timed out. Resetting.", net->name); | 927 | dev_warn(&net->dev, "%s: Tx timed out. Resetting.\n", net->name); |
928 | kaweth->stats.tx_errors++; | 928 | kaweth->stats.tx_errors++; |
929 | net->trans_start = jiffies; | 929 | net->trans_start = jiffies; |
930 | 930 | ||
@@ -1016,10 +1016,10 @@ static int kaweth_probe( | |||
1016 | */ | 1016 | */ |
1017 | 1017 | ||
1018 | if (le16_to_cpu(dev->descriptor.bcdDevice) >> 8) { | 1018 | if (le16_to_cpu(dev->descriptor.bcdDevice) >> 8) { |
1019 | info("Firmware present in device."); | 1019 | dev_info(&intf->dev, "Firmware present in device.\n"); |
1020 | } else { | 1020 | } else { |
1021 | /* Download the firmware */ | 1021 | /* Download the firmware */ |
1022 | info("Downloading firmware..."); | 1022 | dev_info(&intf->dev, "Downloading firmware...\n"); |
1023 | kaweth->firmware_buf = (__u8 *)__get_free_page(GFP_KERNEL); | 1023 | kaweth->firmware_buf = (__u8 *)__get_free_page(GFP_KERNEL); |
1024 | if ((result = kaweth_download_firmware(kaweth, | 1024 | if ((result = kaweth_download_firmware(kaweth, |
1025 | "kaweth/new_code.bin", | 1025 | "kaweth/new_code.bin", |
@@ -1061,7 +1061,7 @@ static int kaweth_probe( | |||
1061 | } | 1061 | } |
1062 | 1062 | ||
1063 | /* Device will now disappear for a moment... */ | 1063 | /* Device will now disappear for a moment... */ |
1064 | info("Firmware loaded. I'll be back..."); | 1064 | dev_info(&intf->dev, "Firmware loaded. I'll be back...\n"); |
1065 | err_fw: | 1065 | err_fw: |
1066 | free_page((unsigned long)kaweth->firmware_buf); | 1066 | free_page((unsigned long)kaweth->firmware_buf); |
1067 | free_netdev(netdev); | 1067 | free_netdev(netdev); |
@@ -1075,10 +1075,10 @@ err_fw: | |||
1075 | goto err_free_netdev; | 1075 | goto err_free_netdev; |
1076 | } | 1076 | } |
1077 | 1077 | ||
1078 | info("Statistics collection: %x", kaweth->configuration.statistics_mask); | 1078 | dev_info(&intf->dev, "Statistics collection: %x\n", kaweth->configuration.statistics_mask); |
1079 | info("Multicast filter limit: %x", kaweth->configuration.max_multicast_filters & ((1 << 15) - 1)); | 1079 | dev_info(&intf->dev, "Multicast filter limit: %x\n", kaweth->configuration.max_multicast_filters & ((1 << 15) - 1)); |
1080 | info("MTU: %d", le16_to_cpu(kaweth->configuration.segment_size)); | 1080 | dev_info(&intf->dev, "MTU: %d\n", le16_to_cpu(kaweth->configuration.segment_size)); |
1081 | info("Read MAC address %2.2x:%2.2x:%2.2x:%2.2x:%2.2x:%2.2x", | 1081 | dev_info(&intf->dev, "Read MAC address %2.2x:%2.2x:%2.2x:%2.2x:%2.2x:%2.2x\n", |
1082 | (int)kaweth->configuration.hw_addr[0], | 1082 | (int)kaweth->configuration.hw_addr[0], |
1083 | (int)kaweth->configuration.hw_addr[1], | 1083 | (int)kaweth->configuration.hw_addr[1], |
1084 | (int)kaweth->configuration.hw_addr[2], | 1084 | (int)kaweth->configuration.hw_addr[2], |
@@ -1174,7 +1174,8 @@ err_fw: | |||
1174 | goto err_intfdata; | 1174 | goto err_intfdata; |
1175 | } | 1175 | } |
1176 | 1176 | ||
1177 | info("kaweth interface created at %s", kaweth->net->name); | 1177 | dev_info(&intf->dev, "kaweth interface created at %s\n", |
1178 | kaweth->net->name); | ||
1178 | 1179 | ||
1179 | dbg("Kaweth probe returning."); | 1180 | dbg("Kaweth probe returning."); |
1180 | 1181 | ||
@@ -1205,11 +1206,11 @@ static void kaweth_disconnect(struct usb_interface *intf) | |||
1205 | struct kaweth_device *kaweth = usb_get_intfdata(intf); | 1206 | struct kaweth_device *kaweth = usb_get_intfdata(intf); |
1206 | struct net_device *netdev; | 1207 | struct net_device *netdev; |
1207 | 1208 | ||
1208 | info("Unregistering"); | 1209 | dev_info(&intf->dev, "Unregistering\n"); |
1209 | 1210 | ||
1210 | usb_set_intfdata(intf, NULL); | 1211 | usb_set_intfdata(intf, NULL); |
1211 | if (!kaweth) { | 1212 | if (!kaweth) { |
1212 | warn("unregistering non-existant device"); | 1213 | dev_warn(&intf->dev, "unregistering non-existant device\n"); |
1213 | return; | 1214 | return; |
1214 | } | 1215 | } |
1215 | netdev = kaweth->net; | 1216 | netdev = kaweth->net; |
@@ -1269,7 +1270,7 @@ static int usb_start_wait_urb(struct urb *urb, int timeout, int* actual_length) | |||
1269 | 1270 | ||
1270 | if (!wait_event_timeout(awd.wqh, awd.done, timeout)) { | 1271 | if (!wait_event_timeout(awd.wqh, awd.done, timeout)) { |
1271 | // timeout | 1272 | // timeout |
1272 | warn("usb_control/bulk_msg: timeout"); | 1273 | dev_warn(&urb->dev->dev, "usb_control/bulk_msg: timeout\n"); |
1273 | usb_kill_urb(urb); // remove urb safely | 1274 | usb_kill_urb(urb); // remove urb safely |
1274 | status = -ETIMEDOUT; | 1275 | status = -ETIMEDOUT; |
1275 | } | 1276 | } |
diff --git a/drivers/net/usb/pegasus.c b/drivers/net/usb/pegasus.c index 38b90e7a7ed3..7914867110ed 100644 --- a/drivers/net/usb/pegasus.c +++ b/drivers/net/usb/pegasus.c | |||
@@ -168,7 +168,7 @@ static int get_registers(pegasus_t * pegasus, __u16 indx, __u16 size, | |||
168 | netif_device_detach(pegasus->net); | 168 | netif_device_detach(pegasus->net); |
169 | if (netif_msg_drv(pegasus) && printk_ratelimit()) | 169 | if (netif_msg_drv(pegasus) && printk_ratelimit()) |
170 | dev_err(&pegasus->intf->dev, "%s, status %d\n", | 170 | dev_err(&pegasus->intf->dev, "%s, status %d\n", |
171 | __FUNCTION__, ret); | 171 | __func__, ret); |
172 | goto out; | 172 | goto out; |
173 | } | 173 | } |
174 | 174 | ||
@@ -192,7 +192,7 @@ static int set_registers(pegasus_t * pegasus, __u16 indx, __u16 size, | |||
192 | if (!buffer) { | 192 | if (!buffer) { |
193 | if (netif_msg_drv(pegasus)) | 193 | if (netif_msg_drv(pegasus)) |
194 | dev_warn(&pegasus->intf->dev, "out of memory in %s\n", | 194 | dev_warn(&pegasus->intf->dev, "out of memory in %s\n", |
195 | __FUNCTION__); | 195 | __func__); |
196 | return -ENOMEM; | 196 | return -ENOMEM; |
197 | } | 197 | } |
198 | memcpy(buffer, data, size); | 198 | memcpy(buffer, data, size); |
diff --git a/drivers/net/usb/rtl8150.c b/drivers/net/usb/rtl8150.c index df56a518691c..6133401ebc67 100644 --- a/drivers/net/usb/rtl8150.c +++ b/drivers/net/usb/rtl8150.c | |||
@@ -221,7 +221,7 @@ static void ctrl_callback(struct urb *urb) | |||
221 | case -ENOENT: | 221 | case -ENOENT: |
222 | break; | 222 | break; |
223 | default: | 223 | default: |
224 | warn("ctrl urb status %d", urb->status); | 224 | dev_warn(&urb->dev->dev, "ctrl urb status %d\n", urb->status); |
225 | } | 225 | } |
226 | dev = urb->context; | 226 | dev = urb->context; |
227 | clear_bit(RX_REG_SET, &dev->flags); | 227 | clear_bit(RX_REG_SET, &dev->flags); |
@@ -441,10 +441,10 @@ static void read_bulk_callback(struct urb *urb) | |||
441 | case -ENOENT: | 441 | case -ENOENT: |
442 | return; /* the urb is in unlink state */ | 442 | return; /* the urb is in unlink state */ |
443 | case -ETIME: | 443 | case -ETIME: |
444 | warn("may be reset is needed?.."); | 444 | dev_warn(&urb->dev->dev, "may be reset is needed?..\n"); |
445 | goto goon; | 445 | goto goon; |
446 | default: | 446 | default: |
447 | warn("Rx status %d", urb->status); | 447 | dev_warn(&urb->dev->dev, "Rx status %d\n", urb->status); |
448 | goto goon; | 448 | goto goon; |
449 | } | 449 | } |
450 | 450 | ||
@@ -538,7 +538,8 @@ static void write_bulk_callback(struct urb *urb) | |||
538 | if (!netif_device_present(dev->netdev)) | 538 | if (!netif_device_present(dev->netdev)) |
539 | return; | 539 | return; |
540 | if (urb->status) | 540 | if (urb->status) |
541 | info("%s: Tx status %d", dev->netdev->name, urb->status); | 541 | dev_info(&urb->dev->dev, "%s: Tx status %d\n", |
542 | dev->netdev->name, urb->status); | ||
542 | dev->netdev->trans_start = jiffies; | 543 | dev->netdev->trans_start = jiffies; |
543 | netif_wake_queue(dev->netdev); | 544 | netif_wake_queue(dev->netdev); |
544 | } | 545 | } |
@@ -561,7 +562,8 @@ static void intr_callback(struct urb *urb) | |||
561 | return; | 562 | return; |
562 | /* -EPIPE: should clear the halt */ | 563 | /* -EPIPE: should clear the halt */ |
563 | default: | 564 | default: |
564 | info("%s: intr status %d", dev->netdev->name, urb->status); | 565 | dev_info(&urb->dev->dev, "%s: intr status %d\n", |
566 | dev->netdev->name, urb->status); | ||
565 | goto resubmit; | 567 | goto resubmit; |
566 | } | 568 | } |
567 | 569 | ||
@@ -665,7 +667,7 @@ static int enable_net_traffic(rtl8150_t * dev) | |||
665 | u8 cr, tcr, rcr, msr; | 667 | u8 cr, tcr, rcr, msr; |
666 | 668 | ||
667 | if (!rtl8150_reset(dev)) { | 669 | if (!rtl8150_reset(dev)) { |
668 | warn("%s - device reset failed", __FUNCTION__); | 670 | dev_warn(&dev->udev->dev, "device reset failed\n"); |
669 | } | 671 | } |
670 | /* RCR bit7=1 attach Rx info at the end; =0 HW CRC (which is broken) */ | 672 | /* RCR bit7=1 attach Rx info at the end; =0 HW CRC (which is broken) */ |
671 | rcr = 0x9e; | 673 | rcr = 0x9e; |
@@ -699,7 +701,7 @@ static struct net_device_stats *rtl8150_netdev_stats(struct net_device *dev) | |||
699 | static void rtl8150_tx_timeout(struct net_device *netdev) | 701 | static void rtl8150_tx_timeout(struct net_device *netdev) |
700 | { | 702 | { |
701 | rtl8150_t *dev = netdev_priv(netdev); | 703 | rtl8150_t *dev = netdev_priv(netdev); |
702 | warn("%s: Tx timeout.", netdev->name); | 704 | dev_warn(&netdev->dev, "Tx timeout.\n"); |
703 | usb_unlink_urb(dev->tx_urb); | 705 | usb_unlink_urb(dev->tx_urb); |
704 | dev->stats.tx_errors++; | 706 | dev->stats.tx_errors++; |
705 | } | 707 | } |
@@ -710,12 +712,12 @@ static void rtl8150_set_multicast(struct net_device *netdev) | |||
710 | netif_stop_queue(netdev); | 712 | netif_stop_queue(netdev); |
711 | if (netdev->flags & IFF_PROMISC) { | 713 | if (netdev->flags & IFF_PROMISC) { |
712 | dev->rx_creg |= cpu_to_le16(0x0001); | 714 | dev->rx_creg |= cpu_to_le16(0x0001); |
713 | info("%s: promiscuous mode", netdev->name); | 715 | dev_info(&netdev->dev, "%s: promiscuous mode\n", netdev->name); |
714 | } else if (netdev->mc_count || | 716 | } else if (netdev->mc_count || |
715 | (netdev->flags & IFF_ALLMULTI)) { | 717 | (netdev->flags & IFF_ALLMULTI)) { |
716 | dev->rx_creg &= cpu_to_le16(0xfffe); | 718 | dev->rx_creg &= cpu_to_le16(0xfffe); |
717 | dev->rx_creg |= cpu_to_le16(0x0002); | 719 | dev->rx_creg |= cpu_to_le16(0x0002); |
718 | info("%s: allmulti set", netdev->name); | 720 | dev_info(&netdev->dev, "%s: allmulti set\n", netdev->name); |
719 | } else { | 721 | } else { |
720 | /* ~RX_MULTICAST, ~RX_PROMISCUOUS */ | 722 | /* ~RX_MULTICAST, ~RX_PROMISCUOUS */ |
721 | dev->rx_creg &= cpu_to_le16(0x00fc); | 723 | dev->rx_creg &= cpu_to_le16(0x00fc); |
@@ -740,7 +742,7 @@ static int rtl8150_start_xmit(struct sk_buff *skb, struct net_device *netdev) | |||
740 | if (res == -ENODEV) | 742 | if (res == -ENODEV) |
741 | netif_device_detach(dev->netdev); | 743 | netif_device_detach(dev->netdev); |
742 | else { | 744 | else { |
743 | warn("failed tx_urb %d\n", res); | 745 | dev_warn(&netdev->dev, "failed tx_urb %d\n", res); |
744 | dev->stats.tx_errors++; | 746 | dev->stats.tx_errors++; |
745 | netif_start_queue(netdev); | 747 | netif_start_queue(netdev); |
746 | } | 748 | } |
@@ -783,7 +785,7 @@ static int rtl8150_open(struct net_device *netdev) | |||
783 | if ((res = usb_submit_urb(dev->rx_urb, GFP_KERNEL))) { | 785 | if ((res = usb_submit_urb(dev->rx_urb, GFP_KERNEL))) { |
784 | if (res == -ENODEV) | 786 | if (res == -ENODEV) |
785 | netif_device_detach(dev->netdev); | 787 | netif_device_detach(dev->netdev); |
786 | warn("%s: rx_urb submit failed: %d", __FUNCTION__, res); | 788 | dev_warn(&netdev->dev, "rx_urb submit failed: %d\n", res); |
787 | return res; | 789 | return res; |
788 | } | 790 | } |
789 | usb_fill_int_urb(dev->intr_urb, dev->udev, usb_rcvintpipe(dev->udev, 3), | 791 | usb_fill_int_urb(dev->intr_urb, dev->udev, usb_rcvintpipe(dev->udev, 3), |
@@ -792,7 +794,7 @@ static int rtl8150_open(struct net_device *netdev) | |||
792 | if ((res = usb_submit_urb(dev->intr_urb, GFP_KERNEL))) { | 794 | if ((res = usb_submit_urb(dev->intr_urb, GFP_KERNEL))) { |
793 | if (res == -ENODEV) | 795 | if (res == -ENODEV) |
794 | netif_device_detach(dev->netdev); | 796 | netif_device_detach(dev->netdev); |
795 | warn("%s: intr_urb submit failed: %d", __FUNCTION__, res); | 797 | dev_warn(&netdev->dev, "intr_urb submit failed: %d\n", res); |
796 | usb_kill_urb(dev->rx_urb); | 798 | usb_kill_urb(dev->rx_urb); |
797 | return res; | 799 | return res; |
798 | } | 800 | } |
@@ -947,7 +949,7 @@ static int rtl8150_probe(struct usb_interface *intf, | |||
947 | goto out2; | 949 | goto out2; |
948 | } | 950 | } |
949 | 951 | ||
950 | info("%s: rtl8150 is detected", netdev->name); | 952 | dev_info(&intf->dev, "%s: rtl8150 is detected\n", netdev->name); |
951 | 953 | ||
952 | return 0; | 954 | return 0; |
953 | 955 | ||
@@ -984,7 +986,8 @@ static void rtl8150_disconnect(struct usb_interface *intf) | |||
984 | 986 | ||
985 | static int __init usb_rtl8150_init(void) | 987 | static int __init usb_rtl8150_init(void) |
986 | { | 988 | { |
987 | info(DRIVER_DESC " " DRIVER_VERSION); | 989 | printk(KERN_INFO KBUILD_MODNAME ": " DRIVER_VERSION ":" |
990 | DRIVER_DESC "\n"); | ||
988 | return usb_register(&rtl8150_driver); | 991 | return usb_register(&rtl8150_driver); |
989 | } | 992 | } |
990 | 993 | ||
diff --git a/drivers/net/wan/cosa.c b/drivers/net/wan/cosa.c index f14051556c87..7f97f8d08c39 100644 --- a/drivers/net/wan/cosa.c +++ b/drivers/net/wan/cosa.c | |||
@@ -388,8 +388,8 @@ static int __init cosa_init(void) | |||
388 | goto out_chrdev; | 388 | goto out_chrdev; |
389 | } | 389 | } |
390 | for (i = 0; i < nr_cards; i++) | 390 | for (i = 0; i < nr_cards; i++) |
391 | device_create_drvdata(cosa_class, NULL, MKDEV(cosa_major, i), | 391 | device_create(cosa_class, NULL, MKDEV(cosa_major, i), NULL, |
392 | NULL, "cosa%d", i); | 392 | "cosa%d", i); |
393 | err = 0; | 393 | err = 0; |
394 | goto out; | 394 | goto out; |
395 | 395 | ||
diff --git a/drivers/net/wan/lmc/lmc_main.c b/drivers/net/wan/lmc/lmc_main.c index f80640f5a744..d7bb63e616b5 100644 --- a/drivers/net/wan/lmc/lmc_main.c +++ b/drivers/net/wan/lmc/lmc_main.c | |||
@@ -122,7 +122,6 @@ int lmc_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) /*fold00*/ | |||
122 | * Most functions mess with the structure | 122 | * Most functions mess with the structure |
123 | * Disable interrupts while we do the polling | 123 | * Disable interrupts while we do the polling |
124 | */ | 124 | */ |
125 | spin_lock_irqsave(&sc->lmc_lock, flags); | ||
126 | 125 | ||
127 | switch (cmd) { | 126 | switch (cmd) { |
128 | /* | 127 | /* |
@@ -152,6 +151,7 @@ int lmc_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) /*fold00*/ | |||
152 | break; | 151 | break; |
153 | } | 152 | } |
154 | 153 | ||
154 | spin_lock_irqsave(&sc->lmc_lock, flags); | ||
155 | sc->lmc_media->set_status (sc, &ctl); | 155 | sc->lmc_media->set_status (sc, &ctl); |
156 | 156 | ||
157 | if(ctl.crc_length != sc->ictl.crc_length) { | 157 | if(ctl.crc_length != sc->ictl.crc_length) { |
@@ -161,6 +161,7 @@ int lmc_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) /*fold00*/ | |||
161 | else | 161 | else |
162 | sc->TxDescriptControlInit &= ~LMC_TDES_ADD_CRC_DISABLE; | 162 | sc->TxDescriptControlInit &= ~LMC_TDES_ADD_CRC_DISABLE; |
163 | } | 163 | } |
164 | spin_unlock_irqrestore(&sc->lmc_lock, flags); | ||
164 | 165 | ||
165 | ret = 0; | 166 | ret = 0; |
166 | break; | 167 | break; |
@@ -187,15 +188,18 @@ int lmc_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) /*fold00*/ | |||
187 | break; /* no change */ | 188 | break; /* no change */ |
188 | } | 189 | } |
189 | 190 | ||
191 | spin_lock_irqsave(&sc->lmc_lock, flags); | ||
190 | lmc_proto_close(sc); | 192 | lmc_proto_close(sc); |
191 | 193 | ||
192 | sc->if_type = new_type; | 194 | sc->if_type = new_type; |
193 | lmc_proto_attach(sc); | 195 | lmc_proto_attach(sc); |
194 | ret = lmc_proto_open(sc); | 196 | ret = lmc_proto_open(sc); |
197 | spin_unlock_irqrestore(&sc->lmc_lock, flags); | ||
195 | break; | 198 | break; |
196 | } | 199 | } |
197 | 200 | ||
198 | case LMCIOCGETXINFO: /*fold01*/ | 201 | case LMCIOCGETXINFO: /*fold01*/ |
202 | spin_lock_irqsave(&sc->lmc_lock, flags); | ||
199 | sc->lmc_xinfo.Magic0 = 0xBEEFCAFE; | 203 | sc->lmc_xinfo.Magic0 = 0xBEEFCAFE; |
200 | 204 | ||
201 | sc->lmc_xinfo.PciCardType = sc->lmc_cardtype; | 205 | sc->lmc_xinfo.PciCardType = sc->lmc_cardtype; |
@@ -208,6 +212,7 @@ int lmc_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) /*fold00*/ | |||
208 | sc->lmc_xinfo.MaxFrameSize = LMC_PKT_BUF_SZ; | 212 | sc->lmc_xinfo.MaxFrameSize = LMC_PKT_BUF_SZ; |
209 | sc->lmc_xinfo.link_status = sc->lmc_media->get_link_status (sc); | 213 | sc->lmc_xinfo.link_status = sc->lmc_media->get_link_status (sc); |
210 | sc->lmc_xinfo.mii_reg16 = lmc_mii_readreg (sc, 0, 16); | 214 | sc->lmc_xinfo.mii_reg16 = lmc_mii_readreg (sc, 0, 16); |
215 | spin_unlock_irqrestore(&sc->lmc_lock, flags); | ||
211 | 216 | ||
212 | sc->lmc_xinfo.Magic1 = 0xDEADBEEF; | 217 | sc->lmc_xinfo.Magic1 = 0xDEADBEEF; |
213 | 218 | ||
@@ -220,6 +225,7 @@ int lmc_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) /*fold00*/ | |||
220 | break; | 225 | break; |
221 | 226 | ||
222 | case LMCIOCGETLMCSTATS: | 227 | case LMCIOCGETLMCSTATS: |
228 | spin_lock_irqsave(&sc->lmc_lock, flags); | ||
223 | if (sc->lmc_cardtype == LMC_CARDTYPE_T1) { | 229 | if (sc->lmc_cardtype == LMC_CARDTYPE_T1) { |
224 | lmc_mii_writereg(sc, 0, 17, T1FRAMER_FERR_LSB); | 230 | lmc_mii_writereg(sc, 0, 17, T1FRAMER_FERR_LSB); |
225 | sc->extra_stats.framingBitErrorCount += | 231 | sc->extra_stats.framingBitErrorCount += |
@@ -243,6 +249,7 @@ int lmc_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) /*fold00*/ | |||
243 | sc->extra_stats.severelyErroredFrameCount += | 249 | sc->extra_stats.severelyErroredFrameCount += |
244 | regVal & T1FRAMER_SEF_MASK; | 250 | regVal & T1FRAMER_SEF_MASK; |
245 | } | 251 | } |
252 | spin_unlock_irqrestore(&sc->lmc_lock, flags); | ||
246 | if (copy_to_user(ifr->ifr_data, &sc->lmc_device->stats, | 253 | if (copy_to_user(ifr->ifr_data, &sc->lmc_device->stats, |
247 | sizeof(sc->lmc_device->stats)) || | 254 | sizeof(sc->lmc_device->stats)) || |
248 | copy_to_user(ifr->ifr_data + sizeof(sc->lmc_device->stats), | 255 | copy_to_user(ifr->ifr_data + sizeof(sc->lmc_device->stats), |
@@ -258,12 +265,14 @@ int lmc_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) /*fold00*/ | |||
258 | break; | 265 | break; |
259 | } | 266 | } |
260 | 267 | ||
268 | spin_lock_irqsave(&sc->lmc_lock, flags); | ||
261 | memset(&sc->lmc_device->stats, 0, sizeof(sc->lmc_device->stats)); | 269 | memset(&sc->lmc_device->stats, 0, sizeof(sc->lmc_device->stats)); |
262 | memset(&sc->extra_stats, 0, sizeof(sc->extra_stats)); | 270 | memset(&sc->extra_stats, 0, sizeof(sc->extra_stats)); |
263 | sc->extra_stats.check = STATCHECK; | 271 | sc->extra_stats.check = STATCHECK; |
264 | sc->extra_stats.version_size = (DRIVER_VERSION << 16) + | 272 | sc->extra_stats.version_size = (DRIVER_VERSION << 16) + |
265 | sizeof(sc->lmc_device->stats) + sizeof(sc->extra_stats); | 273 | sizeof(sc->lmc_device->stats) + sizeof(sc->extra_stats); |
266 | sc->extra_stats.lmc_cardtype = sc->lmc_cardtype; | 274 | sc->extra_stats.lmc_cardtype = sc->lmc_cardtype; |
275 | spin_unlock_irqrestore(&sc->lmc_lock, flags); | ||
267 | ret = 0; | 276 | ret = 0; |
268 | break; | 277 | break; |
269 | 278 | ||
@@ -282,8 +291,10 @@ int lmc_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) /*fold00*/ | |||
282 | ret = -EFAULT; | 291 | ret = -EFAULT; |
283 | break; | 292 | break; |
284 | } | 293 | } |
294 | spin_lock_irqsave(&sc->lmc_lock, flags); | ||
285 | sc->lmc_media->set_circuit_type(sc, ctl.circuit_type); | 295 | sc->lmc_media->set_circuit_type(sc, ctl.circuit_type); |
286 | sc->ictl.circuit_type = ctl.circuit_type; | 296 | sc->ictl.circuit_type = ctl.circuit_type; |
297 | spin_unlock_irqrestore(&sc->lmc_lock, flags); | ||
287 | ret = 0; | 298 | ret = 0; |
288 | 299 | ||
289 | break; | 300 | break; |
@@ -294,12 +305,14 @@ int lmc_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) /*fold00*/ | |||
294 | break; | 305 | break; |
295 | } | 306 | } |
296 | 307 | ||
308 | spin_lock_irqsave(&sc->lmc_lock, flags); | ||
297 | /* Reset driver and bring back to current state */ | 309 | /* Reset driver and bring back to current state */ |
298 | printk (" REG16 before reset +%04x\n", lmc_mii_readreg (sc, 0, 16)); | 310 | printk (" REG16 before reset +%04x\n", lmc_mii_readreg (sc, 0, 16)); |
299 | lmc_running_reset (dev); | 311 | lmc_running_reset (dev); |
300 | printk (" REG16 after reset +%04x\n", lmc_mii_readreg (sc, 0, 16)); | 312 | printk (" REG16 after reset +%04x\n", lmc_mii_readreg (sc, 0, 16)); |
301 | 313 | ||
302 | LMC_EVENT_LOG(LMC_EVENT_FORCEDRESET, LMC_CSR_READ (sc, csr_status), lmc_mii_readreg (sc, 0, 16)); | 314 | LMC_EVENT_LOG(LMC_EVENT_FORCEDRESET, LMC_CSR_READ (sc, csr_status), lmc_mii_readreg (sc, 0, 16)); |
315 | spin_unlock_irqrestore(&sc->lmc_lock, flags); | ||
303 | 316 | ||
304 | ret = 0; | 317 | ret = 0; |
305 | break; | 318 | break; |
@@ -338,14 +351,15 @@ int lmc_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) /*fold00*/ | |||
338 | */ | 351 | */ |
339 | netif_stop_queue(dev); | 352 | netif_stop_queue(dev); |
340 | 353 | ||
341 | if (copy_from_user(&xc, ifr->ifr_data, sizeof(struct lmc_xilinx_control))) { | 354 | if (copy_from_user(&xc, ifr->ifr_data, sizeof(struct lmc_xilinx_control))) { |
342 | ret = -EFAULT; | 355 | ret = -EFAULT; |
343 | break; | 356 | break; |
344 | } | 357 | } |
345 | switch(xc.command){ | 358 | switch(xc.command){ |
346 | case lmc_xilinx_reset: /*fold02*/ | 359 | case lmc_xilinx_reset: /*fold02*/ |
347 | { | 360 | { |
348 | u16 mii; | 361 | u16 mii; |
362 | spin_lock_irqsave(&sc->lmc_lock, flags); | ||
349 | mii = lmc_mii_readreg (sc, 0, 16); | 363 | mii = lmc_mii_readreg (sc, 0, 16); |
350 | 364 | ||
351 | /* | 365 | /* |
@@ -404,6 +418,7 @@ int lmc_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) /*fold00*/ | |||
404 | lmc_led_off(sc, LMC_DS3_LED2); | 418 | lmc_led_off(sc, LMC_DS3_LED2); |
405 | } | 419 | } |
406 | } | 420 | } |
421 | spin_unlock_irqrestore(&sc->lmc_lock, flags); | ||
407 | 422 | ||
408 | 423 | ||
409 | 424 | ||
@@ -416,6 +431,7 @@ int lmc_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) /*fold00*/ | |||
416 | { | 431 | { |
417 | u16 mii; | 432 | u16 mii; |
418 | int timeout = 500000; | 433 | int timeout = 500000; |
434 | spin_lock_irqsave(&sc->lmc_lock, flags); | ||
419 | mii = lmc_mii_readreg (sc, 0, 16); | 435 | mii = lmc_mii_readreg (sc, 0, 16); |
420 | 436 | ||
421 | /* | 437 | /* |
@@ -451,13 +467,14 @@ int lmc_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) /*fold00*/ | |||
451 | */ | 467 | */ |
452 | while( (LMC_CSR_READ(sc, csr_gp) & LMC_GEP_INIT) == 0 && | 468 | while( (LMC_CSR_READ(sc, csr_gp) & LMC_GEP_INIT) == 0 && |
453 | (timeout-- > 0)) | 469 | (timeout-- > 0)) |
454 | ; | 470 | cpu_relax(); |
455 | 471 | ||
456 | 472 | ||
457 | /* | 473 | /* |
458 | * stop driving Xilinx-related signals | 474 | * stop driving Xilinx-related signals |
459 | */ | 475 | */ |
460 | lmc_gpio_mkinput(sc, 0xff); | 476 | lmc_gpio_mkinput(sc, 0xff); |
477 | spin_unlock_irqrestore(&sc->lmc_lock, flags); | ||
461 | 478 | ||
462 | ret = 0x0; | 479 | ret = 0x0; |
463 | 480 | ||
@@ -493,6 +510,7 @@ int lmc_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) /*fold00*/ | |||
493 | 510 | ||
494 | printk("%s: Starting load of data Len: %d at 0x%p == 0x%p\n", dev->name, xc.len, xc.data, data); | 511 | printk("%s: Starting load of data Len: %d at 0x%p == 0x%p\n", dev->name, xc.len, xc.data, data); |
495 | 512 | ||
513 | spin_lock_irqsave(&sc->lmc_lock, flags); | ||
496 | lmc_gpio_mkinput(sc, 0xff); | 514 | lmc_gpio_mkinput(sc, 0xff); |
497 | 515 | ||
498 | /* | 516 | /* |
@@ -545,7 +563,7 @@ int lmc_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) /*fold00*/ | |||
545 | */ | 563 | */ |
546 | while( (LMC_CSR_READ(sc, csr_gp) & LMC_GEP_INIT) == 0 && | 564 | while( (LMC_CSR_READ(sc, csr_gp) & LMC_GEP_INIT) == 0 && |
547 | (timeout-- > 0)) | 565 | (timeout-- > 0)) |
548 | ; | 566 | cpu_relax(); |
549 | 567 | ||
550 | printk(KERN_DEBUG "%s: Waited %d for the Xilinx to clear it's memory\n", dev->name, 500000-timeout); | 568 | printk(KERN_DEBUG "%s: Waited %d for the Xilinx to clear it's memory\n", dev->name, 500000-timeout); |
551 | 569 | ||
@@ -588,6 +606,7 @@ int lmc_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) /*fold00*/ | |||
588 | 606 | ||
589 | sc->lmc_miireg16 &= ~LMC_MII16_FIFO_RESET; | 607 | sc->lmc_miireg16 &= ~LMC_MII16_FIFO_RESET; |
590 | lmc_mii_writereg(sc, 0, 16, sc->lmc_miireg16); | 608 | lmc_mii_writereg(sc, 0, 16, sc->lmc_miireg16); |
609 | spin_unlock_irqrestore(&sc->lmc_lock, flags); | ||
591 | 610 | ||
592 | kfree(data); | 611 | kfree(data); |
593 | 612 | ||
@@ -611,8 +630,6 @@ int lmc_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) /*fold00*/ | |||
611 | break; | 630 | break; |
612 | } | 631 | } |
613 | 632 | ||
614 | spin_unlock_irqrestore(&sc->lmc_lock, flags); /*fold01*/ | ||
615 | |||
616 | lmc_trace(dev, "lmc_ioctl out"); | 633 | lmc_trace(dev, "lmc_ioctl out"); |
617 | 634 | ||
618 | return ret; | 635 | return ret; |
diff --git a/drivers/net/wan/sbni.c b/drivers/net/wan/sbni.c index f972fef87c98..ee51b6a5e605 100644 --- a/drivers/net/wan/sbni.c +++ b/drivers/net/wan/sbni.c | |||
@@ -318,7 +318,7 @@ sbni_pci_probe( struct net_device *dev ) | |||
318 | continue; | 318 | continue; |
319 | } | 319 | } |
320 | 320 | ||
321 | if( pci_irq_line <= 0 || pci_irq_line >= NR_IRQS ) | 321 | if (pci_irq_line <= 0 || pci_irq_line >= nr_irqs) |
322 | printk( KERN_WARNING " WARNING: The PCI BIOS assigned " | 322 | printk( KERN_WARNING " WARNING: The PCI BIOS assigned " |
323 | "this PCI card to IRQ %d, which is unlikely " | 323 | "this PCI card to IRQ %d, which is unlikely " |
324 | "to work!.\n" | 324 | "to work!.\n" |
diff --git a/drivers/net/wireless/ath9k/main.c b/drivers/net/wireless/ath9k/main.c index 74726990d59e..f05f584ab7bc 100644 --- a/drivers/net/wireless/ath9k/main.c +++ b/drivers/net/wireless/ath9k/main.c | |||
@@ -1640,6 +1640,11 @@ static int ath9k_ampdu_action(struct ieee80211_hw *hw, | |||
1640 | return ret; | 1640 | return ret; |
1641 | } | 1641 | } |
1642 | 1642 | ||
1643 | static int ath9k_no_fragmentation(struct ieee80211_hw *hw, u32 value) | ||
1644 | { | ||
1645 | return -EOPNOTSUPP; | ||
1646 | } | ||
1647 | |||
1643 | static struct ieee80211_ops ath9k_ops = { | 1648 | static struct ieee80211_ops ath9k_ops = { |
1644 | .tx = ath9k_tx, | 1649 | .tx = ath9k_tx, |
1645 | .start = ath9k_start, | 1650 | .start = ath9k_start, |
@@ -1664,7 +1669,8 @@ static struct ieee80211_ops ath9k_ops = { | |||
1664 | .get_tsf = ath9k_get_tsf, | 1669 | .get_tsf = ath9k_get_tsf, |
1665 | .reset_tsf = ath9k_reset_tsf, | 1670 | .reset_tsf = ath9k_reset_tsf, |
1666 | .tx_last_beacon = NULL, | 1671 | .tx_last_beacon = NULL, |
1667 | .ampdu_action = ath9k_ampdu_action | 1672 | .ampdu_action = ath9k_ampdu_action, |
1673 | .set_frag_threshold = ath9k_no_fragmentation, | ||
1668 | }; | 1674 | }; |
1669 | 1675 | ||
1670 | static int ath_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id) | 1676 | static int ath_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id) |
diff --git a/drivers/net/wireless/iwlwifi/iwl-5000.c b/drivers/net/wireless/iwlwifi/iwl-5000.c index f6003e7996af..5155b8a760a7 100644 --- a/drivers/net/wireless/iwlwifi/iwl-5000.c +++ b/drivers/net/wireless/iwlwifi/iwl-5000.c | |||
@@ -833,12 +833,12 @@ static int iwl5000_hw_set_hw_params(struct iwl_priv *priv) | |||
833 | switch (priv->hw_rev & CSR_HW_REV_TYPE_MSK) { | 833 | switch (priv->hw_rev & CSR_HW_REV_TYPE_MSK) { |
834 | case CSR_HW_REV_TYPE_5100: | 834 | case CSR_HW_REV_TYPE_5100: |
835 | case CSR_HW_REV_TYPE_5300: | 835 | case CSR_HW_REV_TYPE_5300: |
836 | /* 5X00 wants in Celsius */ | 836 | case CSR_HW_REV_TYPE_5350: |
837 | /* 5X00 and 5350 wants in Celsius */ | ||
837 | priv->hw_params.ct_kill_threshold = CT_KILL_THRESHOLD; | 838 | priv->hw_params.ct_kill_threshold = CT_KILL_THRESHOLD; |
838 | break; | 839 | break; |
839 | case CSR_HW_REV_TYPE_5150: | 840 | case CSR_HW_REV_TYPE_5150: |
840 | case CSR_HW_REV_TYPE_5350: | 841 | /* 5150 wants in Kelvin */ |
841 | /* 5X50 wants in Kelvin */ | ||
842 | priv->hw_params.ct_kill_threshold = | 842 | priv->hw_params.ct_kill_threshold = |
843 | CELSIUS_TO_KELVIN(CT_KILL_THRESHOLD); | 843 | CELSIUS_TO_KELVIN(CT_KILL_THRESHOLD); |
844 | break; | 844 | break; |
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn-rs.c b/drivers/net/wireless/iwlwifi/iwl-agn-rs.c index 93944de923ca..e2a58e477036 100644 --- a/drivers/net/wireless/iwlwifi/iwl-agn-rs.c +++ b/drivers/net/wireless/iwlwifi/iwl-agn-rs.c | |||
@@ -2422,7 +2422,7 @@ static void rs_free_sta(void *priv_r, struct ieee80211_sta *sta, | |||
2422 | void *priv_sta) | 2422 | void *priv_sta) |
2423 | { | 2423 | { |
2424 | struct iwl_lq_sta *lq_sta = priv_sta; | 2424 | struct iwl_lq_sta *lq_sta = priv_sta; |
2425 | struct iwl_priv *priv = priv_r; | 2425 | struct iwl_priv *priv __maybe_unused = priv_r; |
2426 | 2426 | ||
2427 | IWL_DEBUG_RATE("enter\n"); | 2427 | IWL_DEBUG_RATE("enter\n"); |
2428 | kfree(lq_sta); | 2428 | kfree(lq_sta); |
diff --git a/drivers/net/wireless/libertas/cmd.c b/drivers/net/wireless/libertas/cmd.c index a912fb68c099..297696de2da0 100644 --- a/drivers/net/wireless/libertas/cmd.c +++ b/drivers/net/wireless/libertas/cmd.c | |||
@@ -823,7 +823,9 @@ int lbs_update_channel(struct lbs_private *priv) | |||
823 | int lbs_set_channel(struct lbs_private *priv, u8 channel) | 823 | int lbs_set_channel(struct lbs_private *priv, u8 channel) |
824 | { | 824 | { |
825 | struct cmd_ds_802_11_rf_channel cmd; | 825 | struct cmd_ds_802_11_rf_channel cmd; |
826 | #ifdef DEBUG | ||
826 | u8 old_channel = priv->curbssparams.channel; | 827 | u8 old_channel = priv->curbssparams.channel; |
828 | #endif | ||
827 | int ret = 0; | 829 | int ret = 0; |
828 | 830 | ||
829 | lbs_deb_enter(LBS_DEB_CMD); | 831 | lbs_deb_enter(LBS_DEB_CMD); |
diff --git a/drivers/net/wireless/mac80211_hwsim.c b/drivers/net/wireless/mac80211_hwsim.c index c9e4a435b2fc..1a019e98dac3 100644 --- a/drivers/net/wireless/mac80211_hwsim.c +++ b/drivers/net/wireless/mac80211_hwsim.c | |||
@@ -533,11 +533,11 @@ static int __init init_mac80211_hwsim(void) | |||
533 | data = hw->priv; | 533 | data = hw->priv; |
534 | data->hw = hw; | 534 | data->hw = hw; |
535 | 535 | ||
536 | data->dev = device_create_drvdata(hwsim_class, NULL, 0, hw, | 536 | data->dev = device_create(hwsim_class, NULL, 0, hw, |
537 | "hwsim%d", i); | 537 | "hwsim%d", i); |
538 | if (IS_ERR(data->dev)) { | 538 | if (IS_ERR(data->dev)) { |
539 | printk(KERN_DEBUG | 539 | printk(KERN_DEBUG |
540 | "mac80211_hwsim: device_create_drvdata " | 540 | "mac80211_hwsim: device_create " |
541 | "failed (%ld)\n", PTR_ERR(data->dev)); | 541 | "failed (%ld)\n", PTR_ERR(data->dev)); |
542 | err = -ENOMEM; | 542 | err = -ENOMEM; |
543 | goto failed_drvdata; | 543 | goto failed_drvdata; |
diff --git a/drivers/net/wireless/orinoco_cs.c b/drivers/net/wireless/orinoco_cs.c index e585684e59a0..6fcf2bda7cdf 100644 --- a/drivers/net/wireless/orinoco_cs.c +++ b/drivers/net/wireless/orinoco_cs.c | |||
@@ -378,6 +378,7 @@ static int orinoco_cs_resume(struct pcmcia_device *link) | |||
378 | struct orinoco_private *priv = netdev_priv(dev); | 378 | struct orinoco_private *priv = netdev_priv(dev); |
379 | struct orinoco_pccard *card = priv->card; | 379 | struct orinoco_pccard *card = priv->card; |
380 | int err = 0; | 380 | int err = 0; |
381 | unsigned long flags; | ||
381 | 382 | ||
382 | if (! test_bit(0, &card->hard_reset_in_progress)) { | 383 | if (! test_bit(0, &card->hard_reset_in_progress)) { |
383 | err = orinoco_reinit_firmware(dev); | 384 | err = orinoco_reinit_firmware(dev); |
@@ -387,7 +388,7 @@ static int orinoco_cs_resume(struct pcmcia_device *link) | |||
387 | return -EIO; | 388 | return -EIO; |
388 | } | 389 | } |
389 | 390 | ||
390 | spin_lock(&priv->lock); | 391 | spin_lock_irqsave(&priv->lock, flags); |
391 | 392 | ||
392 | netif_device_attach(dev); | 393 | netif_device_attach(dev); |
393 | priv->hw_unavailable--; | 394 | priv->hw_unavailable--; |
@@ -399,7 +400,7 @@ static int orinoco_cs_resume(struct pcmcia_device *link) | |||
399 | dev->name, err); | 400 | dev->name, err); |
400 | } | 401 | } |
401 | 402 | ||
402 | spin_unlock(&priv->lock); | 403 | spin_unlock_irqrestore(&priv->lock, flags); |
403 | } | 404 | } |
404 | 405 | ||
405 | return err; | 406 | return err; |
diff --git a/drivers/net/wireless/p54/p54common.c b/drivers/net/wireless/p54/p54common.c index 1994aa199d37..117c7d3a52b0 100644 --- a/drivers/net/wireless/p54/p54common.c +++ b/drivers/net/wireless/p54/p54common.c | |||
@@ -479,7 +479,6 @@ static int p54_parse_eeprom(struct ieee80211_hw *dev, void *eeprom, int len) | |||
479 | printk(KERN_ERR "p54: eeprom parse failed!\n"); | 479 | printk(KERN_ERR "p54: eeprom parse failed!\n"); |
480 | return err; | 480 | return err; |
481 | } | 481 | } |
482 | EXPORT_SYMBOL_GPL(p54_parse_eeprom); | ||
483 | 482 | ||
484 | static int p54_rssi_to_dbm(struct ieee80211_hw *dev, int rssi) | 483 | static int p54_rssi_to_dbm(struct ieee80211_hw *dev, int rssi) |
485 | { | 484 | { |
diff --git a/drivers/net/wireless/p54/p54usb.c b/drivers/net/wireless/p54/p54usb.c index 1912f5e9a0a9..75d749bccb0d 100644 --- a/drivers/net/wireless/p54/p54usb.c +++ b/drivers/net/wireless/p54/p54usb.c | |||
@@ -39,6 +39,7 @@ static struct usb_device_id p54u_table[] __devinitdata = { | |||
39 | {USB_DEVICE(0x0846, 0x4200)}, /* Netgear WG121 */ | 39 | {USB_DEVICE(0x0846, 0x4200)}, /* Netgear WG121 */ |
40 | {USB_DEVICE(0x0846, 0x4210)}, /* Netgear WG121 the second ? */ | 40 | {USB_DEVICE(0x0846, 0x4210)}, /* Netgear WG121 the second ? */ |
41 | {USB_DEVICE(0x0846, 0x4220)}, /* Netgear WG111 */ | 41 | {USB_DEVICE(0x0846, 0x4220)}, /* Netgear WG111 */ |
42 | {USB_DEVICE(0x09aa, 0x1000)}, /* Spinnaker Proto board */ | ||
42 | {USB_DEVICE(0x0cde, 0x0006)}, /* Medion 40900, Roper Europe */ | 43 | {USB_DEVICE(0x0cde, 0x0006)}, /* Medion 40900, Roper Europe */ |
43 | {USB_DEVICE(0x124a, 0x4023)}, /* Shuttle PN15, Airvast WM168g, IOGear GWU513 */ | 44 | {USB_DEVICE(0x124a, 0x4023)}, /* Shuttle PN15, Airvast WM168g, IOGear GWU513 */ |
44 | {USB_DEVICE(0x1915, 0x2234)}, /* Linksys WUSB54G OEM */ | 45 | {USB_DEVICE(0x1915, 0x2234)}, /* Linksys WUSB54G OEM */ |
@@ -63,8 +64,8 @@ static struct usb_device_id p54u_table[] __devinitdata = { | |||
63 | {USB_DEVICE(0x0cde, 0x0006)}, /* Medion MD40900 */ | 64 | {USB_DEVICE(0x0cde, 0x0006)}, /* Medion MD40900 */ |
64 | {USB_DEVICE(0x0cde, 0x0008)}, /* Sagem XG703A */ | 65 | {USB_DEVICE(0x0cde, 0x0008)}, /* Sagem XG703A */ |
65 | {USB_DEVICE(0x0d8e, 0x3762)}, /* DLink DWL-G120 Cohiba */ | 66 | {USB_DEVICE(0x0d8e, 0x3762)}, /* DLink DWL-G120 Cohiba */ |
66 | {USB_DEVICE(0x09aa, 0x1000)}, /* Spinnaker Proto board */ | ||
67 | {USB_DEVICE(0x124a, 0x4025)}, /* IOGear GWU513 (GW3887IK chip) */ | 67 | {USB_DEVICE(0x124a, 0x4025)}, /* IOGear GWU513 (GW3887IK chip) */ |
68 | {USB_DEVICE(0x1260, 0xee22)}, /* SMC 2862W-G version 2 */ | ||
68 | {USB_DEVICE(0x13b1, 0x000a)}, /* Linksys WUSB54G ver 2 */ | 69 | {USB_DEVICE(0x13b1, 0x000a)}, /* Linksys WUSB54G ver 2 */ |
69 | {USB_DEVICE(0x13B1, 0x000C)}, /* Linksys WUSB54AG */ | 70 | {USB_DEVICE(0x13B1, 0x000C)}, /* Linksys WUSB54AG */ |
70 | {USB_DEVICE(0x1435, 0x0427)}, /* Inventel UR054G */ | 71 | {USB_DEVICE(0x1435, 0x0427)}, /* Inventel UR054G */ |
diff --git a/drivers/net/wireless/rt2x00/rt2x00queue.c b/drivers/net/wireless/rt2x00/rt2x00queue.c index 1676ac484790..451d410ecdae 100644 --- a/drivers/net/wireless/rt2x00/rt2x00queue.c +++ b/drivers/net/wireless/rt2x00/rt2x00queue.c | |||
@@ -374,7 +374,7 @@ int rt2x00queue_write_tx_frame(struct data_queue *queue, struct sk_buff *skb) | |||
374 | struct queue_entry *entry = rt2x00queue_get_entry(queue, Q_INDEX); | 374 | struct queue_entry *entry = rt2x00queue_get_entry(queue, Q_INDEX); |
375 | struct txentry_desc txdesc; | 375 | struct txentry_desc txdesc; |
376 | struct skb_frame_desc *skbdesc; | 376 | struct skb_frame_desc *skbdesc; |
377 | unsigned int iv_len; | 377 | unsigned int iv_len = 0; |
378 | 378 | ||
379 | if (unlikely(rt2x00queue_full(queue))) | 379 | if (unlikely(rt2x00queue_full(queue))) |
380 | return -EINVAL; | 380 | return -EINVAL; |
@@ -395,6 +395,9 @@ int rt2x00queue_write_tx_frame(struct data_queue *queue, struct sk_buff *skb) | |||
395 | entry->skb = skb; | 395 | entry->skb = skb; |
396 | rt2x00queue_create_tx_descriptor(entry, &txdesc); | 396 | rt2x00queue_create_tx_descriptor(entry, &txdesc); |
397 | 397 | ||
398 | if (IEEE80211_SKB_CB(skb)->control.hw_key != NULL) | ||
399 | iv_len = IEEE80211_SKB_CB(skb)->control.hw_key->iv_len; | ||
400 | |||
398 | /* | 401 | /* |
399 | * All information is retreived from the skb->cb array, | 402 | * All information is retreived from the skb->cb array, |
400 | * now we should claim ownership of the driver part of that | 403 | * now we should claim ownership of the driver part of that |
@@ -410,9 +413,7 @@ int rt2x00queue_write_tx_frame(struct data_queue *queue, struct sk_buff *skb) | |||
410 | * the frame so we can provide it to the driver seperately. | 413 | * the frame so we can provide it to the driver seperately. |
411 | */ | 414 | */ |
412 | if (test_bit(ENTRY_TXD_ENCRYPT, &txdesc.flags) && | 415 | if (test_bit(ENTRY_TXD_ENCRYPT, &txdesc.flags) && |
413 | !test_bit(ENTRY_TXD_ENCRYPT_IV, &txdesc.flags) && | 416 | !test_bit(ENTRY_TXD_ENCRYPT_IV, &txdesc.flags)) { |
414 | (IEEE80211_SKB_CB(skb)->control.hw_key != NULL)) { | ||
415 | iv_len = IEEE80211_SKB_CB(skb)->control.hw_key->iv_len; | ||
416 | rt2x00crypto_tx_remove_iv(skb, iv_len); | 417 | rt2x00crypto_tx_remove_iv(skb, iv_len); |
417 | } | 418 | } |
418 | 419 | ||
diff --git a/drivers/net/wireless/rtl8187_dev.c b/drivers/net/wireless/rtl8187_dev.c index e9902613e2ee..431e3c78bf27 100644 --- a/drivers/net/wireless/rtl8187_dev.c +++ b/drivers/net/wireless/rtl8187_dev.c | |||
@@ -33,10 +33,13 @@ MODULE_LICENSE("GPL"); | |||
33 | static struct usb_device_id rtl8187_table[] __devinitdata = { | 33 | static struct usb_device_id rtl8187_table[] __devinitdata = { |
34 | /* Asus */ | 34 | /* Asus */ |
35 | {USB_DEVICE(0x0b05, 0x171d), .driver_info = DEVICE_RTL8187}, | 35 | {USB_DEVICE(0x0b05, 0x171d), .driver_info = DEVICE_RTL8187}, |
36 | /* Belkin */ | ||
37 | {USB_DEVICE(0x050d, 0x705e), .driver_info = DEVICE_RTL8187B}, | ||
36 | /* Realtek */ | 38 | /* Realtek */ |
37 | {USB_DEVICE(0x0bda, 0x8187), .driver_info = DEVICE_RTL8187}, | 39 | {USB_DEVICE(0x0bda, 0x8187), .driver_info = DEVICE_RTL8187}, |
38 | {USB_DEVICE(0x0bda, 0x8189), .driver_info = DEVICE_RTL8187B}, | 40 | {USB_DEVICE(0x0bda, 0x8189), .driver_info = DEVICE_RTL8187B}, |
39 | {USB_DEVICE(0x0bda, 0x8197), .driver_info = DEVICE_RTL8187B}, | 41 | {USB_DEVICE(0x0bda, 0x8197), .driver_info = DEVICE_RTL8187B}, |
42 | {USB_DEVICE(0x0bda, 0x8198), .driver_info = DEVICE_RTL8187B}, | ||
40 | /* Netgear */ | 43 | /* Netgear */ |
41 | {USB_DEVICE(0x0846, 0x6100), .driver_info = DEVICE_RTL8187}, | 44 | {USB_DEVICE(0x0846, 0x6100), .driver_info = DEVICE_RTL8187}, |
42 | {USB_DEVICE(0x0846, 0x6a00), .driver_info = DEVICE_RTL8187}, | 45 | {USB_DEVICE(0x0846, 0x6a00), .driver_info = DEVICE_RTL8187}, |
diff --git a/drivers/net/wireless/spectrum_cs.c b/drivers/net/wireless/spectrum_cs.c index b0c71c3be467..852789ad34b3 100644 --- a/drivers/net/wireless/spectrum_cs.c +++ b/drivers/net/wireless/spectrum_cs.c | |||
@@ -426,10 +426,11 @@ spectrum_cs_suspend(struct pcmcia_device *link) | |||
426 | { | 426 | { |
427 | struct net_device *dev = link->priv; | 427 | struct net_device *dev = link->priv; |
428 | struct orinoco_private *priv = netdev_priv(dev); | 428 | struct orinoco_private *priv = netdev_priv(dev); |
429 | unsigned long flags; | ||
429 | int err = 0; | 430 | int err = 0; |
430 | 431 | ||
431 | /* Mark the device as stopped, to block IO until later */ | 432 | /* Mark the device as stopped, to block IO until later */ |
432 | spin_lock(&priv->lock); | 433 | spin_lock_irqsave(&priv->lock, flags); |
433 | 434 | ||
434 | err = __orinoco_down(dev); | 435 | err = __orinoco_down(dev); |
435 | if (err) | 436 | if (err) |
@@ -439,7 +440,7 @@ spectrum_cs_suspend(struct pcmcia_device *link) | |||
439 | netif_device_detach(dev); | 440 | netif_device_detach(dev); |
440 | priv->hw_unavailable++; | 441 | priv->hw_unavailable++; |
441 | 442 | ||
442 | spin_unlock(&priv->lock); | 443 | spin_unlock_irqrestore(&priv->lock, flags); |
443 | 444 | ||
444 | return err; | 445 | return err; |
445 | } | 446 | } |
diff --git a/drivers/net/xen-netfront.c b/drivers/net/xen-netfront.c index 3c3dd403f5dd..c6948d8f53f6 100644 --- a/drivers/net/xen-netfront.c +++ b/drivers/net/xen-netfront.c | |||
@@ -239,11 +239,14 @@ static void xennet_alloc_rx_buffers(struct net_device *dev) | |||
239 | */ | 239 | */ |
240 | batch_target = np->rx_target - (req_prod - np->rx.rsp_cons); | 240 | batch_target = np->rx_target - (req_prod - np->rx.rsp_cons); |
241 | for (i = skb_queue_len(&np->rx_batch); i < batch_target; i++) { | 241 | for (i = skb_queue_len(&np->rx_batch); i < batch_target; i++) { |
242 | skb = __netdev_alloc_skb(dev, RX_COPY_THRESHOLD, | 242 | skb = __netdev_alloc_skb(dev, RX_COPY_THRESHOLD + NET_IP_ALIGN, |
243 | GFP_ATOMIC | __GFP_NOWARN); | 243 | GFP_ATOMIC | __GFP_NOWARN); |
244 | if (unlikely(!skb)) | 244 | if (unlikely(!skb)) |
245 | goto no_skb; | 245 | goto no_skb; |
246 | 246 | ||
247 | /* Align ip header to a 16 bytes boundary */ | ||
248 | skb_reserve(skb, NET_IP_ALIGN); | ||
249 | |||
247 | page = alloc_page(GFP_ATOMIC | __GFP_NOWARN); | 250 | page = alloc_page(GFP_ATOMIC | __GFP_NOWARN); |
248 | if (!page) { | 251 | if (!page) { |
249 | kfree_skb(skb); | 252 | kfree_skb(skb); |
@@ -471,7 +474,7 @@ static int xennet_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
471 | unsigned int offset = offset_in_page(data); | 474 | unsigned int offset = offset_in_page(data); |
472 | unsigned int len = skb_headlen(skb); | 475 | unsigned int len = skb_headlen(skb); |
473 | 476 | ||
474 | frags += (offset + len + PAGE_SIZE - 1) / PAGE_SIZE; | 477 | frags += DIV_ROUND_UP(offset + len, PAGE_SIZE); |
475 | if (unlikely(frags > MAX_SKB_FRAGS + 1)) { | 478 | if (unlikely(frags > MAX_SKB_FRAGS + 1)) { |
476 | printk(KERN_ALERT "xennet: skb rides the rocket: %d frags\n", | 479 | printk(KERN_ALERT "xennet: skb rides the rocket: %d frags\n", |
477 | frags); | 480 | frags); |