evtchn_port_t evtchn;
/* Shared page */
- vtpm_shared_page_t *page;
+ tpmif_shared_page_t *page;
enum xenbus_state state;
enum { DISCONNECTED, DISCONNECTING, CONNECTED } status;
void tpmback_handler(evtchn_port_t port, struct pt_regs *regs, void *data)
{
tpmif_t* tpmif = (tpmif_t*) data;
- vtpm_shared_page_t* pg = tpmif->page;
+ tpmif_shared_page_t *pg = tpmif->page;
switch (pg->state)
{
- case VTPM_STATE_SUBMIT:
+ case TPMIF_STATE_SUBMIT:
TPMBACK_DEBUG("EVENT CHANNEL FIRE %u/%u\n", (unsigned int) tpmif->domid, tpmif->handle);
tpmif_req_ready(tpmif);
wake_up(&waitq);
break;
- case VTPM_STATE_CANCEL:
+ case TPMIF_STATE_CANCEL:
/* If we are busy with a request, do nothing */
if (tpmif->flags & TPMIF_REQ_READY)
return;
/* Acknowledge the cancellation if we are idle */
- pg->state = VTPM_STATE_IDLE;
+ pg->state = TPMIF_STATE_IDLE;
wmb();
notify_remote_via_evtchn(tpmif->evtchn);
return;
tpmcmd_t* get_request(tpmif_t* tpmif) {
tpmcmd_t* cmd;
- vtpm_shared_page_t* shr;
+ tpmif_shared_page_t *shr;
unsigned int offset;
int flags;
#ifdef TPMBACK_PRINT_DEBUG
void send_response(tpmcmd_t* cmd, tpmif_t* tpmif)
{
- vtpm_shared_page_t* shr;
+ tpmif_shared_page_t *shr;
unsigned int offset;
int flags;
#ifdef TPMBACK_PRINT_DEBUG
/* clear the ready flag and send the event channel notice to the frontend */
tpmif_req_finished(tpmif);
barrier();
- shr->state = VTPM_STATE_FINISH;
+ shr->state = TPMIF_STATE_FINISH;
wmb();
notify_remote_via_evtchn(tpmif->evtchn);
error:
void tpmfront_handler(evtchn_port_t port, struct pt_regs *regs, void *data) {
struct tpmfront_dev* dev = (struct tpmfront_dev*) data;
- vtpm_shared_page_t* shr = dev->page;
+ tpmif_shared_page_t *shr = dev->page;
/*If we get a response when we didnt make a request, just ignore it */
if(!dev->waiting) {
return;
}
switch (shr->state) {
- case VTPM_STATE_FINISH: /* request was completed */
- case VTPM_STATE_IDLE: /* request was cancelled */
+ case TPMIF_STATE_FINISH: /* request was completed */
+ case TPMIF_STATE_IDLE: /* request was cancelled */
break;
default:
/* Spurious wakeup; do nothing, request is still pending */
{
char* err;
/* Create shared page */
- dev->page = (vtpm_shared_page_t*) alloc_page();
+ dev->page = (tpmif_shared_page_t *)alloc_page();
if(dev->page == NULL) {
TPMFRONT_ERR("Unable to allocate page for shared memory\n");
goto error;
int tpmfront_send(struct tpmfront_dev* dev, const uint8_t* msg, size_t length)
{
unsigned int offset;
- vtpm_shared_page_t* shr = NULL;
+ tpmif_shared_page_t *shr = NULL;
#ifdef TPMFRONT_PRINT_DEBUG
int i;
#endif
memcpy(offset + (uint8_t*)shr, msg, length);
shr->length = length;
barrier();
- shr->state = VTPM_STATE_SUBMIT;
+ shr->state = TPMIF_STATE_SUBMIT;
dev->waiting = 1;
dev->resplen = 0;
int tpmfront_recv(struct tpmfront_dev* dev, uint8_t** msg, size_t *length)
{
unsigned int offset;
- vtpm_shared_page_t* shr = NULL;
+ tpmif_shared_page_t *shr = NULL;
#ifdef TPMFRONT_PRINT_DEBUG
int i;
#endif
*length = 0;
offset = sizeof(*shr);
- if (shr->state != VTPM_STATE_FINISH)
+ if (shr->state != TPMIF_STATE_FINISH)
goto quit;
*length = shr->length;