WM8960 is unable to detect on imx8m plus board!!
I'm connecting my wm8960 with imx8m plus board,
but aplay -l is not showing wm8960, it is showing
**** List of PLAYBACK Hardware Devices ****
card 0: Dummy [Dummy], device 0: Dummy PCM [Dummy PCM]
Subdevices: 8/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
card 1: sndpebav10 [snd-peb-av-10], device 0: 30c20000.sai-tlv320aic3x-hifi tlv320aic3x-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: audiohdmi [audio-hdmi], device 0: imx8 hdmi i2s-hifi-0 []
Sub devices: 1/1
Subdevice #0: subdevice #0
like where we have to make changes in dts files, or in machine driver?, totally confused!!
please let me know how to fixed this issue!!
Hello,
Could you please share your device connections and device tree?
All the changes that you need to do to detect your CODEC are on device tree.
Best regards.
I attached Pin Connection and dts files, kindly check!!
Board Name = phyboard-pollux-imx8mp-2
Source Code = git checkout remotes/origin/v5.4.70_2.3.2-phy
Please tell is the dts files are correct or not, i'm confused between these files!!
Hello,
Please check refence connections on SPF-46370_B1.pdf attached file, page 16.
And imx8mp-evk.dts on the next link, there are some differences on your device tree, but you can use official NXP device tree for IMX8MP that supports WM8960 CODEC.
Best regards.
Hii,
i'm able to load wm8960 modules and able to detect soundcard also!!
root@phyboard-pollux-imx8mp-2:~# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Dummy [Dummy], device 0: Dummy PCM [Dummy PCM]
Subdevices: 8/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
card 1: wm8960audio [wm8960-audio], device 0: HiFi wm8960-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: wm8960audio [wm8960-audio], device 1: HiFi-ASRC-FE (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: audiohdmi [audio-hdmi], device 0: imx8 hdmi i2s-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
but when i'm playing any .wav files i'm getting this error!!
root@phyboard-pollux-imx8mp-2:~# aplay -D hw:1,0 file_example_WAV_5MG.wav
Playing WAVE 'file_example_WAV_5MG.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
aplay: pcm_write:2057: write error: Input/output error
Hello,
This error occurs on an audio playback, when audio samples are not output. A possible cause is a wrong configuration of the audio interface:
- DAI gpios not activated: missing in device tree or in bad state.
- DAI/codec not clocked: kernel/master clock not enabled.
Best regards.
Hii @JorgeCas
As this reason i already know, could u please provide the solution!!
Like how to solve this issue?
- DAI gpios not activated: missing in device tree or in bad state.
- DAI/codec not clocked: kernel/master clock not enabled.
Thanks in Advance!!
Hello,
If you are using an IMX8MP EVK board, you should be able to detect this CODEC by using the pre-build image. In the case that you are using a custom board or third-party board you should adapt your device tree using the EVK board device tree as a reference.
Could you please provide your board model?
Best regards.
Board Name = phyboard-pollux-imx8mp-2
Hello,
Got it, in that case you should refer to Phytec to check your issue, the device tree configuration for EVK board should be enough to detect a new sound device and work correctly. If your device includes the CODEC on the board you should try with BSP provided by Phytec.
In the case that the CODEC it is not directly supported by Phytec's BSP maybe it is necessary a patch or something else on your board but, I do not have access to that information.
Best regards.