custom audio card on beaglebone

jo crazyiop at gmail.com
Sun Jan 22 16:38:34 EST 2017


Hi everyone,

I am currently trying to get a simple audio I2S DAC board 
(https://polyvection.com/shop/plaindac/) to work on a beaglebone green 
wireless. The components is a PCM5121, a popular one that has an 
existing driver.

so far,
- I have a custom compiled kernel with the apropriate driver compiled
$ grep PCM512 .config
CONFIG_SND_SOC_PCM512x=m
CONFIG_SND_SOC_PCM512x_I2C=m


- I can boot with a custom device tree including my definition of the 
board as an "asoc-simple-card" and it get recognise without error on boot.

root at beaglebone:~# dmesg |grep sound
[   28.730678] asoc-simple-card sound: pcm512x-hifi <-> 48038000.mcasp 
mapping ok
root at beaglebone:~# lsmod |grep pcm512
snd_soc_pcm512x_i2c     2782  1
snd_soc_pcm512x        24341  1 snd_soc_pcm512x_i2c
snd_soc_core          192029  5 
snd_soc_pcm512x,snd_soc_davinci_mcasp,snd_soc_edma,snd_soc_omap,snd_soc_simple_card
snd_pcm               103172  6 
snd_soc_pcm512x,snd_soc_davinci_mcasp,snd_soc_core,snd_soc_omap,snd_pcm_dmaengine


- I can open the device with alsamixer, and can confirm the sound is on 100%

Howewer, I still can't get any sound of the device.

Does someone has experience in regards to asoc audio device and cant 
give me some thought on easy to miss things ?
I am still trying to figure out if I have omitted something on the 
device tree, or if I need to configure something more on the OS (alsa, 
pulseaudio ?)...

I have attached my device tree, if someone feel like giving a look at 
it. (my addition from the original one comes after line 73).
Also some output that may give you more info that they are giving to me:

root at beaglebone:~# aplay -v Pom\ Pom.wav
Playing WAVE 'Pom Pom.wav' : Signed 32 bit Little Endian, Rate 44100 Hz, 
Stereo
ALSA <-> PulseAudio PCM I/O Plugin
Its setup is:
   stream       : PLAYBACK
   access       : RW_INTERLEAVED
   format       : S32_LE
   subformat    : STD
   channels     : 2
   rate         : 44100
   exact rate   : 44100 (44100/1)
   msbits       : 32
   buffer_size  : 22050
   period_size  : 5512
   period_time  : 125000
   tstamp_mode  : NONE
   period_step  : 1
   avail_min    : 5512
   period_event : 0
   start_threshold  : 22050
   stop_threshold   : 22050
   silence_threshold: 0
   silence_size : 0
   boundary     : 1445068800

#nothing play and the above stay displayed -as is- until I ctrl-c


root at beaglebone:~# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: plaindac [plaindac], device 0: davinci-mcasp.0-pcm512x-hifi 
pcm512x-hifi-0 []
   Subdevices: 0/1
   Subdevice #0: subdevice #0


root at beaglebone:~# cat /proc/asound/card0/pcm0p/info
card: 0
device: 0
subdevice: 0
stream: PLAYBACK
id: davinci-mcasp.0-pcm512x-hifi pcm512x-hifi-0on
name:
subname: subdevice #0
class: 0
subclass: 0
subdevices_count: 1
subdevices_avail: 0


Regards,
Jonathan.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: am335x-bonegreen-wireless-pcm.dts
Type: audio/vnd.dts
Size: 3399 bytes
Desc: not available
Url : http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20170122/c982be48/attachment.bin 


More information about the Kernelnewbies mailing list