ARM: Add workaround for Cortex-A9 errata 794072
A short loop including a DMB instruction might cause a denial of service on another processor which executes a CP15 broadcast operation. Exists on r1, r2, r3, r4 revisions. Signed-off-by: Nitin Garg <nitin.garg@freescale.com> Acked-by: Dirk Behme <dirk.behme@de.bosch.com>
This commit is contained in:
parent
1a9df13d5b
commit
f71cbfe3ca
1
README
1
README
@ -566,6 +566,7 @@ The following options need to be configured:
|
||||
CONFIG_ARM_ERRATA_742230
|
||||
CONFIG_ARM_ERRATA_743622
|
||||
CONFIG_ARM_ERRATA_751472
|
||||
CONFIG_ARM_ERRATA_794072
|
||||
|
||||
If set, the workarounds for these ARM errata are applied early
|
||||
during U-Boot startup. Note that these options force the
|
||||
|
@ -205,7 +205,7 @@ ENTRY(cpu_init_cp15)
|
||||
mcr p15, 0, r0, c1, c0, 0 @ write system control register
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_ARM_ERRATA_742230
|
||||
#if (defined(CONFIG_ARM_ERRATA_742230) || defined(CONFIG_ARM_ERRATA_794072))
|
||||
mrc p15, 0, r0, c15, c0, 1 @ read diagnostic register
|
||||
orr r0, r0, #1 << 4 @ set bit #4
|
||||
mcr p15, 0, r0, c15, c0, 1 @ write diagnostic register
|
||||
|
Loading…
Reference in New Issue
Block a user