Allow tpmfront/tpmback to be built as modules.

From: Jan Beulich

Signed-off-by: Keir Fraser <keir@xensource.com>
This commit is contained in:
kaf24@firebug.cl.cam.ac.uk committed 2006-02-28 19:00:15 +01:00
1 parent a7361f672b
commit cc12ca26b5
6 files changed
+46 -4

No files matched your search

+2 -2
View File
@@ -118,7 +118,7 @@ config XEN_NETDEV_LOOPBACK
connection.
config XEN_TPMDEV_BACKEND
bool "TPM-device backend driver"
tristate "TPM-device backend driver"
default n
help
The TPM-device backend driver
@@ -162,7 +162,7 @@ config XEN_BLKDEV_TAP
space. Odds are that you want to say N here.
config XEN_TPMDEV_FRONTEND
bool "TPM-device frontend driver"
tristate "TPM-device frontend driver"
default n
select TCG_TPM
select TCG_XEN
@@ -54,9 +54,11 @@ typedef struct tpmif_st {
void tpmif_disconnect_complete(tpmif_t * tpmif);
tpmif_t *tpmif_find(domid_t domid, long int instance);
void tpmif_interface_init(void);
void tpmif_interface_exit(void);
void tpmif_schedule_work(tpmif_t * tpmif);
void tpmif_deschedule_work(tpmif_t * tpmif);
void tpmif_xenbus_init(void);
void tpmif_xenbus_exit(void);
int tpmif_map(tpmif_t *tpmif, unsigned long shared_page, unsigned int evtchn);
irqreturn_t tpmif_be_int(int irq, void *dev_id, struct pt_regs *regs);
int tpmif_vtpm_open(tpmif_t *tpmif, domid_t domain, u32 instance);
@@ -186,6 +186,12 @@ tpmif_interface_init(void)
0, 0, NULL, NULL);
}
void __init
tpmif_interface_exit(void)
{
kmem_cache_destroy(tpmif_cachep);
}
/*
* Local variables:
* c-file-style: "linux"
@@ -1092,7 +1092,20 @@ tpmback_init(void)
return 0;
}
__initcall(tpmback_init);
module_init(tpmback_init);
static void __exit
tpmback_exit(void)
{
tpmif_xenbus_exit();
tpmif_interface_exit();
misc_deregister(&ibmvtpms_miscdevice);
}
module_exit(tpmback_exit);
MODULE_LICENSE("Dual BSD/GPL");
/*
* Local variables:
@@ -317,6 +317,11 @@ void tpmif_xenbus_init(void)
xenbus_register_backend(&tpmback);
}
void tpmif_xenbus_exit(void)
{
xenbus_unregister_driver(&tpmback);
}
/*
* Local variables:
* c-file-style: "linux"
@@ -480,6 +480,11 @@ static void __init init_tpm_xenbus(void)
xenbus_register_frontend(&tpmfront);
}
static void __exit exit_tpm_xenbus(void)
{
xenbus_unregister_driver(&tpmfront);
}
static int
tpm_allocate_buffers(struct tpm_private *tp)
@@ -700,7 +705,18 @@ tpmif_init(void)
return 0;
}
__initcall(tpmif_init);
module_init(tpmif_init);
static void __exit
tpmif_exit(void)
{
exit_tpm_xenbus();
gnttab_free_grant_references(gref_head);
}
module_exit(tpmif_exit);
MODULE_LICENSE("Dual BSD/GPL");
/*
* Local variables:
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.