This is for debug purpose. I think UINT32 is OK if AARCH64 can operate 32bit value.
Thanks Liming > -----Original Message----- > From: Laszlo Ersek [mailto:[email protected]] > Sent: Saturday, October 21, 2017 1:19 AM > To: Ard Biesheuvel <[email protected]> > Cc: Gao, Liming <[email protected]>; [email protected]; Leif > Lindholm <[email protected]> > Subject: Re: [edk2] [PATCH] ArmPlatformPkg/PrePeiCore: seed temporary stack > before entering PEI core > > On 10/20/17 18:52, Ard Biesheuvel wrote: > > On 20 October 2017 at 17:51, Laszlo Ersek <[email protected]> wrote: > >> On 10/20/17 18:39, Ard Biesheuvel wrote: > >>> On 20 October 2017 at 17:37, Gao, Liming <[email protected]> wrote: > >>>> Ard: > >>>> This case is to share the same value between PeiCore and SecCore. I > >>>> also think it will be better to define one fixed PCD in > MdeModulePkg.dec for this value. Could you submit bugzillar to catch this > issue first? > >>>> > >>> > >>> Certainly! > >> > >> Would it be possible to define the PCD as UINT32, and task 64-bit SEC > >> (and PEI_CORE) code to first construct the wider value manually (in a > >> register or otherwise)? > >> > >> Just thinking out loud. > >> > > > > Could you think the reasoning behind that out loud as well? > > Haha, good stab :) Sure. > > In your patch you have: > > +#define INIT_CAR_VALUE 0x5AA55AA55AA55AA5 > > for 64-bit, and > > +#define INIT_CAR_VALUE 0x5AA55AA5 > > for 32-bit. > > Both 64-bit assembly code in SEC, and 64-bit C-code in the PEI_CORE, can > easily compose the large value from the small value, starting from > FixedPcdGet32(). The alternatives are: > > - asking the 32-bit assembly code to truncate the 64-bit constant -- it > won't compile, > > - defining *two* FixedAtBuild PCDs, one for 32-bit, another for 64-bit > SEC -- an idea probably not universally liked. > > ... When I originally started writing my previous email, I even thought > about introducing the PCD as UINT16 :) But then I realized, if any > platform lacks *some* 32-bit mode when it sets up the stack in assembly, > for C-language entry, then the platform won't be supported by edk2. > > Thanks > Laszlo _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

