summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMattias Nissler <mnissler@chromium.org>2018-02-20 10:11:10 +0100
committerMattias Nissler <mnissler@chromium.org>2018-04-13 10:03:35 +0000
commitec9040c4ef51bef43e8c94c1ecd953145861d834 (patch)
treed15d370f9d45c6bde191930e034dfdd33f3d3d65
parent2e62620ce740bff57b659905f3a4a929898834f6 (diff)
downloadvboot-ec9040c4ef51bef43e8c94c1ecd953145861d834.tar.gz
tpm_lite: Add missing NVRAM attribute constants.
Add the remaining constants for NVRAM space attributes. The code previously only declared the ones required in vboot_reference, but that led to other code growing its own ad-hoc declarations for missing constants. Just declare them all to simplify things. BRANCH=None BUG=chromium:788719 TEST=compiles Change-Id: I749ae5e4dc1b2ba56121fe42fd136b505d8cae80 Reviewed-on: https://chromium-review.googlesource.com/937704 Trybot-Ready: Mattias Nissler <mnissler@chromium.org> Tested-by: Mattias Nissler <mnissler@chromium.org> Reviewed-by: Mattias Nissler <mnissler@chromium.org>
-rw-r--r--firmware/include/tpm1_tss_constants.h16
-rw-r--r--firmware/include/tpm2_tss_constants.h23
2 files changed, 32 insertions, 7 deletions
diff --git a/firmware/include/tpm1_tss_constants.h b/firmware/include/tpm1_tss_constants.h
index e91ccf6f..d839791d 100644
--- a/firmware/include/tpm1_tss_constants.h
+++ b/firmware/include/tpm1_tss_constants.h
@@ -18,10 +18,18 @@
#define TPM_NV_INDEX0 ((uint32_t) 0x00000000)
#define TPM_NV_INDEX_LOCK ((uint32_t) 0xffffffff)
-#define TPM_NV_PER_GLOBALLOCK (((uint32_t) 1) << 15)
-#define TPM_NV_PER_PPWRITE (((uint32_t) 1) << 0)
-#define TPM_NV_PER_READ_STCLEAR (((uint32_t)1) << 31)
-#define TPM_NV_PER_WRITE_STCLEAR (((uint32_t)1) << 14)
+
+#define TPM_NV_PER_READ_STCLEAR (((uint32_t)1) << 31)
+#define TPM_NV_PER_AUTHREAD (((uint32_t)1) << 18)
+#define TPM_NV_PER_OWNERREAD (((uint32_t)1) << 17)
+#define TPM_NV_PER_PPREAD (((uint32_t)1) << 16)
+#define TPM_NV_PER_GLOBALLOCK (((uint32_t)1) << 15)
+#define TPM_NV_PER_WRITE_STCLEAR (((uint32_t)1) << 14)
+#define TPM_NV_PER_WRITEDEFINE (((uint32_t)1) << 13)
+#define TPM_NV_PER_WRITEALL (((uint32_t)1) << 12)
+#define TPM_NV_PER_AUTHWRITE (((uint32_t)1) << 2)
+#define TPM_NV_PER_OWNERWRITE (((uint32_t)1) << 1)
+#define TPM_NV_PER_PPWRITE (((uint32_t)1) << 0)
#define TPM_TAG_NV_ATTRIBUTES ((uint16_t) 0x0017)
#define TPM_TAG_NV_DATA_PUBLIC ((uint16_t) 0x0018)
diff --git a/firmware/include/tpm2_tss_constants.h b/firmware/include/tpm2_tss_constants.h
index 92b53a0e..84ad05b7 100644
--- a/firmware/include/tpm2_tss_constants.h
+++ b/firmware/include/tpm2_tss_constants.h
@@ -68,15 +68,32 @@
#define TPMA_NV_OWNERWRITE ((TPMA_NV)(1UL << 1))
#define TPMA_NV_AUTHWRITE ((TPMA_NV)(1UL << 2))
#define TPMA_NV_POLICYWRITE ((TPMA_NV)(1UL << 3))
-#define TPMA_NV_MASK_WRITE (TPMA_NV_PPWRITE | TPMA_NV_OWNERWRITE |\
- TPMA_NV_AUTHWRITE | TPMA_NV_POLICYWRITE)
+#define TPMA_NV_COUNTER ((TPMA_NV)(1UL << 4))
+#define TPMA_NV_BITS ((TPMA_NV)(1UL << 5))
+#define TPMA_NV_EXTEND ((TPMA_NV)(1UL << 6))
+#define TPMA_NV_POLICY_DELETE ((TPMA_NV)(1UL << 10))
+#define TPMA_NV_WRITELOCKED ((TPMA_NV)(1UL << 11))
+#define TPMA_NV_WRITEALL ((TPMA_NV)(1UL << 12))
+#define TPMA_NV_WRITEDEFINE ((TPMA_NV)(1UL << 13))
+#define TPMA_NV_WRITE_STCLEAR ((TPMA_NV)(1UL << 14))
+#define TPMA_NV_GLOBALLOCK ((TPMA_NV)(1UL << 15))
#define TPMA_NV_PPREAD ((TPMA_NV)(1UL << 16))
#define TPMA_NV_OWNERREAD ((TPMA_NV)(1UL << 17))
#define TPMA_NV_AUTHREAD ((TPMA_NV)(1UL << 18))
#define TPMA_NV_POLICYREAD ((TPMA_NV)(1UL << 19))
+#define TPMA_NV_NO_DA ((TPMA_NV)(1UL << 25))
+#define TPMA_NV_ORDERLY ((TPMA_NV)(1UL << 26))
+#define TPMA_NV_CLEAR_STCLEAR ((TPMA_NV)(1UL << 27))
+#define TPMA_NV_READLOCKED ((TPMA_NV)(1UL << 28))
+#define TPMA_NV_WRITTEN ((TPMA_NV)(1UL << 29))
+#define TPMA_NV_PLATFORMCREATE ((TPMA_NV)(1UL << 30))
+#define TPMA_NV_READ_STCLEAR ((TPMA_NV)(1UL << 31))
+
#define TPMA_NV_MASK_READ (TPMA_NV_PPREAD | TPMA_NV_OWNERREAD |\
TPMA_NV_AUTHREAD | TPMA_NV_POLICYREAD)
-#define TPMA_NV_PLATFORMCREATE ((TPMA_NV)(1UL << 30))
+#define TPMA_NV_MASK_WRITE (TPMA_NV_PPWRITE | TPMA_NV_OWNERWRITE |\
+ TPMA_NV_AUTHWRITE |\
+ TPMA_NV_POLICYWRITE)
/* Starting indexes of NV index ranges, as defined in "Registry of reserved
* TPM 2.0 handles and localities".