mirror of https://github.com/acidanthera/audk.git
ArmPkg: apply Cortex-A57 errata
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Leo Duran <leo.duran@amd.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
This commit is contained in:
parent
da6ae66641
commit
7e5a6e394c
|
@ -40,12 +40,15 @@ ArmCpuSetup (
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// If CPU is CortexA57 r0p0 apply Errata: 806969
|
// If CPU is CortexA57 r0p0 apply Errata workarounds
|
||||||
//
|
//
|
||||||
if ((ArmReadMidr () & ((ARM_CPU_TYPE_MASK << 4) | ARM_CPU_REV_MASK)) ==
|
if ((ArmReadMidr () & ((ARM_CPU_TYPE_MASK << 4) | ARM_CPU_REV_MASK)) ==
|
||||||
((ARM_CPU_TYPE_A57 << 4) | ARM_CPU_REV(0,0))) {
|
((ARM_CPU_TYPE_A57 << 4) | ARM_CPU_REV(0,0))) {
|
||||||
// DisableLoadStoreWB
|
|
||||||
ArmSetCpuActlrBit (1ULL << 49);
|
// Errata 806969: DisableLoadStoreWB (1ULL << 49)
|
||||||
|
// Errata 813420: Execute Data Cache clean as Data Cache clean/invalidate (1ULL << 44)
|
||||||
|
// Errata 814670: disable DMB nullification (1ULL << 58)
|
||||||
|
ArmSetCpuActlrBit ( (1ULL << 49) | (1ULL << 44) | (1ULL << 58) );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue