diff mbox series

[3/5] usb: uvc: make uvc_format_desc table const

Message ID 20221212194716.2995569-4-m.grzeschik@pengutronix.de
State Superseded
Headers show
Series usb: uvc: improve header files and function use | expand

Commit Message

Michael Grzeschik Dec. 12, 2022, 7:47 p.m. UTC
Since the uvc_fmts array can not be modified we declare it const and
change every user of the uvc_format_by_guid function aswell.

Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
---
 drivers/media/common/uvc.c             | 4 ++--
 drivers/media/usb/uvc/uvc_driver.c     | 2 +-
 drivers/usb/gadget/function/uvc_v4l2.c | 8 ++++----
 include/linux/usb/uvc.h                | 2 +-
 4 files changed, 8 insertions(+), 8 deletions(-)

Comments

Laurent Pinchart Dec. 14, 2022, 10:37 a.m. UTC | #1
Hi Michael,

Thank you for the patch.

On Mon, Dec 12, 2022 at 08:47:14PM +0100, Michael Grzeschik wrote:
> Since the uvc_fmts array can not be modified we declare it const and
> change every user of the uvc_format_by_guid function aswell.
> 
> Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

> ---
>  drivers/media/common/uvc.c             | 4 ++--
>  drivers/media/usb/uvc/uvc_driver.c     | 2 +-
>  drivers/usb/gadget/function/uvc_v4l2.c | 8 ++++----
>  include/linux/usb/uvc.h                | 2 +-
>  4 files changed, 8 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/media/common/uvc.c b/drivers/media/common/uvc.c
> index a3cf40215a0754..a6787f1999becd 100644
> --- a/drivers/media/common/uvc.c
> +++ b/drivers/media/common/uvc.c
> @@ -9,7 +9,7 @@
>   * Video formats
>   */
>  
> -static struct uvc_format_desc uvc_fmts[] = {
> +static const struct uvc_format_desc uvc_fmts[] = {
>  	{
>  		.name		= "YUV 4:2:2 (YUYV)",
>  		.guid		= UVC_GUID_FORMAT_YUY2,
> @@ -197,7 +197,7 @@ static struct uvc_format_desc uvc_fmts[] = {
>  	},
>  };
>  
> -struct uvc_format_desc *uvc_format_by_guid(const u8 guid[16])
> +const struct uvc_format_desc *uvc_format_by_guid(const u8 guid[16])
>  {
>  	unsigned int len = ARRAY_SIZE(uvc_fmts);
>  	unsigned int i;
> diff --git a/drivers/media/usb/uvc/uvc_driver.c b/drivers/media/usb/uvc/uvc_driver.c
> index 13023cdd37e50b..12b6ad0966d94a 100644
> --- a/drivers/media/usb/uvc/uvc_driver.c
> +++ b/drivers/media/usb/uvc/uvc_driver.c
> @@ -224,7 +224,7 @@ static int uvc_parse_format(struct uvc_device *dev,
>  {
>  	struct usb_interface *intf = streaming->intf;
>  	struct usb_host_interface *alts = intf->cur_altsetting;
> -	struct uvc_format_desc *fmtdesc;
> +	const struct uvc_format_desc *fmtdesc;
>  	struct uvc_frame *frame;
>  	const unsigned char *start = buffer;
>  	unsigned int width_multiplier = 1;
> diff --git a/drivers/usb/gadget/function/uvc_v4l2.c b/drivers/usb/gadget/function/uvc_v4l2.c
> index 7435df0cf2a847..21e573e628f4e7 100644
> --- a/drivers/usb/gadget/function/uvc_v4l2.c
> +++ b/drivers/usb/gadget/function/uvc_v4l2.c
> @@ -27,10 +27,10 @@
>  #include "uvc_v4l2.h"
>  #include "uvc_configfs.h"
>  
> -static struct uvc_format_desc *to_uvc_format(struct uvcg_format *uformat)
> +static const struct uvc_format_desc *to_uvc_format(struct uvcg_format *uformat)
>  {
>  	char guid[16] = UVC_GUID_FORMAT_MJPEG;
> -	struct uvc_format_desc *format;
> +	const struct uvc_format_desc *format;
>  	struct uvcg_uncompressed *unc;
>  
>  	if (uformat->type == UVCG_UNCOMPRESSED) {
> @@ -119,7 +119,7 @@ static struct uvcg_format *find_format_by_pix(struct uvc_device *uvc,
>  	struct uvcg_format *uformat = NULL;
>  
>  	list_for_each_entry(format, &uvc->header->formats, entry) {
> -		struct uvc_format_desc *fmtdesc = to_uvc_format(format->fmt);
> +		const struct uvc_format_desc *fmtdesc = to_uvc_format(format->fmt);
>  
>  		if (fmtdesc->fcc == pixelformat) {
>  			uformat = format->fmt;
> @@ -364,7 +364,7 @@ uvc_v4l2_enum_format(struct file *file, void *fh, struct v4l2_fmtdesc *f)
>  {
>  	struct video_device *vdev = video_devdata(file);
>  	struct uvc_device *uvc = video_get_drvdata(vdev);
> -	struct uvc_format_desc *fmtdesc;
> +	const struct uvc_format_desc *fmtdesc;
>  	struct uvcg_format *uformat;
>  
>  	if (f->index >= uvc->header->num_fmt)
> diff --git a/include/linux/usb/uvc.h b/include/linux/usb/uvc.h
> index a2dae2b40a2318..227a03f252a5c0 100644
> --- a/include/linux/usb/uvc.h
> +++ b/include/linux/usb/uvc.h
> @@ -151,6 +151,6 @@ struct uvc_format_desc {
>  	u32 fcc;
>  };
>  
> -struct uvc_format_desc *uvc_format_by_guid(const u8 guid[16]);
> +const struct uvc_format_desc *uvc_format_by_guid(const u8 guid[16]);
>  
>  #endif /* __LINUX_V4L2_UVC_H */
diff mbox series

Patch

diff --git a/drivers/media/common/uvc.c b/drivers/media/common/uvc.c
index a3cf40215a0754..a6787f1999becd 100644
--- a/drivers/media/common/uvc.c
+++ b/drivers/media/common/uvc.c
@@ -9,7 +9,7 @@ 
  * Video formats
  */
 
-static struct uvc_format_desc uvc_fmts[] = {
+static const struct uvc_format_desc uvc_fmts[] = {
 	{
 		.name		= "YUV 4:2:2 (YUYV)",
 		.guid		= UVC_GUID_FORMAT_YUY2,
@@ -197,7 +197,7 @@  static struct uvc_format_desc uvc_fmts[] = {
 	},
 };
 
-struct uvc_format_desc *uvc_format_by_guid(const u8 guid[16])
+const struct uvc_format_desc *uvc_format_by_guid(const u8 guid[16])
 {
 	unsigned int len = ARRAY_SIZE(uvc_fmts);
 	unsigned int i;
diff --git a/drivers/media/usb/uvc/uvc_driver.c b/drivers/media/usb/uvc/uvc_driver.c
index 13023cdd37e50b..12b6ad0966d94a 100644
--- a/drivers/media/usb/uvc/uvc_driver.c
+++ b/drivers/media/usb/uvc/uvc_driver.c
@@ -224,7 +224,7 @@  static int uvc_parse_format(struct uvc_device *dev,
 {
 	struct usb_interface *intf = streaming->intf;
 	struct usb_host_interface *alts = intf->cur_altsetting;
-	struct uvc_format_desc *fmtdesc;
+	const struct uvc_format_desc *fmtdesc;
 	struct uvc_frame *frame;
 	const unsigned char *start = buffer;
 	unsigned int width_multiplier = 1;
diff --git a/drivers/usb/gadget/function/uvc_v4l2.c b/drivers/usb/gadget/function/uvc_v4l2.c
index 7435df0cf2a847..21e573e628f4e7 100644
--- a/drivers/usb/gadget/function/uvc_v4l2.c
+++ b/drivers/usb/gadget/function/uvc_v4l2.c
@@ -27,10 +27,10 @@ 
 #include "uvc_v4l2.h"
 #include "uvc_configfs.h"
 
-static struct uvc_format_desc *to_uvc_format(struct uvcg_format *uformat)
+static const struct uvc_format_desc *to_uvc_format(struct uvcg_format *uformat)
 {
 	char guid[16] = UVC_GUID_FORMAT_MJPEG;
-	struct uvc_format_desc *format;
+	const struct uvc_format_desc *format;
 	struct uvcg_uncompressed *unc;
 
 	if (uformat->type == UVCG_UNCOMPRESSED) {
@@ -119,7 +119,7 @@  static struct uvcg_format *find_format_by_pix(struct uvc_device *uvc,
 	struct uvcg_format *uformat = NULL;
 
 	list_for_each_entry(format, &uvc->header->formats, entry) {
-		struct uvc_format_desc *fmtdesc = to_uvc_format(format->fmt);
+		const struct uvc_format_desc *fmtdesc = to_uvc_format(format->fmt);
 
 		if (fmtdesc->fcc == pixelformat) {
 			uformat = format->fmt;
@@ -364,7 +364,7 @@  uvc_v4l2_enum_format(struct file *file, void *fh, struct v4l2_fmtdesc *f)
 {
 	struct video_device *vdev = video_devdata(file);
 	struct uvc_device *uvc = video_get_drvdata(vdev);
-	struct uvc_format_desc *fmtdesc;
+	const struct uvc_format_desc *fmtdesc;
 	struct uvcg_format *uformat;
 
 	if (f->index >= uvc->header->num_fmt)
diff --git a/include/linux/usb/uvc.h b/include/linux/usb/uvc.h
index a2dae2b40a2318..227a03f252a5c0 100644
--- a/include/linux/usb/uvc.h
+++ b/include/linux/usb/uvc.h
@@ -151,6 +151,6 @@  struct uvc_format_desc {
 	u32 fcc;
 };
 
-struct uvc_format_desc *uvc_format_by_guid(const u8 guid[16]);
+const struct uvc_format_desc *uvc_format_by_guid(const u8 guid[16]);
 
 #endif /* __LINUX_V4L2_UVC_H */