diff options
author | Keir Fraser <keir@xen.org> | 2011-07-25 13:57:49 +0100 |
---|---|---|
committer | Keir Fraser <keir@xen.org> | 2011-07-25 13:57:49 +0100 |
commit | 62d1e95e708bb750b405cd6c5406ed7dff15522c (patch) | |
tree | f52893bf1d728b927d847becfe584e7ed4397565 /tools/firmware/hvmloader/rombios.c | |
parent | 63b9bf301796cf0f592aa6e35fe3f62b373eac99 (diff) | |
download | xen-62d1e95e708bb750b405cd6c5406ed7dff15522c.tar.gz xen-62d1e95e708bb750b405cd6c5406ed7dff15522c.tar.bz2 xen-62d1e95e708bb750b405cd6c5406ed7dff15522c.zip |
hvmloader: Replace bios_relocate hook with bios_load hook
Used by OVMF BIOS handler.
Signed-off-by: Bei Guan <gbtju85@gmail.com>
Signed-off-by: Keir Fraser <keir@xen.org>
Diffstat (limited to 'tools/firmware/hvmloader/rombios.c')
-rw-r--r-- | tools/firmware/hvmloader/rombios.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/tools/firmware/hvmloader/rombios.c b/tools/firmware/hvmloader/rombios.c index 96ba718f3f..632ab87c45 100644 --- a/tools/firmware/hvmloader/rombios.c +++ b/tools/firmware/hvmloader/rombios.c @@ -81,11 +81,15 @@ static void rombios_setup_bios_info(void) memset(info, 0, sizeof(*info)); } -static void rombios_relocate(void) +static void rombios_load(const struct bios_config *config) { uint32_t bioshigh; struct rombios_info *info; + printf("Loading %s ...\n", config->name); + memcpy((void *)config->bios_address, config->image, + config->image_size); + bioshigh = rombios_highbios_setup(); info = (struct rombios_info *)BIOS_INFO_PHYSICAL_ADDRESS; @@ -169,11 +173,11 @@ struct bios_config rombios_config = { .optionrom_start = OPTIONROM_PHYSICAL_ADDRESS, .optionrom_end = OPTIONROM_PHYSICAL_END, + .bios_load = rombios_load, + .bios_info_setup = rombios_setup_bios_info, .bios_info_finish = NULL, - .bios_relocate = rombios_relocate, - .vm86_setup = rombios_init_vm86_tss, .e820_setup = rombios_setup_e820, |