[alsa-devel] Surface 3 audio broken between 4.11 and 4.13 (rt5645)

Pierre-Louis Bossart pierre-louis.bossart at linux.intel.com
Sat Oct 14 01:49:29 CEST 2017



On 10/13/2017 01:40 PM, Bastien Nocera wrote:
> Hey,
>
> As I was trying to test PulseAudio HDMI LPE audio support fixes, I
> realised that the internal sound card of my Surface 3 wasn't working
> anymore, using the same user-space configuration.
>
> Looks like detection of the device regressed between 2 versions. Does
> this look familiar to anyone, or should I start bisecting? (which will
> take me absolutely ages, as the CPU is anemic on that machine)
Yes this looks familiar unfortunately. Surface has a BIOS quirk iirc, 
and there are reports of broken audio on other platforms that have a 
similar quirk, see
https://bugzilla.kernel.org/show_bug.cgi?id=96691 where the patch 
7827d66946ad3af734ed46d1d68c23fa6974595c is flagged as being the issue.

I tried providing a patch for what I think is the problem, but the 
reports from users were inconsistent and I don't have access to the 
hardware.

If you could try both the revert and the suggested fix (separately) it'd 
help a great deal

>
> Working:
> $ dmesg | grep rt5
> [   13.707825] rt5640 i2c-10EC5640:00: Device with ID register 0x6308 is not rt5640/39
> [   15.010548] cht-bsw-rt5645 cht-bsw-rt5645: snd-soc-dummy-dai <-> media-cpu-dai mapping ok
> [   15.011132] cht-bsw-rt5645 cht-bsw-rt5645: snd-soc-dummy-dai <-> deepbuffer-cpu-dai mapping ok
> [   15.012756] cht-bsw-rt5645 cht-bsw-rt5645: rt5645-aif1 <-> ssp2-port mapping ok
> [   15.100152] input: chtrt5645 Headset as /devices/pci0000:00/808622A8:00/cht-bsw-rt5645/sound/card0/input27
>
> $ uname -r
> 4.11.0-0.rc0.git4.21.surface3.fc26.x86_64
>
> Not working:
> $ journalctl -b -2 | grep rt5
> Oct 13 20:10:19 surface kernel: rt5640 i2c-10EC5640:00: Device with ID register 0x6308 is not rt5640/39
> Oct 13 20:10:21 surface kernel: bytcr_rt5640 bytcr_rt5640: quirk DMIC1_MAP enabled
> Oct 13 20:10:21 surface kernel: bytcr_rt5640 bytcr_rt5640: quirk DMIC enabled
> Oct 13 20:10:21 surface kernel: bytcr_rt5640 bytcr_rt5640: quirk MCLK_EN enabled
> Oct 13 20:10:21 surface kernel: bytcr_rt5640 bytcr_rt5640: ASoC: CODEC DAI rt5640-aif1 not registered
> Oct 13 20:10:21 surface kernel: bytcr_rt5640 bytcr_rt5640: devm_snd_soc_register_card failed -517
> Oct 13 20:10:22 surface kernel: bytcr_rt5640 bytcr_rt5640: quirk DMIC1_MAP enabled
> Oct 13 20:10:22 surface kernel: bytcr_rt5640 bytcr_rt5640: quirk DMIC enabled
> Oct 13 20:10:22 surface kernel: bytcr_rt5640 bytcr_rt5640: quirk MCLK_EN enabled
> Oct 13 20:10:22 surface kernel: bytcr_rt5640 bytcr_rt5640: ASoC: CODEC DAI rt5640-aif1 not registered
> Oct 13 20:10:22 surface kernel: bytcr_rt5640 bytcr_rt5640: devm_snd_soc_register_card failed -517
> Oct 13 20:10:23 surface kernel: bytcr_rt5640 bytcr_rt5640: quirk DMIC1_MAP enabled
> Oct 13 20:10:23 surface kernel: bytcr_rt5640 bytcr_rt5640: quirk DMIC enabled
> Oct 13 20:10:23 surface kernel: bytcr_rt5640 bytcr_rt5640: quirk MCLK_EN enabled
> Oct 13 20:10:23 surface kernel: bytcr_rt5640 bytcr_rt5640: ASoC: CODEC DAI rt5640-aif1 not registered
> Oct 13 20:10:23 surface kernel: bytcr_rt5640 bytcr_rt5640: devm_snd_soc_register_card failed -517
> Oct 13 20:10:23 surface kernel: bytcr_rt5640 bytcr_rt5640: quirk DMIC1_MAP enabled
> Oct 13 20:10:23 surface kernel: bytcr_rt5640 bytcr_rt5640: quirk DMIC enabled
> Oct 13 20:10:23 surface kernel: bytcr_rt5640 bytcr_rt5640: quirk MCLK_EN enabled
> Oct 13 20:10:23 surface kernel: bytcr_rt5640 bytcr_rt5640: ASoC: CODEC DAI rt5640-aif1 not registered
> Oct 13 20:10:23 surface kernel: bytcr_rt5640 bytcr_rt5640: devm_snd_soc_register_card failed -517
>
> $ journalctl -b -2 | head -n3 | tail -n1
> Oct 13 22:10:10 surface kernel: Linux version 4.13.0-0.rc2.git0.26.surface3.fc27.x86_64 (hadess at classic) (gcc version 7.1.1 20170526 (Red Hat 7.1.1-2) (GCC)) #1 SMP Tue Jul 25 18:47:03 CEST 2017
>
> Cheers
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel at alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel



More information about the Alsa-devel mailing list