]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
media: hdpvr: refactor endpoint lookup
authorJohan Hovold <johan@kernel.org>
Mon, 30 Mar 2026 10:11:40 +0000 (12:11 +0200)
committerHans Verkuil <hverkuil+cisco@kernel.org>
Tue, 5 May 2026 14:57:02 +0000 (16:57 +0200)
Use the common USB helper for looking up bulk-in endpoints instead of
open coding.

Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
drivers/media/usb/hdpvr/hdpvr-core.c

index d42336836b18506108a92b399ef37406d8be1b3a..849a2be416bdf4c1ed8d0b14cbb897f39bd5f0de 100644 (file)
@@ -265,13 +265,10 @@ static int hdpvr_probe(struct usb_interface *interface,
                       const struct usb_device_id *id)
 {
        struct hdpvr_device *dev;
-       struct usb_host_interface *iface_desc;
        struct usb_endpoint_descriptor *endpoint;
 #if IS_ENABLED(CONFIG_I2C)
        struct i2c_client *client;
 #endif
-       size_t buffer_size;
-       int i;
        int dev_num;
        int retval = -ENOMEM;
 
@@ -321,25 +318,18 @@ static int hdpvr_probe(struct usb_interface *interface,
 
        /* set up the endpoint information */
        /* use only the first bulk-in and bulk-out endpoints */
-       iface_desc = interface->cur_altsetting;
-       for (i = 0; i < iface_desc->desc.bNumEndpoints; ++i) {
-               endpoint = &iface_desc->endpoint[i].desc;
-
-               if (!dev->bulk_in_endpointAddr &&
-                   usb_endpoint_is_bulk_in(endpoint)) {
-                       /* USB interface description is buggy, reported max
-                        * packet size is 512 bytes, windows driver uses 8192 */
-                       buffer_size = 8192;
-                       dev->bulk_in_size = buffer_size;
-                       dev->bulk_in_endpointAddr = endpoint->bEndpointAddress;
-               }
-
-       }
-       if (!dev->bulk_in_endpointAddr) {
+       if (usb_find_bulk_in_endpoint(interface->cur_altsetting, &endpoint)) {
                v4l2_err(&dev->v4l2_dev, "Could not find bulk-in endpoint\n");
                goto error_put_usb;
        }
 
+       /*
+        * USB interface description is buggy, reported max packet size is 512
+        * bytes, windows driver uses 8192
+        */
+       dev->bulk_in_size = 8192;
+       dev->bulk_in_endpointAddr = endpoint->bEndpointAddress;
+
        /* init the device */
        if (hdpvr_device_init(dev)) {
                v4l2_err(&dev->v4l2_dev, "device init failed\n");