From: "Guo Dong" <guo.dong@intel.com>
To: "Liu, Zhiguang" <zhiguang.liu@intel.com>,
"devel@edk2.groups.io" <devel@edk2.groups.io>
Cc: "Ma, Maurice" <maurice.ma@intel.com>,
"You, Benjamin" <benjamin.you@intel.com>
Subject: Re: [PATCH 04/12] UefiPayloadPkg: Update the function definition of HobConstructor
Date: Tue, 22 Jun 2021 22:48:57 +0000 [thread overview]
Message-ID: <BYAPR11MB3622B1F21343BE8A708E2C1B9E099@BYAPR11MB3622.namprd11.prod.outlook.com> (raw)
In-Reply-To: <20210620154702.2681-5-zhiguang.liu@intel.com>
Reviewed-by: Guo Dong <guo.dong@intel.com>
> -----Original Message-----
> From: Liu, Zhiguang <zhiguang.liu@intel.com>
> Sent: Sunday, June 20, 2021 8:47 AM
> To: devel@edk2.groups.io
> Cc: Ma, Maurice <maurice.ma@intel.com>; Dong, Guo
> <guo.dong@intel.com>; You, Benjamin <benjamin.you@intel.com>
> Subject: [PATCH 04/12] UefiPayloadPkg: Update the function definition of
> HobConstructor
>
> Update the function defination of HobConstructor to align the Phit Hob
> structure.
>
> Cc: Maurice Ma <maurice.ma@intel.com>
> Cc: Guo Dong <guo.dong@intel.com>
> Cc: Benjamin You <benjamin.you@intel.com>
> Signed-off-by: Zhiguang Liu <zhiguang.liu@intel.com>
> ---
> UefiPayloadPkg/Library/PayloadEntryHobLib/Hob.c | 26 +++++++++++++--
> -----------
> UefiPayloadPkg/UefiPayloadEntry/UefiPayloadEntry.c | 5 +----
> UefiPayloadPkg/UefiPayloadEntry/UefiPayloadEntry.h | 16 ++++++++--------
> 3 files changed, 22 insertions(+), 25 deletions(-)
>
> diff --git a/UefiPayloadPkg/Library/PayloadEntryHobLib/Hob.c
> b/UefiPayloadPkg/Library/PayloadEntryHobLib/Hob.c
> index 23a749edf1..768c3db770 100644
> --- a/UefiPayloadPkg/Library/PayloadEntryHobLib/Hob.c
> +++ b/UefiPayloadPkg/Library/PayloadEntryHobLib/Hob.c
> @@ -39,14 +39,14 @@ GetHobList (
> /**
>
> Build a Handoff Information Table HOB
>
>
>
> - This function initialize a HOB region from EfiMemoryBegin with length
>
> - EfiMemoryLength. And EfiFreeMemoryBottom and EfiFreeMemoryTop
> should
>
> + This function initialize a HOB region from EfiMemoryBegin to
>
> + EfiMemoryTop. And EfiFreeMemoryBottom and EfiFreeMemoryTop
> should
>
> be inside the HOB region.
>
>
>
> - @param[in] EfiMemoryBegin Total memory start address
>
> - @param[in] EfiMemoryLength Total memory length reported in handoff
> HOB.
>
> - @param[in] EfiFreeMemoryBottom Free memory start address
>
> - @param[in] EfiFreeMemoryTop Free memory end address.
>
> + @param[in] EfiMemoryBottom Total memory start address
>
> + @param[in] EfiMemoryTop Total memory end address.
>
> + @param[in] EfiFreeMemoryBottom Free memory start address
>
> + @param[in] EfiFreeMemoryTop Free memory end address.
>
>
>
> @return The pointer to the handoff HOB table.
>
>
>
> @@ -54,8 +54,8 @@ GetHobList (
> EFI_HOB_HANDOFF_INFO_TABLE*
>
> EFIAPI
>
> HobConstructor (
>
> - IN VOID *EfiMemoryBegin,
>
> - IN UINTN EfiMemoryLength,
>
> + IN VOID *EfiMemoryBottom,
>
> + IN VOID *EfiMemoryTop,
>
> IN VOID *EfiFreeMemoryBottom,
>
> IN VOID *EfiFreeMemoryTop
>
> )
>
> @@ -77,11 +77,11 @@ HobConstructor (
> Hob->Version = EFI_HOB_HANDOFF_TABLE_VERSION;
>
> Hob->BootMode = BOOT_WITH_FULL_CONFIGURATION;
>
>
>
> - Hob->EfiMemoryTop = (UINTN)EfiMemoryBegin + EfiMemoryLength;
>
> - Hob->EfiMemoryBottom = (UINTN)EfiMemoryBegin;
>
> - Hob->EfiFreeMemoryTop = (UINTN)EfiFreeMemoryTop;
>
> - Hob->EfiFreeMemoryBottom =
> (EFI_PHYSICAL_ADDRESS)(UINTN)(HobEnd+1);
>
> - Hob->EfiEndOfHobList = (EFI_PHYSICAL_ADDRESS)(UINTN)HobEnd;
>
> + Hob->EfiMemoryTop = (EFI_PHYSICAL_ADDRESS) EfiMemoryTop;
>
> + Hob->EfiMemoryBottom = (EFI_PHYSICAL_ADDRESS) EfiMemoryBottom;
>
> + Hob->EfiFreeMemoryTop = (EFI_PHYSICAL_ADDRESS)
> EfiFreeMemoryTop;
>
> + Hob->EfiFreeMemoryBottom = (EFI_PHYSICAL_ADDRESS) (UINTN)
> (HobEnd+1);
>
> + Hob->EfiEndOfHobList = (EFI_PHYSICAL_ADDRESS) (UINTN) HobEnd;
>
>
>
> mHobList = Hob;
>
> return Hob;
>
> diff --git a/UefiPayloadPkg/UefiPayloadEntry/UefiPayloadEntry.c
> b/UefiPayloadPkg/UefiPayloadEntry/UefiPayloadEntry.c
> index 8c6f7e326f..4308936d63 100644
> --- a/UefiPayloadPkg/UefiPayloadEntry/UefiPayloadEntry.c
> +++ b/UefiPayloadPkg/UefiPayloadEntry/UefiPayloadEntry.c
> @@ -382,7 +382,6 @@ PayloadEntry (
> PHYSICAL_ADDRESS DxeCoreEntryPoint;
>
> EFI_HOB_HANDOFF_INFO_TABLE *HandoffHobTable;
>
> UINTN MemBase;
>
> - UINTN MemSize;
>
> UINTN HobMemBase;
>
> UINTN HobMemTop;
>
> EFI_PEI_HOB_POINTERS Hob;
>
> @@ -401,9 +400,7 @@ PayloadEntry (
> HobMemBase = ALIGN_VALUE (MemBase + PcdGet32
> (PcdPayloadFdMemSize), SIZE_1MB);
>
> HobMemTop = HobMemBase + FixedPcdGet32
> (PcdSystemMemoryUefiRegionSize);
>
>
>
> - // DXE core assumes the memory below HOB region could be used, so
> include the FV region memory into HOB range.
>
> - MemSize = HobMemTop - MemBase;
>
> - HandoffHobTable = HobConstructor ((VOID *)MemBase, MemSize, (VOID
> *)HobMemBase, (VOID *)HobMemTop);
>
> + HobConstructor ((VOID *)MemBase, (VOID *)HobMemTop, (VOID
> *)HobMemBase, (VOID *)HobMemTop);
>
>
>
> // Build HOB based on information from Bootloader
>
> Status = BuildHobFromBl ();
>
> diff --git a/UefiPayloadPkg/UefiPayloadEntry/UefiPayloadEntry.h
> b/UefiPayloadPkg/UefiPayloadEntry/UefiPayloadEntry.h
> index a4c9da128e..e9c3ec3073 100644
> --- a/UefiPayloadPkg/UefiPayloadEntry/UefiPayloadEntry.h
> +++ b/UefiPayloadPkg/UefiPayloadEntry/UefiPayloadEntry.h
> @@ -83,14 +83,14 @@ UpdateStackHob (
> /**
>
> Build a Handoff Information Table HOB
>
>
>
> - This function initialize a HOB region from EfiMemoryBegin with length
>
> - EfiMemoryLength. And EfiFreeMemoryBottom and EfiFreeMemoryTop
> should
>
> + This function initialize a HOB region from EfiMemoryBegin to
>
> + EfiMemoryTop. And EfiFreeMemoryBottom and EfiFreeMemoryTop
> should
>
> be inside the HOB region.
>
>
>
> - @param[in] EfiMemoryBegin Total memory start address
>
> - @param[in] EfiMemoryLength Total memory length reported in handoff
> HOB.
>
> - @param[in] EfiFreeMemoryBottom Free memory start address
>
> - @param[in] EfiFreeMemoryTop Free memory end address.
>
> + @param[in] EfiMemoryBottom Total memory start address
>
> + @param[in] EfiMemoryTop Total memory end address.
>
> + @param[in] EfiFreeMemoryBottom Free memory start address
>
> + @param[in] EfiFreeMemoryTop Free memory end address.
>
>
>
> @return The pointer to the handoff HOB table.
>
>
>
> @@ -98,8 +98,8 @@ UpdateStackHob (
> EFI_HOB_HANDOFF_INFO_TABLE*
>
> EFIAPI
>
> HobConstructor (
>
> - IN VOID *EfiMemoryBegin,
>
> - IN UINTN EfiMemoryLength,
>
> + IN VOID *EfiMemoryBottom,
>
> + IN VOID *EfiMemoryTop,
>
> IN VOID *EfiFreeMemoryBottom,
>
> IN VOID *EfiFreeMemoryTop
>
> );
>
> --
> 2.16.2.windows.1
next prev parent reply other threads:[~2021-06-22 22:49 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-06-20 15:46 [PATCH 00/12] Enable Universal Payload in UefiPayloadPkg Zhiguang Liu
2021-06-20 15:46 ` [PATCH 01/12] UefiPayloadPkg: Add HobLib for UniversalPayload Zhiguang Liu
2021-06-22 22:48 ` Guo Dong
2021-06-20 15:46 ` [PATCH 02/12] MdeModulePkg: Add new structure for the Universal Payload Serial Port Info Zhiguang Liu
2021-06-21 11:09 ` Wu, Hao A
2021-06-20 15:46 ` [PATCH 03/12] UefiPayloadPkg: Add a separate PlatformHookLib for Universal Payload Zhiguang Liu
2021-06-22 22:48 ` Guo Dong
2021-06-20 15:46 ` [PATCH 04/12] UefiPayloadPkg: Update the function definition of HobConstructor Zhiguang Liu
2021-06-22 22:48 ` Guo Dong [this message]
2021-06-20 15:46 ` [PATCH 05/12] UefiPayloadPkg: Create separate Payload Entry for UniversalPayload Zhiguang Liu
2021-06-22 22:50 ` Guo Dong
2021-06-20 15:46 ` [PATCH 06/12] UefiPayloadPkg: Get and enter DxeCore for Universal Payload Zhiguang Liu
2021-06-22 22:50 ` Guo Dong
2021-06-20 15:46 ` [PATCH 07/12] UefiPayloadPkg: Fix up UPL Pcd database Zhiguang Liu
2021-06-22 22:49 ` Guo Dong
2021-06-20 15:46 ` [PATCH 08/12] UefiPayloadPkg: Include UniversalPayLoad modules in UefiPayloadPkg.dsc Zhiguang Liu
2021-06-22 22:51 ` Guo Dong
2021-06-20 15:46 ` [PATCH 09/12] UefiPayloadPkg: Remove assert when reserve MMIO/IO resource for devices Zhiguang Liu
2021-06-22 22:51 ` Guo Dong
2021-06-20 15:47 ` [PATCH 10/12] UefiPayloadPkg: Add macro to disable some drivers Zhiguang Liu
2021-06-22 22:49 ` Guo Dong
2021-06-20 15:47 ` [PATCH 11/12] UefiPayloadPkg: Add PcdInstallAcpiSdtProtocol feature in UefiPayloadPkg Zhiguang Liu
2021-06-22 22:52 ` Guo Dong
2021-06-20 15:47 ` [PATCH 12/12] UefiPayloadPkg: Add PcdResetOnMemoryTypeInformationChange " Zhiguang Liu
2021-06-22 22:51 ` Guo Dong
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=BYAPR11MB3622B1F21343BE8A708E2C1B9E099@BYAPR11MB3622.namprd11.prod.outlook.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox