summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* keystone2: net: add keystone ethernet driverKaricheri, Muralidharan2014-04-175-0/+1057
| | | | | | | | | | | | Ethernet driver configures the CPSW, SGMI and Phy and uses the the Navigator APIs. The driver supports 4 Ethernet ports and can work with only one port at a time. Port configurations are defined in board.c. Signed-off-by: Vitaly Andrianov <vitalya@ti.com> Signed-off-by: Murali Karicheri <m-karicheri2@ti.com> Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
* keystone2: add keystone multicore navigator driverVitaly Andrianov2014-04-173-0/+570
| | | | | | | | | | | | | | | | | Multicore navigator consists of Network Coprocessor (NetCP) and Queue Manager sub system. More details on the hardware can be obtained from the following links:- Network Coprocessor: http://www.ti.com/lit/pdf/sprugz6 Multicore Navigator: http://www.ti.com/lit/pdf/sprugr9 Multicore navigator driver implements APIs to configure the Queue Manager and NetCP Pkt DMA. Signed-off-by: Vitaly Andrianov <vitalya@ti.com> Signed-off-by: Murali Karicheri <m-karicheri2@ti.com> Signed-off-by: WingMan Kwok <w-kwok2@ti.com> Acked-by: Tom Rini <trini@ti.com>
* k2hk-evm: add configuration for spi1 and spi2 supportKaricheri, Muralidharan2014-04-171-0/+9
| | | | | | | | currently only spi0 is enabled on k2hk evm. This configuration update is needed to enable spi1 and spi2. Signed-off-by: Murali Karicheri <m-karicheri2@ti.com> Acked-by: Tom Rini <trini@ti.com>
* spi: davinci: add support for multiple bus and chip selectKaricheri, Muralidharan2014-04-172-3/+79
| | | | | | | | | | | | Currently davinci spi driver supports only bus 0 cs 0. This patch allows driver to support bus 1 and bus 2 with configurable number of chip selects. Also defaults are selected in a way to avoid regression on other platforms that uses davinci spi driver and has only one spi bus. Signed-off-by: Rex Chang <rchang@ti.com> Signed-off-by: Murali Karicheri <m-karicheri2@ti.com> Reviewed-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
* k2hk: add support for k2hk SOC and EVMVitaly Andrianov2014-04-1728-0/+2778
| | | | | | | | | | | | | | k2hk EVM is based on Texas Instruments Keystone2 Hawking/Kepler SoC. Keystone2 SoC has ARM v7 Cortex-A15 MPCore processor. Please refer the ti/k2hk_evm/README for details on the board, build and other information. This patch add support for keystone architecture and k2hk evm. Signed-off-by: Vitaly Andrianov <vitalya@ti.com> Signed-off-by: Murali Karicheri <m-karicheri2@ti.com> Signed-off-by: WingMan Kwok <w-kwok2@ti.com> Signed-off-by: Sandeep Nair <sandeep_n@ti.com>
* i2c, davinci: convert driver to new mutlibus/mutliadapter frameworkVitaly Andrianov2014-04-1720-235/+306
| | | | | | | | | - add davinci driver to new multibus/multiadpater support - adapted all config files, which uses this driver Signed-off-by: Vitaly Andrianov <vitalya@ti.com> Signed-off-by: Murali Karicheri <m-karicheri2@ti.com> Acked-by: Heiko Schocher <hs@denx.de>
* i2c, davinci: move i2c_defs.h to the drivers/i2c directoryKaricheri, Muralidharan2014-04-173-68/+79
| | | | | | | | | | | | | This patch moves the davinci i2c_defs.h file to drivers.i2c directory. It will allow to reuse the davinci_i2c driver for TI Keystone2 SOCs. Not used "git mv" command to move the file because small part of it with definitions specific for Davinci SOCs has to remain in the arch/arm/include/asm/arch-davinci. Signed-off-by: Vitaly Andrianov <vitalya@ti.com> Signed-off-by: Murali Karicheri <m-karicheri2@ti.com> Acked-by: Tom Rini <trini@ti.com>
* NAND: DaVinci: allow forced disable of subpage writesKaricheri, Muralidharan2014-04-172-0/+8
| | | | | | | | | This patch introduces a configurable mechanism to disable subpage writes in the DaVinci NAND driver. Signed-off-by: Vitaly Andrianov <vitalya@ti.com> Signed-off-by: Murali Karicheri <m-karicheri2@ti.com> Acked-by: Tom Rini <trini@ti.com>
* arm: add support for arch timerVitaly Andrianov2014-04-172-0/+59
| | | | | | | | This patch add basic support for the architecture timer found on recent ARMv7 based SoCs. Signed-off-by: Vitaly Andrianov <vitalya@ti.com> Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
* tools: mkimage: add support for gpimage formatKaricheri, Muralidharan2014-04-1710-93/+220
| | | | | | | | | | | This patch add support for gpimage format as a preparatory patch for porting u-boot for keystone2 devices and is based on omapimage format. It re-uses gph header to store the size and loadaddr as done in omapimage.c Signed-off-by: Vitaly Andrianov <vitalya@ti.com> Signed-off-by: Murali Karicheri <m-karicheri2@ti.com> Acked-by: Tom Rini <trini@ti.com>
* fdt: call ft_board_setup_ex() at the end of image_setup_libfdt()Vitaly Andrianov2014-04-172-0/+12
| | | | | | | | | | The keystone2 SOC requires to fix all 32 bit aliased addresses to their 36 physical format. This has to happen after all fdt nodes are added or modified. Signed-off-by: Vitaly Andrianov <vitalya@ti.com> Signed-off-by: Murali Karicheri <m-karicheri2@ti.com> Acked-by: Tom Rini <trini@ti.com>
* TI:omap3: Convert omap3_beagle to ti_omap3_common.hTom Rini2014-04-174-170/+25
| | | | | | | Convert to using the common config files. This requires a little more flexibility in the common files than we had been using before. Signed-off-by: Tom Rini <trini@ti.com>
* TI:armv7: Switch to CONFIG_SYS_BOARD_GENERICTom Rini2014-04-171-0/+1
| | | | | | | Tested on AM335x GP EVM, AM335x EVM SK, Beaglebone White, Beaglebone Black, AM437xx GP EVM, OMAP5 uEVM, OMAP4 Pandaboard Signed-off-by: Tom Rini <trini@ti.com>
* dra7xx_evm: Add QSPI_4 support, qspiboot build targetTom Rini2014-04-174-1/+67
| | | | | | | | | | | | We previously only supported QSPI_1 (single) support. Add QSPI_4 (quad) read support as well. This means we can be given one of two boot device values, but don't care which it is, so perform a fixup on the QSPI_4 value. We add a qspiboot build target to better show how you would use QSPI as a boot device in deployment. When we boot from QSPI, we can check the environment for 'boot_os' to control Falcon Mode. Signed-off-by: Sourav Poddar <sourav.poddar@ti.com> Signed-off-by: Tom Rini <trini@ti.com>
* SPL:SPI: Add Falcon Mode supportTom Rini2014-04-171-6/+40
| | | | Signed-off-by: Tom Rini <trini@ti.com>
* am335x_evm: Drop SPI SPL support from the default buildTom Rini2014-04-171-9/+9
| | | | | | | | This is only useful with the _spiboot build target anyhow, so only include it then. Drop CONFIG_SPL_OS_BOOT support then as the flash is small and didn't include a spot for the device tree already. Signed-off-by: Tom Rini <trini@ti.com>
* spi: ti_qspi: Add delay for successful bulk erase.Poddar, Sourav2014-04-171-0/+3
| | | | | | | | Bulk erase is not happening properly on dra7 due to erase timing constraints, add a delay so that erase timing constraints are properly met. Signed-off-by: Sourav Poddar <sourav.poddar@ti.com> Tested-by: Yebio Mesfin <ymesfin@ti.com>
* TI:armv7: Change Falcon Mode DT load addressTom Rini2014-04-176-2/+11
| | | | | | | | In general, we want to load the DT at base+128MB, so that we ahve sufficient room for the kernel and a larger device tree. In the case of OMAP3, use 64MB instead as we have a number of boards with 128MB DDR. Signed-off-by: Tom Rini <trini@ti.com>
* TI:omap5: Move CONFIG_ENV_SIZE to board config filesTom Rini2014-04-173-2/+2
| | | | | | | The size of the environment depends on the backing store, move this to the board config files. Signed-off-by: Tom Rini <trini@ti.com>
* am43xx_evm: Update the ramdisk args, we pass things in just fine via DTTom Rini2014-04-171-1/+1
| | | | Signed-off-by: Tom Rini <trini@ti.com>
* am335x_evm: Update the ramdisk args, we pass things in just fine via DTTom Rini2014-04-171-1/+1
| | | | Signed-off-by: Tom Rini <trini@ti.com>
* TI: Add, use a DEFAULT_LINUX_BOOT_ENV environment stringTom Rini2014-04-175-16/+25
| | | | | | | | | | | | | To deal with a reoccurring problem properly we need to specify addresses for the Linux kernel, Flatted Device Tree and ramdisk that obey the constraints within the kernel's Documentation/arm/Booting file but also make sure that we relocate things within a valid address range. It is possible with these addresses to also set fdt_high and initrd_high to the value of 0xffffffff. We don't do this by default to allow for the most likely success of people using custom addresses however. Signed-off-by: Tom Rini <trini@ti.com>
* spl_mmc/CONFIG_SPL_OS_BOOT: Allow environment to determine what to bootTom Rini2014-04-172-0/+31
| | | | | | | | We add two new environment variables, falcon_args_file and falcon_image_file, which when set will override the compiled in default values for falcon mode. Signed-off-by: Tom Rini <trini@ti.com>
* a3m071: Make spl_start_uboot test like getenv_yesno doesTom Rini2014-04-171-1/+2
| | | | | | | | This change makes the behaviour slightly more rebust and will match other implementations which can use getenv_yesno directly. Acked-by: Stefan Roese <sr@denx.de> Signed-off-by: Tom Rini <trini@ti.com>
* README.falcon: Document environment variables for falcon modeTom Rini2014-04-171-0/+9
| | | | Signed-off-by: Tom Rini <trini@ti.com>
* README: Add CONFIG_SPL_OS_BOOT to READMETom Rini2014-04-171-0/+4
| | | | Signed-off-by: Tom Rini <trini@ti.com>
* am335x_evm: Make SPL_OS also check the boot_os variable for falcon modeTom Rini2014-04-171-1/+12
| | | | | | | | | We use the same variable as a3m071 in the environment to determine if we should boot into Linux or U-Boot. This is useful on boards like Beaglebone Black or AM335x GP EVM where we have persistent storage for the environment. Signed-off-by: Tom Rini <trini@ti.com>
* mtd: Build nand_util.o for CONFIG_ENV_IS_IN_NAND in SPLTom Rini2014-04-171-0/+3
| | | | | Acked-by: Scott Wood <scottwood@freescale.com> Signed-off-by: Tom Rini <trini@ti.com>
* mtd: Add a CONFIG_SPL_MTD_SUPPORT for a more full NAND subsystem in SPLTom Rini2014-04-174-27/+33
| | | | | | | | This mainly converts the am335x_spl_bch driver to the "normal" format which means a slight change to nand_info within the driver. Acked-by: Scott Wood <scottwood@freescale.com> Signed-off-by: Tom Rini <trini@ti.com>
* env_mmc.c: Remove NULL check on tmp_env1/2Tom Rini2014-04-171-6/+0
| | | | | | | With 452a272 we moved to allocating these variables on the stack. So they will never now be NULL so remove these checks. Signed-off-by: Tom Rini <trini@ti.com>
* env_mmc.c: Allow environment to be used within SPLTom Rini2014-04-171-8/+37
| | | | | | | | Inside of SPL we only concern ourself with one MMC device, so instead of being able to use CONFIG_SYS_MMC_ENV_DEV we need to use 0 in SPL. Switch the code to use a 'dev' variable to facilitate this. Signed-off-by: Tom Rini <trini@ti.com>
* fw_env.c: Switch get_config to use '%ms' in sscanfTom Rini2014-04-171-5/+8
| | | | | | | | | | We currently limit ourself to 16 characters for the device name to read the environment from. This is insufficient for /dev/mmcblk0boot1 to work for example. Switch to '%ms' which gives us a dynamically allocated buffer instead. We're short lived enough to not bother free()ing the buffer. Signed-off-by: Tom Rini <trini@ti.com>
* OMAP3: beagle-xm: generate fake USB ethernet MAC address from dieidNishanth Menon2014-04-172-0/+12
| | | | | | | | Similar to OMAP5uEVM, PandaBoard, BeagleBoard-XM has a USB based ethernet without MAC address embedded. So fake a MAC address following the similar strategy used on OMAP5 and PandaBoard family. Signed-off-by: Nishanth Menon <nm@ti.com>
* omap3/sys_info: provide interface to read die idNishanth Menon2014-04-172-5/+15
| | | | | | | introduce get_die_id() function which allows generation of information such as fake MAC address from the processor ID code. Signed-off-by: Nishanth Menon <nm@ti.com>
* OMAP: common: consolidate fake USB ethernet MAC address creationNishanth Menon2014-04-174-32/+37
| | | | | | | | | | | | | | TI platforms such as OMAP5uevm, PandaBoard, use equivalent logic to generate fake USB MAC address from device unique DIE ID. Consolidate this to a generic location such that other TI platforms such as BeagleBoard-XM can also use the same. NOTE: at this point in time, I dont yet see a need for a generic dummy ethernet MAC address creation function, but if there is a need in the future, this can be further abstracted out. Signed-off-by: Nishanth Menon <nm@ti.com>
* ARM: OMAP: replace custom sr32() by standard I/O accessorsWolfgang Denk2014-04-171-163/+205
| | | | | | | | | | | | | | | | | | Replace the custom bit manipulation function sr32() by standard I/O accessors. A major motivation for this cleanup was the fact, that a number of calls of that function resulted in 32 bit wide shift operations on u32 data, which according to the C-ISO/IEC-9899-Standard provokes undefined behaviour: 6.5.7 Bitwise shift operators ... If the value of the right operand is negative or is greater than or equal to the width of the promoted left operand, the behavior is undefined. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Tom Rini <trini@ti.com> Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
* ARM: OMAP: hide custom bit manipulation function sr32()Wolfgang Denk2014-04-175-16/+13
| | | | | | | | | | The only remaining user of the custom bit manipulation function sr32() is arch/arm/cpu/armv7/omap3/clock.c, so make it a static function in that file to prepare complete removal. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Tom Rini <trini@ti.com> Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
* ARM: OMAP: remove sr32() from OMAP board codeWolfgang Denk2014-04-172-3/+3
| | | | | | | | | | Replace the custom sr32() bit manipulation function in arch/arm/cpu/armv7/omap3/board.c and board/ti/panda/panda.c by standard I/O accessors. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Tom Rini <trini@ti.com> Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
* board:tricorder: fixup SPL OOB layoutAndreas Bießmann2014-04-111-5/+6
| | | | | | | | | | | Commit d016dc42cedbf6102e100fa9ecb58462edfb14f8 changed the layout of BCH8 SW on omap3 boards. We need to adopt the ecc layout for the nand_spl_simle driver to avoid wrong ecc errors. Signed-off-by: Andreas Bießmann <andreas.biessmann@corscience.de> Cc: Thomas Weber <thomas.weber@corscience.de> Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
* board:tricorder: enable omap_gpio clocksAndreas Bießmann2014-04-111-0/+3
| | | | | | Signed-off-by: Andreas Bießmann <andreas.biessmann@corscience.de> Cc: Thomas Weber <thomas.weber@corscience.de> Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
* board:tricorder: always work with valid eeprom dataAndreas Bießmann2014-04-111-0/+2
| | | | | | | | | | | | | Commit 890880583d84607e36b52a785a96b167728bbf73 introduced EEPROM parsing and board detection but faild to return a valid tricorder_eeprom struct for backup case. When pressing S200 while reading EEPROM we ignore the value. We returned falsely a tricorder_eeprom struct with uninitialized data which is just garbage. Initialize it by zeroing the whole structure. Signed-off-by: Andreas Bießmann <andreas.biessmann@corscience.de> Cc: Thomas Weber <thomas.weber@corscience.de> Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
* arm:board:trats2:FIX: Clear INFORM4 and INFORM5 registers at correct bootŁukasz Majewski2014-04-111-0/+13
| | | | | | | | | | | | | | During switch to device tree, commit 1ecab0f has removed this code. INFORM4 and INFORM5 registers are used by TRATS2 first stage bootloader for providing recovery. For normal operation, those two must be cleared out. This error emerges when one force reset from u-boot's command line for three times. Signed-off-by: Lukasz Majewski <l.majewski@samsung.com> Cc: Minkyu Kang <mk7.kang@samsung.com> Acked-by: Minkyu Kang <mk7.kang@samsung.com>
* kbuild: fix a bug in regeneration of linker scriptsMasahiro Yamada2014-04-112-6/+6
| | | | | | | | | | | | | | | | | | | | | In some use cases, SPL linker script was not updated even when it should be. For instance, $ make tricoder_config all [ build complete ] ... modify include/configs/tricoder.h $ make spl/u-boot-spl.lds should be updated in this case, but it wasn't. To fix this problem, linker scripts generation should be handled by $(call if_changed_dep,...) rather than by $(call if_changed,...). Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> Reported-by: Andreas Bießmann <andreas.devel@googlemail.com> Tested-by: Andreas Bießmann <andreas.devel@googlemail.com>
* Merge branch 'u-boot/master' into 'u-boot-arm/master'Albert ARIBAUD2014-04-0897-7263/+5284
|\ | | | | | | | | | | | | | | Conflicts: arch/arm/cpu/arm926ejs/mxs/Makefile include/configs/trats.h include/configs/trats2.h include/mmc.h
| * Revert "Start the deprecation process for generic board"Tom Rini2014-04-042-195/+0
| | | | | | | | | | | | | | | | | | We've run into a non-trivial conversion to CONFIG_SYS_GENERIC_BOARD so we'll postpone this notice until right after v2014.04 is out. This reverts commit 36c4b1d98059244c34ec3327d9cc9f3c552fd01b. Signed-off-by: Tom Rini <trini@ti.com>
| * trats/trats2: enable CONFIG_RANDOM_UUIDPrzemyslaw Marczak2014-04-022-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | This change enables automatically uuid generation by command gpt. In case of updating partitions layout user don't need to care about generate uuid manually. Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com> Cc: Minkyu Kang <mk7.kang@samsung.com> Cc: Piotr Wilczek <p.wilczek@samsung.com> Cc: Stephen Warren <swarren@nvidia.com> Cc: Lukasz Majewski <l.majewski@samsung.com> Cc: trini@ti.com
| * cmd:gpt: randomly generate each partition uuid if undefinedPrzemyslaw Marczak2014-04-023-22/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes: - randomly generate partition uuid if any is undefined and CONFIG_RAND_UUID is defined - print debug info about set/unset/generated uuid - update doc/README.gpt Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com> Acked-by: Lukasz Majewski <l.majewski@samsung.com> Cc: Piotr Wilczek <p.wilczek@samsung.com> Cc: Tom Rini <trini@ti.com> Cc: Stephen Warren <swarren@nvidia.com> Cc: Lukasz Majewski <l.majewski@samsung.com>
| * new commands: uuid and guid - generate random unique identifierPrzemyslaw Marczak2014-04-023-5/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Those commands basis on implementation of random UUID generator version 4 which is described in RFC4122. The same algorithm is used for generation both ids but string representation is different as below. char: 0 9 14 19 24 36 xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx UUID: be be be be be GUID: le le le be be Commands usage: - uuid [<varname>] - guid [<varname>] The result is saved in environment as a "varname" variable if argument is given, if not then it is printed. New config: - CONFIG_CMD_UUID Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com> Cc: Stephen Warren <swarren@nvidia.com> Cc: Lukasz Majewski <l.majewski@samsung.com> Cc: trini@ti.com
| * lib: uuid: add functions to generate UUID version 4Przemyslaw Marczak2014-04-024-5/+100
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support to generate UUID (Universally Unique Identifier) in version 4 based on RFC4122, which is randomly. Source: https://www.ietf.org/rfc/rfc4122.txt Changes: - new configs: - CONFIG_LIB_UUID for compile lib/uuid.c - CONFIG_RANDOM_UUID for functions gen_rand_uuid() and gen_rand_uuid_str() - add configs dependency to include/config_fallbacks.h for lib uuid. lib/uuid.c: - add gen_rand_uuid() - this function writes 16 bytes len binary representation of UUID v4 to the memory at given address. - add gen_rand_uuid_str() - this function writes 37 bytes len hexadecimal ASCII string representation of UUID v4 to the memory at given address. Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com> Cc: Stephen Warren <swarren@nvidia.com> Cc: Lukasz Majewski <l.majewski@samsung.com> [trini: Add CONFIG_EFI_PARTITION to fallbacks] Signed-off-by: Tom Rini <trini@ti.com>
| * lib: uuid: code refactor for proper maintain between uuid bin and stringPrzemyslaw Marczak2014-04-025-36/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes in lib/uuid.c to: - uuid_str_to_bin() - uuid_bin_to_str() New parameter is added to specify input/output string format in listed functions This change allows easy recognize which UUID type is or should be stored in given string array. Binary data of UUID and GUID is always stored in big endian, only string representations are different as follows. String byte: 0 36 String char: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx string UUID: be be be be be string GUID: le le le be be This patch also updates functions calls and declarations in a whole code. Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com> Cc: Stephen Warren <swarren@nvidia.com> Cc: Lukasz Majewski <l.majewski@samsung.com> Cc: trini@ti.com