[U-Boot] [PATCH 3/3 v2] ARM: ARM926EJS - Add cache operations

Aneesh V
2011-08-19T10:43:30Z

Hi Marek,

On Friday 19 August 2011 03:16 PM, Marek Vasut wrote:
> On Friday, August 19, 2011 11:37:29 AM Aneesh V wrote:
>> Hi Hong,
>>
>> On Friday 19 August 2011 02:53 PM, Hong Xu wrote:
>>> Add a new file arch/arm/cpu/arm926ejs/cache.c and put cache operations
>>> into this file.
>>
>> How about converting as much as possible of these to armv5/armv6 generic
>> code as I mentioned in this thread:
>>
>> http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/105385/focus=105526
>>
>> On a quick look everything below except the "flush_dcache_all()" seems
>> to be armv5 generic.
>
> I'd be _VERY_ careful here. And this "seems" doesn't sound very convincing. Are
> you dead sure it won't break any v5 CPU we support?
>

What Hong has used is operations mentioned in the ARMv5 architecture
and these are not marked as IMPLEMENTATION DEFINED. So, compliant
implementations should implement those CP15 operations. They may
enhance the operations by adding their own like ARM926EJS seems to be
doing with 'flush d-cache all'.

However, I think that's immaterial. Hong can provide this as a library
and define a CONFIG_* flag to enable it. Let the platform maintainers
decide whether to use it or not. IMHO, it will definitely be an
improvement over what we have today.

best regards,
Aneesh