ASoC: Intel: soc-acpi-cht: shrink tables using compatible IDs
authorPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Fri, 29 Oct 2021 17:14:08 +0000 (01:14 +0800)
committerMark Brown <broonie@kernel.org>
Fri, 29 Oct 2021 17:55:21 +0000 (18:55 +0100)
We have multiple entries for the same codecs, use the new compatible
IDs to have a single entry.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Brent Lu <brent.lu@intel.com>
Link: https://lore.kernel.org/r/20211029171409.611600-6-brent.lu@intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/intel/common/soc-acpi-intel-cht-match.c

index 2274242..c60a5e8 100644 (file)
@@ -51,18 +51,31 @@ static struct snd_soc_acpi_mach *cht_quirk(void *arg)
                return mach;
 }
 
+static const struct snd_soc_acpi_codecs rt5640_comp_ids = {
+       .num_codecs = 2,
+       .codecs = { "10EC5640", "10EC3276" },
+};
+
+static const struct snd_soc_acpi_codecs rt5670_comp_ids = {
+       .num_codecs = 2,
+       .codecs = { "10EC5670", "10EC5672" },
+};
+
+static const struct snd_soc_acpi_codecs rt5645_comp_ids = {
+       .num_codecs = 3,
+       .codecs = { "10EC5645", "10EC5650", "10EC3270" },
+};
+
+static const struct snd_soc_acpi_codecs da7213_comp_ids = {
+       .num_codecs = 2,
+       .codecs = { "DGLS7212", "DGLS7213"},
+
+};
+
 /* Cherryview-based platforms: CherryTrail and Braswell */
 struct snd_soc_acpi_mach  snd_soc_acpi_intel_cherrytrail_machines[] = {
        {
-               .id = "10EC5670",
-               .drv_name = "cht-bsw-rt5672",
-               .fw_filename = "intel/fw_sst_22a8.bin",
-               .board = "cht-bsw",
-               .sof_fw_filename = "sof-cht.ri",
-               .sof_tplg_filename = "sof-cht-rt5670.tplg",
-       },
-       {
-               .id = "10EC5672",
+               .comp_ids = &rt5670_comp_ids,
                .drv_name = "cht-bsw-rt5672",
                .fw_filename = "intel/fw_sst_22a8.bin",
                .board = "cht-bsw",
@@ -70,23 +83,7 @@ struct snd_soc_acpi_mach  snd_soc_acpi_intel_cherrytrail_machines[] = {
                .sof_tplg_filename = "sof-cht-rt5670.tplg",
        },
        {
-               .id = "10EC5645",
-               .drv_name = "cht-bsw-rt5645",
-               .fw_filename = "intel/fw_sst_22a8.bin",
-               .board = "cht-bsw",
-               .sof_fw_filename = "sof-cht.ri",
-               .sof_tplg_filename = "sof-cht-rt5645.tplg",
-       },
-       {
-               .id = "10EC5650",
-               .drv_name = "cht-bsw-rt5645",
-               .fw_filename = "intel/fw_sst_22a8.bin",
-               .board = "cht-bsw",
-               .sof_fw_filename = "sof-cht.ri",
-               .sof_tplg_filename = "sof-cht-rt5645.tplg",
-       },
-       {
-               .id = "10EC3270",
+               .comp_ids = &rt5645_comp_ids,
                .drv_name = "cht-bsw-rt5645",
                .fw_filename = "intel/fw_sst_22a8.bin",
                .board = "cht-bsw",
@@ -110,15 +107,7 @@ struct snd_soc_acpi_mach  snd_soc_acpi_intel_cherrytrail_machines[] = {
                .sof_tplg_filename = "sof-cht-nau8824.tplg",
        },
        {
-               .id = "DLGS7212",
-               .drv_name = "bytcht_da7213",
-               .fw_filename = "intel/fw_sst_22a8.bin",
-               .board = "bytcht_da7213",
-               .sof_fw_filename = "sof-cht.ri",
-               .sof_tplg_filename = "sof-cht-da7213.tplg",
-       },
-       {
-               .id = "DLGS7213",
+               .comp_ids = &da7213_comp_ids,
                .drv_name = "bytcht_da7213",
                .fw_filename = "intel/fw_sst_22a8.bin",
                .board = "bytcht_da7213",
@@ -135,7 +124,7 @@ struct snd_soc_acpi_mach  snd_soc_acpi_intel_cherrytrail_machines[] = {
        },
        /* some CHT-T platforms rely on RT5640, use Baytrail machine driver */
        {
-               .id = "10EC5640",
+               .comp_ids = &rt5640_comp_ids,
                .drv_name = "bytcr_rt5640",
                .fw_filename = "intel/fw_sst_22a8.bin",
                .board = "bytcr_rt5640",
@@ -144,14 +133,6 @@ struct snd_soc_acpi_mach  snd_soc_acpi_intel_cherrytrail_machines[] = {
                .sof_tplg_filename = "sof-cht-rt5640.tplg",
        },
        {
-               .id = "10EC3276",
-               .drv_name = "bytcr_rt5640",
-               .fw_filename = "intel/fw_sst_22a8.bin",
-               .board = "bytcr_rt5640",
-               .sof_fw_filename = "sof-cht.ri",
-               .sof_tplg_filename = "sof-cht-rt5640.tplg",
-       },
-       {
                .id = "10EC5682",
                .drv_name = "sof_rt5682",
                .sof_fw_filename = "sof-cht.ri",