[U-Boot] [PATCH] nds32: split common cache access from cpu into lib

Mike Frysinger
2012-07-19T13:48:51Z

On Thursday 19 July 2012 05:02:21 Marek Vasut wrote:
> Dear Mike Frysinger,
> > On Sunday 15 July 2012 04:12:45 Marek Vasut wrote:
> > > Dear Macpaul Lin,
> > > > +void flush_cache(unsigned long addr, unsigned long size)
> > > > +{
> > > > + flush_dcache_range(addr, addr + size);
> > > > + invalidate_icache_range(addr, addr + size);
> > >
> > > You probably want to flush dcache in here and that's it.
> >
> > i don't think so ... i think that's what flush_dcache_range() is for.
> > and our common/cmd_*.c files assume that flush_cache() will invalidate
> > icache (see the bootm/load funcs that write executable content into
> > memory and then flush the regions).
>
> Than it's borked on arm926ejs too ... ?

if it doesn't flush icache in the flush_cache() function, then i would say so

sounds like we should rip all this cache stuff out of common.h and into like
cache.h so we can document the API expectations. i think Wolfgang was against
this before, but maybe that was just creating a header for one specific cache
macro and not all cache stuff ?
-mike
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20120719/813361dc/attachment.pgp>