aboutsummaryrefslogtreecommitdiffstats
path: root/xen/arch/x86/tboot.c
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2009-01-29 11:32:06 +0000
committerKeir Fraser <keir.fraser@citrix.com>2009-01-29 11:32:06 +0000
commita2e15112374cf37c5bbf7c6db90c33ecc1c4b872 (patch)
tree475bef12e77431339ce427439132a000fb6c0649 /xen/arch/x86/tboot.c
parent6fd8a628cfe4f9249031f8c920d9963ae79db274 (diff)
downloadxen-a2e15112374cf37c5bbf7c6db90c33ecc1c4b872.tar.gz
xen-a2e15112374cf37c5bbf7c6db90c33ecc1c4b872.tar.bz2
xen-a2e15112374cf37c5bbf7c6db90c33ecc1c4b872.zip
tboot: single tboot entry point for shutdown
tboot removed the shutdown_entry32 and shutdown_entry64 from tboot_shared_t and now has just a single shutdown_entry field. Signed-off-by: Joseph Cihula <joseph.cihula@intel.com>
Diffstat (limited to 'xen/arch/x86/tboot.c')
-rw-r--r--xen/arch/x86/tboot.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/xen/arch/x86/tboot.c b/xen/arch/x86/tboot.c
index 697ca9f461..b03338f54f 100644
--- a/xen/arch/x86/tboot.c
+++ b/xen/arch/x86/tboot.c
@@ -37,8 +37,7 @@ void __init tboot_probe(void)
printk("TBOOT: found shared page at phys addr %lx:\n", p_tboot_shared);
printk(" version: %d\n", tboot_shared->version);
printk(" log_addr: 0x%08x\n", tboot_shared->log_addr);
- printk(" shutdown_entry32: 0x%08x\n", tboot_shared->shutdown_entry32);
- printk(" shutdown_entry64: 0x%08x\n", tboot_shared->shutdown_entry64);
+ printk(" shutdown_entry: 0x%08x\n", tboot_shared->shutdown_entry);
printk(" shutdown_type: %d\n", tboot_shared->shutdown_type);
printk(" s3_tb_wakeup_entry: 0x%08x\n", tboot_shared->s3_tb_wakeup_entry);
printk(" s3_k_wakeup_entry: 0x%08x\n", tboot_shared->s3_k_wakeup_entry);
@@ -82,11 +81,7 @@ void tboot_shutdown(uint32_t shutdown_type)
write_ptbase(idle_vcpu[0]);
-#ifdef __x86_64__
- asm volatile ( "call *%%rdi" :: "D" (g_tboot_shared->shutdown_entry64) );
-#else
- asm volatile ( "call *%0" :: "r" (g_tboot_shared->shutdown_entry32) );
-#endif
+ ((void(*)(void))(unsigned long)g_tboot_shared->shutdown_entry)();
BUG(); /* should not reach here */
}