From: Balamurugan C Date: Tue, 11 Nov 2025 10:35:12 +0000 (+0800) Subject: ASoC: Intel: sof_rt5682: Add quirk override support X-Git-Tag: v6.19-rc1~156^2~3^2~53 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b3a5302484033331af37569f7277d00131694b57;p=thirdparty%2Fkernel%2Flinux.git ASoC: Intel: sof_rt5682: Add quirk override support adding quirk override support to configure different quirk configuration at runtime. Signed-off-by: Balamurugan C Signed-off-by: Bard Liao Link: https://patch.msgid.link/20251111103512.244147-1-yung-chuan.liao@linux.intel.com Signed-off-by: Mark Brown --- diff --git a/sound/soc/intel/boards/sof_rt5682.c b/sound/soc/intel/boards/sof_rt5682.c index 4994aaccc583a..6ca114c30ae16 100644 --- a/sound/soc/intel/boards/sof_rt5682.c +++ b/sound/soc/intel/boards/sof_rt5682.c @@ -35,6 +35,10 @@ static unsigned long sof_rt5682_quirk = SOF_RT5682_MCLK_EN | SOF_SSP_PORT_CODEC(0); +static int quirk_override = -1; +module_param_named(quirk, quirk_override, int, 0444); +MODULE_PARM_DESC(quirk, "Board-specific quirk override"); + static int sof_rt5682_quirk_cb(const struct dmi_system_id *id) { sof_rt5682_quirk = (unsigned long)id->driver_data; @@ -643,6 +647,12 @@ static int sof_audio_probe(struct platform_device *pdev) dmi_check_system(sof_rt5682_quirk_table); + if (quirk_override != -1) { + dev_info(&pdev->dev, "Overriding quirk 0x%lx => 0x%x\n", + sof_rt5682_quirk, quirk_override); + sof_rt5682_quirk = quirk_override; + } + dev_dbg(&pdev->dev, "sof_rt5682_quirk = %lx\n", sof_rt5682_quirk); /* initialize ctx with board quirk */