the pinmux allows for SoundWire to be used on e.g. link0 and link1,
and the rest of the pins can be assigned for dmic usages.
We currently don't track this capability which means users don't see a
capture device, e.g. on HP Spectre x360.
The sof_sdw machine driver was modified to report the cfg-dmics
string, possible values are 0..4.
BugLink: https://github.com/thesofproject/linux/issues/2700
BugLink: https://github.com/alsa-project/alsa-ucm-conf/pull/75
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
--- /dev/null
+SectionDevice."Mic" {
+ Comment "Digital Microphone"
+
+ Value {
+ CapturePriority 100
+ CapturePCM "hw:${CardId},3"
+ If.chn {
+ Condition {
+ Type RegexMatch
+ Regex "[34]"
+ String "${var:Mics1}"
+ }
+ True {
+ CaptureChannels 4
+ }
+ }
+ CaptureMixerElem "Dmic0"
+ CaptureVolume "Dmic0 Capture Volume"
+ CaptureSwitch "Dmic0 Capture Switch"
+ }
+}
SpeakerAmps1 "0"
HeadsetCodec1 ""
MicCodec1 ""
+ Mics1 "0"
}
DefineRegex {
Regex " mic:([a-z0-9]+)"
String "${CardComponents}"
}
+ Mics {
+ Regex " cfg-mics:([1-9][0-9]*)"
+ String "${CardComponents}"
+ }
}
If.hs_init {