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

Tom Rini tom.rini at gmail.com
Sun Nov 27 17:41:35 CET 2011


On Sun, Nov 27, 2011 at 8:09 AM, Wolfgang Denk <wd at denx.de> wrote:
> Dear Ilya Yanok,
>
> In message <1321048618-20616-1-git-send-email-yanok at emcraft.com> you wrote:
>> DaVinci EMAC driver has no support for running with D-Cache enabled so
>> disable D-Cache on all DaVinci boards with EMAC device.
>>
>> Signed-off-by: Ilya Yanok <yanok at emcraft.com>
>> ---
>>
>> I can't test it on any DaVinci boards right now but my understanding
>> is that currently EMAC driver can't work properly with D-Cache enabled.
>>
>>  include/configs/da830evm.h          |    1 +
>>  include/configs/davinci_dm365evm.h  |    1 +
>>  include/configs/davinci_dm6467evm.h |    1 +
>>  include/configs/davinci_dvevm.h     |    1 +
>>  include/configs/davinci_schmoogie.h |    1 +
>>  include/configs/davinci_sffsdr.h    |    1 +
>>  include/configs/davinci_sonata.h    |    1 +
>>  include/configs/ea20.h              |    1 +
>>  include/configs/hawkboard.h         |    1 +
>>  9 files changed, 9 insertions(+), 0 deletions(-)
>
> Why do we have to permanently disable the data cache just because the
> network driver is broken?  USB is also broken, and probably other
> drivers as well.

To be clear, the problem is that today the driver is broken (not cache
safe) and this series of patches fixes that problem.  In doing so we
expose that arm926ejs doesn't have complete cache support today.

> But this does not man we cannot use the data cache for other things.
> Actually we WANT to be able to use it, so it is counter-productive to
> disable it.

But cache support is incomplete is the problem.  None of the flushing
operations exist.

> It should be sufficient to switch the cache off ("dc off") before
> runnign any network related commands (and you want to make sure to
> switch it on again afterwards).

We can't because we can't compile the driver, once we make it cache
safe.  It's not today and at least anecdotally the driver doesn't work
today on these platforms unless you turn off dcache.

As a tangent, is pushing new network drivers that aren't cache safe OK
if we just say that you need to turn off the dcache before using?

-- 
Tom


More information about the U-Boot mailing list