ASoC help needed - Only Left channel receives data

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

ASoC help needed - Only Left channel receives data

894件の閲覧回数
carotte
Contributor III

Hi,

I want to use a WM8804 codec with the i.MX6ULL processor. 

There is no existing ASoC machine driver for this chip - however there is one for Raspberry Pi.

https://github.com/raspberrypi/linux/blob/rpi-5.4.y/sound/soc/bcm/rpi-wm8804-soundcard.c

I know that these drivers are machine specific, but from my limited understanding, it looks fairly generic to me.

I tried using it as-is with only the necessary device tree modifications. 

This actually resulted in some success - the driver is working as expected, but only on one channel.

The left channel produces valid audio data. The right channel however, does not.

The codec is BCLK and LRCK master. These clocks are generated successfully. The SoC sends data, but as mentioned, only for one channel - as can be seen in the screenshot attached below.

Screenshot 2022-01-25 at 23.48.27.png

The boot messages imply no problems.

[ 2.407066] debugfs: Directory '2030000.sai' with parent 'snd_allo_digione' already present!
[ 2.416606] snd-rpi-wm8804 sound-wm8804: wm8804-spdif <-> 2030000.sai mapping ok
[ 2.426440] ALSA device list:
[ 2.429439] #0: snd_allo_digione

However, I suspect that there is some problem with the dai-link, since none is show with "aplay -l"

**** List of PLAYBACK Hardware Devices ****
card 0: sndallodigione [snd_allo_digione], device 0: Allo DigiOne HiFi wm8804-spdif-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0

The brackets behind wm8804-spdif-0 probably shouldn't be empty.

I can't imagine there being a vast problem, because one channel already works. So do the other features of this driver such as the selection of external oscillators via GPIO.

Any help or pointers would be greatly appreciated!

Thanks!

ラベル(5)
タグ(4)
0 件の賞賛
2 返答(返信)

875件の閲覧回数
jamesbone
NXP TechSupport
NXP TechSupport

Hello @carotte ,

 

You are correct basically this driver of the Audio Codec seems generic nevertheless, it is needed to validate the Device Tree, if there is something missing , like in the SAI or in the AUDMUX,  do you think you can share the DTS file and the version of BSP that you are using or Linux Kernel that you are using of the i.MX6ULL

 

867件の閲覧回数
carotte
Contributor III

Thanks a lot for your reply !

I have attached the DTS file. 

I am currently using the 5.4.70_2.3.0 BSP.

 

 

0 件の賞賛