All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Scally <dan.scally@ideasonboard.com>
To: linux-usb@vger.kernel.org, gregkh@linuxfoundation.org,
	laurent.pinchart@ideasonboard.com
Cc: mgr@pengutronix.de, balbi@kernel.org,
	kieran.bingham@ideasonboard.com, torleiv@huddly.com,
	stern@rowland.harvard.edu,
	Daniel Scally <dan.scally@ideasonboard.com>
Subject: [PATCH v4 00/11] Add XU support to UVC Gadget
Date: Thu,  2 Feb 2023 13:54:57 +0000	[thread overview]
Message-ID: <20230202135508.447109-1-dan.scally@ideasonboard.com> (raw)

Hello all

This series adds support for the definition of extension units in configfs for
the UVC Gadget. The XUs are modelled as config_items within a new "extensions"
group under control, which seemed like an appropriate place to put them.

To allow the XU's to be inserted in the function graph, the bSourceID attribute
for the default output terminal is made writeable - users will need to configure
it with the bUnitID of the XU that they want to use as the OT's source. This does
mean that the XUs can _only_ be placed immediately preceding the OT, but I think
that that's fine for now.

The XUs configured through this series have been tested via uvc-gadget, uvcvideo
and uvcdynctrl.

This version is almost identical to v3 but rebased onto usb-testing, with minor
changes to 6/11 and 7/11.

v2 of the series here: https://lore.kernel.org/linux-usb/0ae65812-c937-d071-455b-7c1d6418b080@ideasonboard.com/

Thanks
Dan

Daniel Scally (11):
  usb: gadget: uvc: Make bSourceID read/write
  usb: gadget: uvc: Generalise helper functions for reuse
  usb: gadget: uvc: Allow definition of XUs in configfs
  usb: gadget: uvc: Copy XU descriptors during .bind()
  usb: gadget: configfs: Rename struct gadget_strings
  usb: gadget: configfs: Support arbitrary string descriptors
  usb: gadget: configfs: Attach arbitrary strings to cdev
  usb: gadget: uvc: Allow linking XUs to string descriptors
  usb: gadget: uvc: Pick up custom string descriptor IDs
  usb: gadget: uvc: Allow linking function to string descs
  usb: gadget: uvc: Use custom strings if available

 .../ABI/testing/configfs-usb-gadget-uvc       |  30 +-
 Documentation/usb/gadget_configfs.rst         |  10 +
 drivers/usb/gadget/configfs.c                 | 291 ++++++-
 drivers/usb/gadget/function/f_uvc.c           |  69 +-
 drivers/usb/gadget/function/u_uvc.h           |  15 +
 drivers/usb/gadget/function/uvc.h             |   1 +
 drivers/usb/gadget/function/uvc_configfs.c    | 771 ++++++++++++++++--
 drivers/usb/gadget/function/uvc_configfs.h    |  30 +
 include/linux/usb/composite.h                 |   1 +
 include/linux/usb/gadget.h                    |  11 +
 10 files changed, 1138 insertions(+), 91 deletions(-)

-- 
2.34.1


             reply	other threads:[~2023-02-02 13:55 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-02 13:54 Daniel Scally [this message]
2023-02-02 13:54 ` [PATCH v4 01/11] usb: gadget: uvc: Make bSourceID read/write Daniel Scally
2023-02-02 13:54 ` [PATCH v4 02/11] usb: gadget: uvc: Generalise helper functions for reuse Daniel Scally
2023-02-02 13:55 ` [PATCH v4 03/11] usb: gadget: uvc: Allow definition of XUs in configfs Daniel Scally
2023-02-02 13:55 ` [PATCH v4 04/11] usb: gadget: uvc: Copy XU descriptors during .bind() Daniel Scally
2023-02-02 13:55 ` [PATCH v4 05/11] usb: gadget: configfs: Rename struct gadget_strings Daniel Scally
2023-02-02 13:55 ` [PATCH v4 06/11] usb: gadget: configfs: Support arbitrary string descriptors Daniel Scally
2023-02-02 13:55 ` [PATCH v4 07/11] usb: gadget: configfs: Attach arbitrary strings to cdev Daniel Scally
2023-02-02 13:55 ` [PATCH v4 08/11] usb: gadget: uvc: Allow linking XUs to string descriptors Daniel Scally
2023-02-02 13:55 ` [PATCH v4 09/11] usb: gadget: uvc: Pick up custom string descriptor IDs Daniel Scally
2023-02-02 13:55 ` [PATCH v4 10/11] usb: gadget: uvc: Allow linking function to string descs Daniel Scally
2023-02-02 13:55 ` [PATCH v4 11/11] usb: gadget: uvc: Use custom strings if available Daniel Scally
2023-02-06 10:02 ` [PATCH v4 00/11] Add XU support to UVC Gadget Greg KH
2023-02-06 10:24   ` Dan Scally
2023-02-06 10:29     ` Greg KH
2023-02-06 10:54       ` Dan Scally

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=20230202135508.447109-1-dan.scally@ideasonboard.com \
    --to=dan.scally@ideasonboard.com \
    --cc=balbi@kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=kieran.bingham@ideasonboard.com \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-usb@vger.kernel.org \
    --cc=mgr@pengutronix.de \
    --cc=stern@rowland.harvard.edu \
    --cc=torleiv@huddly.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.