[BUG] v7_coherent_kern_range broken on big.LITTLE
Will Deacon
will.deacon at arm.com
Thu Feb 14 12:16:15 EST 2013
Hi Tixy,
On Thu, Feb 14, 2013 at 05:07:43PM +0000, Jon Medhurst (Tixy) wrote:
> The function v7_coherent_kern_range uses the macro icache_line_size to
> read the current CPUs icache line size for the purpose of invalidating
> all cache lines in the given range.
>
> Unfortunately, on the TC2 big.LITTLE test chip, the A15 icache line size
> is 64 bytes, but the A7 size is only 32 bytes. So when the function
> executes on the A15 it will miss out every alternate cache line for the
> A7.
There is a signal (IMINLN) to the core which allows A15 to behave as though
it has a 32-byte line size and this should be driven correctly for big/little.
Can you confirm that on your TC2 the I-line size is advertised differently
depending on the cluster? This really shouldn't be the case.
Will
More information about the linux-arm-kernel
mailing list