[PATCH 0/7] ASoC: Intel: Skylake: Fix HDaudio and Dmic
Cezary Rojewski
cezary.rojewski at intel.com
Thu Mar 5 15:53:07 CET 2020
Following is the list of fixes and updates targeting HDaudio +/- Dmic
configuration on Intel DSP platforms.
- ASoC: Intel: Skylake: Remove superfluous chip initialization
ASoC: Intel: Skylake: Select hda configuration permissively
First patch addresses race condition issue between i915 and hda
controller. This is done by yielding priority to i915 so iDisp codec can
enumerate properly: same codec_mask is now observed regardless of driver
chosen (snd_hda_intel vs snd_soc_skl).
Second patch is a consequence of the first, to prevent driver from
incorrectly aborting probe - rather than reorganizing Skylake's boot
flow, small changed has been proposed.
- ASoC: Intel: Skylake: Shield against no-NHLT configurations
Some hardware has no NHLT exposed by BIOS (or an equivalent). Changes
have been made to ensure driver is shielded against null-dereferences and
such which occur when said table is absent.
- ASoC: Intel: skl_hda_dsp: Enable Dmic configuration
While DMIC is available on some production stuff, Intel platforms with
Skylake driver do not treat it as a valid option if no additional I2S
codec in present onboard. Update skl_hda_dsp board to expose Dmic
connections too.
- ASoC: Intel: Allow for ROM init retry on CNL platforms
ASoC: Intel: Skylake: Await purge request ack on CNL
Both address rom init timeouts during CNL/ CFL/ CML/ WHL boot up
sequences. These provide retry mechanism and ensure purge request is
acked before proceding with FW load. bxt-sst.c has had these fixes
appended long ago - somehow someone forgotten about CNL family.
*****
Note: topology update is also needed to enable HDA +/- Dmic
configuration as existing ones do not contain any routes or widgets
required to enable it - these care about I2S only. We have prepared
corresponding UCM files too. Will be sharing them shortly.
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.
Cezary Rojewski (6):
ASoC: Intel: Skylake: Remove superfluous chip initialization
ASoC: Intel: Skylake: Select hda configuration permissively
ASoC: Intel: Skylake: Enable codec wakeup during chip init
ASoC: Intel: Skylake: Shield against no-NHLT configurations
ASoC: Intel: Allow for ROM init retry on CNL platforms
ASoC: Intel: Skylake: Await purge request ack on CNL
Mateusz Gorski (1):
ASoC: Intel: skl_hda_dsp: Enable Dmic configuration
sound/soc/intel/boards/skl_hda_dsp_generic.c | 3 ++
sound/soc/intel/skylake/bxt-sst.c | 3 --
sound/soc/intel/skylake/cnl-sst.c | 35 ++++++++++++++++----
sound/soc/intel/skylake/skl-nhlt.c | 3 +-
sound/soc/intel/skylake/skl-sst-dsp.h | 2 ++
sound/soc/intel/skylake/skl.c | 29 ++++++++--------
6 files changed, 48 insertions(+), 27 deletions(-)
--
2.17.1
More information about the Alsa-devel
mailing list