Bug 195811

Summary: bytcr_rt5640: Baytrail Audio Port: ASoC: no backend DAIs enabled for Baytrail Audio Port
Product: Drivers Reporter: Stefan Assmann (sassmann)
Component: Sound(ALSA)Assignee: Jaroslav Kysela (perex)
Status: RESOLVED INVALID    
Severity: normal CC: pierre-louis.bossart, tiwai, vinod.koul
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 4.12-rc1 Subsystem:
Regression: No Bisected commit-id:
Attachments: dmesg
alsa-info.txt

Description Stefan Assmann 2017-05-19 06:31:16 UTC
Created attachment 256623 [details]
dmesg

The log fills up with lots of the following messages:
[   28.632832]  Baytrail Audio Port: ASoC: no backend DAIs enabled for Baytrail Audio Port

Attaching full dmesg.
Comment 1 Stefan Assmann 2017-05-19 06:31:50 UTC
Created attachment 256625 [details]
alsa-info.txt
Comment 2 Jaroslav Kysela 2017-06-29 08:02:29 UTC
I added Intel guys to CC. Perhaps, they'll have an insight what's wrong there.
Comment 3 Takashi Iwai 2017-06-29 08:26:24 UTC
There is nothing wrong in the kernel driver side, judging from what I can see.  It's the standard message appearing when you don't set up the audio routing.
You need to set up routing properly by adjusting each mixer element.  It's usually done via UCM profile invoked by PulseAudio.

That kernel message should be rate-limited and more informative...
Comment 4 Stefan Assmann 2017-06-29 08:55:08 UTC
Ok, that's some good news. The problem is, pulseaudio won't start. Thus I was assuming something/wrong on the kernel side.

liveuser@wintab8:~ > pulseaudio --start
E: [pulseaudio] main.c: Daemon startup failed.
liveuser@wintab8:~ > pulseaudio --log-level=debug --start
D: [pulseaudio] conf-parser.c: Parsing configuration file '/etc/pulse/client.conf'
D: [pulseaudio] conf-parser.c: /etc/pulse/client.conf.d does not exist, ignoring.
I: [pulseaudio] main.c: Daemon startup successful.
liveuser@wintab8:~ > ps fax |grep pulseaudio
 4441 pts/0    S+     0:00              |           \_ grep pulseaudio
Comment 5 Takashi Iwai 2017-06-29 09:34:47 UTC
I guess you have LPE HDMI audio driver (snd-hdmi-lpe-audio)?  Try to blacklist this module.  The currently released PulseAudio is known to be broken for this driver, and it gets killed by rtkit when RT-priority is set.  You can disable the rt priority in PA config, instead, too.
Comment 6 Stefan Assmann 2017-06-29 11:28:40 UTC
Yes, snd-hdmi-lpe-audio is involved. By removing the module pulseaudio does start properly, though I can't hear sound when playing a file with aplay for example.
I checked the volume level and made sure it's not muted in alsamixer.

Another question, is it ok to avoid snd-hdmi-lpe-audio if I don't need audio over HDMI?
Comment 7 Takashi Iwai 2017-06-29 15:02:20 UTC
As mentioned, you need to set up the routing, and I guess there is no corresponding UCM profile provided for your hardware.
We have no standard UCM in alsa-lib repo yet.

Try to install the UCM profile for bytcr-rt5640 from Pierre's git repo:
  https://github.com/plbossart/UCM

Copy it under /usr/share/alsa/ucm.
Comment 8 Stefan Assmann 2017-06-29 15:20:15 UTC
Awesome, that did it! Thanks a lot Takashi!!!