Hi Cezary,
Thank you for this series. You should have mentioned that this fixes an
issue that's been around since September 2018, and for which there's
currently no solution on KabyLake/AmberLake platforms -
PCI_DEVICE(0x8086, 0x9D71)
https://bugzilla.kernel.org/show_bug.cgi?id=201251
This patchset has been prepared internally for topmost linux-stable 5.5
and 4.20 (no 4.19 as skl_hda_dsp did not exist there yet).
Apart from our RVPs, we have run tests also on:
- KBL Lenovo Carbon X1
- SKL Dell XPS 9350
- WHL Acer Swift 5
Honestly, I'd see HDaudio related patches being backport as low as 4.20
(although some changes had to be adjusted due to base differences
between 4.20 and 5.5, can share these too). One could argue HDA + Dmic
configuration should be available on 4.19 too - it's an LTS after all.
However, that time, some changes could be counted as "feature" rather
than fixes. Awaiting your replies and thoughts on that.
In consequence, I've appended "Fixes" only for last two patches for now
- once decisions are made, can append adequate tags wherever necessary.
There's been a couple of accidental regressions already on stable, now
fixed, and my understanding is that the bar for inclusion is higher, so
let's assume this counts as a new feature: it never worked before with
an upstream kernel and distributions haven't had access to topology
files either. If a specific distribution wants to backport on top of a
-stable version, that's entirely possible but that would be their
decision. They would not only need to update the kernel but topology and
UCM as well.
One comment though: in the absence of blacklist/voodoo magic, this
solution will not be selected with GLK+/WHL, the default with dmics is
SOF. Even on KBL, the legacy driver would be selected, we only select
the SST driver for SKL and KBL Chromebooks.
You would have to modify the dsp-config stuff [1] to load the skl driver
on KBL, which likely requires a FLAG_SST_ONLY_IF_DMIC definition, and
probably add a Kconfig since SOF will at some point support KBL, and we
want to prevent conflicts between PCI drivers registered for the same
ID. The order in that table might be enough though, it's much better
than the selection based on a Makefile inclusion.
Patches 6/7 don't seem to be related to DMICs, so we should probably
discuss them separately.
Thanks
-Pierre
[1]
https://elixir.bootlin.com/linux/latest/source/sound/hda/intel-dsp-config.c#L118