Hi, This series introduces an abstraction of the HDA DAI handling. The motivation is to simplify and make the code more flexible regarding to IPC versions, new features (ChainDMA (IPC4) and DSPless mode) and to pave the way for new platforms. For the first look the series might feels a bit too intrusive but it introduces no functionality change (tested at each commit). Regards, Peter --- Ranjani Sridharan (14): ASoC: SOF: Intel: hda-dai: Remove BE DAI DRV ops for SSP DAI's ASoC: SOF: Intel: hda-dai: Remove hda_link_dma_params() ASoC: SOF: Intel: hda-dai: remove struct hda_pipe_params ASoC: SOF: Intel: hda-dai: Modify the signature of hda_link_dma_cleanup() ASoC: SOF: Intel: hda-dai: Pass the CPU dai pointer ASoC: SOF: Intel: hda-dai: Use the dai argument in ipc4_hda_dai_trigger ASoC: SOF: Intel: hda-dai: Introduce DAI widget ops ASoC: SOF: Intel: hda-dai: Define and set the HDA DAI widget DMA ops ASoC: SOF: Intel: hda-dai: Add setup_hext_stream/reset_hext_stream DMA ops ASoC: SOF: Intel: hda-dai: Use the topology IPC dai_config op ASoC: SOF: Intel: hda-dai: Define DAI widget DMA trigger ops for IPC4 ASoC: SOF: Intel: hda: Unify DAI drv ops for IPC3 and IPC4 ASoC: SOF: Intel: hda: Remove hda_ctrl_dai_widget_setup/free() ASoC: SOF: Intel: hda: remove redundant DAI config during hw_free sound/soc/sof/intel/Makefile | 2 +- sound/soc/sof/intel/hda-dai-ops.c | 343 +++++++++++++++ sound/soc/sof/intel/hda-dai.c | 688 ++++++++---------------------- sound/soc/sof/intel/hda.c | 88 +--- sound/soc/sof/intel/hda.h | 41 +- sound/soc/sof/sof-audio.h | 2 + 6 files changed, 554 insertions(+), 610 deletions(-) create mode 100644 sound/soc/sof/intel/hda-dai-ops.c -- 2.39.2