ArmPlatformPkg.dec 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. #/** @file
  2. #
  3. # Copyright (c) 2011-2021, ARM Limited. All rights reserved.
  4. # Copyright (c) 2015, Intel Corporation. All rights reserved.
  5. #
  6. # SPDX-License-Identifier: BSD-2-Clause-Patent
  7. #
  8. #**/
  9. [Defines]
  10. DEC_SPECIFICATION = 0x00010005
  11. PACKAGE_NAME = ArmPlatformPkg
  12. PACKAGE_GUID = 3308e0a0-1d94-11e0-915c-0002a5d5c51b
  13. PACKAGE_VERSION = 0.1
  14. ################################################################################
  15. #
  16. # Include Section - list of Include Paths that are provided by this package.
  17. # Comments are used for Keywords and Module Types.
  18. #
  19. # Supported Module Types:
  20. # BASE SEC PEI_CORE PEIM DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER DXE_SAL_DRIVER UEFI_DRIVER UEFI_APPLICATION
  21. #
  22. ################################################################################
  23. [Includes.common]
  24. Include # Root include for the package
  25. [LibraryClasses]
  26. ## @libraryclass Provides an interface to query platform information.
  27. #
  28. ArmPlatformLib|Include/Library/ArmPlatformLib.h
  29. ## @libraryclass Provides an interface to initialize/shutdown a LCD screen.
  30. #
  31. LcdHwLib|Include/Library/LcdHwLib.h
  32. ## @libraryclass Provides an interface to configure a LCD screen.
  33. #
  34. LcdPlatformLib|Include/Library/LcdPlatformLib.h
  35. ## @libraryclass Provides an interface to the clock of a PL011 device.
  36. #
  37. PL011UartClockLib|Include/Library/PL011UartClockLib.h
  38. ## @libraryclass Provides an interface to a PL011 uart.
  39. #
  40. PL011UartLib|Include/Library/PL011UartLib.h
  41. [Guids.common]
  42. gArmPlatformTokenSpaceGuid = { 0x9c0aaed4, 0x74c5, 0x4043, { 0xb4, 0x17, 0xa3, 0x22, 0x38, 0x14, 0xce, 0x76 } }
  43. [PcdsFeatureFlag.common]
  44. gArmPlatformTokenSpaceGuid.PcdSendSgiToBringUpSecondaryCores|FALSE|BOOLEAN|0x00000004
  45. # Disable the GOP controller on ExitBootServices(). By default the value is FALSE,
  46. # we assume the OS will handle the FrameBuffer from the UEFI GOP information.
  47. gArmPlatformTokenSpaceGuid.PcdGopDisableOnExitBootServices|FALSE|BOOLEAN|0x0000003D
  48. [PcdsFixedAtBuild.common]
  49. gArmPlatformTokenSpaceGuid.PcdCoreCount|1|UINT32|0x00000039
  50. gArmPlatformTokenSpaceGuid.PcdClusterCount|1|UINT32|0x00000038
  51. # Stack for CPU Cores in Non Secure Mode
  52. gArmPlatformTokenSpaceGuid.PcdCPUCoresStackBase|0|UINT64|0x00000009
  53. gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize|0x10000|UINT32|0x00000037
  54. gArmPlatformTokenSpaceGuid.PcdCPUCoreSecondaryStackSize|0x1000|UINT32|0x0000000A
  55. # Size of the region used by UEFI in permanent memory (Reserved 128MB by default)
  56. gArmPlatformTokenSpaceGuid.PcdSystemMemoryUefiRegionSize|0x08000000|UINT32|0x00000015
  57. #
  58. # ARM Primecells
  59. #
  60. ## SP805 Watchdog
  61. gArmPlatformTokenSpaceGuid.PcdSP805WatchdogBase|0x0|UINT32|0x00000023
  62. gArmPlatformTokenSpaceGuid.PcdSP805WatchdogClockFrequencyInHz|32000|UINT32|0x00000021
  63. gArmPlatformTokenSpaceGuid.PcdSP805WatchdogInterrupt|0|UINT32|0x0000002E
  64. ## PL011 UART
  65. gArmPlatformTokenSpaceGuid.PL011UartClkInHz|24000000|UINT32|0x0000001F
  66. gArmPlatformTokenSpaceGuid.PL011UartInteger|0|UINT32|0x00000020
  67. gArmPlatformTokenSpaceGuid.PL011UartFractional|0|UINT32|0x0000002D
  68. gArmPlatformTokenSpaceGuid.PL011UartInterrupt|0x00000000|UINT32|0x0000002F
  69. gArmPlatformTokenSpaceGuid.PL011UartRegOffsetVariant|0|UINT8|0x0000003E
  70. ## PL011 Serial Debug UART
  71. gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase|0x00000000|UINT64|0x00000030
  72. gArmPlatformTokenSpaceGuid.PcdSerialDbgUartBaudRate|0x00000000|UINT64|0x00000031
  73. gArmPlatformTokenSpaceGuid.PcdSerialDbgUartClkInHz|0x00000000|UINT32|0x00000032
  74. gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt|0x00000000|UINT32|0x00000041
  75. ## PL061 GPIO
  76. gArmPlatformTokenSpaceGuid.PcdPL061GpioBase|0x0|UINT32|0x00000025
  77. ## PL111 Lcd & HdLcd
  78. gArmPlatformTokenSpaceGuid.PcdPL111LcdBase|0x0|UINT32|0x00000026
  79. gArmPlatformTokenSpaceGuid.PcdArmHdLcdBase|0x0|UINT32|0x00000027
  80. ## Default size for display modes upto 1920x1080 (1920 * 1080 * 4 Bytes Per Pixel)
  81. gArmPlatformTokenSpaceGuid.PcdArmLcdDdrFrameBufferSize|0x7E9000|UINT32|0x00000043
  82. ## If set, framebuffer memory will be reserved and mapped in the system RAM
  83. gArmPlatformTokenSpaceGuid.PcdArmLcdDdrFrameBufferBase|0x0|UINT64|0x00000044
  84. ## ARM Mali Display Processor DP500/DP550/DP650
  85. gArmPlatformTokenSpaceGuid.PcdArmMaliDpBase|0x0|UINT64|0x00000050
  86. gArmPlatformTokenSpaceGuid.PcdArmMaliDpMemoryRegionLength|0x0|UINT32|0x00000051
  87. # Graphics Output Pixel format
  88. # 0 : PixelRedGreenBlueReserved8BitPerColor
  89. # 1 : PixelBlueGreenRedReserved8BitPerColor
  90. # 2 : PixelBitMask
  91. # Default is set to UEFI console font format PixelBlueGreenRedReserved8BitPerColor
  92. gArmPlatformTokenSpaceGuid.PcdGopPixelFormat|0x00000001|UINT32|0x00000040
  93. ## If set, this will swap settings for HDLCD RED_SELECT and BLUE_SELECT registers
  94. gArmPlatformTokenSpaceGuid.PcdArmHdLcdSwapBlueRedSelect|FALSE|BOOLEAN|0x00000045
  95. [PcdsFixedAtBuild.common,PcdsDynamic.common]
  96. ## PL031 RealTimeClock
  97. gArmPlatformTokenSpaceGuid.PcdPL031RtcBase|0x0|UINT32|0x00000024
  98. gArmPlatformTokenSpaceGuid.PcdPL031RtcPpmAccuracy|300000000|UINT32|0x00000022
  99. gArmPlatformTokenSpaceGuid.PcdWatchdogCount|0x0|UINT32|0x00000033