Răsfoiți Sursa

USB: serial: relax generic driver bulk-endpoint requirement

Relax the generic driver bulk-endpoint requirement. The driver handles
devices without bulk-out endpoints just fine these days.

Signed-off-by: Johan Hovold <johan@kernel.org>
Johan Hovold 8 ani în urmă
părinte
comite
6538808c56
1 a modificat fișierele cu 4 adăugiri și 2 ștergeri
  1. 4 2
      drivers/usb/serial/generic.c

+ 4 - 2
drivers/usb/serial/generic.c

@@ -52,10 +52,12 @@ static int usb_serial_generic_calc_num_ports(struct usb_serial *serial,
 					struct usb_serial_endpoints *epds)
 {
 	struct device *dev = &serial->interface->dev;
-	int num_ports = epds->num_bulk_out;
+	int num_ports;
+
+	num_ports = max(epds->num_bulk_in, epds->num_bulk_out);
 
 	if (num_ports == 0) {
-		dev_err(dev, "Generic device with no bulk out, not allowed.\n");
+		dev_err(dev, "device has no bulk endpoints\n");
 		return -ENODEV;
 	}