]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/MdeModulePkg.dec
MdeModulePkg DxeCore/PiSmmCore: Add UEFI memory and SMRAM profile support.
[mirror_edk2.git] / MdeModulePkg / MdeModulePkg.dec
index 60fb20938591708ed13c0f543f475ef65f19e41f..0384e5614fa839aa7f9127c5c1eb6c6b5cd6a569 100644 (file)
 \r
   ## Include/Guid/StatusCodeDataTypeVariable.h\r
   gEdkiiStatusCodeDataTypeVariableGuid = { 0xf6ee6dbb, 0xd67f, 0x4ea0, { 0x8b, 0x96, 0x6a, 0x71, 0xb1, 0x9d, 0x84, 0xad }}\r
+  \r
+  ## Include/Guid/MemoryProfile.h\r
+  gEdkiiMemoryProfileGuid              = { 0x821c9a09, 0x541a, 0x40f6, { 0x9f, 0x43, 0xa, 0xd1, 0x93, 0xa1, 0x2c, 0xfe }}\r
 \r
 [Ppis]\r
   ## Include/Ppi/AtaController.h\r
   # @Prompt Default Creator Revision for ACPI table creation.\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorRevision|0x01000013|UINT32|0x30001038\r
 \r
+  ## The mask is used to control memory profile behavior.<BR><BR>\r
+  #  BIT0 - Enable UEFI memory profile.<BR>\r
+  #  BIT1 - Enable SMRAM profile.<BR>\r
+  # @Prompt Memory Profile Property.\r
+  # @Expression  0x80000002 | (gEfiMdeModulePkgTokenSpaceGuid.PcdMemoryProfilePropertyMask & 0xFC) == 0\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdMemoryProfilePropertyMask|0x0|UINT8|0x30001041\r
+\r
+  ## This flag is to control which memory types of alloc info will be recorded by DxeCore & SmmCore.<BR><BR>\r
+  # For SmmCore, only EfiRuntimeServicesCode and EfiRuntimeServicesData are valid.<BR>\r
+  #\r
+  # Below is bit mask for this PCD: (Order is same as UEFI spec)<BR>\r
+  #  EfiReservedMemoryType          0x0001<BR>\r
+  #  EfiLoaderCode                  0x0002<BR>\r
+  #  EfiLoaderData                  0x0004<BR>\r
+  #  EfiBootServicesCode            0x0008<BR>\r
+  #  EfiBootServicesData            0x0010<BR>\r
+  #  EfiRuntimeServicesCode         0x0020<BR>\r
+  #  EfiRuntimeServicesData         0x0040<BR>\r
+  #  EfiConventionalMemory          0x0080<BR>\r
+  #  EfiUnusableMemory              0x0100<BR>\r
+  #  EfiACPIReclaimMemory           0x0200<BR>\r
+  #  EfiACPIMemoryNVS               0x0400<BR>\r
+  #  EfiMemoryMappedIO              0x0800<BR>\r
+  #  EfiMemoryMappedIOPortSpace     0x1000<BR>\r
+  #  EfiPalCode                     0x2000<BR>\r
+  #  OS Reserved        0x8000000000000000<BR>\r
+  #\r
+  # e.g. Reserved+ACPINvs+ACPIReclaim+RuntimeCode+RuntimeData are needed, 0x661 should be used.<BR>\r
+  #\r
+  # @Prompt Memory profile memory type.\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdMemoryProfileMemoryType|0x0|UINT64|0x30001042\r
+\r
   ## UART clock frequency is for the baud rate configuration.\r
   # @Prompt Serial Port Clock Rate.\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdSerialClockRate|1843200|UINT32|0x00010066\r