1 /*- 2 * SPDX-License-Identifier: BSD-2-Clause 3 * 4 * Copyright (c) 2023 Beckhoff Automation GmbH & Co. KG 5 * Author: Corvin Köhne <corvink@FreeBSD.org> 6 */ 7 8 #pragma once 9 10 #include <sys/linker_set.h> 11 12 #include "config.h" 13 14 struct tpm_device; 15 16 struct tpm_emul { 17 const char *name; 18 19 int (*init)(void **sc, nvlist_t *nvl); 20 void (*deinit)(void *sc); 21 int (*execute_cmd)(void *sc, void *cmd, uint32_t cmd_size, void *rsp, 22 uint32_t rsp_size); 23 }; 24 #define TPM_EMUL_SET(x) DATA_SET(tpm_emul_set, x) 25