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

Re: Installable ARMv8 cross-toolchain



On Sat, Nov 03, 2012, Marek Vasut wrote:
> I need to catch up with you in there ;-) What do you use for a bootloader on 
> these armv8 devices?

No bootloader at the moment, but a boot wrapper!  ;-)

At the moment, ARMv8 work is mostly on virtual platforms (I guess there
might be some people with expensive FGPAs too); the two virtual
platforms Linaro is using are:
* the free (as in beer) ARMv8 Foundation model ("Foundation")
* the pre-built ARMv8 Versatile Express model ("VE RTSM")

ARM recently published some information on the various models at:
    http://www.arm.com/fvp

The two virtual platforms are relatively similar; the main differences
are:
* VE model has a MMC while the Foundation model has an AMBA virtio block
  device
* VE has a RTC while Foundation model hasn't
* VE has an AMBA LCD (clcd) while Foundation model hasn't

At least the first difference prevents us from sharing a single Device
Tree with all devices between the two platforms (kernel oops when
starting the Foundation model with the MMC listed or vice-versa).

To boot the platform, a small boot wrapper is combined with the kernel,
device tree, and kernel cmdline into an ELF .axf file for the model to
run.

This page explains how to rebuild kernel + device tree + boot wrapper:
    https://wiki.linaro.org/HowTo/BuildArm64Kernel
(the boot wrapper is maintained by Catalin Marinas on git.kernel.org)


The plan is to switch to a full bootloader -- likely Tianocore (UEFI) --
when available as it's painful to have to rebuild the .axf whenever the
kernel or kernel cmdline change, and real hardware wouldn't use a boot
wrapper anyway.

I guess you're asking because you consider an U-Boot port?  :-)

    Cheers,
-- 
Loïc Minier


Reply to: