summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeLines
* Introduce generic pre-relocation board_f.cSimon Glass2013-03-15-6/+591
| | | | | | | | | | | | This file handles common pre-relocation init for boards which use the generic framework. It starts up the console, DRAM, performs relocation and then jumps to post-relocation init. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Wolfgang Denk <wd@denx.de> Acked-by: Wolfgang Denk <wd@denx.de>
* Declare watchdog functions in watchdog.hSimon Glass2013-03-15-9/+22
| | | | | | | | These functions are only available for powerpc and are not declared in a header file. We want to use the rest function in two places (board_f and board_r), so declare the functions in watchdog.h. Signed-off-by: Simon Glass <sjg@chromium.org>
* __HAVE_ARCH_GENERIC_BOARD controls availabilty of generic boardSimon Glass2013-03-15-0/+18
| | | | | | | | | | | We are introducing a new unified board setup. Add a check to make sure that board config files do not define CONFIG_SYS_GENERIC_BOARD unless their architecture defines __HAVE_ARCH_GENERIC_BOARD __HAVE_ARCH_GENERIC_BOARD will currently not be the default setting, but we can switch this later when most architecture support generic board. Signed-off-by: Simon Glass <sjg@chromium.org>
* Introduce a basic initcall implementationSimon Glass2013-03-15-0/+65
| | | | | | | | | | | This library supports calling a list of functions one after the other. It is intended that we move to a more powerful initcall implementation as proposed by Graeme Russ <graeme.russ@gmail.com>. For now, this allows us to do the basics. Signed-off-by: Simon Glass <sjg@chromium.org>
* Change stub example to use asm-generic/sections.hSimon Glass2013-03-15-13/+12
| | | | | | | We can use the declarations of __bss_start and _end from this header instead of declaring them locally. Signed-off-by: Simon Glass <sjg@chromium.org>
* arm: Use sections header to obtain link symbolsSimon Glass2013-03-15-4/+3
| | | | | | | Include this header to get access to link symbols, which are otherwise removed. Signed-off-by: Simon Glass <sjg@chromium.org>
* Introduce generic link section.h symbol filesSimon Glass2013-03-15-4/+447
| | | | | | | | | | | | | | | | | | We create a separate header file for link symbols defined by the link scripts. It is helpful to have these all in one place and try to make them common across architectures. Since Linux already has a similar file, we bring this in even though many of the symbols there are not relevant to us. Each architecture has its own asm/sections.h where symbols specifc to that architecture can be added. For now everything except AVR32 just includes the generic header. One change is needed in arch/avr32/lib/board.c to make this conversion work. Reviewed-by: Tom Rini <trini@ti.com> (version 5) Signed-off-by: Simon Glass <sjg@chromium.org>
* Replace __bss_end__ with __bss_endSimon Glass2013-03-15-207/+207
| | | | | | | | | | | | | Note this is a tree-wide change affecting multiple architectures. At present we use __bss_start, but mostly __bss_end__. This seems inconsistent and in a number of places __bss_end is used instead. Change to use __bss_end for the BSS end symbol throughout U-Boot. This makes it possible to use the asm-generic/sections.h file on all archs. Signed-off-by: Simon Glass <sjg@chromium.org>
* Introduce generic u-boot.h fileSimon Glass2013-03-15-0/+162
| | | | | | | | This file holds the board info structure. We need this to be generic for the unified board series, so create a structure which contains the basic fields required by the main architectures. Signed-off-by: Simon Glass <sjg@chromium.org>
* I2C: S3C24X0: Bug fixes in i2c_transferRajeshwari Shinde2013-03-12-8/+6
| | | | | | | | | | | | | | | | | | This patch corrects the following issues 1) Write the correct M/T Stop value to I2CSTAT after i2c write. According to the spec, after finish the data transmission, we should write a M/T Stop (I2C_MODE_MT | I2C_TXRX_ENA) to I2CSTAT instead of a M/R Stop (I2C_MODE_MR | I2C_TXRX_ENA). 2) Not split the write to I2CSTAT into 2 steps in i2c read. According to the spec, we should write the combined M/R Start value to I2CSTAT after setting the slave address to I2CDS 3) Fix the mistake of making an equality check to an assignment. In the case of I2C write with the zero-length address, while tranfering the data, it should be an equality check (==) instead of an assignment (=). Signed-off-by: Tom Wai-Hong Tam <waihong@chromium.org> Signed-off-by: Rajeshwari Shinde <rajeshwari.s@samsung.com>
* I2C: S3C24X0: Remove the dead codeRajeshwari Shinde2013-03-12-7/+0
| | | | | | | | This revomes the code under #if 0 in the s3c24x0_i2c driver. Signed-off-by: Alim Akhtar <alim.akhtar@samsung.com> Signed-off-by: Rajeshwari Shinde <rajeshwari.s@samsung.com> Acked-by: Simon Glass <sjg@chromium.org>
* cmd_mem.c: Fix warning when CONFIG_CMD_MEMTEST is not setTom Rini2013-03-12-1/+1
| | | | | | | mem_test_quick and mem_test_alt functions are only called by do_mem_mtest, so move them under the #ifdef Signed-off-by: Tom Rini <trini@ti.com>
* CONFIG_BOOTDELAY default should not affect runtimeJoe Hershberger2013-03-12-8/+6
| | | | | | | | | | | Because the code that handles bootdelay is compiled in conditionally based on the default value, you are restricted in the default, regardless of what you want the runtime options to be. Change the source to always check if any default is given so that other values can be selected and used at runtime. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
* common/main: move set_working_fdt_addr to enable usage of $fdtaddrBarak Wasserstrom2013-03-12-4/+4
| | | | | | | When using $fdtaddr in $bootcmd and $bootcmd is automatically called, $fdtaddr is yet not defined. Signed-off-by: Barak Wasserstrom <wbarak@gmail.com>
* env: fix "env ask" commandWolfgang Denk2013-03-12-26/+28
| | | | | | | | | | | | | | | | | | | | The "env ask" traditionally uses a somewhat awkward syntax: env ask name [message ...] [size] So far, when a mesage was given, you always also had to enter a size. If you forgot to do that, the command would terminate without any indication of the problem. To avoid incompatible changes of the interface, we now check the last argument if it can be converted into a decimal number. If this is the case, we assume it is a size; otherwise we treat it as part of the message. Also, add a space after the message fore easier reading, and clean up help mesage. Signed-off-by: Wolfgang Denk <wd@denx.de>
* cmd_fat.c: Note in fatread help about alignment requirementsTom Rini2013-03-12-0/+3
| | | | | | | | When using the partial read feature of fatwrite the buffer we read into can become unaligned not just due to initial location but the size of our partial reads as well. Make this clear in the help text. Signed-off-by: Tom Rini <trini@ti.com>
* env: Allow accessing non-mtd devicesLubomir Rintel2013-03-11-10/+27
| | | | | | | In certain cases, memory device is present as flat file or block device (via mmc or mtdblock layer). Do not attempt MTD operations against it. Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
* cmd_df.c: Delete this clearly unused source file.Robert P. J. Day2013-03-11-36/+0
| | | | | | Nothing appears to use or compile cmd_df.c anymore. Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
* cmd_mtdparts.c: Correct "reseting" to "resetting" in error msgsRobert P. J. Day2013-03-11-3/+3
| | | | Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
* Allow u-boot to be silent without forcing Linux to beJoe Hershberger2013-03-11-5/+7
| | | | | | That's a bit presumptuous of you, u-boot! Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
* Fix a couple typoes in tools/env/READMERobert P. J. Day2013-03-11-2/+2
| | | | Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
* tools: update checkpatch to latest upstream versionKim Phillips2013-03-11-192/+556
| | | | | | | i.e., from the linux kernel's commit be987d9f80354e2e919926349282facd74992f90 Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
* tools: enable more checkpatch tests by defaultKim Phillips2013-03-11-0/+3
| | | | | | | without this, patches don't get checked for proper alignment, and e.g., for spaces after a cast and/or before a semicolon. Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
* cmd_part: don't print cmd name twice in helpStephen Warren2013-03-11-1/+1
| | | | | | | | | | | | | | | | The core implementation of "help" already prints the command name before the help text of a specific command. Remove it from part's own help text to avoid it being printed twice: Tegra114 (Dalmore) # help part part - disk partition related commands Usage: part part uuid <interface> <dev>:<part> - print partition UUID ... Signed-off-by: Stephen Warren <swarren@nvidia.com>
* MAKEALL: fix kill_children for BSD hostsAndreas Bießmann2013-03-11-2/+14
| | | | | | | | | | | | | | | | | ps on BSD hosts (like OS X) do not provide the --no-headers switch nor understand the AIX format descriptions. Unfortunately there seems no solution to get the PIDs of children in a platfrom independent manner. Therefore detect the OS and decide upon that which way to go. This patch makes the MAKEALL script cleanly stoppable on bare OS X when using the parallel builds of targets. Additionally this patch removes double call to grep by a single call to sed for GNU style child PID detection. Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> Cc: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
* mvsata_ide.c: Correction of typo in commentsGray Remlin2013-03-11-2/+2
| | | | Signed-off-by: Gray Remlin <gryrmln@gmail.com>
* ppc: Remove PCIPPC2 and PCIPPC6 boardsStefan Roese2013-03-11-3046/+5
| | | | | | | | | | These boards seem to be unmaintained for quite some time. So lets remove support for them completely. This also cleans up some common drivers/files. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Guillaume Alexandre <guillaume.alexandre@gespac.ch> Acked-by: Wolfgang Denk <wd@denx.de>
* display_options:print_buffer: align ASCII printAndreas Bießmann2013-03-11-6/+14
| | | | | | | | | | | | | | | | | | | | | | | | | This patch adds whitespace to the printed hex numbers to have an aligned ASCII printout at the end of the line. This changes for example the md output from: ---8<--- OMAP3 Tricorder # md.l $loadaddr 5 82000000: 30200109 20a4028c 90010000 08a00000 .. 0... ........ 82000010: 01010000 .... --->8--- to ---8<--- OMAP3 Tricorder # md.l $loadaddr 5 82000000: 30200109 20a4028c 90010000 08a00000 .. 0... ........ 82000010: 01010000 .... --->8--- The cost of this is about 72 byte .text increase (tested with at91 build). Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
* Feature Removal: disable "mtest" command by defaultWolfgang Denk2013-03-11-4/+125
| | | | | | | | | | | | | | | | | | | | | The "mtest" command is of little practical use (if any), and experience has shown that a large number of board configurations define useless or even dangerous start and end addresses. If not even the board maintainers are able to figure out which memory range can be reliably tested, how can we expect such from the end users? As this problem comes up repeatedly, we rather do not enable this command by default, so only people who know what they are doing will be confronted with it. As this changes the user interface, we allow for a grace period before this change takes effect. For now, we make "mtest" configurable through the CONFIG_CMD_MEMTEST variable, which is defined in include/config_cmd_default.h; we also add an entry to doc/feature-removal-schedule.txt which announces the removal of this default setting in two releases from now, i. e. with v2013.07. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Tom Rini <trini@ti.com>
* Merge branch 'master' of git://git.denx.de/u-boot-mpc82xxTom Rini2013-03-10-4/+1
|\
| * powerpc/82xx/km: removed unneeded ifdefHolger Brunck2013-03-09-3/+0
| | | | | | | | | | | | | | All boards from this serie uses i2c. So we can drop these unneeded defines. Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
| * powerpc/82xx/km: make handle_mgcoge3un_reset staticHolger Brunck2013-03-09-1/+1
| | | | | | | | Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
* | mpc512x: pdm360ng: drop not needed memory node fixupAnatolij Gustschin2013-03-09-1/+0
| | | | | | | | | | | | | | ft_cpu_setup() already does memory node fixup, no need to do it again. Signed-off-by: Anatolij Gustschin <agust@denx.de>
* | mpc512x: Adjust the DRAM init sequence to the datasheet specAnatolij Gustschin2013-03-09-1/+17
| | | | | | | | | | | | | | | | Do maintain a 200 usecs period of stable power and clock before asserting the CKE signal and sending commands, have at least 200 DRAM clock cycles pass after initialization before data access. Signed-off-by: Anatolij Gustschin <agust@denx.de>
* | mpc512x: add ifm ac14xx boardAnatolij Gustschin2013-03-09-0/+1311
| | | | | | | | | | | | | | | | Add new mpc5121e based ac14xx board and a new pinmux config function for setting individual pinmux bit groups. This function is used in ac14xx board code. Signed-off-by: Anatolij Gustschin <agust@denx.de>
* | mpc512x: allow configuring board specific IPS dividerAnatolij Gustschin2013-03-09-0/+2
| | | | | | | | | | | | | | Boards may define own IPS divider in the config file if the default IPS divider doesn't fit their needs. Signed-off-by: Anatolij Gustschin <agust@denx.de>
* | mpc512x: optionally configure DIU, LPC and NFC devidersAnatolij Gustschin2013-03-09-0/+21
| | | | | | | | | | | | | | If a board config file defines DIU, LPC and NFC deviders, configure them in the SCFR1 register. Signed-off-by: Anatolij Gustschin <agust@denx.de>
* | mpc512x: use common code for clock setting for all mpc512x boardsAnatolij Gustschin2013-03-09-120/+81
| | | | | | | | | | | | | | | | | | Only define enabled clocks in the config file and enable the clocks in common code. Signed-off-by: Anatolij Gustschin <agust@denx.de> Cc: Reinhard Arlt <reinhard.arlt@esd-electronics.com> Cc: Wolfgang Denk <wd@denx.de>
* | mpc512x: use common code for CSx configurationAnatolij Gustschin2013-03-09-109/+20
| | | | | | | | | | | | | | | | | | | | Remove CSx configurations from board code and only define required CSx macros in the board config file to configure chip select windows and parameters. Signed-off-by: Anatolij Gustschin <agust@denx.de> Cc: Reinhard Arlt <reinhard.arlt@esd-electronics.com> Cc: Wolfgang Denk <wd@denx.de>
* | mpc512x: add common LAW and Chip Select configurationAnatolij Gustschin2013-03-09-0/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | Currently each mpc512x board has its own LAW and CS config code, we should avoid this code duplication. Allow all boards to use common code by only defining LAW and CS config macros like CONFIG_SYS_CSx_START, CONFIG_SYS_CSx_SIZE and CONFIG_SYS_CSx_CFG. Also allow common configuration of additional CS parameters by CONFIG_SYS_CS_ALETIMING, CONFIG_SYS_CS_BURST, CONFIG_SYS_CS_DEADCYCLE and CONFIG_SYS_CS_HOLDCYCLE options. Signed-off-by: Anatolij Gustschin <agust@denx.de>
* | mpc5200: a4m2k: Implement custom "dynamic" watchdog supportStefan Roese2013-03-09-1/+60
| | | | | | | | | | | | | | | | | | | | This patch adds a custom U-Boot command "wdogtoggle" which enables the external hardware watchdog toggling via an GPIO pin on the a4m2k board. After issuing this commands, the watchdog will be serviced by U-Boot so that the user can use all U-Boot commands from the prompt. Signed-off-by: Stefan Roese <sr@denx.de>
* | mpc5200: Add a4m2k board portStefan Roese2013-03-09-55/+188
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds the a4m2k MPC5200B board port. Its a derivate of the a3m071 board with only minor changes. Additionally this patch includes some clean-up changes: - Remove I2C support from a3m071 as its unused - Fix/enhance default env variables - Fix some comments - Add newly introduced CONFIG_SPL_TARGET to automatically build "u-boot-img.bin" - Fix dtb patching in READ desciption for SPL Linux booting: "fdt chosen" needs to get called to patch/create the chosen node. - Add missing call to spl_board_init(): Define CONFIG_SPL_BOARD_INIT so that spl_board_init() will get called in the SPL version. Signed-off-by: Stefan Roese <sr@denx.de>
* | mpc5200: spl_boot.c: Change init oder to first enable printfStefan Roese2013-03-09-6/+14
|/ | | | | | | | | | On MPC5200, the initial RAM (and gd) is located in the internal SRAM. So we can actually call the preloader console init code before calling initdram(). This makes serial output (printf) available very early, even before SDRAM init, which has been an U-Boot priciple from day 1. Signed-off-by: Stefan Roese <sr@denx.de>
* x86: Enable CONFIG_OF_CONTROL on corebootSimon Glass2013-03-04-0/+6
| | | | | | | Make use of a device tree on coreboot boards, and set the default to link. Signed-off-by: Simon Glass <sjg@chromium.org>
* x86: Adjust link device tree include fileSimon Glass2013-03-04-1/+1
| | | | | | | | This is currently set to coreboot.dtsi, but we cannot support this on old device tree compilers (dtc <= 1.3), so adjust to use ARCH_CPU_DTS to let the Makefile preprocessor sort this out. Signed-off-by: Simon Glass <sjg@chromium.org>
* x86: Add error checking to x86 relocation codeSimon Glass2013-03-04-2/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This does not actually change normal behaviour, but adds a check that should detect corruption of relocation data (e.g. by using BSS data prior to relocation). Also add additional debugging output when enabled. During this investigation, two situations have been seen: 1. calculate_relocation_address(): uintptr_t size = (uintptr_t)&__bss_end - (uintptr_t)&__text_start; turns into 111166f: b8 83 c4 17 01 mov $0x117c483,%eax whih is beyond the end of bss: 0117b484 g .bss 00000000 __bss_end Somehow the __bss_end here is 255 bytes ahead. 2. do_elf_reloc_fixups(): uintptr_t size = (uintptr_t)&__bss_end - (uintptr_t)&__text_start; Here the __text_start is 0 in the file: 1111d9f: bb a0 e0 13 01 mov $0x113e0a0,%ebx 1111da4: 81 ef 00 00 00 00 sub $0x0,%edi As it happens, both of these are in pre-relocation code. For these reasons we silent check and ignore bad relocations. Signed-off-by: Simon Glass <sjg@chromium.org>
* x86: Support relocation of FDT on start-upSimon Glass2013-03-04-2/+46
| | | | | | | With CONFIG_OF_CONTROL we may have an FDT in the BSS region. Relocate it up with the rest of U-Boot to keep the rest of memory free. Signed-off-by: Simon Glass <sjg@chromium.org>
* x86: Rearrange the output input to remove BSSSimon Glass2013-03-04-7/+12
| | | | | | | At present BSS data is including in the image, which wastes binary space. Remove it by rearranging the sections so that BSS is last. Signed-off-by: Simon Glass <sjg@chromium.org>
* x86: Add an __end symbol to signal the end of the U-Boot binarySimon Glass2013-03-04-1/+4
| | | | | | | With this symbol we can easy append something (e.g. an FDT) to the U-Boot binary and access it from within U-Boot. Signed-off-by: Simon Glass <sjg@chromium.org>
* x86: Permit bootstage and timer data to be used prior to relocationSimon Glass2013-03-04-18/+16
| | | | | | | | | It is useful to be able to access the timer before U-Boot has relocated so that we can fully support bootstage. Add new global_data members to support this. Signed-off-by: Simon Glass <sjg@chromium.org>