EmbeddedPkg.dec 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193
  1. #/** @file
  2. # Framework Module Development Environment Industry Standards
  3. #
  4. # This Package provides headers and libraries that conform to EFI/PI Industry standards.
  5. # Copyright (c) 2007, Intel Corporation. All rights reserved.<BR>
  6. # Copyright (c) 2012-2015, ARM Ltd. All rights reserved.<BR>
  7. # Copyright (c) 2017, Linaro Ltd. All rights reserved.<BR>
  8. #
  9. # This program and the accompanying materials are licensed and made available under
  10. # the terms and conditions of the BSD License which accompanies this distribution.
  11. # The full text of the license may be found at
  12. # http://opensource.org/licenses/bsd-license.php
  13. #
  14. # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
  15. # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
  16. #
  17. #**/
  18. [Defines]
  19. DEC_SPECIFICATION = 0x00010005
  20. PACKAGE_NAME = EmbeddedPkg
  21. PACKAGE_GUID = dea8e498-7e1b-47c1-b6fa-4bc04092587e
  22. PACKAGE_VERSION = 0.1
  23. ################################################################################
  24. #
  25. # Include Section - list of Include Paths that are provided by this package.
  26. # Comments are used for Keywords and Module Types.
  27. #
  28. # Supported Module Types:
  29. # BASE SEC PEI_CORE PEIM DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER DXE_SAL_DRIVER UEFI_DRIVER UEFI_APPLICATION
  30. #
  31. ################################################################################
  32. [Includes.common]
  33. Include # Root include for the package
  34. [LibraryClasses.common]
  35. PrePiLib|Include/Library/PrePiLib.h
  36. RealTimeClockLib|Include/Library/RealTimeClockLib.h
  37. EfiResetSystemLib|Include/Library/EfiResetSystemLib.h
  38. GdbSerialLib|Include/Library/GdbSerialLib.h
  39. DebugAgentTimerLib|Include/Library/DebugAgentTimerLib.h
  40. NorFlashInfoLib|Include/Library/NorFlashInfoLib.h
  41. DtPlatformDtbLoaderLib|Include/Library/DtPlatformDtbLoaderLib.h
  42. [Guids.common]
  43. gEmbeddedTokenSpaceGuid = { 0xe0d8ca17, 0x4276, 0x4386, { 0xbb, 0x79, 0x48, 0xcb, 0x81, 0x3d, 0x3c, 0x4f }}
  44. ## FDT Configuration Table
  45. # Include/Guid/Fdt.h
  46. gFdtTableGuid = { 0xb1b621d5, 0xf19c, 0x41a5, { 0x83, 0x0b, 0xd9, 0x15, 0x2c, 0x69, 0xaa, 0xe0 } }
  47. # Include/Guid/FdtHob.h
  48. gFdtHobGuid = { 0x16958446, 0x19B7, 0x480B, { 0xB0, 0x47, 0x74, 0x85, 0xAD, 0x3F, 0x71, 0x6D } }
  49. gFdtVariableGuid = { 0x25a4fd4a, 0x9703, 0x4ba9, { 0xa1, 0x90, 0xb7, 0xc8, 0x4e, 0xfb, 0x3e, 0x57 } }
  50. ## Include/Guid/PlatformHasDeviceTree.h
  51. gEdkiiPlatformHasDeviceTreeGuid = { 0x7ebb920d, 0x1aaf, 0x46d9, { 0xb2, 0xaf, 0x54, 0x1e, 0x1d, 0xce, 0x14, 0x8b } }
  52. # HII form set GUID for DtPlatformDxe driver
  53. gDtPlatformFormSetGuid = { 0x2b7a240d, 0xd5ad, 0x4fd6, { 0xbe, 0x1c, 0xdf, 0xa4, 0x41, 0x5f, 0x55, 0x26 } }
  54. # File GUID for default DTB image embedded in the firmware volume
  55. gDtPlatformDefaultDtbFileGuid = { 0x25462cda, 0x221f, 0x47df, { 0xac, 0x1d, 0x25, 0x9c, 0xfa, 0xa4, 0xe3, 0x26 } }
  56. # HII form set GUID for ConsolePrefDxe driver
  57. gConsolePrefFormSetGuid = { 0x2d2358b4, 0xe96c, 0x484d, { 0xb2, 0xdd, 0x7c, 0x2e, 0xdf, 0xc7, 0xd5, 0x6f } }
  58. ## Include/Guid/NvVarStoreFormatted.h
  59. gEdkiiNvVarStoreFormattedGuid = { 0xd1a86e3f, 0x0707, 0x4c35, { 0x83, 0xcd, 0xdc, 0x2c, 0x29, 0xc8, 0x91, 0xa3 } }
  60. [Protocols.common]
  61. gHardwareInterruptProtocolGuid = { 0x2890B3EA, 0x053D, 0x1643, { 0xAD, 0x0C, 0xD6, 0x48, 0x08, 0xDA, 0x3F, 0xF1 } }
  62. gHardwareInterrupt2ProtocolGuid = { 0x32898322, 0x2da1, 0x474a, { 0xba, 0xaa, 0xf3, 0xf7, 0xcf, 0x56, 0x94, 0x70 } }
  63. gEmbeddedDeviceGuid = { 0xbf4b9d10, 0x13ec, 0x43dd, { 0x88, 0x80, 0xe9, 0xb, 0x71, 0x8f, 0x27, 0xde } }
  64. gEmbeddedExternalDeviceProtocolGuid = { 0x735F8C64, 0xD696, 0x44D0, { 0xBD, 0xF2, 0x44, 0x7F, 0xD0, 0x5A, 0x54, 0x06 }}
  65. gEmbeddedGpioProtocolGuid = { 0x17a0a3d7, 0xc0a5, 0x4635, { 0xbb, 0xd5, 0x07, 0x21, 0x87, 0xdf, 0xe2, 0xee }}
  66. gPeCoffLoaderProtocolGuid = { 0xB323179B, 0x97FB, 0x477E, { 0xB0, 0xFE, 0xD8, 0x85, 0x91, 0xFA, 0x11, 0xAB } }
  67. gEfiMmcHostProtocolGuid = { 0x3e591c00, 0x9e4a, 0x11df, {0x92, 0x44, 0x00, 0x02, 0xA5, 0xD5, 0xC5, 0x1B }}
  68. gAndroidFastbootTransportProtocolGuid = { 0x74bd9fe0, 0x8902, 0x11e3, {0xb9, 0xd3, 0xf7, 0x22, 0x38, 0xfc, 0x9a, 0x31}}
  69. gAndroidFastbootPlatformProtocolGuid = { 0x524685a0, 0x89a0, 0x11e3, {0x9d, 0x4d, 0xbf, 0xa9, 0xf6, 0xa4, 0x03, 0x08}}
  70. gUsbDeviceProtocolGuid = { 0x021bd2ca, 0x51d2, 0x11e3, {0x8e, 0x56, 0xb7, 0x54, 0x17, 0xc7, 0x0b, 0x44 }}
  71. gPlatformBootManagerProtocolGuid = { 0x7197c8a7, 0x6559, 0x4c93, { 0x93, 0xd5, 0x8a, 0x84, 0xf9, 0x88, 0x79, 0x8b }}
  72. gPlatformGpioProtocolGuid = { 0x52ce9845, 0x5af4, 0x43e2, {0xba, 0xfd, 0x23, 0x08, 0x12, 0x54, 0x7a, 0xc2 }}
  73. gPlatformVirtualKeyboardProtocolGuid = { 0x0e3606d2, 0x1dc3, 0x4e6f, { 0xbe, 0x65, 0x39, 0x49, 0x82, 0xa2, 0x65, 0x47 }}
  74. gAndroidBootImgProtocolGuid = { 0x9859bb19, 0x407c, 0x4f8b, {0xbc, 0xe1, 0xf8, 0xda, 0x65, 0x65, 0xf4, 0xa5 }}
  75. [Ppis]
  76. gEdkiiEmbeddedGpioPpiGuid = { 0x21c3b115, 0x4e0b, 0x470c, { 0x85, 0xc7, 0xe1, 0x05, 0xa5, 0x75, 0xc9, 0x7b }}
  77. [PcdsFeatureFlag.common]
  78. gEmbeddedTokenSpaceGuid.PcdPrePiProduceMemoryTypeInformationHob|FALSE|BOOLEAN|0x0000001b
  79. gEmbeddedTokenSpaceGuid.PcdGdbSerial|FALSE|BOOLEAN|0x00000053
  80. gEmbeddedTokenSpaceGuid.PcdSataSiI3132FeaturePMPSupport|FALSE|BOOLEAN|0x00000050
  81. gEmbeddedTokenSpaceGuid.PcdSataSiI3132FeatureDirectCommandIssuing|FALSE|BOOLEAN|0x00000051
  82. [PcdsFixedAtBuild.common]
  83. gEmbeddedTokenSpaceGuid.PcdPrePiStackBase|0|UINT32|0x0000000b
  84. gEmbeddedTokenSpaceGuid.PcdPrePiStackSize|131072|UINT32|0x0000000c
  85. gEmbeddedTokenSpaceGuid.PcdMemoryBase|0x0|UINT32|0x0000004e
  86. gEmbeddedTokenSpaceGuid.PcdMemorySize|0x0|UINT32|0x0000004f
  87. gEmbeddedTokenSpaceGuid.PcdFlashFvMainBase|0x0|UINT32|0x00000043
  88. gEmbeddedTokenSpaceGuid.PcdFlashFvMainOffset|0x0|UINT32|0x00000044
  89. gEmbeddedTokenSpaceGuid.PcdFlashFvMainSize|0x0|UINT32|0x00000045
  90. # Used to help reduce fragmentation in the EFI memory map
  91. # EFI Pages (4K) are the units used
  92. gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory|0|UINT32|0x00000012
  93. gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS|0|UINT32|0x00000013
  94. gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType|0|UINT32|0x00000014
  95. gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData|0|UINT32|0x00000015
  96. gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode|0|UINT32|0x00000016
  97. gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesCode|0|UINT32|0x00000017
  98. gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesData|0|UINT32|0x00000018
  99. gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode|0|UINT32|0x00000019
  100. gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData|0|UINT32|0x0000001a
  101. gEmbeddedTokenSpaceGuid.PcdTimerBaseAddress|0x3c700000|UINT32|0x0000001c
  102. gEmbeddedTokenSpaceGuid.PcdTimerVector|7|UINT32|0x0000001d
  103. gEmbeddedTokenSpaceGuid.PcdTimerPeriod|100000|UINT32|0x0000001e
  104. gEmbeddedTokenSpaceGuid.PcdInterruptBaseAddress|0x38e00000|UINT32|0x0000001f
  105. gEmbeddedTokenSpaceGuid.PcdMetronomeTickPeriod|100|UINT32|0x00000020
  106. gEmbeddedTokenSpaceGuid.PcdEmbeddedFdBaseAddress|0xffff0000|UINT32|0x00000030
  107. gEmbeddedTokenSpaceGuid.PcdEmbeddedFdSize|0x0000000|UINT32|0x00000031
  108. gEmbeddedTokenSpaceGuid.PcdEmbeddedPerformanceCounterFrequencyInHz|0x0000000|UINT64|0x00000032
  109. gEmbeddedTokenSpaceGuid.PcdEmbeddedPerformanceCounterPeriodInNanoseconds|0x0000000|UINT32|0x00000033
  110. gEmbeddedTokenSpaceGuid.PcdGdbBaudRate|115200|UINT64|0x00000047
  111. gEmbeddedTokenSpaceGuid.PcdGdbDataBits|8|UINT8|0x00000048
  112. gEmbeddedTokenSpaceGuid.PcdGdbParity|1|UINT8|0x00000049
  113. gEmbeddedTokenSpaceGuid.PcdGdbStopBits|1|UINT8|0x0000004a
  114. gEmbeddedTokenSpaceGuid.PcdGdbUartPort|0x3f8|UINT32|0x0000004b
  115. gEmbeddedTokenSpaceGuid.PcdGdbMaxPacketRetryCount|10000000|UINT32|0x0000004c
  116. gEmbeddedTokenSpaceGuid.PcdGdbTimerPeriodMilliseconds|250|UINT32|0x0000004d
  117. # LAN9118 Ethernet Driver PCDs
  118. gEmbeddedTokenSpaceGuid.PcdLan9118DxeBaseAddress|0x0|UINT32|0x00000025
  119. gEmbeddedTokenSpaceGuid.PcdLan9118DefaultMacAddress|0x0|UINT64|0x00000026
  120. gEmbeddedTokenSpaceGuid.PcdLan9118DefaultNegotiationTimeout|4000|UINT32|0x00000027
  121. # The default feature mask below disables full duplex negotiation, since full
  122. # duplex operation is suspected to be broken in the driver.
  123. gEmbeddedTokenSpaceGuid.PcdLan9118NegotiationFeatureMask|0xFFFFFEBF|UINT32|0x00000028
  124. # LAN91x Ethernet Driver PCDs
  125. gEmbeddedTokenSpaceGuid.PcdLan91xDxeBaseAddress|0x0|UINT32|0x00000029
  126. # DwEmmc Driver PCDs
  127. gEmbeddedTokenSpaceGuid.PcdDwEmmcDxeBaseAddress|0x0|UINT32|0x00000035
  128. gEmbeddedTokenSpaceGuid.PcdDwEmmcDxeClockFrequencyInHz|0x0|UINT32|0x00000036
  129. gEmbeddedTokenSpaceGuid.PcdDwEmmcDxeMaxClockFreqInHz|0x0|UINT32|0x00000037
  130. gEmbeddedTokenSpaceGuid.PcdDwEmmcDxeFifoDepth|0x0|UINT32|0x00000038
  131. #
  132. # Android FastBoot
  133. #
  134. # The Android FastBoot utility has hard-coded USB Vendor IDs that it recognises
  135. # (and 0xf00d isn't one of them!).
  136. # You'll need to pass it "-i 0xf00d" to get it to recognise this device.
  137. gEmbeddedTokenSpaceGuid.PcdAndroidFastbootUsbVendorId|0xf00d|UINT32|0x00000022
  138. gEmbeddedTokenSpaceGuid.PcdAndroidFastbootUsbProductId|0xbeef|UINT32|0x00000023
  139. gEmbeddedTokenSpaceGuid.PcdAndroidFastbootTcpPort|1234|UINT32|0x00000024
  140. gEmbeddedTokenSpaceGuid.PcdAndroidBootDevicePath|L""|VOID*|0x00000057
  141. [PcdsFixedAtBuild.ARM]
  142. gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|0|UINT8|0x00000011
  143. # ISP1761 USB OTG Controller
  144. gEmbeddedTokenSpaceGuid.PcdIsp1761BaseAddress|0|UINT32|0x00000021
  145. [PcdsFixedAtBuild.AARCH64]
  146. gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|0|UINT8|0x00000011
  147. [PcdsFixedAtBuild.IA32]
  148. gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|16|UINT8|0x00000011
  149. [PcdsFixedAtBuild.X64]
  150. gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|16|UINT8|0x00000011
  151. [PcdsFixedAtBuild.common, PcdsDynamic.common]
  152. #
  153. # Value to add to a host address to obtain a device address, using
  154. # unsigned 64-bit integer arithmetic. This means we can rely on
  155. # truncation on overflow to specify negative offsets.
  156. #
  157. gEmbeddedTokenSpaceGuid.PcdDmaDeviceOffset|0x0|UINT64|0x0000058