]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
can: kvaser_usb: leaf: refactor endpoint lookup
authorJohan Hovold <johan@kernel.org>
Mon, 30 Mar 2026 10:18:16 +0000 (12:18 +0200)
committerMarc Kleine-Budde <mkl@pengutronix.de>
Wed, 1 Apr 2026 07:27:58 +0000 (09:27 +0200)
Use the common USB helper for looking up bulk and interrupt endpoints
instead of open coding.

Signed-off-by: Johan Hovold <johan@kernel.org>
Link: https://patch.msgid.link/20260330101817.1664787-2-johan@kernel.org
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
drivers/net/can/usb/kvaser_usb/kvaser_usb_leaf.c

index fd191ec5738b4704abb04ae80687fbd966d7990e..df737cfc5ea0c0468476a2e0ee7603329d63f9c0 100644 (file)
@@ -1957,27 +1957,18 @@ static int kvaser_usb_leaf_get_berr_counter(const struct net_device *netdev,
 
 static int kvaser_usb_leaf_setup_endpoints(struct kvaser_usb *dev)
 {
-       const struct usb_host_interface *iface_desc;
-       struct usb_endpoint_descriptor *endpoint;
-       int i;
+       struct usb_host_interface *iface_desc;
+       int ret;
 
        iface_desc = dev->intf->cur_altsetting;
 
-       for (i = 0; i < iface_desc->desc.bNumEndpoints; ++i) {
-               endpoint = &iface_desc->endpoint[i].desc;
-
-               if (!dev->bulk_in && usb_endpoint_is_bulk_in(endpoint))
-                       dev->bulk_in = endpoint;
-
-               if (!dev->bulk_out && usb_endpoint_is_bulk_out(endpoint))
-                       dev->bulk_out = endpoint;
+       /* use first bulk endpoint for in and out */
+       ret = usb_find_common_endpoints(iface_desc, &dev->bulk_in, &dev->bulk_out,
+                                       NULL, NULL);
+       if (ret)
+               return -ENODEV;
 
-               /* use first bulk endpoint for in and out */
-               if (dev->bulk_in && dev->bulk_out)
-                       return 0;
-       }
-
-       return -ENODEV;
+       return 0;
 }
 
 const struct kvaser_usb_dev_ops kvaser_usb_leaf_dev_ops = {