On Sat, 15 Dec 2018 21:07:21 +0100, Pierre-Louis Bossart wrote:
Use detection logic based on the PCI class/subclass/prog-if in the HDaudio legacy probe, and add a module parameter to bypass or force the automatic detection should it ever fail (or in case of missing firmware or topology files)
This patchset was tested on
- an SKL HP device with the DSP disabled
- a WHL Acer Swift3 laptop
- APL NUC6
- KBL NUC7
5 reboot tests were done for each device with the DSP presence detected reliably. The "pci_binding" parameter was also tested on the WHL device.
The dynamic selection adds about 5ms worst case.
[ 2.813741] snd_hda_intel 0000:00:1f.3: The DSP is enabled on this platform, aborting probe [ 2.850588] snd_soc_skl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
The SOF driver will use exactly the same mechanism, and add a mutual exclusion with the Skylake/SST driver to avoid having 3 drivers for the same PCI ID. Two is complicated enough.
Changes since v1 (Feedback from Takashi) a) added explanations and renamed Kconfigs to SND_HDA_INTEL_DSP_DETECTION_XYZ b) less verbose dev_info c) fixed pci_binding parameter
Pierre-Louis Bossart (2): ALSA: HD-Audio: SKL+: abort probe if DSP is present and Skylake driver selected ALSA: HD-Audio: SKL+: force HDaudio legacy or SKL+ driver selection
For both, feel free to take my ack: Reviewed-by: Takashi Iwai tiwai@suse.de
thanks,
Takashi