On 29 May 2015 at 14:33, Ard Biesheuvel <ard.biesheu...@linaro.org> wrote: > The current GIC revision detection code infers the GIC revision from > the AA64PFR0_EL1.GIC feature bit that tells us whether the GIC system > register interface is implemented in the hardware, and then proceeds > to attempt and enable it. > > The library containing this code deliberately does not cache the > detected revision since it may execute in the SEC phase and may > be running from NOR flash and not RAM. > > However, since the detection code runs very often, and is quite > heavy-weight when running under virtualization (especially KVM), > this series refactors the GIC revision detection to: > - use fewer system register accesses if possible > - provide an alternative that does cache the detected revision > - use the DT supplied revision when executing on a DT based platform > > > Ard Biesheuvel (7): > ArmPkg: reduce sysreg access count in GIC revision probe > ArmPkg: merge ArmGicV[23]Lib.h into ArmGicLib.h > ArmPkg: split off ArmGicArchLib from ArmGicLib > ArmPkg: copy ArmGicArchLib to ArmGicArchSecLib > ArmPkg: cache detected revision in ArmGicArchLib > ArmVirtPkg: record GIC revision in dynamic PCD > ArmVirtPkg: implement DT-based ArmGicArchLib >
Hello Olivier, May we please have your input regarding patches #2 and #3 in this series? Those are prerequisites for patch #7, which is essentially both a performance and a correctness fix for ArmVirtPkg. (Patches #4 and #5 only affect bare-metal platforms, and are not depended upon by subsequent patches, but I'd still like your opinion on those as well) -- Ard. ------------------------------------------------------------------------------ _______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel