summaryrefslogtreecommitdiff
path: root/include
Commit message (Collapse)AuthorAgeLines
* Introduce generic pre-relocation board_f.cSimon Glass2013-03-15-0/+3
| | | | | | | | | | | | 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-0/+18
| | | | | | | | 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>
* Introduce a basic initcall implementationSimon Glass2013-03-15-0/+25
| | | | | | | | | | | 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>
* Introduce generic link section.h symbol filesSimon Glass2013-03-15-0/+117
| | | | | | | | | | | | | | | | | | 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>
* 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>
* ppc: Remove PCIPPC2 and PCIPPC6 boardsStefan Roese2013-03-11-516/+0
| | | | | | | | | | 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>
* Feature Removal: disable "mtest" command by defaultWolfgang Denk2013-03-11-2/+4
| | | | | | | | | | | | | | | | | | | | | 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>
* mpc512x: add ifm ac14xx boardAnatolij Gustschin2013-03-09-0/+591
| | | | | | | | 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: use common code for clock setting for all mpc512x boardsAnatolij Gustschin2013-03-09-2/+72
| | | | | | | | | 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-0/+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>
* mpc5200: a4m2k: Implement custom "dynamic" watchdog supportStefan Roese2013-03-09-0/+5
| | | | | | | | | | 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-47/+66
| | | | | | | | | | | | | | | | | | | 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>
* 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>
* ubifs: Allow ubifsmount volume reference by numberJoe Hershberger2013-03-04-11/+12
| | | | | | | | | | | | | | | | | | UBI can mount volumes by name or number The current code forces you to name the volume by prepending every name with "ubi:". >From fs/ubifs/super.c * There are several ways to specify UBI volumes when mounting UBIFS: * o ubiX_Y - UBI device number X, volume Y; * o ubiY - UBI device number 0, volume Y; * o ubiX:NAME - mount UBI device X, volume with name NAME; * o ubi:NAME - mount UBI device 0, volume with name NAME. Now any name passed in any of the above forms are allowed. Also update the configs that referenced ubifsmount. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
* sandbox: config: Enable sandbox commandSimon Glass2013-03-04-0/+2
| | | | | | | | The 'sb' command allows loading files from the host, and listing directories. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@ti.com>
* sandbox: Enable ext4 and fat filesystemsSimon Glass2013-03-04-0/+7
| | | | | | | These are useful for build-testing code, at least. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@ti.com>
* sandbox: Add 'sb' command to access filesystem featuresSimon Glass2013-03-04-0/+1
| | | | | | | | | The new 'sb' command is intended to deal with sandbox-specific features that have no parallel in other archs. This commit adds two sub-commands to list a directory and read a file from the host filesystem. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@ti.com>
* sandbox: Add host filesystemSimon Glass2013-03-04-0/+31
| | | | | | | This allows reading of files from the host filesystem in sandbox. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@ti.com>
* sandbox: Add a way of obtaining directory listingsSimon Glass2013-03-04-0/+48
| | | | | | | | This implementation uses opendir()/readdir() to access the directory information and then puts it in a linked list for the caller's use. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@ti.com>
* fs: Move ls and read methods into ext4, fatSimon Glass2013-03-04-0/+5
| | | | | | | | | It doesn't make a lot of sense to have these methods in fs.c. They are filesystem-specific, not generic code. Add each to the relevant filesystem and remove the associated #ifdefs in fs.c. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@ti.com>
* Merge branch 'mem' of git://git.denx.de/u-boot-x86Tom Rini2013-03-04-8/+64
|\
| * hash: Use lower case for hash algorithm namesSimon Glass2013-02-28-1/+1
| | | | | | | | | | | | | | | | | | | | Rather than use strcasecmp() in the hash algorithm search, require the caller to do this first. Most of U-Boot can use lower case anyway, and the hash command can convert to lower case before calling hash_command(). This saves needing strcasecmp() for boards that use hashing but not the hash command. Signed-off-by: Simon Glass <sjg@chromium.org>
| * sandbox: config: Enable hash functions and mtestSimon Glass2013-02-28-2/+7
| | | | | | | | | | | | | | | | Enable the hash command and sha1/256 hashing for sandbox. Also use a better address for memory testing (since the existing one is set up for linux host memory space). Signed-off-by: Simon Glass <sjg@chromium.org>
| * Roll crc32 into hash infrastructureSimon Glass2013-02-28-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add the CRC32 algorithm to the list of available hashes, and make the crc32 command use hash_command(). Add a new crc32_wd_buf() to make this possible, which puts its result in a buffer rather than returning it as a 32-bit value. Note: For some boards the hash command is not enabled, neither are sha1, sha256 or the verify option. In this case the full hash implementation adds about 500 bytes of overhead. So as a special case, we use #ifdef to select very simple bahaviour in that case. The justification for this is that it is currently a very common case (virtually all boards enable crc32 but only some enable more advanced features). Signed-off-by: Simon Glass <sjg@chromium.org>
| * hash: Add a flag to support saving hashes in the environmentSimon Glass2013-02-28-2/+7
| | | | | | | | | | | | | | | | | | Some hashing commands permit saving the hash in an environment variable, and verifying a hash from there. But the crc32 command does not support this. In order to permit crc32 to use the generic hashing infrastructure, add a flag to select which behaviour to use. Signed-off-by: Simon Glass <sjg@chromium.org>
| * Update set_working_fdt_addr() to use setenv_addr()Simon Glass2013-02-28-1/+13
| | | | | | | | | | | | | | We might as well use this common function instead of repeating the same code. Signed-off-by: Simon Glass <sjg@chromium.org>
| * sandbox: Add un/map_sysmen() to deal with sandbox's ram_bufSimon Glass2013-02-28-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sandbox doesn't actually provide U-Boot access to the machine's physical memory. Instead it provides a RAM buffer of configurable size, and all memory accesses are within that buffer. Sandbox memory starts at 0 and is CONFIG_DRAM_SIZE bytes in size. Allowing access outside this buffer might produce unpredictable results in the event of an error, and would expose the host machine's memory architecture to the sandbox U-Boot. Most U-Boot functions assume that they can just access memory at given address. For sandbox this is not true. Add a map_sysmem() call which converts a U-Boot address to a system address. In most cases this is a NOP, but for sandbox it returns a pointer to that memory inside the RAM buffer. To get a U-Boot feature to work correctly within sandbox, you should call map_sysmem() to get a pointer to the address, and then use that address for any U-Boot memory accesses. Signed-off-by: Simon Glass <sjg@chromium.org>
| * sandbox: Improve sandbox serial port keyboard interfaceTaylor Hutt2013-02-28-0/+10
| | | | | | | | | | | | | | | | | | | | | | Implements the tstc() interface for the serial driver. Multiplexing the console between the serial port and a keyboard uses a polling method of checking if characters are available; this means that the serial console must be non-blocking when attempting to read characters. Signed-off-by: Taylor Hutt <thutt@chromium.org> Signed-off-by: Simon Glass <sjg@chromium.org>
| * Update print_buffer() to use constSimon Glass2013-02-28-1/+2
| | | | | | | | | | | | | | | | The buffer cannot be changed by this function, so change the buffer pointer to a const. This allows callers with const pointer to use the function without a cast. Signed-off-by: Simon Glass <sjg@chromium.org>
* | Merge branch 'master' of git://git.denx.de/u-boot-blackfinTom Rini2013-03-04-3/+167
|\ \
| * | blackfin: bf60x: add hw watchdog supportBob Liu2013-03-04-0/+1
| | | | | | | | | | | | | | | | | | Signed-off-by: Bob Liu <lliubbo@gmail.com> Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Sonic Zhang <sonic.adi@gmail.com>
| * | blackfin: bf60x: add board and headers files to support bf609Sonic Zhang2013-03-04-3/+166
| |/ | | | | | | | | | | | | | | Board and config header files for bf609-ezkit support. Signed-off-by: Bob Liu <lliubbo@gmail.com> Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Sonic Zhang <sonic.adi@gmail.com>
* | OMAP3: drop CONFIG_SPL_OS_BOOT_KEY and use local defineStefano Babic2013-03-01-2/+0
|/ | | | | | | | | CONFIG_SPL_OS_BOOT_KEY is used only in board files. It is not required to have a general CONFIG_ option. Rename it and define it in board directory. Signed-off-by: Stefano Babic <sbabic@denx.de> Reviewed-by: Tom Rini <trini@ti.com>
* vsprintf: add ustrtoll functionPiotr Wilczek2013-02-19-0/+1
| | | | | | | | Add 'ustrtoull' function to convert size from string (ex: 1GiB) to unsigned long long type Signed-off-by: Piotr Wilczek <p.wilczek@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
* malloc: make malloc_bin_reloc staticGabor Juhos2013-02-19-1/+0
| | | | | | | | | | | | | | | | | | | On architectures where manual relocation is needed, the 'malloc_bin_reloc' function must be called after 'mem_malloc_init'. Make the 'malloc_bin_reloc' function static and call it directly from 'mem_malloc_init' instead of calling that from board_init_{r,f} functions of the affected architectures. Signed-off-by: Gabor Juhos <juhosg@openwrt.org> Cc: Wolfgang Denk <wd@denx.de> Cc: Andreas Bießmann <andreas.devel@gmail.com> Cc: Jason Jin <Jason.jin@freescale.com> Cc: Macpaul Lin <macpaul@andestech.com> Cc: Daniel Hellstrom <daniel@gaisler.com> Cc: Daniel Schwierzeck <daniel.schwierzeck@googlemail.com>
* powerpc/83xx/km: drop uneeded dtt_bus environment varHolger Brunck2013-02-15-1/+0
| | | | | | There is no need for a environment variable to configure the dtt bus. Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
* powerpc/83xx/km: remove uneeded CONFIG_MISC_INIT_RHolger Brunck2013-02-15-4/+0
| | | | | | | Remove it from the processor specific headers. This is already defined in the common header km83xx.h. Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
* powerpc/83xx/km: add support for kmopti2 boardHolger Brunck2013-02-15-6/+25
| | | | | | | This board is similar to TUXX1 but it has a different sized second FPGA. Therefore the configuration for the third chipselect is different. Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
* powerpc/83xx/km: cleanup tuxx1 supportHolger Brunck2013-02-15-8/+9
| | | | | | | | | This is a preparation for the upcoming kmopti2 board. This board has also a second fpga on board which is different to the tuxx1 target. But we want to use the same header file. So remove the config option KM_DISABLE_APP2 and simply use the board names to distinguish the features. Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
* km/common: add eccmode to kernel commandlineHolger Brunck2013-02-15-0/+3
| | | | | | | If CONFIG_NAND_ECC_BCH is chosen from in the board configuration we add an ecc mode to the kernel commandline. Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
* powerpc/83xx: use NAND_ECC_BCH for kmcoge5neHolger Brunck2013-02-15-0/+2
| | | | | | Switch from 1-bit ecc to 4-bit ecc. Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
* km/common: introduce $uimage variableAndreas Huber2013-02-15-1/+8
| | | | | | | | Replace the hardcoded string with a variable. If CONFIG_NAND_ECC_BCH is set we use a specific name for the uImage (ecc_bch_uImage). Signed-off-by: Andreas Huber <andreas.huber@keymile.com> Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
* powerpc/83xx: use ppc_6xx as arch variable for kmvect1Holger Brunck2013-02-15-1/+1
| | | | | | | On this board we are using hard floating point, so select the correct toolchain. Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
* powerpc/83xx/km: add MV88E6122 switch support for kmvect1Karlheinz Jerg2013-02-15-6/+39
| | | | | | | | | | | | | | | kmvect1 has a UEC2 connection to the piggy board and a UEC0 connection to the switch MV88E6122. This switch has a connection to a frontport ethernet interface. The ethernet port used for network booting is automatically selected by u-boot. If a Piggy is plugged, the Piggy port is selected (UEC2, eth1). If the Piggy isn't present, the Frontport is selected (UEC0, eth0). The switch reset is connected to a GPIO on the PRIO3 board FPGA (GPIO28) and released at startup. Signed-off-by: Karlheinz Jerg <karlheinz.jerg@keymile.com> Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
* x86: Rename CONFIG_NO_X86_RESET_VECTOR to CONFIG_X86_RESET_VECTORSimon Glass2013-02-14-1/+0
| | | | | | | Invert the polarity of this option to simplify the Makefile logic. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Gabe Black <gabeblack@chromium.org>
* x86: Remove eNET boardsSimon Glass2013-02-14-619/+0
| | | | | | | These are no longer used and should be removed. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Graeme Russ <graeme.russ@gmail.com>
* Merge branch 'master' of git://git.denx.de/u-boot-armTom Rini2013-02-12-185/+1292
|\
| * Tegra114: Add/enable Dalmore build (T114 reference board)Tom Warren2013-02-11-0/+129
| | | | | | | | | | | | | | This build is stripped down. It boots to the command prompt. GPIO is the only peripheral supported. Others TBD. Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra: cardhu: config: enable SPIAllen Martin2013-02-11-0/+11
| | | | | | | | | | | | | | | | Turn on SPI in cardhu config file Signed-off-by: Allen Martin <amartin@nvidia.com> Acked-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra: add SPI SLINK driverAllen Martin2013-02-11-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add driver for tegra SPI "SLINK" style driver. This controller is similar to the tegra20 SPI "SFLASH" controller. The difference is that the SLINK controller is a genernal purpose SPI controller and the SFLASH controller is special purpose and can only talk to FLASH devices. In addition there are potentially many instances of an SLINK controller on tegra and only a single instance of SFLASH. Tegra20 is currently ths only version of tegra that instantiates an SFLASH controller. This driver supports basic PIO mode of operation and is configurable (CONFIG_OF_CONTROL) to be driven off devicetree bindings. Up to 4 devices per controller may be attached, although typically only a single chip select line is exposed from tegra per controller so in reality this is usually limited to 1. To enable this driver, use CONFIG_TEGRA_SLINK Signed-off-by: Allen Martin <amartin@nvidia.com> Signed-off-by: Tom Warren <twarren@nvidia.com>