Hi Mark These are v3 patch-set to use helper function on ASoC. struct snd_soc_dai need to have info for playback/capture, but it is using "playback/capture_xxx" or "tx/tx_xxx" or array. This kind of random definition is very difficult to read. This patch-set add helper functions and each driver use it. And cleanup the definition. v2 -> v3 - fixup mediatek compile error - fixup rt compile error v1 -> v2 - added Reviewed-by on each patches if it got - fixup soc-dai.c helper bug Link: https://lore.kernel.org/r/87y1psu1m1.wl-kuninori.morimoto.gx@xxxxxxxxxxx Link: https://lore.kernel.org/r/87a62dlmmn.wl-kuninori.morimoto.gx@xxxxxxxxxxx Kuninori Morimoto (25): ASoC: soc-dai.h: add missing snd_soc_dai_set_widget() ASoC: soc-dai.h: add snd_soc_dai_dma_data_set/get() for low level ASoC: soc-dai.h: add snd_soc_dai_tdm_mask_set/get() helper ASoC: soc-dai.h: add snd_soc_dai_get/set_widget_playback/capture() helper ASoC: soc.h: add snd_soc_card_is_instantiated() helper ASoC: hdmi-codec: use helper function ASoC: hda: use helper function ASoC: max: use helper function ASoC: rt: use helper function ASoC: cirrus: use helper function ASoC: spear: use helper function ASoC: sdw-mockup: use helper function ASoC: intel: use helper function ASoC: mediatek: use helper function ASoC: meson: use helper function ASoC: rockchip: use helper function ASoC: sof: use helper function ASoC: tegra: use helper function ASoC: ti: use helper function ASoC: soc-core.c: use helper function ASoC: soc-dapm.c: use helper function ASoC: soc-dai.c: use helper function ASoC: soc-pcm.c: use helper function ASoC: soc-topology.c: use helper function ASoC: soc-dai.h: cleanup Playback/Capture data for snd_soc_dai include/sound/soc-dai.h | 90 ++++++++------- include/sound/soc.h | 6 + sound/soc/cirrus/ep93xx-ac97.c | 4 +- sound/soc/cirrus/ep93xx-i2s.c | 4 +- sound/soc/codecs/hda.c | 7 +- sound/soc/codecs/hdmi-codec.c | 11 +- sound/soc/codecs/max98373-sdw.c | 5 +- sound/soc/codecs/rt1308-sdw.c | 5 +- sound/soc/codecs/rt1316-sdw.c | 5 +- sound/soc/codecs/rt1318-sdw.c | 5 +- sound/soc/codecs/rt5645.c | 2 +- sound/soc/codecs/rt5665.c | 4 +- sound/soc/codecs/rt5668.c | 4 +- sound/soc/codecs/rt5682-sdw.c | 5 +- sound/soc/codecs/rt5682.c | 4 +- sound/soc/codecs/rt5682s.c | 4 +- sound/soc/codecs/rt700.c | 7 +- sound/soc/codecs/rt711-sdca.c | 7 +- sound/soc/codecs/rt711.c | 7 +- sound/soc/codecs/rt715-sdca.c | 5 +- sound/soc/codecs/rt715.c | 5 +- sound/soc/codecs/sdw-mockup.c | 5 +- sound/soc/intel/atom/sst-atom-controls.c | 9 +- sound/soc/intel/avs/boards/nau8825.c | 5 +- sound/soc/intel/avs/pcm.c | 15 +-- sound/soc/intel/skylake/skl-topology.c | 19 +--- .../soc/mediatek/common/mtk-dsp-sof-common.c | 18 ++- sound/soc/mediatek/mt6797/mt6797-dai-pcm.c | 8 +- sound/soc/mediatek/mt8183/mt8183-dai-pcm.c | 7 +- sound/soc/mediatek/mt8186/mt8186-dai-pcm.c | 7 +- sound/soc/mediatek/mt8188/mt8188-dai-pcm.c | 3 +- sound/soc/mediatek/mt8192/mt8192-dai-pcm.c | 8 +- sound/soc/mediatek/mt8195/mt8195-dai-pcm.c | 7 +- sound/soc/meson/aiu-fifo-i2s.c | 4 +- sound/soc/meson/aiu-fifo-spdif.c | 2 +- sound/soc/meson/aiu-fifo.c | 21 ++-- sound/soc/meson/axg-tdm-interface.c | 34 +++--- sound/soc/meson/axg-tdmin.c | 2 +- sound/soc/meson/axg-tdmout.c | 2 +- sound/soc/meson/meson-codec-glue.c | 8 +- sound/soc/rockchip/rockchip_i2s_tdm.c | 4 +- sound/soc/rockchip/rockchip_pdm.c | 2 +- sound/soc/rockchip/rockchip_spdif.c | 2 +- sound/soc/soc-core.c | 8 +- sound/soc/soc-dai.c | 13 ++- sound/soc/soc-dapm.c | 26 ++--- sound/soc/soc-pcm.c | 12 +- sound/soc/soc-topology.c | 4 +- sound/soc/sof/topology.c | 104 +++++++----------- sound/soc/spear/spdif_out.c | 3 +- sound/soc/tegra/tegra20_ac97.c | 4 +- sound/soc/tegra/tegra20_i2s.c | 4 +- sound/soc/tegra/tegra20_spdif.c | 3 +- sound/soc/tegra/tegra210_admaif.c | 4 +- sound/soc/tegra/tegra30_i2s.c | 4 +- sound/soc/ti/davinci-i2s.c | 5 +- sound/soc/ti/davinci-mcasp.c | 5 +- sound/soc/ti/davinci-vcif.c | 5 +- 58 files changed, 276 insertions(+), 316 deletions(-) -- 2.25.1