NAK: [SRU][EOAN][PATCH v2 1/1] alsa/sof: Enable SOF_HDA link and codec

Kleber Souza kleber.souza at canonical.com
Wed Oct 23 10:09:04 UTC 2019


On 10/23/19 8:34 AM, Khaled Elmously wrote:
> On 2019-10-22 09:38:02 , Seth Forshee wrote:
>> On Mon, Oct 21, 2019 at 04:06:15PM -0500, 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>
>>
>> Oh, also these options should be updated in the annotations file and
>> enforced. My ack is contigent on this, whether it's done by sending a v2
>> or by whoever applies the patch.
>>
> 
> Hui, Seth, please see the updated patch that I've come up with. I will assume your +1s unless you tell me otherwise.
> 
> Patch inlined here:
> 

This seems to include at least some of the changes suggested by Seth
for unstable, and per understanding they should not be applied to Eoan
at least for now. So I'm NAK'ing this patch and will ACK Hui Wang's version.

Kleber


> ---
>  debian.master/config/annotations          | 22 ++++++++++++++++------
>  debian.master/config/config.common.ubuntu | 19 +++++++++++--------
>  2 files changed, 27 insertions(+), 14 deletions(-)
> 
> diff --git a/debian.master/config/annotations b/debian.master/config/annotations
> index 2874f5a68d29..7eb1cfe9f1ff 100644
> --- a/debian.master/config/annotations
> +++ b/debian.master/config/annotations
> @@ -7912,11 +7912,18 @@ CONFIG_SND_SOC_INTEL_SKL                        policy<{'amd64': 'm', 'i386': 'm
>  CONFIG_SND_SOC_INTEL_APL                        policy<{'amd64': 'm', 'i386': 'm'}>
>  CONFIG_SND_SOC_INTEL_KBL                        policy<{'amd64': 'm', 'i386': 'm'}>
>  CONFIG_SND_SOC_INTEL_GLK                        policy<{'amd64': 'm', 'i386': 'm'}>
> -CONFIG_SND_SOC_INTEL_CNL                        policy<{'amd64': 'm', 'i386': 'm'}>
> -CONFIG_SND_SOC_INTEL_CFL                        policy<{'amd64': 'm', 'i386': 'm'}>
> -CONFIG_SND_SOC_INTEL_CML_H                      policy<{'amd64': 'm', 'i386': 'm'}>
> -CONFIG_SND_SOC_INTEL_CML_LP                     policy<{'amd64': 'm', 'i386': 'm'}>
> -CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC      policy<{'amd64': 'y', 'i386': 'y'}>
> +CONFIG_SND_SOC_INTEL_CNL                        note<LP:#1848490>
> +CONFIG_SND_SOC_INTEL_CNL                        policy<{'amd64': 'n', 'i386': 'n'}>
> +CONFIG_SND_SOC_INTEL_CFL                        policy<{'amd64': 'n', 'i386': 'n'}>
> +CONFIG_SND_SOC_INTEL_CML_H                      mark<ENFORCED> note<LP:#1848490>
> +CONFIG_SND_SOC_INTEL_CML_H                      policy<{'amd64': 'n', 'i386': 'n'}>
> +CONFIG_SND_SOC_INTEL_CML_LP                     mark<ENFORCED> note<LP:#1848490>
> +CONFIG_SND_SOC_INTEL_CML_LP                     policy<{'amd64': 'n', 'i386': 'n'}>
> +CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC      mark<ENFORCED> note<LP:#1848490>
> +CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC      policy<{'amd64': 'n', 'i386': 'n'}>
> +CONFIG_SND_SOC_SOF_HDA_LINK                     mark<ENFORCED> note<LP:#1848490>
> +CONFIG_SND_SOC_SOF_HDA_LINK                     policy<{'amd64': 'y', 'i386': 'y'}>
> +CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC              policy<{'amd64': 'y', 'i386': 'y'}>
>  
>  # Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> Intel ASoC SST drivers >> Intel Machine drivers
>  CONFIG_SND_SOC_INTEL_MACH                       policy<{'amd64': 'y', 'i386': 'y'}>
> @@ -8012,7 +8019,10 @@ CONFIG_SND_SOC_RCAR                             policy<{'arm64': 'm', 'armhf': '
>  CONFIG_SND_SOC_SOF_TOPLEVEL                     policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'i386': 'y', 'ppc64el': 'y'}>
>  CONFIG_SND_SOC_SOF_PCI                          policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'i386': 'm', 'ppc64el': 'm'}>
>  CONFIG_SND_SOC_SOF_ACPI                         policy<{'amd64': 'm', 'arm64': 'm', 'i386': 'm'}>
> -CONFIG_SND_SOC_SOF_NOCODEC_SUPPORT              policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'i386': 'y', 'ppc64el': 'y'}>
> +CONFIG_SND_SOC_SOF_NOCODEC                      note<LP:#1848490>
> +CONFIG_SND_SOC_SOF_NOCODEC                      policy<{'amd64': 'n', 'i386': 'n'}>
> +CONFIG_SND_SOC_SOF_NOCODEC_SUPPORT              note<LP:#1848490>
> +CONFIG_SND_SOC_SOF_NOCODEC_SUPPORT              policy<{'amd64': 'n', 'arm64': 'y', 'armhf': 'y', 'i386': 'n', 'ppc64el': 'y'}>
>  CONFIG_SND_SOC_SOF_STRICT_ABI_CHECKS            policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'i386': 'n', 'ppc64el': 'n'}>
>  
>  # Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> Sound Open Firmware Support >> SOF debugging features
> diff --git a/debian.master/config/config.common.ubuntu b/debian.master/config/config.common.ubuntu
> index fff3516eeb40..1db9435b96fa 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
> 
>> -- 
>> kernel-team mailing list
>> kernel-team at lists.ubuntu.com
>> https://lists.ubuntu.com/mailman/listinfo/kernel-team
> 




More information about the kernel-team mailing list