Hi,
Changes since v2: - Use div64_u64_rem() to make the code compile and work on non 64bit architectures
Changes since v1: - The delay calculation updated to take into account the counter wrapping on both ends (host and link side).
The following series adds support for the PCM delay reporting in SOF core level and implements the needed infrastructure with IPC4 to finally enable it for MTL.
Currently this is only supported on MTL (and via IPC4), but with the infrastructure in place it will be possible to support other platforms with DeepBuffer.
Regards, Peter --- Rander Wang (9): ASoC: SOF: add ipc4_fw_reg header file ASoC: SOF: add fw_info_box support ASoC: SOF: add time info structure for ipc4 path ASoC: SOF: ipc4-pcm: allocate time info for pcm delay feature ASoC: SOF: ipc4-pcm: add hw_params ASoC: SOF: add delay function support in sof framework ASoC: SOF: add get_stream_position ops for pcm delay ASoC: SOF: Intel: mtl: add get_stream_position support ASoC: SOF: ipc4-pcm: add delay function support
sound/soc/sof/intel/mtl.c | 14 +++ sound/soc/sof/intel/mtl.h | 6 + sound/soc/sof/ipc4-fw-reg.h | 155 ++++++++++++++++++++++++ sound/soc/sof/ipc4-pcm.c | 232 ++++++++++++++++++++++++++++++++++++ sound/soc/sof/ipc4-priv.h | 15 +++ sound/soc/sof/ipc4.c | 3 + sound/soc/sof/ops.h | 10 ++ sound/soc/sof/pcm.c | 13 ++ sound/soc/sof/sof-audio.h | 6 + sound/soc/sof/sof-priv.h | 10 ++ 10 files changed, 464 insertions(+) create mode 100644 sound/soc/sof/ipc4-fw-reg.h