mirror of https://github.com/torvalds/linux.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 <balamurugan.c@intel.com> Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com> Link: https://patch.msgid.link/20251111103512.244147-1-yung-chuan.liao@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
772ada5028
commit
b3a5302484
|
|
@ -35,6 +35,10 @@
|
||||||
static unsigned long sof_rt5682_quirk = SOF_RT5682_MCLK_EN |
|
static unsigned long sof_rt5682_quirk = SOF_RT5682_MCLK_EN |
|
||||||
SOF_SSP_PORT_CODEC(0);
|
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)
|
static int sof_rt5682_quirk_cb(const struct dmi_system_id *id)
|
||||||
{
|
{
|
||||||
sof_rt5682_quirk = (unsigned long)id->driver_data;
|
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);
|
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);
|
dev_dbg(&pdev->dev, "sof_rt5682_quirk = %lx\n", sof_rt5682_quirk);
|
||||||
|
|
||||||
/* initialize ctx with board quirk */
|
/* initialize ctx with board quirk */
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue