]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/MdeModulePkg.dec
MdeModulePkg: Extend PcdSerialClockRate to dynamic type
[mirror_edk2.git] / MdeModulePkg / MdeModulePkg.dec
index 4d89a57254ce9120e9ce4a2ba901dc65bfd71878..15d351d4ea13b88a7fe6f669a7a09c78f800dd95 100644 (file)
   # @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
-  \r
   ## PCI Serial Device Info. It is an array of Device, Function, and Power Management\r
   #  information that describes the path that contains zero or more PCI to PCI briges \r
   #  followed by a PCI serial device.  Each array entry is 4-bytes in length.  The \r
   gEfiMdeModulePkgTokenSpaceGuid.PcdSetupConOutRow|25|UINT32|0x4000000e\r
 \r
 [PcdsFixedAtBuild, PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx]\r
+  ## UART clock frequency is for the baud rate configuration.\r
+  # @Prompt Serial Port Clock Rate.\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialClockRate|1843200|UINT32|0x00010066\r
+\r
+  ## This PCD points to the front page formset GUID\r
+  #  Compare the FormsetGuid or ClassGuid with this PCD value can detect whether in front page\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdFrontPageFormSetGuid|{ 0xbc, 0x30, 0x0c, 0x9e,0x06, 0x3f, 0xa6, 0x4b, 0x82, 0x88, 0x9, 0x17, 0x9b, 0x85, 0x5d, 0xbe }|VOID*|0x0001006e\r
+\r
   ## Base address of the NV variable range in flash device.\r
   # @Prompt Base address of flash NV variable range.\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase|0x0|UINT32|0x30000001\r
   # @Prompt Flag to request system reboot after processing capsule.\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdSystemRebootAfterCapsuleProcessFlag|0x0001|UINT16|0x0000006d\r
 \r
+  ## Publish PropertiesTable or not.\r
+  #\r
+  # If this PCD is TRUE, DxeCore publishs PropertiesTable.\r
+  # DxeCore evaluates if all runtime drivers has 4K aligned PE sections. If all\r
+  # PE sections in runtime drivers are 4K aligned, DxeCore sets BIT0 in\r
+  # PropertiesTable. Or DxeCore clears BIT0 in PropertiesTable.\r
+  # If this PCD is FALSE, DxeCore does not publish PropertiesTable.\r
+  #\r
+  # If PropertiesTable has BIT0 set, DxeCore uses below policy in UEFI memory map:\r
+  #   1) Use EfiRuntimeServicesCode for runtime driver PE image code section and\r
+  #      use EfiRuntimeServicesData for runtime driver PE image header and other section.\r
+  #   2) Set EfiRuntimeServicesCode to be EFI_MEMORY_RO.\r
+  #   3) Set EfiRuntimeServicesData to be EFI_MEMORY_XP.\r
+  #   4) Set EfiMemoryMappedIO and EfiMemoryMappedIOPortSpace to be EFI_MEMORY_XP.\r
+  #\r
+  # NOTE: Platform need gurantee this PCD is set correctly. Platform should set\r
+  # this PCD to be TURE if and only if all runtime driver has seperated Code/Data\r
+  # section. If PE code/data sections are merged, the result is unpredictable.\r
+  #\r
+  # @Prompt Publish UEFI PropertiesTable.\r
+  gEfiMdeModulePkgTokenSpaceGuid.PropertiesTableEnable|TRUE|BOOLEAN|0x0000006e\r
+\r
   ## Default OEM ID for ACPI table creation, its length must be 0x6 bytes to follow ACPI specification.\r
   # @Prompt Default OEM ID for ACPI table creation.\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemId|"INTEL "|VOID*|0x30001034\r