- Apr 09, 2008
-
-
Stefan Roese authored
The patch 70431e8a (Make MPC83xx one step closer to full relocation.) doesn't use CFG_MONITOR_BASE anymore. But on 4xx systems _start currently cannot be used for this calculation. So revert back to the original version for now. Signed-off-by:
Stefan Roese <sr@denx.de>
-
- Apr 01, 2008
-
-
Kim Phillips authored
finish off what commit 43ddd9c8, "Remove deprecated CONFIG_OF_HAS_UBOOT_ENV and CONFIG_OF_HAS_BD_T" started. Signed-off-by:
Kim Phillips <kim.phillips@freescale.com>
-
- Mar 28, 2008
-
-
Joakim Tjernlund authored
Remove a few absolute references to CFG_MONITOR_BASE for ppc/mpc83xx and use GOT relative reference. Signed-off-by:
Joakim Tjernlund <Joakim.Tjernlund@transmode.se> Signed-off-by:
Kim Phillips <kim.phillips@freescale.com>
-
Michael Barkowski authored
This patch fixes eeprom page size so that you can now write more than 64 bytes at a time. It also makes the board take MAC addresses, if found, from EEPROM. User should place up to 4 addresses at offset 0x7f00, for eth{,1,2,3}addr. Any unused addresses should be zero. This group of four six-byte values should have it's CRC at the end. crc32 and eeprom commands can be used to accomplish this. If CRC fails, MAC addresses come from the environment. If CRC succeeds, the environment is overwritten at startup. Signed-off-by:
Michael Barkowski <michael.barkowski@freescale.com> Signed-off-by:
Kim Phillips <kim.phillips@freescale.com>
-
- Mar 27, 2008
-
-
Stefan Roese authored
Signed-off-by:
Stefan Roese <sr@denx.de>
-
Stefan Roese authored
If CFG_MEM_TOP_HIDE is defined in the board config header, this specified memory area will get subtracted from the top (end) of ram and won't get "touched" at all by U-Boot. By fixing up gd->ram_size the Linux kernel should gets passed the now "corrected" memory size and won't touch it either. This should work for arch/ppc and arch/powerpc. Only Linux board ports in arch/powerpc with bootwrapper support, which recalculate the memory size from the SDRAM controller setup, will have to get fixed in Linux additionally. This patch enables this config option on some PPC440EPx boards as a workaround for the CHIP 11 errata. Here the description from the AMCC documentation: CHIP_11: End of memory range area restricted access. Category: 3 Overview: The 440EPx DDR controller does not acknowledge any transaction which is determined to be crossing over the end-of-memory-range boundary, even if the starting address is within valid memory space. Any such transaction from any PLB4 master will result in a PLB time-out on PLB4 bus. Impact: In case of such misaligned bursts, PLB4 masters will not retrieve any data at all, just the available data up to the end of memory, especially the 440 CPU. For example, if a CPU instruction required an operand located in memory within the last 7 words of memory, the DCU master would burst read 8 words to update the data cache and cross over the end-of-memory-range boundary. Such a DCU read would not be answered by the DDR controller, resulting in a PLB4 time-out and ultimately in a Machine Check interrupt. The data would be inaccessible to the CPU. Workaround: Forbid any application to access the last 256 bytes of DDR memory. For example, make your operating system believe that the last 256 bytes of DDR memory are absent. AMCC has a patch that does this, available for Linux. This patch sets CFG_MEM_TOP_HIDE for the following 440EPx boards: lwmon5, korat, sequoia The other remaining 440EPx board were intentionally not included since it is not clear to me, if they use the end of ram for some other purpose. This is unclear, since these boards have CONFIG_PRAM defined and even comments like this: PMC440.h: /* esd expects pram at end of physical memory. * So no logbuffer at the moment. */ It is strongly recommended to not use the last 256 bytes on those boards too. Patches from the board maintainers are welcome. Signed-off-by:
Stefan Roese <sr@denx.de>
-
- Mar 26, 2008
-
-
Dave Liu authored
Signed-off-by:
Dave Liu <daveliu@freescale.com>
-
Wolfgang Denk authored
Signed-off-by:
Wolfgang Denk <wd@denx.de>
-
- Mar 25, 2008
-
-
Kumar Gala authored
For historical reasons we limited the stack to 256M because some boards could only map that much via BATS. However newer boards are capable of mapping more memory (for example 85xx is capble of doing up to 2G). Signed-off-by:
Kumar Gala <galak@kernel.crashing.org>
-
- Mar 20, 2008
-
-
Bartlomiej Sieka authored
Signed-off-by:
Bartlomiej Sieka <tur@semihalf.com>
-
- Mar 18, 2008
-
-
Yuri Tikhonov authored
The patch introduces the alternative configuration of the log buffer for the lwmon5 board: the storage for the log-buffer itself is OCM(on-chip memory), the log-buffer header is moved to six GPT registers (PPC440EPX_GPT0_COMP1, ..., PPC440EPX_GPT0_COMP5). To enable this, alternative, configuration the U-Boot board configuration file for lwmon5 includes the definitions of alternative addresses for header (CONFIG_ALT_LH_ADDR) and buffer (CONFIG_ALT_LB_ADDR). The Linux shall be configured with the CONFIG_ALT_LB_LOCATION option set, and has the BOARD_ALT_LH_ADDR and BOARD_ALT_LB_ADDR constants defined in the lwmon5 board-specific header (arch/ppc/platforms/4xx/lwmon5.h). Signed-off-by:
Yuri Tikhonov <yur@emcraft.com>
-
- Mar 12, 2008
-
-
Marian Balakowicz authored
Save FIT configuration provied in the first bootm argument and use it when to get ramdisk/FDT subimages when second and third (ramdisk/FDT) arguments are not specified. Signed-off-by:
Marian Balakowicz <m8@semihalf.com>
-
Marian Balakowicz authored
This patch updates architecture specific implementations of do_bootm_linux() adding new uImage format handling for operations like get kernel entry point address, get kernel image data start address. Signed-off-by:
Marian Balakowicz <m8@semihalf.com>
-
Marian Balakowicz authored
This patch adds new node offset fields to struct bootm_headers and updates bootm_headers processing code to make use of them. Saved node offsets allow to avoid repeating fit_image_get_node() calls. Signed-off-by:
Marian Balakowicz <m8@semihalf.com>
-
Marian Balakowicz authored
Support for new (FIT) format uImages is added to powerpc specific boot_get_fdt() routine which now recognizes, sanity checks FIT image and is able to access data sections of the requested component image. Signed-off-by:
Marian Balakowicz <m8@semihalf.com>
-
Marian Balakowicz authored
boot_get_ramdisk() and image_get_ramdisk() do not need all cmdtp, flag, argc and argv arguments. Simplify routines definition. Signed-off-by:
Marian Balakowicz <m8@semihalf.com>
-
- Feb 29, 2008
-
-
Marian Balakowicz authored
Do not use global fdt blob pointer, calculate blob size from routine argument blob pointer. Signed-off-by:
Marian Balakowicz <m8@semihalf.com>
-
Marian Balakowicz authored
This patch introduces the following prefix convention for the image format handling and bootm related code: genimg_ - dual format shared code image_ - legacy uImage format specific code fit_ - new uImage format specific code boot_ - booting process related code Related routines are renamed and a few pieces of code are moved around and re-grouped. Signed-off-by:
Marian Balakowicz <m8@semihalf.com>
-
Kumar Gala authored
Signed-off-by:
Kumar Gala <galak@kernel.crashing.org> Acked-by:
Marian Balakowicz <m8@semihalf.com>
-
Kumar Gala authored
Allow the user to set 'bootm_low' and 'bootm_size' env vars as a way to restrict what memory range is used for bootm. Signed-off-by:
Kumar Gala <galak@kernel.crashing.org> Acked-by:
Marian Balakowicz <m8@semihalf.com>
-
Kumar Gala authored
Convert generic ramdisk_high(), get_boot_cmdline(), get_boot_kbd() functions over to using lmb for allocation of the ramdisk, command line and kernel bd info. Convert PPC specific fdt_relocate() to use lmb for allocation of the device tree. Provided a weak function that board code can call to do additional lmb reserves if needed. Also introduce the concept of bootmap_base to specify the offset in physical memory that the bootmap is located at. This is used for allocations of the cmdline, kernel bd, and device tree as they should be contained within bootmap_base and bootmap_base + CFG_BOOTMAPSZ. Signed-off-by:
Kumar Gala <galak@kernel.crashing.org>
-
Kumar Gala authored
For historical reasons we limited the stack to 256M because some boards could only map that much via BATS. However newer boards are capable of mapping more memory (for example 85xx is capable of doing up to 2G). Signed-off-by:
Kumar Gala <galak@kernel.crashing.org> Acked-by:
Marian Balakowicz <m8@semihalf.com>
-
Kumar Gala authored
Changed image_get_ramdisk() to just return NULL on error and have get_ramdisk() propogate that error to the caller. It's left to the caller to call do_reset() if it wants to. Also moved calling do_reset() in get_fdt() and fdt_relocate() on ppc to a common location. In the future we will change get_fdt() and fdt_relocate() to return success/failure and not call do_reset() at all. Signed-off-by:
Kumar Gala <galak@kernel.crashing.org> Acked-by:
Marian Balakowicz <m8@semihalf.com>
-
Kumar Gala authored
Doing the fdt before the ramdisk allows us to grow the fdt w/o concern however it does mean we have to go in and fixup the initrd info since we don't know where it will be. Signed-off-by:
Kumar Gala <galak@kernel.crashing.org>
-
Kumar Gala authored
If we are bootin OF style than we can skip setting up some things that are used for the old boot method. Signed-off-by:
Kumar Gala <galak@kernel.crashing.org> Acked-by:
Marian Balakowicz <m8@semihalf.com>
-
Kumar Gala authored
We don't actually need the kdb param as we are just using it to get bd->bi_memsize which we can get from gd->bd->bi_memsize. Also, if we boot via OF we might not actually fill out a kdb. Signed-off-by:
Kumar Gala <galak@kernel.crashing.org> Acked-by:
Marian Balakowicz <m8@semihalf.com>
-
- Feb 27, 2008
-
-
Marian Balakowicz authored
Dual format image code must properly handle all three FDT passing methods: - raw FDT blob passed - FDT blob embedded in the legacy uImage - FDT blob embedded in the new uImage This patch enables proper raw FDT handling when no FIT imaeg support is compiled in. This is a bit tricky as we must dected FIT format even when FIT uImage handling is not enabled as both FIT uImages and raw FDT blobs use tha same low level format (libfdt). Signed-off-by:
Marian Balakowicz <m8@semihalf.com>
-
Marian Balakowicz authored
FDT blob may be passed either: (1) raw (2) or embedded in the legacy uImage (3) or embedded in the new uImage. For the (2) case embedding image must be verified before we get FDT from it. This patch factors out legacy image specific verification routine to the separate helper routine. Signed-off-by:
Marian Balakowicz <m8@semihalf.com> Acked-by:
Kumar Gala <galak@kernel.crashing.org>
-
Marian Balakowicz authored
Do not pass image verification flag directly to related routines. Simplify argument passing and move it to the bootm_header structure which contains curently processed image specific data and is already being passed on the argument list. Signed-off-by:
Marian Balakowicz <m8@semihalf.com> Acked-by:
Kumar Gala <galak@kernel.crashing.org>
-
Marian Balakowicz authored
Signed-off-by:
Marian Balakowicz <m8@semihalf.com>
-
Marian Balakowicz authored
PPC specific FDT blob handling code is divided into two separate routines: get_fdt() - find and verify a FDT blob (either raw or image embedded) fdt_relocate() - move FDT blob to within BOOTMAP if needed Signed-off-by:
Marian Balakowicz <m8@semihalf.com> Acked-by:
Kumar Gala <galak@kernel.crashing.org>
-
- Feb 25, 2008
-
-
Marian Balakowicz authored
This patch adds framework for dual format images. Format detection is added and the bootm controll flow is updated to include cases for new FIT format uImages. When the legacy (image_header based) format is detected appropriate legacy specific handling is invoked. For the new (FIT based) format uImages dual boot framework has a minial support, that will only print out a corresponding debug messages. Implementation of the FIT specific handling will be added in following patches. Signed-off-by:
Marian Balakowicz <m8@semihalf.com>
-
- Feb 22, 2008
-
-
Yuri Tikhonov authored
Some boards (e.g. lwmon5) may use rather small watchdog intervals, so causing it to reboot the board if U-Boot does a long busy-wait with udelay(). Thus, for these boards we have to restart WD more frequently. This patch splits the busy-wait udelay() into smaller, predefined, intervals, so that the watchdog timer may be resetted with the configurable (CONFIG_WD_PERIOD) interval. Signed-off-by:
Yuri Tikhonov <yur@emcraft.com>
-
Kumar Gala authored
For historical reasons we limited the stack to 256M because some boards could only map that much via BATS. However newer boards are capable of mapping more memory (for example 85xx is capable of doing up to 2G). Signed-off-by:
Kumar Gala <galak@kernel.crashing.org>
-
- Feb 21, 2008
-
-
Marian Balakowicz authored
Signed-off-by:
Marian Balakowicz <m8@semihalf.com>
-
Marian Balakowicz authored
This routine assures that image (whether legacy or FIT) is not in a special dataflash storage. If image address is a dataflash address image is moved to system RAM. Signed-off-by:
Marian Balakowicz <m8@semihalf.com>
-
- Feb 14, 2008
-
-
Rafal Jaworowski authored
Signed-off-by:
Rafal Jaworowski <raj@semihalf.com>
-
- Feb 07, 2008
-
-
Marian Balakowicz authored
Move FDT blob finding and relocation to a dedicated get_fdt() routine. It increases code readability and will make adding support for new uImage format easier. Signed-off-by:
Marian Balakowicz <m8@semihalf.com>
-
Marian Balakowicz authored
This patch moves common pre-boot allocation steps shared between PPC and M68K to a helper routines: common: - get_boot_sp_limit() - get_boot_cmline() - get_boot_kbd() platform: - set_clocks_in_mhz() Signed-off-by:
Marian Balakowicz <m8@semihalf.com>
-
Marian Balakowicz authored
Ramdisk loading code, including initrd_high variable handling, was duplicated for PPC and M68K platforms. This patch creates common helper routine that is being called from both platform do_bootm_linux() routines. Signed-off-by:
Marian Balakowicz <m8@semihalf.com>
-