11 #define BCD(x, y) (((x) << 4) | ((y) << 0))
103 u8 buf[] = {0xff, 0x01};
426 static const u32 tpm1_funcs[] = {
432 for (
size_t i = 0; i <
ARRAY_SIZE(tpm1_funcs); i++) {
442 static const u32 tpm2_funcs[] = {
452 for (
size_t i = 0; i <
ARRAY_SIZE(tpm2_funcs); i++) {
507 static const u8 tpm1_funcs[] = {
526 static const u8 tpm2_funcs[] = {
578 for (
size_t i = 0; i <
ARRAY_SIZE(tpm1_funcs); i++) {
579 ppib->
func[tpm1_funcs[i]] = 1;
580 if (ppib->
pprq == tpm1_funcs[i])
585 for (
size_t i = 0; i <
ARRAY_SIZE(tpm2_funcs); i++) {
586 ppib->
func[tpm2_funcs[i]] = 1;
587 if (ppib->
pprq == tpm2_funcs[i])
669 for (
size_t i = 0; i <
ARRAY_SIZE(tpm1_funcs); i++) {
678 for (
size_t i = 0; i <
ARRAY_SIZE(tpm2_funcs); i++) {
718 tpm_ppi->
size =
sizeof(*tpm_ppi);
void acpigen_write_dword(unsigned int data)
void acpigen_write_if(void)
void acpigen_emit_namestring(const char *namepath)
void acpigen_write_return_integer(uint64_t arg)
void acpigen_write_store(void)
void acpigen_write_integer(uint64_t data)
void acpigen_pop_len(void)
void acpigen_write_dsm_uuid_arr(struct dsm_uuid *ids, size_t count)
void acpigen_write_if_lequal_op_int(uint8_t op, uint64_t val)
void acpigen_write_return_byte(uint8_t arg)
void acpigen_write_method_serialized(const char *name, int nargs)
char * acpigen_write_package(int nr_el)
void acpigen_get_package_op_element(uint8_t package_op, unsigned int element, uint8_t dest_op)
void acpigen_emit_byte(unsigned char b)
void acpigen_write_to_integer(uint8_t src, uint8_t dst)
void acpigen_write_field(const char *name, const struct fieldlist *l, size_t count, uint8_t flags)
void acpigen_write_return_byte_buffer(uint8_t *arr, size_t size)
void acpigen_write_store_op_to_namestr(uint8_t src, const char *dst)
void acpigen_write_opregion(const struct opregion *opreg)
void acpigen_write_method(const char *name, int nargs)
void acpigen_write_return_singleton_buffer(uint8_t arg)
void acpigen_write_return_op(uint8_t arg)
void acpigen_write_name(const char *name)
void acpigen_write_return_string(const char *arg)
struct arm64_kernel_header header
void * memset(void *dstpp, int c, size_t len)
void * cbmem_add(u32 id, u64 size)
void * cbmem_find(u32 id)
@ LB_TPM_VERSION_TPM_VERSION_1_2
@ LB_TPM_VERSION_TPM_VERSION_2
#define printk(level,...)
static struct list_node list
#define DSM_UUID(DSM_UUID, DSM_CALLBACKS, DSM_COUNT, DSM_ARG)
#define FIELDLIST_OFFSET(X)
#define OPREGION(rname, space, offset, len)
#define FIELDLIST_NAMESTR(X, Y)
struct lb_record * lb_new_record(struct lb_header *header)
#define BIOS_DEBUG
BIOS_DEBUG - Verbose output.
#define BIOS_ERR
BIOS_ERR - System in incomplete state.
static void tpm_ppi_func7_cb(void *arg)
void lb_tpm_ppi(struct lb_header *header)
static void tpm_ppi_func0_cb(void *arg)
static void set_package_element_name(const char *package_name, unsigned int element, const char *src)
static void tpm_mci_func1_cb(void *arg)
static void(* tpm_mci_callbacks[])(void *)
static void tpm_ppi_func6_cb(void *arg)
static void tpm_mci_func0_cb(void *arg)
void tpm_ppi_acpi_fill_ssdt(const struct device *dev)
static void set_package_element_op(const char *package_name, unsigned int element, uint8_t src_op)
static void(* tpm_ppi_callbacks[])(void *)
static void tpm_ppi_func1_cb(void *arg)
static void verify_supported_ppi(uint8_t src_op)
static void tpm_ppi_func3_cb(void *arg)
static void tpm_ppi_func8_cb(void *arg)
static void tpm_ppi_func5_cb(void *arg)
static void tpm_ppi_func4_cb(void *arg)
static void tpm_ppi_func2_cb(void *arg)
#define PPI8_RET_ALLOWED_WITH_PP
#define TPM2_SET_PP_REQUIRED_FOR_CHANGE_EPS_FALSE
#define TPM2_ENABLE_CLEAR
#define TPM2_LOG_ALL_DIGEST
#define PPI2_RET_NOT_SUPPORTED
#define TPM2_SET_PP_REQUIRED_FOR_CLEAR_TRUE
#define TPM2_ENABLE_CLEAR2
#define TPM2_SET_PP_REQUIRED_FOR_TURN_OFF_FALSE
#define TPM2_SET_PP_REQUIRED_FOR_ENABLE_BLOCK_SID_TRUE
#define TPM2_SET_PP_REQUIRED_FOR_DISABLE_BLOCK_SID_FALSE
#define TPM2_SET_PP_REQUIRED_FOR_ENABLE_BLOCK_SID_FALSE
#define PPI5_RET_GENERAL_FAILURE
#define TPM2_SET_PP_REQUIRED_FOR_CHANGE_EPS_TRUE
#define TPM2_SET_PP_REQUIRED_FOR_CLEAR_FALSE
#define TPM2_SET_PP_REQUIRED_FOR_TURN_ON_FALSE
#define TPM_ENABLE_ACTIVE_CLEAR_ENABLE_ACTIVE
#define TPM_SET_NOPPICLEAR_TRUE
#define TPM_SET_NOPPIPROVISION_FALSE
#define TPM_CLEAR_ENABLE_ACTIVATE
#define PPI3_RET_GENERAL_FAILURE
#define PPI7_RET_GENERAL_FAILURE
#define TPM2_SET_PP_REQUIRED_FOR_TURN_ON_TRUE
#define TPM_ENABLE_ACTIVE_CLEAR
#define PPI8_RET_NOT_IMPLEMENTED
#define TPM_ENABLE_ACTIVATE_SETOWNERINSTALL_TRUE
#define TPM_SET_NOPPIPROVISION_TRUE
#define TPM_SETOWNERINSTALL_FALSE_DEACTIVATE_DISABLE
#define TPM2_CLEAR_ENABLE_ACTIVE
#define TPM2_SET_PP_REQUIRED_FOR_CHANGE_PCRS_TRUE
#define PPI6_RET_NOT_IMPLEMENTED
#define TPM_SETOWNERINSTALL_FALSE
#define TPM2_SET_PP_REQUIRED_FOR_DISABLE_BLOCK_SID_TRUE
#define VENDOR_SPECIFIC_OFFSET
#define TPM2_DISABLE_BLOCK_SID
#define TPM2_ENABLE_BLOCK_SID
#define TPM_ENABLE_ACTIVATE
#define TPM2_SET_PP_REQUIRED_FOR_CHANGE_PCRS_FALSE
#define TPM2_SET_PP_REQUIRED_FOR_TURN_OFF_TRUE
#define TPM2_DISABLE_ENDORSMENT_ENABLE_STORAGE_HISTORY
#define TPM_SET_NOPPIMAINTAINANCE_TRUE
#define TPM_SETOWNERINSTALL_TRUE
#define TPM_DEACTIVATE_DISABLE
#define PPI2_RET_GENERAL_FAILURE
#define TPM2_SET_PCR_BANKS
typedef void(X86APIP X86EMU_intrFuncs)(int num)