From: Takashi Iwai <tiwai@suse.de>
To: Shengjiu Wang <shengjiu.wang@nxp.com>
Cc: vkoul@kernel.org, perex@perex.cz, tiwai@suse.com,
alsa-devel@alsa-project.org, linux-sound@vger.kernel.org,
linux-kernel@vger.kernel.org, shengjiu.wang@gmail.com,
Xiubo.Lee@gmail.com, festevam@gmail.com, nicoleotsuka@gmail.com,
lgirdwood@gmail.com, broonie@kernel.org,
linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH v4 0/7] ASoC: fsl: add memory to memory function for ASRC
Date: Mon, 14 Oct 2024 12:07:05 +0200 [thread overview]
Message-ID: <87cyk3j8vq.wl-tiwai@suse.de> (raw)
In-Reply-To: <1727247316-16156-1-git-send-email-shengjiu.wang@nxp.com>
On Wed, 25 Sep 2024 08:55:09 +0200,
Shengjiu Wang wrote:
>
> This function is base on the accelerator implementation
> for compress API:
> https://patchwork.kernel.org/project/alsa-devel/patch/20240731083843.59911-1-perex@perex.cz/
> Add it to this patch set.
>
> Audio signal processing also has the requirement for memory to
> memory similar as Video.
>
> This asrc memory to memory (memory ->asrc->memory) case is a non
> real time use case.
>
> User fills the input buffer to the asrc module, after conversion, then asrc
> sends back the output buffer to user. So it is not a traditional ALSA playback
> and capture case.
>
> Because we had implemented the "memory -> asrc ->i2s device-> codec"
> use case in ALSA. Now the "memory->asrc->memory" needs
> to reuse the code in asrc driver, so the patch 1 and patch 2 is for refining
> the code to make it can be shared by the "memory->asrc->memory"
> driver.
>
> Other change is to add memory to memory support for two kinds of i.MX ASRC
> modules.
>
> changes in v4:
> - remove the RFC tag, no comments receive in v3
> - Add Jaroslav Kysela's patch in this patch set. because it may be
> better for reviewing in a full patch set.
> - Fix the list_for_each_entry_reverse to list_for_each_entry_safe_reverse
> - Fix some coding style issues in Jaroslav Kysela's patch
>
> changes in v3:
> - use Jaroslav's suggestion for header file compress_params.h (PATCH 01)
> - remove the ASRC_OUTPUT_FORMAT/ASRC_OUTPUT_RATE definition
> - remove ASRC_RATIO_MOD in this version because it uses .set_metadata()
> Will wait Jaroslav's update or other better method in the future.
> - Address some comments from Pierre.
>
> changes in v2:
> - Remove the changes in compress API
> - drop the SNDRV_COMPRESS_SRC_RATIO_MOD
> - drop the SND_AUDIOCODEC_SRC and struct snd_dec_src
> - define private metadata key value
> ASRC_OUTPUT_FORMAT/ASRC_OUTPUT_RATE/ASRC_RATIO_MOD
>
> Jaroslav Kysela (1):
> ALSA: compress_offload: introduce accel operation mode
>
> Shengjiu Wang (6):
> ALSA: compress: Add output rate and output format support
> ASoC: fsl_asrc: define functions for memory to memory usage
> ASoC: fsl_easrc: define functions for memory to memory usage
> ASoC: fsl_asrc_m2m: Add memory to memory function
> ASoC: fsl_asrc: register m2m platform device
> ASoC: fsl_easrc: register m2m platform device
>
> .../sound/designs/compress-accel.rst | 136 ++++
> include/sound/compress_driver.h | 46 ++
> include/uapi/sound/compress_offload.h | 63 +-
> include/uapi/sound/compress_params.h | 23 +-
> sound/core/Kconfig | 3 +
> sound/core/compress_offload.c | 351 ++++++++-
> sound/soc/fsl/Kconfig | 1 +
> sound/soc/fsl/Makefile | 2 +-
> sound/soc/fsl/fsl_asrc.c | 179 ++++-
> sound/soc/fsl/fsl_asrc.h | 2 +
> sound/soc/fsl/fsl_asrc_common.h | 70 ++
> sound/soc/fsl/fsl_asrc_m2m.c | 727 ++++++++++++++++++
> sound/soc/fsl/fsl_easrc.c | 261 ++++++-
> sound/soc/fsl/fsl_easrc.h | 4 +
> 14 files changed, 1851 insertions(+), 17 deletions(-)
> create mode 100644 Documentation/sound/designs/compress-accel.rst
> create mode 100644 sound/soc/fsl/fsl_asrc_m2m.c
Are there any objections against this basic design and ABI?
The details of the implementations can be changed in future, but the
basic design and the ABI must be set in stone before merging.
thanks,
Takashi
next prev parent reply other threads:[~2024-10-14 10:06 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-25 6:55 [PATCH v4 0/7] ASoC: fsl: add memory to memory function for ASRC Shengjiu Wang
2024-09-25 6:55 ` [PATCH v4 1/7] ALSA: compress_offload: introduce accel operation mode Shengjiu Wang
2024-09-25 6:55 ` [PATCH v4 2/7] ALSA: compress: Add output rate and output format support Shengjiu Wang
2024-09-25 6:55 ` [PATCH v4 3/7] ASoC: fsl_asrc: define functions for memory to memory usage Shengjiu Wang
2024-09-25 6:55 ` [PATCH v4 4/7] ASoC: fsl_easrc: " Shengjiu Wang
2024-09-25 6:55 ` [PATCH v4 5/7] ASoC: fsl_asrc_m2m: Add memory to memory function Shengjiu Wang
2024-09-25 6:55 ` [PATCH v4 6/7] ASoC: fsl_asrc: register m2m platform device Shengjiu Wang
2024-09-25 6:55 ` [PATCH v4 7/7] ASoC: fsl_easrc: " Shengjiu Wang
2024-10-14 10:07 ` Takashi Iwai [this message]
2024-10-23 5:32 ` [PATCH v4 0/7] ASoC: fsl: add memory to memory function for ASRC Vinod Koul
2024-10-24 5:17 ` Shengjiu Wang
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=87cyk3j8vq.wl-tiwai@suse.de \
--to=tiwai@suse.de \
--cc=Xiubo.Lee@gmail.com \
--cc=alsa-devel@alsa-project.org \
--cc=broonie@kernel.org \
--cc=festevam@gmail.com \
--cc=lgirdwood@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sound@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=nicoleotsuka@gmail.com \
--cc=perex@perex.cz \
--cc=shengjiu.wang@gmail.com \
--cc=shengjiu.wang@nxp.com \
--cc=tiwai@suse.com \
--cc=vkoul@kernel.org \
/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).