Linux Sound subsystem development
 help / color / mirror / Atom feed
From: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
To: Alexey Klimov <alexey.klimov@linaro.org>, broonie@kernel.org
Cc: perex@perex.cz, tiwai@suse.com, srini@kernel.org,
	linux-sound@vger.kernel.org, m.facchin@arduino.cc,
	linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org
Subject: Re: [PATCH 7/9] ASoC: qcom: q6asm: add q6asm_get_hw_pointer
Date: Thu, 23 Oct 2025 10:30:41 +0100	[thread overview]
Message-ID: <a38edaa8-d793-4e3c-ba9a-b8717c8e7569@oss.qualcomm.com> (raw)
In-Reply-To: <DDN8PM13DWWZ.BCXRTJIFB7PD@linaro.org>

On 10/20/25 4:04 PM, Alexey Klimov wrote:
> On Wed Oct 15, 2025 at 2:17 PM BST, Srinivas Kandagatla wrote:
>> Currently we are performing an extra layer of calculation on the hw_ptr,
>> which is always prone to errors.
>> Move this to common dsp layer for better accuracy.
> 
> The subject says that the change adds q6asm_get_hw_ptr but here it says
> that calculation of hw_ptr is moved. Where is it moved out of or from?
> 
> Currently the commit message is confusing.

Sure, Will rephrase this.

Currently q6asm-dai.c implement tracking the dsp hardware pointer based
on callbacks from q6asm, this is really an overhead, prone to errors and
redundant.
We already have buffers and tokens which can be used to get hw_ptr
location, use this instead.

--srini>
> It seems to be potential confusing split with commit.
> ("ASoC: qcom: q6asm-dai: use q6asm_get_hw_pointer") where calculation
> of hw_ptr was implemented in q6asm-dai.c.
> 
>> Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
>> ---
>>  sound/soc/qcom/qdsp6/q6asm.c | 12 ++++++++++++
>>  sound/soc/qcom/qdsp6/q6asm.h |  1 +
>>  2 files changed, 13 insertions(+)
>>
>> diff --git a/sound/soc/qcom/qdsp6/q6asm.c b/sound/soc/qcom/qdsp6/q6asm.c
>> index 371389c8fa7a..643ca944b1b5 100644
>> --- a/sound/soc/qcom/qdsp6/q6asm.c
>> +++ b/sound/soc/qcom/qdsp6/q6asm.c
>> @@ -6,6 +6,7 @@
>>  #include <linux/mutex.h>
>>  #include <linux/wait.h>
>>  #include <linux/module.h>
>> +#include <linux/atomic.h>
> 
> Ideally this should be sorted but it seems it was not initially.
> 
>>  #include <linux/soc/qcom/apr.h>
>>  #include <linux/device.h>
>>  #include <linux/of_platform.h>
>> @@ -248,6 +249,7 @@ struct audio_port_data {
>>  	uint32_t num_periods;
>>  	uint32_t dsp_buf;
>>  	uint32_t mem_map_handle;
>> +	atomic_t hw_ptr;
>>  };
> 
> Thanks,
> Alexey



  reply	other threads:[~2025-10-23  9:30 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-15 13:17 [PATCH 0/9] ASoC: qcom: q6dsp: fixes and updates Srinivas Kandagatla
2025-10-15 13:17 ` [PATCH 1/9] ASoC: qcom: q6apm-dai: set flags to reflect correct operation of appl_ptr Srinivas Kandagatla
2025-10-15 13:17 ` [PATCH 2/9] ASoC: qcom: q6adm: the the copp device only during last instance Srinivas Kandagatla
2025-10-20 15:12   ` Alexey Klimov
2025-10-15 13:17 ` [PATCH 3/9] ASoC: qcom: qdsp6: q6asm-dai: set 10 ms period and buffer alignment Srinivas Kandagatla
2025-10-15 13:17 ` [PATCH 4/9] ASoC: qcom: q6asm-dai: perform correct state check before closing Srinivas Kandagatla
2025-10-15 13:17 ` [PATCH 5/9] ASoC: qcom: q6asm: handle the responses after closing Srinivas Kandagatla
2025-10-20 14:35   ` Alexey Klimov
2025-10-20 14:37     ` Srinivas Kandagatla
2025-10-20 14:39       ` Konrad Dybcio
2025-10-20 14:42         ` Srinivas Kandagatla
2025-10-21  9:12           ` Konrad Dybcio
2025-10-21  9:21             ` Srinivas Kandagatla
2025-10-21  9:26               ` Konrad Dybcio
2025-10-15 13:17 ` [PATCH 6/9] ASoC: qcom: q6asm-dai: schedule all available frames to avoid dsp under-runs Srinivas Kandagatla
2025-10-20 16:06   ` Alexey Klimov
2025-10-23  9:25     ` Srinivas Kandagatla
2025-10-15 13:17 ` [PATCH 7/9] ASoC: qcom: q6asm: add q6asm_get_hw_pointer Srinivas Kandagatla
2025-10-20 15:04   ` Alexey Klimov
2025-10-23  9:30     ` Srinivas Kandagatla [this message]
2025-10-15 13:17 ` [PATCH 8/9] ASoC: qcom: q6asm-dai: use q6asm_get_hw_pointer Srinivas Kandagatla
2025-10-15 13:17 ` [PATCH 9/9] ASoC: qcom: q6asm: set runtime correctly for each stream Srinivas Kandagatla
2025-10-18  4:55 ` [PATCH 0/9] ASoC: qcom: q6dsp: fixes and updates Alexey Klimov
2025-10-20 16:15 ` Alexey Klimov

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=a38edaa8-d793-4e3c-ba9a-b8717c8e7569@oss.qualcomm.com \
    --to=srinivas.kandagatla@oss.qualcomm.com \
    --cc=alexey.klimov@linaro.org \
    --cc=broonie@kernel.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-sound@vger.kernel.org \
    --cc=m.facchin@arduino.cc \
    --cc=perex@perex.cz \
    --cc=srini@kernel.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