Commit fd0c883e authored by Johan Hovold's avatar Johan Hovold

USB: serial: io_edgeport: simplify and tighten endpoint check

Simplify the endpoint sanity check by letting core verify that the
required endpoints are present.

Also require the presence of a bulk-out endpoint, something which
prevents the driver from trying to send bulk messages over the control
pipe should a bulk-out endpoint be missing.
Signed-off-by: default avatarJohan Hovold <johan@kernel.org>
parent e7d6507e
...@@ -2848,11 +2848,6 @@ static int edge_startup(struct usb_serial *serial) ...@@ -2848,11 +2848,6 @@ static int edge_startup(struct usb_serial *serial)
EDGE_COMPATIBILITY_MASK1, EDGE_COMPATIBILITY_MASK1,
EDGE_COMPATIBILITY_MASK2 }; EDGE_COMPATIBILITY_MASK2 };
if (serial->num_bulk_in < 1 || serial->num_interrupt_in < 1) {
dev_err(&serial->interface->dev, "missing endpoints\n");
return -ENODEV;
}
dev = serial->dev; dev = serial->dev;
/* create our private serial structure */ /* create our private serial structure */
...@@ -3120,6 +3115,9 @@ static struct usb_serial_driver edgeport_2port_device = { ...@@ -3120,6 +3115,9 @@ static struct usb_serial_driver edgeport_2port_device = {
.description = "Edgeport 2 port adapter", .description = "Edgeport 2 port adapter",
.id_table = edgeport_2port_id_table, .id_table = edgeport_2port_id_table,
.num_ports = 2, .num_ports = 2,
.num_bulk_in = 1,
.num_bulk_out = 1,
.num_interrupt_in = 1,
.open = edge_open, .open = edge_open,
.close = edge_close, .close = edge_close,
.throttle = edge_throttle, .throttle = edge_throttle,
...@@ -3152,6 +3150,9 @@ static struct usb_serial_driver edgeport_4port_device = { ...@@ -3152,6 +3150,9 @@ static struct usb_serial_driver edgeport_4port_device = {
.description = "Edgeport 4 port adapter", .description = "Edgeport 4 port adapter",
.id_table = edgeport_4port_id_table, .id_table = edgeport_4port_id_table,
.num_ports = 4, .num_ports = 4,
.num_bulk_in = 1,
.num_bulk_out = 1,
.num_interrupt_in = 1,
.open = edge_open, .open = edge_open,
.close = edge_close, .close = edge_close,
.throttle = edge_throttle, .throttle = edge_throttle,
...@@ -3184,6 +3185,9 @@ static struct usb_serial_driver edgeport_8port_device = { ...@@ -3184,6 +3185,9 @@ static struct usb_serial_driver edgeport_8port_device = {
.description = "Edgeport 8 port adapter", .description = "Edgeport 8 port adapter",
.id_table = edgeport_8port_id_table, .id_table = edgeport_8port_id_table,
.num_ports = 8, .num_ports = 8,
.num_bulk_in = 1,
.num_bulk_out = 1,
.num_interrupt_in = 1,
.open = edge_open, .open = edge_open,
.close = edge_close, .close = edge_close,
.throttle = edge_throttle, .throttle = edge_throttle,
...@@ -3216,6 +3220,9 @@ static struct usb_serial_driver epic_device = { ...@@ -3216,6 +3220,9 @@ static struct usb_serial_driver epic_device = {
.description = "EPiC device", .description = "EPiC device",
.id_table = Epic_port_id_table, .id_table = Epic_port_id_table,
.num_ports = 1, .num_ports = 1,
.num_bulk_in = 1,
.num_bulk_out = 1,
.num_interrupt_in = 1,
.open = edge_open, .open = edge_open,
.close = edge_close, .close = edge_close,
.throttle = edge_throttle, .throttle = edge_throttle,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment