19 Mar, 2017
1 commit
-
CONFIG_SPL_ABORT_ON_RAW_IMAGE causes SPL to abort and move on when it
encounters RAW images, express this same functionality as a positive
option enabling support for RAW images: CONFIG_SPL_RAW_IMAGE_SUPPORTAlso move uses of this to defconfigs.
Signed-off-by: Andrew F. Davis
Reviewed-by: Tom Rini
Reviewed-by: Simon Glass
[trini: Rework Kconfig logic a little, move to common/spl/Kconfig]
Signed-off-by: Tom Rini
17 Mar, 2017
1 commit
-
At present malloc_base/_limit/_ptr are not initialised in spl_init() when
we call spl_init() in board_init_f(). This is due to a recent change aimed
at avoiding overwriting the malloc area set up on some boards by
spl_relocate_stack_gd().However if CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN is not defined, we now
skip setting up the memory area in spl_init() which is obviously wrong.To fix this, add a new function spl_early_init() which can be called in
board_init_f().Fixes: b3d2861e (spl: Remove overwrite of relocated malloc limit)
Signed-off-by: Eddie Cai
Rewrote spl_{,early_}init() to avoid duplicate code:
Rewrite/expand commit message:
Signed-off-by: Simon Glass
Reviewed-by: Eddie Cai
04 Jan, 2017
1 commit
-
Since entry_point and load_addr are addresses, they should be
represented as longs to cover the whole address space and to avoid
warning when compiling the SPL in 64-bit.
Also adjust debug prints to add the 'l' specifier, where needed.Signed-off-by: Andre Przywara
Reviewed-by: Alexander Graf
Reviewed-by: Simon Glass
Reviewed-by: Tom Rini
Acked-by: Maxime Ripard
Reviewed-by: Jagan Teki
09 Dec, 2016
2 commits
-
It is useful to name each method so that we can print out this name when
using the method. Currently this happens using a separate function. In
preparation for unifying this, add a name to each method.The name is only available if we have libcommon support (i.e can use
printf()).Signed-off-by: Simon Glass
-
A double underscore is normally reserved for compiler predefines. Use a
single underscore instead.Signed-off-by: Simon Glass
01 Dec, 2016
1 commit
-
Make the spl_mmc_load_image() available globally, so it can be
invoked directly by SPL on extremely space-constrained systems.Signed-off-by: Marek Vasut
Cc: Tom Rini
Cc: Simon Glass
Cc: Jaehoon Chung
07 Oct, 2016
24 commits
-
There is no need for this to be in the BSS region. By moving it we can delay
use of BSS in SPL. This is useful for machines where the BSS region is not
in writeable space. On 64-bit x86, SPL runs from SPI flash and it is easier
to eliminate BSS use than link SPL to run with BSS at a particular
cache-as-RAM (CAR) address.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Upda the SPL FIT code to use the spl_image parameter.
Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Update the fat loader to avoid using the spl_image global variable.
Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Update the ext loader to avoid using the spl_image global variable.
Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Rather than having a global variable, pass the spl_image as a parameter.
This avoids BSS use, and makes it clearer what the function is actually
doing.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Add a linker list declaration for this method and remove the explicit
switch() code. Update existing users.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Add a linker list declaration for this method and remove the explicit
switch() code. We need two variants - one for BOOT_DEVICE_CPGMAC and one for
BOOT_DEVICE_USBETH.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Add a linker list declaration for this method and remove the explicit
switch() code. Also set up the sunxi function.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Add a linker list declaration for this method and remove the explicit
switch() code.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Add a linker list declaration for this method and remove the explicit
switch() code.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Add a linker list declaration for this method and remove the explicit
switch() code.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Add a linker list declaration for this method and remove the explicit
switch() code.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Add a linker list declaration for this method and remove the explicit
switch() code.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Add a linker list declaration for this method and remove the explicit
switch() code.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Add a linker list declaration for this method and remove the explicit
switch() code.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Add a linker list declaration for this method and remove the explicit
switch() code.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Add a linker list macro which can be used to declare an SPL image loader.
Update spl_load_image() to search available loaders for the correct one.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
At present some spl_xxx_load_image() functions take a parameter and some
don't. Of those that do, most take an integer but one takes a string.Convert this parameter into a struct so that we can pass all functions the
same thing. This will allow us to use a common function signature.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Move this option to Kconfig and tidy up existing uses. Also add a function
comment to the header file.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Add some comments to describe this function.
Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Instead of using the global spl_image variable, pass the required struct in
as an argument.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Instead of using the global spl_image variable, pass the required struct in
as an argument.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Rather than act on the global variable, pass the required struct in as a
parameter.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
At present this is only used on ARM and sandbox, but it is just as
applicable to other architectures. Move the function prototype into the
generic SPL header.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini
28 Sep, 2016
1 commit
-
Adding support functions to run dfu spl commands.
Signed-off-by: Ravi Babu
Reviewed-by: Tom Rini
22 Jul, 2016
1 commit
-
Add support for loading from UBI volumes on the top of NAND
and OneNAND.Signed-off-by: Ladislav Michl
Reviewed-by: Heiko Schocher
27 Jun, 2016
1 commit
-
The SPL code already knows which boot device it calls the spl_boot_mode()
on, so pass that information into the function. This allows the code of
spl_boot_mode() avoid invoking spl_boot_device() again, but it also lets
board_boot_order() correctly alter the behavior of the boot process.The later one is important, since in certain cases, it is desired that
spl_boot_device() return value be overriden using board_boot_order().Signed-off-by: Marek Vasut
Cc: Andreas Bießmann
Cc: Albert Aribaud
Cc: Tom Rini
Reviewed-by: Andreas Bießmann
[add newly introduced zynq variant]
Signed-aff-by: Andreas Bießmann
28 May, 2016
1 commit
-
This provides a way to load a FIT containing U-Boot and a selection of device
tree files from a File system. Making sure that all the reads and writes
are aligned to their respective needs.Tested-by: Michal Simek
Reviewed-by: Simon Glass
Reviewed-by: Tom Rini
Signed-off-by: Lokesh Vutla
[trini: Make this still apply with Michal's alignment change for 'fit']
Signed-off-by: Tom Rini
24 May, 2016
1 commit
-
Call this function before passing control from SPL.
For fpga case it is necessary to enable for example level shifters
when bitstream is programmed.Signed-off-by: Michal Simek
Reviewed-by: Simon Glass
17 May, 2016
1 commit
-
Allow the spl_parse_image_header() to return value. This is convenient
for controlling the SPL boot flow if the loaded image is corrupted.Signed-off-by: Marek Vasut
Cc: Fabio Estevam
Cc: Peng Fan
Cc: Stefano Babic
Cc: Tom Rini
15 Mar, 2016
3 commits
-
This provides a way to load a FIT containing U-Boot and a selection of device
tree files. The board can select the correct device tree by probing the
hardware. Then U-Boot is started with the selected device tree.Signed-off-by: Simon Glass
-
Use 'struct' instead of a typdef. Also since 'struct block_dev_desc' is long
and causes 80-column violations, rename it to struct blk_desc.Signed-off-by: Simon Glass
Reviewed-by: Bin Meng
Tested-by: Stephen Warren
19 Nov, 2015
1 commit
-
Currently the mmc device that SPL looks at is always mmc0, regardless
of the BOOT_DEVICE_MMCx value. This forces some boards to
implement hacks in order to boot from other mmc devices.Make SPL take into account the correct mmc device.
Signed-off-by: Nikita Kiryanov
Reviewed-by: Tom Rini