[POWERPC] 4xx: Fix problem with new TLB storage attibute fields on 440x6 core
commita96df496ed1496f3e52a9b3c860cf967aa48adda
authorStefan Roese <sr@denx.de>
Mon, 5 May 2008 06:53:19 +0000 (5 16:53 +1000)
committerJosh Boyer <jwboyer@linux.vnet.ibm.com>
Tue, 6 May 2008 15:36:20 +0000 (6 10:36 -0500)
tree6cf14e3dcc3888181bc7dd074dfed658726fbcbf
parent9185ef6787f1c8f1c06aa0cb3c7746fb4f101f50
[POWERPC] 4xx: Fix problem with new TLB storage attibute fields on 440x6 core

The new 440x6 core used on AMCC 460EX/GT introduces new storage attibure
fields to the TLB2 word. Those are:

Bit  11   12   13   14   15
     WL1  IL1I IL1D IL2I IL2D

With these bits the cache (L1 and L2) can be configured in a more flexible
way, instruction- and data-cache independently now. The "old" I and W bits
are still available and setting these old bits will automically set these
new bits too (for backward compatibilty).

The current code does not clear these fields resulting in disabling the cache
by chance. This patch now makes sure that these new bits are cleared when
the TLB2 word is written.

Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
arch/powerpc/kernel/head_44x.S
include/asm-powerpc/pgtable-ppc32.h