[U-Boot] [PATCH] ehci-hcd.c, musb_core, usb.h: Add USB_DMA_MINALIGN define for cache alignment
Ilya Yanok
ilya.yanok at cogentembedded.com
Thu Jul 5 20:25:00 CEST 2012
Hi Tom,
On Thu, Jul 5, 2012 at 9:15 PM, Tom Rini <trini at ti.com> wrote:
> On Wed, Jul 04, 2012 at 05:03:59PM +0400, Ilya Yanok wrote:
> `
> > From: Tom Rini <trini at ti.com>
> >
> > The USB spec says that 32 bytes is the minimum required alignment.
> > However on some platforms we have a larger minimum requirement for cache
> > coherency. In those cases, use that value rather than the USB spec
> > minimum. We add a cpp check to <usb.h> to define USB_DMA_MINALIGN and
> > make use of it in ehci-hcd.c and musb_core.h. We cannot use MAX() here
> > as we are not allowed to have tests inside of align(...).
> >
> > Cc: Marek Vasut <marex at denx.de>
> > Signed-off-by: Tom Rini <trini at ti.com>
> > [ilya.yanok]: fix size alignment, drop (incorrect) rounding
> > when invalidating the buffer. If we got unaligned buffer from the
> > upper layer -- that's definetely a bug so it's good to buzz
> > about it. But we have to align the buffer length -- upper layers
> > should take care to reserve enough space.
> > Signed-off-by: Ilya Yanok <ilya.yanok at cogentembedded.com>
>
> So trying this on ethernet still gives a handful of unaligned areas. Do
>
Not surprised. USB Ethernet drivers are unfixed wrt cache alignment.
you have a beagleboard xM available?
>
Unfortunately no.
Regards, Ilya.
More information about the U-Boot
mailing list