On 11/21/18 4:32 AM, Takashi Iwai wrote:
On Tue, 20 Nov 2018 22:36:38 +0100, Pierre-Louis Bossart wrote:
This patchset is provided as an RFC and should not be merged as is (Turkey break in the USA and more validation needed). This is however a good time to gather comments. This work is the result of multiple email discussions to finally provide more flexibility for distributions to chose whether to stick with the legacy HDaudio driver or to enable the SST/Skylake driver for newer platforms (required e.g. for digital microphone support)
The patches add support for CoffeeLake, simplify the probe for the Skylake driver, introduce more compile-time granularity so that platforms can be selected individually and last provide a dynamic fallback mechanism when two drivers are registered for the same PCI ID.
When the SOF driver is released, the same mechanism will be used to enable the SOF-legacy fallback. There will be no plans to enable an SOF->SST falback.
This looks like a sensible way to go, thanks for working on this!
While the fallback stuff might need more testing, the other patches (addition of CFL-S and split of configs) are rather systematic, so we can merge this at first soonish.
And we may need a bit more comments in Kconfig help for the fallback behavior. Or document it properly and refer to it from Kconfig help. The git commit log isn't present in the released kernel code, after all.
I will indeed put the dynamic fallback on the back-burner, of course the tests work on NUCs and recent devices but fail on a HP SKL device I tried on, so additional code needs to be added to check if the DSP is present or not, remove silly dependencies on NHLT that make no sense for HDaudio, etc.
I'd like however to follow your idea of a 'shared' caps but use it for static mutual-exclusion to start, e.g. to let distributions use legacy for Broadwell but SST for SKL/KBL without requiring the user to play with blacklists. Once we have this in place, and the additional code added for DSP detection the dynamic fallback is an 'easy' transition.
thanks,
Takashi
Pierre-Louis Bossart (4): ASoC: Intel: Skylake: stop init/probe if DSP is not present ASoC: Intel: Skylake: remove useless tests on DSP presence ASoC: Intel: Skylake: Add more platform granularity ALSA: hda: add fallback capabilities for SKL+ platforms
Takashi Iwai (2): ASoC: Intel: Skylake: Add CFL-S support ALSA: hda: Allow fallback binding with legacy HD-audio for Intel SKL+
include/sound/hdaudio.h | 6 + sound/pci/hda/Kconfig | 40 +++++++ sound/pci/hda/hda_controller.h | 2 +- sound/pci/hda/hda_intel.c | 51 ++++++-- sound/soc/intel/Kconfig | 86 ++++++++++++-- sound/soc/intel/boards/Kconfig | 16 ++- sound/soc/intel/skylake/skl-messages.c | 8 ++ sound/soc/intel/skylake/skl.c | 154 +++++++++++++++++++------ 8 files changed, 311 insertions(+), 52 deletions(-)
-- 2.17.1