linux-input.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
To: Wesley Cheng <quic_wcheng@quicinc.com>,
	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, Thinh.Nguyen@synopsys.com,
	bgoswami@quicinc.com, robh@kernel.org,
	gregkh@linuxfoundation.org
Cc: 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, alsa-devel@alsa-project.org
Subject: Re: [PATCH v26 19/33] ASoC: qcom: qdsp6: Introduce USB AFE port to q6dsp
Date: Fri, 30 Aug 2024 11:12:50 +0200	[thread overview]
Message-ID: <ae0ae5f0-a3e9-49b4-95ba-524975d70659@linux.intel.com> (raw)
In-Reply-To: <20240829194105.1504814-20-quic_wcheng@quicinc.com>



On 8/29/24 21:40, Wesley Cheng wrote:
> The QC ADSP is able to support USB playback endpoints, so that the main
> application processor can be placed into lower CPU power modes.  This adds
> the required AFE port configurations and port start command to start an
> audio session.
> 
> Specifically, the QC ADSP can support all potential endpoints that are
> exposed by the audio data interface.  This includes, feedback endpoints
> (both implicit and explicit) as well as the isochronous (data) endpoints.

I think you meant

"
this includes isochronous data endpoints, in either synchronous mode or
asynchronous mode. In the latter case both implicit or explicit feedback
endpoints are supported.
"

And now I don't remember how *controls* are handled.

Is this the case that all controls exposed by endpoint zero are visible
in both the regular USB-audio card AND the offloaded card, with changes
mirrored?

It's important to explain so that the volumes are consistent no matter
which path is used. This should be added to the documentation.


> +static const struct snd_soc_dai_ops q6afe_usb_ops = {
> +	.probe		= msm_dai_q6_dai_probe,
> +	.prepare	= q6afe_dai_prepare,
> +	.hw_params	= q6afe_usb_hw_params,
> +	/*
> +	 * Shutdown callback required to stop the USB AFE port, which is enabled
> +	 * by the prepare() stage.  This stops the audio traffic on the USB AFE
> +	 * port on the Q6DSP.
> +	 */
> +	.shutdown	= q6afe_dai_shutdown,
> +	/*
> +	 * Startup callback not needed, as AFE port start command passes the PCM
> +	 * parameters within the AFE command, which is provided by the PCM core
> +	 * during the prepare() stage.
> +	 */

Humm, now this is a bit confusing. Why would you need a shutdown, can't
you use the hw_free() callback for symmetry with prepare()?



  reply	other threads:[~2024-08-30 10:12 UTC|newest]

Thread overview: 65+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-29 19:40 [PATCH v26 00/33] Introduce QC USB SND audio offloading support Wesley Cheng
2024-08-29 19:40 ` [PATCH v26 01/33] xhci: add helper to stop endpoint and wait for completion Wesley Cheng
2024-08-29 19:40 ` [PATCH v26 02/33] usb: host: xhci: Repurpose event handler for skipping interrupter events Wesley Cheng
2024-08-29 19:40 ` [PATCH v26 03/33] xhci: sideband: add initial api to register a sideband entity Wesley Cheng
2024-08-29 19:40 ` [PATCH v26 04/33] usb: xhci: Allow for secondary interrupter to set IMOD Wesley Cheng
2024-08-29 19:40 ` [PATCH v26 05/33] usb: host: xhci-mem: Cleanup pending secondary event ring events Wesley Cheng
2024-08-29 19:40 ` [PATCH v26 06/33] usb: host: xhci-mem: Allow for interrupter clients to choose specific index Wesley Cheng
2024-08-29 19:40 ` [PATCH v26 07/33] usb: host: xhci-plat: Set XHCI max interrupters if property is present Wesley Cheng
2024-08-29 19:40 ` [PATCH v26 08/33] usb: dwc3: Specify maximum number of XHCI interrupters Wesley Cheng
2024-08-29 19:40 ` [PATCH v26 09/33] ALSA: Add USB audio device jack type Wesley Cheng
2024-08-30  8:28   ` Pierre-Louis Bossart
2024-08-29 19:40 ` [PATCH v26 10/33] ALSA: usb-audio: Export USB SND APIs for modules Wesley Cheng
2024-08-30  8:33   ` Pierre-Louis Bossart
2024-08-29 19:40 ` [PATCH v26 11/33] ALSA: usb-audio: Check for support for requested audio format Wesley Cheng
2024-08-30  8:34   ` Pierre-Louis Bossart
2024-08-29 19:40 ` [PATCH v26 12/33] ASoC: Add SOC USB APIs for adding an USB backend Wesley Cheng
2024-08-30  8:40   ` Pierre-Louis Bossart
2024-08-29 19:40 ` [PATCH v26 13/33] ASoC: usb: Add PCM format check API for " Wesley Cheng
2024-08-30  8:41   ` Pierre-Louis Bossart
2024-08-29 19:40 ` [PATCH v26 14/33] ASoC: usb: Create SOC USB SND jack kcontrol Wesley Cheng
2024-08-30  8:46   ` Pierre-Louis Bossart
2024-08-29 19:40 ` [PATCH v26 15/33] ASoC: usb: Fetch ASoC card and pcm device information Wesley Cheng
2024-08-30  8:50   ` Pierre-Louis Bossart
2024-08-29 19:40 ` [PATCH v26 16/33] ASoC: doc: Add documentation for SOC USB Wesley Cheng
2024-08-30  9:03   ` Pierre-Louis Bossart
2024-08-31  1:49     ` Wesley Cheng
2024-08-29 19:40 ` [PATCH v26 17/33] ASoC: dt-bindings: qcom,q6dsp-lpass-ports: Add USB_RX port Wesley Cheng
2024-08-29 19:40 ` [PATCH v26 18/33] ASoC: dt-bindings: Update example for enabling USB offload on SM8250 Wesley Cheng
2024-08-29 19:40 ` [PATCH v26 19/33] ASoC: qcom: qdsp6: Introduce USB AFE port to q6dsp Wesley Cheng
2024-08-30  9:12   ` Pierre-Louis Bossart [this message]
2024-08-31  2:11     ` Wesley Cheng
2024-08-29 19:40 ` [PATCH v26 20/33] ASoC: qcom: qdsp6: q6afe: Increase APR timeout Wesley Cheng
2024-08-30  9:13   ` Pierre-Louis Bossart
2024-08-29 19:40 ` [PATCH v26 21/33] ASoC: qcom: qdsp6: Add USB backend ASoC driver for Q6 Wesley Cheng
2024-08-30  9:21   ` Pierre-Louis Bossart
2024-09-03 21:18     ` Wesley Cheng
2024-08-29 19:40 ` [PATCH v26 22/33] ASoC: qcom: qdsp6: Add headphone jack for offload connection status Wesley Cheng
2024-08-30  9:27   ` Pierre-Louis Bossart
2024-09-03 21:41     ` Wesley Cheng
2024-08-29 19:40 ` [PATCH v26 23/33] ASoC: qcom: qdsp6: Fetch USB offload mapped card and PCM device Wesley Cheng
2024-08-30  9:34   ` Pierre-Louis Bossart
2024-09-03 21:49     ` Wesley Cheng
2024-08-29 19:40 ` [PATCH v26 24/33] ALSA: usb-audio: Introduce USB SND platform op callbacks Wesley Cheng
2024-08-30  9:38   ` Pierre-Louis Bossart
2024-09-03 23:20     ` Wesley Cheng
2024-08-29 19:40 ` [PATCH v26 25/33] ALSA: usb-audio: Save UAC sample size information Wesley Cheng
2024-08-30  9:42   ` Pierre-Louis Bossart
2024-08-29 19:40 ` [PATCH v26 26/33] ALSA: usb-audio: Prevent starting of audio stream if in use Wesley Cheng
2024-08-30  9:45   ` Pierre-Louis Bossart
2024-09-03 23:21     ` Wesley Cheng
2024-08-29 19:40 ` [PATCH v26 27/33] ALSA: usb-audio: qcom: Add USB QMI definitions Wesley Cheng
2024-08-29 19:41 ` [PATCH v26 28/33] ALSA: usb-audio: qcom: Introduce QC USB SND offloading support Wesley Cheng
2024-08-30  9:52   ` Pierre-Louis Bossart
2024-09-03 23:41     ` Wesley Cheng
2024-08-29 19:41 ` [PATCH v26 29/33] ALSA: usb-audio: qcom: Don't allow USB offload path if PCM device is in use Wesley Cheng
2024-08-30  9:55   ` Pierre-Louis Bossart
2024-09-03 23:43     ` Wesley Cheng
2024-08-29 19:41 ` [PATCH v26 30/33] ALSA: usb-audio: qcom: Use card and PCM index from QMI request Wesley Cheng
2024-08-30  9:58   ` Pierre-Louis Bossart
2024-09-04 19:46     ` Wesley Cheng
2024-08-29 19:41 ` [PATCH v26 31/33] ALSA: usb-audio: Add USB offload route kcontrol Wesley Cheng
2024-08-30 10:05   ` Pierre-Louis Bossart
2024-09-03 23:52     ` Wesley Cheng
2024-08-29 19:41 ` [PATCH v26 32/33] ALSA: usb-audio: Allow for rediscovery of connected USB SND devices Wesley Cheng
2024-08-29 19:41 ` [PATCH v26 33/33] ASoC: usb: Rediscover USB SND devices on USB port add 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=ae0ae5f0-a3e9-49b4-95ba-524975d70659@linux.intel.com \
    --to=pierre-louis.bossart@linux.intel.com \
    --cc=Thinh.Nguyen@synopsys.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=bgoswami@quicinc.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=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).