AnsweredAssumed Answered

i.mx6dl spdif output not work

Question asked by Gao Jianzhong on Jul 12, 2016
Latest reply on Feb 8, 2017 by Daniel Baluta

Hi everyone


I have a custom board, and it use spdif interface to output audio.

To enable spdif  output feature, i add following red settings to my device tree file.

sound-spdif {

  compatible = "fsl,imx-audio-spdif";

  model = "imx-spdif";

  spdif-controller = <&spdif>;




  pinctrl_spdif: spdifgrp {

  fsl,pins = <





&spdif {

  pinctrl-names = "default";

  pinctrl-0 = <&pinctrl_spdif>;

  status = "okay";



After did this, i can see the sound card use aplay -l,

root@sabre:~# aplay -l

**** List of PLAYBACK Hardware Devices ****

card 0: imxspdif [imx-spdif], device 0: S/PDIF PCM snd-soc-dummy-dai-0 []

  Subdevices: 1/1

  Subdevice #0: subdevice #0


But when i try to play a audio file, it blocked and never return back.

root@sabre:~# aplay /unit_tests/audio8k16S.wav

Playing WAVE '/unit_tests/audio8k16S.wav' : Signed 16 bit Little Endian, Rate 8000 Hz, Stereo

when i use gplay, it has the same problem.


In Linux_Reference_Manual.pdf, about the spdif output driver, when use aplay -l,it will be

but, my result is different with snd-soc-dummy-dai-0, not "Playback dit-hifi-0".

I also check the sabreauto reference board,it is also "snd-soc-dummy-dai-0", Why?

I am using the lateset BSP version, fsl-yocto-L4.1.15_1.1.0-ga.


Finally, how can I get spdif output driver work?Qiang Li - Mpu Se

Thank you.