Hello.
I am following the below post and trying to play audio on PCM5102A I2S board, connected to PocketBeagle header.
I am using the official Debian image (with PCM5102A driver eneabled).
So far (according to dmesg output) the drivers are initialized and newly created ALSA output device can be seen.
[ 1.553224] asoc-simple-card sound: ASoC: binding davinci-mcasp.0-pcm5102a-hifi
[ 1.662191] asoc-simple-card sound: pcm5102a-hifi 48038000.mcasp mapping ok
[ 1.666676] asoc-simple-card sound: ASoC: no DMI vendor name!
[ 1.697221] ALSA device list:
[ 1.697236] #0: I2S slave playback
The problem is, trying ‘aplay’, but no sound on I2S device.
The header pins are listed as follows in dtb.
0x190 0x8 /* P1.36 mcasp0_aclkx /
0x194 0x8 / P1.33 mcasp0_fsx /
0x198 0x8 / P2.32 mcasp0_axr0 */
I examined the pins with osilloscope, but I think there is no signal there.
(Looks like P1.36 left open, P1.33, P2.32 pulled down to GND without signal?)
I think there are at least two points I should look into next, but I am not sure how to.
- mcasp0 driver is it working?
- pinmux functioning so that I am seeing mcasp pins on P1.36/P1.33/P2.34 physical pins?
Sorry I am new to pinmuxing.
Maybe looking into some debugfs files I can be sure my pinmux definitions are working as expected?
FYI. Here are lines containing mcasp from debugfs:
/sys/kernel/debug/pinctrl/pinctrl_handles:
device: 48038000.mcasp current state: default
state: default
type: MUX_GROUP controller pinctrl-single group: mcasp0_pins (313) function: mcasp0_pins (313)
/sys/kernel/debug/pinctrl/pinctrl-maps
device 48038000.mcasp
state default
type MUX_GROUP (2)
controlling device 44e10800.pinmux
group mcasp0_pins
function mcasp0_pins
/sys/kernel/debug/pinctrl/44e10800.pinmux/pingroups:
group: mcasp0_pins
pin 100 (PIN100)
pin 101 (PIN101)
pin 102 (PIN102)
/sys/kernel/debug/pinctrl/44e10800.pinmux/pinmux-functions:
function: mcasp0_pins, groups = [ mcasp0_pins ]
/sys/kernel/debug/pinctrl/44e10800.pinmux/pinmux-pins: