[dropped ALKML, added Pawel]

On Fri, Feb 15, 2013 at 12:06:25PM +0000, Jon Medhurst (Tixy) wrote:
> On Fri, 2013-02-15 at 10:33 +0000, Lorenzo Pieralisi wrote:
> > On Fri, Feb 15, 2013 at 10:04:37AM +0000, Jon Medhurst (Tixy) wrote:
> > > On Thu, 2013-02-14 at 17:16 +0000, Will Deacon wrote:
> > > > 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.
> > > 
> > > How do we set that signal? Is that something we have to set up in Linux
> > > or is it something that we expect the Firmware to set up?
> > 
> > If I am not mistaken, SCC register at offset 0x400 (bit 7) allows IMINLN to
> > be forced to 0 (ie Instruction Cache minimum line size == 32 bytes).
> > 
> > This can be done through board.txt so that it is set up as we want.
> 
> According to the TRM for TC2 the default value for that register is
> 0x33330c80, so adding the line "SCC: 0x400 0x33330c00" and incrementing
> TOTALSCCS does the trick, and the A15's now report an icache size of 32.
> 
> We'll have to get everyone with a TC2 to make that change then?

It looks like that's what we should do unless there is a strong reason
against that. If we use TC2 as A15 cluster only we should set IMINLN to 1
though.

> As this is a TC2 issue, and not Linux related, shall we drop
> linux-arm-kernel from all future replies to avoid the noise? I've added
> linaro-dev to the cc list so this continues to get public visibility.

Done.

Lorenzo


_______________________________________________
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev

Reply via email to