OpenBoardPkg.dec 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. ## @file
  2. # EFI/Framework Simics platform
  3. #
  4. # Copyright (c) 2019 Intel Corporation. All rights reserved. <BR>
  5. #
  6. # SPDX-License-Identifier: BSD-2-Clause-Patent
  7. #
  8. ##
  9. [Defines]
  10. DEC_SPECIFICATION = 0x00010005
  11. PACKAGE_NAME = SimicsOpenBoardPkg
  12. PACKAGE_GUID = E6A03E0D-5944-4dc6-9292-090D609EDD3A
  13. PACKAGE_VERSION = 0.1
  14. [Includes]
  15. Include
  16. [Guids]
  17. gSimicsOpenBoardPkgTokenSpaceGuid = {0x75fd61da, 0x3931, 0x49aa, {0x8f, 0x11, 0x18, 0x25, 0xf6, 0x31, 0x21, 0xd2}}
  18. gSimicsBoardConfigGuid = {0xeed35f57, 0x4ff2, 0x4244, {0xb8, 0x3a, 0xea, 0x71, 0x5f, 0xd3, 0x59, 0xa5}}
  19. [PcdsFixedAtBuild]
  20. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsPeiMemFvBase|0x0|UINT32|0
  21. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsPeiMemFvSize|0x0|UINT32|1
  22. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsDxeMemFvBase|0x0|UINT32|0x15
  23. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsDxeMemFvSize|0x0|UINT32|0x16
  24. #TODO: Remove these two when we integrate new PlatformPei
  25. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsMemFvBase|0x00800000|UINT32|2
  26. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsMemFvSize|0x00500000|UINT32|3
  27. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsFlashNvStorageEventLogBase|0x0|UINT32|0x8
  28. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsFlashNvStorageEventLogSize|0x0|UINT32|0x9
  29. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsFirmwareFdSize|0x0|UINT32|0xa
  30. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsFirmwareBlockSize|0|UINT32|0xb
  31. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsFlashNvStorageVariableBase|0x0|UINT32|0xc
  32. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsFlashNvStorageFtwSpareBase|0x0|UINT32|0xd
  33. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsFlashNvStorageFtwWorkingBase|0x0|UINT32|0xe
  34. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsFdBaseAddress|0x0|UINT32|0xf
  35. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsSecPageTablesBase|0x0|UINT32|0x11
  36. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsSecPageTablesSize|0x0|UINT32|0x12
  37. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsSecPeiTempRamBase|0x0|UINT32|0x13
  38. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsSecPeiTempRamSize|0x0|UINT32|0x14
  39. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsLockBoxStorageBase|0x0|UINT32|0x18
  40. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsLockBoxStorageSize|0x0|UINT32|0x19
  41. gSimicsOpenBoardPkgTokenSpaceGuid.PcdGuidedExtractHandlerTableSize|0x0|UINT32|0x1a
  42. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsDecompressionScratchEnd|0x0|UINT32|0x1f
  43. [PcdsDynamic, PcdsDynamicEx]
  44. # TODO: investigate whether next two Pcds are needed
  45. gSimicsOpenBoardPkgTokenSpaceGuid.PcdEmuVariableEvent|0|UINT64|0x28
  46. gSimicsOpenBoardPkgTokenSpaceGuid.PcdOvmfFlashVariablesEnable|FALSE|BOOLEAN|0x10
  47. gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsX58HostBridgePciDevId|0|UINT16|0x1b
  48. ## The IO port aperture shared by all PCI root bridges.
  49. #
  50. gSimicsOpenBoardPkgTokenSpaceGuid.PcdPciIoBase|0x0|UINT64|0x22
  51. gSimicsOpenBoardPkgTokenSpaceGuid.PcdPciIoSize|0x0|UINT64|0x23
  52. ## The 32-bit MMIO aperture shared by all PCI root bridges.
  53. #
  54. gSimicsOpenBoardPkgTokenSpaceGuid.PcdPciMmio32Base|0x0|UINT64|0x24
  55. gSimicsOpenBoardPkgTokenSpaceGuid.PcdPciMmio32Size|0x0|UINT64|0x25
  56. ## The 64-bit MMIO aperture shared by all PCI root bridges.
  57. #
  58. gSimicsOpenBoardPkgTokenSpaceGuid.PcdPciMmio64Base|0x0|UINT64|0x26
  59. gSimicsOpenBoardPkgTokenSpaceGuid.PcdPciMmio64Size|0x0|UINT64|0x27
  60. [PcdsFixedAtBuild, PcdsDynamic, PcdsDynamicEx, PcdsPatchableInModule]
  61. ## Pcd8259LegacyModeMask defines the default mask value for platform. This value is determined<BR><BR>
  62. # 1) If platform only support pure UEFI, value should be set to 0xFFFF or 0xFFFE;
  63. # Because only clock interrupt is allowed in legacy mode in pure UEFI platform.<BR>
  64. # 2) If platform install CSM and use thunk module:<BR>
  65. # a) If thunk call provided by CSM binary requires some legacy interrupt support, the corresponding bit
  66. # should be opened as 0.<BR>
  67. # For example, if keyboard interfaces provided CSM binary use legacy keyboard interrupt in 8259 bit 1, then
  68. # the value should be set to 0xFFFC.<BR>
  69. # b) If all thunk call provied by CSM binary do not require legacy interrupt support, value should be set
  70. # to 0xFFFF or 0xFFFE.<BR>
  71. #
  72. # The default value of legacy mode mask could be changed by EFI_LEGACY_8259_PROTOCOL->SetMask(). But it is rarely
  73. # need change it except some special cases such as when initializing the CSM binary, it should be set to 0xFFFF to
  74. # mask all legacy interrupt. Please restore the original legacy mask value if changing is made for these special case.<BR>
  75. # @Prompt 8259 Legacy Mode mask.
  76. gPcAtChipsetPkgTokenSpaceGuid.Pcd8259LegacyModeMask|0xFFFF|UINT16|0x00000001
  77. ## Pcd8259LegacyModeEdgeLevel defines the default edge level for legacy mode's interrrupt controller.
  78. # For the corresponding bits, 0 = Edge triggered and 1 = Level triggered.
  79. # @Prompt 8259 Legacy Mode edge level.
  80. gPcAtChipsetPkgTokenSpaceGuid.Pcd8259LegacyModeEdgeLevel|0x0000|UINT16|0x00000002
  81. ## Indicates if we need enable IsaAcpiCom1 device.<BR><BR>
  82. # TRUE - Enables IsaAcpiCom1 device.<BR>
  83. # FALSE - Doesn't enable IsaAcpiCom1 device.<BR>
  84. # @Prompt Enable IsaAcpiCom1 device.
  85. gPcAtChipsetPkgTokenSpaceGuid.PcdIsaAcpiCom1Enable|TRUE|BOOLEAN|0x00000003
  86. ## Indicates if we need enable IsaAcpiCom2 device.<BR><BR>
  87. # TRUE - Enables IsaAcpiCom2 device.<BR>
  88. # FALSE - Doesn't enable IsaAcpiCom2 device.<BR>
  89. # @Prompt Enable IsaAcpiCom12 device.
  90. gPcAtChipsetPkgTokenSpaceGuid.PcdIsaAcpiCom2Enable|TRUE|BOOLEAN|0x00000004
  91. ## Indicates if we need enable IsaAcpiPs2Keyboard device.<BR><BR>
  92. # TRUE - Enables IsaAcpiPs2Keyboard device.<BR>
  93. # FALSE - Doesn't enable IsaAcpiPs2Keyboard device.<BR>
  94. # @Prompt Enable IsaAcpiPs2Keyboard device.
  95. gPcAtChipsetPkgTokenSpaceGuid.PcdIsaAcpiPs2KeyboardEnable|TRUE|BOOLEAN|0x00000005
  96. ## Indicates if we need enable IsaAcpiPs2Mouse device.<BR><BR>
  97. # TRUE - Enables IsaAcpiPs2Mouse device.<BR>
  98. # FALSE - Doesn't enable IsaAcpiPs2Mouse device.<BR>
  99. # @Prompt Enable IsaAcpiPs2Mouse device.
  100. gPcAtChipsetPkgTokenSpaceGuid.PcdIsaAcpiPs2MouseEnable|TRUE|BOOLEAN|0x00000006
  101. ## Indicates if we need enable IsaAcpiFloppyA device.<BR><BR>
  102. # TRUE - Enables IsaAcpiFloppyA device.<BR>
  103. # FALSE - Doesn't enable IsaAcpiFloppyA device.<BR>
  104. # @Prompt Enable IsaAcpiFloppyA device.
  105. gPcAtChipsetPkgTokenSpaceGuid.PcdIsaAcpiFloppyAEnable|TRUE|BOOLEAN|0x00000007
  106. ## Indicates if we need enable IsaAcpiFloppyB device.<BR><BR>
  107. # TRUE - Enables IsaAcpiFloppyB device.<BR>
  108. # FALSE - Doesn't enable IsaAcpiFloppyB device.<BR>
  109. # @Prompt Enable IsaAcpiFloppyB device.
  110. gPcAtChipsetPkgTokenSpaceGuid.PcdIsaAcpiFloppyBEnable|TRUE|BOOLEAN|0x00000008
  111. [PcdsFixedAtBuild, PcdsPatchableInModule]
  112. ## FFS filename to find the shell application.
  113. # @Prompt FFS Name of Shell Application
  114. gSimicsOpenBoardPkgTokenSpaceGuid.PcdShellFile|{ 0x83, 0xA5, 0x04, 0x7C, 0x3E, 0x9E, 0x1C, 0x4F, 0xAD, 0x65, 0xE0, 0x52, 0x68, 0xD0, 0xB4, 0xD1 }|VOID*|0x40000004
  115. ## ISA Bus features to support DMA, SlaveDMA and ISA Memory. <BR><BR>
  116. # BIT0 indicates if DMA is supported<BR>
  117. # BIT1 indicates if only slave DMA is supported<BR>
  118. # BIT2 indicates if ISA memory is supported<BR>
  119. # Other BITs are reseved and must be zero.
  120. # If more than one features are supported, the different BIT will be enabled at the same time.
  121. # @Prompt ISA Bus Features
  122. # @Expression 0x80000002 | (gSimicsOpenBoardPkgTokenSpaceGuid.PcdIsaBusSupportedFeatures & 0xF8) == 0
  123. gSimicsOpenBoardPkgTokenSpaceGuid.PcdIsaBusSupportedFeatures|0x05|UINT8|0x00010040
  124. gSimicsOpenBoardPkgTokenSpaceGuid.PcdLogoFile |{ 0x99, 0x8b, 0xB2, 0x7B, 0xBB, 0x61, 0xD5, 0x11, 0x9A, 0x5D, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0x4D }|VOID*|0x00010037
  125. [Protocols]
  126. ##
  127. ## IntelFrameworkModulePkg
  128. ##
  129. gEfiOemBadgingProtocolGuid = { 0x170E13C0, 0xBF1B, 0x4218, { 0x87, 0x1D, 0x2A, 0xBD, 0xC6, 0xF8, 0x87, 0xBC }}