summaryrefslogtreecommitdiffstats
path: root/pc-bios/optionrom
diff options
context:
space:
mode:
authorJan Kiszka2012-02-17 18:31:22 +0100
committerAvi Kivity2012-02-18 11:16:01 +0100
commit501981126d0aaaa72f720edeee892b830cbe3e55 (patch)
treef23c2a5c73803051bee1be86fb1226aa45563a88 /pc-bios/optionrom
parentoptionsrom: Reserve space for checksum (diff)
downloadqemu-501981126d0aaaa72f720edeee892b830cbe3e55.tar.gz
qemu-501981126d0aaaa72f720edeee892b830cbe3e55.tar.xz
qemu-501981126d0aaaa72f720edeee892b830cbe3e55.zip
kvmvapic: Use optionrom helpers
Use OPTION_ROM_START/END from the common header file, add comment to init code. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'pc-bios/optionrom')
-rw-r--r--pc-bios/optionrom/kvmvapic.S18
1 files changed, 8 insertions, 10 deletions
diff --git a/pc-bios/optionrom/kvmvapic.S b/pc-bios/optionrom/kvmvapic.S
index 856c1e519d..aa17a402df 100644
--- a/pc-bios/optionrom/kvmvapic.S
+++ b/pc-bios/optionrom/kvmvapic.S
@@ -9,12 +9,10 @@
# option) any later version. See the COPYING file in the top-level directory.
#
- .text 0
- .code16
-.global _start
-_start:
- .short 0xaa55
- .byte (_end - _start) / 512
+#include "optionrom.h"
+
+OPTION_ROM_START
+
# clear vapic area: firmware load using rep insb may cause
# stale tpr/isr/irr data to corrupt the vapic area.
push %es
@@ -26,8 +24,11 @@ _start:
cld
rep stosw
pop %es
+
+ # announce presence to the hypervisor
mov $vapic_base, %ax
out %ax, $0x7e
+
lret
.code32
@@ -331,7 +332,4 @@ up_set_tpr_poll_irq:
vapic:
. = . + vapic_size
-.byte 0 # reserve space for signature
-.align 512, 0
-
-_end:
+OPTION_ROM_END