ACK: ACK/cmt: [SRU][EOAN/unstable][PATCH 0/1] alsa/sof: Enable SOF_HDA link and codec

Kleber Souza kleber.souza at canonical.com
Wed Oct 23 10:12:57 UTC 2019


On 10/22/19 3:28 AM, Hui Wang wrote:
> 
> On 2019/10/22 上午9:13, Hui Wang wrote:
>>
>> On 2019/10/22 上午5:06, Seth Forshee wrote:
>>> On Thu, Oct 17, 2019 at 08:28:49PM +0800, Hui Wang wrote:
>>>> BugLink: https://bugs.launchpad.net/bugs/1848490
>>>>
>>>> So far, only OEM-B-OSP1, EOAN and later kernels have the alsa/sof 
>>>> driver,
>>>> and the OEM-B-OSP1 kernel already enabled these CONFIGs.
>>>>
>>>> [Impact]
>>>> We tested the EOAN kernel on the LENOVO or Dell machines which have
>>>> dmic directly connnected to PCH, the dmic didn't work.
>>>>
>>>> [Fix]
>>>> We need to enable SOF_HDA link and codec, then the sof driver
>>>> and Legacy HDA driver work together to make the dmic work.
>>>>
>>>> [Test Case]
>>>> Install the latest 19.10 image, build a new kernel with this
>>>> patch and replace the existing kernel, After installing the blacklist
>>>> package (blacklist snd_hda_intel and snd_soc_skl) and ucm package,
>>>> the dmic and all output devices (speaker/hdmi) work.
>>>>
>>>> [Regression Risk]
>>>> Low, these configs are already enabled in the oem-b-osp1 kernel
>>>> for a long time, and we tested it on many lenovo/dell machines witch
>>>> have or have no dmic, all worked well.
>>> I got an email separately regarding these config problems, this is a
>>> needed change.
>>>
>>> Acked-by: Seth Forshee <seth.forshee at canonical.com>
>>>
>>> The recommended configs we received from Intel's had additional changes,
>>> see the full diff below. It seems that with the SOF driver makes some
>>> options are now considered deprecated. I'll probably apply this change
>>> to unstable. Perhaps for eoan it's better to stick with the more
>>> conservative changes you sent -- what do you think?
>>
>> Agree with you, let us put Intel's config to unstable only.
>>
>> I don't know if sof driver can 100% replace the soc/intel/skl driver,  
>> it is better to keep those configs related to SND_SOC_INTEL_SKYLAKE in 
>> the EOAN first. If we meet the bugs or Intel confirms we could disable 
>> the SOC_INTEL_SKYLAKE formally, then we disable them.
>>
> For the EOAN kernel, besides the patch I sent, please also apply part of 
> Intel's change, because Intel told us that "In addition you may want to 
> only enable the Skylake driver for Skylake/KBL/APL/GLK, and not use it 
> for CML or with the HDaudio codec support ", I think that description is 
> correct, since the sof driver could 100% replace the skl driver for 
> CFL/CML and with HDaudio codec support:
> 
> -CONFIG_SND_SOC_INTEL_CFL=m
> +# CONFIG_SND_SOC_INTEL_CFL is not set
>   CONFIG_SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH=m
>   CONFIG_SND_SOC_INTEL_CHT_BSW_NAU8824_MACH=m
>   CONFIG_SND_SOC_INTEL_CHT_BSW_RT5645_MACH=m
>   CONFIG_SND_SOC_INTEL_CHT_BSW_RT5672_MACH=m
> -CONFIG_SND_SOC_INTEL_CML_H=m
> -CONFIG_SND_SOC_INTEL_CML_LP=m
> -CONFIG_SND_SOC_INTEL_CNL=m
> +# CONFIG_SND_SOC_INTEL_CML_H is not set
> +# CONFIG_SND_SOC_INTEL_CML_LP is not set
> +# CONFIG_SND_SOC_INTEL_CNL is not set
> 
>   CONFIG_SND_SOC_INTEL_SKYLAKE_FAMILY=m
> -CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC=y
> +# CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC is not set
>   CONFIG_SND_SOC_INTEL_SKYLAKE_SSP_CLK=m
>   CONFIG_SND_SOC_INTEL_SOF_RT5682_MACH=m

Acked-by: Kleber Sacilotto de Souza <kleber.souza at canonical.com>

> 
>> Thanks,
>>
>> Hui.
>>
>>
>>>
>>> Thanks,
>>> Seth
>>>
>>>
>>> diff --git a/debian.master/config/config.common.ubuntu 
>>> b/debian.master/config/config.common.ubuntu
>>> index 555862498d8f..988767d260bc 100644
>>> --- a/debian.master/config/config.common.ubuntu
>>> +++ b/debian.master/config/config.common.ubuntu
>>> @@ -9081,14 +9081,14 @@ CONFIG_SND_SOC_INTEL_BYT_CHT_CX2072X_MACH=m
>>>   CONFIG_SND_SOC_INTEL_BYT_CHT_DA7213_MACH=m
>>>   CONFIG_SND_SOC_INTEL_BYT_CHT_ES8316_MACH=m
>>>   # CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH is not set
>>> -CONFIG_SND_SOC_INTEL_CFL=m
>>> +# CONFIG_SND_SOC_INTEL_CFL is not set
>>>   CONFIG_SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH=m
>>>   CONFIG_SND_SOC_INTEL_CHT_BSW_NAU8824_MACH=m
>>>   CONFIG_SND_SOC_INTEL_CHT_BSW_RT5645_MACH=m
>>>   CONFIG_SND_SOC_INTEL_CHT_BSW_RT5672_MACH=m
>>> -CONFIG_SND_SOC_INTEL_CML_H=m
>>> -CONFIG_SND_SOC_INTEL_CML_LP=m
>>> -CONFIG_SND_SOC_INTEL_CNL=m
>>> +# CONFIG_SND_SOC_INTEL_CML_H is not set
>>> +# CONFIG_SND_SOC_INTEL_CML_LP is not set
>>> +# CONFIG_SND_SOC_INTEL_CNL is not set
>>>   CONFIG_SND_SOC_INTEL_GLK=m
>>>   CONFIG_SND_SOC_INTEL_GLK_RT5682_MAX98357A_MACH=m
>>>   CONFIG_SND_SOC_INTEL_HASWELL=m
>>> @@ -9105,10 +9105,10 @@ CONFIG_SND_SOC_INTEL_SKL_HDA_DSP_GENERIC_MACH=m
>>>   CONFIG_SND_SOC_INTEL_SKL_NAU88L25_MAX98357A_MACH=m
>>>   CONFIG_SND_SOC_INTEL_SKL_NAU88L25_SSM4567_MACH=m
>>>   CONFIG_SND_SOC_INTEL_SKL_RT286_MACH=m
>>> -CONFIG_SND_SOC_INTEL_SKYLAKE=m
>>> +# CONFIG_SND_SOC_INTEL_SKYLAKE is not set
>>>   CONFIG_SND_SOC_INTEL_SKYLAKE_COMMON=m
>>>   CONFIG_SND_SOC_INTEL_SKYLAKE_FAMILY=m
>>> -CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC=y
>>> +# CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC is not set
>>>   CONFIG_SND_SOC_INTEL_SKYLAKE_SSP_CLK=m
>>>   CONFIG_SND_SOC_INTEL_SOF_RT5682_MACH=m
>>>   CONFIG_SND_SOC_INTEL_SST=m
>>> @@ -9248,7 +9248,10 @@ CONFIG_SND_SOC_SOF_COMETLAKE_LP_SUPPORT=y
>>>   # CONFIG_SND_SOC_SOF_DEBUG is not set
>>>   CONFIG_SND_SOC_SOF_GEMINILAKE=m
>>>   CONFIG_SND_SOC_SOF_GEMINILAKE_SUPPORT=y
>>> +CONFIG_SND_SOC_SOF_HDA=m
>>> +CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC=y
>>>   CONFIG_SND_SOC_SOF_HDA_COMMON=m
>>> +CONFIG_SND_SOC_SOF_HDA_LINK=y
>>>   CONFIG_SND_SOC_SOF_HDA_LINK_BASELINE=m
>>>   CONFIG_SND_SOC_SOF_ICELAKE=m
>>>   CONFIG_SND_SOC_SOF_ICELAKE_SUPPORT=y
>>> @@ -9260,10 +9263,10 @@ CONFIG_SND_SOC_SOF_INTEL_PCI=m
>>>   CONFIG_SND_SOC_SOF_INTEL_TOPLEVEL=y
>>>   CONFIG_SND_SOC_SOF_MERRIFIELD=m
>>>   CONFIG_SND_SOC_SOF_MERRIFIELD_SUPPORT=y
>>> -CONFIG_SND_SOC_SOF_NOCODEC=m
>>> -CONFIG_SND_SOC_SOF_NOCODEC_SUPPORT=y
>>> +# CONFIG_SND_SOC_SOF_NOCODEC_SUPPORT is not set
>>>   CONFIG_SND_SOC_SOF_OPTIONS=m
>>>   CONFIG_SND_SOC_SOF_PCI=m
>>> +CONFIG_SND_SOC_SOF_PROBE_WORK_QUEUE=y
>>>   # CONFIG_SND_SOC_SOF_STRICT_ABI_CHECKS is not set
>>>   CONFIG_SND_SOC_SOF_TOPLEVEL=y
>>>   CONFIG_SND_SOC_SOF_XTENSA=m
>>>
> 




More information about the kernel-team mailing list