[U-Boot] [PATCH 3/4] ehci-hcd.c: Add a new USB_DMA_MINALIGN define for cache alignment

Marek Vasut
2012-06-14T20:02:46Z

Dear Tom Rini,

> On 06/14/2012 12:41 PM, Marek Vasut wrote:
> > Dear Tom Rini,
> >
> >> On 06/14/2012 12:29 PM, Marek Vasut wrote:
> >>> Dear Tom Rini,
> >>>
> >>>> 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.
> >>>>
> >>>> Cc: Marek Vasut <marex@denx.de>
> >>>> Signed-off-by: Tom Rini <trini@ti.com>
> >>>> ---
> >>>>
> >>>> drivers/usb/host/ehci-hcd.c | 23 +++++++++++++++++------
> >>>> 1 file changed, 17 insertions(+), 6 deletions(-)
> >>>>
> >>>> diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c
> >>>> index 04300be..45725f5 100644
> >>>> --- a/drivers/usb/host/ehci-hcd.c
> >>>> +++ b/drivers/usb/host/ehci-hcd.c
> >>>> @@ -29,12 +29,23 @@
> >>>>
> >>>> #include "ehci.h"
> >>>>
> >>>> -int rootdev;
> >>>> -struct ehci_hccr *hccr; /* R/O registers, not need for volatile */
> >>>> -volatile struct ehci_hcor *hcor;
> >>>> +/*
> >>>> + * The EHCI spec says that we must align to at least 32 bytes.
> >>>> However, + * some platforms require larger alignment.
> >>>> + */
> >>>> +#if ARCH_DMA_MINALIGN > 32
> >>>> +#define USB_DMA_MINALIGN ARCH_DMA_MINALIGN
> >>>> +#else
> >>>> +#define USB_DMA_MINALIGN 32
> >>>> +#endif
> >>>
> >>> Don't we have some common header for these?
> >>
> >> For ECHI and musb? I did not spot one unless we go all the way up to
> >> common.h or similar.
> >
> > Ok, that's crappy :-/
> >
> > Don't we have ehci.h or usb.h? Is musb ehci or not?
>
> MUSB is Mentor USB. But, good spotting, include/usb.h is in both
> ehci-hcd.c (and other places) and musb_core.h, moving there.

Heh, my clairvoiance can now do git-grep-alike actions without touching the repo
... I have to praise myself :-)

Best regards,
Marek Vasut