linux-media.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v5 00/12]Show privacy_gpio as a v4l2_ctrl
@ 2020-12-21 16:48 Ricardo Ribalda
  2020-12-21 16:48 ` [PATCH v5 01/12] media: uvcvideo: Fix race condition handling events Ricardo Ribalda
                   ` (11 more replies)
  0 siblings, 12 replies; 28+ messages in thread
From: Ricardo Ribalda @ 2020-12-21 16:48 UTC (permalink / raw)
  To: Laurent Pinchart, Mauro Carvalho Chehab, linux-media, linux-kernel
  Cc: Ricardo Ribalda

Some devices can implement a physical switch to disable the input of the
camera on demand. Think of it like an elegant privacy sticker.

The system can read the status of the privacy switch via a GPIO.

The ACPI table maps this GPIO to the USB device via _CRS and _DSD
descriptors, so the kernel can find it.

The userspace applications need to know if the privacy pin is enabled
or not.

The obvious way to show it to userspace is via the V4L2_CID_PRIVACY control.

This patchset implement this functionality.

v5: Thanks to all the comments from Laurent!
  - Allow multiple async_ctrls
  - Use dev_dbg() for uvc_trace
  - Major redesing of "Implement UVC_EXT_GPIO_UNIT"
  - Major redesing of "Implement UVC_QUIRK_PRIVACY_DURING_STREAM"

v4: Implement UVC_QUIRK_PRIVACY_DURING_STREAM

v3: Thanks to all the comments from Joe Perches
  - Rework of printk macros

v2: Thanks to all the comments from Laurent!
  - move guid to unit
  - support entities with no pads
  - CodeStyle
  - Irq handling
  - pr_cont
  - new ids

Ricardo Ribalda (12):
  media: uvcvideo: Fix race condition handling events
  media: uvcvideo: Allow more that one asyc_ctrl
  media: uvcvideo: Move guid to entity
  media: uvcvideo: Allow extra entities
  media: uvcvideo: Allow entities with no pads
  media: uvcvideo: Allow entity-defined get_info and get_cur
  media: uvcvideo: Implement UVC_EXT_GPIO_UNIT
  media: uvcvideo: Add Privacy control based on EXT_GPIO
  media: uvcvideo: Implement UVC_QUIRK_PRIVACY_DURING_STREAM
  media: uvcvideo: Use dev_ printk aliases
  media: uvcvideo: New macro uvc_trace_cont
  media: uvcvideo: use dev_dbg() for uvc_trace()

 drivers/media/usb/uvc/uvc_ctrl.c   | 204 +++++----
 drivers/media/usb/uvc/uvc_driver.c | 644 +++++++++++++++++++----------
 drivers/media/usb/uvc/uvc_entity.c |  11 +-
 drivers/media/usb/uvc/uvc_isight.c |  16 +-
 drivers/media/usb/uvc/uvc_queue.c  |  12 +-
 drivers/media/usb/uvc/uvc_status.c |  32 +-
 drivers/media/usb/uvc/uvc_v4l2.c   |  53 ++-
 drivers/media/usb/uvc/uvc_video.c  | 120 +++---
 drivers/media/usb/uvc/uvcvideo.h   |  91 ++--
 9 files changed, 767 insertions(+), 416 deletions(-)

-- 
2.29.2.684.gfbc64c5ab5-goog


^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2022-02-04  5:59 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-21 16:48 [PATCH v5 00/12]Show privacy_gpio as a v4l2_ctrl Ricardo Ribalda
2020-12-21 16:48 ` [PATCH v5 01/12] media: uvcvideo: Fix race condition handling events Ricardo Ribalda
2020-12-22  8:04   ` Laurent Pinchart
2020-12-21 16:48 ` [PATCH v5 02/12] media: uvcvideo: Allow more that one asyc_ctrl Ricardo Ribalda
2020-12-22  8:07   ` Laurent Pinchart
2020-12-21 16:48 ` [PATCH v5 03/12] media: uvcvideo: Move guid to entity Ricardo Ribalda
2020-12-21 16:48 ` [PATCH v5 04/12] media: uvcvideo: Allow extra entities Ricardo Ribalda
2020-12-21 18:17   ` Ricardo Ribalda
2020-12-21 16:48 ` [PATCH v5 05/12] media: uvcvideo: Allow entities with no pads Ricardo Ribalda
2020-12-21 16:48 ` [PATCH v5 06/12] media: uvcvideo: Allow entity-defined get_info and get_cur Ricardo Ribalda
2020-12-21 16:48 ` [PATCH v5 07/12] media: uvcvideo: Implement UVC_EXT_GPIO_UNIT Ricardo Ribalda
2020-12-22  8:33   ` Laurent Pinchart
2020-12-22  8:37     ` Laurent Pinchart
2020-12-22 18:36     ` Ricardo Ribalda
2020-12-23  7:54       ` Laurent Pinchart
2020-12-21 16:48 ` [PATCH v5 08/12] media: uvcvideo: Add Privacy control based on EXT_GPIO Ricardo Ribalda
2020-12-21 16:48 ` [PATCH v5 09/12] media: uvcvideo: Implement UVC_QUIRK_PRIVACY_DURING_STREAM Ricardo Ribalda
2020-12-22 10:29   ` Laurent Pinchart
2020-12-22 20:04     ` Ricardo Ribalda
2020-12-23  8:04       ` Laurent Pinchart
2020-12-23  8:31         ` Ricardo Ribalda
2020-12-23 12:55           ` Ricardo Ribalda
2021-04-20  4:54             ` Tomasz Figa
2022-02-04  5:59               ` Tomasz Figa
2020-12-21 16:48 ` [PATCH v5 10/12] media: uvcvideo: Use dev_ printk aliases Ricardo Ribalda
2020-12-21 16:48 ` [PATCH v5 11/12] media: uvcvideo: New macro uvc_trace_cont Ricardo Ribalda
2020-12-21 16:48 ` [PATCH v5 12/12] media: uvcvideo: use dev_dbg() for uvc_trace() Ricardo Ribalda
2020-12-22  8:51   ` Laurent Pinchart

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).