New kernel + old audio cape

I’m using a BBB with ALARM 3.16.2 and the original Audio cape (TLV320AIC3106) and getting these types of errors at boot:

`tlv320aic3x-codec 2-0018: ASoC: Right HP Mixer DAPM update failed: -121`
`mplayer /usr/share/sounds/alsa/Front_Right.wav`
gives repeating "Audio device got stuck!" errors and I get no sound.

I had this same hardware setup working before with Angstrom.

I see device tree files for the rev B of the audio board which uses the “4” variant of the codec chip. Is the original cape compatible with the newest kernels? If not, what steps would I need to take to enable support for the original “6” codec?

I’m using the newer 3.16 kernel because the 3.8 kernel had problems loading firmware for both the LCD4 and Audio capes as they shared LED pins. I used the dtb-rebuilder process on 3.16 (as noted in an earlier message) to enable both capes and at least the LCD works fine.

I had both capes working fine on 3.8 with Angstrom but only after removing the LED pin part of the audio cape device tree file and rebuilding the kernel, which took me a long time to get figured out. ALARM uses a different method with “makepkg” to rebuild the kernel, but I’m not sure how to use it to 1) download source 2) modify the device tree files appropriately and 3) continue to rebuild the kernel. I’m relatively new to this kind of thing and it took me days of struggle to figure out how to do it on Angstrom.

Is it better to stay on 3.16 (or maybe 3.14) or go back to 3.8? Either way I have to address the audio cape not working, but in different ways. I’m not sure if the problem I’m having now is due to the same pin incompatibility problem or if it is related to the new audio cape using the “4” variant of the codec.

Thanks for any help!

I found my original one in my random cape pile. It's the audio rev a,
with the ac3106, i'll give it a shot tomorrow. In "theory" you'll be
able to get "most" support from the dtb-rebuilder using the 3.14.x
branch for your 3.16 kernel. There's new things like pm, pruss, that
won't work as that is out off tree stuff.

Regards,

Oh crap... btw, very shortly the "dtb-rebuilder" is going to rely on
pinmux-helper.

Oh wait..

https://github.com/archlinuxarm/PKGBUILDs/blob/master/core/linux-am33x/PKGBUILD

i need to get my butt in gear, finish the v3.14. tree and then forward
port it to my v3.16.x tree. :wink:

Regards,

Thanks for the info. I always appreciate your kindness and willingness to help everyone - especially those like me who often struggle with the ‘little stuff’.

I’m looking forward to seeing if you could get your original audio cape working. There’s also, of course, a possibility I’ve messed something up too far in my setup. I have also been mucking around with getting bluetooth audio to work. I’ve read there were apparently issues with compatibility between alsa and bluez5, and that pulseaudio was needed instead. I tried many different things but couldn’t get that working either. I may very well have messed something else up in that trial and error process. If you get your audio rev A board working without problems, I’ll probably install a fresh image on my BBB and start again.

Regards,
-Seth

Just pushed it out.. :wink:

https://github.com/RobertCNelson/ti-linux-kernel-dev/commit/2de4255872342791690351914256de4cb2d653ff

if you pull the head of dtb-rebuilder, and just enable:

#include "am335x-bone-audio-reva.dtsi"

It should work on your kernel.. (fingers crossed)

https://github.com/RobertCNelson/dtb-rebuilder/blob/7c8f31b7456cff0db852c787e444c96cda9178f6/src/arm/am335x-bone-audio-reva.dtsi

Regards,

It works! What did you have to change to get it working?

Thank you very much for your continued help!

-Seth