[U-Boot] [PATCH] nios2: convert cache flush to use dm cpu data

Thomas Chou thomas at wytron.com.tw
Sat Oct 10 08:32:09 CEST 2015


Hi Marek,

On 10/10/2015 01:55 PM, Thomas Chou wrote:
> Hi Marek,
>
> On 10/09/2015 10:42 PM, Marek Vasut wrote:
>>> In nios2, we don't skip the flushing when the inputs are not aligned
>>> like that of arm926ejs. We always flush all cache lines in the range,
>>> even if a single byte to flush is in request. So the inputs are rounded
>>> to get the lower and upper cache lines range inside the cache flush
>>> functions. The caller need not be aware of the detail.
>>
>> This is incorrect and all the places which produce these unaligned cache
>> operations must be fixed.
>
> I take a look into the cache flush operations in every arch of u-boot.
> It turns out that the arm926ejs is the only platform that does such
> cache line range check and skip. All other ARM and all other arch don't.
> And the cache flush in Linux don't.
>

+arm11, which is based on the same code.

I see your patch on this range check. I would prefer that the details of 
cache line configuration be kept inside the cache flush operators, and 
need not be exposed to drivers. As drivers might be used by different 
arch with different cache implementation, L1,L2..etc. It is not good for 
drivers to adjust the flush range before passing to cache flush operators.

Best regards,
Thomas


More information about the U-Boot mailing list