[U-Boot] [RFC/PATCH] davinci: disable dcache on boards with EMAC

Wolfgang Denk wd at denx.de
Sun Nov 27 20:36:12 CET 2011


Dear Ilya,

In message <4ED28DFD.7090805 at emcraft.com> you wrote:
> 
> > I am aware of this. I don't think I rejected your driver patch.
> 
> Well, that wasn't you. But the series were rejected because of DaVinci
> build failure. Now, with this patch rejected, the complete series is
> going to be rejected again...

This is something I ant to avoid....

> Thinking once more about this... Can't we add stub implementation of
> cache functions for arm926ejs? Something like this:
> 
> void flush_dcache_range(...)
> {
> 	printf("Cache operations are not implemented, consider using 'dc off'
> command or (better) implement cache support\n");
> }

Yes, exactly.  And eventually also call do_dcache(...OFF...) the first
time any such function stub gets called.

> This will preserve status quo: we can leave D-Cache enabled on DaVinci
> but user will have to disable it by hand before using network. On AM35x
> network will work with caches enabled.

That would definitely be best.

> >> Alternatively we can just drop the driver cache-related fix, leave the
> >> driver broken and work with the network with "dc off" trick on AM35x also.
> >>
> >> Do you think this will be better?
> > 
> > I think we have a number of different proposals here.  My assessment
> > is:
> > 
> > Worst:  permanently disable data chache on all boards
> > 
> > slightly better:  leave the driver broken and use "dc off" before
> >         running any network related commands
> > 
> 
> Don't you think that adding stub implementation for cache functions on
> arm926ejs and fixing the driver is better?

Yes, that would be the 4th approach, listed as "much better" :-)

Best regards,

Wolfgang Denk

--
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
By the way, ALL software projects are done by iterative  prototyping.
Some companies call their prototypes "releases", that's all.


More information about the U-Boot mailing list