[DNM] basefw: Add handling of IPC4_DMA_CONTROL messages
This pull request introduces a handling of IPC4_DMA_CONTROL messages for the SSP DAI driver.
Below is a summary of the commits included in this pull request:
- bd77aa3e5d6abd080f950b9b8a5c571785afb3eb: Updates the Zephyr reference to the head of a pull request that contains necessary changes,
- 996bd1ee1fa1beb0fa6d287cd5237c0575ee8a90: Exposes the function to retrieve Zephyr DAI device structures, allowing other parts of the SOF codebase to access Zephyr native DAI drivers.
- d03015e86a8af0663fd58e82c07df898812d924c: Implements handling for the IPC4_DMA_CONTROL message within the base firmware for the SSP DAI driver.
TODO before merge:
- [ ] https://github.com/zephyrproject-rtos/zephyr/pull/73158
- [ ] Update zephyr version
I still don't know why exactly this is needed - "improving the flexibility" doesn't tell me much
The implementation of the IPC4_DMA_CONTROL message handling is a requirement for SOF to align with the IPC4 interface specifications, which are part of the convergence effort with Windows audio infrastructure. This specific IPC message allows for dynamic configuration of DMA gateways, which is essential for use-cases where audio streams need to be routed between various components in a flexible manner, adapting to changes in audio topologies at runtime.
For instance, this capability is crucial for scenarios where audio endpoints can be added or removed dynamically, or where stream parameters may change on-the-fly without restarting the system or audio pipeline. It enables SOF to handle complex audio routing scenarios that are common in modern Windows-based systems, ensuring compatibility and feature parity with the Windows audio stack.
@lyakh Please also take a look at the changes on the Zephyr side that are required for this PR.
@tmleman any update on ETA ? Do you have the Zephyr update now merged ?
@tmleman I guess we are blocked until after Zephyr merge Window ?
I guess we are blocked until after Zephyr merge Window ?
@lgirdwood Yes, this change is blocked until the release of Zephyr LTS.
I guess we are blocked until after Zephyr merge Window ?
@lgirdwood Yes, this change is blocked until the release of Zephyr LTS.
ok, tagged for v2.11 to remind everyone.
Rebase
Ready to go, but we need a clean pass of mandatory tests.
SOFCI TEST