media: uvcvideo: Make uvc_control_mapping menu_info field const
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Mon, 6 Aug 2018 22:25:33 +0000 (18:25 -0400)
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>
Tue, 11 Sep 2018 12:41:17 +0000 (08:41 -0400)
The menu_info field of the uvc_control_mapping structure points to an
array of menu info data that are never changed by the driver. Make the
pointer const and constify the related static arrays in the driver.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
drivers/media/usb/uvc/uvc_ctrl.c
drivers/media/usb/uvc/uvcvideo.h

index 2cdd32ef1d435c23a7f09f3d8cb9e48ed9fcadc5..04ae9c1adbafe30542ada23e6411110de7dd55af 100644 (file)
@@ -354,13 +354,13 @@ static const struct uvc_control_info uvc_ctrls[] = {
        },
 };
 
-static struct uvc_menu_info power_line_frequency_controls[] = {
+static const struct uvc_menu_info power_line_frequency_controls[] = {
        { 0, "Disabled" },
        { 1, "50 Hz" },
        { 2, "60 Hz" },
 };
 
-static struct uvc_menu_info exposure_auto_controls[] = {
+static const struct uvc_menu_info exposure_auto_controls[] = {
        { 2, "Auto Mode" },
        { 1, "Manual Mode" },
        { 4, "Shutter Priority Mode" },
@@ -978,7 +978,7 @@ static s32 __uvc_ctrl_get_value(struct uvc_control_mapping *mapping,
        s32 value = mapping->get(mapping, UVC_GET_CUR, data);
 
        if (mapping->v4l2_type == V4L2_CTRL_TYPE_MENU) {
-               struct uvc_menu_info *menu = mapping->menu_info;
+               const struct uvc_menu_info *menu = mapping->menu_info;
                unsigned int i;
 
                for (i = 0; i < mapping->menu_count; ++i, ++menu) {
@@ -1025,7 +1025,7 @@ static int __uvc_query_v4l2_ctrl(struct uvc_video_chain *chain,
 {
        struct uvc_control_mapping *master_map = NULL;
        struct uvc_control *master_ctrl = NULL;
-       struct uvc_menu_info *menu;
+       const struct uvc_menu_info *menu;
        unsigned int i;
 
        memset(v4l2_ctrl, 0, sizeof(*v4l2_ctrl));
@@ -1145,7 +1145,7 @@ done:
 int uvc_query_v4l2_menu(struct uvc_video_chain *chain,
        struct v4l2_querymenu *query_menu)
 {
-       struct uvc_menu_info *menu_info;
+       const struct uvc_menu_info *menu_info;
        struct uvc_control_mapping *mapping;
        struct uvc_control *ctrl;
        u32 index = query_menu->index;
index e5f5d84f1d1d5821e8ce5a8b1d30e69d9d730735..59d66e5b88871e68b5f5551d122e4b7b2a80f150 100644 (file)
@@ -234,7 +234,7 @@ struct uvc_control_mapping {
        enum v4l2_ctrl_type v4l2_type;
        u32 data_type;
 
-       struct uvc_menu_info *menu_info;
+       const struct uvc_menu_info *menu_info;
        u32 menu_count;
 
        u32 master_id;