On 5/28/2024 3:35 AM, Pierre-Louis Bossart wrote:
From: Charles Keepaxckeepax@opensource.cirrus.com
Add quirks for some new Dell laptops using cs42l43's speaker outputs.
Please hold on. Dell just informed that they have not made final decision
to use Cirrus Logic codec for some of the SKUs.
Sorry for the inconvenience.
Reviewed-by: Bard Liaoyung-chuan.liao@linux.intel.com Signed-off-by: Charles Keepaxckeepax@opensource.cirrus.com Signed-off-by: Pierre-Louis Bossartpierre-louis.bossart@linux.intel.com
sound/soc/intel/boards/sof_sdw.c | 88 ++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+)
diff --git a/sound/soc/intel/boards/sof_sdw.c b/sound/soc/intel/boards/sof_sdw.c index b646b32dd311..5015d3ed6a9c 100644 --- a/sound/soc/intel/boards/sof_sdw.c +++ b/sound/soc/intel/boards/sof_sdw.c @@ -461,6 +461,30 @@ static const struct dmi_system_id sof_sdw_quirk_table[] = { .driver_data = (void *)(SOF_SDW_TGL_HDMI | RT711_JD2), },
- {
.callback = sof_sdw_quirk_cb,
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc"),
DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "0CF6")
},
.driver_data = (void *)(SOF_CODEC_SPKR),
- },
- {
.callback = sof_sdw_quirk_cb,
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc"),
DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "0CF9")
},
.driver_data = (void *)(SOF_CODEC_SPKR),
- },
- {
.callback = sof_sdw_quirk_cb,
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc"),
DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "0CFA")
},
.driver_data = (void *)(SOF_CODEC_SPKR),
- }, /* MeteorLake devices */ { .callback = sof_sdw_quirk_cb,
@@ -495,6 +519,46 @@ static const struct dmi_system_id sof_sdw_quirk_table[] = { }, .driver_data = (void *)(RT711_JD2), },
{
.callback = sof_sdw_quirk_cb,
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc"),
DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "0CE8")
},
.driver_data = (void *)(SOF_CODEC_SPKR),
},
{
.callback = sof_sdw_quirk_cb,
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc"),
DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "0CF3")
},
.driver_data = (void *)(SOF_CODEC_SPKR),
},
{
.callback = sof_sdw_quirk_cb,
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc"),
DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "0CF4")
},
.driver_data = (void *)(SOF_CODEC_SPKR),
},
{
.callback = sof_sdw_quirk_cb,
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc"),
DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "0CF5")
},
.driver_data = (void *)(SOF_CODEC_SPKR),
},
{
.callback = sof_sdw_quirk_cb,
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc"),
DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "0CF7")
},
.driver_data = (void *)(SOF_CODEC_SPKR),
},
/* LunarLake devices */ {
@@ -521,6 +585,30 @@ static const struct dmi_system_id sof_sdw_quirk_table[] = { }, .driver_data = (void *)(SOF_SIDECAR_AMPS), },
- {
.callback = sof_sdw_quirk_cb,
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc"),
DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "0CDC")
},
.driver_data = (void *)(SOF_CODEC_SPKR),
- },
- {
.callback = sof_sdw_quirk_cb,
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc"),
DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "0CDD")
},
.driver_data = (void *)(SOF_CODEC_SPKR),
- },
- {
.callback = sof_sdw_quirk_cb,
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc"),
DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "0CF8")
},
.driver_data = (void *)(SOF_CODEC_SPKR),
- }, {} };