On Fri, Jul 15, 2011 at 09:42:53AM +0200, Heiko Schocher wrote: > Hmm.. trying bootm with actual u-boot on a davinci (arm926ejs) based > board, there I couldn;t use the Davinci-EMAC (if I disable the dcache > it works ...)
I can confirm there are some cache coherency problems with the DaVinci EMAC driver. I've done a port to a new board based on the DA850 and had problems with corrupt Ethernet packets until I disabled the dcache altogether. The clue was the packets started working when I added a hex dump just before eth_send()! While I haven't come across any explicit documentation I presume the EMAC controller's independent DMA engine is simply not aware of the ARM's cache. I haven't yet identified whether there's some mechanism already in U-Boot for marking particular bits of memory as uncacheable, which would seem to be the correct approach, but turning of dcache doesn't really have any side effects that cause problems for me. Bye for now, -- Laurence Withers, <lwith...@guralp.com> http://www.guralp.com/ Direct tel:+447753988197 or tel:+443333408643 Software Engineer General support queries: <supp...@guralp.com> CMG-DCM CMG-EAM CMG-NAM _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot