[U-Boot] [PATCH 2/4] cache_v7: Check for dcache enablement in dcache flush functions

R, Sricharan
2012-06-18T14:13:07Z

Hi Tom,

On Fri, Jun 15, 2012 at 8:50 PM, Tom Rini <trini@ti.com> wrote:
> On 06/15/2012 08:18 AM, R, Sricharan wrote:
>> Hi,
>> [snip..]
>>>>>> ? ?If it is a problem with unaligned regions, then that is the only
>>>>>> thing to be fixed
>>>>>> ? right ?. Just trying to understand why this change is required ?
>>>>>
>>>>> The problem is that within the USB/network/filesystem stacks we have a
>>>>> lot of not cache safe alignments apparently. ?Without this every '#' of
>>>>> a tftp gives a screen full of error printfs. ?So tftp'ing a kernel takes
>>>>> minutes, not seconds, to complete.
>>>>>
>>>> ?Ok,but when buffers are not aligned
>>>> ? ?isn't that you are going to have coherency problems ?
>>>
>>> Exactly. ?USB requires dcache to be turned off today. ?With it turned
>>> off it spams these messages making tftp to an aligned address take
>>> minutes because the console is busy printing all of these messages about
>>> flushes it didn't need to do. ?The alternative is to build
>>> omap4/omap5/etc with dcache disabled or USB disabled.
>>>
>> ? ? Ok, but who is calling cache maintenance in your case after
>> ? ?turning off caches ?
>
> The USB stack currently.

Ok, in that case if
1) Alignment issue has to be fixed USB stack, (or)

2) Better to turn off caches when say USB-EHCI is enabled ?
(or)

3) Turn of caches until cache library is fixed so that
we will not require any maintenance after turning it off.
( I will work on this some time, this week)

I am not sure which one to do, but definitely we should not
prevent it from executing as in the above patch. This may
lead to other issues.

Thanks,
Sricharan