Skip to content

Commit

Permalink
tpm-tis: remove tpm_tis.h header
Browse files Browse the repository at this point in the history
The definitions are now private to TIS implementation.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
  • Loading branch information
elmarco authored and stefanberger committed Oct 19, 2017
1 parent 5086bf9 commit 732cd58
Show file tree
Hide file tree
Showing 3 changed files with 71 additions and 96 deletions.
1 change: 0 additions & 1 deletion hw/tpm/tpm_passthrough.c
Expand Up @@ -31,7 +31,6 @@
#include "hw/hw.h"
#include "hw/i386/pc.h"
#include "qapi/clone-visitor.h"
#include "tpm_tis.h"
#include "tpm_util.h"

#define DEBUG_TPM 0
Expand Down
72 changes: 71 additions & 1 deletion hw/tpm/tpm_tis.c
Expand Up @@ -23,17 +23,87 @@
*/

#include "qemu/osdep.h"
#include "hw/isa/isa.h"
#include "sysemu/tpm_backend.h"
#include "tpm_int.h"
#include "sysemu/block-backend.h"
#include "exec/address-spaces.h"
#include "hw/hw.h"
#include "hw/i386/pc.h"
#include "hw/pci/pci_ids.h"
#include "tpm_tis.h"
#include "qapi/error.h"
#include "qemu-common.h"
#include "qemu/main-loop.h"
#include "hw/acpi/tpm.h"

#define TPM_TIS_NUM_LOCALITIES 5 /* per spec */
#define TPM_TIS_LOCALITY_SHIFT 12
#define TPM_TIS_NO_LOCALITY 0xff

#define TPM_TIS_IS_VALID_LOCTY(x) ((x) < TPM_TIS_NUM_LOCALITIES)

#define TPM_TIS_BUFFER_MAX 4096

typedef enum {
TPM_TIS_STATE_IDLE = 0,
TPM_TIS_STATE_READY,
TPM_TIS_STATE_COMPLETION,
TPM_TIS_STATE_EXECUTION,
TPM_TIS_STATE_RECEPTION,
} TPMTISState;

typedef struct TPMSizedBuffer {
uint32_t size;
uint8_t *buffer;
} TPMSizedBuffer;

/* locality data -- all fields are persisted */
typedef struct TPMLocality {
TPMTISState state;
uint8_t access;
uint32_t sts;
uint32_t iface_id;
uint32_t inte;
uint32_t ints;

uint16_t w_offset;
uint16_t r_offset;
TPMSizedBuffer w_buffer;
TPMSizedBuffer r_buffer;
} TPMLocality;

typedef struct TPMTISEmuState {
QEMUBH *bh;
uint32_t offset;
uint8_t buf[TPM_TIS_BUFFER_MAX];

uint8_t active_locty;
uint8_t aborting_locty;
uint8_t next_locty;

TPMLocality loc[TPM_TIS_NUM_LOCALITIES];

qemu_irq irq;
uint32_t irq_num;
} TPMTISEmuState;

struct TPMState {
ISADevice busdev;
MemoryRegion mmio;

union {
TPMTISEmuState tis;
} s;

uint8_t locty_number;
TPMBackendCmd cmd;

char *backend;
TPMBackend *be_driver;
TPMVersion be_tpm_version;
};

#define TPM(obj) OBJECT_CHECK(TPMState, (obj), TYPE_TPM_TIS)

#define DEBUG_TIS 0

Expand Down
94 changes: 0 additions & 94 deletions hw/tpm/tpm_tis.h

This file was deleted.

0 comments on commit 732cd58

Please sign in to comment.