blob: 9b2f8cd703fc0230d216f93afb3371f4c0caa8aa [file]
/** @file
This file is copied from
- https://github.com/TrustedComputingGroup/TPM/blob/main/TPMCmd/TpmConfiguration/TpmConfiguration/TpmProfile_Misc.h
to set build option for TPM reference library.
This file redefines below defines:
- MAX_CONTEXT_SIZE
- NV_CLOCK_UPDATE_INTERVAL
- MAX_NV_INDEX_SIZE
to coherent with edk2's MdePkg/Include/IndustryStandard/Tpm20.h
**/
#pragma once
// YES & NO defined by TpmBuildSwitches.h
#if(YES != 1 || NO != 0)
# error YES or NO incorrectly set
#endif
// clang-format off
// clang-format off to preserve horizontal spacing
#define IMPLEMENTATION_PCR 24
#define PLATFORM_PCR 24
#define DRTM_PCR 17
#define HCRTM_PCR 0
#define NUM_LOCALITIES 5
#define MAX_HANDLE_NUM 3
#define MAX_ACTIVE_SESSIONS 64
#define MAX_LOADED_SESSIONS 3
#define MAX_SESSION_NUM 3
#define MAX_LOADED_OBJECTS 3
#define MIN_EVICT_OBJECTS 2
#define NUM_POLICY_PCR_GROUP 1
#define NUM_AUTHVALUE_PCR_GROUP 1
#define MAX_CONTEXT_SIZE 4000
#define MAX_DIGEST_BUFFER 1024
#define MAX_NV_INDEX_SIZE 1024
#define MAX_NV_BUFFER_SIZE 1024
#define MAX_CAP_BUFFER 1024
#define NV_MEMORY_SIZE 16384
#define MIN_COUNTER_INDICES 8
#define NUM_STATIC_PCR 16
#define MAX_ALG_LIST_SIZE 64
#define PRIMARY_SEED_SIZE 32
#define CONTEXT_ENCRYPT_ALGORITHM AES
#define NV_CLOCK_UPDATE_INTERVAL 12
#define NUM_POLICY_PCR 1
#define ORDERLY_BITS 8
#define MAX_SYM_DATA 128
#define MAX_RNG_ENTROPY_SIZE 64
#define RAM_INDEX_SPACE 512
#define ENABLE_PCR_NO_INCREMENT YES
#define SIZE_OF_X509_SERIAL_NUMBER 20
// amount of space the platform can provide in PERSISTENT_DATA during
// manufacture
#define PERSISTENT_DATA_PLATFORM_SPACE 16
// structure padding space for these structures. Used if a
// particular configuration needs them to be aligned to a
// specific size
#define ORDERLY_DATA_PADDING 0
#define STATE_CLEAR_DATA_PADDING 0
#define STATE_RESET_DATA_PADDING 0
// configuration values that may vary by SIMULATION/DEBUG
#if SIMULATION && DEBUG
// This forces the use of a smaller context slot size. This reduction reduces the
// range of the epoch allowing the tester to force the epoch to occur faster than
// the normal production size
# define CONTEXT_SLOT UINT8
#else
# define CONTEXT_SLOT UINT16
#endif