linux-stable/sound/hda
Pierre-Louis Bossart a864e8f159 ALSA: hda: intel-nhlt: verify config type
Multiple bug reports report issues with the SOF and SST drivers when
dealing with single microphone cases.

We currently read the DMIC array information unconditionally but we
don't check that the configuration type is actually a mic array.

When the DMIC link does not rely on a mic array configuration, the
recommendation is to check the format information to infer the maximum
number of channels, and map this to the number of microphones.

This leaves a potential for a mismatch between actual microphones
available in hardware and what the ACPI table contains, but we have no
other source of information.

Note that single microphone configurations can alternatively be
handled with a 'mic array' configuration along with a 'vendor-defined'
geometry.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=201251
BugLink: https://github.com/thesofproject/linux/issues/2725
Fixes: 7a33ea70e1 ('ALSA: hda: intel-nhlt: handle NHLT VENDOR_DEFINED DMIC geometry')
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Link: https://lore.kernel.org/r/20210302000146.1177770-1-pierre-louis.bossart@linux.intel.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2021-03-02 10:22:47 +01:00
..
ext ALSA: hda: fix kernel-doc warnings 2021-03-02 10:21:36 +01:00
array.c treewide: Add SPDX license identifier for missed files 2019-05-21 10:50:45 +02:00
hda_bus_type.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
hdac_bus.c ALSA: hda: add link_power op to hdac_bus_ops 2021-02-08 15:56:35 +01:00
hdac_component.c ALSA: hda/i915 - fix list corruption with concurrent probes 2020-10-09 16:46:04 +02:00
hdac_controller.c ALSA: hda: add link_power op to hdac_bus_ops 2021-02-08 15:56:35 +01:00
hdac_device.c ALSA: hda: fix a runtime pm issue in SOF when integrated GPU is disabled 2020-09-02 19:26:39 +02:00
hdac_i915.c ALSA: hda/i915 - fix list corruption with concurrent probes 2020-10-09 16:46:04 +02:00
hdac_regmap.c ALSA: hda: fix kernel-doc warnings 2021-03-02 10:21:36 +01:00
hdac_stream.c ALSA: hda: Use DIV_ROUND_UP()/roundup() instead of open-coding it 2020-12-25 09:11:51 +01:00
hdac_sysfs.c ALSA: hda: Constify static attribute_group 2021-01-31 09:50:11 +01:00
hdmi_chmap.c ALSA: hda: Use scnprintf() for printing texts for sysfs/procfs 2020-02-18 10:15:41 +01:00
intel-dsp-config.c ALSA: hda: intel-dsp-config: add Alder Lake support 2021-02-17 21:17:09 +01:00
intel-nhlt.c ALSA: hda: intel-nhlt: verify config type 2021-03-02 10:22:47 +01:00
Kconfig ALSA: hda: intel-dsp-config: Add SND_INTEL_BYT_PREFER_SOF Kconfig option 2021-02-08 17:49:54 +01:00
local.h ALSA: hda: Unexport some local helper functions 2020-05-16 08:29:49 +02:00
Makefile ALSA: hda: add Intel DSP configuration / probe code 2019-10-23 06:31:37 +02:00
trace.c ALSA: hda - Re-add tracepoints to HD-audio core driver 2015-03-23 13:17:58 +01:00
trace.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00