usb: gadget: uvc: Rename bmInterfaceFlags -> bmInterlaceFlags
authorDaniel Scally <dan.scally@ideasonboard.com>
Tue, 6 Dec 2022 16:12:03 +0000 (16:12 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 8 Dec 2022 15:53:47 +0000 (16:53 +0100)
In the specification documents for the Uncompressed and MJPEG USB
Video Payloads, the field name is bmInterlaceFlags - it has been
misnamed within the kernel.

Although renaming the field does break the kernel's interface to
userspace it should be low-risk in this instance. The field is read
only and hardcoded to 0, so there was never any value in anyone
reading it. A search of the uvc-gadget application and all the
forks that I could find for it did not reveal any users either.

Fixes: cdda479f15cd ("USB gadget: video class function driver")
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Signed-off-by: Daniel Scally <dan.scally@ideasonboard.com>
Link: https://lore.kernel.org/r/20221206161203.1562827-1-dan.scally@ideasonboard.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Documentation/ABI/testing/configfs-usb-gadget-uvc
drivers/usb/gadget/function/uvc_configfs.c
drivers/usb/gadget/legacy/webcam.c
include/uapi/linux/usb/video.h

index 611b23e..f00cff6 100644 (file)
@@ -197,7 +197,7 @@ Description:        Specific MJPEG format descriptors
                                        read-only
                bmaControls             this format's data for bmaControls in
                                        the streaming header
-               bmInterfaceFlags        specifies interlace information,
+               bmInterlaceFlags        specifies interlace information,
                                        read-only
                bAspectRatioY           the X dimension of the picture aspect
                                        ratio, read-only
@@ -253,7 +253,7 @@ Description:        Specific uncompressed format descriptors
                                        read-only
                bmaControls             this format's data for bmaControls in
                                        the streaming header
-               bmInterfaceFlags        specifies interlace information,
+               bmInterlaceFlags        specifies interlace information,
                                        read-only
                bAspectRatioY           the X dimension of the picture aspect
                                        ratio, read-only
index 4303a32..76cb60d 100644 (file)
@@ -1512,7 +1512,7 @@ UVCG_UNCOMPRESSED_ATTR(b_bits_per_pixel, bBitsPerPixel, 8);
 UVCG_UNCOMPRESSED_ATTR(b_default_frame_index, bDefaultFrameIndex, 8);
 UVCG_UNCOMPRESSED_ATTR_RO(b_aspect_ratio_x, bAspectRatioX, 8);
 UVCG_UNCOMPRESSED_ATTR_RO(b_aspect_ratio_y, bAspectRatioY, 8);
-UVCG_UNCOMPRESSED_ATTR_RO(bm_interface_flags, bmInterfaceFlags, 8);
+UVCG_UNCOMPRESSED_ATTR_RO(bm_interlace_flags, bmInterlaceFlags, 8);
 
 #undef UVCG_UNCOMPRESSED_ATTR
 #undef UVCG_UNCOMPRESSED_ATTR_RO
@@ -1541,7 +1541,7 @@ static struct configfs_attribute *uvcg_uncompressed_attrs[] = {
        &uvcg_uncompressed_attr_b_default_frame_index,
        &uvcg_uncompressed_attr_b_aspect_ratio_x,
        &uvcg_uncompressed_attr_b_aspect_ratio_y,
-       &uvcg_uncompressed_attr_bm_interface_flags,
+       &uvcg_uncompressed_attr_bm_interlace_flags,
        &uvcg_uncompressed_attr_bma_controls,
        NULL,
 };
@@ -1574,7 +1574,7 @@ static struct config_group *uvcg_uncompressed_make(struct config_group *group,
        h->desc.bDefaultFrameIndex      = 1;
        h->desc.bAspectRatioX           = 0;
        h->desc.bAspectRatioY           = 0;
-       h->desc.bmInterfaceFlags        = 0;
+       h->desc.bmInterlaceFlags        = 0;
        h->desc.bCopyProtect            = 0;
 
        INIT_LIST_HEAD(&h->fmt.frames);
@@ -1700,7 +1700,7 @@ UVCG_MJPEG_ATTR(b_default_frame_index, bDefaultFrameIndex, 8);
 UVCG_MJPEG_ATTR_RO(bm_flags, bmFlags, 8);
 UVCG_MJPEG_ATTR_RO(b_aspect_ratio_x, bAspectRatioX, 8);
 UVCG_MJPEG_ATTR_RO(b_aspect_ratio_y, bAspectRatioY, 8);
-UVCG_MJPEG_ATTR_RO(bm_interface_flags, bmInterfaceFlags, 8);
+UVCG_MJPEG_ATTR_RO(bm_interlace_flags, bmInterlaceFlags, 8);
 
 #undef UVCG_MJPEG_ATTR
 #undef UVCG_MJPEG_ATTR_RO
@@ -1728,7 +1728,7 @@ static struct configfs_attribute *uvcg_mjpeg_attrs[] = {
        &uvcg_mjpeg_attr_bm_flags,
        &uvcg_mjpeg_attr_b_aspect_ratio_x,
        &uvcg_mjpeg_attr_b_aspect_ratio_y,
-       &uvcg_mjpeg_attr_bm_interface_flags,
+       &uvcg_mjpeg_attr_bm_interlace_flags,
        &uvcg_mjpeg_attr_bma_controls,
        NULL,
 };
@@ -1755,7 +1755,7 @@ static struct config_group *uvcg_mjpeg_make(struct config_group *group,
        h->desc.bDefaultFrameIndex      = 1;
        h->desc.bAspectRatioX           = 0;
        h->desc.bAspectRatioY           = 0;
-       h->desc.bmInterfaceFlags        = 0;
+       h->desc.bmInterlaceFlags        = 0;
        h->desc.bCopyProtect            = 0;
 
        INIT_LIST_HEAD(&h->fmt.frames);
index 94e2286..53e38f8 100644 (file)
@@ -171,7 +171,7 @@ static const struct uvc_format_uncompressed uvc_format_yuv = {
        .bDefaultFrameIndex     = 1,
        .bAspectRatioX          = 0,
        .bAspectRatioY          = 0,
-       .bmInterfaceFlags       = 0,
+       .bmInterlaceFlags       = 0,
        .bCopyProtect           = 0,
 };
 
@@ -222,7 +222,7 @@ static const struct uvc_format_mjpeg uvc_format_mjpg = {
        .bDefaultFrameIndex     = 1,
        .bAspectRatioX          = 0,
        .bAspectRatioY          = 0,
-       .bmInterfaceFlags       = 0,
+       .bmInterlaceFlags       = 0,
        .bCopyProtect           = 0,
 };
 
index bfdae12..6e8e572 100644 (file)
@@ -466,7 +466,7 @@ struct uvc_format_uncompressed {
        __u8  bDefaultFrameIndex;
        __u8  bAspectRatioX;
        __u8  bAspectRatioY;
-       __u8  bmInterfaceFlags;
+       __u8  bmInterlaceFlags;
        __u8  bCopyProtect;
 } __attribute__((__packed__));
 
@@ -522,7 +522,7 @@ struct uvc_format_mjpeg {
        __u8  bDefaultFrameIndex;
        __u8  bAspectRatioX;
        __u8  bAspectRatioY;
-       __u8  bmInterfaceFlags;
+       __u8  bmInterlaceFlags;
        __u8  bCopyProtect;
 } __attribute__((__packed__));