[U-Boot] [PATCH] arm: add IPL support

Kuo-Jung Su dantesu at gmail.com
Mon Dec 9 09:07:29 CET 2013


2013/12/6 Tom Rini <trini at ti.com>:
> On Wed, Dec 04, 2013 at 11:50:48AM +0800, Kuo-Jung Su wrote:
>
>> Initial Program Loader (IPL) usually runs with .text and .rodata
>> in ROM, while .data and .bss reside in RAM.
>>
>> This patch uses the AT keyword to specify load address,
>> and a small code snippet in crt0.S to restore .data section
>> at runtime.
>>
>> Example usage:
>> Assume the target device has a 4KB ROM at 0x00000000 and a
>> 4KB SRAM at 0xA0000000, the IPL/SPL config could be:
>>
>> #define CONFIG_SPL_MAX_SIZE  0x1000 /* text + data, no bss */
>> #define CONFIG_SPL_TEXT_BASE 0x00000000
>> #define CONFIG_SPL_DATA_BASE 0xA0000000
>> #define CONFIG_SPL_STACK     0xA0001000
>>
>> Signed-off-by: Kuo-Jung Su <dantesu at gmail.com>
>> Cc: Albert Aribaud <albert.u.boot at aribaud.net>
>
> Can you provide an example user of this functionality?  Thanks.
>
> --
> Tom

If you're looking for a real device, unfortunately there is no such
device right now,
it's a shiny new design which just came out last week.

If you're looking for a way for verification:

1. A real device with a NOR flash for ROM emulation. (e.g., Faraday A369 EVB)

2. A virtual device emulator. (e.g., Qemu)

   This is the best option for you, the Qemu model for Faraday A369 is
available at my github account.
   Please use the command bellow to grab the source tree if necessary.

   $ git clone -b qemu-1.5.1 https://github.com/dantesu1218/qemu.git
   $ cd qemu
   $ ./configure --target-list=arm-softmmu
   $ make

   The example IPL code for the up-coming Faraday A369 U-boot is also available:

   $ git clone -b u-boot-2014.01 https://github.com/dantesu1218/u-boot.git
   $ cd u-boot
   $ make a369evb_ipl_config
   $ make

   You could also directly grab  the pre-built binaries for quick verification.

   $ wget https://drive.google.com/file/d/0BwfiewvSmUgAMlBnUkZQb3FMVkE/edit?usp=sharing
   $ tar xf u-boot-a369-ipl.tar.bz2
   $ cd u-boot-a369-ipl
   $ make

-- 
Best wishes,
Kuo-Jung Su


More information about the U-Boot mailing list