ASoC: Intel: add multi-function SDW mockup codec match
SoundWire multi function codecs are common used in recent platforms. Add a multi function mockup codec to test without real codec. Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Liam Girdwood <liam.r.girdwood@intel.com> Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com> Link: https://patch.msgid.link/20250305135443.201884-6-yung-chuan.liao@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
@@ -31,6 +31,30 @@ static const struct snd_soc_acpi_endpoint sdw_mockup_r_endpoint = {
|
||||
.group_id = 1,
|
||||
};
|
||||
|
||||
static const struct snd_soc_acpi_endpoint jack_amp_g1_dmic_endpoints[] = {
|
||||
/* Jack Endpoint */
|
||||
{
|
||||
.num = 0,
|
||||
.aggregated = 0,
|
||||
.group_position = 0,
|
||||
.group_id = 0,
|
||||
},
|
||||
/* Amp Endpoint, work as spk_l_endpoint */
|
||||
{
|
||||
.num = 1,
|
||||
.aggregated = 1,
|
||||
.group_position = 0,
|
||||
.group_id = 1,
|
||||
},
|
||||
/* DMIC Endpoint */
|
||||
{
|
||||
.num = 2,
|
||||
.aggregated = 0,
|
||||
.group_position = 0,
|
||||
.group_id = 0,
|
||||
},
|
||||
};
|
||||
|
||||
static const struct snd_soc_acpi_adr_device sdw_mockup_headset_0_adr[] = {
|
||||
{
|
||||
.adr = 0x0000000105AA5500ull,
|
||||
@@ -103,6 +127,15 @@ static const struct snd_soc_acpi_adr_device sdw_mockup_amp_2_group1_adr[] = {
|
||||
}
|
||||
};
|
||||
|
||||
static const struct snd_soc_acpi_adr_device sdw_mockup_multi_function_adr[] = {
|
||||
{
|
||||
.adr = 0x0000000105AAAA01ull,
|
||||
.num_endpoints = ARRAY_SIZE(jack_amp_g1_dmic_endpoints),
|
||||
.endpoints = jack_amp_g1_dmic_endpoints,
|
||||
.name_prefix = "sdw_mockup_mmulti-function"
|
||||
}
|
||||
};
|
||||
|
||||
const struct snd_soc_acpi_link_adr sdw_mockup_headset_1amp_mic[] = {
|
||||
{
|
||||
.mask = BIT(0),
|
||||
@@ -164,3 +197,12 @@ const struct snd_soc_acpi_link_adr sdw_mockup_mic_headset_1amp[] = {
|
||||
},
|
||||
{}
|
||||
};
|
||||
|
||||
const struct snd_soc_acpi_link_adr sdw_mockup_multi_func[] = {
|
||||
{
|
||||
.mask = BIT(0),
|
||||
.num_adr = ARRAY_SIZE(sdw_mockup_multi_function_adr),
|
||||
.adr_d = sdw_mockup_multi_function_adr,
|
||||
},
|
||||
{}
|
||||
};
|
||||
|
||||
@@ -13,5 +13,6 @@
|
||||
extern const struct snd_soc_acpi_link_adr sdw_mockup_headset_1amp_mic[];
|
||||
extern const struct snd_soc_acpi_link_adr sdw_mockup_headset_2amps_mic[];
|
||||
extern const struct snd_soc_acpi_link_adr sdw_mockup_mic_headset_1amp[];
|
||||
extern const struct snd_soc_acpi_link_adr sdw_mockup_multi_func[];
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user