12345678910111213141516171819202122232425262728293031323334353637383940 |
- /* SPDX-License-Identifier: GPL-2.0 */
- /*
- * Copyright (C) Microsoft Corporation
- */
- #ifndef __TPM_FTPM_TEE_H__
- #define __TPM_FTPM_TEE_H__
- #include <linux/tee_drv.h>
- #include <linux/tpm.h>
- #include <linux/uuid.h>
- /* The TAFs ID implemented in this TA */
- #define FTPM_OPTEE_TA_SUBMIT_COMMAND (0)
- #define FTPM_OPTEE_TA_EMULATE_PPI (1)
- /* max. buffer size supported by fTPM */
- #define MAX_COMMAND_SIZE 4096
- #define MAX_RESPONSE_SIZE 4096
- /**
- * struct ftpm_tee_private - fTPM's private data
- * @chip: struct tpm_chip instance registered with tpm framework.
- * @state: internal state
- * @session: fTPM TA session identifier.
- * @resp_len: cached response buffer length.
- * @resp_buf: cached response buffer.
- * @ctx: TEE context handler.
- * @shm: Memory pool shared with fTPM TA in TEE.
- */
- struct ftpm_tee_private {
- struct tpm_chip *chip;
- u32 session;
- size_t resp_len;
- u8 resp_buf[MAX_RESPONSE_SIZE];
- struct tee_context *ctx;
- struct tee_shm *shm;
- };
- #endif /* __TPM_FTPM_TEE_H__ */
|