aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb')
-rw-r--r--drivers/usb/serial/airprime.c4
-rw-r--r--drivers/usb/serial/belkin_sa.c4
-rw-r--r--drivers/usb/serial/bus.c9
-rw-r--r--drivers/usb/serial/cp2101.c4
-rw-r--r--drivers/usb/serial/cyberjack.c4
-rw-r--r--drivers/usb/serial/cypress_m8.c8
-rw-r--r--drivers/usb/serial/digi_acceleport.c8
-rw-r--r--drivers/usb/serial/empeg.c4
-rw-r--r--drivers/usb/serial/ftdi_sio.c4
-rw-r--r--drivers/usb/serial/garmin_gps.c4
-rw-r--r--drivers/usb/serial/generic.c4
-rw-r--r--drivers/usb/serial/hp4x.c4
-rw-r--r--drivers/usb/serial/io_tables.h12
-rw-r--r--drivers/usb/serial/io_ti.c8
-rw-r--r--drivers/usb/serial/ipaq.c4
-rw-r--r--drivers/usb/serial/ipw.c4
-rw-r--r--drivers/usb/serial/ir-usb.c4
-rw-r--r--drivers/usb/serial/keyspan.h16
-rw-r--r--drivers/usb/serial/keyspan_pda.c12
-rw-r--r--drivers/usb/serial/kl5kusb105.c4
-rw-r--r--drivers/usb/serial/kobil_sct.c4
-rw-r--r--drivers/usb/serial/mct_u232.c4
-rw-r--r--drivers/usb/serial/omninet.c4
-rw-r--r--drivers/usb/serial/option.c4
-rw-r--r--drivers/usb/serial/pl2303.c4
-rw-r--r--drivers/usb/serial/safe_serial.c4
-rw-r--r--drivers/usb/serial/ti_usb_3410_5052.c8
-rw-r--r--drivers/usb/serial/usb-serial.c22
-rw-r--r--drivers/usb/serial/usb-serial.h5
-rw-r--r--drivers/usb/serial/visor.c12
-rw-r--r--drivers/usb/serial/whiteheat.c8
31 files changed, 144 insertions, 60 deletions
diff --git a/drivers/usb/serial/airprime.c b/drivers/usb/serial/airprime.c
index 104c04385bb9..fbc5b9b44749 100644
--- a/drivers/usb/serial/airprime.c
+++ b/drivers/usb/serial/airprime.c
@@ -31,7 +31,9 @@ static struct usb_driver airprime_driver = {
31}; 31};
32 32
33static struct usb_serial_driver airprime_device = { 33static struct usb_serial_driver airprime_device = {
34 .owner = THIS_MODULE, 34 .driver = {
35 .owner = THIS_MODULE,
36 },
35 .name = "airprime", 37 .name = "airprime",
36 .id_table = id_table, 38 .id_table = id_table,
37 .num_interrupt_in = NUM_DONT_CARE, 39 .num_interrupt_in = NUM_DONT_CARE,
diff --git a/drivers/usb/serial/belkin_sa.c b/drivers/usb/serial/belkin_sa.c
index 6d84de40cb7b..4878961a0900 100644
--- a/drivers/usb/serial/belkin_sa.c
+++ b/drivers/usb/serial/belkin_sa.c
@@ -122,7 +122,9 @@ static struct usb_driver belkin_driver = {
122 122
123/* All of the device info needed for the serial converters */ 123/* All of the device info needed for the serial converters */
124static struct usb_serial_driver belkin_device = { 124static struct usb_serial_driver belkin_device = {
125 .owner = THIS_MODULE, 125 .driver = {
126 .owner = THIS_MODULE,
127 },
126 .name = "Belkin / Peracom / GoHubs USB Serial Adapter", 128 .name = "Belkin / Peracom / GoHubs USB Serial Adapter",
127 .short_name = "belkin", 129 .short_name = "belkin",
128 .id_table = id_table_combined, 130 .id_table = id_table_combined,
diff --git a/drivers/usb/serial/bus.c b/drivers/usb/serial/bus.c
index 5a0bcd34bb6d..b8364a8de7df 100644
--- a/drivers/usb/serial/bus.c
+++ b/drivers/usb/serial/bus.c
@@ -57,13 +57,13 @@ static int usb_serial_device_probe (struct device *dev)
57 57
58 driver = port->serial->type; 58 driver = port->serial->type;
59 if (driver->port_probe) { 59 if (driver->port_probe) {
60 if (!try_module_get(driver->owner)) { 60 if (!try_module_get(driver->driver.owner)) {
61 dev_err(dev, "module get failed, exiting\n"); 61 dev_err(dev, "module get failed, exiting\n");
62 retval = -EIO; 62 retval = -EIO;
63 goto exit; 63 goto exit;
64 } 64 }
65 retval = driver->port_probe (port); 65 retval = driver->port_probe (port);
66 module_put(driver->owner); 66 module_put(driver->driver.owner);
67 if (retval) 67 if (retval)
68 goto exit; 68 goto exit;
69 } 69 }
@@ -92,13 +92,13 @@ static int usb_serial_device_remove (struct device *dev)
92 92
93 driver = port->serial->type; 93 driver = port->serial->type;
94 if (driver->port_remove) { 94 if (driver->port_remove) {
95 if (!try_module_get(driver->owner)) { 95 if (!try_module_get(driver->driver.owner)) {
96 dev_err(dev, "module get failed, exiting\n"); 96 dev_err(dev, "module get failed, exiting\n");
97 retval = -EIO; 97 retval = -EIO;
98 goto exit; 98 goto exit;
99 } 99 }
100 retval = driver->port_remove (port); 100 retval = driver->port_remove (port);
101 module_put(driver->owner); 101 module_put(driver->driver.owner);
102 } 102 }
103exit: 103exit:
104 minor = port->number; 104 minor = port->number;
@@ -120,7 +120,6 @@ int usb_serial_bus_register(struct usb_serial_driver *driver)
120 driver->driver.bus = &usb_serial_bus_type; 120 driver->driver.bus = &usb_serial_bus_type;
121 driver->driver.probe = usb_serial_device_probe; 121 driver->driver.probe = usb_serial_device_probe;
122 driver->driver.remove = usb_serial_device_remove; 122 driver->driver.remove = usb_serial_device_remove;
123 driver->driver.owner = driver->owner;
124 123
125 retval = driver_register(&driver->driver); 124 retval = driver_register(&driver->driver);
126 125
diff --git a/drivers/usb/serial/cp2101.c b/drivers/usb/serial/cp2101.c
index 0b45b58bef5f..81dd720a122b 100644
--- a/drivers/usb/serial/cp2101.c
+++ b/drivers/usb/serial/cp2101.c
@@ -74,7 +74,9 @@ static struct usb_driver cp2101_driver = {
74}; 74};
75 75
76static struct usb_serial_driver cp2101_device = { 76static struct usb_serial_driver cp2101_device = {
77 .owner = THIS_MODULE, 77 .driver = {
78 .owner = THIS_MODULE,
79 },
78 .name = "CP2101", 80 .name = "CP2101",
79 .id_table = id_table, 81 .id_table = id_table,
80 .num_interrupt_in = 0, 82 .num_interrupt_in = 0,
diff --git a/drivers/usb/serial/cyberjack.c b/drivers/usb/serial/cyberjack.c
index 9f421a3c47e8..3441bad74f7b 100644
--- a/drivers/usb/serial/cyberjack.c
+++ b/drivers/usb/serial/cyberjack.c
@@ -84,7 +84,9 @@ static struct usb_driver cyberjack_driver = {
84}; 84};
85 85
86static struct usb_serial_driver cyberjack_device = { 86static struct usb_serial_driver cyberjack_device = {
87 .owner = THIS_MODULE, 87 .driver = {
88 .owner = THIS_MODULE,
89 },
88 .name = "Reiner SCT Cyberjack USB card reader", 90 .name = "Reiner SCT Cyberjack USB card reader",
89 .short_name = "cyberjack", 91 .short_name = "cyberjack",
90 .id_table = id_table, 92 .id_table = id_table,
diff --git a/drivers/usb/serial/cypress_m8.c b/drivers/usb/serial/cypress_m8.c
index 4fb8e59d1527..b4069af4d565 100644
--- a/drivers/usb/serial/cypress_m8.c
+++ b/drivers/usb/serial/cypress_m8.c
@@ -177,7 +177,9 @@ static unsigned int cypress_buf_get(struct cypress_buf *cb, char *buf, unsigne
177 177
178 178
179static struct usb_serial_driver cypress_earthmate_device = { 179static struct usb_serial_driver cypress_earthmate_device = {
180 .owner = THIS_MODULE, 180 .driver = {
181 .owner = THIS_MODULE,
182 },
181 .name = "DeLorme Earthmate USB", 183 .name = "DeLorme Earthmate USB",
182 .short_name = "earthmate", 184 .short_name = "earthmate",
183 .id_table = id_table_earthmate, 185 .id_table = id_table_earthmate,
@@ -204,7 +206,9 @@ static struct usb_serial_driver cypress_earthmate_device = {
204}; 206};
205 207
206static struct usb_serial_driver cypress_hidcom_device = { 208static struct usb_serial_driver cypress_hidcom_device = {
207 .owner = THIS_MODULE, 209 .driver = {
210 .owner = THIS_MODULE,
211 },
208 .name = "HID->COM RS232 Adapter", 212 .name = "HID->COM RS232 Adapter",
209 .short_name = "cyphidcom", 213 .short_name = "cyphidcom",
210 .id_table = id_table_cyphidcomrs232, 214 .id_table = id_table_cyphidcomrs232,
diff --git a/drivers/usb/serial/digi_acceleport.c b/drivers/usb/serial/digi_acceleport.c
index 66feb88b4316..be9b495d2491 100644
--- a/drivers/usb/serial/digi_acceleport.c
+++ b/drivers/usb/serial/digi_acceleport.c
@@ -504,7 +504,9 @@ static struct usb_driver digi_driver = {
504/* device info needed for the Digi serial converter */ 504/* device info needed for the Digi serial converter */
505 505
506static struct usb_serial_driver digi_acceleport_2_device = { 506static struct usb_serial_driver digi_acceleport_2_device = {
507 .owner = THIS_MODULE, 507 .driver = {
508 .owner = THIS_MODULE,
509 },
508 .name = "Digi 2 port USB adapter", 510 .name = "Digi 2 port USB adapter",
509 .short_name = "digi_2", 511 .short_name = "digi_2",
510 .id_table = id_table_2, 512 .id_table = id_table_2,
@@ -531,7 +533,9 @@ static struct usb_serial_driver digi_acceleport_2_device = {
531}; 533};
532 534
533static struct usb_serial_driver digi_acceleport_4_device = { 535static struct usb_serial_driver digi_acceleport_4_device = {
534 .owner = THIS_MODULE, 536 .driver = {
537 .owner = THIS_MODULE,
538 },
535 .name = "Digi 4 port USB adapter", 539 .name = "Digi 4 port USB adapter",
536 .short_name = "digi_4", 540 .short_name = "digi_4",
537 .id_table = id_table_4, 541 .id_table = id_table_4,
diff --git a/drivers/usb/serial/empeg.c b/drivers/usb/serial/empeg.c
index cbea8b38b60e..3e6c4ba7667b 100644
--- a/drivers/usb/serial/empeg.c
+++ b/drivers/usb/serial/empeg.c
@@ -113,7 +113,9 @@ static struct usb_driver empeg_driver = {
113}; 113};
114 114
115static struct usb_serial_driver empeg_device = { 115static struct usb_serial_driver empeg_device = {
116 .owner = THIS_MODULE, 116 .driver = {
117 .owner = THIS_MODULE,
118 },
117 .name = "Empeg", 119 .name = "Empeg",
118 .id_table = id_table, 120 .id_table = id_table,
119 .num_interrupt_in = 0, 121 .num_interrupt_in = 0,
diff --git a/drivers/usb/serial/ftdi_sio.c b/drivers/usb/serial/ftdi_sio.c
index 529e1a7ccfa0..9d945de0acac 100644
--- a/drivers/usb/serial/ftdi_sio.c
+++ b/drivers/usb/serial/ftdi_sio.c
@@ -563,7 +563,9 @@ static __u32 ftdi_232bm_baud_base_to_divisor (int baud, int base);
563static __u32 ftdi_232bm_baud_to_divisor (int baud); 563static __u32 ftdi_232bm_baud_to_divisor (int baud);
564 564
565static struct usb_serial_driver ftdi_sio_device = { 565static struct usb_serial_driver ftdi_sio_device = {
566 .owner = THIS_MODULE, 566 .driver = {
567 .owner = THIS_MODULE,
568 },
567 .name = "FTDI USB Serial Device", 569 .name = "FTDI USB Serial Device",
568 .short_name = "ftdi_sio", 570 .short_name = "ftdi_sio",
569 .id_table = id_table_combined, 571 .id_table = id_table_combined,
diff --git a/drivers/usb/serial/garmin_gps.c b/drivers/usb/serial/garmin_gps.c
index 7361194f1d66..3fd98c00cd6a 100644
--- a/drivers/usb/serial/garmin_gps.c
+++ b/drivers/usb/serial/garmin_gps.c
@@ -1470,7 +1470,9 @@ static void garmin_shutdown (struct usb_serial *serial)
1470 1470
1471/* All of the device info needed */ 1471/* All of the device info needed */
1472static struct usb_serial_driver garmin_device = { 1472static struct usb_serial_driver garmin_device = {
1473 .owner = THIS_MODULE, 1473 .driver = {
1474 .owner = THIS_MODULE,
1475 },
1474 .name = "Garmin GPS usb/tty", 1476 .name = "Garmin GPS usb/tty",
1475 .short_name = "garmin_gps", 1477 .short_name = "garmin_gps",
1476 .id_table = id_table, 1478 .id_table = id_table,
diff --git a/drivers/usb/serial/generic.c b/drivers/usb/serial/generic.c
index 7f567bf96549..779bea0c6242 100644
--- a/drivers/usb/serial/generic.c
+++ b/drivers/usb/serial/generic.c
@@ -37,7 +37,9 @@ static struct usb_device_id generic_device_ids[2]; /* Initially all zeroes. */
37 37
38/* All of the device info needed for the Generic Serial Converter */ 38/* All of the device info needed for the Generic Serial Converter */
39struct usb_serial_driver usb_serial_generic_device = { 39struct usb_serial_driver usb_serial_generic_device = {
40 .owner = THIS_MODULE, 40 .driver = {
41 .owner = THIS_MODULE,
42 },
41 .name = "Generic", 43 .name = "Generic",
42 .short_name = "generic", 44 .short_name = "generic",
43 .id_table = generic_device_ids, 45 .id_table = generic_device_ids,
diff --git a/drivers/usb/serial/hp4x.c b/drivers/usb/serial/hp4x.c
index b49469907a87..4f3cbc08c4ee 100644
--- a/drivers/usb/serial/hp4x.c
+++ b/drivers/usb/serial/hp4x.c
@@ -45,7 +45,9 @@ static struct usb_driver hp49gp_driver = {
45}; 45};
46 46
47static struct usb_serial_driver hp49gp_device = { 47static struct usb_serial_driver hp49gp_device = {
48 .owner = THIS_MODULE, 48 .driver = {
49 .owner = THIS_MODULE,
50 },
49 .name = "HP4X", 51 .name = "HP4X",
50 .id_table = id_table, 52 .id_table = id_table,
51 .num_interrupt_in = NUM_DONT_CARE, 53 .num_interrupt_in = NUM_DONT_CARE,
diff --git a/drivers/usb/serial/io_tables.h b/drivers/usb/serial/io_tables.h
index 7314c04727fe..28fb0d42a166 100644
--- a/drivers/usb/serial/io_tables.h
+++ b/drivers/usb/serial/io_tables.h
@@ -76,7 +76,9 @@ static struct usb_device_id id_table_combined [] = {
76MODULE_DEVICE_TABLE (usb, id_table_combined); 76MODULE_DEVICE_TABLE (usb, id_table_combined);
77 77
78static struct usb_serial_driver edgeport_2port_device = { 78static struct usb_serial_driver edgeport_2port_device = {
79 .owner = THIS_MODULE, 79 .driver = {
80 .owner = THIS_MODULE,
81 },
80 .name = "Edgeport 2 port adapter", 82 .name = "Edgeport 2 port adapter",
81 .short_name = "edgeport_2", 83 .short_name = "edgeport_2",
82 .id_table = edgeport_2port_id_table, 84 .id_table = edgeport_2port_id_table,
@@ -104,7 +106,9 @@ static struct usb_serial_driver edgeport_2port_device = {
104}; 106};
105 107
106static struct usb_serial_driver edgeport_4port_device = { 108static struct usb_serial_driver edgeport_4port_device = {
107 .owner = THIS_MODULE, 109 .driver = {
110 .owner = THIS_MODULE,
111 },
108 .name = "Edgeport 4 port adapter", 112 .name = "Edgeport 4 port adapter",
109 .short_name = "edgeport_4", 113 .short_name = "edgeport_4",
110 .id_table = edgeport_4port_id_table, 114 .id_table = edgeport_4port_id_table,
@@ -132,7 +136,9 @@ static struct usb_serial_driver edgeport_4port_device = {
132}; 136};
133 137
134static struct usb_serial_driver edgeport_8port_device = { 138static struct usb_serial_driver edgeport_8port_device = {
135 .owner = THIS_MODULE, 139 .driver = {
140 .owner = THIS_MODULE,
141 },
136 .name = "Edgeport 8 port adapter", 142 .name = "Edgeport 8 port adapter",
137 .short_name = "edgeport_8", 143 .short_name = "edgeport_8",
138 .id_table = edgeport_8port_id_table, 144 .id_table = edgeport_8port_id_table,
diff --git a/drivers/usb/serial/io_ti.c b/drivers/usb/serial/io_ti.c
index 4328cc702ef7..74228a072643 100644
--- a/drivers/usb/serial/io_ti.c
+++ b/drivers/usb/serial/io_ti.c
@@ -2983,7 +2983,9 @@ static unsigned int edge_buf_get(struct edge_buf *eb, char *buf,
2983 2983
2984 2984
2985static struct usb_serial_driver edgeport_1port_device = { 2985static struct usb_serial_driver edgeport_1port_device = {
2986 .owner = THIS_MODULE, 2986 .driver = {
2987 .owner = THIS_MODULE,
2988 },
2987 .name = "Edgeport TI 1 port adapter", 2989 .name = "Edgeport TI 1 port adapter",
2988 .short_name = "edgeport_ti_1", 2990 .short_name = "edgeport_ti_1",
2989 .id_table = edgeport_1port_id_table, 2991 .id_table = edgeport_1port_id_table,
@@ -3011,7 +3013,9 @@ static struct usb_serial_driver edgeport_1port_device = {
3011}; 3013};
3012 3014
3013static struct usb_serial_driver edgeport_2port_device = { 3015static struct usb_serial_driver edgeport_2port_device = {
3014 .owner = THIS_MODULE, 3016 .driver = {
3017 .owner = THIS_MODULE,
3018 },
3015 .name = "Edgeport TI 2 port adapter", 3019 .name = "Edgeport TI 2 port adapter",
3016 .short_name = "edgeport_ti_2", 3020 .short_name = "edgeport_ti_2",
3017 .id_table = edgeport_2port_id_table, 3021 .id_table = edgeport_2port_id_table,
diff --git a/drivers/usb/serial/ipaq.c b/drivers/usb/serial/ipaq.c
index 9a79ad8d7a5f..9aedfb91b20c 100644
--- a/drivers/usb/serial/ipaq.c
+++ b/drivers/usb/serial/ipaq.c
@@ -548,7 +548,9 @@ static struct usb_driver ipaq_driver = {
548 548
549/* All of the device info needed for the Compaq iPAQ */ 549/* All of the device info needed for the Compaq iPAQ */
550static struct usb_serial_driver ipaq_device = { 550static struct usb_serial_driver ipaq_device = {
551 .owner = THIS_MODULE, 551 .driver = {
552 .owner = THIS_MODULE,
553 },
552 .name = "PocketPC PDA", 554 .name = "PocketPC PDA",
553 .id_table = ipaq_id_table, 555 .id_table = ipaq_id_table,
554 .num_interrupt_in = NUM_DONT_CARE, 556 .num_interrupt_in = NUM_DONT_CARE,
diff --git a/drivers/usb/serial/ipw.c b/drivers/usb/serial/ipw.c
index 04524d34de3b..2ba69623ac05 100644
--- a/drivers/usb/serial/ipw.c
+++ b/drivers/usb/serial/ipw.c
@@ -444,7 +444,9 @@ static int ipw_disconnect(struct usb_serial_port *port)
444} 444}
445 445
446static struct usb_serial_driver ipw_device = { 446static struct usb_serial_driver ipw_device = {
447 .owner = THIS_MODULE, 447 .driver = {
448 .owner = THIS_MODULE,
449 },
448 .name = "IPWireless converter", 450 .name = "IPWireless converter",
449 .short_name = "ipw", 451 .short_name = "ipw",
450 .id_table = usb_ipw_ids, 452 .id_table = usb_ipw_ids,
diff --git a/drivers/usb/serial/ir-usb.c b/drivers/usb/serial/ir-usb.c
index ecfb2060ea0f..bf079059819e 100644
--- a/drivers/usb/serial/ir-usb.c
+++ b/drivers/usb/serial/ir-usb.c
@@ -134,7 +134,9 @@ static struct usb_driver ir_driver = {
134 134
135 135
136static struct usb_serial_driver ir_device = { 136static struct usb_serial_driver ir_device = {
137 .owner = THIS_MODULE, 137 .driver = {
138 .owner = THIS_MODULE,
139 },
138 .name = "IR Dongle", 140 .name = "IR Dongle",
139 .id_table = id_table, 141 .id_table = id_table,
140 .num_interrupt_in = 1, 142 .num_interrupt_in = 1,
diff --git a/drivers/usb/serial/keyspan.h b/drivers/usb/serial/keyspan.h
index 97e7d9e53e39..124d46e76a2e 100644
--- a/drivers/usb/serial/keyspan.h
+++ b/drivers/usb/serial/keyspan.h
@@ -571,7 +571,9 @@ static struct usb_device_id keyspan_4port_ids[] = {
571 571
572/* Structs for the devices, pre and post renumeration. */ 572/* Structs for the devices, pre and post renumeration. */
573static struct usb_serial_driver keyspan_pre_device = { 573static struct usb_serial_driver keyspan_pre_device = {
574 .owner = THIS_MODULE, 574 .driver = {
575 .owner = THIS_MODULE,
576 },
575 .name = "Keyspan - (without firmware)", 577 .name = "Keyspan - (without firmware)",
576 .short_name = "keyspan_no_firm", 578 .short_name = "keyspan_no_firm",
577 .id_table = keyspan_pre_ids, 579 .id_table = keyspan_pre_ids,
@@ -583,7 +585,9 @@ static struct usb_serial_driver keyspan_pre_device = {
583}; 585};
584 586
585static struct usb_serial_driver keyspan_1port_device = { 587static struct usb_serial_driver keyspan_1port_device = {
586 .owner = THIS_MODULE, 588 .driver = {
589 .owner = THIS_MODULE,
590 },
587 .name = "Keyspan 1 port adapter", 591 .name = "Keyspan 1 port adapter",
588 .short_name = "keyspan_1", 592 .short_name = "keyspan_1",
589 .id_table = keyspan_1port_ids, 593 .id_table = keyspan_1port_ids,
@@ -608,7 +612,9 @@ static struct usb_serial_driver keyspan_1port_device = {
608}; 612};
609 613
610static struct usb_serial_driver keyspan_2port_device = { 614static struct usb_serial_driver keyspan_2port_device = {
611 .owner = THIS_MODULE, 615 .driver = {
616 .owner = THIS_MODULE,
617 },
612 .name = "Keyspan 2 port adapter", 618 .name = "Keyspan 2 port adapter",
613 .short_name = "keyspan_2", 619 .short_name = "keyspan_2",
614 .id_table = keyspan_2port_ids, 620 .id_table = keyspan_2port_ids,
@@ -633,7 +639,9 @@ static struct usb_serial_driver keyspan_2port_device = {
633}; 639};
634 640
635static struct usb_serial_driver keyspan_4port_device = { 641static struct usb_serial_driver keyspan_4port_device = {
636 .owner = THIS_MODULE, 642 .driver = {
643 .owner = THIS_MODULE,
644 },
637 .name = "Keyspan 4 port adapter", 645 .name = "Keyspan 4 port adapter",
638 .short_name = "keyspan_4", 646 .short_name = "keyspan_4",
639 .id_table = keyspan_4port_ids, 647 .id_table = keyspan_4port_ids,
diff --git a/drivers/usb/serial/keyspan_pda.c b/drivers/usb/serial/keyspan_pda.c
index 8fad0e963dd3..389b7833e3ae 100644
--- a/drivers/usb/serial/keyspan_pda.c
+++ b/drivers/usb/serial/keyspan_pda.c
@@ -784,7 +784,9 @@ static void keyspan_pda_shutdown (struct usb_serial *serial)
784 784
785#ifdef KEYSPAN 785#ifdef KEYSPAN
786static struct usb_serial_driver keyspan_pda_fake_device = { 786static struct usb_serial_driver keyspan_pda_fake_device = {
787 .owner = THIS_MODULE, 787 .driver = {
788 .owner = THIS_MODULE,
789 },
788 .name = "Keyspan PDA - (prerenumeration)", 790 .name = "Keyspan PDA - (prerenumeration)",
789 .short_name = "keyspan_pda_pre", 791 .short_name = "keyspan_pda_pre",
790 .id_table = id_table_fake, 792 .id_table = id_table_fake,
@@ -798,7 +800,9 @@ static struct usb_serial_driver keyspan_pda_fake_device = {
798 800
799#ifdef XIRCOM 801#ifdef XIRCOM
800static struct usb_serial_driver xircom_pgs_fake_device = { 802static struct usb_serial_driver xircom_pgs_fake_device = {
801 .owner = THIS_MODULE, 803 .driver = {
804 .owner = THIS_MODULE,
805 },
802 .name = "Xircom / Entregra PGS - (prerenumeration)", 806 .name = "Xircom / Entregra PGS - (prerenumeration)",
803 .short_name = "xircom_no_firm", 807 .short_name = "xircom_no_firm",
804 .id_table = id_table_fake_xircom, 808 .id_table = id_table_fake_xircom,
@@ -811,7 +815,9 @@ static struct usb_serial_driver xircom_pgs_fake_device = {
811#endif 815#endif
812 816
813static struct usb_serial_driver keyspan_pda_device = { 817static struct usb_serial_driver keyspan_pda_device = {
814 .owner = THIS_MODULE, 818 .driver = {
819 .owner = THIS_MODULE,
820 },
815 .name = "Keyspan PDA", 821 .name = "Keyspan PDA",
816 .short_name = "keyspan_pda", 822 .short_name = "keyspan_pda",
817 .id_table = id_table_std, 823 .id_table = id_table_std,
diff --git a/drivers/usb/serial/kl5kusb105.c b/drivers/usb/serial/kl5kusb105.c
index be082706b952..586108ce7897 100644
--- a/drivers/usb/serial/kl5kusb105.c
+++ b/drivers/usb/serial/kl5kusb105.c
@@ -124,7 +124,9 @@ static struct usb_driver kl5kusb105d_driver = {
124}; 124};
125 125
126static struct usb_serial_driver kl5kusb105d_device = { 126static struct usb_serial_driver kl5kusb105d_device = {
127 .owner = THIS_MODULE, 127 .driver = {
128 .owner = THIS_MODULE,
129 },
128 .name = "KL5KUSB105D / PalmConnect", 130 .name = "KL5KUSB105D / PalmConnect",
129 .short_name = "kl5kusb105d", 131 .short_name = "kl5kusb105d",
130 .id_table = id_table, 132 .id_table = id_table,
diff --git a/drivers/usb/serial/kobil_sct.c b/drivers/usb/serial/kobil_sct.c
index 94944340bb8d..a9578e05b22f 100644
--- a/drivers/usb/serial/kobil_sct.c
+++ b/drivers/usb/serial/kobil_sct.c
@@ -106,7 +106,9 @@ static struct usb_driver kobil_driver = {
106 106
107 107
108static struct usb_serial_driver kobil_device = { 108static struct usb_serial_driver kobil_device = {
109 .owner = THIS_MODULE, 109 .driver = {
110 .owner = THIS_MODULE,
111 },
110 .name = "KOBIL USB smart card terminal", 112 .name = "KOBIL USB smart card terminal",
111 .id_table = id_table, 113 .id_table = id_table,
112 .num_interrupt_in = NUM_DONT_CARE, 114 .num_interrupt_in = NUM_DONT_CARE,
diff --git a/drivers/usb/serial/mct_u232.c b/drivers/usb/serial/mct_u232.c
index 9470964316a7..7dcf91c5f83d 100644
--- a/drivers/usb/serial/mct_u232.c
+++ b/drivers/usb/serial/mct_u232.c
@@ -133,7 +133,9 @@ static struct usb_driver mct_u232_driver = {
133}; 133};
134 134
135static struct usb_serial_driver mct_u232_device = { 135static struct usb_serial_driver mct_u232_device = {
136 .owner = THIS_MODULE, 136 .driver = {
137 .owner = THIS_MODULE,
138 },
137 .name = "MCT U232", 139 .name = "MCT U232",
138 .short_name = "mct_u232", 140 .short_name = "mct_u232",
139 .id_table = id_table_combined, 141 .id_table = id_table_combined,
diff --git a/drivers/usb/serial/omninet.c b/drivers/usb/serial/omninet.c
index 53c0588877c0..f6327cc1b2e7 100644
--- a/drivers/usb/serial/omninet.c
+++ b/drivers/usb/serial/omninet.c
@@ -89,7 +89,9 @@ static struct usb_driver omninet_driver = {
89 89
90 90
91static struct usb_serial_driver zyxel_omninet_device = { 91static struct usb_serial_driver zyxel_omninet_device = {
92 .owner = THIS_MODULE, 92 .driver = {
93 .owner = THIS_MODULE,
94 },
93 .name = "ZyXEL - omni.net lcd plus usb", 95 .name = "ZyXEL - omni.net lcd plus usb",
94 .short_name = "omninet", 96 .short_name = "omninet",
95 .id_table = id_table, 97 .id_table = id_table,
diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c
index 6ec9266e2e96..a2b5adf34868 100644
--- a/drivers/usb/serial/option.c
+++ b/drivers/usb/serial/option.c
@@ -106,7 +106,9 @@ static struct usb_driver option_driver = {
106 * recognizes separately, thus num_port=1. 106 * recognizes separately, thus num_port=1.
107 */ 107 */
108static struct usb_serial_driver option_3port_device = { 108static struct usb_serial_driver option_3port_device = {
109 .owner = THIS_MODULE, 109 .driver = {
110 .owner = THIS_MODULE,
111 },
110 .name = "Option 3G data card", 112 .name = "Option 3G data card",
111 .short_name = "option", 113 .short_name = "option",
112 .id_table = option_ids, 114 .id_table = option_ids,
diff --git a/drivers/usb/serial/pl2303.c b/drivers/usb/serial/pl2303.c
index 7134648e078d..beef3c4cee6e 100644
--- a/drivers/usb/serial/pl2303.c
+++ b/drivers/usb/serial/pl2303.c
@@ -176,7 +176,9 @@ static unsigned int pl2303_buf_get(struct pl2303_buf *pb, char *buf,
176 176
177/* All of the device info needed for the PL2303 SIO serial converter */ 177/* All of the device info needed for the PL2303 SIO serial converter */
178static struct usb_serial_driver pl2303_device = { 178static struct usb_serial_driver pl2303_device = {
179 .owner = THIS_MODULE, 179 .driver = {
180 .owner = THIS_MODULE,
181 },
180 .name = "PL-2303", 182 .name = "PL-2303",
181 .id_table = id_table, 183 .id_table = id_table,
182 .num_interrupt_in = NUM_DONT_CARE, 184 .num_interrupt_in = NUM_DONT_CARE,
diff --git a/drivers/usb/serial/safe_serial.c b/drivers/usb/serial/safe_serial.c
index 87871bb647df..42a86ab689f4 100644
--- a/drivers/usb/serial/safe_serial.c
+++ b/drivers/usb/serial/safe_serial.c
@@ -398,7 +398,9 @@ static int safe_startup (struct usb_serial *serial)
398} 398}
399 399
400static struct usb_serial_driver safe_device = { 400static struct usb_serial_driver safe_device = {
401 .owner = THIS_MODULE, 401 .driver = {
402 .owner = THIS_MODULE,
403 },
402 .name = "Safe", 404 .name = "Safe",
403 .id_table = id_table, 405 .id_table = id_table,
404 .num_interrupt_in = NUM_DONT_CARE, 406 .num_interrupt_in = NUM_DONT_CARE,
diff --git a/drivers/usb/serial/ti_usb_3410_5052.c b/drivers/usb/serial/ti_usb_3410_5052.c
index f2efaf6f3d76..eab8a6de0925 100644
--- a/drivers/usb/serial/ti_usb_3410_5052.c
+++ b/drivers/usb/serial/ti_usb_3410_5052.c
@@ -256,7 +256,9 @@ static struct usb_driver ti_usb_driver = {
256}; 256};
257 257
258static struct usb_serial_driver ti_1port_device = { 258static struct usb_serial_driver ti_1port_device = {
259 .owner = THIS_MODULE, 259 .driver = {
260 .owner = THIS_MODULE,
261 },
260 .name = "TI USB 3410 1 port adapter", 262 .name = "TI USB 3410 1 port adapter",
261 .id_table = ti_id_table_3410, 263 .id_table = ti_id_table_3410,
262 .num_interrupt_in = 1, 264 .num_interrupt_in = 1,
@@ -283,7 +285,9 @@ static struct usb_serial_driver ti_1port_device = {
283}; 285};
284 286
285static struct usb_serial_driver ti_2port_device = { 287static struct usb_serial_driver ti_2port_device = {
286 .owner = THIS_MODULE, 288 .driver = {
289 .owner = THIS_MODULE,
290 },
287 .name = "TI USB 5052 2 port adapter", 291 .name = "TI USB 5052 2 port adapter",
288 .id_table = ti_id_table_5052, 292 .id_table = ti_id_table_5052,
289 .num_interrupt_in = 1, 293 .num_interrupt_in = 1,
diff --git a/drivers/usb/serial/usb-serial.c b/drivers/usb/serial/usb-serial.c
index cf083da15eb4..08f600327db4 100644
--- a/drivers/usb/serial/usb-serial.c
+++ b/drivers/usb/serial/usb-serial.c
@@ -507,7 +507,7 @@ static int serial_open (struct tty_struct *tty, struct file * filp)
507 /* lock this module before we call it 507 /* lock this module before we call it
508 * this may fail, which means we must bail out, 508 * this may fail, which means we must bail out,
509 * safe because we are called with BKL held */ 509 * safe because we are called with BKL held */
510 if (!try_module_get(serial->type->owner)) { 510 if (!try_module_get(serial->type->driver.owner)) {
511 retval = -ENODEV; 511 retval = -ENODEV;
512 goto bailout_kref_put; 512 goto bailout_kref_put;
513 } 513 }
@@ -522,7 +522,7 @@ static int serial_open (struct tty_struct *tty, struct file * filp)
522 return 0; 522 return 0;
523 523
524bailout_module_put: 524bailout_module_put:
525 module_put(serial->type->owner); 525 module_put(serial->type->driver.owner);
526bailout_kref_put: 526bailout_kref_put:
527 kref_put(&serial->kref, destroy_serial); 527 kref_put(&serial->kref, destroy_serial);
528 port->open_count = 0; 528 port->open_count = 0;
@@ -553,7 +553,7 @@ static void serial_close(struct tty_struct *tty, struct file * filp)
553 port->tty = NULL; 553 port->tty = NULL;
554 } 554 }
555 555
556 module_put(port->serial->type->owner); 556 module_put(port->serial->type->driver.owner);
557 } 557 }
558 558
559 kref_put(&port->serial->kref, destroy_serial); 559 kref_put(&port->serial->kref, destroy_serial);
@@ -718,8 +718,8 @@ static int serial_read_proc (char *page, char **start, off_t off, int count, int
718 continue; 718 continue;
719 719
720 length += sprintf (page+length, "%d:", i); 720 length += sprintf (page+length, "%d:", i);
721 if (serial->type->owner) 721 if (serial->type->driver.owner)
722 length += sprintf (page+length, " module:%s", module_name(serial->type->owner)); 722 length += sprintf (page+length, " module:%s", module_name(serial->type->driver.owner));
723 length += sprintf (page+length, " name:\"%s\"", serial->type->name); 723 length += sprintf (page+length, " name:\"%s\"", serial->type->name);
724 length += sprintf (page+length, " vendor:%04x product:%04x", 724 length += sprintf (page+length, " vendor:%04x product:%04x",
725 le16_to_cpu(serial->dev->descriptor.idVendor), 725 le16_to_cpu(serial->dev->descriptor.idVendor),
@@ -900,7 +900,7 @@ int usb_serial_probe(struct usb_interface *interface,
900 if (type->probe) { 900 if (type->probe) {
901 const struct usb_device_id *id; 901 const struct usb_device_id *id;
902 902
903 if (!try_module_get(type->owner)) { 903 if (!try_module_get(type->driver.owner)) {
904 dev_err(&interface->dev, "module get failed, exiting\n"); 904 dev_err(&interface->dev, "module get failed, exiting\n");
905 kfree (serial); 905 kfree (serial);
906 return -EIO; 906 return -EIO;
@@ -908,7 +908,7 @@ int usb_serial_probe(struct usb_interface *interface,
908 908
909 id = usb_match_id(interface, type->id_table); 909 id = usb_match_id(interface, type->id_table);
910 retval = type->probe(serial, id); 910 retval = type->probe(serial, id);
911 module_put(type->owner); 911 module_put(type->driver.owner);
912 912
913 if (retval) { 913 if (retval) {
914 dbg ("sub driver rejected device"); 914 dbg ("sub driver rejected device");
@@ -1007,13 +1007,13 @@ int usb_serial_probe(struct usb_interface *interface,
1007 if (!num_ports) { 1007 if (!num_ports) {
1008 /* if this device type has a calc_num_ports function, call it */ 1008 /* if this device type has a calc_num_ports function, call it */
1009 if (type->calc_num_ports) { 1009 if (type->calc_num_ports) {
1010 if (!try_module_get(type->owner)) { 1010 if (!try_module_get(type->driver.owner)) {
1011 dev_err(&interface->dev, "module get failed, exiting\n"); 1011 dev_err(&interface->dev, "module get failed, exiting\n");
1012 kfree (serial); 1012 kfree (serial);
1013 return -EIO; 1013 return -EIO;
1014 } 1014 }
1015 num_ports = type->calc_num_ports (serial); 1015 num_ports = type->calc_num_ports (serial);
1016 module_put(type->owner); 1016 module_put(type->driver.owner);
1017 } 1017 }
1018 if (!num_ports) 1018 if (!num_ports)
1019 num_ports = type->num_ports; 1019 num_ports = type->num_ports;
@@ -1158,12 +1158,12 @@ int usb_serial_probe(struct usb_interface *interface,
1158 1158
1159 /* if this device type has an attach function, call it */ 1159 /* if this device type has an attach function, call it */
1160 if (type->attach) { 1160 if (type->attach) {
1161 if (!try_module_get(type->owner)) { 1161 if (!try_module_get(type->driver.owner)) {
1162 dev_err(&interface->dev, "module get failed, exiting\n"); 1162 dev_err(&interface->dev, "module get failed, exiting\n");
1163 goto probe_error; 1163 goto probe_error;
1164 } 1164 }
1165 retval = type->attach (serial); 1165 retval = type->attach (serial);
1166 module_put(type->owner); 1166 module_put(type->driver.owner);
1167 if (retval < 0) 1167 if (retval < 0)
1168 goto probe_error; 1168 goto probe_error;
1169 if (retval > 0) { 1169 if (retval > 0) {
diff --git a/drivers/usb/serial/usb-serial.h b/drivers/usb/serial/usb-serial.h
index d6738b1b0429..4ca5e0c05611 100644
--- a/drivers/usb/serial/usb-serial.h
+++ b/drivers/usb/serial/usb-serial.h
@@ -189,7 +189,6 @@ static inline void usb_set_serial_data (struct usb_serial *serial, void *data)
189 189
190/** 190/**
191 * usb_serial_driver - describes a usb serial driver 191 * usb_serial_driver - describes a usb serial driver
192 * @owner: pointer to the module that owns this driver.
193 * @name: pointer to a string that describes this driver. This string used 192 * @name: pointer to a string that describes this driver. This string used
194 * in the syslog messages when a device is inserted or removed. 193 * in the syslog messages when a device is inserted or removed.
195 * @short_name: a pointer to a string that describes this driver in 194 * @short_name: a pointer to a string that describes this driver in
@@ -226,9 +225,11 @@ static inline void usb_set_serial_data (struct usb_serial *serial, void *data)
226 * pointers are defined, then the USB serial core code will call them when 225 * pointers are defined, then the USB serial core code will call them when
227 * the corresponding tty port functions are called. If they are not 226 * the corresponding tty port functions are called. If they are not
228 * called, the generic serial function will be used instead. 227 * called, the generic serial function will be used instead.
228 *
229 * The driver.owner field should be set to the module owner of this driver.
230 *
229 */ 231 */
230struct usb_serial_driver { 232struct usb_serial_driver {
231 struct module *owner;
232 char *name; 233 char *name;
233 char *short_name; 234 char *short_name;
234 const struct usb_device_id *id_table; 235 const struct usb_device_id *id_table;
diff --git a/drivers/usb/serial/visor.c b/drivers/usb/serial/visor.c
index 825451b3788c..0ac0377e8683 100644
--- a/drivers/usb/serial/visor.c
+++ b/drivers/usb/serial/visor.c
@@ -312,7 +312,9 @@ static struct usb_driver visor_driver = {
312 312
313/* All of the device info needed for the Handspring Visor, and Palm 4.0 devices */ 313/* All of the device info needed for the Handspring Visor, and Palm 4.0 devices */
314static struct usb_serial_driver handspring_device = { 314static struct usb_serial_driver handspring_device = {
315 .owner = THIS_MODULE, 315 .driver = {
316 .owner = THIS_MODULE,
317 },
316 .name = "Handspring Visor / Palm OS", 318 .name = "Handspring Visor / Palm OS",
317 .short_name = "visor", 319 .short_name = "visor",
318 .id_table = id_table, 320 .id_table = id_table,
@@ -340,7 +342,9 @@ static struct usb_serial_driver handspring_device = {
340 342
341/* All of the device info needed for the Clie UX50, TH55 Palm 5.0 devices */ 343/* All of the device info needed for the Clie UX50, TH55 Palm 5.0 devices */
342static struct usb_serial_driver clie_5_device = { 344static struct usb_serial_driver clie_5_device = {
343 .owner = THIS_MODULE, 345 .driver = {
346 .owner = THIS_MODULE,
347 },
344 .name = "Sony Clie 5.0", 348 .name = "Sony Clie 5.0",
345 .short_name = "clie_5", 349 .short_name = "clie_5",
346 .id_table = clie_id_5_table, 350 .id_table = clie_id_5_table,
@@ -368,7 +372,9 @@ static struct usb_serial_driver clie_5_device = {
368 372
369/* device info for the Sony Clie OS version 3.5 */ 373/* device info for the Sony Clie OS version 3.5 */
370static struct usb_serial_driver clie_3_5_device = { 374static struct usb_serial_driver clie_3_5_device = {
371 .owner = THIS_MODULE, 375 .driver = {
376 .owner = THIS_MODULE,
377 },
372 .name = "Sony Clie 3.5", 378 .name = "Sony Clie 3.5",
373 .short_name = "clie_3.5", 379 .short_name = "clie_3.5",
374 .id_table = clie_id_3_5_table, 380 .id_table = clie_id_3_5_table,
diff --git a/drivers/usb/serial/whiteheat.c b/drivers/usb/serial/whiteheat.c
index dc06664bfa0e..fb95a34a1cf7 100644
--- a/drivers/usb/serial/whiteheat.c
+++ b/drivers/usb/serial/whiteheat.c
@@ -157,7 +157,9 @@ static void whiteheat_read_callback (struct urb *urb, struct pt_regs *regs);
157static void whiteheat_write_callback (struct urb *urb, struct pt_regs *regs); 157static void whiteheat_write_callback (struct urb *urb, struct pt_regs *regs);
158 158
159static struct usb_serial_driver whiteheat_fake_device = { 159static struct usb_serial_driver whiteheat_fake_device = {
160 .owner = THIS_MODULE, 160 .driver = {
161 .owner = THIS_MODULE,
162 },
161 .name = "Connect Tech - WhiteHEAT - (prerenumeration)", 163 .name = "Connect Tech - WhiteHEAT - (prerenumeration)",
162 .short_name = "whiteheatnofirm", 164 .short_name = "whiteheatnofirm",
163 .id_table = id_table_prerenumeration, 165 .id_table = id_table_prerenumeration,
@@ -170,7 +172,9 @@ static struct usb_serial_driver whiteheat_fake_device = {
170}; 172};
171 173
172static struct usb_serial_driver whiteheat_device = { 174static struct usb_serial_driver whiteheat_device = {
173 .owner = THIS_MODULE, 175 .driver = {
176 .owner = THIS_MODULE,
177 },
174 .name = "Connect Tech - WhiteHEAT", 178 .name = "Connect Tech - WhiteHEAT",
175 .short_name = "whiteheat", 179 .short_name = "whiteheat",
176 .id_table = id_table_std, 180 .id_table = id_table_std,