I managed to get this working, thanks to a post on the alsa-devel forum: http://mailman.alsa-project.org/pipermail/alsa-devel/2015-September/098022.html
By loading the overlay *before* the sound drivers, rather than after it now works. from /boot/uEnv.txt: ##Example v4.1.x #cape_disable=bone_capemgr.disable_partno= cape_enable=bone_capemgr.enable_partno=BB-BONE-AUDI-02 On Wednesday, August 9, 2017 at 3:27:56 PM UTC-4, Mike Davis wrote: > > I have the same issue. > I am running kernel debian with kernel 4.4.52-bone16 > I pulled down RobertCNelson's dtb-rebuilder from > https://github.com/RobertCNelson/dtb-rebuilder > <https://github.com/RobertCNelson/dtb-rebuilder/blob/4.1-ti/src/arm/am335x-boneblack-audio.dts#L17-L28>, > > branch 4.4.x and rebuilt all the arm dtbs and installed them. > Then added then updated my *base* dtb, which > is am335x-boneblack-emmc-overlay.dtb with the clock definitions > in am335x-boneblack-audio.dts, > as per > https://github.com/RobertCNelson/dtb-rebuilder/blob/4.1-ti/src/arm/am335x-boneblack-audio.dts#L17-L28 > > <https://www.google.com/url?q=https%3A%2F%2Fgithub.com%2FRobertCNelson%2Fdtb-rebuilder%2Fblob%2F4.1-ti%2Fsrc%2Farm%2Fam335x-boneblack-audio.dts%23L17-L28&sa=D&sntz=1&usg=AFQjCNHdxge1SQz3V8cG2II6UbZ9j0nDDw> > > Reboot, then install the audio: sudo sh -c "echo BB-BONE-AUDI-02 > > /sys/devices/platform/bone_capemgr/slots" > > All seems ok in dmesg: > [ 411.768801] bone_capemgr bone_capemgr: part_number 'BB-BONE-AUDI-02', > version 'N/A' > [ 411.768866] bone_capemgr bone_capemgr: slot #4: override > [ 411.774250] bone_capemgr bone_capemgr: Using override eeprom data at > slot 4 > [ 411.774295] bone_capemgr bone_capemgr: slot #4: 'Override Board > Name,00A0,Override Manuf,BB-BONE-AUDI-02' > [ 411.811080] bone_capemgr bone_capemgr: slot #4: dtbo > 'BB-BONE-AUDI-02-00A0.dtbo' loaded; overlay id #0 > > but speaker-test and aplay both fail with: > [ 2632.788052] davinci-mcasp 48038000.mcasp: stream has more channels (2) > than are enabled in mcasp (0) > [ 2632.788110] davinci-mcasp 48038000.mcasp: ASoC: can't set > 48038000.mcasp hw params: -22 > > > On Wednesday, July 19, 2017 at 12:21:09 PM UTC-4, [email protected] > wrote: >> >> This might be an old thread but I got a question. I was able to compile >> and load the modified device tree. I then loaded my overlay for the audio. >> I built this circuit base from >> http://elinux.org/CircuitCo:Audio_Cape_RevB. The only difference with >> mine is that I am using I2C1. I can see the it is using address 0x18 dmesg >> has: >> [ 135.176315] asoc-simple-card sound: tlv320aic3x-hifi <-> >> 48038000.mcasp mapping ok >> >> However, when I call on the speaker-test, this error appears: >> >> >> Unable to set hw params for playback: Invalid argument >> Setting of hwparams failed: Invalid argument >> >> Checking dmesg: >> [ 617.051387] davinci-mcasp 48038000.mcasp: stream has more channels (2) >> than are enabled in mcasp (0) >> [ 617.051781] davinci-mcasp 48038000.mcasp: ASoC: can't set >> 48038000.mcasp hw params: -22 >> >> Has anyone encountered the same problem? >> >> >> >> >> On Monday, April 4, 2016 at 5:48:01 PM UTC+8, Rick M wrote: >>> >>> I'm trying to get my audio cape to work (which is nearly identical to >>> the cape that was available for sale). I've had it working to some level of >>> success with past kernels (3.1.18), but now I'm on 4.4.6. My existing DTS >>> didn't work, so I'm looking at how the BB-BONE-AUDI-02 DTS is written. >>> >>> One of the differences is that it doesn't explicitly call out the McASP >>> clock frequency like the older one did. Instead, it seems to refer to >>> clk_mcasp0. But when I copy the same code into my DTS, I get: >>> >>> [ 103.180866] of_resolve_phandles: Could not find symbol 'clk_mcasp0' >>> [ 103.187269] bone_capemgr bone_capemgr: slot #4: Failed to resolve >>> tree >>> >>> I found it defined by grepping /boot/dtbs. It's in >>> /boot/dtbs/4.4.6-bone-rt-r6/am335x-abbbi.dtb. Where can I find the source >>> files for these DTBs? >>> >>> Is this dtb part of what's loaded by default in 4.4.6-bone-rt-r6? If >>> not, can I copy the definition into my >>> >>> FWIW, here's my DTS and some output from dmesg: >>> http://pastebin.com/niDkWdWV >>> >>> Thanks, >>> >>> >>> -- >>> Rick Mann >>> [email protected] >>> >>> >>> -- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/beagleboard/bb4cb2e9-6c2b-46f4-874f-cc0af41b5ad9%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
