Skip to content

Commit 56a6772

Browse files
bardliaobroonie
authored andcommitted
ASoC: SOF: Intel: don't check number of sdw links when set dmic_fixup
Currently, we assume that the PCH DMIC pins are pin-muxed with SoundWire links. However, we do see a HW design that use PCH DMIC along with 3 SoundWire links. Remove the check now. With this change the PCM DMIC will be presented if it is reported by the BIOS irrespective of whether there are SDW links present or not. Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com> Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com> Link: https://patch.msgid.link/20250225093716.67240-2-yung-chuan.liao@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
1 parent 5b0c02f commit 56a6772

File tree

1 file changed

+2
-16
lines changed

1 file changed

+2
-16
lines changed

sound/soc/sof/intel/hda.c

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1312,22 +1312,8 @@ struct snd_soc_acpi_mach *hda_machine_select(struct snd_sof_dev *sdev)
13121312
/* report to machine driver if any DMICs are found */
13131313
mach->mach_params.dmic_num = check_dmic_num(sdev);
13141314

1315-
if (sdw_mach_found) {
1316-
/*
1317-
* DMICs use up to 4 pins and are typically pin-muxed with SoundWire
1318-
* link 2 and 3, or link 1 and 2, thus we only try to enable dmics
1319-
* if all conditions are true:
1320-
* a) 2 or fewer links are used by SoundWire
1321-
* b) the NHLT table reports the presence of microphones
1322-
*/
1323-
if (hweight_long(mach->link_mask) <= 2)
1324-
dmic_fixup = true;
1325-
else
1326-
mach->mach_params.dmic_num = 0;
1327-
} else {
1328-
if (mach->tplg_quirk_mask & SND_SOC_ACPI_TPLG_INTEL_DMIC_NUMBER)
1329-
dmic_fixup = true;
1330-
}
1315+
if (sdw_mach_found || mach->tplg_quirk_mask & SND_SOC_ACPI_TPLG_INTEL_DMIC_NUMBER)
1316+
dmic_fixup = true;
13311317

13321318
if (tplg_fixup &&
13331319
dmic_fixup &&

0 commit comments

Comments
 (0)