All of lore.kernel.org
 help / color / mirror / Atom feed
From: Marek Vasut <marex@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 2/2] ehci-hcd.c, musb_core, usb.h: Add USB_DMA_MINALIGN define for cache alignment
Date: Sun, 15 Jul 2012 10:07:05 +0200	[thread overview]
Message-ID: <201207151007.06108.marex@denx.de> (raw)
In-Reply-To: <CAA3CPjV6tXPCx7v40uLoixdHY3mN3revFsw6pip7VS7MCXHaWg@mail.gmail.com>

Dear Ilya Yanok,

> Hi,
> 
> On Sun, Jul 8, 2012 at 7:08 AM, Marek Vasut <marex@denx.de> wrote:
> > @@ -207,8 +210,8 @@ static int
> > 
> >  ehci_submit_async(struct usb_device *dev, unsigned long pipe, void
> > 
> > *buffer,
> > 
> >                    int length, struct devrequest *req)
> >  
> >  {
> > 
> > -       static struct QH qh __attribute__((aligned(32)));
> > -       static struct qTD qtd[3] __attribute__((aligned (32)));
> > +       ALLOC_CACHE_ALIGN_BUFFER(struct QH, qh, 1);
> 
> Somehow this doesn't work being allocated on stack... I assumed that this
> was declared as static just to use __attribute__((aligned))...

Not really ... but then, we have indeed a problem here. It was probably declared 
static to preserve the contents of these variables across the the calls of this 
function. Sigh, the USB code is really bloody :-/

Ilya, can you try pulling these out of the function?

> but it seems
> that current code doesn't like qh address being changed (I'm getting "Timed
> out on TD" messages). Any ideas? Changing it to DEFINE_... seems to help
> but it looks like hiding another bug.
> 
> Regards, Ilya.

Best regards,
Marek Vasut

  reply	other threads:[~2012-07-15  8:07 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-07-08  3:08 [U-Boot] [PATCH 1/2] common.h: Introduce DEFINE_CACHE_ALIGN_BUFFER Marek Vasut
2012-07-08  3:08 ` [U-Boot] [PATCH 2/2] ehci-hcd.c, musb_core, usb.h: Add USB_DMA_MINALIGN define for cache alignment Marek Vasut
2012-07-08 10:04   ` Ilya Yanok
2012-07-08 18:51     ` Marek Vasut
2012-07-08 20:52       ` Tom Rini
2012-07-08 21:36         ` Marek Vasut
2012-07-09 18:37   ` Ilya Yanok
2012-07-10  1:55     ` Marek Vasut
2012-07-14 22:11       ` Ilya Yanok
2012-07-14 22:08   ` Ilya Yanok
2012-07-15  8:07     ` Marek Vasut [this message]
2012-07-15  8:55       ` Ilya Yanok
2012-07-15  9:42         ` Marek Vasut
2012-07-08 12:23 ` [U-Boot] [PATCH 1/2] common.h: Introduce DEFINE_CACHE_ALIGN_BUFFER Ilya Yanok
2012-07-08 18:55   ` Marek Vasut
2012-07-20  4:01 ` Mike Frysinger
2012-07-20 11:31   ` Marek Vasut
2012-07-20 21:47     ` Mike Frysinger
2012-07-20 21:50       ` Tom Rini
2012-07-21 17:22         ` Mike Frysinger
2012-07-23 15:24           ` Tom Rini

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=201207151007.06108.marex@denx.de \
    --to=marex@denx.de \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.