[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: UEFI support in ARM DomUs


  • To: Oleksandr Andrushchenko <Oleksandr_Andrushchenko@xxxxxxxx>, Julien Grall <julien@xxxxxxx>, Julien Grall <julien.grall.oss@xxxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>
  • From: Peng Fan <peng.fan@xxxxxxx>
  • Date: Fri, 19 Jun 2020 13:16:03 +0000
  • Accept-language: en-US
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UEdNxY+g7LQrXV8ZeUkIs+/yYdtSpwkUlHJjyyLUgeg=; b=SPNTcWdugMK5P8J/FBCyiJQB03xjVz8irHqlzQRw/D9XKMVES6LAmMXj+csLo9OzyUx0ZwY6W44X0w6jht9RpekTMecr7G7otkQsVXJJcjiydPGcF/SGspglrpgzGD34a11GMx6OVqewkF1fYaFgRoviiJGtgksXUTZbhzahtWes6zwJeacEbRMOeJ6ffEE43Yx92RjE4i2C03qdD3zQujDjSmceBniHD/9TGj0daIgDjAH33kACwgjMNXqheNhIBNebVojRG4vMECG3aAcmy7zqfCFJ+slL/p3a48+N2sKaXhCRjDvsmGsZE8eW8MPzNNndkaLJdOTWS3N50m0jAw==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mqhAmZvxCsPKRU+/gfVNSOiqPU0Uw6+dYvKCgZVXpbfwjih6NfvNKz7fYYh3odzkK7MfrLA9JIKozqsExxd0sToZ1sAnp0Wao8AgiH7jqhSLH5FzEzV7/bY7xaUvE8YREvgxDxOgh8suWmWZ6z1O8L4f3KG31f9IvBGxuWqH97FTz0P+LUCgajus2DooOriIK/rJkgnrzaIEykCKeyT4pp8ooZVKjfX3aygULb+Opyrq2GsRkAJ81vOHm6H/lm5XlzKNjzOK/fqS9f8it16X2xXwmObUylmCM7ypXsuUy6XlEaki3H9sYtpheYVvs3M0m1JI7A6O30UhIJN5GePP5w==
  • Authentication-results: epam.com; dkim=none (message not signed) header.d=none;epam.com; dmarc=none action=none header.from=nxp.com;
  • Cc: Anastasiia Lukianenko <Anastasiia_Lukianenko@xxxxxxxx>, Juergen Gross <jgross@xxxxxxxx>, Roman Shaposhnik <roman@xxxxxxxxxx>, Bertrand Marquis <Bertrand.Marquis@xxxxxxx>, Nataliya Korovkina <malus.brandywine@xxxxxxxxx>, Xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • Delivery-date: Fri, 19 Jun 2020 13:16:13 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Thread-index: AQHWN5exllox/cqJUUS0HFcLChNz8ajHt2rggADieACAAAFjAIAVVnEAgACes4CAAHgUgIAADcUAgADl4QCAAAQjgIAAAVWAgAACJ4CAAAHkgIAAAn4A
  • Thread-topic: UEFI support in ARM DomUs

> Subject: Re: UEFI support in ARM DomUs
> 
> 
> On 6/19/20 3:59 PM, Julien Grall wrote:
> > Hi,
> >
> > On 19/06/2020 13:51, Oleksandr Andrushchenko wrote:
> >> On 6/19/20 3:47 PM, Julien Grall wrote:
> >>> They will not be available from the fdt, but you can retrieve them with an
> hypervisor call (see HVM_PARAM_STORE_PFN,
> HVM_PARAM_CONSOLE_PFN).
> >> Yes, and it used in the relevant pieces of code (hyp calls)
> >>> One question though, why do you need to map them in advance?
> Couldn't you map them on demand?
> >>
> >> Well, we need to at least estimate the pg_table size so we can reserve and
> allocate memory later,
> >
> > Oh, so U-boot doesn't support runtime page-table table allocation. Is that
> right?
> As per my understanding no, we provide a memory map and the tables are
> allocated beforehand

You are right.

Regards,
Peng.
> >
> >>
> >> so I have to provide memory range from either by coding a constant or
> looking into the devtree at
> >>
> >> hypervisor { reg = <>; }. It is a bit tricky though
> >
> > Looking for a node in the device-tree shouldn't be too difficult given that 
> > you
> have fdt_* available.
> >
> > However, please not that <reg> doesn't refer to the guest magic pages.
> Instead, it provides a region you can use for mapping the grant-table frames
> 
> Indeed, this is in my case 0x38000000, but the magic is at 0x39000000
> 
> So, I need the memory range set up beforehand, but I can't as there is no cute
> way to get that.
> 
> Of course, I can issue a hyp call to get HVM_PARAM_CONSOLE_PFN and use it
> as the base address,
> 
> but this smells like a hack. I can call other HVM_PARAM_ to get their pfns and
> set up the memory regions,
> 
> but this looks a bit weird. I need that constant badly ;)
> 
> >
> > Cheers,
> >

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.