From: Stephan Gerhold <stephan.gerhold@linaro.org>
To: Wesley Cheng <quic_wcheng@quicinc.com>
Cc: Greg KH <gregkh@linuxfoundation.org>,
srinivas.kandagatla@linaro.org, mathias.nyman@intel.com,
perex@perex.cz, conor+dt@kernel.org, dmitry.torokhov@gmail.com,
corbet@lwn.net, broonie@kernel.org, lgirdwood@gmail.com,
tiwai@suse.com, krzk+dt@kernel.org,
pierre-louis.bossart@linux.intel.com, Thinh.Nguyen@synopsys.com,
robh@kernel.org, linux-kernel@vger.kernel.org,
devicetree@vger.kernel.org, linux-sound@vger.kernel.org,
linux-input@vger.kernel.org, linux-usb@vger.kernel.org,
linux-arm-msm@vger.kernel.org, linux-doc@vger.kernel.org
Subject: Re: [PATCH v35 00/31] Introduce QC USB SND audio offloading support
Date: Tue, 4 Mar 2025 09:22:49 +0100 [thread overview]
Message-ID: <Z8a4WYq4GqWBVNyX@linaro.org> (raw)
In-Reply-To: <82ce69a3-d248-494f-6ddb-098f392c78a0@quicinc.com>
On Mon, Mar 03, 2025 at 06:39:52PM -0800, Wesley Cheng wrote:
>
>
> On 2/19/2025 3:24 AM, Stephan Gerhold wrote:
> > On Tue, Feb 18, 2025 at 04:47:23PM -0800, Wesley Cheng wrote:
> > > Requesting to see if we can get some Acked-By tags, and merge on usb-next.
> > >
> > > Several Qualcomm based chipsets can support USB audio offloading to a
> > > dedicated audio DSP, which can take over issuing transfers to the USB
> > > host controller. The intention is to reduce the load on the main
> > > processors in the SoC, and allow them to be placed into lower power modes.
> > > There are several parts to this design:
> > > 1. Adding ASoC binding layer
> > > 2. Create a USB backend for Q6DSP
> > > 3. Introduce XHCI interrupter support
> > > 4. Create vendor ops for the USB SND driver
> > >
> > > USB | ASoC
> > > --------------------------------------------------------------------
> > > | _________________________
> > > | |sm8250 platform card |
> > > | |_________________________|
> > > | | |
> > > | ___V____ ____V____
> > > | |Q6USB | |Q6AFE |
> > > | |"codec" | |"cpu" |
> > > | |________| |_________|
> > > | ^ ^ ^
> > > | | |________|
> > > | ___V____ |
> > > | |SOC-USB | |
> > > ________ ________ | | |
> > > |USB SND |<--->|QC offld|<------------>|________| |
> > > |(card.c)| | |<---------- |
> > > |________| |________|___ | | |
> > > ^ ^ | | | ____________V_________
> > > | | | | | |APR/GLINK |
> > > __ V_______________V_____ | | | |______________________|
> > > |USB SND (endpoint.c) | | | | ^
> > > |_________________________| | | | |
> > > ^ | | | ___________V___________
> > > | | | |->|audio DSP |
> > > ___________V_____________ | | |_______________________|
> > > |XHCI HCD |<- |
> > > |_________________________| |
> > >
> >
> > As I noted on v34 [1], this version is still missing instructions and
> > changes needed for testing this series. The device tree changes don't
> > need to be part of the same series, but there should be at least a link
> > provided to give other people the chance to provide Tested-by tags.
> >
> > IMO we shouldn't merge this series without those instructions, otherwise
> > we risk that this just ends up being dead code that no one can use.
> >
> > Can you please share the device tree changes for a board upstream and
> > any other changes needed to be able to test this series? E.g. for
> > sm8250-mtp.dts, based on the examples in your cover letter.
> >
>
> To clarify I'm testing this on sm8350 in recent times, but utilizing sm8250
> definitions for the ASoC platform card, as the platform sound card is more
> or less the same between the two SoCs. Back
> when I started this series, sm8350 was missing a bunch of dependent
> components, such as aDSP not being loaded, and missing platform sound card
> definition, so I had to define and enable those on my own, which required a
> slew of new DT nodes, hence why it wasn't as straight forward to include
> the DT definitions yet for sm8350. Not thinking that this series would
> take as long as it did, I was planning on separating out the DT changes in
> a different series to enable offloading for the devices I have tested with.
> (sm8150, sm8250 and sm8350)
>
> There's still a pretty big chunk of dependencies missing from sm8350, so
> those would also be handled in the follow up DT submission. For now, its a
> much bigger hurdle to get the main/functional changes in, and that was
> taking a significant amount of time from my end to manage.
>
> If you want, I can give you the changes I have offline to enable this for
> sm8350, since I haven't spent time formatting/prepping the changes for
> submission yet.
>
Can you push it to a public branch somewhere (e.g. on CodeLinaro)? I was
talking to some people from the community about testing this on some of
the smartphones we have in upstream, so it wouldn't help if I just have
the changes privately.
It doesn't have to be perfectly clean as far as I'm concerned, as long
as it allows to see the whole picture of the additional changes we need
to make use of this series.
Thanks,
Stephan
next prev parent reply other threads:[~2025-03-04 8:23 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-19 0:47 [PATCH v35 00/31] Introduce QC USB SND audio offloading support Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 01/31] xhci: sideband: add initial api to register a secondary interrupter entity Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 02/31] usb: host: xhci-mem: Cleanup pending secondary event ring events Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 03/31] usb: host: xhci-mem: Allow for interrupter clients to choose specific index Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 04/31] usb: host: xhci-plat: Set XHCI max interrupters if property is present Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 05/31] usb: host: xhci: Notify xHCI sideband on transfer ring free Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 06/31] usb: dwc3: Specify maximum number of XHCI interrupters Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 07/31] ALSA: Add USB audio device jack type Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 08/31] ALSA: usb-audio: Export USB SND APIs for modules Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 09/31] ALSA: usb-audio: Check for support for requested audio format Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 10/31] ALSA: usb-audio: Save UAC sample size information Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 11/31] ALSA: usb-audio: Prevent starting of audio stream if in use Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 12/31] ALSA: usb-audio: Introduce USB SND platform op callbacks Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 13/31] ALSA: usb-audio: Allow for rediscovery of connected USB SND devices Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 14/31] ASoC: Add SoC USB APIs for adding an USB backend Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 15/31] ASoC: usb: Add PCM format check API for " Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 16/31] ASoC: usb: Create SOC USB SND jack kcontrol Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 17/31] ASoC: usb: Fetch ASoC card and pcm device information Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 18/31] ASoC: usb: Rediscover USB SND devices on USB port add Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 19/31] ASoC: doc: Add documentation for SOC USB Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 20/31] ASoC: dt-bindings: qcom,q6dsp-lpass-ports: Add USB_RX port Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 21/31] ASoC: dt-bindings: Update example for enabling USB offload on SM8250 Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 22/31] ASoC: qcom: qdsp6: Introduce USB AFE port to q6dsp Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 23/31] ASoC: qcom: qdsp6: q6afe: Increase APR timeout Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 24/31] ASoC: qcom: qdsp6: Add USB backend ASoC driver for Q6 Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 25/31] ASoC: qcom: qdsp6: Add headphone jack for offload connection status Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 26/31] ASoC: qcom: qdsp6: Fetch USB offload mapped card and PCM device Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 27/31] ALSA: usb-audio: qcom: Add USB QMI definitions Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 28/31] ALSA: usb-audio: qcom: Introduce QC USB SND offloading support Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 29/31] ALSA: usb-audio: qcom: Don't allow USB offload path if PCM device is in use Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 30/31] ALSA: usb-audio: qcom: Add USB offload route kcontrol Wesley Cheng
2025-02-19 0:47 ` [PATCH v35 31/31] ALSA: usb-audio: qcom: Notify USB audio devices on USB offload probing Wesley Cheng
2025-02-19 11:24 ` [PATCH v35 00/31] Introduce QC USB SND audio offloading support Stephan Gerhold
2025-03-04 2:39 ` Wesley Cheng
2025-03-04 8:22 ` Stephan Gerhold [this message]
2025-03-04 22:46 ` Wesley Cheng
2025-03-05 19:23 ` Stephan Gerhold
2025-03-05 19:28 ` Trilok Soni
2025-03-12 23:17 ` Wesley Cheng
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=Z8a4WYq4GqWBVNyX@linaro.org \
--to=stephan.gerhold@linaro.org \
--cc=Thinh.Nguyen@synopsys.com \
--cc=broonie@kernel.org \
--cc=conor+dt@kernel.org \
--cc=corbet@lwn.net \
--cc=devicetree@vger.kernel.org \
--cc=dmitry.torokhov@gmail.com \
--cc=gregkh@linuxfoundation.org \
--cc=krzk+dt@kernel.org \
--cc=lgirdwood@gmail.com \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-input@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=pierre-louis.bossart@linux.intel.com \
--cc=quic_wcheng@quicinc.com \
--cc=robh@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;
as well as URLs for NNTP newsgroup(s).