public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Tom Rini <trini@ti.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v3 0/6] USB and cache related fixes
Date: Wed, 20 Jun 2012 09:21:17 -0700	[thread overview]
Message-ID: <1340209283-3404-1-git-send-email-trini@ti.com> (raw)
In-Reply-To: <1339710323-20014-1-git-send-email-trini@ti.com>

Hey all,

In commit b8adb12 the cache flushing behavior was changed for the EHCI
stack.  This change showed a few different problems on TI platforms
(where our cacheline size is 64 not 32).  First, the dcache_off call
that ehci-omap had been doing was now not happening soon enough to paper
over the cache issues.  This call is removed in patch 1.  The second
patch deal with the same problem in EHCI and MUSB.  The USB spec says
that 32 bytes is the minimum alignment but we need larger alignment when
the cache is larger.  Note that we can't use MAX() here as gcc doesn't
allow that expansion inside of align(..).  Patches 3 to 6 disable dcache
support at build time on all platforms that enable CONFIG_USB_EHCI_OMAP
because performing a run-time 'dcache off' operation leaves USB unusable
due to the unaligned flushes that are still attempted.  Run-time testing
on an omap3_beagle shows a very slight (less than half a second, checked
with grabserial) increase in load time for a 3.5-rc3 kernel image from
SD card.  Note that otherwise a tftp load takes minutes to complete
rather than seconds due to all of the console spam.

Tested on omap3_beagle (which was previously broken) and a MAKEALL -a arm
looks good too.

Changes in v3:
- Drop the cache_v7.c change and instead make all CONFIG_USB_EHCI_OMAP boards
  disable DCACHE at build time.

Changes in v2:
- Condense last two patches into one that puts the test into <usb.h>

-- 
Tom

  parent reply	other threads:[~2012-06-20 16:21 UTC|newest]

Thread overview: 85+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-14 19:01 [U-Boot] [PATCH 0/4] USB and cache related fixes Tom Rini
2012-06-14 19:01 ` [U-Boot] [PATCH 1/4] ehci-omap: Do not call dcache_off from omap_ehci_hcd_init Tom Rini
2012-06-14 21:57   ` Marek Vasut
2012-06-14 22:14     ` Tom Rini
2012-06-14 19:01 ` [U-Boot] [PATCH 2/4] cache_v7: Check for dcache enablement in dcache flush functions Tom Rini
2012-06-14 22:00   ` Marek Vasut
2012-06-14 22:11     ` Tom Rini
2012-06-14 23:17       ` Marek Vasut
2012-06-15  5:48   ` R, Sricharan
2012-06-15 14:07     ` Tom Rini
2012-06-15 14:25       ` Marek Vasut
2012-06-15 14:30         ` Tom Rini
2012-06-15 14:33           ` Marek Vasut
2012-06-15 14:48       ` R, Sricharan
2012-06-15 15:00         ` Tom Rini
2012-06-15 15:18           ` R, Sricharan
2012-06-15 15:20             ` Tom Rini
2012-06-18 14:13               ` R, Sricharan
2012-06-18 15:23                 ` Tom Rini
2012-06-20 16:46         ` Aneesh V
2012-06-21  9:25           ` Sricharan R
2012-06-21 15:23             ` R, Sricharan
2012-06-27 23:40               ` Aneesh V
2012-06-28  5:49                 ` R, Sricharan
2012-06-27 23:17             ` Aneesh V
2012-06-14 19:01 ` [U-Boot] [PATCH 3/4] ehci-hcd.c: Add a new USB_DMA_MINALIGN define for cache alignment Tom Rini
2012-06-14 19:29   ` Marek Vasut
2012-06-14 19:30     ` Tom Rini
2012-06-14 19:41       ` Marek Vasut
2012-06-14 19:54         ` Tom Rini
2012-06-14 20:02           ` Marek Vasut
2012-06-14 19:01 ` [U-Boot] [PATCH 4/4] musb_core.h: " Tom Rini
2012-06-14 21:45 ` [U-Boot] [PATCH v2 0/3] USB and cache related fixes Tom Rini
2012-06-14 21:45   ` [U-Boot] [PATCH v2 1/3] ehci-omap: Do not call dcache_off from omap_ehci_hcd_init Tom Rini
2012-06-14 21:45   ` [U-Boot] [PATCH v2 2/3] cache_v7: Check for dcache enablement in dcache flush functions Tom Rini
2012-06-14 21:45   ` [U-Boot] [PATCH v2 3/3] ehci-hcd.c, musb_core, usb.h: Add USB_DMA_MINALIGN define for cache alignment Tom Rini
2012-06-20 16:21   ` Tom Rini [this message]
2012-06-20 16:21     ` [U-Boot] [PATCH v3 1/6] ehci-omap: Do not call dcache_off from omap_ehci_hcd_init Tom Rini
2012-06-20 16:21     ` [U-Boot] [PATCH v3 2/6] ehci-hcd.c, musb_core, usb.h: Add USB_DMA_MINALIGN define for cache alignment Tom Rini
2012-06-20 19:00       ` Marek Vasut
2012-06-20 19:15         ` Tom Rini
2012-06-20 21:15           ` Marek Vasut
2012-06-20 22:07             ` Tom Rini
2012-06-21  0:09               ` Marek Vasut
2012-06-20 16:21     ` [U-Boot] [PATCH v3 3/6] mcx: Disable DCACHE since USB EHCI is enabled Tom Rini
2012-06-20 16:21     ` [U-Boot] [PATCH v3 4/6] omap3_beagle: " Tom Rini
2012-06-20 16:21     ` [U-Boot] [PATCH v3 5/6] omap4_panda: " Tom Rini
2012-06-20 16:21     ` [U-Boot] [PATCH v3 6/6] tam3517-common: " Tom Rini
2012-06-20 22:14     ` [U-Boot] [PATCH v4 0/6] USB and cache related fixes Tom Rini
2012-06-20 22:14       ` [U-Boot] [PATCH v4 1/6] ehci-omap: Do not call dcache_off from omap_ehci_hcd_init Tom Rini
2012-06-20 22:14       ` [U-Boot] [PATCH v4 2/6] ehci-hcd.c, musb_core, usb.h: Add USB_DMA_MINALIGN define for cache alignment Tom Rini
2012-06-20 22:14       ` [U-Boot] [PATCH v4 3/6] mcx: Disable DCACHE since USB EHCI is enabled Tom Rini
2012-06-27 22:28         ` Ilya Yanok
2012-06-27 22:48           ` Marek Vasut
2012-06-28 13:57             ` Ilya Yanok
2012-06-28 14:37               ` Marek Vasut
2012-06-28 14:57                 ` Ilya Yanok
2012-06-28 15:41                   ` Marek Vasut
2012-06-30 15:51                     ` Ilya Yanok
2012-06-30 19:27                       ` Marek Vasut
2012-07-03 20:10                         ` Ilya Yanok
2012-07-03 21:23                           ` Marek Vasut
2012-06-28 17:29                 ` Tom Rini
2012-06-28 22:01                   ` Marek Vasut
2012-06-28 22:34                     ` Tom Rini
2012-06-28 22:36                       ` Marek Vasut
2012-06-28 23:01                         ` Tom Rini
2012-06-29  0:54                           ` Marek Vasut
2012-06-29  2:14                             ` Tom Rini
2012-06-30 15:55                             ` Ilya Yanok
2012-06-30 19:28                               ` Marek Vasut
2012-07-03 20:13                                 ` Ilya Yanok
2012-07-03 20:43                                   ` Tom Rini
2012-07-03 21:12                                     ` Ilya Yanok
2012-07-04  0:14                                       ` Marek Vasut
2012-07-04 13:08                                         ` Ilya Yanok
2012-07-03 21:24                                     ` Marek Vasut
2012-06-20 22:14       ` [U-Boot] [PATCH v4 4/6] omap3_beagle: " Tom Rini
2012-06-20 22:14       ` [U-Boot] [PATCH v4 5/6] omap4_panda: " Tom Rini
2012-06-21 11:19         ` Sricharan R
2012-06-21 16:40           ` R, Sricharan
2012-06-20 22:14       ` [U-Boot] [PATCH v4 6/6] tam3517-common: " Tom Rini
2012-06-14 22:02 ` [U-Boot] [PATCH 0/4] USB and cache related fixes Marek Vasut
2012-06-14 22:13   ` Tom Rini
2012-06-14 23:17     ` Marek Vasut

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=1340209283-3404-1-git-send-email-trini@ti.com \
    --to=trini@ti.com \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox