| Index: src/platform/vboot_reference/common/include/tss_constants.h
|
| diff --git a/src/platform/vboot_reference/common/include/tss_constants.h b/src/platform/vboot_reference/common/include/tss_constants.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..523f075e4203524ccdbfec9dd8c5f9e36037bfaf
|
| --- /dev/null
|
| +++ b/src/platform/vboot_reference/common/include/tss_constants.h
|
| @@ -0,0 +1,72 @@
|
| +/* Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
|
| + * Use of this source code is governed by a BSD-style license that can be
|
| + * found in the LICENSE file.
|
| + *
|
| + * Some TPM constants and type definitions for standalone compilation for use in
|
| + * the firmware
|
| + */
|
| +
|
| +/* FIXME(gauravsh):
|
| + * NOTE: This file is copied over from
|
| + * src/platform/tpm_lite/src/tlcl/tss_constants.h
|
| + * Ideally, we want to directly include it without having two maintain
|
| + * duplicate copies in sync. But in the current model, this is hard
|
| + * to do without breaking standalone compilation.
|
| + * Eventually tpm_lite should be moved into vboot_reference.
|
| + */
|
| +
|
| +#ifndef TPM_LITE_TSS_CONSTANTS_H_
|
| +#define TPM_LITE_TSS_CONSTANTS_H_
|
| +
|
| +#include <stdint.h>
|
| +
|
| +#define TPM_MAX_COMMAND_SIZE 4096
|
| +#define TPM_LARGE_ENOUGH_COMMAND_SIZE 256 /* saves space in the firmware */
|
| +
|
| +#define TPM_SUCCESS ((uint32_t)0x00000000)
|
| +#define TPM_NV_INDEX0 ((uint32_t)0x00000000)
|
| +#define TPM_NV_INDEX_LOCK ((uint32_t)0xffffffff)
|
| +#define TPM_NV_PER_WRITE_STCLEAR (((uint32_t)1)<<14)
|
| +#define TPM_NV_PER_PPWRITE (((uint32_t)1)<<0)
|
| +
|
| +typedef uint8_t TSS_BOOL;
|
| +typedef uint16_t TPM_STRUCTURE_TAG;
|
| +
|
| +typedef struct tdTPM_WRITE_INFO {
|
| + uint32_t nvIndex;
|
| + uint32_t offset;
|
| + uint32_t dataSize;
|
| +} TPM_WRITE_INFO;
|
| +
|
| +typedef struct tdTPM_PERMANENT_FLAGS
|
| +{
|
| + TPM_STRUCTURE_TAG tag;
|
| + TSS_BOOL disable;
|
| + TSS_BOOL ownership;
|
| + TSS_BOOL deactivated;
|
| + TSS_BOOL readPubek;
|
| + TSS_BOOL disableOwnerClear;
|
| + TSS_BOOL allowMaintenance;
|
| + TSS_BOOL physicalPresenceLifetimeLock;
|
| + TSS_BOOL physicalPresenceHWEnable;
|
| + TSS_BOOL physicalPresenceCMDEnable;
|
| + TSS_BOOL CEKPUsed;
|
| + TSS_BOOL TPMpost;
|
| + TSS_BOOL TPMpostLock;
|
| + TSS_BOOL FIPS;
|
| + TSS_BOOL Operator;
|
| + TSS_BOOL enableRevokeEK;
|
| + TSS_BOOL nvLocked;
|
| + TSS_BOOL readSRKPub;
|
| + TSS_BOOL tpmEstablished;
|
| + TSS_BOOL maintenanceDone;
|
| + TSS_BOOL disableFullDALogicInfo;
|
| +} TPM_PERMANENT_FLAGS;
|
| +
|
| +#define TPM_ALL_LOCALITIES (TPM_LOC_ZERO | TPM_LOC_ONE | TPM_LOC_TWO \
|
| + | TPM_LOC_THREE | TPM_LOC_FOUR) /* 0x1f */
|
| +
|
| +#define TPM_ENCAUTH_SIZE 20
|
| +#define TPM_PUBEK_SIZE 256
|
| +
|
| +#endif /* TPM_LITE_TSS_CONSTANTS_H_ */
|
|
|