]> git.proxmox.com Git - mirror_edk2.git/blobdiff - QuarkPlatformPkg/Quark.dsc
QuarkPlatformPkg: Add modules required for TCG MOR feature
[mirror_edk2.git] / QuarkPlatformPkg / Quark.dsc
index 30515519df59a81e63f0e7cd2bcba1ec36044f28..c87bb176e9e8ebada84e8ee0460d87fc5730f22d 100644 (file)
@@ -2,7 +2,7 @@
 # Clanton Peak CRB platform with 32-bit DXE for 4MB/8MB flash devices.\r
 #\r
 # This package provides Clanton Peak CRB platform specific modules.\r
-# Copyright (c) 2013 - 2014 Intel Corporation.\r
+# Copyright (c) 2013 - 2016 Intel Corporation.\r
 #\r
 # This program and the accompanying materials\r
 # are licensed and made available under the terms and conditions of the BSD License\r
   #\r
   # Platform On/Off features are defined here\r
   #\r
-  DEFINE GALILEO             = GEN2\r
-  DEFINE SECURE_BOOT_ENABLE  = FALSE\r
-  DEFINE SOURCE_DEBUG_ENABLE = FALSE\r
-  DEFINE PERFORMANCE_ENABLE  = FALSE\r
-  DEFINE LOGGING             = FALSE\r
+  DEFINE SECURE_BOOT_ENABLE   = FALSE\r
+  DEFINE MEASURED_BOOT_ENABLE = FALSE\r
+  DEFINE SOURCE_DEBUG_ENABLE  = FALSE\r
+  DEFINE PERFORMANCE_ENABLE   = FALSE\r
+  DEFINE LOGGING              = FALSE\r
+\r
+  #\r
+  # Galileo board.  Options are [GEN1, GEN2]\r
+  #\r
+  DEFINE GALILEO              = GEN2\r
+\r
+  #\r
+  # TPM 1.2 Hardware.  Options are [NONE, LPC, ATMEL_I2C, INFINEON_I2C]\r
+  #\r
+  DEFINE TPM_12_HARDWARE      = NONE\r
 \r
   !if $(TARGET) == "DEBUG"\r
     DEFINE LOGGING = TRUE\r
 !else\r
   PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf\r
 !endif\r
-!if $(SECURE_BOOT_ENABLE)\r
+\r
+!if $(SECURE_BOOT_ENABLE) || $(MEASURED_BOOT_ENABLE)\r
+  OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf\r
+  IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf\r
   BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf\r
+!endif\r
+\r
+!if $(SECURE_BOOT_ENABLE)\r
   PlatformSecureLib|QuarkPlatformPkg/Library/PlatformSecureLib/PlatformSecureLib.inf\r
-  IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf\r
-  OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf\r
-  TpmMeasurementLib|SecurityPkg/Library/DxeTpmMeasurementLib/DxeTpmMeasurementLib.inf\r
   AuthVariableLib|SecurityPkg/Library/AuthVariableLib/AuthVariableLib.inf\r
 !else\r
-  TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf\r
   AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLibNull.inf\r
 !endif\r
+\r
+!if $(MEASURED_BOOT_ENABLE)\r
+  TpmMeasurementLib|SecurityPkg/Library/DxeTpmMeasurementLib/DxeTpmMeasurementLib.inf\r
+  Tpm12CommandLib|SecurityPkg/Library/Tpm12CommandLib/Tpm12CommandLib.inf\r
+!if $(TPM_12_HARDWARE) == LPC\r
+  Tpm12DeviceLib|SecurityPkg/Library/Tpm12DeviceLibDTpm/Tpm12DeviceLibDTpm.inf\r
+!endif\r
+!if $(TPM_12_HARDWARE) == ATMEL_I2C\r
+  Tpm12DeviceLib|QuarkPlatformPkg/Library/Tpm12DeviceLibAtmelI2c/Tpm12DeviceLibAtmelI2c.inf\r
+!endif\r
+!if $(TPM_12_HARDWARE) == INFINEON_I2C\r
+  Tpm12DeviceLib|QuarkPlatformPkg/Library/Tpm12DeviceLibInfineonI2c/Tpm12DeviceLibInfineonI2c.inf\r
+!endif\r
+  TcgPpVendorLib|SecurityPkg/Library/TcgPpVendorLibNull/TcgPpVendorLibNull.inf\r
+!else\r
+  TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf\r
+!endif\r
+\r
   FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf\r
 \r
   #\r
   TimerLib|PcAtChipsetPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf\r
   PlatformHelperLib|QuarkPlatformPkg/Library/PlatformHelperLib/PeiPlatformHelperLib.inf\r
   CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SecPeiCpuExceptionHandlerLib.inf\r
-!if $(SECURE_BOOT_ENABLE)\r
+!if $(SECURE_BOOT_ENABLE) || $(MEASURED_BOOT_ENABLE)\r
   BaseCryptLib|CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf\r
 !endif\r
 !if $(PERFORMANCE_ENABLE)\r
   PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf\r
   CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SmmCpuExceptionHandlerLib.inf\r
   SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf\r
-!if $(SECURE_BOOT_ENABLE)\r
+!if $(SECURE_BOOT_ENABLE) || $(MEASURED_BOOT_ENABLE)\r
   BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf\r
 !endif\r
 !if $(PERFORMANCE_ENABLE)\r
   MemoryAllocationLib|MdeModulePkg/Library/PiSmmCoreMemoryAllocationLib/PiSmmCoreMemoryAllocationLib.inf\r
   PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf\r
   SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf\r
-!if $(SECURE_BOOT_ENABLE)\r
+!if $(SECURE_BOOT_ENABLE) || $(MEASURED_BOOT_ENABLE)\r
   BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf\r
 !endif\r
 !if $(PERFORMANCE_ENABLE)\r
   ReportStatusCodeLib|MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf\r
   QNCAccessLib|QuarkSocPkg/QuarkNorthCluster/Library/QNCAccessLib/RuntimeQNCAccessLib.inf\r
   PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf\r
-!if $(SECURE_BOOT_ENABLE)\r
+!if $(SECURE_BOOT_ENABLE) || $(MEASURED_BOOT_ENABLE)\r
   BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf\r
 !endif\r
 \r
   gQuarkPlatformTokenSpaceGuid.PcdUserIsPhysicallyPresent|FALSE\r
   gQuarkPlatformTokenSpaceGuid.PcdSpiFlashDeviceSize|0\r
 \r
+!if $(MEASURED_BOOT_ENABLE)\r
+  #\r
+  # TPM1.2      { 0x8b01e5b6, 0x4f19, 0x46e8, { 0xab, 0x93, 0x1c, 0x53, 0x67, 0x1b, 0x90, 0xcc } }\r
+  # TPM2.0 DTPM { 0x286bf25a, 0xc2c3, 0x408c, { 0xb3, 0xb4, 0x25, 0xe6, 0x75, 0x8b, 0x73, 0x17 } }\r
+  #\r
+  gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid|{0xb6, 0xe5, 0x01, 0x8b, 0x19, 0x4f, 0xe8, 0x46, 0xab, 0x93, 0x1c, 0x53, 0x67, 0x1b, 0x90, 0xcc}\r
+  gEfiSecurityPkgTokenSpaceGuid.PcdTpmInitializationPolicy|1\r
+  gEfiSecurityPkgTokenSpaceGuid.PcdTpmScrtmPolicy|1\r
+!endif\r
+\r
 [PcdsDynamicExVpd]\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVendor|*|32|L"EDK II"\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareRevision|*|0x01000400\r
   QuarkSocPkg/QuarkNorthCluster/Smm/Pei/SmmControlPei/SmmControlPei.inf\r
   UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf\r
 \r
+  #\r
+  # Trusted Platform Module\r
+  #\r
+!if $(MEASURED_BOOT_ENABLE)\r
+  SecurityPkg/Tcg/TrEEConfig/TrEEConfigPei.inf\r
+  SecurityPkg/Tcg/TcgPei/TcgPei.inf\r
+!endif\r
+\r
   #\r
   # Recovery\r
   #\r
   }\r
   MdeModulePkg/Application/UiApp/UiApp.inf {\r
     <LibraryClasses>\r
-      NULL|MdeModulePkg/Library/DeviceManagerLib/DeviceManagerLib.inf\r
-      NULL|MdeModulePkg/Library/BootManagerLib/BootManagerLib.inf\r
-      NULL|MdeModulePkg/Library/BootMaintenanceManagerLib/BootMaintenanceManagerLib.inf\r
+      NULL|MdeModulePkg/Library/DeviceManagerUiLib/DeviceManagerUiLib.inf\r
+      NULL|MdeModulePkg/Library/BootManagerUiLib/BootManagerUiLib.inf\r
+      NULL|MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf\r
 \r
       UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf\r
       PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf\r
   IntelFrameworkModulePkg/Universal/FirmwareVolume/FwVolDxe/FwVolDxe.inf\r
   IntelFrameworkModulePkg/Universal/FirmwareVolume/UpdateDriverDxe/UpdateDriverDxe.inf\r
 \r
+  #\r
+  # Trusted Platform Module\r
+  #\r
+!if $(MEASURED_BOOT_ENABLE)\r
+  SecurityPkg/Tcg/MemoryOverwriteControl/TcgMor.inf\r
+  SecurityPkg/Tcg/TcgDxe/TcgDxe.inf\r
+  SecurityPkg/Tcg/TcgSmm/TcgSmm.inf\r
+!endif\r
+\r
   #\r
   # Performance Application\r
   #\r