]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/MdeModulePkg.dec
MdeModulePkg/AtaAtapiPassThru: Revert patch to disable Bus Master
[mirror_edk2.git] / MdeModulePkg / MdeModulePkg.dec
index a3c0633ee1ec6ab7540a1b7221850e975f95ad80..856d67aceb219dfe30679dc20b59dfa4ee72a4d9 100644 (file)
   ## Include/Protocol/IoMmu.h\r
   gEdkiiIoMmuProtocolGuid = { 0x4e939de9, 0xd948, 0x4b0f, { 0x88, 0xed, 0xe6, 0xe1, 0xce, 0x51, 0x7c, 0x1e } }\r
 \r
+  ## Include/Protocol/SmmEndofS3Resume.h\r
+  gEdkiiSmmEndOfS3ResumeProtocolGuid = { 0x96f5296d, 0x05f7, 0x4f3c, {0x84, 0x67, 0xe4, 0x56, 0x89, 0x0e, 0x0c, 0xb5 } }\r
+\r
+  ## Include/Protocol/SmmMemoryAttribute.h\r
+  gEdkiiSmmMemoryAttributeProtocolGuid = { 0x69b792ea, 0x39ce, 0x402d, { 0xa2, 0xa6, 0xf7, 0x21, 0xde, 0x35, 0x1d, 0xfe } }\r
+\r
 #\r
 # [Error.gEfiMdeModulePkgTokenSpaceGuid]\r
 #   0x80000001 | Invalid value provided.\r
   # @ValidList  0x80000006 | 0x03058002\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdErrorCodeSetVariable|0x03058002|UINT32|0x30001040\r
 \r
+  ## Mask to control the NULL address detection in code for different phases.\r
+  #  If enabled, accessing NULL address in UEFI or SMM code can be caught.<BR><BR>\r
+  #    BIT0    - Enable NULL pointer detection for UEFI.<BR>\r
+  #    BIT1    - Enable NULL pointer detection for SMM.<BR>\r
+  #    BIT2..6 - Reserved for future uses.<BR>\r
+  #    BIT7    - Disable NULL pointer detection just after EndOfDxe. <BR>\r
+  #              This is a workaround for those unsolvable NULL access issues in\r
+  #              OptionROM, boot loader, etc. It can also help to avoid unnecessary\r
+  #              exception caused by legacy memory (0-4095) access after EndOfDxe,\r
+  #              such as Windows 7 boot on Qemu.<BR>\r
+  # @Prompt Enable NULL address detection.\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdNullPointerDetectionPropertyMask|0x0|UINT8|0x30001050\r
+\r
+  ## Init Value in Temp Stack to be shared between SEC and PEI_CORE\r
+  # SEC fills the full temp stack with this values. When switch stack, PeiCore can check\r
+  # this value in the temp stack to know how many stack has been used.\r
+  # @Prompt Init Value in Temp Stack\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdInitValueInTempStack|0x5AA55AA5|UINT32|0x30001051\r
+\r
+  ## Indicates which type allocation need guard page.\r
+  # Below is bit mask for this PCD: (Order is same as UEFI spec)<BR>\r
+  #  EfiReservedMemoryType             0x0000000000000001<BR>\r
+  #  EfiLoaderCode                     0x0000000000000002<BR>\r
+  #  EfiLoaderData                     0x0000000000000004<BR>\r
+  #  EfiBootServicesCode               0x0000000000000008<BR>\r
+  #  EfiBootServicesData               0x0000000000000010<BR>\r
+  #  EfiRuntimeServicesCode            0x0000000000000020<BR>\r
+  #  EfiRuntimeServicesData            0x0000000000000040<BR>\r
+  #  EfiConventionalMemory             0x0000000000000080<BR>\r
+  #  EfiUnusableMemory                 0x0000000000000100<BR>\r
+  #  EfiACPIReclaimMemory              0x0000000000000200<BR>\r
+  #  EfiACPIMemoryNVS                  0x0000000000000400<BR>\r
+  #  EfiMemoryMappedIO                 0x0000000000000800<BR>\r
+  #  EfiMemoryMappedIOPortSpace        0x0000000000001000<BR>\r
+  #  EfiPalCode                        0x0000000000002000<BR>\r
+  #  EfiPersistentMemory               0x0000000000004000<BR>\r
+  #  OEM Reserved                      0x4000000000000000<BR>\r
+  #  OS Reserved                       0x8000000000000000<BR>\r
+  # e.g. LoaderCode+LoaderData+BootServicesCode+BootServicesData are needed, 0x1E should be used.<BR>\r
+  # @Prompt The memory type mask for Page Guard.\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdHeapGuardPageType|0x0|UINT64|0x30001052\r
+\r
+  ## Indicates which type allocation need guard page.\r
+  # Below is bit mask for this PCD: (Order is same as UEFI spec)<BR>\r
+  #  EfiReservedMemoryType             0x0000000000000001<BR>\r
+  #  EfiLoaderCode                     0x0000000000000002<BR>\r
+  #  EfiLoaderData                     0x0000000000000004<BR>\r
+  #  EfiBootServicesCode               0x0000000000000008<BR>\r
+  #  EfiBootServicesData               0x0000000000000010<BR>\r
+  #  EfiRuntimeServicesCode            0x0000000000000020<BR>\r
+  #  EfiRuntimeServicesData            0x0000000000000040<BR>\r
+  #  EfiConventionalMemory             0x0000000000000080<BR>\r
+  #  EfiUnusableMemory                 0x0000000000000100<BR>\r
+  #  EfiACPIReclaimMemory              0x0000000000000200<BR>\r
+  #  EfiACPIMemoryNVS                  0x0000000000000400<BR>\r
+  #  EfiMemoryMappedIO                 0x0000000000000800<BR>\r
+  #  EfiMemoryMappedIOPortSpace        0x0000000000001000<BR>\r
+  #  EfiPalCode                        0x0000000000002000<BR>\r
+  #  EfiPersistentMemory               0x0000000000004000<BR>\r
+  #  OEM Reserved                      0x4000000000000000<BR>\r
+  #  OS Reserved                       0x8000000000000000<BR>\r
+  # e.g. LoaderCode+LoaderData+BootServicesCode+BootServicesData are needed, 0x1E should be used.<BR>\r
+  # @Prompt The memory type mask for Pool Guard.\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdHeapGuardPoolType|0x0|UINT64|0x30001053\r
+\r
+  ## This mask is to control Heap Guard behavior.\r
+  #   BIT0 - Enable UEFI page guard.<BR>\r
+  #   BIT1 - Enable UEFI pool guard.<BR>\r
+  #   BIT2 - Enable SMM page guard.<BR>\r
+  #   BIT3 - Enable SMM pool guard.<BR>\r
+  #   BIT7 - The direction of Guard Page for Pool Guard.\r
+  #          0 - The returned pool is adjacent to the bottom guard page.<BR>\r
+  #          1 - The returned pool is adjacent to the top guard page.<BR>\r
+  # @Prompt The Heap Guard feature mask\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdHeapGuardPropertyMask|0x0|UINT8|0x30001054\r
+\r
 [PcdsFixedAtBuild, PcdsPatchableInModule]\r
   ## Dynamic type PCD can be registered callback function for Pcd setting action.\r
   #  PcdMaxPeiPcdCallBackNumberPerPcdEntry indicates the maximum number of callback function\r