summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-10-18ARM: enable device tree for beagleJohn Rigby
For testing ARM device tree support Signed-off-by: John Rigby <john.rigby@linaro.org> Acked-by: Wolfgang Denk <wd@denx.de>
2010-10-18ARM: add flat device tree supportJohn Rigby
Based on other architectures already supported. Tested on OMAP3 Beagle board and another unnamed ARM platform. Signed-off-by: John Rigby <john.rigby@linaro.org> Tested-by: Rob Herring <rob.herring@smooth-stone.com> Acked-by: Wolfgang Denk <wd@denx.de>
2010-10-18boot: change some arch ifdefs to feature ifdefsJohn Rigby
The routines boot_ramdisk_high, boot_get_cmdline and boot_get_kbd are currently enabled by various combinations of CONFIG_M68K, CONFIG_POWERPC and CONFIG_SPARC. Use CONFIG_SYS_BOOT_<FEATURE> defines instead. CONFIG_SYS_BOOT_RAMDISK_HIGH CONFIG_SYS_BOOT_GET_CMDLINE CONFIG_SYS_BOOT_GET_KBD Define these as appropriate in arch/include/asm/config.h files. Signed-off-by: John Rigby <john.rigby@linaro.org> Acked-by: Wolfgang Denk <wd@denx.de>
2010-10-18FDT: only call boot_get_fdt from generic codeJohn Rigby
All arches except nios2 and microblaze call boot_get_fdt from bootm_start in common/cmd_bootm.c. Having nios2 and microblaze do so as well removes code from their respective do_bootm_linux routines and allows removal of a nasty ifdef from bootm_start. In the case where boot_get_fdt returns an error bootm_start returns and the platform specific do_bootm_linux routines will never get called. Also only check argv[3] for an fdt addr if argc > 3 first. This is already the case for nios2. Signed-off-by: John Rigby <john.rigby@linaro.org> CC: Scott McNutt <smcnutt@psyent.com> CC: Michal Simek <monstr@monstr.eu> CC: Thomas Chou <thomas@wytron.com.tw> Acked-by: Wolfgang Denk <wd@denx.de> Acked-by: Michal Simek <monstr@monstr.eu> Tested-by: Thomas Chou <thomas@wytron.com.tw>
2010-10-18FDT: Add fixup support for multiple banks of memoryJohn Rigby
Add fdt_fixup_memory_banks and reimplement fdt_fixup_memory using it. Tested on OMAP3 beagle board with two banks of memory. Signed-off-by: John Rigby <john.rigby@linaro.org> CC: Jerry Van Baren <vanbaren@cideas.com> Acked-by: Gerald Van Baren <vanbaren@cideas.com>
2010-10-18common/image.c remove extra calls to be32_to_cpu in boot_get_fdtJohn Rigby
fdt_totalsize returns size in cpu endian so don't call be32_to_cpu on the result. This was harmless on big endian platforms but not on little endian ARMs. Signed-off-by: John Rigby <john.rigby@linaro.org>
2010-10-18common/image.c fix length calculation in boot_relocate_fdtJohn Rigby
boot_relocate_fdt is called on platforms with CONFIG_SYS_BOOTMAPSZ defined to relocate the device tree blob to be inside the boot map area between bootmap_base and bootmap_base+CONFIG_SYS_BOOTMAPSZ. For the case where the blob needs to be relocated, space is allocated inside the bootmap by calling lmb_alloc_base with size passed in plus some padding: of_len = *of_size + CONFIG_SYS_FDT_PAD; For the case where the blob is already inside the bounds of the boot map area, lmb_reserve is called to reserve the the space where the blob is already residing. The calculation for this case is currently: of_len = (CONFIG_SYS_BOOTMAPSZ + bootmap_base) - (ulong)fdt_blob; This is wrong because it reserves all the space in the boot map area from the blob to the end ignoring completely the actual size. The worst case is where the blob is at the beginning and the entire boot map area get reserved. Fix this by changing the length calculation to this: of_len = *of_size + CONFIG_SYS_FDT_PAD; This bug has likely never manifested itself because bootm has never been called with the fdt blob already in the bootmap area. In my testing on an OMAP3 beagle board I initially worked around the bug by simply moving the initial location of the fdt blob. I have tested with the new calculation with the fdt blob both inside and outside the boot map area. Signed-off-by: John Rigby <john.rigby@linaro.org>
2010-10-18dlmalloc.c: Fix gcc alias warningJoakim Tjernlund
Fix these warnings: dlmalloc.c: In function 'free': dlmalloc.c:2507: warning: dereferencing pointer '({anonymous})' does break strict-aliasing rules dlmalloc.c:2507: warning: dereferencing pointer '({anonymous})' does break strict-aliasing rules dlmalloc.c:2507: warning: dereferencing pointer '({anonymous})' does break strict-aliasing rules Some page(http://blog.worldofcoding.com/2010/02/solving-gcc-44-strict-aliasing-problems.html) suggests adding __attribute__((__may_alias__)). Doing so makes the warnings go away. Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se> Acked-by: Mike Frysinger <vapier@gentoo.org>
2010-10-18powerpc: do not fixup NULL ptrsJoakim Tjernlund
The fixup routine must not fixup NULL pointers. Problem can be seen by char *testfun(void) __attribute__((weak)); char *(*myfun)(void) = testfun; Then add printf("myfun:%p, &myfun:%p\n", myfun, &myfun); before relocation and after relocation. myfun should be NULL in both cases but it is not. Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
2010-10-18powerpc: Cleanup BOOTFLAG_* referencesPeter Tyser
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>
2010-10-18MPC5121: Add USB EHCI supportDamien Dusha
Signed-off-by: Francesco Rendine <francesco.rendine@valueteam.com> Signed-off-by: Damien Dusha <d.dusha@gmail.com> Signed-off-by: Anatolij Gustschin <agust@denx.de> Coding style cleanup; slight file restructuring. Signed-off-by: Wolfgang Denk <wd@denx.de> Acked-by: Remy Bohmer <linux@bohmer.net>
2010-10-18Merge branch 'master' of /home/wd/git/u-boot/master/Wolfgang Denk
2010-10-18MAINTAINERS: Fix alphabetical order in ARM subsectionEnric Balletbo i Serra
I'm noticed that IGEP maintainer isn't in the correct place within the ARM subsection: it's supposed to be in alphabetical order by maintainer. This patch fix this. Signed-off-by: Enric Balletbo i Serra <eballetbo@iseebcn.com>
2010-10-18Merge branch 'master' of git://git.denx.de/u-boot-nand-flashWolfgang Denk
2010-10-18config.mk cleanup: drop "-I$(TOPDIR)/board" entriesWolfgang Denk
After the recent cleanups, a number of config.mk files consist only of a "PLATFORM_CPPFLAGS += -I$(TOPDIR)/board" entry whih is not needed. Remove such entries. In most cases, that means that the whole config.mk file can be removed. Signed-off-by: Wolfgang Denk <wd@denx.de>
2010-10-18MAKEALL: allow additional board selectionsWolfgang Denk
Add command line handling to select boards to be built by architecture, CPU family, vendor or SoC name. Signed-off-by: Wolfgang Denk <wd@denx.de>
2010-10-18Makefile: move all Power Architecture boards into boards.cfgWolfgang Denk
Clean up Makefile, and drop a lot of the config.mk files on the way. We now also automatically pick all boards that are listed in boards.cfg (and with all configurations), so we can drop the redundant entries from MAKEALL to avoid building these twice. Signed-off-by: Wolfgang Denk <wd@denx.de>
2010-10-18autoconfig.mk: avoid apostophes around hex valuesWolfgang Denk
When generating include/autoconfig.mk, hex numbers would be quoted. This caused some false positives during automatic testing of the builds, and is known to cause some real issues for some Blackfin configurations. Don't use apostophes for decimal and hex numbers (nor for octal numbers). Signed-off-by: Wolfgang Denk <wd@denx.de> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-10-18Rename TEXT_BASE into CONFIG_SYS_TEXT_BASEWolfgang Denk
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>
2010-10-18mkconfig: change CONFIG_MK_ prefix into plain CONFIG_Wolfgang Denk
When planning for more generalization and Makefile cleanup it became obvious that the introduction of a separate CONFIG_MK_ name space for config options that were set through scripting in the Makefile was not a good idea. Originally the idea was to provide a script-free approach to supply configuration options - there was no real need for a separate name space. But when we now convert the existing Makefile entries to make use of this approach, it would mean that we have to touch a large number of board config files and add #ifdef / #define sequences to "convert" from the CONFIG_MK_ to the CONFIG_ name space. It seems much cleaner to get rid of this somewhat arbitrary _MK string now for the few boards that actually use it. Signed-off-by: Wolfgang Denk <wd@denx.de> Acked-by: Mike Frysinger <vapier@gentoo.org>
2010-10-18Build: Add "board options" column to boards.cfgMarek Vasut
There are some boards where it's currently not possible to detect all board information at runtime, therefore a new column was added to boards.cfg . This column can contain multiple options: a board configuration name, optionally followed by a colon (':') and a list of options, which are separated by comma (','). In case of simple options like '256M_U_BOOT', these expand to "#define CONFIG_MK_256M_U_BOOT 1" in config.h . In case of assignments like 'RAM=8192', these expand to "#define CONFIG_MK_RAM 8192" in config.h . Example: FOO:HAS_BAR,BAZ=64 means: - the name of the board config file is include/configs/FOO.h - the generated file include/config.h will contain these lines: #define CONFIG_HAS_BAR 1 #define CONFIG_BAZ 64 Signed-off-by: Marek Vasut <marek.vasut@gmail.com> [wd@denx.de: edited commit message; added code to deal with an optional board configuration name] Signed-off-by: Wolfgang Denk <wd@denx.de>
2010-10-18Makefile: clean MatrixVision buildsWolfgang Denk
"make clean" after builds of MatrixVision boards would leave stale files around: board/matrix_vision/mvblm7/bootscript.img board/matrix_vision/mvsmr/bootscript.img Fix this. Signed-off-by: Wolfgang Denk <wd@denx.de>
2010-10-18Fix warning in nand unlock commandScott Wood
Commit ea533c260a801c4e51f92f75165cebe6d7b01e35 changed arg_off_size to take a pointer to a device index, rather than to the device itself. When updating callers, the nand unlock code was missed. Signed-off-by: Scott Wood <scottwood@freescale.com>
2010-10-18mpc83xx: fix 837x MDS PCI HOST buildKim Phillips
commit 6aa3d3bfaa986f1aff5e21a9b9f68d087715b1a9 "83xx: Remove warmboot parameter from PCI init functions" missed one mpc83xx_pcie_init callsite, causing this build error: Configuring for MPC837XEMDS_HOST board... pci.c: In function 'pci_init_board': pci.c:141: error: too many arguments to function 'mpc83xx_pcie_init' this patch extends the commit to include that callsite. Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
2010-10-18MPC832XEMDS: fix pci.c build warningWolfgang Denk
Doubled use of DECLARE_GLOBAL_DATA_PTR caused compile warning: pci.c:71: warning: register used for two global register variables Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Kim Phillips <kim.phillips@freescale.com>
2010-10-18logodl: remove code for yet another corpseWolfgang Denk
The logodl board has long been unmaintained and left broken. As obviously nobody is interestedin that code any more, we may as well remove it. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: August Hoeraendl <august.hoerandl@gmx.at> Cc: Robert Schwebel <r.schwebel@pengutronix.de> Cc: Marek Vasut <marek.vasut@gmail.com>
2010-10-18schmoogie: fix build error due to removal of forceenv()Wolfgang Denk
commit 6d014adf dropped support for the forceenv() function, but failed to remove references to it from board/davinci/schmoogie/schmoogie.c Replace forceenv() by setenv() and set CONFIG_ENV_OVERWRITE instead in the board config file to allow overwriting the serial number. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Sergey Kubushyn <ksi@koi8.net> Acked-by: Sergey Kubushyn <ksi@koi8.net>
2010-10-18FPGA: fix support for non-Lattice devicesWolfgang Denk
Commit 3b8ac464 "FPGA: add support for downloading Lattice bitstream" added support for Lattice devices, but failed to add #ifdef's that are needed when building for non-Lattice devices, which results in build failures like these: Configuring for GEN860T board... drivers/fpga/libfpga.a(fpga.o): In function `fpga_dev_info': /home/wd/git/u-boot/work/drivers/fpga/fpga.c:145: undefined reference to `lattice_info' drivers/fpga/libfpga.a(fpga.o): In function `fpga_dump': /home/wd/git/u-boot/work/drivers/fpga/fpga.c:269: undefined reference to `lattice_dump' drivers/fpga/libfpga.a(fpga.o): In function `fpga_load': /home/wd/git/u-boot/work/drivers/fpga/fpga.c:233: undefined reference to `lattice_load' make: *** [u-boot] Error 1 Add the missing code. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Stefano Babic <sbabic@denx.de>
2010-10-17Merge branch 'master' of git://git.denx.de/u-boot-armWolfgang Denk
2010-10-17da850evm: fix linux bootparam addressBen Gardiner
This patch fixes the LINUX_BOOT_PARAM_ADDR define to be based off of PHYS_SDRAM_1 instead of CONFIG_SYS_MEMTEST_START. On da830 they are the same thing but on da850 the CONFIG_SYS_MEMSTART define is offset from the PHYS_SDRAM_1 start. Without this patch it is not possible to boot linux on da850 -- bootm hangs at "Uncompressing Linux... done, booting the kernel." Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
2010-10-17da850evm: basic MII EMAC supportBen Gardiner
The current da850evm support in u-boot/master omits any use of the davinci EMAC. This patch adds basic support for the EMAC using the MII PHY found on the baseboard of the EVM. The MAC address is read from the environment variable 'ethadd'. Note that this is different from the da850evm support in the u-boot omapl1 tree where the MAC address is read from SPI flash. Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca> CC: Sandeep Paulraj <s-paulraj@ti.com> CC: Sudhakar Rajashekhara <sudhakar.raj@ti.com> CC: Ben Warren <biggerbadderben@gmail.com> CC: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
2010-10-17da850evm: add mtdpart and ubi commands with NAND supportBen Gardiner
This patch enables also the mtdpart, ubi and ubifs commands when NAND support is enabled. Signed-off-by: Ben Gardiner<bengardiner@nanometrics.ca> To: Sudhakar Rajashekhara <sudhakar.raj@ti.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
2010-10-17da850evm: setup NAND support under CONFIG_USE_NANDBen Gardiner
The current da850evm config is missing the pieces for NAND support that can be found in Sandeep's u-boot-davinci tree [1]. This patch adds NAND support in the spirit of the support in the u-boot-davinci tree where NAND support for the da850evm can be enabled by putting a single '#define CONFIG_USE_NAND' at the top of the include/configs/da850evm.h file. [1] http://arago-project.org/git/people/?p=sandeep/u-boot-davinci.git;a=tree Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
2010-10-17da850evm: setup the NAND flash timingsBen Gardiner
The default NAND flash timings are very conservative. This patch assigns the timings reccomended in the recent linux kernel patch [1] from Sekhar Nori. The speedup, as reported in that patch, is 5.3x for reads. [1] http://www.spinics.net/lists/arm-kernel/msg100278.html Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca> CC: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
2010-10-17da850evm : enable NAND even when not in NAND boot modeBen Gardiner
There is currently no NAND pinmux enabled by the da850evm board setup code. This is fine when booting from NAND since the early boot code (UBL) will setup the pinmux; however, when the boot mode is any other setting NAND is unusable when enabled in the config. This patch adds a pinmux list for NAND and enables it when NAND is enabled in the config. Tested by booting from SPI on the da850evm and verifying NAND was usable. Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca> CC: Nick Thompson <nick.thompson@ge.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
2010-10-17davinci_nand, trivial : use symbolic ECC start commandBen Gardiner
The ECC calculations were started by writing 1 << 13 to the nand FCR register; that value is also defined as DAVINCI_NANDFCR_4BIT_CALC_START in emif_defs.h. This patch substitutes the macro DAVINCI_NANDFCR_4BIT_CALC_START for the magic number '1 << 13'. Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
2010-10-17OMAP3: Add support for the OMAP3 IGEP module.Enric Balletbo i Serra
The IGEP module is a low-power, high performance production-ready system-on-module (SOM) based on TI's OMAP3 family.The IGEP module solution based upon TI OMAP3 provides a low-power/low-cost platform for a variety of consumer/industrial/medical devices. Signed-off-by: Enric Balletbo i Serra <eballetbo@gmail.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
2010-10-17OMAP3: Add support for the IGEP v2 board.Enric Balletbo i Serra
The IGEP v2 board is a low-cost, fan-less and industrial temperature range single board computer that unleashes laptop-like performance and expandability without the bulk, expense, or noise of typical desktop machines. Its architecture shares much in common with other OMAP3 boards. Signed-off-by: Enric Balletbo i Serra <eballetbo@gmail.com> Acked-by: Steve Sakoman <steve.sakoman@linaro.org> Tested-by: Steve Sakoman <steve.sakoman@linaro.org> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
2010-10-17OMAP3: SDRC: Introduce Numonyx DDR typeEnric Balletbo i Serra
Introduce Numonyx DDR timings and provide CONFIG_OMAP3_NUMONYX_DDR config options to allow for platform files to setup their timings. Signed-off-by: Enric Balletbo i Serra <eballetbo@gmail.com> Acked-by: Steve Sakoman <steve.sakoman@linaro.org> Tested-by: Steve Sakoman <steve.sakoman@linaro.org> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
2010-10-17ARMV7: OMAP4: Implement relocation for Panda and OMAP4430SDPSteve Sakoman
This patch fixes the build breakage introduced by the recent relocation changes for ARMV7 Signed-off-by: Steve Sakoman <steve@sakoman.com>
2010-10-17ARMV7: OMAP3: Fix bug in get_sdr_cs_offset()Steve Sakoman
This patch fixes a typo in the routine to calculate the cs offset based upon the contents of the SDRC cs_cfg register. This function mistakenly shifts the CS1STARTLOW field 17 bits right instead of 17 bits left. This hasn't been an issue to date because all OMAP3 boards currently are configured to have zeros in this field. Reported-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Steve Sakoman <steve.sakoman@linaro.org>
2010-10-17ARMV7: OMAP3: Enable cache support on OveroSteve Sakoman
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2010-10-17ARMV7: OMAP3: Implement relocation for OveroSteve Sakoman
This patch fixes the build breakage introduced by the recent relocation changes for ARMV7 Signed-off-by: Steve Sakoman <steve@sakoman.com>
2010-10-17ARMV7: OMAP4: Enable saveenv to eMMC for SDP4430Sukumar Ghorai
The SDP4430 does not have onboard NAND, it has eMMC on the second MMC slot. This patch adds support for saving the u-boot environment to eMMC. Signed-off-by: Aneesh V <aneesh@ti.com> Signed-off-by: Sukumar Ghorai <s-ghorai@ti.com> Tested-by: Steve Sakoman <steve@sakoman.com>
2010-10-17ARMV7: OMAP4: Use generic mmc driver on OveroSteve Sakoman
This patch switches from the legacy mmc driver to the new generic mmc driver Signed-off-by: Steve Sakoman <steve@sakoman.com>
2010-10-17ARMV7: OMAP4: Use generic mmc driver on BeagleSteve Sakoman
This patch switches from the legacy mmc driver to the new generic mmc driver Signed-off-by: Steve Sakoman <steve@sakoman.com>
2010-10-17ARMV7: OMAP4: Use generic mmc driver on SDP4430Sukumar Ghorai
This patch switches from the legacy mmc driver to the new generic mmc driver Signed-off-by: Sukumar Ghorai <s-ghorai@ti.com> Tested-by: Steve Sakoman <steve@sakoman.com>
2010-10-17ARMV7: OMAP4: Use generic mmc driver on PandaSukumar Ghorai
This patch switches from the legacy mmc driver to the new generic mmc driver Signed-off-by: Sukumar Ghorai <s-ghorai@ti.com> Tested-by: Steve Sakoman <steve@sakoman.com>
2010-10-17ARMV7: OMAP: Add new mmc driver compatible with CONFIG_GENERIC_MMCSukumar Ghorai
OMAP boards currently use a legacy mmc driver. This patch adds a new mmc driver which will work with the generic mmc driver in u-boot. This new driver will work with both OMAP3 and OMAP4 boards. This patch does not remove the old driver. It should remain in the tree until all boards that use it switch to the new driver. Signed-off-by: Sukumar Ghorai <s-ghorai@ti.com> Tested-by: Steve Sakoman <steve@sakoman.com>
2010-10-17MMC: Fix for capacity calculation on eMMCSukumar Ghorai
The current mmc driver returns erroneous capacity information for eMMC. The capacity of eMMC devices is available only in the ext-CSD register. This patch add code to read the ext-CDSD register and correctly calculate eMMC capacity. Signed-off-by: Sukumar Ghorai <s-ghorai@ti.com> Acked-by: Steve Sakoman <steve@sakoman.com>