PrmPkg/PrmConfigDxe: Add initial driver
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3812 This driver serves as a generic PRM configuration driver. Its primary role is to prepare PRM resources published by PRM module configuration libraries for OS runtime. As such, it locates all PRM Configuration Protocol instances and consumes the information to ready those resources. For example, set runtime memory attributes on MMIO ranges and convert physical addresses to virtual addresses in PRM buffers. Cc: Andrew Fish <afish@apple.com> Cc: Kang Gao <kang.gao@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Michael Kubacki <michael.kubacki@microsoft.com> Cc: Leif Lindholm <leif@nuviainc.com> Cc: Benjamin You <benjamin.you@intel.com> Cc: Liu Yun <yun.y.liu@intel.com> Cc: Ankit Sinha <ankit.sinha@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com> Acked-by: Michael D Kinney <michael.d.kinney@intel.com> Acked-by: Liming Gao <gaoliming@byosoft.com.cn> Acked-by: Leif Lindholm <quic_llindhol@quicinc.com> Reviewed-by: Ankit Sinha <ankit.sinha@intel.com>
This commit is contained in:
committed by
mergify[bot]
parent
e189e01af2
commit
3f7af17c6b
59
PrmPkg/PrmLoaderDxe/PrmLoaderDxe.inf
Normal file
59
PrmPkg/PrmLoaderDxe/PrmLoaderDxe.inf
Normal file
@@ -0,0 +1,59 @@
|
||||
## @file
|
||||
# PRM Loader Driver
|
||||
#
|
||||
# This driver discovers PRM Modules loaded in memory and places those modules and the
|
||||
# PRM handlers within those modules into a PRMT ACPI table such that the handlers are
|
||||
# made available for invocation in the OS.
|
||||
#
|
||||
# Copyright (c) Microsoft Corporation
|
||||
#
|
||||
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||
#
|
||||
##
|
||||
|
||||
[Defines]
|
||||
INF_VERSION = 0x00010005
|
||||
BASE_NAME = PrmLoaderDxe
|
||||
FILE_GUID = 226A500A-E14F-414A-A956-40E5762D3D1E
|
||||
MODULE_TYPE = DXE_DRIVER
|
||||
VERSION_STRING = 1.0
|
||||
ENTRY_POINT = PrmLoaderEntryPoint
|
||||
|
||||
[Sources]
|
||||
PrmAcpiTable.h
|
||||
PrmLoader.h
|
||||
PrmLoaderDxe.c
|
||||
|
||||
[Packages]
|
||||
MdePkg/MdePkg.dec
|
||||
MdeModulePkg/MdeModulePkg.dec
|
||||
PrmPkg/PrmPkg.dec
|
||||
|
||||
[Guids]
|
||||
gEfiEndOfDxeEventGroupGuid
|
||||
|
||||
[LibraryClasses]
|
||||
BaseLib
|
||||
BaseMemoryLib
|
||||
DebugLib
|
||||
MemoryAllocationLib
|
||||
PeCoffLib
|
||||
PrmContextBufferLib
|
||||
UefiBootServicesTableLib
|
||||
UefiDriverEntryPoint
|
||||
UefiLib
|
||||
|
||||
[Pcd]
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemId ## CONSUMES
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemTableId ## CONSUMES
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemRevision ## CONSUMES
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorId ## CONSUMES
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorRevision ## CONSUMES
|
||||
|
||||
[Protocols]
|
||||
gEfiAcpiTableProtocolGuid
|
||||
gEfiLoadedImageProtocolGuid
|
||||
gPrmConfigProtocolGuid
|
||||
|
||||
[Depex]
|
||||
TRUE
|
Reference in New Issue
Block a user