- Jul 10, 2013
-
-
Simon Glass authored
With the move of the interrupt code to earlier in the sequence, we exposed a problem where the interrupts are disabled at each bootm stage. This is not correct - it should be done only once. Let's disable interrupts in the LOAD stage. Put the code in a function for clarity. Also, bootz lost its interrupt code altogether, so reinstate it. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
- Jul 08, 2013
-
-
Anatolij Gustschin authored
Code for checking "splashpos" environment variable is duplicated in drivers, move it to the common function. Call this function also in the bmp display command to consider "splashpos" settings. Signed-off-by:
Anatolij Gustschin <agust@denx.de> Acked-by:
Otavio Salvador <otavio@ossystems.com.br>
-
- Jul 04, 2013
-
-
Tom Rini authored
With the do_bootm_states re-organization, we have the call to any potential sub-commands in a single spot. If one fails, we can then stop right there and return to the caller. Prior to these calls we have already ensured that ret is zero so we will not be returning this error for some other case. Signed-off-by:
Tom Rini <trini@ti.com> Tested-by:
Andreas Bießmann <andreas.devel@googlemail.com>
-
- Jul 01, 2013
-
-
Robert Winkler authored
Remove CONFIG_SPLASH_SCREEN_PREPARE from README Add doc/README.splashprepare to document functionality Signed-off-by:
Robert Winkler <robert.winkler@boundarydevices.com> Acked-by:
Igor Grinberg <grinberg@compulab.co.il>
-
Robert Winkler authored
Create splash.c/h to put the function and any future common splash screen code in. Signed-off-by:
Robert Winkler <robert.winkler@boundarydevices.com> Acked-by:
Igor Grinberg <grinberg@compulab.co.il>
-
Piotr Wilczek authored
When compressed image is loaded, it must be decompressed to an aligned address + 2 to avoid unaligned access exception on some ARM platforms. Signed-off-by:
Piotr Wilczek <p.wilczek@samsung.com> Signed-off-by:
Kyungmin Park <kyungmin.park@samsung.com> CC: Anatolij Gustschin <agust@denx.de> CC: Wolfgang Denk <wd@denx.de> Signed-off-by:
Anatolij Gustschin <agust@denx.de>
-
Stephen Warren authored
Some ARM compilers may emit code that makes unaligned accesses when faced with constructs such as: const char format[] = "r5g6b5"; Make this data static since it doesn't chagne; the compiler will simply place it into the .rodata section directly, and avoid any unaligned run- time initialization. Signed-off-by:
Stephen Warren <swarren@nvidia.com>
-
- Jun 28, 2013
-
-
Simon Glass authored
This restores the ordering of interrupt disable to what it what before commit 35fc84fa. It seems that on some archiectures (e.g. PowerPC) the OS is loaded into an interrupt region, which can cause problems if interrupts are still running. Tested-by:
Stefan Roese <sr@denx.de> Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Tom Rini authored
With 35fc84fa [Refactor the bootm command to reduce code duplication] we stopped checking the return value of bootm_load_os (unintentionally!) and simply returned if we had a non-zero return value from the function. This broke the valid case of a legacy image file of a single kernel loaded into an overlapping memory area (the default way of booting nearly all TI platforms). The best way to fix this problem in the new code is to make bootm_load_os be the one to see if we have a problem with this, and if it's fatal return BOOTM_ERR_RESET and if it's not BOOTM_ERR_OVERLAP, so that we can avoid calling lmb_reserve() but continue with booting. We however still need to handle the other BOOTM_ERR values so re-work do_bootm_states so that we have an error handler at the bottom we can goto for problems from bootm_load_os, or problems from the other callers (as the code was before). Add a comment to do_bootm_states noting the existing restriction on negative return values. Signed-off-by:
Tom Rini <trini@ti.com> --- Changes in v2: - Rework so that only bootm_load_os and boot_selected_os head down into the err case code, and other errors simply return back to the caller. Fixes 'spl export'.
-
- Jun 26, 2013
-
-
Sascha Silbe authored
With CONFIG_SYS_64BIT_LBA, lbaint_t gets defined as a 64-bit type, which is required to represent block numbers for storage devices that exceed 2TiB (the block size usually is 512B), e.g. recent hard drives. For some obscure reason, the current U-Boot code uses lbaint_t for the number of blocks to read (a rather optimistic estimation of how RAM sizes will evolve), but not for the starting address. Trying to access blocks beyond the 2TiB boundary will simply wrap around and read a block within the 0..2TiB range. We now use lbaint_t for block start addresses, too. This required changes to all block drivers as the signature of block_read(), block_write() and block_erase() in block_dev_desc_t changed. Signed-off-by:
Sascha Silbe <t-uboot@infra-silbe.de>
-
Steven Stallion authored
This patch introduces support for command line arguments to Plan 9. Plan 9 generally dedicates a small region of kernel memory (known as CONFADDR) for runtime configuration. A new environment variable named confaddr was introduced to indicate this location when copying arguments. Signed-off-by:
Steven Stallion <sstallion@gmail.com> [trini: Adapt for Simon's changes about correcting argc, no need to bump by 2 now] Signed-off-by:
Tom Rini <trini@ti.com>
-
Simon Glass authored
While signing images is useful, it does not provide complete protection against several types of attack. For example, it it possible to create a FIT with the same signed images, but with the configuration changed such that a different one is selected (mix and match attack). It is also possible to substitute a signed image from an older FIT version into a newer FIT (roll-back attack). Add support for signing of FIT configurations using the libfdt's region support. Please see doc/uImage.FIT/signature.txt for more information. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
RSA provides a public key encryption facility which is ideal for image signing and verification. Images are signed using a private key by mkimage. Then at run-time, the images are verified using a private key. This implementation uses openssl for the host part (mkimage). To avoid bringing large libraries into the U-Boot binary, the RSA public key is encoded using a simple numeric representation in the device tree. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
Add support for signing images using a new signature node. The process is handled by fdt_add_verification_data() which now takes parameters to provide the keys and related information. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
Add a structure to describe an algorithm which can sign and (later) verify images. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
For tracing it is useful to run as much of U-Boot as possible so as to get a complete picture. Quite a bit of work happens in bootm, and we don't want to have to stop tracing before bootm starts. Add a way of doing a 'fake' boot of the OS - which does everything up to the point where U-Boot is about to jump to the OS image. This allows tracing to record right until the end. This requires arch support to work. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
At present the bootm code is mostly duplicated for the plain 'bootm' command and its sub-command variant. This makes the code harder to maintain and means that changes must be made to several places. Introduce do_bootm_states() which performs selected portions of the bootm work, so that both plain 'bootm' and 'bootm <sub_command>' can use the same code. Additional duplication exists in bootz, so tidy that up as well. This is not intended to change behaviour, apart from minor fixes where the previously-duplicated code missed some chunks of code. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
At present the arguments to bootm are processed in a somewhat confusing way. Sub-functions must know how many arguments their calling functions have processed, and the OS boot function must also have this information. Also it isn't obvious that 'bootm' and 'bootm start' provide arguments in the same way. Adjust the code so that arguments are removed from the list before calling a sub-function. This means that all functions can know that argv[0] is the first argument of which they need to take notice. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
Add hooks for tracing to generic board, including: - allow early tracing to start early as possible in U-Boot - reserve memory for trace buffer - copy early trace buffer to main trace buffer after relocation - setup full tracing support after relocation Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
Add a trace command with sub-commands to start/stop tracing, print out statistics and dump trace information to memory for later upload to a host. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
Move bootstage's numbering printing code into a generic place so that it can be used by tracing also. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
The unstash code is a bit loose with its printf() types, which gives warnings on sandbox. Correct this. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
For some reason this does not normally cause a compiler warning, but the code seems to be incorrect. Add the missing return. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
- Jun 25, 2013
-
-
Rob Herring authored
Add ipappend support to pass network device information to the kernel. Signed-off-by:
Rob Herring <rob.herring@calxeda.com>
-
Joe Hershberger authored
Not all boards define an SOC. As a result, we can't depend on that. This was introduced in 39f98553 Signed-off-by:
Joe Hershberger <joe.hershberger@ni.com>
-
Rob Herring authored
A pxelinux server setup for "default" menu is typically an x86 binary. This does not work well with a mixed architecture setup. Extend the default search to look for default-<arch>-<soc> and then default-<arch> before falling back to just "default". Signed-off-by:
Rob Herring <rob.herring@calxeda.com>
-
Rob Herring authored
ontimeout is similar to default, but is the selection on menu timeout. This is how cobbler sets a default. The label default is supposed to be the default selection when <enter> is pressed. If both default and ontimeout are set, last one parsed wins. Signed-off-by:
Rob Herring <rob.herring@calxeda.com>
-
Rob Herring authored
Menus with lots of entries and long append lines are hard to read. Just show a numbered list using the label or name and make the choice by entering the number. Signed-off-by:
Rob Herring <rob.herring@calxeda.com>
-
Rob Herring authored
The prompt flag is for displaying a "boot:" prompt in pxelinux. This doesn't make sense for u-boot as we don't support the pxelinux command interface. So we should just ignore prompt statements and always show the menu if a menu is present. Signed-off-by:
Rob Herring <rob.herring@calxeda.com>
-
Rob Herring authored
Standard pxelinux servers will typically use a zImage rather than u-boot image format, so fallback to bootz if bootm fails. Signed-off-by:
Rob Herring <rob.herring@calxeda.com>
-
Rob Herring authored
Make do_bootz available for other functions like do_bootm is. Signed-off-by:
Rob Herring <rob.herring@calxeda.com>
-
Rob Herring authored
Add support for value of -1 For localboot. A value of -1 means return to u-boot prompt. The localboot value is often 0, so we need to distinguish the value from localboot being selected. A value of greater than or equal to 0 means attempt local boot command. If localboot is selected, we don't want to try other entries. Signed-off-by:
Rob Herring <rob.herring@calxeda.com>
-
Rob Herring authored
Convert a bunch of string parameters to be const. Signed-off-by:
Rob Herring <rob.herring@calxeda.com>
-
Rob Herring authored
Get the MAC address using eth_getenv_enetaddr_by_index so that the MAC address of ethact is used. This enables using the a NIC other than the first one for PXE boot. Signed-off-by:
Rob Herring <rob.herring@calxeda.com>
-
- Jun 21, 2013
-
-
Scott Wood authored
adjust_size_for_badblocks reduces the operation size to account for the block skipping done by the read/write functions when an interval (partition name or whole chip) is specified rather than a data amount. Erase does not do block skipping, except for erase.spread which takes a data amount rather than an interval (and thus already does not call adjust_size_for_badblocks). Calling adjust_size_for_badblocks when block skipping is not done means that if bad blocks are present, the "nand erase.part" and "nand erase.chip" commands will fail to erase blocks at the end of the interval. Signed-off-by:
Scott Wood <scottwood@freescale.com> Cc: Harvey Chapman <hchapman@3gfp.com> Acked-by:
Heiko Schocher <hs@denx.de>
-
- Jun 20, 2013
-
-
Ying Zhang authored
Move the common makefile line shared by the SPL and non-SPL to the public area, so that we can avoid excessive SPL symbols. Some of them will be used by the SPL later. This patch is on top of the patch "common/Makefile: Add new symbol CONFIG_SPL_ENV_SUPPORT for environment in SPL". Signed-off-by:
Ying Zhang <b40530@freescale.com> Acked-by:
Tom Rini <trini@ti.com> Acked-by:
Tom Rini <trini@ti.com> Signed-off-by:
Andy Fleming <afleming@freescale.com>
-
Ying Zhang authored
There will need the environment in SPL for reasons other than network support (in particular, hwconfig contains info for how to set up DDR). Add a new symbol CONFIG_SPL_ENV_SUPPORT to replace CONFIG_SPL_NET_SUPPORT for environment in common/Makefile. Signed-off-by:
Ying Zhang <b40530@freescale.com> Reviewed-by:
Tom Rini <trini@ti.com> Signed-off-by:
Andy Fleming <afleming@freescale.com>
-
- Jun 17, 2013
-
-
Simon Glass authored
This error may not be defined on some platforms such as MacOS so host compilation will fail. Use one of the more common errors instead. Signed-off-by:
Simon Glass <sjg@chromium.org> Tested-by:
Andreas Bießmann <andreas.devel@googlemail.com> Tested-by:
Lubomir Popov <lpopov@mm-sol.com>
-
- Jun 13, 2013
-
-
Stephen Warren authored
A negative value of CONFIG_ENV_OFFSET is treated as a backwards offset from the end of the eMMC device/partition, rather than a forwards offset from the start. This is useful when a single board may be stuffed with different eMMC devices, each of which has a different capacity, and you always want the environment to be stored at the very end of the device (or eMMC boot partition for example). One example of this case is NVIDIA's Ventana reference board. Signed-off-by:
Stephen Warren <swarren@nvidia.com> Signed-off-by:
Andy Fleming <afleming@freescale.com>
-
Amar authored
This patch adds commands to access(open/close) and resize boot partitions on EMMC. Signed-off-by:
Amar <amarendra.xt@samsung.com> Signed-off-by:
Minkyu Kang <mk7.kang@samsung.com>
-