diff mbox series

[v4,6/9] media: uvcvideo: Add Privacy control based on EXT_GPIO

Message ID 20201215154439.69062-7-ribalda@chromium.org
State Superseded
Headers show
Series Show privacy_gpio as a v4l2_ctrl | expand

Commit Message

Ricardo Ribalda Dec. 15, 2020, 3:44 p.m. UTC
Add a new control and mapping for Privacy controls connected to
UVC_GUID_EXT_GPIO_CONTROLLERs.

Signed-off-by: Ricardo Ribalda <ribalda@chromium.org>
---
 drivers/media/usb/uvc/uvc_ctrl.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

Comments

Laurent Pinchart Dec. 20, 2020, 4:55 p.m. UTC | #1
Hi Ricardo,

Thank you for the patch.

On Tue, Dec 15, 2020 at 04:44:36PM +0100, Ricardo Ribalda wrote:
> Add a new control and mapping for Privacy controls connected to

> UVC_GUID_EXT_GPIO_CONTROLLERs.

> 

> Signed-off-by: Ricardo Ribalda <ribalda@chromium.org>


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


> ---

>  drivers/media/usb/uvc/uvc_ctrl.c | 18 ++++++++++++++++++

>  1 file changed, 18 insertions(+)

> 

> diff --git a/drivers/media/usb/uvc/uvc_ctrl.c b/drivers/media/usb/uvc/uvc_ctrl.c

> index 53da1d984883..511927e8b746 100644

> --- a/drivers/media/usb/uvc/uvc_ctrl.c

> +++ b/drivers/media/usb/uvc/uvc_ctrl.c

> @@ -347,6 +347,14 @@ static const struct uvc_control_info uvc_ctrls[] = {

>  				| UVC_CTRL_FLAG_RESTORE

>  				| UVC_CTRL_FLAG_AUTO_UPDATE,

>  	},

> +	{

> +		.entity		= UVC_GUID_EXT_GPIO_CONTROLLER,

> +		.selector	= UVC_CT_PRIVACY_CONTROL,

> +		.index		= 0,

> +		.size		= 1,

> +		.flags		= UVC_CTRL_FLAG_GET_CUR

> +				| UVC_CTRL_FLAG_AUTO_UPDATE,

> +	},

>  };

>  

>  static const struct uvc_menu_info power_line_frequency_controls[] = {

> @@ -735,6 +743,16 @@ static const struct uvc_control_mapping uvc_ctrl_mappings[] = {

>  		.v4l2_type	= V4L2_CTRL_TYPE_BOOLEAN,

>  		.data_type	= UVC_CTRL_DATA_TYPE_BOOLEAN,

>  	},

> +	{

> +		.id		= V4L2_CID_PRIVACY,

> +		.name		= "Privacy",

> +		.entity		= UVC_GUID_EXT_GPIO_CONTROLLER,

> +		.selector	= UVC_CT_PRIVACY_CONTROL,

> +		.size		= 1,

> +		.offset		= 0,

> +		.v4l2_type	= V4L2_CTRL_TYPE_BOOLEAN,

> +		.data_type	= UVC_CTRL_DATA_TYPE_BOOLEAN,

> +	},

>  };

>  

>  /* ------------------------------------------------------------------------


-- 
Regards,

Laurent Pinchart
diff mbox series

Patch

diff --git a/drivers/media/usb/uvc/uvc_ctrl.c b/drivers/media/usb/uvc/uvc_ctrl.c
index 53da1d984883..511927e8b746 100644
--- a/drivers/media/usb/uvc/uvc_ctrl.c
+++ b/drivers/media/usb/uvc/uvc_ctrl.c
@@ -347,6 +347,14 @@  static const struct uvc_control_info uvc_ctrls[] = {
 				| UVC_CTRL_FLAG_RESTORE
 				| UVC_CTRL_FLAG_AUTO_UPDATE,
 	},
+	{
+		.entity		= UVC_GUID_EXT_GPIO_CONTROLLER,
+		.selector	= UVC_CT_PRIVACY_CONTROL,
+		.index		= 0,
+		.size		= 1,
+		.flags		= UVC_CTRL_FLAG_GET_CUR
+				| UVC_CTRL_FLAG_AUTO_UPDATE,
+	},
 };
 
 static const struct uvc_menu_info power_line_frequency_controls[] = {
@@ -735,6 +743,16 @@  static const struct uvc_control_mapping uvc_ctrl_mappings[] = {
 		.v4l2_type	= V4L2_CTRL_TYPE_BOOLEAN,
 		.data_type	= UVC_CTRL_DATA_TYPE_BOOLEAN,
 	},
+	{
+		.id		= V4L2_CID_PRIVACY,
+		.name		= "Privacy",
+		.entity		= UVC_GUID_EXT_GPIO_CONTROLLER,
+		.selector	= UVC_CT_PRIVACY_CONTROL,
+		.size		= 1,
+		.offset		= 0,
+		.v4l2_type	= V4L2_CTRL_TYPE_BOOLEAN,
+		.data_type	= UVC_CTRL_DATA_TYPE_BOOLEAN,
+	},
 };
 
 /* ------------------------------------------------------------------------