1 /******************************************************************************
4 * TPM I/O interface for Xen guest OSes.
6 * Copyright (c) 2005, IBM Corporation
8 * Author: Stefan Berger, stefanb@us.ibm.com
9 * Grant table support: Mahadevan Gomathisankaran
11 * This code has been derived from tools/libxc/xen/io/netif.h
13 * Copyright (c) 2003-2004, Keir Fraser
16 #ifndef __XEN_PUBLIC_IO_TPMIF_H__
17 #define __XEN_PUBLIC_IO_TPMIF_H__
19 #include "../grant_table.h"
21 struct tpmif_tx_request {
22 unsigned long addr; /* Machine address of packet. */
23 grant_ref_t ref; /* grant table access reference */
25 uint16_t size; /* Packet size in bytes. */
27 typedef struct tpmif_tx_request tpmif_tx_request_t;
30 * The TPMIF_TX_RING_SIZE defines the number of pages the
31 * front-end and backend can exchange (= size of array).
33 typedef uint32_t TPMIF_RING_IDX;
35 #define TPMIF_TX_RING_SIZE 10
37 /* This structure must fit in a memory page. */
40 struct tpmif_tx_request req;
42 typedef struct tpmif_ring tpmif_ring_t;
44 struct tpmif_tx_interface {
45 struct tpmif_ring ring[TPMIF_TX_RING_SIZE];
47 typedef struct tpmif_tx_interface tpmif_tx_interface_t;
57 * indent-tabs-mode: nil