powerpc/ppc476: Disable BTAC
This patch disables the branch target address CAM which under specific circumstances may cause the processor to skip execution of 1-4 instructions. This fixes IBM Erratum #47. Signed-off-by: Alistair Popple <alistair@popple.id.au> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
parent
763fe0addb
commit
97b3be1e94
|
@ -1210,10 +1210,12 @@ clear_utlb_entry:
|
||||||
|
|
||||||
/* We configure icbi to invalidate 128 bytes at a time since the
|
/* We configure icbi to invalidate 128 bytes at a time since the
|
||||||
* current 32-bit kernel code isn't too happy with icache != dcache
|
* current 32-bit kernel code isn't too happy with icache != dcache
|
||||||
* block size
|
* block size. We also disable the BTAC as this can cause errors
|
||||||
|
* in some circumstances (see IBM Erratum 47).
|
||||||
*/
|
*/
|
||||||
mfspr r3,SPRN_CCR0
|
mfspr r3,SPRN_CCR0
|
||||||
oris r3,r3,0x0020
|
oris r3,r3,0x0020
|
||||||
|
ori r3,r3,0x0040
|
||||||
mtspr SPRN_CCR0,r3
|
mtspr SPRN_CCR0,r3
|
||||||
isync
|
isync
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue