Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5620b5f7 authored by Alan Stern's avatar Alan Stern Committed by Greg Kroah-Hartman
Browse files

USB serial: add missing .usb_driver field in serial drivers



This patch (as1443) fixes a bug found in many of the USB serial
drivers: They don't set the .usb_driver field in their
usb_serial_driver structure.  This field is needed for assigning
dynamic IDs for device matching.

In addition, starting with the 2.6.37 kernel, the .usb_driver field is
needed for proper autosuspend operation.  Without it, attempts to open
the device file will fail.

Signed-off-by: default avatarAlan Stern <stern@rowland.harvard.edu>
Reported-by: default avatarDan Williams <dcbw@redhat.com>
CC: <stable@kernel.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent cc604ddd
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -199,6 +199,7 @@ static struct usb_serial_driver epic_device = {
		.name		= "epic",
	},
	.description		= "EPiC device",
	.usb_driver		= &io_driver,
	.id_table		= Epic_port_id_table,
	.num_ports		= 1,
	.open			= edge_open,
+1 −0
Original line number Diff line number Diff line
@@ -1275,6 +1275,7 @@ static struct usb_serial_driver iuu_device = {
		   .name = "iuu_phoenix",
		   },
	.id_table = id_table,
	.usb_driver = &iuu_driver,
	.num_ports = 1,
	.bulk_in_size = 512,
	.bulk_out_size = 512,
+4 −0
Original line number Diff line number Diff line
@@ -546,6 +546,7 @@ static struct usb_serial_driver keyspan_pre_device = {
		.name		= "keyspan_no_firm",
	},
	.description		= "Keyspan - (without firmware)",
	.usb_driver		= &keyspan_driver,
	.id_table		= keyspan_pre_ids,
	.num_ports		= 1,
	.attach			= keyspan_fake_startup,
@@ -557,6 +558,7 @@ static struct usb_serial_driver keyspan_1port_device = {
		.name		= "keyspan_1",
	},
	.description		= "Keyspan 1 port adapter",
	.usb_driver		= &keyspan_driver,
	.id_table		= keyspan_1port_ids,
	.num_ports		= 1,
	.open			= keyspan_open,
@@ -579,6 +581,7 @@ static struct usb_serial_driver keyspan_2port_device = {
		.name		= "keyspan_2",
	},
	.description		= "Keyspan 2 port adapter",
	.usb_driver		= &keyspan_driver,
	.id_table		= keyspan_2port_ids,
	.num_ports		= 2,
	.open			= keyspan_open,
@@ -601,6 +604,7 @@ static struct usb_serial_driver keyspan_4port_device = {
		.name		= "keyspan_4",
	},
	.description		= "Keyspan 4 port adapter",
	.usb_driver		= &keyspan_driver,
	.id_table		= keyspan_4port_ids,
	.num_ports		= 4,
	.open			= keyspan_open,
+1 −0
Original line number Diff line number Diff line
@@ -44,6 +44,7 @@ static struct usb_serial_driver moto_device = {
		.name =		"moto-modem",
	},
	.id_table =		id_table,
	.usb_driver =		&moto_driver,
	.num_ports =		1,
};

+1 −0
Original line number Diff line number Diff line
@@ -157,6 +157,7 @@ static struct usb_serial_driver oti6858_device = {
		.name =		"oti6858",
	},
	.id_table =		id_table,
	.usb_driver =		&oti6858_driver,
	.num_ports =		1,
	.open =			oti6858_open,
	.close =		oti6858_close,
Loading