Re: [GIT PULL] sound fixes for 5.8-rc1

From: Srinivas Kandagatla
Date: Fri Jun 12 2020 - 07:42:04 EST


Thanks John for reporting this,

On 12/06/2020 01:49, John Stultz wrote:
On Thu, Jun 11, 2020 at 5:13 PM John Stultz <john.stultz@xxxxxxxxxx> wrote:

On Thu, Jun 11, 2020 at 6:39 AM Takashi Iwai <tiwai@xxxxxxx> wrote:
sound fixes for 5.8-rc1

Here are last-minute fixes gathered before merge window close;
a few fixes are for the core while the rest majority are driver
fixes.

* PCM locking annotation fixes and the possible self-lock fix
* ASoC DPCM regression fixes with multi-CPU DAI

Just as a heads up, we just recently got HDMI audio working on the
Dragonboard 845c (Vinod has patches he's sending out here in the next
few days), but they suddenly stopped working today with the following
error:
[ 13.110725] msm-snd-sdm845 soc@0:sound: snd-soc-dummy-dai <->
MultiMedia1 mapping ok
[ 13.119343] msm-snd-sdm845 soc@0:sound: snd-soc-dummy-dai <->
MultiMedia2 mapping ok
[ 13.127969] msm-snd-sdm845 soc@0:sound: snd-soc-dummy-dai <->
MultiMedia3 mapping ok
[ 13.135891] msm-snd-sdm845 soc@0:sound: Compress ASoC:
snd-soc-dummy-dai <-> MultiMedia4 mapping ok
[ 13.145042] msm-snd-sdm845 soc@0:sound: CPU DAI QUAT_MI2S_RX for
rtd HDMI Playback does not support capture
[ 13.154873] msm-snd-sdm845 soc@0:sound: ASoC: can't create pcm HDMI
Playback :-22
[ 13.165634] snd-malloc: invalid device type 0
[ 13.170057] snd-malloc: invalid device type 0
[ 13.174888] msm-snd-sdm845 soc@0:sound: Sound card registration failed
[ 13.181574] msm-snd-sdm845: probe of soc@0:sound failed with error -22

I've bisected it down to the following commit from this pull req:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=b73287f0b0745961b14e5ebcce92cc8ed24d4d52

Without this patch:
[ 13.056906] msm-snd-sdm845 soc@0:sound: snd-soc-dummy-dai <->
MultiMedia1 mapping ok
[ 13.075465] msm-snd-sdm845 soc@0:sound: snd-soc-dummy-dai <->
MultiMedia2 mapping ok
[ 13.092949] msm-snd-sdm845 soc@0:sound: snd-soc-dummy-dai <->
MultiMedia3 mapping ok
[ 13.109704] msm-snd-sdm845 soc@0:sound: Compress ASoC:
snd-soc-dummy-dai <-> MultiMedia4 mapping ok
[ 13.125584] msm-snd-sdm845 soc@0:sound: i2s-hifi <-> QUAT_MI2S_RX mapping ok
[ 13.125621] msm-snd-sdm845 soc@0:sound: multicodec <-> SLIMBUS_0_RX
mapping ok
[ 13.141682] msm-snd-sdm845 soc@0:sound: wcd934x_tx1 <->
SLIMBUS_0_TX mapping ok
...

I've not managed to dig in with much analysis yet (possibly something
off with the current patches we have), but wanted to raise the issue
in case others start to see it too.

I don't know the backgroun again, but would something like the
following make sense?
https://git.linaro.org/people/john.stultz/android-dev.git/commit/?h=dev/db845c-mainline-WIP&id=7e49b248db77b5ed29b2aa278268e77650c75482

It avoids failing completely if playback or capture isn't found.

Can you please try these two patches, I think the problem is that FE dailinks are always set to bidirectional, this two patches should fix it.

https://git.linaro.org/people/srinivas.kandagatla/linux.git/commit/?h=gapless/v2&id=bb7ce65a0ca1640cd9ff301c885f56ce00519834

https://git.linaro.org/people/srinivas.kandagatla/linux.git/commit/?h=gapless/v2&id=9b568e491f0410b453aaf5a147b75252a6943ffd


Once you confirm I can send them to list as fixes.


Thanks,
srini


thanks
-john