ASoC: SOF: Intel: start splitting top-level from common parts
authorPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Fri, 3 May 2024 13:52:17 +0000 (08:52 -0500)
committerMark Brown <broonie@kernel.org>
Sun, 5 May 2024 14:45:45 +0000 (23:45 +0900)
commit456644cbeab14394fff1308ffdaf87d4e0e6fb01
tree8b8e5374e399e5f255a6e01324451e7955ab39b6
parente4c6eba86d9618d99ba9892bc5d6e47715038530
ASoC: SOF: Intel: start splitting top-level from common parts

The existing code relies on the 'HDA_COMMON' module and namespace. We
need to start splitting top-level parts from the low-level ones,
otherwise we will not be able to reuse the low-level parts DMA support
for SoundWire/BPT.

In the end the dependencies will be:

         +----------------------------------------------+
         |                                              |
         |                                              v
sof-pci-intel-xxx --> sof-intel-hda ------------> sof-hda-common
                          |                             ^
                          |                             |
                          +-> soundwire_intel --> sof_hda_sdw_bpt

This patch adds the initial split between the sof-pci-intel-xxx
modules and the common parts, in a follow-up patch we will further
split the HDA_COMMON parts

Since the PCI modules are not all independent, i.e. the CNL parts are
also used in JSL and TGL, additional Kconfig and namespace modules
were added.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Link: https://lore.kernel.org/r/20240503135221.229202-4-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
19 files changed:
sound/soc/sof/intel/Kconfig
sound/soc/sof/intel/Makefile
sound/soc/sof/intel/apl.c
sound/soc/sof/intel/cnl.c
sound/soc/sof/intel/hda-common-ops.c
sound/soc/sof/intel/hda-ctrl.c
sound/soc/sof/intel/hda-dai.c
sound/soc/sof/intel/hda-dsp.c
sound/soc/sof/intel/hda-ipc.c
sound/soc/sof/intel/hda-loader.c
sound/soc/sof/intel/hda.c
sound/soc/sof/intel/icl.c
sound/soc/sof/intel/lnl.c
sound/soc/sof/intel/mtl.c
sound/soc/sof/intel/pci-icl.c
sound/soc/sof/intel/pci-lnl.c
sound/soc/sof/intel/pci-tgl.c
sound/soc/sof/intel/telemetry.c
sound/soc/sof/intel/tgl.c