EmulatorPkg.dec 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. ## @file
  2. #
  3. # This is the Emu Emulation Environment Platform
  4. #
  5. # Copyright (c) 2008 - 2019, Intel Corporation. All rights reserved.<BR>
  6. # Portions copyright (c) 2011, Apple Inc. All rights reserved.
  7. # (C) Copyright 2020 Hewlett Packard Enterprise Development LP<BR>
  8. #
  9. # SPDX-License-Identifier: BSD-2-Clause-Patent
  10. #
  11. ##
  12. [Defines]
  13. DEC_SPECIFICATION = 0x00010005
  14. PACKAGE_NAME = EmulatorPkg
  15. PACKAGE_GUID = 36E48BD7-7D92-5A47-A2CD-513F072E3300
  16. PACKAGE_VERSION = 0.1
  17. [Includes]
  18. Include
  19. [LibraryClasses]
  20. ThunkPpiList|Include/Library/ThunkPpiList.h
  21. ThunkProtocolList|Include/Library/ThunkProtocolList.h
  22. EmuThunkLib|Include/Library/EmuThunkLib.h
  23. KeyMap|Include/Library/KeyMapLib.h
  24. PpiListLib|Include/Library/PpiListLib.h
  25. SmbiosLib|Include/Library/SmbiosLib.h
  26. EmuMagicPageLib|Include/Library/EmuMagicPageLib.h
  27. [Protocols]
  28. gEmuThunkProtocolGuid = { 0x5CF32E0B, 0x8EDF, 0x2E44, { 0x9C, 0xDA, 0x93, 0x20, 0x5E, 0x99, 0xEC, 0x1C } }
  29. gEmuIoThunkProtocolGuid = { 0x453368F6, 0x7C85, 0x434A, { 0xA9, 0x8A, 0x72, 0xD1, 0xB7, 0xFF, 0xA9, 0x26 } }
  30. gEmuGraphicsWindowProtocolGuid = { 0x30FD316A, 0x6728, 0x2E41, { 0xA6, 0x90, 0x0D, 0x13, 0x33, 0xD8, 0xCA, 0xC1 } }
  31. gEmuThreadThunkProtocolGuid = { 0x3B1E4B7C, 0x09D8, 0x944F, { 0xA4, 0x08, 0x13, 0x09, 0xEB, 0x8B, 0x44, 0x27 } }
  32. gEmuBlockIoProtocolGuid = { 0x6888A4AE, 0xAFCE, 0xE84B, { 0x91, 0x02, 0xF7, 0xB9, 0xDA, 0xE6, 0xA0, 0x30 } }
  33. gEmuSnpProtocolGuid = { 0xFD5FBE54, 0x8C35, 0xB345, { 0x8A, 0x0F, 0x7A, 0xC8, 0xA5, 0xFD, 0x05, 0x21 } }
  34. [Ppis]
  35. gEmuThunkPpiGuid = { 0xE113F896, 0x75CF, 0xF640, { 0x81, 0x7F, 0xC8, 0x5A, 0x79, 0xE8, 0xAE, 0x67 } }
  36. [Guids]
  37. gEmulatorPkgTokenSpaceGuid = { 0x4F792E68, 0xE8C8, 0x794E, { 0xB1, 0xD8, 0x37, 0x03, 0xF3, 0xF2, 0xD5, 0xA5 } }
  38. gEmuSystemConfigGuid = { 0xF8626165, 0x6CEB, 0x924A, { 0xBA, 0xFC, 0xF1, 0x3A, 0xB9, 0xD6, 0x57, 0x28 } }
  39. gEmuVirtualDisksGuid = { 0xf2ba331a, 0x8985, 0x11db, { 0xa4, 0x06, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } }
  40. gEmuPhysicalDisksGuid = { 0xf2bdcc96, 0x8985, 0x11db, { 0x87, 0x19, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } }
  41. gEmuRedfishServiceGuid = { 0x3fb208ac, 0x2185, 0x498c, { 0xbf, 0x46, 0xdc, 0x23, 0xda, 0x58, 0x7b, 0x55 } }
  42. [PcdsFeatureFlag]
  43. ## If TRUE, if symbols only load on breakpoints and gdb entry
  44. gEmulatorPkgTokenSpaceGuid.PcdEmulatorLazyLoadSymbols|TRUE|BOOLEAN|0x00020000
  45. [PcdsFixedAtBuild]
  46. gEmulatorPkgTokenSpaceGuid.PcdEmuFlashNvStorageVariableBase|0x0|UINT64|0x00001014
  47. gEmulatorPkgTokenSpaceGuid.PcdEmuFlashNvStorageFtwSpareBase|0x0|UINT64|0x00001015
  48. gEmulatorPkgTokenSpaceGuid.PcdEmuFlashNvStorageFtwWorkingBase|0x0|UINT64|0x00001016
  49. gEmulatorPkgTokenSpaceGuid.PcdEmuFdBaseAddress|0x0|UINT64|0x00001017
  50. gEmulatorPkgTokenSpaceGuid.PcdEmuFlashNvStorageEventLogBase|0x0|UINT64|0x0000100e
  51. gEmulatorPkgTokenSpaceGuid.PcdEmuFlashNvStorageEventLogSize|0x0|UINT32|0x0000100f
  52. gEmulatorPkgTokenSpaceGuid.PcdEmuFlashFvRecoveryBase|0x0|UINT64|0x00001010
  53. gEmulatorPkgTokenSpaceGuid.PcdEmuFlashFvRecoverySize|0x0|UINT32|0x00001011
  54. gEmulatorPkgTokenSpaceGuid.PcdEmuFirmwareFdSize|0x0|UINT32|0x00001012
  55. gEmulatorPkgTokenSpaceGuid.PcdEmuFirmwareBlockSize|0|UINT32|0x00001013
  56. ## Number of Application Processors (APs) in the system 0 means Uniprocessor mode
  57. gEmulatorPkgTokenSpaceGuid.PcdEmuApCount|L"0"|VOID*|0x00001019
  58. ## Magic page to implement PEI Services Table Pointer Lib
  59. gEmulatorPkgTokenSpaceGuid.PcdPeiServicesTablePage|0x1013000000|UINT64|0x0000101b
  60. ## Size of the packet filter
  61. gEmulatorPkgTokenSpaceGuid.PcdNetworkPacketFilterSize|524288|UINT32|0x0000101c
  62. ## Platform level Redfish Service control PCD
  63. # These PCDs are used to stop the Redfish sevice when secure boot is disabled
  64. # or exit boot service.
  65. gEmulatorPkgTokenSpaceGuid.PcdRedfishServieStopIfSecureBootDisabled|TRUE|BOOLEAN|0x00001020
  66. gEmulatorPkgTokenSpaceGuid.PcdRedfishServieStopIfExitbootService|TRUE|BOOLEAN|0x00001021
  67. ##
  68. # edk2 Redfish implementation on Emulator package is designed to access
  69. # to Redfish simulator.
  70. # https://github.com/DMTF/Redfish-Profile-Simulator
  71. # The user ID and password are fixed as below.
  72. gEmulatorPkgTokenSpaceGuid.PcdRedfishServieUserId|"admin"|VOID*|0x00001022
  73. gEmulatorPkgTokenSpaceGuid.PcdRedfishServiePassword|"pwd123456"|VOID*|0x00001023
  74. [PcdsFixedAtBuild, PcdsPatchableInModule]
  75. gEmulatorPkgTokenSpaceGuid.PcdEmuBootMode|1|UINT32|0x00001006
  76. gEmulatorPkgTokenSpaceGuid.PcdEmuFirmwareVolume|L"..\\Fv\\Fv_Recovery.fd"|VOID*|0x00001009
  77. gEmulatorPkgTokenSpaceGuid.PcdEmuMemorySize|L"64!64"|VOID*|0x0000100c
  78. #
  79. # filename[:[R|F][O|W]][:BlockSize]
  80. # filename can be a device node, like /dev/disk1
  81. # R - Removable Media F - Fixed Media
  82. # O - Write protected W - Writable
  83. # Default is Fixed Media, Writable
  84. # For a file the default BlockSize is 512, and can be overridden via BlockSize,
  85. # for example 2048 for an ISO CD image. The block size for a device comes from
  86. # the device and is not configurable.
  87. # Device Size comes from file or device.
  88. # On Mac OS X you can use Disk Utility to create .dmg files and mount them like disks
  89. gEmulatorPkgTokenSpaceGuid.PcdEmuVirtualDisk|L"disk.dmg:FW"|VOID*|0x00001001
  90. gEmulatorPkgTokenSpaceGuid.PcdEmuGop|L"GOP Window"|VOID*|0x00001018
  91. gEmulatorPkgTokenSpaceGuid.PcdEmuFileSystem|L"."|VOID*|0x00001004
  92. gEmulatorPkgTokenSpaceGuid.PcdEmuSerialPort|L"/dev/ttyS0"|VOID*|0x00001002
  93. #
  94. # On Unix host, this is the network interface name on host system that will
  95. # be used in UEFI.
  96. # On Win host, this is the network interface index number on Windows that
  97. # will be used in UEFI. For example, string L"0" is the first network
  98. # interface.
  99. gEmulatorPkgTokenSpaceGuid.PcdEmuNetworkInterface|L"en0"|VOID*|0x0000100d
  100. gEmulatorPkgTokenSpaceGuid.PcdEmuCpuModel|L"Intel(R) Processor Model"|VOID*|0x00001007
  101. gEmulatorPkgTokenSpaceGuid.PcdEmuCpuSpeed|L"3000"|VOID*|0x00001008
  102. gEmulatorPkgTokenSpaceGuid.PcdEmuMpServicesPollingInterval|0x100|UINT64|0x0000101a