Skip to content

audio: pcm_converter: make global tables available to user-space#10722

Open
kv2019i wants to merge 1 commit intothesofproject:mainfrom
kv2019i:202604-pcm-table-export-to-userspace
Open

audio: pcm_converter: make global tables available to user-space#10722
kv2019i wants to merge 1 commit intothesofproject:mainfrom
kv2019i:202604-pcm-table-export-to-userspace

Conversation

@kv2019i
Copy link
Copy Markdown
Collaborator

@kv2019i kv2019i commented Apr 23, 2026

The pcm_converter depends on a set of global function tables to set up correct conversion functions. These objects need to be made available to user-space threads, so that pcm_converter can be also run in user-space. No impact to kernel-space use of pcm_converter.

The pcm_converter depends on a set of global function tables to set up
correct conversion functions. These objects need to be made available to
user-space threads, so that pcm_converter can be also run in user-space.
No impact to kernel-space use of pcm_converter.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
@kv2019i
Copy link
Copy Markdown
Collaborator Author

kv2019i commented Apr 23, 2026

Tested as part of bigger #10558

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the PCM converter implementation so its global conversion/remapping function tables are placed into a userspace-accessible memory section, enabling pcm_converter to run from userspace threads without changing kernel-space behavior.

Changes:

  • Annotate PCM converter function tables and their counts with APP_TASK_DATA so they are available from Zephyr userspace memory domains.
  • Add #include <rtos/userspace_helper.h> to the affected PCM converter source files to provide APP_TASK_DATA.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
src/audio/pcm_converter/pcm_remap.c Places pcm_remap_func_map / pcm_remap_func_count into userspace-accessible memory via APP_TASK_DATA.
src/audio/pcm_converter/pcm_converter_hifi3.c Places HiFi3 pcm_func_map / pcm_func_count and pcm_func_vc_map / pcm_func_vc_count into userspace-accessible memory via APP_TASK_DATA.
src/audio/pcm_converter/pcm_converter_generic.c Places generic pcm_func_map / pcm_func_count and pcm_func_vc_map / pcm_func_vc_count into userspace-accessible memory via APP_TASK_DATA.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants