ASoC: Intel: sof_nau8825: add mtl_nau8825_def for mtl boards
authorBrent Lu <brent.lu@intel.com>
Wed, 27 Mar 2024 16:24:00 +0000 (11:24 -0500)
committerMark Brown <broonie@kernel.org>
Thu, 28 Mar 2024 13:58:18 +0000 (13:58 +0000)
Add the board config mtl_nau8825_def to nau8825 machine driver for all
mtl boards using default SSP port allocation (headphone codec on SSP2,
speaker amplifiers on SSP0, and BT offload on SSP1).

Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Brent Lu <brent.lu@intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://msgid.link/r/20240327162408.63953-11-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/intel/boards/sof_nau8825.c
sound/soc/intel/common/soc-acpi-intel-mtl-match.c

index 23fe8b4015cce42a175a7652da07c80cfdd931d9..fe5f9e8dd6520efe80ed97c53702fe8723e0b1e3 100644 (file)
@@ -319,6 +319,13 @@ static const struct platform_device_id board_ids[] = {
                                        SOF_SSP_PORT_BT_OFFLOAD(2) |
                                        SOF_BT_OFFLOAD_PRESENT),
        },
+       {
+               .name = "mtl_nau8825_def",
+               .driver_data = (kernel_ulong_t)(SOF_SSP_PORT_CODEC(2) |
+                                       SOF_SSP_PORT_AMP(0) |
+                                       SOF_SSP_PORT_BT_OFFLOAD(1) |
+                                       SOF_BT_OFFLOAD_PRESENT),
+       },
        { }
 };
 MODULE_DEVICE_TABLE(platform, board_ids);
index 27d1313e66865fb774c82b4fab8f8927471823d0..0125e81af9e12babe1d4946c4f14a110624e3ff2 100644 (file)
@@ -8,6 +8,7 @@
 
 #include <sound/soc-acpi.h>
 #include <sound/soc-acpi-intel-match.h>
+#include <sound/soc-acpi-intel-ssp-common.h>
 #include "soc-acpi-intel-sdw-mockup-match.h"
 
 static const struct snd_soc_acpi_codecs mtl_max98357a_amp = {
@@ -89,6 +90,16 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_mtl_machines[] = {
                .quirk_data = &mtl_rt5650_amp,
                .sof_tplg_filename = "sof-mtl-rt5650.tplg",
        },
+       /* place boards for each headphone codec: sof driver will complete the
+        * tplg name and machine driver will detect the amp type
+        */
+       {
+               .id = NAU8825_ACPI_HID,
+               .drv_name = "mtl_nau8825_def",
+               .sof_tplg_filename = "sof-mtl", /* the tplg suffix is added at run time */
+               .tplg_quirk_mask = SND_SOC_ACPI_TPLG_INTEL_AMP_NAME |
+                                       SND_SOC_ACPI_TPLG_INTEL_CODEC_NAME,
+       },
        /* place amp-only boards in the end of table */
        {
                .id = "INTC10B0",