Hi all, I noticed that upstream UEFI is now supported ARMv8 on FastModel. I’ve tried it to boot Linux with it. And it works. But it seems it still cannot load Xen hypervisor properly. I’m now looking for the reasons. Is there any difference for a firmware to load Xen and Linux kernel? Cheers, Baozi
On Mon, 2013-12-09 at 23:15 +0800, Chen Baozi wrote:> Hi all, > > I noticed that upstream UEFI is now supported ARMv8 on FastModel. > I’ve tried it to boot Linux with it. And it works. But it seems > it still cannot load Xen hypervisor properly. I’m now looking for > the reasons. Is there any difference for a firmware to load Xen > and Linux kernel?I think you are the first one to try Xen on EFI. Are you using the EFI stub with Linux or are you launching via a bootloader e.g. Grub-EFI? Xen doesn't yet have an EFI stub (it's on my list, but it looks like it will be early next year at this rate). If booting via Grub then I think it doesn't speak the Xen boot module protocol, so you'd need to do the grub equivalent of the fdt commands which are in the u-boot runes on the wiki. In any case, if you want advice with this then you need to be quite specific about what exactly you have done and what didn't wor. Ian. _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel
Hi Ian, On Dec 9, 2013, at 23:35, Ian Campbell <Ian.Campbell@citrix.com> wrote:> On Mon, 2013-12-09 at 23:15 +0800, Chen Baozi wrote: >> Hi all, >> >> I noticed that upstream UEFI is now supported ARMv8 on FastModel. >> I’ve tried it to boot Linux with it. And it works. But it seems >> it still cannot load Xen hypervisor properly. I’m now looking for >> the reasons. Is there any difference for a firmware to load Xen >> and Linux kernel? > > I think you are the first one to try Xen on EFI. > > Are you using the EFI stub with Linux or are you launching via a > bootloader e.g. Grub-EFI?After reading the source code, I think it is neither the EFI stub or a bootloader. A Linux Loader EFI application has been developed for ARM in EFI. It is able to boot Linux either by tagged list or dtb method. However, it hardcoded the start address of 0x80000 when loading Linux kernel, which make it unworkable for Xen after paging is enable. But I’m not sure whether there would be other problems for it to boot Xen. And I’ll continue to work on it until it can boot Xen successfully at the end. (At least, there are early printk messages on the UART now, :-)) Cheers, Baozi
On Wed, 2013-12-11 at 13:06 +0800, Chen Baozi wrote:> Hi Ian, > > On Dec 9, 2013, at 23:35, Ian Campbell <Ian.Campbell@citrix.com> wrote: > > > On Mon, 2013-12-09 at 23:15 +0800, Chen Baozi wrote: > >> Hi all, > >> > >> I noticed that upstream UEFI is now supported ARMv8 on FastModel. > >> I’ve tried it to boot Linux with it. And it works. But it seems > >> it still cannot load Xen hypervisor properly. I’m now looking for > >> the reasons. Is there any difference for a firmware to load Xen > >> and Linux kernel? > > > > I think you are the first one to try Xen on EFI. > > > > Are you using the EFI stub with Linux or are you launching via a > > bootloader e.g. Grub-EFI? > > After reading the source code, I think it is neither the EFI stub > or a bootloader. A Linux Loader EFI application has been developed > for ARM in EFI.Do you have a link? I'm curious.> It is able to boot Linux either by tagged list or > dtb method. However, it hardcoded the start address of 0x80000 > when loading Linux kernel, which make it unworkable for Xen after > paging is enable. But I’m not sure whether there would be other > problems for it to boot Xen. And I’ll continue to work on it until > it can boot Xen successfully at the end.Have fun ;-)> (At least, there are early printk messages on the UART now, :-))> > Cheers, > > Baozi_______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel
On Dec 11, 2013, at 18:59, Ian Campbell <Ian.Campbell@citrix.com> wrote:> On Wed, 2013-12-11 at 13:06 +0800, Chen Baozi wrote: >> Hi Ian, >> >> On Dec 9, 2013, at 23:35, Ian Campbell <Ian.Campbell@citrix.com> wrote: >> >>> On Mon, 2013-12-09 at 23:15 +0800, Chen Baozi wrote: >>>> Hi all, >>>> >>>> I noticed that upstream UEFI is now supported ARMv8 on FastModel. >>>> I’ve tried it to boot Linux with it. And it works. But it seems >>>> it still cannot load Xen hypervisor properly. I’m now looking for >>>> the reasons. Is there any difference for a firmware to load Xen >>>> and Linux kernel? >>> >>> I think you are the first one to try Xen on EFI. >>> >>> Are you using the EFI stub with Linux or are you launching via a >>> bootloader e.g. Grub-EFI? >> >> After reading the source code, I think it is neither the EFI stub >> or a bootloader. A Linux Loader EFI application has been developed >> for ARM in EFI. > > Do you have a link? I''m curious.Instructions to EFI on AArch64: http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=ArmPlatformPkg/AArch64 And I’m using the git clone of its svn repository: https://github.com/tianocore/edk2.git Under the tree, the Linux Loader locates at: ArmPkg/Application/LinuxLoader> >> It is able to boot Linux either by tagged list or >> dtb method. However, it hardcoded the start address of 0x80000 >> when loading Linux kernel, which make it unworkable for Xen after >> paging is enable. But I’m not sure whether there would be other >> problems for it to boot Xen. And I’ll continue to work on it until >> it can boot Xen successfully at the end. > > Have fun ;-) > >> (At least, there are early printk messages on the UART now, :-)) > >> >> Cheers, >> >> Baozi
On Wed, 2013-12-11 at 19:06 +0800, Chen Baozi wrote:> On Dec 11, 2013, at 18:59, Ian Campbell <Ian.Campbell@citrix.com> wrote: > > > On Wed, 2013-12-11 at 13:06 +0800, Chen Baozi wrote: > >> Hi Ian, > >> > >> On Dec 9, 2013, at 23:35, Ian Campbell <Ian.Campbell@citrix.com> wrote: > >> > >>> On Mon, 2013-12-09 at 23:15 +0800, Chen Baozi wrote: > >>>> Hi all, > >>>> > >>>> I noticed that upstream UEFI is now supported ARMv8 on FastModel. > >>>> I’ve tried it to boot Linux with it. And it works. But it seems > >>>> it still cannot load Xen hypervisor properly. I’m now looking for > >>>> the reasons. Is there any difference for a firmware to load Xen > >>>> and Linux kernel? > >>> > >>> I think you are the first one to try Xen on EFI. > >>> > >>> Are you using the EFI stub with Linux or are you launching via a > >>> bootloader e.g. Grub-EFI? > >> > >> After reading the source code, I think it is neither the EFI stub > >> or a bootloader. A Linux Loader EFI application has been developed > >> for ARM in EFI. > > > > Do you have a link? I'm curious. > > Instructions to EFI on AArch64: > > http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=ArmPlatformPkg/AArch64 > > And I’m using the git clone of its svn repository: > > https://github.com/tianocore/edk2.git > > Under the tree, the Linux Loader locates at: > > ArmPkg/Application/LinuxLoaderAh that, yes I think that boots Linux using the zImage protocol.> > > >> It is able to boot Linux either by tagged list or > >> dtb method. However, it hardcoded the start address of 0x80000 > >> when loading Linux kernel, which make it unworkable for Xen after > >> paging is enable.0x80000 is a problem due to the alignment not being 2M I think? Really should look into fixing that. (would probably mean allowing Xen to span 2 consecutive 2MB blocks and some additional fiddling during bring up)> But I’m not sure whether there would be other > >> problems for it to boot Xen. And I’ll continue to work on it until > >> it can boot Xen successfully at the end. > > > > Have fun ;-) > > > >> (At least, there are early printk messages on the UART now, :-)) > > > >> > >> Cheers, > >> > >> Baozi >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel