summaryrefslogtreecommitdiff
path: root/drivers/usb/serial/mxuport.c
diff options
context:
space:
mode:
authorJohan Hovold <johan@kernel.org>2017-03-16 19:13:30 +0300
committerJohan Hovold <johan@kernel.org>2017-03-28 11:54:39 +0300
commit07814246dd5530860ef758fd9b2b5f2e26472aa2 (patch)
treee27c9ae087d22c49b063e365df2c7f2ba479c253 /drivers/usb/serial/mxuport.c
parent2ac8fc51ddf152fdd2344c6d286976803183d59c (diff)
downloadlinux-07814246dd5530860ef758fd9b2b5f2e26472aa2.tar.xz
USB: serial: allow subdrivers to modify port-endpoint mapping
Allow subdrivers to modify the port-endpoint mapping by passing the endpoint descriptors to calc_num_ports. The callback can now also be used to verify that the required endpoints exists and abort probing otherwise. This will allow us to get rid of a few hacks in subdrivers that are already modifying the port-endpoint mapping (or aborting probe due to missing endpoints), but only after the port structures have been setup. Signed-off-by: Johan Hovold <johan@kernel.org>
Diffstat (limited to 'drivers/usb/serial/mxuport.c')
-rw-r--r--drivers/usb/serial/mxuport.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/usb/serial/mxuport.c b/drivers/usb/serial/mxuport.c
index c88215a0fa3d..bf543e6c05ea 100644
--- a/drivers/usb/serial/mxuport.c
+++ b/drivers/usb/serial/mxuport.c
@@ -946,7 +946,8 @@ out:
* Determine how many ports this device has dynamically. It will be
* called after the probe() callback is called, but before attach().
*/
-static int mxuport_calc_num_ports(struct usb_serial *serial)
+static int mxuport_calc_num_ports(struct usb_serial *serial,
+ struct usb_serial_endpoints *epds)
{
unsigned long features = (unsigned long)usb_get_serial_data(serial);