On 01/14/2015 05:46 AM, Bhupesh Sharma wrote: > This patch adds basic constructs in the ARMv8 u-boot code > to handle and apply Cortex-A57 specific erratas. > > As and example, the framework showcases how erratas 833069, 826974 > and 828024 can be handled and applied. > > Later on this framework can be extended to include other > erratas. > > Signed-off-by: Bhupesh Sharma <bhupesh.sha...@freescale.com> > --- > Changes from v1: > - Addressed York's comment about x29 usage and calling the > core errata fxup function before the lowlevel_init function > is called. > > arch/arm/cpu/armv8/start.S | 51 > ++++++++++++++++++++++++++++++++++++++++++ > arch/arm/include/asm/macro.h | 20 +++++++++++++++++ > 2 files changed, 71 insertions(+) > > diff --git a/arch/arm/cpu/armv8/start.S b/arch/arm/cpu/armv8/start.S > index 4b11aa4..df532f9 100644 > --- a/arch/arm/cpu/armv8/start.S > +++ b/arch/arm/cpu/armv8/start.S > @@ -67,6 +67,9 @@ reset: > msr cpacr_el1, x0 /* Enable FP/SIMD */ > 0: > > + /* Apply ARM core specific erratas */ > + bl apply_core_errata > + > /* > * Cache/BPB/TLB Invalidate > * i-cache is invalidated before enabled in icache_enable() > @@ -97,6 +100,54 @@ master_cpu: > > /*-----------------------------------------------------------------------*/ > > +WEAK(apply_core_errata) > + > + /* For now, we support Cortex-A57 specific errata only */ > + > + /* Check if we are running on a Cortex-A57 core */ > + branch_if_a57_core x0, 1f > + b 2f > +1: > + bl apply_a57_core_errata > + > +2: > + ret > +ENDPROC(apply_core_errata) > +
Bhupesh, Have you tested the new code? I don't think it handles LR correctly. Your code will be stuck. York _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot