From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Liu Subject: [PATCH RFC 4/4] hvmloader:ovmf: setup E820 map Date: Fri, 15 Nov 2013 15:59:25 +0000 Message-ID: <1384531165-3600-5-git-send-email-wei.liu2@citrix.com> References: <1384531165-3600-1-git-send-email-wei.liu2@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1VhLpL-0007ng-Cg for xen-devel@lists.xenproject.org; Fri, 15 Nov 2013 16:00:59 +0000 In-Reply-To: <1384531165-3600-1-git-send-email-wei.liu2@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: xen-devel@lists.xenproject.org Cc: wei.liu2@citrix.com List-Id: xen-devel@lists.xenproject.org E820 map will be used by OVMF to create memory map. Signed-off-by: Wei Liu --- tools/firmware/hvmloader/ovmf.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/tools/firmware/hvmloader/ovmf.c b/tools/firmware/hvmloader/ovmf.c index c253083..52ccd0d 100644 --- a/tools/firmware/hvmloader/ovmf.c +++ b/tools/firmware/hvmloader/ovmf.c @@ -128,6 +128,17 @@ static void ovmf_create_smbios_tables(void) SMBIOS_PHYSICAL_END); } +static void ovmf_setup_e820(void) +{ + struct ovmf_info *info = (void *)OVMF_INFO_PHYSICAL_ADDRESS; + struct e820entry *e820 = scratch_alloc(sizeof(struct e820entry)*16, 0); + info->e820 = (uint32_t)e820; + + /* OVMF doesn't load bios image below 0x100000 */ + info->e820_nr = build_e820_table(e820, 0, 0xfffff); + dump_e820_table(e820, info->e820_nr); +} + struct bios_config ovmf_config = { .name = "OVMF", @@ -142,7 +153,7 @@ struct bios_config ovmf_config = { .bios_info_setup = ovmf_setup_bios_info, .bios_info_finish = ovmf_finish_bios_info, - .e820_setup = NULL, + .e820_setup = ovmf_setup_e820, .acpi_build_tables = ovmf_acpi_build_tables, .create_mp_tables = NULL, -- 1.7.10.4