On 11/26/15 13:10, Ard Biesheuvel wrote: > As pointed out by Eugene, the ArmPlatformPkg implementation of > PeiServicesTablePointerLib violates the PI sec, since it uses > ArmPlatformGlobalVariableLib to store the PEI services table pointer > rather than the thread ID cpu registers as the spec requires. > > So instead, move to the ArmPkg version of this library, which does > adhere to the PI spec. > > Reported-by: Eugene Cohen <eug...@hp.com> > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Ard Biesheuvel <ard.biesheu...@linaro.org> > --- > ArmVirtPkg/ArmVirt.dsc.inc | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/ArmVirtPkg/ArmVirt.dsc.inc b/ArmVirtPkg/ArmVirt.dsc.inc > index 8626919f3a2c..b3066d298009 100644 > --- a/ArmVirtPkg/ArmVirt.dsc.inc > +++ b/ArmVirtPkg/ArmVirt.dsc.inc > @@ -156,7 +156,7 @@ [LibraryClasses.common.SEC] > > SerialPortLib|ArmVirtPkg/Library/FdtPL011SerialPortLib/EarlyFdtPL011SerialPortLib.inf > HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf > PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf > - > PeiServicesTablePointerLib|ArmPlatformPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf > + > PeiServicesTablePointerLib|ArmPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf > > MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf > > [LibraryClasses.common.PEI_CORE] > @@ -173,7 +173,7 @@ [LibraryClasses.common.PEI_CORE] > > ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf > > > ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Pei/PeiArmPlatformGlobalVariableLib.inf > - > PeiServicesTablePointerLib|ArmPlatformPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf > + > PeiServicesTablePointerLib|ArmPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf > > SerialPortLib|ArmVirtPkg/Library/FdtPL011SerialPortLib/EarlyFdtPL011SerialPortLib.inf > > [LibraryClasses.common.PEIM] > @@ -191,7 +191,7 @@ [LibraryClasses.common.PEIM] > > ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf > > > ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Pei/PeiArmPlatformGlobalVariableLib.inf > - > PeiServicesTablePointerLib|ArmPlatformPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf > + > PeiServicesTablePointerLib|ArmPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf > > SerialPortLib|ArmVirtPkg/Library/FdtPL011SerialPortLib/EarlyFdtPL011SerialPortLib.inf > > [LibraryClasses.common.DXE_CORE] >
Out of curiosity -- do you know why ArmPlatformPkg's (non-conformant) version had been written in the first place? Or was it the first implementation, and the (conformant) ArmPkg version came about second? Reviewed-by: Laszlo Ersek <ler...@redhat.com> Thanks Laszlo _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel