Let usb-serial core verify that the interrupt-in endpoint is present
when binding the interface instead of the driver verifying this at every
open.

Signed-off-by: Johan Hovold <[email protected]>
---
 drivers/usb/serial/metro-usb.c | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

diff --git a/drivers/usb/serial/metro-usb.c b/drivers/usb/serial/metro-usb.c
index 4bb29e03dae4..a64940975ac6 100644
--- a/drivers/usb/serial/metro-usb.c
+++ b/drivers/usb/serial/metro-usb.c
@@ -160,13 +160,6 @@ static int metrousb_open(struct tty_struct *tty, struct 
usb_serial_port *port)
        unsigned long flags = 0;
        int result = 0;
 
-       /* Make sure the urb is initialized. */
-       if (!port->interrupt_in_urb) {
-               dev_err(&port->dev, "%s - interrupt urb not initialized\n",
-                       __func__);
-               return -ENODEV;
-       }
-
        /* Set the private data information for the port. */
        spin_lock_irqsave(&metro_priv->lock, flags);
        metro_priv->control_state = 0;
@@ -342,6 +335,7 @@ static struct usb_serial_driver metrousb_device = {
        .description            = "Metrologic USB to Serial",
        .id_table               = id_table,
        .num_ports              = 1,
+       .num_interrupt_in       = 1,
        .open                   = metrousb_open,
        .close                  = metrousb_cleanup,
        .read_int_callback      = metrousb_read_int_callback,
-- 
2.14.2

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to