On 2024-11-15 11:42 PM, Wesley Cheng wrote:
Hi,
On 11/6/2024 11:33 AM, Wesley Cheng wrote:
Requesting to see if we can get some Acked-By tags, and merge on usb-next.
Hi Cheng,
I'd consider reordering the series and splitting it up so it's easier to
review, 30 patches is a lot. Right now, the QCOM parts are mixed with
the framework changes. While obviously we want to see user/usage of the
new additions, it is probably better to see QCOM-specifics last so that
we can concentrate on what impacts all of us - the framework changes.
I believe that without much work one could simplify the set so that the
output of:
git log --oneline -n 30
looks like below. At least that's what I've done on my machine. Notice
that the top 7 patches target QCOM directly and make easy candidates for
being removed from the current series and put into a standalone one
instead AKA a follow up. Feel free to correct me if I'm wrong in any of
these.
ASoC: qcom: qdsp6: Fetch USB offload mapped card and PCM device
ASoC: qcom: qdsp6: Add headphone jack for offload connection status
ASoC: qcom: qdsp6: Add USB backend ASoC driver for Q6
ASoC: qcom: qdsp6: q6afe: Increase APR timeout
ASoC: qcom: qdsp6: Introduce USB AFE port to q6dsp
ASoC: dt-bindings: Update example for enabling USB offload on SM8250
ASoC: dt-bindings: qcom,q6dsp-lpass-ports: Add USB_RX port
ASoC: usb: Rediscover USB SND devices on USB port add
ALSA: usb-audio: Allow for rediscovery of connected USB SND devices
ALSA: usb-audio: Add USB offload route kcontrol
ALSA: usb-audio: qcom: Don't allow USB offload path if PCM device is in use
ALSA: usb-audio: qcom: Introduce QC USB SND offloading support
ALSA: usb-audio: qcom: Add USB QMI definitions
ALSA: usb-audio: Introduce USB SND platform op callbacks
ASoC: doc: Add documentation for SOC USB
ASoC: usb: Fetch ASoC card and pcm device information
ASoC: usb: Create SOC USB SND jack kcontrol
ASoC: usb: Add PCM format check API for USB backend
ASoC: Add SOC USB APIs for adding an USB backend
ALSA: usb-audio: Prevent starting of audio stream if in use
ALSA: usb-audio: Save UAC sample size information
ALSA: usb-audio: Check for support for requested audio format
ALSA: usb-audio: Export USB SND APIs for modules
ALSA: Add USB audio device jack type
usb: dwc3: Specify maximum number of XHCI interrupters
usb: host: xhci-plat: Set XHCI max interrupters if property is present
usb: host: xhci-mem: Allow for interrupter clients to choose specific index
usb: host: xhci-mem: Cleanup pending secondary event ring events
xhci: sec-intr: add initial api to register a secondary interrupter entity
usb: host: xhci: Repurpose event handler for skipping interrupter events
Mathias Nyman (1):
xhci: sec-intr: add initial api to register a secondary interrupter
entity
Wesley Cheng (29):
usb: host: xhci: Repurpose event handler for skipping interrupter
events
usb: host: xhci-mem: Cleanup pending secondary event ring events
usb: host: xhci-mem: Allow for interrupter clients to choose specific
index
usb: host: xhci-plat: Set XHCI max interrupters if property is present
usb: dwc3: Specify maximum number of XHCI interrupters
ALSA: Add USB audio device jack type
ALSA: usb-audio: Export USB SND APIs for modules
ALSA: usb-audio: Check for support for requested audio format
ALSA: usb-audio: Save UAC sample size information
ALSA: usb-audio: Prevent starting of audio stream if in use
ASoC: Add SOC USB APIs for adding an USB backend
ASoC: usb: Add PCM format check API for USB backend
ASoC: usb: Create SOC USB SND jack kcontrol
ASoC: usb: Fetch ASoC card and pcm device information
ASoC: doc: Add documentation for SOC USB
ASoC: dt-bindings: qcom,q6dsp-lpass-ports: Add USB_RX port
ASoC: dt-bindings: Update example for enabling USB offload on SM8250
ASoC: qcom: qdsp6: Introduce USB AFE port to q6dsp
ASoC: qcom: qdsp6: q6afe: Increase APR timeout
ASoC: qcom: qdsp6: Add USB backend ASoC driver for Q6
ASoC: qcom: qdsp6: Add headphone jack for offload connection status
ASoC: qcom: qdsp6: Fetch USB offload mapped card and PCM device
ALSA: usb-audio: Introduce USB SND platform op callbacks
ALSA: usb-audio: qcom: Add USB QMI definitions
ALSA: usb-audio: qcom: Introduce QC USB SND offloading support
ALSA: usb-audio: qcom: Don't allow USB offload path if PCM device is
in use
ALSA: usb-audio: Add USB offload route kcontrol
ALSA: usb-audio: Allow for rediscovery of connected USB SND devices
ASoC: usb: Rediscover USB SND devices on USB port add
.../bindings/sound/qcom,sm8250.yaml | 15 +
Documentation/sound/soc/index.rst | 1 +
Documentation/sound/soc/usb.rst | 491 ++++
drivers/usb/dwc3/core.c | 12 +
drivers/usb/dwc3/core.h | 2 +
drivers/usb/dwc3/host.c | 3 +
drivers/usb/host/Kconfig | 11 +
drivers/usb/host/Makefile | 2 +
drivers/usb/host/xhci-mem.c | 31 +-
drivers/usb/host/xhci-plat.c | 2 +
drivers/usb/host/xhci-ring.c | 54 +-
drivers/usb/host/xhci-sec-intr.c | 439 ++++
drivers/usb/host/xhci.c | 2 +-
drivers/usb/host/xhci.h | 14 +-
.../sound/qcom,q6dsp-lpass-ports.h | 1 +
include/linux/mod_devicetable.h | 2 +-
include/linux/usb/xhci-sec-intr.h | 70 +
include/sound/jack.h | 4 +-
include/sound/q6usboffload.h | 20 +
include/sound/soc-usb.h | 147 ++
include/uapi/linux/input-event-codes.h | 3 +-
sound/core/jack.c | 6 +-
sound/soc/Kconfig | 10 +
sound/soc/Makefile | 2 +
sound/soc/qcom/Kconfig | 15 +
sound/soc/qcom/Makefile | 2 +
sound/soc/qcom/qdsp6/Makefile | 1 +
sound/soc/qcom/qdsp6/q6afe-dai.c | 60 +
sound/soc/qcom/qdsp6/q6afe.c | 194 +-
sound/soc/qcom/qdsp6/q6afe.h | 36 +-
sound/soc/qcom/qdsp6/q6dsp-lpass-ports.c | 23 +
sound/soc/qcom/qdsp6/q6dsp-lpass-ports.h | 1 +
sound/soc/qcom/qdsp6/q6routing.c | 32 +-
sound/soc/qcom/qdsp6/q6usb.c | 391 ++++
sound/soc/qcom/sm8250.c | 24 +-
sound/soc/qcom/usb_offload_utils.c | 56 +
sound/soc/qcom/usb_offload_utils.h | 30 +
sound/soc/soc-usb.c | 369 +++
sound/usb/Kconfig | 25 +
sound/usb/Makefile | 4 +-
sound/usb/card.c | 106 +
sound/usb/card.h | 17 +
sound/usb/endpoint.c | 1 +
sound/usb/format.c | 1 +
sound/usb/helper.c | 1 +
sound/usb/mixer_usb_offload.c | 102 +
sound/usb/mixer_usb_offload.h | 17 +
sound/usb/pcm.c | 104 +-
sound/usb/pcm.h | 11 +
sound/usb/qcom/Makefile | 2 +
sound/usb/qcom/qc_audio_offload.c | 1974 +++++++++++++++++
sound/usb/qcom/usb_audio_qmi_v01.c | 863 +++++++
sound/usb/qcom/usb_audio_qmi_v01.h | 164 ++
53 files changed, 5915 insertions(+), 55 deletions(-)
create mode 100644 Documentation/sound/soc/usb.rst
create mode 100644 drivers/usb/host/xhci-sec-intr.c
create mode 100644 include/linux/usb/xhci-sec-intr.h
create mode 100644 include/sound/q6usboffload.h
create mode 100644 include/sound/soc-usb.h
create mode 100644 sound/soc/qcom/qdsp6/q6usb.c
create mode 100644 sound/soc/qcom/usb_offload_utils.c
create mode 100644 sound/soc/qcom/usb_offload_utils.h
create mode 100644 sound/soc/soc-usb.c
create mode 100644 sound/usb/mixer_usb_offload.c
create mode 100644 sound/usb/mixer_usb_offload.h
create mode 100644 sound/usb/qcom/Makefile
create mode 100644 sound/usb/qcom/qc_audio_offload.c
create mode 100644 sound/usb/qcom/usb_audio_qmi_v01.c
create mode 100644 sound/usb/qcom/usb_audio_qmi_v01.h