Robert spoke about this on Jan 12, 2016:

it's a big workaround hack, the bug seems to be in edma_probe:

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/drivers/dma/edma.c#n2118

On first load of the board *.dtb, edma_probe is called and all the 'active' 
nodes get an edma slot, while the in-active nodes get disabled.. (power 
savings? for am335x, every ip has it's own edma channel, but maybe some parts 
need sharing?)

So, next when we load an overlay, for uart0, uart1, uart2, spi0, spi1, mcasp0, 
and mcasp1 the edma channel would be disabled, (they still load, but every 
transfer fails when it switches from pio-dma spi=160 bytes) as we don't re-call 
edma_probe to enable them*..

* that seems like the better fix.

Regards,
John




> On Apr 19, 2016, at 2:41 AM, Rick Mann <rm...@latencyzero.com> wrote:
> 
> The following .dtsi file:
> 
>       
> https://github.com/RobertCNelson/dtb-rebuilder/blob/4.4.x/src/arm/am33xx-overlay-edma-fix.dtsi
> 
> causes the mcasp davinci audio driver to load during boot,
> and prevents overlays (like BB-BONE-AUDI-02) from setting
> audio parameters. The result is hardware configuration errors
> when trying to use ALSA commands:
> 
>> Unable to set hw params for playback: Invalid argument
>> Setting of hwparams failed: Invalid argument
> 
> That .dtsi file enables spi0/1, and mcasp0/1. By removing
> the mcasp0/1 entries, the BB-BONE-AUDI-02 overlay is able
> to enable mcasp while configuring it properly, and allowing
> the driver to work.
> 
> It's not clear to me how that file is an eDMA fix, nor why
> it enables mcasp.
> 
> Here's the thread on the alsa-devel list where we figured it
> out:
> 
> http://mailman.alsa-project.org/pipermail/alsa-devel/2016-April/107061.html
> 
> Is the best way to report this problem here on the list like
> this, or to open an issue on github/dtb-rebuilder?
> 
> Note that this is all with kernel 4.4.7-bone-rt-r9. Not sure
> to how many other versions it applies.
> 
> Thanks!
> 
> -- 
> Rick Mann
> rm...@latencyzero.com
> 
> 
> -- 
> 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 beagleboard+unsubscr...@googlegroups.com.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/beagleboard/77DEEFDD-F2AC-494B-A8AC-6BC54F19EEC3%40latencyzero.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
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 beagleboard+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beagleboard/517CD07F-BAB9-4049-9537-8CF88548D592%40gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to