From: Wesley Cheng <quic_wcheng@quicinc.com>
To: <srinivas.kandagatla@linaro.org>, <mathias.nyman@intel.com>,
<perex@perex.cz>, <conor+dt@kernel.org>, <corbet@lwn.net>,
<lgirdwood@gmail.com>, <andersson@kernel.org>,
<krzysztof.kozlowski+dt@linaro.org>, <gregkh@linuxfoundation.org>,
<Thinh.Nguyen@synopsys.com>, <broonie@kernel.org>,
<bgoswami@quicinc.com>, <tiwai@suse.com>, <robh+dt@kernel.org>,
<konrad.dybcio@linaro.org>
Cc: <linux-kernel@vger.kernel.org>, <devicetree@vger.kernel.org>,
<linux-sound@vger.kernel.org>, <linux-usb@vger.kernel.org>,
<linux-arm-msm@vger.kernel.org>, <linux-doc@vger.kernel.org>,
<alsa-devel@alsa-project.org>
Subject: Re: [PATCH v14 00/53] Introduce QC USB SND audio offloading support
Date: Thu, 8 Feb 2024 15:33:06 -0800 [thread overview]
Message-ID: <852cc2e0-4e61-3b8a-428f-7623ceade463@quicinc.com> (raw)
In-Reply-To: <20240208231406.27397-1-quic_wcheng@quicinc.com>
Hi Mark/Takashi,
On 2/8/2024 3:13 PM, Wesley Cheng wrote:
<snip>
Would it be possible to see if we could start pulling some of these non
offloading dependent changes into your repos? It would really be
helpful since the # of patches is getting a little cumbersome to
maintain. If we need to make any follow ups, I can address them as a
separate patch and add it to the series w/ the other changes that are
still pending.
> Mathias Nyman (13):
> xhci: fix possible null pointer dereference at secondary interrupter
> removal
> xhci: fix off by one check when adding a secondary interrupter.
> xhci: Add interrupt pending autoclear flag to each interrupter
> xhci: Add helper to set an interrupters interrupt moderation interval
> xhci: make isoc_bei_interval variable interrupter specific.
> xhci: remove unnecessary event_ring_deq parameter from
> xhci_handle_event()
> xhci: update event ring dequeue pointer position to controller
> correctly
> xhci: move event processing for one interrupter to a separate function
> xhci: add helper that checks for unhandled events on a event ring
> xhci: Don't check if the event ring is valid before every event TRB
> xhci: Decouple handling an event from checking for unhandled events
> xhci: add helper to stop endpoint and wait for completion
> xhci: sideband: add initial api to register a sideband entity
>
Will work with Mathias on the XHCI stuff when he gets some time to
review the set of changes added for the XHCI interrupters. Some of the
series in USB SND are dependent on that, such as the qc_audio_offload
driver, since it makes calls into the XHCI sideband that was added, so
won't be able to pull that in yet. (This is the only driver that will
interact w/ XHCI sideband, all ASoC and general USB SND changes are
independent)
Thanks
Wesley Cheng
> Wesley Cheng (40):
> usb: host: xhci: Export enable and disable interrupter APIs
> usb: host: xhci: Repurpose event handler for skipping interrupter
> events
> xhci: export XHCI IMOD setting helper for interrupters
> usb: host: xhci-sideband: Expose a sideband interrupter enable API
> usb: host: xhci-mem: Cleanup pending secondary event ring events
> usb: host: xhci-mem: Allow for interrupter clients to choose specific
> index
> ASoC: Add SOC USB APIs for adding an USB backend
> ASoC: dt-bindings: qcom,q6dsp-lpass-ports: Add USB_RX port
> ASoC: qcom: qdsp6: Introduce USB AFE port to q6dsp
> ASoC: qdsp6: q6afe: Increase APR timeout > ASoC: qcom: qdsp6: Add USB backend ASoC driver for Q6> ALSA:
usb-audio: Introduce USB SND platform op callbacks
> ALSA: usb-audio: Export USB SND APIs for modules
> ALSA: usb-audio: Save UAC sample size information
> usb: dwc3: Specify maximum number of XHCI interrupters
> usb: host: xhci-plat: Set XHCI max interrupters if property is present
> ALSA: usb-audio: qcom: Add USB QMI definitions
> ALSA: usb-audio: qcom: Introduce QC USB SND offloading support
> ALSA: usb-audio: Check for support for requested audio format
> ASoC: usb: Add PCM format check API for USB backend
> ASoC: qcom: qdsp6: Ensure PCM format is supported by USB audio device
> ALSA: usb-audio: Prevent starting of audio stream if in use
> ALSA: usb-audio: Do not allow USB offload path if PCM device is in use
> ASoC: dt-bindings: Add Q6USB backend
> ASoC: dt-bindings: Update example for enabling USB offload on SM8250
> ALSA: usb-audio: qcom: Populate PCM and USB chip information
> ASoC: qcom: qdsp6: Add support to track available USB PCM devices
> ASoC: Introduce SND kcontrols to select sound card and PCM device
> ASoC: qcom: qdsp6: Add SOC USB offload select get/put callbacks
> ASoC: Add SND kcontrol for fetching USB offload status
> ASoC: qcom: qdsp6: Add PCM ops to track current state
> ASoC: usb: Create SOC USB SND jack kcontrol
> ASoC: qcom: qdsp6: Add headphone jack for offload connection status
> ASoC: usb: Fetch ASoC sound card information
> ALSA: usb-audio: mixer: Add USB offloading mixer control
> ALSA: usb-audio: qcom: Use card and PCM index from QMI request
> ALSA: usb-audio: Allow for rediscovery of connected USB SND devices
> ASoC: usb: Rediscover USB SND devices on USB port add
> ASoC: qcom: Populate SoC components string
> ASoC: doc: Add documentation for SOC USB
>
> .../devicetree/bindings/sound/qcom,q6usb.yaml | 55 +
> .../bindings/sound/qcom,sm8250.yaml | 15 +
> Documentation/sound/soc/index.rst | 1 +
> Documentation/sound/soc/usb.rst | 611 ++++++
> drivers/usb/dwc3/core.c | 12 +
> drivers/usb/dwc3/core.h | 2 +
> drivers/usb/dwc3/host.c | 5 +-
> drivers/usb/host/Kconfig | 9 +
> drivers/usb/host/Makefile | 2 +
> drivers/usb/host/xhci-mem.c | 53 +-
> drivers/usb/host/xhci-plat.c | 2 +
> drivers/usb/host/xhci-ring.c | 240 ++-
> drivers/usb/host/xhci-sideband.c | 439 ++++
> drivers/usb/host/xhci.c | 97 +-
> drivers/usb/host/xhci.h | 21 +-
> .../sound/qcom,q6dsp-lpass-ports.h | 1 +
> include/linux/usb/xhci-sideband.h | 70 +
> include/sound/q6usboffload.h | 20 +
> include/sound/soc-usb.h | 90 +
> sound/soc/Makefile | 2 +-
> sound/soc/qcom/Kconfig | 4 +
> sound/soc/qcom/common.c | 41 +
> sound/soc/qcom/common.h | 4 +-
> sound/soc/qcom/qdsp6/Makefile | 1 +
> sound/soc/qcom/qdsp6/q6afe-dai.c | 60 +
> sound/soc/qcom/qdsp6/q6afe.c | 193 +-
> 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 | 9 +
> sound/soc/qcom/qdsp6/q6usb.c | 401 ++++
> sound/soc/qcom/sm8250.c | 14 +-
> sound/soc/soc-usb.c | 538 +++++
> sound/usb/Kconfig | 19 +
> sound/usb/Makefile | 3 +-
> sound/usb/card.c | 109 +
> sound/usb/card.h | 24 +
> sound/usb/endpoint.c | 1 +
> sound/usb/format.c | 1 +
> sound/usb/helper.c | 1 +
> sound/usb/mixer.c | 5 +
> sound/usb/mixer_usb_offload.c | 72 +
> 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 | 1910 +++++++++++++++++
> sound/usb/qcom/usb_audio_qmi_v01.c | 892 ++++++++
> sound/usb/qcom/usb_audio_qmi_v01.h | 162 ++
> 49 files changed, 6228 insertions(+), 177 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6usb.yaml
> create mode 100644 Documentation/sound/soc/usb.rst
> create mode 100644 drivers/usb/host/xhci-sideband.c
> create mode 100644 include/linux/usb/xhci-sideband.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/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
>
next prev parent reply other threads:[~2024-02-08 23:33 UTC|newest]
Thread overview: 72+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-02-08 23:13 [PATCH v14 00/53] Introduce QC USB SND audio offloading support Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 01/53] xhci: fix possible null pointer dereference at secondary interrupter removal Wesley Cheng
2024-02-09 10:22 ` Greg KH
2024-02-09 20:16 ` Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 02/53] xhci: fix off by one check when adding a secondary interrupter Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 03/53] xhci: Add interrupt pending autoclear flag to each interrupter Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 04/53] xhci: Add helper to set an interrupters interrupt moderation interval Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 05/53] xhci: make isoc_bei_interval variable interrupter specific Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 06/53] xhci: remove unnecessary event_ring_deq parameter from xhci_handle_event() Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 07/53] xhci: update event ring dequeue pointer position to controller correctly Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 08/53] xhci: move event processing for one interrupter to a separate function Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 09/53] xhci: add helper that checks for unhandled events on a event ring Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 10/53] xhci: Don't check if the event ring is valid before every event TRB Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 11/53] xhci: Decouple handling an event from checking for unhandled events Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 12/53] xhci: add helper to stop endpoint and wait for completion Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 13/53] usb: host: xhci: Export enable and disable interrupter APIs Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 14/53] usb: host: xhci: Repurpose event handler for skipping interrupter events Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 15/53] xhci: export XHCI IMOD setting helper for interrupters Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 16/53] xhci: sideband: add initial api to register a sideband entity Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 17/53] usb: host: xhci-sideband: Expose a sideband interrupter enable API Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 18/53] usb: host: xhci-mem: Cleanup pending secondary event ring events Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 19/53] usb: host: xhci-mem: Allow for interrupter clients to choose specific index Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 20/53] ASoC: Add SOC USB APIs for adding an USB backend Wesley Cheng
2024-02-09 10:54 ` Takashi Iwai
2024-02-09 20:34 ` Wesley Cheng
2024-02-10 8:08 ` Takashi Iwai
2024-02-12 7:58 ` Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 21/53] ASoC: dt-bindings: qcom,q6dsp-lpass-ports: Add USB_RX port Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 22/53] ASoC: qcom: qdsp6: Introduce USB AFE port to q6dsp Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 23/53] ASoC: qdsp6: q6afe: Increase APR timeout Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 24/53] ASoC: qcom: qdsp6: Add USB backend ASoC driver for Q6 Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 25/53] ALSA: usb-audio: Introduce USB SND platform op callbacks Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 26/53] ALSA: usb-audio: Export USB SND APIs for modules Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 27/53] ALSA: usb-audio: Save UAC sample size information Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 28/53] usb: dwc3: Specify maximum number of XHCI interrupters Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 29/53] usb: host: xhci-plat: Set XHCI max interrupters if property is present Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 30/53] ALSA: usb-audio: qcom: Add USB QMI definitions Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 31/53] ALSA: usb-audio: qcom: Introduce QC USB SND offloading support Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 32/53] ALSA: usb-audio: Check for support for requested audio format Wesley Cheng
2024-02-09 10:42 ` Takashi Iwai
2024-02-09 21:34 ` Wesley Cheng
2024-02-16 23:42 ` Wesley Cheng
2024-02-17 10:08 ` Takashi Iwai
2024-02-24 6:22 ` Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 33/53] ASoC: usb: Add PCM format check API for USB backend Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 34/53] ASoC: qcom: qdsp6: Ensure PCM format is supported by USB audio device Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 35/53] ALSA: usb-audio: Prevent starting of audio stream if in use Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 36/53] ALSA: usb-audio: Do not allow USB offload path if PCM device is " Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 37/53] ASoC: dt-bindings: Add Q6USB backend Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 38/53] ASoC: dt-bindings: Update example for enabling USB offload on SM8250 Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 39/53] ALSA: usb-audio: qcom: Populate PCM and USB chip information Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 40/53] ASoC: qcom: qdsp6: Add support to track available USB PCM devices Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 41/53] ASoC: Introduce SND kcontrols to select sound card and PCM device Wesley Cheng
2024-02-09 10:38 ` Takashi Iwai
2024-02-08 23:13 ` [PATCH v14 42/53] ASoC: qcom: qdsp6: Add SOC USB offload select get/put callbacks Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 43/53] ASoC: Add SND kcontrol for fetching USB offload status Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 44/53] ASoC: qcom: qdsp6: Add PCM ops to track current state Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 45/53] ASoC: usb: Create SOC USB SND jack kcontrol Wesley Cheng
2024-02-09 11:02 ` Takashi Iwai
2024-02-09 23:00 ` Wesley Cheng
2024-02-08 23:13 ` [PATCH v14 46/53] ASoC: qcom: qdsp6: Add headphone jack for offload connection status Wesley Cheng
2024-02-08 23:14 ` [PATCH v14 47/53] ASoC: usb: Fetch ASoC sound card information Wesley Cheng
2024-02-08 23:14 ` [PATCH v14 48/53] ALSA: usb-audio: mixer: Add USB offloading mixer control Wesley Cheng
2024-02-09 10:36 ` Takashi Iwai
2024-02-10 0:31 ` Wesley Cheng
2024-02-08 23:14 ` [PATCH v14 49/53] ALSA: usb-audio: qcom: Use card and PCM index from QMI request Wesley Cheng
2024-02-08 23:14 ` [PATCH v14 50/53] ALSA: usb-audio: Allow for rediscovery of connected USB SND devices Wesley Cheng
2024-02-08 23:14 ` [PATCH v14 51/53] ASoC: usb: Rediscover USB SND devices on USB port add Wesley Cheng
2024-02-08 23:14 ` [PATCH v14 52/53] ASoC: qcom: Populate SoC components string Wesley Cheng
2024-02-08 23:14 ` [PATCH v14 53/53] ASoC: doc: Add documentation for SOC USB Wesley Cheng
2024-02-08 23:33 ` Wesley Cheng [this message]
2024-02-09 10:22 ` [PATCH v14 00/53] Introduce QC USB SND audio offloading support Greg KH
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=852cc2e0-4e61-3b8a-428f-7623ceade463@quicinc.com \
--to=quic_wcheng@quicinc.com \
--cc=Thinh.Nguyen@synopsys.com \
--cc=alsa-devel@alsa-project.org \
--cc=andersson@kernel.org \
--cc=bgoswami@quicinc.com \
--cc=broonie@kernel.org \
--cc=conor+dt@kernel.org \
--cc=corbet@lwn.net \
--cc=devicetree@vger.kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=konrad.dybcio@linaro.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=lgirdwood@gmail.com \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sound@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=mathias.nyman@intel.com \
--cc=perex@perex.cz \
--cc=robh+dt@kernel.org \
--cc=srinivas.kandagatla@linaro.org \
--cc=tiwai@suse.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox