[alsa-devel] BeagleBone with TLV320AIC3100

Kai Riedel kairiedel at yahoo.de
Mon Oct 31 10:07:45 CET 2016


Hi,

perhaps you could help me, I try to use a TLV320AIC3100 with the BeagleBoneBlack, kernel 4.4.28-bone14 and the dts file in the attachement. The dts file based on the instructions from Robert Nelson on https://github.com/beagleboard/bb.org-overlays. I have to uncomment the line clocks = <&clk_mcasp0>; in the dts file, because I get error otherwise. Enable the device with slots delivers:

[  386.783276] bone_capemgr bone_capemgr: part_number 'BB-BONE-AUDI-04', version 'N/A'
[  386.791191] bone_capemgr bone_capemgr: slot #4: override
[  386.796670] bone_capemgr bone_capemgr: Using override eeprom data at slot 4
[  386.803724] bone_capemgr bone_capemgr: slot #4: 'Override Board Name,00A0,Override Manuf,BB-BONE-AUDI-04'
[  386.847899] bone_capemgr bone_capemgr: slot #4: dtbo 'BB-BONE-AUDI-04-00A0.dtbo' loaded; overlay id #0
[  386.876502] 2-0018 supply HPVDD not found, using dummy regulator
[  386.891280] 2-0018 supply SPRVDD not found, using dummy regulator
[  386.903157] 2-0018 supply SPLVDD not found, using dummy regulator
[  386.910660] 2-0018 supply AVDD not found, using dummy regulator
[  386.917471] 2-0018 supply IOVDD not found, using dummy regulator
[  386.923560] 2-0018 supply DVDD not found, using dummy regulator
[  386.932676] asoc-simple-card sound: tlv320aic31xx-hifi <-> 48038000.mcasp mapping ok

So I think this should be OK. In the alsamixer I can change the volume and on the I2C I see telegrams
by changing the volume. But if I try to play sound with speaker-test I get errors again:

>
> >speaker-test 1.0.28
> >
> >Playback device is default
> >Stream parameters are 48000Hz, S16_LE, 1 channels
> >Using 16 octaves of pink noise
> >Rate set to 48000Hz (requested 48000Hz)
> >Buffer size range from 16 to 32768
> >Period size range from 8 to 16384
> >Using max buffer size 32768
> >Periods = 4
> >Unable to set hw params for playback: Invalid argument
> >Setting of hwparams failed: Invalid argument
>
> dmesg delivers:
> >[  106.776874] Division by zero in kernel.
> >[  106.780963] CPU: 0 PID: 606 Comm: speaker-test Tainted: G           O    4.4.28-bone14 #1
> >[  106.789321] Hardware name: Generic AM33XX (Flattened Device Tree)
> >[  106.795654] [<c0013e85>] (unwind_backtrace) from [<c0011f39>] (show_stack+0x11/0x14)
> >[  106.803580] [<c0011f39>] (show_stack) from [<c037070f>] (Ldiv0+0x9/0x12)
> >[  106.810510] [<c037070f>] (Ldiv0) from [<bf9952df>] (aic31xx_hw_params+0x96/0x370 [snd_soc_tlv320aic31xx])
> >[  106.820849] [<bf9952df>] (aic31xx_hw_params [snd_soc_tlv320aic31xx]) from [<bf88d3bf>] (soc_dai_hw_params+0x16/0x34 [snd_soc_core])

Quite fatal error even because of division by zero in aic3 1xx_hw_params(). I guess it either doesn't validate its parameters or gets values that should not happen.

By the way with an original Audio_Cape_Rev B and Kernel 3.8.13 everything works fine. The TLV320AIC3100 is connected to the BeagleBone in the same way, but in the Kernel 3.8.13 is no support for this device so I have to use a Kernel >4.1.

Greetings,

Kai
-------------- next part --------------
A non-text attachment was scrubbed...
Name: BB-BONE-AUDI-04-00A0.dts
Type: audio/vnd.dts
Size: 2934 bytes
Desc: not available
URL: <http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20161031/c0823213/attachment.dts>


More information about the Alsa-devel mailing list