summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorJames Morris <james.morris@microsoft.com>2018-07-30 09:30:19 -0700
committerJames Morris <james.morris@microsoft.com>2018-07-30 09:30:19 -0700
commit5da08f7d01693433ff6bea0c3462a5173d577540 (patch)
treea2a302177adbd31edcba2f9cd254f963853711e2 /include/linux
parent87ea58433208d17295e200d56be5e2a4fe4ce7d6 (diff)
parentec403d8ed08c8272cfeeeea154fdebcd289988c8 (diff)
Merge tag 'tpmdd-next-20180728' of git://git.infradead.org/users/jjs/linux-tpmdd into next-tpm
tpmdd updates for Linux 4.19 From Jarkko: * Migrated away from PM runtime as explicit cmdReady/goIdle trasactions for every command is a spec requirement. PM runtime adds only a layer of complexity on our case. * tpm_tis drivers can now specify the hwrng quality. * TPM 2.0 code uses now tpm_buf for constructing messages. I think Tomas Winkler has done the same for TPM 1.2. I'll start digging those changes from the patchwork in the near future. * Bug fixes and clean ups.
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/tpm.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/linux/tpm.h b/include/linux/tpm.h
index 06639fb6ab85..4609b94142d4 100644
--- a/include/linux/tpm.h
+++ b/include/linux/tpm.h
@@ -43,6 +43,8 @@ struct tpm_class_ops {
u8 (*status) (struct tpm_chip *chip);
bool (*update_timeouts)(struct tpm_chip *chip,
unsigned long *timeout_cap);
+ int (*go_idle)(struct tpm_chip *chip);
+ int (*cmd_ready)(struct tpm_chip *chip);
int (*request_locality)(struct tpm_chip *chip, int loc);
int (*relinquish_locality)(struct tpm_chip *chip, int loc);
void (*clk_enable)(struct tpm_chip *chip, bool value);
@@ -61,6 +63,7 @@ extern int tpm_seal_trusted(struct tpm_chip *chip,
extern int tpm_unseal_trusted(struct tpm_chip *chip,
struct trusted_key_payload *payload,
struct trusted_key_options *options);
+extern struct tpm_chip *tpm_default_chip(void);
#else
static inline int tpm_is_tpm2(struct tpm_chip *chip)
{
@@ -96,5 +99,9 @@ static inline int tpm_unseal_trusted(struct tpm_chip *chip,
{
return -ENODEV;
}
+static inline struct tpm_chip *tpm_default_chip(void)
+{
+ return NULL;
+}
#endif
#endif