Hi Marcello,
The patch passed all checks now .https://github.com/tianocore/edk2/pull/1109
And I just send the patch out for code review. Please comments if you have question.
I briefly reviewed your secureboot work, both BlSMMStoreDxe.inf and SecureBootEnrollDefaultKeys are DXE driver, I don’t see any dependency to PEI.
And here is my though for the overall flow for the default key enrollment:
- Bootloader pass the NVS variable region to UEFI payload via HOB
- Bootloader might provision the default keys in variable region.
- UEFI payload retrieve the variable region from HOB.
- This could be done via a PlatformSupportLib instance, or add to ParseLib.
- UEFI payload BlSupportDxe modules could set variable related PCDs if the variable HOB found.
- UEFI payload FVB driver or a new driver (SecureBootEnrollDefaultKeys in your case) could check if variable region is initialized. UEFI payload could setup the default Keys only when the variable region is not initialized. This should only happens once if the bootloader doesn’t provision default keys.
- Use the EDKII variable driver should work.
Feel free to contact me if you want to discuss it further.
Thanks,
Guo
From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Marcello Sylvester Bauer
Sent: Tuesday, November 10, 2020 6:24 AM
To: Dong, Guo <guo.dong@intel.com>
Cc: devel@edk2.groups.io; Ma, Maurice <maurice.ma@intel.com>; patrick.rudolph@9elements.com; You, Benjamin <benjamin.you@intel.com>
Subject: Re: [edk2-devel] [PATCH v2 0/1] UefiPayloadPkg: Set default PciBaseSize on Ia32
Hi Guo,
> Removing the PEI phase could simplify the UEFI payload, the PEI FV will be replaced by a single UefiPayloadEntry module which only does minimal work and passes control to DXE core. So we don’t need have a PEI core and other PEI modules in UEFI payload. It would reduce payload size and improve the boot performance.
Okay, this makes very much sense. Is there an approximate estimate of when it will be finished? It would be great if we could still merge this patch anyway somehow.
> I don’t know how your upcoming patches and your secureboot works in UEFI payload PEI. I could take a look and give comments if you have the change list.
It is still WIP but could be adapted: https://github.com/9elements/edk2/tree/feature/secureboot
Thanks,
Marcello
On Tue, Nov 10, 2020 at 5:14 AM Dong, Guo <guo.dong@intel.com> wrote:
Hi Marcello,
Removing the PEI phase could simplify the UEFI payload, the PEI FV will be replaced by a single UefiPayloadEntry module which only does minimal work and passes control to DXE core. So we don’t need have a PEI core and other PEI modules in UEFI payload. It would reduce payload size and improve the boot performance.
I don’t know how your upcoming patches and your secureboot works in UEFI payload PEI. I could take a look and give comments if you have the change list.
Thank you to point out the failure. I will update the patch and create a PR.
Thanks,
Guo
From: Marcello Sylvester Bauer <marcello.bauer@9elements.com>
Sent: Monday, November 9, 2020 3:47 AM
To: Dong, Guo <guo.dong@intel.com>
Cc: devel@edk2.groups.io; Ma, Maurice <maurice.ma@intel.com>; patrick.rudolph@9elements.com; You, Benjamin <benjamin.you@intel.com>
Subject: Re: [edk2-devel] [PATCH v2 0/1] UefiPayloadPkg: Set default PciBaseSize on Ia32
Hi Guo,
Sounds good to remove the IA32 target and stick to a single DSC file. However, Is there an advantage to remove the PEI phase? It breaks many of our upcoming patches, which currently rely on the PEI phase (e.g. SecureBoot support).
In addition to the failed PatchCheck, it does not build on Linux gcc: https://github.com/9elements/edk2/runs/1373473040
thanks,
Marcello
On Sat, Oct 24, 2020 at 12:36 AM Dong, Guo <guo.dong@intel.com> wrote:
Hi Marcello,
It looks there is issue for the CI tool to complete all the checks. So I just closed this PR.
And I just created another PR https://github.com/tianocore/edk2/pull/1046 to remove PEI phase from UEFI payload.
If the new patch is approved, we don’t need this patch to update DSC file.
In the new patch, UEFI payload would use a single DSC file to support X64, IA32X64 and possibly IA32 build.
Please have a look at that PR and let me know if you have any comments.
Thanks,
Guo
From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Guo Dong
Sent: Thursday, October 22, 2020 7:49 PM
To: Marcello Sylvester Bauer <marcello.bauer@9elements.com>; Ma, Maurice <maurice.ma@intel.com>
Cc: devel@edk2.groups.io; patrick.rudolph@9elements.com; You, Benjamin <benjamin.you@intel.com>
Subject: Re: [edk2-devel] [PATCH v2 0/1] UefiPayloadPkg: Set default PciBaseSize on Ia32
Hi Marcello,
Sorry for late response. I created a pull request https://github.com/tianocore/edk2/pull/1044 to merge this patch 2 hours ago.
Hopefully it could be merged soon after all the checks.
Thanks,
Guo
From: Marcello Sylvester Bauer <marcello.bauer@9elements.com>
Sent: Thursday, October 22, 2020 1:25 AM
To: Ma, Maurice <maurice.ma@intel.com>
Cc: devel@edk2.groups.io; patrick.rudolph@9elements.com; Dong, Guo <guo.dong@intel.com>; You, Benjamin <benjamin.you@intel.com>
Subject: Re: [PATCH v2 0/1] UefiPayloadPkg: Set default PciBaseSize on Ia32
Hi,
As already mentioned, this patch fixes the current master build for the UefiPayloadPkgIa32 platform.
Is it possible to merge this change soon?
Sorry for the circumstances.
thanks,
MarcelloOn Tue, Oct 13, 2020 at 9:02 PM Ma, Maurice <maurice.ma@intel.com> wrote:
Reviewed-by:
Maurice Ma <maurice.ma@intel.com>
> -----Original Message-----
> From: Marcello Sylvester Bauer <marcello.bauer@9elements.com>
> Sent: Tuesday, October 13, 2020 6:34
> To: devel@edk2.groups.io
> Cc: Marcello Sylvester Bauer <marcello.bauer@9elements.com>;
> patrick.rudolph@9elements.com; Ma, Maurice <maurice.ma@intel.com>; Dong,
> Guo <guo.dong@intel.com>; You, Benjamin <benjamin.you@intel.com>
> Subject: [PATCH v2 0/1] UefiPayloadPkg: Set default PciBaseSize on Ia32
>
> This commit fix UefiPayloadPkgIa32 build in master.
>
> In commit 8028b2907e20b21cd7d69639a36ac82a77c81dc1 I did forget to set
> the default value for PcdPciExpressBaseSize on Ia32 Targets. This patch does
> insert it afterwards. It would be great if it could be merged asap.
>
> PS: I added the Ia32 target to our CI to avoid this issue in future. Sorry for the
> misfortune.
>
> v2:
> * Remove no longer required build-time PcdPciExpressBaseAddress
>
> Branch: https://github.com/9elements/edk2/tree/fix/UefiPayloadPkgIa32_V2
> PR: https://github.com/tianocore/edk2/pull/1008
>
> Marcello Sylvester Bauer (1):
> UefiPayloadPkg: Set default PciBaseSize on Ia32
>
> UefiPayloadPkg/UefiPayloadPkgIa32.dsc | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> --
> 2.28.0
--
[Marcello Sylvester Bauer]
9elements Agency GmbH, Kortumstraße 19-21, 44787 Bochum, Germany
Sitz der Gesellschaft: Bochum
Handelsregister: Amtsgericht Bochum, HRB 17519
Geschäftsführung: Sebastian Deutsch, Eray Basar
--
[Marcello Sylvester Bauer]
9elements Agency GmbH, Kortumstraße 19-21, 44787 Bochum, Germany
Sitz der Gesellschaft: Bochum
Handelsregister: Amtsgericht Bochum, HRB 17519
Geschäftsführung: Sebastian Deutsch, Eray Basar
--
[Marcello Sylvester Bauer]
9elements Agency GmbH, Kortumstraße 19-21, 44787 Bochum, Germany
Sitz der Gesellschaft: Bochum
Handelsregister: Amtsgericht Bochum, HRB 17519
Geschäftsführung: Sebastian Deutsch, Eray Basar