From: Albert ARIBAUD <albert.aribaud@free.fr>
To: u-boot@lists.denx.de
Subject: [U-Boot] arm: Activating dcache breaks 'usb start' and 'tftpboot' on jadecpu
Date: Fri, 03 Dec 2010 17:34:57 +0100 [thread overview]
Message-ID: <4CF91C31.8060005@free.fr> (raw)
In-Reply-To: <20101203153310.8BA14CD138A@gemini.denx.de>
Le 03/12/2010 16:33, Wolfgang Denk a ?crit :
>> What is the reason that special handling is needed when dcache is
>> enabled? If a driver doesn't use any DMA there should be no need as the
>> dcache is only enabled for the RAM and not for any memory mapped IO if I
>> understand the code in arch/arm/lib/cache-cp15.c right.
>
> On ARM, device write accesses are typically just store instructions
> (in C: assignments to a volatile pointer). With caches on, these
> accesses will be - guess what? cached, i. e. they are NOT written to
> the device, at least not immediately. And if you repeatedly read a
> register (like when polling for some status bit to change) these
> accesses will be cached, too.
In addition to making sure that register reads/write are not bitten by
caching, note that some controllers have DMA capabilities which require
proper cache handling for DMA memory buffers -- typically flushing them
from cache before a DMA to the device, and invalidating their cache
entries after a DMA from the device.
> Best regards,
>
> Wolfgang Denk
Amicalement,
--
Albert.
next prev parent reply other threads:[~2010-12-03 16:34 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-12-03 14:27 [U-Boot] arm: Activating dcache breaks 'usb start' and 'tftpboot' on jadecpu Matthias Weißer
2010-12-03 14:47 ` Wolfgang Denk
2010-12-03 15:09 ` Matthias Weißer
2010-12-03 15:33 ` Wolfgang Denk
2010-12-03 16:34 ` Albert ARIBAUD [this message]
2010-12-03 16:48 ` Matthias Weißer
2010-12-03 16:43 ` Matthias Weißer
2010-12-03 16:55 ` Wolfgang Denk
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=4CF91C31.8060005@free.fr \
--to=albert.aribaud@free.fr \
--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.