Repository navigation
app: enable full LL userspace for more Intel tergets (w/ os_linux_overlay.conf) - #11376
Conversation
There was a problem hiding this comment.
🟡 Changes recommended
The board condition skips split PTL, WCL, and NVL targets, preventing the Linux overlay from automatically enabling LL userspace; it needs a BOARD_QUALIFIERS fallback and ACE-generation checks for both representations.
1 open issue
What changed in this PR
Extends automatic LL audio userspace enablement from PTL to Intel ACE3.x and newer targets when using os_linux_overlay.conf, broadening platform coverage.
Changes:
- Broadens board matching and selects the shared LL userspace overlay.
- Adds explicit userspace and dynamic-thread dependencies to that overlay.
- Updates overlay comments to reflect the expanded platform scope.
| File | Description |
|---|---|
| app/ll_userspace_overlay.conf | Adds userspace dependencies and clarifies supported targets. |
| app/CMakeLists.txt | Expands automatic overlay selection to ACE3.x and newer Intel targets. |
Review effort: Balanced
| if(DEFINED EXTRA_CONF_FILE AND (BOARD MATCHES "/ptl" OR BOARD_QUALIFIERS MATCHES "/ptl")) | ||
| # Intel ACE3.x and newer (e.g. ptl, wcl, nvl): if "os_linux_overlay" | ||
| # used, also add "ll_userspace_overlay" | ||
| if(DEFINED EXTRA_CONF_FILE AND BOARD MATCHES "^intel_adsp/ace[3-9][0-9]/") |
There was a problem hiding this comment.
At least in CI this works just fine. I added BOARD_QUALIFIERS handling to V2 anyways,
PR 11376: test resultsRun date: 2026-10-30 11:40 UTC Tested commit: 7633d8b6dfe62e2d6958cf6fda1fa8fc4ab69529 |
| # Enable user-space LL support in SOF | ||
| # ----------------------------------- | ||
|
|
||
| # dependencies |
There was a problem hiding this comment.
What about CONFIG_SOF_STACK_SIZE?
It was set in the PTL board config along with USERSPACE=y and also in userspace_overlay.conf, but with os_linux_overlay.conf only ll_userspace_overlay.conf gets included, which means the default stack size for the newer platforms.
Please double check
| # | ||
| # NOTE: this overlay is automatically included if PTL is built | ||
| # with generic "os_linux_overlay.conf" | ||
| # NOTE: this overlay is automatically included if an Intel ACE3.x |
There was a problem hiding this comment.
Please also update src/include/sof/userspace/README.md which points to old file
Move the LL user-space overlay from app/overlays/ptl/ to app/, next to the other target-agnostic overlays like os_linux_overlay.conf, and update the automatic inclusion in app/CMakeLists.txt and the reference in the userspace README. To make the overlay usable on targets that do not enable user-space in their board configuration (unlike ptl), add the Zephyr CONFIG_USERSPACE and CONFIG_DYNAMIC_THREAD* dependencies to the overlay itself, together with CONFIG_SOF_STACK_SIZE=8192, which the ptl board file sets alongside them. CONFIG_SOF_STACK_SIZE is the default DP thread stack size, and the DP threads run in user space once CONFIG_USERSPACE is enabled. These are already set in the ptl board file, so there is no functional change for ptl. Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Extend the automatic inclusion of ll_userspace_overlay.conf for Linux
builds (os_linux_overlay.conf in EXTRA_CONF_FILE) from ptl to all
Intel ACE3.x and newer targets, e.g. ptl, wcl, nvl and nvl-s.
Match on the board name ("intel_adsp/aceXY/...") instead of listing
targets individually, so future ACE versions get the same default.
The board target can be passed either in full in BOARD or split
into BOARD and BOARD_QUALIFIERS, so match on the concatenation of
the two to handle both forms.
Update the userspace README accordingly.
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
97db01e to
7633d8b
Compare
|
V2 pushed:
|

This has been enabled for PTL for a while and CI testing is passing, so enable to larger set of platforms to extend coverage.