ASoC: Intel: common: Add entries for sdw codecs in ADL match table
authorVamshi Krishna Gopal <vamshi.krishna.gopal@intel.com>
Fri, 21 May 2021 15:56:31 +0000 (18:56 +0300)
committerMark Brown <broonie@kernel.org>
Fri, 21 May 2021 17:40:44 +0000 (18:40 +0100)
RT5682 and Max98373 are added with SDW0,SDW2 links respectively.

Signed-off-by: Vamshi Krishna Gopal <vamshi.krishna.gopal@intel.com>
Reviewed-by: Bard Liao <bard.liao@intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Link: https://lore.kernel.org/r/20210521155632.3736393-1-kai.vehmanen@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/intel/common/soc-acpi-intel-adl-match.c

index 39ac6d5..22c465f 100644 (file)
@@ -223,6 +223,30 @@ static const struct snd_soc_acpi_link_adr adl_sdw_rt1316_link2_rt714_link0[] = {
        {}
 };
 
+static const struct snd_soc_acpi_adr_device mx8373_2_adr[] = {
+       {
+               .adr = 0x000223019F837300ull,
+               .num_endpoints = 1,
+               .endpoints = &spk_l_endpoint,
+               .name_prefix = "Left"
+       },
+       {
+               .adr = 0x000227019F837300ull,
+               .num_endpoints = 1,
+               .endpoints = &spk_r_endpoint,
+               .name_prefix = "Right"
+       }
+};
+
+static const struct snd_soc_acpi_adr_device rt5682_0_adr[] = {
+       {
+               .adr = 0x000021025D568200ull,
+               .num_endpoints = 1,
+               .endpoints = &single_endpoint,
+               .name_prefix = "rt5682"
+       }
+};
+
 static const struct snd_soc_acpi_link_adr adl_rvp[] = {
        {
                .mask = BIT(0),
@@ -232,6 +256,20 @@ static const struct snd_soc_acpi_link_adr adl_rvp[] = {
        {}
 };
 
+static const struct snd_soc_acpi_link_adr adl_chromebook_base[] = {
+       {
+               .mask = BIT(0),
+               .num_adr = ARRAY_SIZE(rt5682_0_adr),
+               .adr_d = rt5682_0_adr,
+       },
+       {
+               .mask = BIT(2),
+               .num_adr = ARRAY_SIZE(mx8373_2_adr),
+               .adr_d = mx8373_2_adr,
+       },
+       {}
+};
+
 static const struct snd_soc_acpi_codecs adl_max98373_amp = {
        .num_codecs = 1,
        .codecs = {"MX98373"}
@@ -295,6 +333,13 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_adl_sdw_machines[] = {
                .drv_name = "sof_sdw",
                .sof_tplg_filename = "sof-adl-rt711.tplg",
        },
+       {
+               .link_mask = 0x5, /* rt5682 on link0 & 2xmax98373 on link 2 */
+               .links = adl_chromebook_base,
+               .drv_name = "sof_sdw",
+               .sof_fw_filename = "sof-adl.ri",
+               .sof_tplg_filename = "sof-adl-sdw-max98373-rt5682.tplg",
+       },
        {},
 };
 EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_adl_sdw_machines);