diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/dm/ofnode.h | 2 | ||||
-rw-r--r-- | include/tpm.h | 15 |
2 files changed, 16 insertions, 1 deletions
diff --git a/include/dm/ofnode.h b/include/dm/ofnode.h index 79374b8f91..8b9932a569 100644 --- a/include/dm/ofnode.h +++ b/include/dm/ofnode.h @@ -45,7 +45,7 @@ struct resource; * the DT. * * @np: Pointer to device node, used for live tree - * @flat_ptr: Pointer into flat device tree, used for flat tree. Note that this + * @of_offset: Pointer into flat device tree, used for flat tree. Note that this * is not a really a pointer to a node: it is an offset value. See above. */ typedef union ofnode_union { diff --git a/include/tpm.h b/include/tpm.h index f88388f353..760d94865c 100644 --- a/include/tpm.h +++ b/include/tpm.h @@ -84,9 +84,12 @@ enum tpm_capability_areas { }; #define TPM_NV_PER_GLOBALLOCK (1U << 15) +#define TPM_NV_PER_PPREAD (1U << 16) #define TPM_NV_PER_PPWRITE (1U << 0) #define TPM_NV_PER_READ_STCLEAR (1U << 31) #define TPM_NV_PER_WRITE_STCLEAR (1U << 14) +#define TPM_NV_PER_WRITEDEFINE (1U << 13) +#define TPM_NV_PER_WRITEALL (1U << 12) enum { TPM_PUBEK_SIZE = 256, @@ -651,4 +654,16 @@ uint32_t tpm_flush_specific(uint32_t key_handle, uint32_t resource_type); uint32_t tpm_find_key_sha1(const uint8_t auth[20], const uint8_t pubkey_digest[20], uint32_t *handle); #endif /* CONFIG_TPM_LOAD_KEY_BY_SHA1 */ + +/** + * Read random bytes from the TPM RNG. The implementation deals with the fact + * that the TPM may legally return fewer bytes than requested by retrying + * until @p count bytes have been received. + * + * @param data output buffer for the random bytes + * @param count size of output buffer + * @return return code of the operation + */ +uint32_t tpm_get_random(void *data, uint32_t count); + #endif /* __TPM_H */ |