[U-Boot] [PATCH v4] arm: Add support for semihosting for armv8 fastmodel targets.

Albert ARIBAUD albert.u.boot at aribaud.net
Mon Jun 9 11:00:33 CEST 2014


Hi Darwin,

On Fri, 23 May 2014 16:38:08 -0700, Darwin Rambo <drambo at broadcom.com>
wrote:

> The reason for this change is to be able to use the ARM Trusted Firmware
> (ATF) to load the various ATF images, plus u-boot, which can then load
> the kernel/ramdisk/dtb with calls to an external host from a standard
> fastmodel armv8 board file using semihosting, and then launch the kernel
> without a bootwrapper. This gives us a more realistic boot sequence.
> 
> There are two main ARM virtual Fixed Virtual Platform (FVP) models,
> Versatile Express (VE) FVP and BASE FVP (See
> http://www.arm.com/products/tools/models/fast-models/foundation-model.php)
> The initial vexpress64 u-boot board created here runs on the VE virtual
> platform using the license-free Foundation_v8 simulator. Fortunately,
> the Foundation_v8 simulator also supports the BASE_FVP model which
> companies can purchase licenses for and contain much more functionality.
> So we can, in u-boot, run either model by either using the VE FVP (default),
> or turning on CONFIG_BASE_FVP for the more full featured model.
> 
> Rather than create a new armv8 board similar to armltd/vexpress64, add
> semihosting calls to the existing one, enabled with CONFIG_SEMIHOSTING
> and CONFIG_BASE_FVP both set. Also reuse the existing board config file
> vexpress_aemv8a.h but differentiate the two models by the presence or
> absence of CONFIG_BASE_FVP. This change is tested and works on both the
> Foundation and Base fastmodel simulators.
> 
> Support for armv7 in fastmodel is less useful due to the wide range of
> available silicon and the lack of a free armv7 fastmodel, so this change
> contains an untested armv7 placeholder for the service trap opcode.
> 
> The level of semihosting support is minimal, restricted to just what it
> takes to load images to memory. If more semihosting functionality is
> required, such as file seek, outputting strings, reading characters, etc,
> then it can be easily added later.
> 
> Signed-off-by: Darwin Rambo <drambo at broadcom.com>
> Cc: trini at ti.com
> Cc: fenghua at phytium.com.cn
> Cc: bhupesh.sharma at freescale.com
> 
> ---

I am basically ok with this patch, except for the very long commit
message. I would prefer it to be shorter and more synthetic and just
state in a few paragraphs what is fixed or improved, and that the rest
of it be moved after the commit message boundary above, or if it should
be kept for future reference, added or put in a README.* file under
doc/.

Amicalement,
-- 
Albert.


More information about the U-Boot mailing list