summary refs log tree commit diff
path: root/sound/soc/sof/amd/vangogh.c
diff options
context:
space:
mode:
Diffstat (limited to 'sound/soc/sof/amd/vangogh.c')
-rw-r--r--sound/soc/sof/amd/vangogh.c19
1 files changed, 17 insertions, 2 deletions
diff --git a/sound/soc/sof/amd/vangogh.c b/sound/soc/sof/amd/vangogh.c
index 8c5dd990df6c..de15d21aa6d9 100644
--- a/sound/soc/sof/amd/vangogh.c
+++ b/sound/soc/sof/amd/vangogh.c
@@ -3,7 +3,7 @@
 // This file is provided under a dual BSD/GPLv2 license. When using or
 // redistributing this file, you may do so under either license.
 //
-// Copyright(c) 2022 Advanced Micro Devices, Inc.
+// Copyright(c) 2023 Advanced Micro Devices, Inc.
 //
 // Authors: Venkata Prasad Potturu <venkataprasad.potturu@amd.com>
 
@@ -123,6 +123,16 @@ static struct snd_soc_dai_driver vangogh_sof_dai[] = {
 			.rate_min = 8000,
 			.rate_max = 96000,
 		},
+		.capture = {
+			.rates = SNDRV_PCM_RATE_8000_48000,
+			.formats = SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S8 |
+				   SNDRV_PCM_FMTBIT_U8 | SNDRV_PCM_FMTBIT_S32_LE,
+			/* Supporting only stereo for I2S HS-Virtual controller capture */
+			.channels_min = 2,
+			.channels_max = 2,
+			.rate_min = 8000,
+			.rate_max = 48000,
+		},
 	},
 };
 
@@ -132,12 +142,17 @@ EXPORT_SYMBOL_NS(sof_vangogh_ops, SND_SOC_SOF_AMD_COMMON);
 
 int sof_vangogh_ops_init(struct snd_sof_dev *sdev)
 {
+	const struct dmi_system_id *dmi_id;
+
 	/* common defaults */
 	memcpy(&sof_vangogh_ops, &sof_acp_common_ops, sizeof(struct snd_sof_dsp_ops));
 
 	sof_vangogh_ops.drv = vangogh_sof_dai;
 	sof_vangogh_ops.num_drv = ARRAY_SIZE(vangogh_sof_dai);
-	sof_vangogh_ops.load_firmware = acp_sof_load_firmware;
+
+	dmi_id = dmi_first_match(acp_sof_quirk_table);
+	if (dmi_id && dmi_id->driver_data)
+		sof_vangogh_ops.load_firmware = acp_sof_load_signed_firmware;
 
 	return 0;
 }