summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeLines
* bootm: Use selected configuration for ramdisk and fdtSimon Glass2013-07-12-9/+15
| | | | | | | | | | | | | | | If a specific configuraion is selected by the bootm command, e.g. with 'bootm 84000000#recoveryconf' we must honour this for not just the kernel, but also the ramdisk and FDT. In the conversion to using a common fit_image_load() function for loading images from FITs (commits a51ec63 and 53f375f) this feature was lost. Reinstate it by passing the selected configuration back from fit_image_load() to boot_get_kernel(), then use this configuration (which is stored in images->fit_uname_cfg) in both boot_get_ramdisk() and boot_get_fdt(). Signed-off-by: Simon Glass <sjg@chromium.org>
* blackfin: x86: bootm: Handle PREP stage of bootmSimon Glass2013-07-12-0/+20
| | | | | | | The OS function is now always called with the PREP stage. Adjust the remaining bootm OS functions to deal with this correctly. Signed-off-by: Simon Glass <sjg@chromium.org>
* bootm: Remove extra OK messageSimon Glass2013-07-12-1/+0
| | | | | | This is not needed as we already print 'OK' later in all cases. Signed-off-by: Simon Glass <sjg@chromium.org>
* cmd_bootm.c: Re-order bootm_load_os return check for ELDK4.2Tom Rini2013-07-12-3/+2
| | | | | | | | | | | With ELDK4.2 we were getting a warning that load_end may be used uninitialized in calling lmb_reserve. This could not be the case, however. If we re-order the checks (and make them slightly clearer as well) the warning goes away. bootm_load_os may only return 0 on success, BOOTM_ERR_OVERLAP in a non-fatal overlap (already covered in comments) or a fatal BOOTM_ERR that is covered in the error handler. Signed-off-by: Tom Rini <trini@ti.com>
* usb: pxa27x_udc: fix compiler warningsMike Dunn2013-07-10-9/+5
| | | | | | | Newer gcc versions warn about unused variables. This patch corrects a few of those warnings that popped up in a build for the palmtreo680 board. Signed-off-by: Mike Dunn <mikedunn@newsguy.com>
* dfu: Update DFU's authorship historyŁukasz Majewski2013-07-10-0/+7
| | | | | | | | The DFU's state machine original implementation author and copyright were missing. Signed-off-by: Lukasz Majewski <l.majewski@samsung.com> Acked-by: Stefan Schmidt <stefan@datenfreihafen.org>
* cmd_bootm.c: Make bootz handle BOOTM_STATE_FINDOTHER itselfTom Rini2013-07-10-16/+40
| | | | | | | | | As a zImage does not have a U-Boot header, we cannot really do what BOOTM_STATE_FINDOTHER does, exactly. Break the ramdisk/fdt portions of bootm_find_other into bootm_find_ramdisk/fdt which can be called in both cases. Signed-off-by: Tom Rini <trini@ti.com>
* cmd_bootm.c: Make bootz consume 'bootz' from argv, decrement argcTom Rini2013-07-10-5/+13
| | | | | | | Like 'bootm', 'bootz' needs to consume 'bootz' so that the rest of the state functions will work. Signed-off-by: Tom Rini <trini@ti.com>
* bootm: Add the missing PREP stage to bootz and correct image handlingSimon Glass2013-07-10-2/+3
| | | | | | | | | | | | | In the recent bootm refactor, the PREP stage was missing in the bootz command. This causes unpredictable behaviour. The use of a local variable means that the reset of cmd_bootm.c does not in fact use the same image structure, so remove this. Also manually set the OS type to Linux, since this is the only possibility at present, and we need to select the right boot function. Signed-off-by: Simon Glass <sjg@chromium.org>
* bootm: Clean up bootz_setup() functionSimon Glass2013-07-10-11/+22
| | | | | | | | | This function has no prototype in the headers and passes void * around, thus requiring several casts. Tidy this up. - Add new patch to clean up bootz_setup() function Signed-off-by: Simon Glass <sjg@chromium.org>
* bootm: Require boot function only if it is about to be usedSimon Glass2013-07-10-2/+5
| | | | | | | | | | | The original bootm code (before commit 35fc84f) did not check for a valid boot function in the subcommand case, which was incorrect. This check was introduced in all cases, but in fact we should only check for the function when we need it. Otherwise in some cases the check fires before the OS type is known. Signed-off-by: Simon Glass <sjg@chromium.org>
* bootm: Disable interrupts only when loadingSimon Glass2013-07-10-24/+43
| | | | | | | | | | | 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>
* Merge branch 'master' of git://git.denx.de/u-boot-videoTom Rini2013-07-10-96/+161
|\
| * video: consolidate splash screen alignment codeAnatolij Gustschin2013-07-08-39/+39
| | | | | | | | | | | | | | | | | | | | 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>
| * omap: cm_t35: Fix cm_t35 for weak splash_screen_prepareRobert Winkler2013-07-01-2/+1
| | | | | | | | | | Signed-off-by: Robert Winkler <robert.winkler@boundarydevices.com> Acked-by: Igor Grinberg <grinberg@compulab.co.il>
| * video: lcd: Make splash_screen_prepare weak, remove config macroRobert Winkler2013-07-01-17/+12
| | | | | | | | | | | | | | | | 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>
| * video: lcd: Add CONFIG_SPLASH_SCREEN_PREPARE support to CONFIG_VIDEORobert Winkler2013-07-01-16/+72
| | | | | | | | | | | | | | | | 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>
| * lcd: align bmp header when uncopmressing imagePiotr Wilczek2013-07-01-15/+30
| | | | | | | | | | | | | | | | | | | | | | | | 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>
| * lcd: remove unaligned access in lcd_dt_simplefb_configure_node()Stephen Warren2013-07-01-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * drivers:video:s6e8ax0: change data_to_send array to staticPiotr Wilczek2013-07-01-13/+13
| | | | | | | | | | | | | | | | | | | | This patch change 'data_to_send' array to static to avoid unaligned access exeption on some platforms (ex Trats2). Signed-off-by: Piotr Wilczek <p.wilczek@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> CC: Minkyu Kang <mk7.kang@samsung.com> CC: Anatolij Gustschin <agust@denx.de>
* | cmd_bootm.c: Correct check/return for unsupported sub-commandTom Rini2013-07-04-2/+7
| | | | | | | | | | | | | | | | | | | | | | 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>
* | cosmetic: README.SPL: fix a typoMasahiro Yamada2013-07-03-1/+1
| | | | | | | | Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
* | Makefile: fix readelf usageAndreas Bießmann2013-07-03-1/+1
| | | | | | | | | | | | | | | | | | Some OS (like OS X) do not provide a generic readelf. We should enforce to use the toochain provided readelf instead, to do so use $(CROSS_COMPILE)readelf. Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> Acked-by: Jeroen Hofstee <jeroen@myspectrum.nl> Tested-by: Lubomir Popov <lpopov@mm-sol.com>
* | tools/proftool: remove REG_NOERRORAndreas Bießmann2013-07-03-1/+1
| | | | | | | | | | | | | | | | | | Remove non portable usage of REG_NOERROR. BSD (like OS X) variants of regex.h do not declare REG_NOERROR, even GNU regex(3) does not mention REG_NOERROR, just remove it. Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> Acked-by: Jeroen Hofstee <jeroen@myspectrum.nl>
* | lib/rsa/rsa-sig.c: compile on OS XAndreas Bießmann2013-07-03-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | Interfaces exposed by error.h seems not to be used in rsa-sig.c, remove it. This also fixes an compile error on OS X: ---8<--- u-boot/lib/rsa/rsa-sign.c:23:19: error: error.h: No such file or directory --->8--- Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> Acked-by: Jeroen Hofstee <jeroen@myspectrum.nl> Tested-by: Lubomir Popov <lpopov@mm-sol.com>
* | dfu:ext4:fix Fix DFU upload functionalityŁukasz Majewski2013-07-03-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For the first eMMC read of data for upload, use the "large" dfu_buf (now configurable) instead of usb request buffer allocated at composite layer (which is 4KiB) [*]. For eMMC the whole file is read, which usually is larger than the buffer [*] provided with usb request. Signed-off-by: Lukasz Majewski <l.majewski@samsung.com> Cc: Tom Rini <trini@ti.com> Cc: Pantelis Antoniou <panto@antoniou-consulting.com> Cc: Marek Vasut <marex@denx.de> Cc: Heiko Schocher <hs@denx.de>
* | dfu:ext4:fix Fix ext4{read|write} command formattingŁukasz Majewski2013-07-03-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the following commit: "dfu: Support larger than memory transfers." SHA1: ea2453d56b8860dbd18a3c517531ffc8dcb5c839 The ext4{read|write} command formatting has been changed. It removed a write mandatory [sizebytes] parameter. It extents DFU_FS_EXT4 case at mmc_file_op to provide mandatory parameter for DFU write. Signed-off-by: Lukasz Majewski <l.majewski@samsung.com> Cc: Tom Rini <trini@ti.com> Cc: Pantelis Antoniou <panto@antoniou-consulting.com> Cc: Marek Vasut <marex@denx.de> Cc: Heiko Schocher <hs@denx.de>
* | Merge branch 'master' of git://git.denx.de/u-boot-usbTom Rini2013-07-03-18/+72
|\ \
| * | usb: add support for the USB Ethernet adapter D-Link DUB-E100 H/W Ver C1Pierre Aubert2013-06-30-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | This trivial patch adds the definition of the vid/pid for the Ver C1 of the USB Ethernet adapter D-Link DUB-E100. Signed-off-by: Pierre Aubert <p.aubert@staubli.com> CC: Marek Vasut <marex@denx.de>
| * | usb: fix unaligned access in device_qual()Heiko Schocher2013-06-30-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | while playing with dfu, I tapped in an unaligned access when doing on the host side a "lsusb -d [vendornr]: -v" I get on the board: GADGET DRIVER: usb_dnl_dfu data abort MAYBE you should read doc/README.arm-unaligned-accesses pc : [<8ff71db8>] lr : [<8ff75aec>] sp : 8ef40d18 ip : 00000005 fp : 00000000 r10: 00000000 r9 : 47401410 r8 : 8ef40f38 r7 : 8ef4aae8 r6 : 0000000a r5 : 8ef4ab28 r4 : 8ef4ab80 r3 : 0000000a r2 : 00000006 r1 : 00000006 r0 : 8ef4aae8 Flags: Nzcv IRQs off FIQs on Mode SVC_32 Resetting CPU ... reason is that in the "struct usb_composite_dev" the "struct usb_device_descriptor desc;" is on an odd address, and this struct gets accessed in drivers/usb/gadget/composite.c device_qual() Fix it, by align this var "struct desc" fix to an aligned address. Signed-off-by: Heiko Schocher <hs@denx.de> Cc: Marek Vasut <marek.vasut@gmail.com> Cc: Samuel Egli <samuel.egli@siemens.com>
| * | dfu:function: Fix number of allocated DFU function pointersLukasz Majewski2013-06-30-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This subtle change fix problem with too small amount of allocated memory to store DFU function pointers. One needs to allocate extra space for sentinel NULL pointer in this array of function pointers. With the previous code, the NULL value overwrites malloc internal data and afterwards free(f_dfu->function) crashes. Signed-off-by: Lukasz Majewski <l.majewski@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Cc: Marek Vasut <marex@denx.de>
| * | usb, musb-new: add wdt triggerHeiko Schocher2013-06-30-0/+2
| | | | | | | | | | | | | | | | | | Signed-off-by: Heiko Schocher <hs@denx.de> Cc: Marek Vasut <marek.vasut@gmail.com> Cc: Ilya Yanok <ilya.yanok@cogentembedded.com>
| * | usb, g_dnl: make possibility to fixup the device_desc board specificHeiko Schocher2013-06-30-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | add a weak dummy function g_dnl_fixup to add the possibility to update the device_desc board specific. Used on the upcoming siemens board support, where idVendor and idProduct is stored in an eeprom. Signed-off-by: Heiko Schocher <hs@denx.de> Cc: Marek Vasut <marek.vasut@gmail.com> Cc: Lukasz Majewski <l.majewski@samsung.com> Cc: Kyungmin Park <kyungmin.park@samsung.com> Reviewed-by: Lukasz Majewski <l.majewski@samsung.com>
| * | usb, dfu gadget: switch to dfu mode in dfu_bindHeiko Schocher2013-06-30-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - set in to_dfu_mode() f_dfu->dfu_state = DFU_STATE_dfuIDLE as after every to_dfu_mode call this is done, so move this into to_dfu_mode - switch in dfu_bind() into dfu mode: This fixes wrong "dfu-util -l" output, when calling "dfu-util -l" after a board reset, without doing a download before. See also discussion here: http://lists.denx.de/pipermail/u-boot/2013-June/157272.html Signed-off-by: Heiko Schocher <hs@denx.de> Cc: Lukasz Majewski <l.majewski@samsung.com> Cc: Pantelis Antoniou <panto@antoniou-consulting.com> Cc: Tom Rini <trini@ti.com> Cc: Kyungmin Park <kyungmin.park@samsung.com> Cc: Marek Vasut <marex@denx.de> Cc: Wolfgang Denk <wd@denx.de> Cc: Samuel Egli <samuel.egli@siemens.com> Acked-by: Lukasz Majewski <l.majewski@samsung.com> Tested-by: Lukasz Majewski <l.majewski@samsung.com>
| * | usb:composite: use memcpy to avoid unaligned accessPiotr Wilczek2013-06-30-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch memcpy is used instead of an assignment to avoid unaligned access execption on some ARM platforms. Signed-off-by: Piotr Wilczek <p.wilczek@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> CC: Lukasz Majewski <l.majewski@samsung.com> Tested-by: Heiko Schocher <hs@denx.de> Acked-by: Heiko Schocher <hs@denx.de>
| * | drivers:usb: use get|put_unaligned_le16Piotr Wilczek2013-06-30-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch use get|put_unaligned_le16 to access structure data to avoid data abort on some ARM platforms. Signed-off-by: Piotr Wilczek <p.wilczek@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> CC: Marek Vasut <marex@denx.de>
| * | dfu: make data buffer size configurableHeiko Schocher2013-06-30-9/+50
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Dfu transfer uses a buffer before writing data to the raw storage device. Make the size (in bytes) of this buffer configurable through environment variable "dfu_bufsiz". Defaut value is configurable through CONFIG_SYS_DFU_DATA_BUF_SIZE Signed-off-by: Heiko Schocher <hs@denx.de> Cc: Pantelis Antoniou <panto@antoniou-consulting.com> Cc: Tom Rini <trini@ti.com> Cc: Lukasz Majewski <l.majewski@samsung.com> Cc: Kyungmin Park <kyungmin.park@samsung.com> Cc: Marek Vasut <marex@denx.de> Cc: Wolfgang Denk <wd@denx.de> Acked-by: Tom Rini <trini@ti.com>
* | avr32/m68k/microblaze/nds32/nios2/openrisc/sh/sparc: fix do_bootm_linuxAndreas Bießmann2013-07-02-0/+51
| | | | | | | | | | | | | | | | | | | | | | | | Commit 35fc84fa1ff51e15ecd3e464dac87eb105ffed30 broke bootm on avr32. It requires to call do_bootm_linux() with flag set to BOOTM_STATE_OS_PREP before calling it again with flag set to BOOTM_STATE_OS_GO. Fix this by allowing flag set to BOOTM_STATE_OS_PREP, this however will require a complete refactoring later on. Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> [trini: Apply to m68k, microblaze, nds32, nios2, openrisc, sh and sparc] Signed-off-by: Tom Rini <trini@ti.com>
* | Merge branch 'master' of git://git.denx.de/u-boot-nand-flashTom Rini2013-07-01-34/+46
|\ \ | |/ |/|
| * mtd/nand: docg4: fix compiler warningsMike Dunn2013-06-26-8/+7
| | | | | | | | | | | | | | Newer gcc versions warn about unused variables. This patch corrects a few of those warnings that popped up in a build for the palmtreo680 board. Signed-off-by: Mike Dunn <mikedunn@newsguy.com>
| * dfu, nand: before write a buffer to nand, erase the nand sectorsHeiko Schocher2013-06-24-2/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | before writing the received buffer to nand, erase the nand sectors. If not doing this, nand write fails. See for more info here: http://lists.denx.de/pipermail/u-boot/2013-June/156361.html Using the nand erase option "spread", maybe overwrite blocks on, for example another mtd partition, if the erasing range contains bad blocks. So a limit option is added to nand_erase_opts() Signed-off-by: Heiko Schocher <hs@denx.de> Cc: Scott Wood <scottwood@freescale.com> Cc: Pantelis Antoniou <panto@antoniou-consulting.com> Cc: Lukasz Majewski <l.majewski@samsung.com> Cc: Kyungmin Park <kyungmin.park@samsung.com> Cc: Marek Vasut <marex@denx.de> Cc: Tom Rini <trini@ti.com> Signed-off-by: Scott Wood <scottwood@freescale.com>
| * nand: Don't call adjust_size_for_badblocks for eraseScott Wood2013-06-21-8/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * mtd: nand: fix initialization of BBT optionsDaniel Schwierzeck2013-06-18-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | commit dfe64e2c89731a3f9950d7acd8681b68df2bae03 Author: Sergey Lapin <slapin@ossfans.org> Date: Mon Jan 14 03:46:50 2013 +0000 mtd: resync with Linux-3.7.1 changed the initialization of BBT options. Fix drivers jz4740 and s3c2410 which have not been updated yet and cause compile errors. Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
| * mtd: nand/docg4: fix driver after Linux resyncMike Dunn2013-06-17-12/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit dfe64e2c89731a3f9950d7acd8681b68df2bae03: mtd: resync with Linux-3.7.1 broke the docg4 driver. Specifically: - some of the prototypes of the ecc methods changed - the NAND_NO_AUTOINCR flag was removed - the ecc.strength element was added. This patch fixes these. Tested on the docg4 on my palmtre680 board. Signed-off-by: Mike Dunn <mikedunn@newsguy.com>
* | Prepare v2013.07-rc2Tom Rini2013-06-28-1/+1
| | | | | | | | Signed-off-by: Tom Rini <trini@ti.com>
* | Fix bootm to work on powerpc again (compressed uImage)Stefan Roese2013-06-28-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Patch 35fc84fa1 [Refactor the bootm command to reduce code duplication] breaks booting Linux (compressed uImage with fdt) on powerpc. boot_jump_linux() mustn't be called before boot_prep_linux() and boot_body_linux() have been called. So remove the superfluous call to boot_jump_linux() in arch/powerpc/lib/bootm.c as its called later on in this function. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Simon Glass <sjg@chromium.org> Cc: Tom Rini <trini@ti.com>
* | mkimage: Build signing only if board has CONFIG_FIT_SIGNATURESimon Glass2013-06-28-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At present mkimage is set up to always build with image signing support. This means that the SSL libraries (e.g. libssl-dev) are always required. Adjust things so that mkimage can be built with and without image signing, controlled by the presence of CONFIG_FIT_SIGNATURE in the board config file. If CONFIG_FIT_SIGNATURE is not enabled, then mkimage will report a warning that signing is not supported. If the option is enabled, but libraries are not available, then a build error similar to this will be shown: lib/rsa/rsa-sign.c:26:25: fatal error: openssl/rsa.h: No such file or directory Signed-off-by: Simon Glass <sjg@chromium.org>
* | bootm: Disable interrupts before loading OSSimon Glass2013-06-28-26/+27
| | | | | | | | | | | | | | | | | | | | 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>
* | cmd_bootm.c: Correct BOOTM_ERR_OVERLAP handlingTom Rini2013-06-28-27/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With 35fc84fa1 [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'.
* | am335x_evm: Add missing ';' in findfdtTom Rini2013-06-27-1/+1
| | | | | | | | | | | | | | | | In a714321 we add a check at the end of findfdt to make sure we have updated it from undefined and if not, warn the user. This however forgot a ';' on the end of the previous last test. Signed-off-by: Tom Rini <trini@ti.com>