mbox series

[0/1,SRU,linux-firmware,F/H/I] Fix no sound card detected problem on HDA+DMIC with skylake driver

Message ID 20210726155752.426211-1-chris.chiu@canonical.com
Headers show
Series Fix no sound card detected problem on HDA+DMIC with skylake driver | expand

Message

Chris Chiu July 26, 2021, 3:57 p.m. UTC
From: Chris Chiu <chris.chiu@canonical.com>

BugLink: https://bugs.launchpad.net/bugs/1915117

[Impact]
Skylake, Kabylake, Kabylake-refresh, Amberlake and some other platforms where audio is of SPT (PCH) type, HDA (with DSP capabilities) plus DMIC configuration is supported on these with skylake driver since kernel 5.8. However, no sound card can be detected w/o the topology binary file in /lib/firmware and corresponding ucm file.

[Fix]
The kernel config CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC needa to be enabled for the snd_soc_skl driver to support HDA+DMIC configuration. And the topology binary file and UCM files need to be located in the correct path based on Intel's suggestion. https://gist.github.com/crojewsk/4e6382bfb0dbfaaf60513174211f29cb.

[Test]
On the Skylake/Kabylake platforms with either the PCI device 8086:9d70 and 8086:9d71, boot up the machine and check the existence of the sound card by either 'aplay -l' or 'pactl list' command.

[Where problems could occur]
Should be low risk, it only affects limited Intel Platforms with particular PCI device IDs + HDA plus DMIC configuration.


Chris Chiu (1):
  linux-firmware: add audio topology for HDA+DMIC with Skylake driver

 WHENCE                       |  33 +++++++++++++++++++++++++++++++++
 skl_hda_dsp_generic-tplg.bin | Bin 0 -> 67152 bytes
 2 files changed, 33 insertions(+)
 create mode 100644 skl_hda_dsp_generic-tplg.bin

Comments

Timo Aaltonen July 28, 2021, 8:06 a.m. UTC | #1
On 26.7.2021 18.57, chris.chiu@canonical.com wrote:
> From: Chris Chiu <chris.chiu@canonical.com>
> 
> BugLink: https://bugs.launchpad.net/bugs/1915117
> 
> [Impact]
> Skylake, Kabylake, Kabylake-refresh, Amberlake and some other platforms where audio is of SPT (PCH) type, HDA (with DSP capabilities) plus DMIC configuration is supported on these with skylake driver since kernel 5.8. However, no sound card can be detected w/o the topology binary file in /lib/firmware and corresponding ucm file.
> 
> [Fix]
> The kernel config CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC needa to be enabled for the snd_soc_skl driver to support HDA+DMIC configuration. And the topology binary file and UCM files need to be located in the correct path based on Intel's suggestion. https://gist.github.com/crojewsk/4e6382bfb0dbfaaf60513174211f29cb.
> 
> [Test]
> On the Skylake/Kabylake platforms with either the PCI device 8086:9d70 and 8086:9d71, boot up the machine and check the existence of the sound card by either 'aplay -l' or 'pactl list' command.
> 
> [Where problems could occur]
> Should be low risk, it only affects limited Intel Platforms with particular PCI device IDs + HDA plus DMIC configuration.
> 
> 
> Chris Chiu (1):
>    linux-firmware: add audio topology for HDA+DMIC with Skylake driver
> 
>   WHENCE                       |  33 +++++++++++++++++++++++++++++++++
>   skl_hda_dsp_generic-tplg.bin | Bin 0 -> 67152 bytes
>   2 files changed, 33 insertions(+)
>   create mode 100644 skl_hda_dsp_generic-tplg.bin
> 

marked as SAUCE, and applied to all series
Timo Aaltonen July 28, 2021, 8:25 a.m. UTC | #2
On 28.7.2021 11.06, Timo Aaltonen wrote:
> On 26.7.2021 18.57, chris.chiu@canonical.com wrote:
>> From: Chris Chiu <chris.chiu@canonical.com>
>>
>> BugLink: https://bugs.launchpad.net/bugs/1915117
>>
>> [Impact]
>> Skylake, Kabylake, Kabylake-refresh, Amberlake and some other 
>> platforms where audio is of SPT (PCH) type, HDA (with DSP 
>> capabilities) plus DMIC configuration is supported on these with 
>> skylake driver since kernel 5.8. However, no sound card can be 
>> detected w/o the topology binary file in /lib/firmware and 
>> corresponding ucm file.
>>
>> [Fix]
>> The kernel config CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC needa to 
>> be enabled for the snd_soc_skl driver to support HDA+DMIC 
>> configuration. And the topology binary file and UCM files need to be 
>> located in the correct path based on Intel's suggestion. 
>> https://gist.github.com/crojewsk/4e6382bfb0dbfaaf60513174211f29cb.
>>
>> [Test]
>> On the Skylake/Kabylake platforms with either the PCI device 8086:9d70 
>> and 8086:9d71, boot up the machine and check the existence of the 
>> sound card by either 'aplay -l' or 'pactl list' command.
>>
>> [Where problems could occur]
>> Should be low risk, it only affects limited Intel Platforms with 
>> particular PCI device IDs + HDA plus DMIC configuration.
>>
>>
>> Chris Chiu (1):
>>    linux-firmware: add audio topology for HDA+DMIC with Skylake driver
>>
>>   WHENCE                       |  33 +++++++++++++++++++++++++++++++++
>>   skl_hda_dsp_generic-tplg.bin | Bin 0 -> 67152 bytes
>>   2 files changed, 33 insertions(+)
>>   create mode 100644 skl_hda_dsp_generic-tplg.bin
>>
> 
> marked as SAUCE, and applied to all series

Actually now that I think of it, I'm not sure linux-firmware is the 
right place.. alsa-topology-conf package ships the files, but looks like 
starting with 1.2.5 they provide a Makefile to build the firmware. We'd 
have file conflicts when new a-t-c ships them.. so I'd think that's the 
correct place to put them right from the start.

and with that, I've reverted this from the l-f branches.
Chris Chiu Aug. 4, 2021, 5:27 a.m. UTC | #3
On Wed, Jul 28, 2021 at 4:25 PM Timo Aaltonen <tjaalton@ubuntu.com> wrote:
>
> On 28.7.2021 11.06, Timo Aaltonen wrote:
> > On 26.7.2021 18.57, chris.chiu@canonical.com wrote:
> >> From: Chris Chiu <chris.chiu@canonical.com>
> >>
> >> BugLink: https://bugs.launchpad.net/bugs/1915117
> >>
> >> [Impact]
> >> Skylake, Kabylake, Kabylake-refresh, Amberlake and some other
> >> platforms where audio is of SPT (PCH) type, HDA (with DSP
> >> capabilities) plus DMIC configuration is supported on these with
> >> skylake driver since kernel 5.8. However, no sound card can be
> >> detected w/o the topology binary file in /lib/firmware and
> >> corresponding ucm file.
> >>
> >> [Fix]
> >> The kernel config CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC needa to
> >> be enabled for the snd_soc_skl driver to support HDA+DMIC
> >> configuration. And the topology binary file and UCM files need to be
> >> located in the correct path based on Intel's suggestion.
> >> https://gist.github.com/crojewsk/4e6382bfb0dbfaaf60513174211f29cb.
> >>
> >> [Test]
> >> On the Skylake/Kabylake platforms with either the PCI device 8086:9d70
> >> and 8086:9d71, boot up the machine and check the existence of the
> >> sound card by either 'aplay -l' or 'pactl list' command.
> >>
> >> [Where problems could occur]
> >> Should be low risk, it only affects limited Intel Platforms with
> >> particular PCI device IDs + HDA plus DMIC configuration.
> >>
> >>
> >> Chris Chiu (1):
> >>    linux-firmware: add audio topology for HDA+DMIC with Skylake driver
> >>
> >>   WHENCE                       |  33 +++++++++++++++++++++++++++++++++
> >>   skl_hda_dsp_generic-tplg.bin | Bin 0 -> 67152 bytes
> >>   2 files changed, 33 insertions(+)
> >>   create mode 100644 skl_hda_dsp_generic-tplg.bin
> >>
> >
> > marked as SAUCE, and applied to all series
>
> Actually now that I think of it, I'm not sure linux-firmware is the
> right place.. alsa-topology-conf package ships the files, but looks like
> starting with 1.2.5 they provide a Makefile to build the firmware. We'd
> have file conflicts when new a-t-c ships them.. so I'd think that's the
> correct place to put them right from the start.
>
> and with that, I've reverted this from the l-f branches.
>
>
> --
> t

So we should wait for the response from
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=991591 and then
apply the difference to our a-t-c package, right?