public inbox for linux-usb@vger.kernel.org
 help / color / mirror / Atom feed
From: Daniel Scally <dan.scally@ideasonboard.com>
To: linux-usb@vger.kernel.org
Cc: laurent.pinchart@ideasonboard.com, gregkh@linuxfoundation.org,
	mgr@pengutronix.de, kieran.bingham@ideasonboard.com,
	Daniel Scally <dan.scally@ideasonboard.com>
Subject: [PATCH 0/3] Add ability to disable UVC Gadget's interrupt endpoint
Date: Mon,  5 Dec 2022 14:37:55 +0000	[thread overview]
Message-ID: <20221205143758.1096914-1-dan.scally@ideasonboard.com> (raw)

The UVC Gadget includes a hardcoded interrupt endpoint against the VideoControl
interface, though it is misnamed as a control endpoint (the default endpoint 0
is actually used for that role). The UVC specification says that this is an
optional feature of a UVC compliant camera provided certain scenarios don't hold
true, specifically...

1. The device supports hardware triggers for still image capture
2. The device implements any AutoUpdate controls
3. The device implements any Asynchronous controls

Those are all scenarios that will be determined by userspace, meaning that in some
implementations the interrupt endpoint is unnecessary. This series adds the means
to disable it, though retains the current behaviour as the default.

Daniel Scally (3):
  usb: gadget: uvc: Rename uvc_control_ep
  usb: gadget: uvc: Add new disable_interrupt_ep attribute
  usb: gadget: uvc: Allow disabling of interrupt endpoint

 drivers/usb/gadget/function/f_uvc.c        | 46 +++++++++++--------
 drivers/usb/gadget/function/u_uvc.h        |  2 +
 drivers/usb/gadget/function/uvc.h          |  3 +-
 drivers/usb/gadget/function/uvc_configfs.c | 53 ++++++++++++++++++++++
 4 files changed, 85 insertions(+), 19 deletions(-)

-- 
2.34.1


             reply	other threads:[~2022-12-05 14:38 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-05 14:37 Daniel Scally [this message]
2022-12-05 14:37 ` [PATCH 1/3] usb: gadget: uvc: Rename uvc_control_ep Daniel Scally
2022-12-08 15:33   ` Greg KH
2022-12-08 15:39     ` Dan Scally
2022-12-28  1:59   ` Laurent Pinchart
2023-01-01 20:25     ` Dan Scally
2022-12-05 14:37 ` [PATCH 2/3] usb: gadget: uvc: Add new disable_interrupt_ep attribute Daniel Scally
2022-12-08 15:32   ` Greg KH
2022-12-28  2:02   ` Laurent Pinchart
2022-12-05 14:37 ` [PATCH 3/3] usb: gadget: uvc: Allow disabling of interrupt endpoint Daniel Scally
2022-12-28  2:09   ` Laurent Pinchart
2023-01-01 20:46     ` Dan Scally
2023-01-02 10:24       ` Laurent Pinchart

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20221205143758.1096914-1-dan.scally@ideasonboard.com \
    --to=dan.scally@ideasonboard.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=kieran.bingham@ideasonboard.com \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-usb@vger.kernel.org \
    --cc=mgr@pengutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox