On 08/14/19 17:55, Gao, Liming wrote:
> If Platform PEIM doesn't build HOB, DxeIpl will not build HOB,
My reading of the code is the opposite. If the platform PEIM does not build the
HOB, then the DXE IPL PEIM will attempt to build the HOB, from the UEFI
variable.
At commit caa7d3a896f6, in file "MdeModulePkg/Core/DxeIplPeim/DxeLoad.c",
function DxeLoadCore(), we have:
363 if (GetFirstGuidHob ((CONST EFI_GUID
*)&gEfiMemoryTypeInformationGuid) == NULL) {
364 //
365 // Don't build GuidHob if GuidHob has been installed.
366 //
367 Status = PeiServicesLocatePpi (
368 &gEfiPeiReadOnlyVariable2PpiGuid,
369 0,
370 NULL,
371 (VOID **)&Variable
372 );
373 if (!EFI_ERROR (Status)) {
374 DataSize = sizeof (MemoryData);
375 Status = Variable->GetVariable (
376 Variable,
377 EFI_MEMORY_TYPE_INFORMATION_VARIABLE_NAME,
378 &gEfiMemoryTypeInformationGuid,
379 NULL,
380 &DataSize,
381 &MemoryData
382 );
383 if (!EFI_ERROR (Status) &&
ValidateMemoryTypeInfoVariable(MemoryData, DataSize)) {
384 //
385 // Build the GUID'd HOB for DXE
386 //
387 BuildGuidDataHob (
388 &gEfiMemoryTypeInformationGuid,
389 MemoryData,
390 DataSize
391 );
392 }
393 }
394 }
Thanks
Laszlo
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#45819): https://edk2.groups.io/g/devel/message/45819
Mute This Topic: https://groups.io/mt/32821535/21656
Group Owner: [email protected]
Unsubscribe: https://edk2.groups.io/g/devel/unsub [[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-