- Oct 24, 2011
-
-
Simon Glass authored
Commit 1272592e introduced a warning since the variable 's' is no longer always used, depending on the CONFIG options. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
- Oct 23, 2011
-
-
Bernhard Kaindl authored
The call to run_post(POST_ROM) which can run the POST memory test is currently called too late when gd has already been copied to DRAM. This results in failure to boot Linux after a POST_ROM memory test tested all RAM while gd was already relocated to DRAM due to gd being overwritten by the POST_ROM memory test. Support this by moving the call to run_post(POST_ROM) to run earlier, before U-Boot has started to move data to DRAM (from late board_init_f to early board_init_f) where DRAM is initialized, but not used yet. This allows that an POST memory test can test the whole DRAM, including the area where the board info struct is located. Signed-off-by:
Bernhard Kaindl <bernhard.kaindl@thalesgroup.com> Cc: Pieter Voorthuijsen <pieter.voorthuijsen@prodrive.nl>
-
Simon Glass authored
This changes the board code to use the new getenv_ulong() function. Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Stefan Roese <sr@denx.de>
-
- Oct 05, 2011
-
-
Mike Frysinger authored
This is long over due. All but two net drivers have been converted, but those have now been dropped. The only thing left to do is actually delete all references to NET_MULTI and code that is compiled when that is not defined. So here we scrub the core code. Signed-off-by:
Mike Frysinger <vapier@gentoo.org>
-
- Sep 05, 2011
-
-
Diana CRACIUN authored
Since we are loading an executable image into memory we need flush it out of the cache to possible maintain coherence on CPUs with split instruction and data caches. We do this for other executable image loading command. On PowerPC once we do this we no longer need to explicitly flush the dcache on multi-core systems in the BOOTM_STATE_OS_PREP phase. We now treat the BOOTM_STATE_OS_PREP as a no-op to maintain backwards compatibility with the bootm subcommand. Signed-off-by:
James Yang <James.Yang@freescale.com> Signed-off-by:
Diana CRACIUN <Diana.Craciun@freescale.com> Signed-off-by:
Kumar Gala <galak@kernel.crashing.org>
-
- Aug 04, 2011
-
-
Heiko Schocher authored
The U-Boot Design Principles[1] clearly say: Initialize devices only when they are needed within U-Boot, i.e. don't initialize the Ethernet interface(s) unless U-Boot performs a download over Ethernet; don't initialize any IDE or USB devices unless U-Boot actually tries to load files from these, etc. (and don't forget to shut down these devices after using them - otherwise nasty things may happen when you try to boot your OS). So, do not initialize and read the sensors on startup. Signed-off-by:
Heiko Schocher <hs@denx.de> cc: Wolfgang Denk <wd@denx.de> cc: Holger Brunck <holger.brunck@keymile.com>
-
- Jul 29, 2011
-
-
Timur Tabi authored
Introduce ft_verify_fdt(), a function that is called after the device tree has been fixed up, that displays warning messages if there is a mismatch between the physical addresses of some devices that U-Boot has configured with what the device tree says the addresses are. This is a particular problem when booting a 36-bit device tree from a 32-bit U-Boot (or vice versa), because the physical address of CCSR is wrong in the device tree. When the operating system boots, no messages are displayed, so the user generally has no idea what's wrong. Signed-off-by:
Timur Tabi <timur@freescale.com> Signed-off-by:
Kumar Gala <galak@kernel.crashing.org>
-
Kumar Gala authored
Had a typo in the ifdef for 85xx, should be CONFIG_MPC85xx for it to get triggered. Was pull in the non-BookE magic number. Reported-by: John Cortell Signed-off-by:
Kumar Gala <galak@kernel.crashing.org>
-
- Jul 26, 2011
-
-
Graeme Russ authored
-
Graeme Russ authored
-
Kumar Gala authored
When booting with a ramdisk we bump the amount of memory reserved for the device tree by FDT_RAMDISK_OVERHEAD. However we did not increase the actual size in the device tree blob to match. Its possible on boundary cases that we dont have enough memory according to the device tree blob and get errors like: WARNING: could not set linux,initrd-end FDT_ERR_NOSPACE We can easily fix this by setting the device tree size at the same time we bump the amount of memory reserved for the device tree. Signed-off-by:
Kumar Gala <galak@kernel.crashing.org> Acked-by:
Gerald Van Baren <vanbaren@cideas.com>
-
- Apr 29, 2011
-
-
Heiko Schocher authored
- serial console on UART1 - Ethernet RMII over UCC4 - PHY SMSC LAN8700 - 64MB Flash - 128 MB DDR2 RAM - I2C - bootcount This board is similiar to the kmeter1 (8360) board, so common config options are extracted into the include/configs/km83xx-common.h file. Signed-off-by:
Heiko Schocher <hs@denx.de> Acked-by:
Kim Phillips <kim.phillips@freescale.com> cc: Kim Phillips <kim.phillips@freescale.com> cc: Holger Brunck <holger.brunck@keymile.com> cc: Valentin Longchamp <valentin.longchamp@keymile.com>
-
- Apr 27, 2011
-
-
Minkyu Kang authored
If FB address is defined specific address then don't grab memory for LCD Signed-off-by:
Minkyu Kang <mk7.kang@samsung.com> Cc: Albert Aribaud <albert.aribaud@free.fr> Cc: Wolfgang Denk <wd@denx.de> Cc: Stefan Roese <sr@denx.de> Cc: Kim Phillips <kim.phillips@freescale.com> Cc: Andy Fleming <afleming@gmail.com> Cc: Kumar Gala <kumar.gala@freescale.com>
-
- Apr 26, 2011
-
-
Grant Likely authored
If a regions is reserved in the fdt, then it should not be used. Add the memreserve regions to the lmb so that u-boot doesn't use them to store the initrd. Signed-off-by:
Grant Likely <grant.likely@linaro.org>
-
Grant Likely authored
The previous patch makes u-boot use the full accessible size of ram as the default boot mapped size if CONFIG_SYS_BOOTMAPSZ is not defined, which means boot_relocate_fdt() can be changed to depend solely on CONFIG_OF_LIBFDT. Signed-off-by:
Grant Likely <grant.likely@linaro.org>
-
Grant Likely authored
This patch adds a function getenv_bootm_mapsize() for obtaining the size of the early mapped region accessible by the kernel during early boot. It defaults to CONFIG_SYS_BOOTMAPSZ, or if not defined, defaults to getenv_bootm_size(), which in turn defaults to the size of RAM. getenv_bootm_mapsize() can also be overridden with a "bootm_mapsize" environmental variable. Signed-off-by:
Grant Likely <grant.likely@linaro.org>
-
Grant Likely authored
For the calls to boot_relocate_fdt(), boot_get_cmdline(), and boot_get_kbd(), the value of bootmem_base is always obtained by calling getenv_bootm_low(). Since the value always comes from the same source, the calling signature for those functions can be simplified by making them call getenv_bootm_low() directly. Signed-off-by:
Grant Likely <grant.likely@linaro.org>
-
- Apr 04, 2011
-
-
Kumar Gala authored
We can simplify some cpu/SoC level initialization by moving it to be after the environment and non-volatile storage is setup as there might be dependancies on such things in various boot configurations. For example for FSL SoC's with QE if we boot from NAND we need it setup to extra the ucode image to initialize the QE. If we always do this after environment & non-volatile storage is working we can have the code be the same regardless of NOR, NAND, SPI, MMC boot. Signed-off-by:
Kumar Gala <galak@kernel.crashing.org>
-
Kumar Gala authored
We've been utilizing board_lmb_reserve to reserve the boot page for MP systems. We can just move this into arch_lmb_reserve for 85xx & 86xx systems rather than duplicating in each board port. Signed-off-by:
Kumar Gala <galak@kernel.crashing.org>
-
- Mar 27, 2011
-
-
Po-Yu Chuang authored
Currently, _end is used for end of BSS section. We want _end to mean end of u-boot image, so we rename _end to __bss_end__ first. Signed-off-by:
Po-Yu Chuang <ratbert@faraday-tech.com>
-
- Jan 18, 2011
-
-
Peter Tyser authored
There's no compelling reason to have the output on bootup or the "flinfo" command print "flash" in uppercase, so use the proper case where appropriate. Signed-off-by:
Peter Tyser <ptyser@xes-inc.com>
-
- Dec 17, 2010
-
-
Timur Tabi authored
In some usages of inline assembly, hard-coded registers were specified when a scratch register should have been used instead. Signed-off-by:
Timur Tabi <timur@freescale.com>
-
- Nov 30, 2010
-
-
Kumar Gala authored
Some systems need to relocate the env_addr pointer early because the location it points to will get invalidated before env_relocate is called. One example is on systems that might use a L2 or L3 cache in SRAM mode and initialize that cache from SRAM mode back to being a cache in cpu_init_r. We set this on the 85xx boards that have support for NAND, SPI, or SDHC/MMC boot support as they use a secondary cache in SRAM mode and need the env_addr pointer relocated since we change from SRAM to normal cache mode in cpu_init_r. Also removed CONFIG_SYS_SPL as its not used anywhere. Signed-off-by:
Kumar Gala <galak@kernel.crashing.org>
-
- Nov 28, 2010
-
-
Mike Frysinger authored
The duplication of the do_reset prototype has gotten out of hand, and they're not all in sync. Unify them all in command.h. Signed-off-by:
Mike Frysinger <vapier@gentoo.org>
-
- Nov 26, 2010
-
-
Wolfgang Denk authored
So far, only the BAB7xx board would call the initialise_w83c553f() function for the WINBOND 83C553 chip, even though some other boards (HIDDEN_DRAGON, Sandpoint8240, Sandpoint8245) enabled it in their board configuration. These boards were also missing other config settings needed for that, which resulted in build errors like this: drivers/pci/libpci.o:(.got2+0x84): undefined reference to `ide_bus_offset' Switch arch/powerpc/lib/board.c to call initialise_w83c553f() not on a per-board base, but when a WINBOND_83C553 in enabled in a configuration (like BAB7xx), and disable it in the boards that had this set so far. Signed-off-by:
Wolfgang Denk <wd@denx.de> Cc: Yusdi Santoso <yusdi_santoso@adaptec.com> Cc: Jim Thompson <jim@musenki.com> Acked-by:
Stefan Roese <sr@denx.de>
-
- Nov 17, 2010
-
-
Sebastien Carlier authored
Before this commit, weak symbols were not overridden by non-weak symbols found in archive libraries when linking with recent versions of binutils. As stated in the System V ABI, "the link editor does not extract archive members to resolve undefined weak symbols". This commit changes all Makefiles to use partial linking (ld -r) instead of creating library archives, which forces all symbols to participate in linking, allowing non-weak symbols to override weak symbols as intended. This approach is also used by Linux, from which the gmake function cmd_link_o_target (defined in config.mk and used in all Makefiles) is inspired. The name of each former library archive is preserved except for extensions which change from ".a" to ".o". This commit updates references accordingly where needed, in particular in some linker scripts. This commit reveals board configurations that exclude some features but include source files that depend these disabled features in the build, resulting in undefined symbols. Known such cases include: - disabling CMD_NET but not CMD_NFS; - enabling CONFIG_OF_LIBFDT but not CONFIG_QE. Signed-off-by:
Sebastien Carlier <sebastien.carlier@gmail.com>
-
- Oct 20, 2010
-
-
John Schmoller authored
If a NOR flash is write protected it can not be initialized/detected so add the ability for boards to skip NOR initialization on bootup. A board can skip NOR initialization by implementing the board_flash_wp_on() function. Signed-off-by:
John Schmoller <jschmoller@xes-inc.com> Signed-off-by:
Peter Tyser <ptyser@xes-inc.com> CC: sr@denx.de Acked-by:
Stefan Roese <sr@denx.de>
-
- Oct 18, 2010
-
-
Peter Tyser authored
Now that warm booting is not supported, there isn't a need for the BOOTFLAG_COLD and BOOTFLAG_WARM defines, so remove them. Note that this change makes the board info bd_bootflags field useless. It will always be set to 0, but we leave it around so that we don't break the board info structure that some OSes are expecting to be passed from U-Boot. Signed-off-by:
Peter Tyser <ptyser@xes-inc.com>
-
Wolfgang Denk authored
The change is currently needed to be able to remove the board configuration scripting from the top level Makefile and replace it by a simple, table driven script. Moving this configuration setting into the "CONFIG_*" name space is also desirable because it is needed if we ever should move forward to a Kconfig driven configuration system. Signed-off-by:
Wolfgang Denk <wd@denx.de>
-
- Oct 13, 2010
-
-
Peter Tyser authored
Only a few PPC boards actually use the common BAT manipulation functions, so only compile it for them. Signed-off-by:
Peter Tyser <ptyser@xes-inc.com>
-
- Oct 12, 2010
-
-
Peter Tyser authored
This puts the board info struct in a known state and allows the removal of other code which initialized board info fields to 0. Signed-off-by:
Peter Tyser <ptyser@xes-inc.com>
-
- Oct 06, 2010
-
-
Andre Schwarz authored
Signed-off-by:
Andre Schwarz <andre.schwarz@matrix-vision.de>
-
Wolfgang Denk authored
The PCU_E board has long reached EOL, and support for it is no longer relevant in current versions of U-Boot. Remove it. Signed-off-by:
Wolfgang Denk <wd@denx.de>
-
- Sep 23, 2010
-
-
Stefan Roese authored
This patch removes the completely unused CONFIG_SERIAL_SOFTWARE_FIFO feature from U-Boot. It has only been implemented for PPC4xx and was not used at all. So let's remove it and make the code smaller and cleaner. Signed-off-by:
Stefan Roese <sr@denx.de> Acked-by:
Detlev Zundel <dzu@denx.de>
-
- Sep 19, 2010
-
-
Heiko Schocher authored
Portions of this work were supported by funding from the CE Linux Forum. Signed-off-by:
Heiko Schocher <hs@denx.de>
-
Wolfgang Denk authored
Traditionally many boards used local definitions for SRAM base address and size (like SRAM_BASE, SRAM_LEN and/or SRAM_SIZE), while the (now) "official" names are CONFIG_SYS_SRAM_BASE and CONFIG_SYS_SRAM_SIZE. The corresponding code in arch/powerpc/lib/board.c was board specific, and has never actually been maintained well. Replace this by feature- specific code and adapt the boards that actually use this. NOTE: there is still a ton of boards using the old #defines, which therefor contain incorrect values in bi_sramstart and bi_sramsize. All respective board maintainers are requested to clean up their respective configurations. Thanks. Signed-off-by:
Wolfgang Denk <wd@denx.de> Cc: Josef Wagner <Wagner@Microsys.de> Cc: Stefan Roese <sr@denx.de> Cc: Heiko Schocher <hs@denx.de> Cc: Wolfgang Denk <wd@denx.de>
-
Terry Lv authored
This patch is to save environment data to mmc card. It uses interfaces defined in generic mmc. Signed-off-by:
Terry Lv <r65388@freescale.com> Acked-by:
Stefano Babic <sbabic@denx.de>
-
- Aug 08, 2010
-
-
Stephan Linz authored
Platforms with flat device tree support can use a bootmap to relocate the fdt_blob. This is not a must. That's why the relocation function boot_relocate_fdt() should be use only if CONFIG_OF_LIBFDT was defined together with CONFIG_SYS_BOOTMAPSZ (see common/cmd_bootm.c). On MicroBlaze platforms there is no need to use a bootmap to relocate a fdt blob. So we need a more precise focus on the compilation and usage of boot_relocate_fdt(). In general it is valid to exclude the function boot_relocate_fdt() if the bootmap size CONFIG_SYS_BOOTMAPSZ is not defined. Signed-off-by:
Stephan Linz <linz@li-pro.net>
-
- Aug 03, 2010
-
-
Wolfgang Denk authored
While running from flash, i. e. before relocation, we have only a limited C runtime environment without writable data segment. In this phase, some configurations (for example with environment in EEPROM) must not use the normal getenv(), but a special function. This function had been called getenv_r(), with the idea that the "_r" suffix would mean the same as in the _r_eentrant versions of some of the C library functions (for example getdate vs. getdate_r, getgrent vs. getgrent_r, etc.). Unfortunately this was a misleading name, as in U-Boot the "_r" generally means "running from RAM", i. e. _after_ relocation. To avoid confusion, rename into getenv_f() [as "running from flash"] Signed-off-by:
Wolfgang Denk <wd@denx.de> Acked-by:
Detlev Zundel <dzu@denx.de>
-
- Jul 04, 2010
-
-
Wolfgang Denk authored
The hush shell dynamically allocates (and re-allocates) memory for the argument strings in the "char *argv[]" argument vector passed to commands. Any code that modifies these pointers will cause serious corruption of the malloc data structures and crash U-Boot, so make sure the compiler can check that no such modifications are being done by changing the code into "char * const argv[]". This modification is the result of debugging a strange crash caused after adding a new command, which used the following argument processing code which has been working perfectly fine in all Unix systems since version 6 - but not so in U-Boot: int main (int argc, char **argv) { while (--argc > 0 && **++argv == '-') { /* ====> */ while (*++*argv) { switch (**argv) { case 'd': debug++; break; ... default: usage (); } } } ... } The line marked "====>" will corrupt the malloc data structures and usually cause U-Boot to crash when the next command gets executed by the shell. With the modification, the compiler will prevent this with an error: increment of read-only location '*argv' N.B.: The code above can be trivially rewritten like this: while (--argc > 0 && **++argv == '-') { char *arg = *argv; while (*++arg) { switch (*arg) { ... Signed-off-by:
Wolfgang Denk <wd@denx.de> Acked-by:
Mike Frysinger <vapier@gentoo.org>
-