diff options
author | Chao Song <chao.song@linux.intel.com> | 2023-11-27 15:34:44 +0200 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2023-11-27 14:27:20 +0000 |
commit | def127feaa8a9d8684ac41139638b079e6e637e2 (patch) | |
tree | 4b8feef1d953db2ee3e6ead6c7262b61f68be28c /sound/soc/intel/boards/sof_sdw_rt_sdca_jack_common.c | |
parent | ASoC: Intel: sof_sdw: remove unused function declaration (diff) | |
download | linux-def127feaa8a9d8684ac41139638b079e6e637e2.tar.gz linux-def127feaa8a9d8684ac41139638b079e6e637e2.tar.bz2 linux-def127feaa8a9d8684ac41139638b079e6e637e2.zip |
ASoC: Intel: sof_sdw: Add rt722 support
RT722 is a multi-function codec which supports headset,
amp, and dmic functions. Each function provides a DAI
which can be used in different dailinks.
The RT711 supports up to 3 SoundWire lanes, but that
should not have any impact in the machine driver:
the lanes are allocated and controlled by the manager
and bandwidth allocation algorithm.
Signed-off-by: Chao Song <chao.song@linux.intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20231127133448.18449-4-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/intel/boards/sof_sdw_rt_sdca_jack_common.c')
-rw-r--r-- | sound/soc/intel/boards/sof_sdw_rt_sdca_jack_common.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/sound/soc/intel/boards/sof_sdw_rt_sdca_jack_common.c b/sound/soc/intel/boards/sof_sdw_rt_sdca_jack_common.c index 65bbcee88d6d..e430be7681d2 100644 --- a/sound/soc/intel/boards/sof_sdw_rt_sdca_jack_common.c +++ b/sound/soc/intel/boards/sof_sdw_rt_sdca_jack_common.c @@ -63,6 +63,11 @@ static const struct snd_soc_dapm_route rt713_sdca_map[] = { { "rt713 MIC2", NULL, "Headset Mic" }, }; +static const struct snd_soc_dapm_route rt722_sdca_map[] = { + { "Headphone", NULL, "rt722 HP" }, + { "rt722 MIC2", NULL, "Headset Mic" }, +}; + static const struct snd_kcontrol_new rt_sdca_jack_controls[] = { SOC_DAPM_PIN_SWITCH("Headphone"), SOC_DAPM_PIN_SWITCH("Headset Mic"), @@ -117,6 +122,9 @@ static int rt_sdca_jack_rtd_init(struct snd_soc_pcm_runtime *rtd) } else if (strstr(component->name_prefix, "rt713")) { ret = snd_soc_dapm_add_routes(&card->dapm, rt713_sdca_map, ARRAY_SIZE(rt713_sdca_map)); + } else if (strstr(component->name_prefix, "rt722")) { + ret = snd_soc_dapm_add_routes(&card->dapm, rt722_sdca_map, + ARRAY_SIZE(rt722_sdca_map)); } else { dev_err(card->dev, "%s is not supported\n", component->name_prefix); return -EINVAL; |