summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeLines
* Merge branch 'master' of git://git.denx.de/u-boot-i2cTom Rini2015-10-28-0/+4
|\
| * i2c: Instantiate I2C controllers when selectedMichal Simek2015-10-28-0/+4
| | | | | | | | | | | | | | | | Do not enable both I2C controllers by default. Enable them only when they are selected. Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Heiko Schocher <hs@denx.de>
* | arch/powerpc/cpu/ppc4xx/Kconfig: Finish removing boardsTom Rini2015-10-27-16/+0
| | | | | | | | | | | | | | My patches to drop various ppc4xx boards were not build tested and omitted the Kconfig parts. Signed-off-by: Tom Rini <trini@konsulko.com>
* | Merge git://www.denx.de/git/u-boot-ppc4xxTom Rini2015-10-27-4874/+4
|\ \
| * | ocotea: DropTom Rini2015-10-27-1108/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This board has not compiled for me for quite some time due to size constraints, remove. Cc: Stefan Roese <sr@denx.de> Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Stefan Roese <sr@denx.de>
| * | taishan: DropTom Rini2015-10-27-1123/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This board has not compiled for me for quite some time due to size constraints, remove. Cc: Stefan Roese <sr@denx.de> Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Stefan Roese <sr@denx.de>
| * | ebony: DropTom Rini2015-10-27-707/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This board has not compiled for me for quite some time due to size constraints, remove. Cc: Stefan Roese <sr@denx.de> Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Stefan Roese <sr@denx.de>
| * | taihu: RemoveTom Rini2015-10-27-1936/+1
| |/ | | | | | | | | | | | | | | | | | | This board has not compiled for me for quite some time due to size constraints, remove. Cc: John Otken <jotken@softadvances.com> Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Stefan Roese <sr@denx.de>
* | Merge git://www.denx.de/git/u-boot-cfi-flashTom Rini2015-10-27-45/+45
|\ \
| * | cfi_flash: use specific width types for cwordRyan Harkin2015-10-27-45/+45
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch changes the cword union to use specific length types that are architecture indepented. This patch also renames the members of the cword union to represent their usage, i.e.: c -> w8 s -> w16 l -> w32 ll -> w64 Where "w" stands for "width" in bits. I discovered this problem when enabling CFI flash on vexpress64. cword.l was an unsigned long int, but it was intended to be 32 bits wide. Unfortunately, it's 64-bits wide on a 64-bit system, meaning that a 64-bit system fails when attempting to use 32-bit wide CFI flash parts. Similar problems also existed with the other cword sizes. Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org> Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Stefan Roese <sr@denx.de>
* | Merge git://git.denx.de/u-boot-dmTom Rini2015-10-27-257/+209
|\ \
| * | fdt: fix fdtdec_get_pci_addr() for CONFIG_PHYS_64BITStephen Warren2015-10-23-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PCI addresses are always represented as 3 cells in DT. (one cell for bus and device, and two cells for a 64-bit addres). This does not vary based on either the physical address size of the CPU, nor any #address-cells property in DT (or more precisely, #address-cells must be set to 3 in any PCIe controller's node). Fix fdtdec_get_pci_addr() to use conversion functions that operate on (fixed) cell-sized data rather than (varying) physical-address-sized data, so that the function works on 64-bit systems. Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Simon Glass <sjg@chromium.org> Reviewed-by: Thierry Reding <treding@nvidia.com>
| * | env: export fdt_blob to the environment variableThomas Chou2015-10-23-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | Export fdt_blob to the environment variable. So that we may use it to boot Linux. Signed-off-by: Thomas Chou <thomas@wytron.com.tw> Acked-by: Simon Glass <sjg@chromium.org>
| * | dm: tpm: Drop CONFIG_DM_TPMSimon Glass2015-10-23-13/+5
| | | | | | | | | | | | | | | | | | | | | | | | Now that all TPM drivers use driver model, we can drop the special driver model CONFIG option. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Christophe Ricard<christophe-h.ricard@st.com>
| * | dm: tpm: Every TPM drivers should depends on DM_TPMChristophe Ricard2015-10-23-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | Every TPM drivers should now depends on DM_TPM and not only TPM. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Reviewed-by: Tom Rini <trini@konsulko.com> Acked-by: Simon Glass <sjg@chromium.org>
| * | dm: tpm: Remove every compilation switch for TPM driver modelChristophe Ricard2015-10-23-97/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As every TPM drivers support UCLASS_TPM, we can only rely on DM_TPM functions. This simplify a bit the code. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Reviewed-by: Tom Rini <trini@konsulko.com> Acked-by: Simon Glass <sjg@chromium.org>
| * | dm: tpm: Add Driver Model support for tpm_atmel_twi driverChristophe Ricard2015-10-23-19/+59
| | | | | | | | | | | | | | | | | | | | | | | | tpm_atmel_twi can fit perfectly to the new UCLASS_TPM class. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Reviewed-by: Tom Rini <trini@konsulko.com> Acked-by: Simon Glass <sjg@chromium.org>
| * | dm: tpm: Move tpm_tis_i2c to tpm_i2c_infineonChristophe Ricard2015-10-23-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As there is no TCG specification or recommendation for i2c TPM 1.2, move tpm_tis_i2c driver to tpm_i2c_infineon. Other tpm vendors like Atmel or STMicroelectronics may have a different transport protocol for i2c. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Reviewed-by: Tom Rini <trini@konsulko.com> Acked-by: Simon Glass <sjg@chromium.org>
| * | dm: core: Tidy up comments in device.hSimon Glass2015-10-23-3/+16
| | | | | | | | | | | | | | | | | | | | | Correct a few nits found in a recent review. Expand the comments in dev_get_driver_data() to make it clearer. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | dm: core: Remove a comment about dropping per_child_auto_alloc_sizeSimon Glass2015-10-23-4/+0
| | | | | | | | | | | | | | | | | | | | | This has proven useful and we no-longer intend to remove it. Drop the comment. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | dm: core: Tidy up devres commentsSimon Glass2015-10-23-26/+24
| | | | | | | | | | | | | | | | | | | | | | | | Adjust the devres comments to be consistent with the rest of the file, and add one for the struct udevice member. Also rename the 'p' parameter to 'ptr' to avoid single-character names. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | dm: core: Fix device flag whitespaceSimon Glass2015-10-23-5/+5
| | | | | | | | | | | | | | | | | | Line up the flag values in the code for easier readability. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | dm: core: Adjust device.h header file orderSimon Glass2015-10-23-13/+13
| | | | | | | | | | | | | | | | | | Move a few functions around so that the ordering is consistent. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | dm: Rename dev_get_parentdata() to dev_get_parent_priv()Simon Glass2015-10-23-60/+60
| | | | | | | | | | | | | | | | | | | | | | | | The current name is inconsistent with other driver model data access functions. Rename it and fix up all users. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
* | | image.c: Fix non-Android booting with ramdisk and/or device treeTom Rini2015-10-27-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In 1fec3c5 I added a check that if we had an Android image we default to trying the kernel address for a ramdisk. However when we don't have an Android image buf is NULL and we oops here. Ensure that we have 'buf' to check first. Reported-by: elipe Balbi <balbi@ti.com> Signed-off-by: Tom Rini <trini@konsulko.com>
* | | UBI: Fastmap: Fix PEB array typeHeiko Schocher2015-10-26-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | The PEB array is an array of __be32, so let's fix the scan_pool() prototype accordingly. Signed-off-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar> Signed-off-by: Heiko Schocher <hs@denx.de>
* | | ubi,ubifs: sync with linux v4.2Heiko Schocher2015-10-26-1836/+2473
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sync with linux v4.2 commit 64291f7db5bd8150a74ad2036f1037e6a0428df2 Author: Linus Torvalds <torvalds@linux-foundation.org> Date: Sun Aug 30 11:34:09 2015 -0700 Linux 4.2 This update is needed, as it turned out, that fastmap was in experimental/broken state in kernel v3.15, which was the last base for U-Boot. Signed-off-by: Heiko Schocher <hs@denx.de> Tested-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
* | | linux, compat: add missing definitions for ubiHeiko Schocher2015-10-26-9/+33
| |/ |/| | | | | | | | | | | | | | | | | | | | | add missing definitions for the ubi/ubifs sync with linux 4.2, also change "#define kfree ..." into a static inline, so prevent ubi compile error: CC drivers/mtd/ubi/fastmap.o drivers/mtd/ubi/fastmap.c: In function 'scan_pool': drivers/mtd/ubi/fastmap.c:475:3: error: called object 'free' is not a function Signed-off-by: Heiko Schocher <hs@denx.de>
* | common/board_f.c: modify the macro to use get_clocks() more commonGong Qianyu2015-10-24-1/+41
| | | | | | | | | | | | get_clocks() should not be limited by ESDHC. Signed-off-by: Gong Qianyu <Qianyu.Gong@freescale.com>
* | arm, powerpc: select SYS_GENERIC_BOARDMasahiro Yamada2015-10-24-258/+2
| | | | | | | | | | | | | | | | | | | | | | We have finished Generic Board conversion for ARM and PowerPC, i.e. all the boards have been converted except OpenRISC, SuperH, SPARC, which have not supported Generic Board framework yet. Select SYS_GENERIC_BOARD in arch/Kconfig and delete all the macro defines in include/configs/*.h. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
* | Revert "ARM: zynq: disable CONFIG_SYS_MALLOC_F to fix MMC boot"Simon Glass2015-10-24-10/+0
| | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 321f86e18d6aae9f7b7ba3ef1eb0cec769481874. The original bug has been fixed. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-on: Zedboard and ZC706 board Tested-by: Masahiro Yamada <yamada.masahiro@socionext.com> Tested-on: zc702 Tested-by: Michal Simek <michal.simek@xilinx.com>
* | zynq: Move SPL console init out of board_init_f()Simon Glass2015-10-24-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | We should not init the console this early since it precludes using driver model for the UART, since it is not set up at the start of board_init_f(). See the README for more information. The debug UART does not have this restriction. If we want to do early init with the console on it can be done in spl_board_init(). Move the preloader_console_init() call from board_init_f() to board_init_r(). Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Masahiro Yamada <yamada.masahiro@socionext.com> Tested-by: Michal Simek <michal.simek@xilinx.com>
* | microblaze: Add a TODO to call board_init_f_mem()Simon Glass2015-10-24-0/+2
| | | | | | | | | | | | | | | | This C function should be used to do the early memory layout and init. This is beyond my powers, so just add a TODO for the maintainer. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Michal Simek <michal.simek@xilinx.com>
* | arm: Switch 32-bit ARM to using generic global_data setupSimon Glass2015-10-24-24/+4
| | | | | | | | | | | | | | | | | | | | There is quite a bit of assembler code that can be removed if we use the generic global_data setup. Less arch-specific code makes it easier to add new features and maintain the start-up code. Drop the unneeded code and adjust the hooks in board_f.c to cope. Signed-off-by: Simon Glass <sjg@chromium.org>
* | arm: Switch aarch64 to using generic global_data setupSimon Glass2015-10-24-12/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | There is quite a bit of assembler code that can be removed if we use the generic global_data setup. Less arch-specific code makes it easier to add new features and maintain the start-up code. Drop the unneeded code and adjust the hooks in board_f.c to cope. Tested on LS2085ARDB and LS2085AQDS (armv8 SoC). Tested-by: York Sun <yorksun@freescale.com> Signed-off-by: Simon Glass <sjg@chromium.org>
* | board_init_f_mem(): Don't create an unused early malloc() areaSimon Glass2015-10-24-1/+2
| | | | | | | | | | | | | | | | | | Change the #ifdef so that the early malloc() area is not set up in SPL if CONFIG_SYS_SPL_MALLOC_START is defined. In that case it would never actually be used, and just chews up stack space. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Masahiro Yamada <yamada.masahiro@socionext.com>
* | board_init_f_mem(): Don't require memset()Simon Glass2015-10-24-0/+18
| | | | | | | | | | | | | | Unfortunately memset() is not always available, so provide a substitute when needed. Signed-off-by: Simon Glass <sjg@chromium.org>
* | Move board_init_f_mem() into a common locationSimon Glass2015-10-24-29/+50
| | | | | | | | | | | | | | | | | | This function will be used by both SPL and U-Boot proper. So move it into a common place. Also change the #ifdef so that the early malloc() area is not set up in SPL if CONFIG_SYS_SPL_MALLOC_START is defined. In that case it would never actually be used, and just chews up stack space. Signed-off-by: Simon Glass <sjg@chromium.org>
* | fs-test.sh: fix pre-requisite detectionStephen Warren2015-10-24-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the following snippet: if [ ! -x `which $prereq` ]; then When $prereq does not exist, `which $prereq` evaluates to the empty string, which results in *no* argument being passed to the -x operator, which then evaluates to true, which is the equivalent of the prereq having been found. In order for this to fail as expected, we must pass an empty argument, which then causes -x to fail. Do this by wrapping the `` in quotes so there's always an argument to -x, even if the value of the argument is zero-length. Signed-off-by: Stephen Warren <swarren@wwwdotorg.org> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org>
* | test: fat: add test of non-contiguous file readsStephen Warren2015-10-24-0/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In my patch series to replace fs/fat with "ff.c", I enhanced ff.c to optimize file reading, so that reads of contiguous clusters are submitted to the IO device as a single read. This test attempts to torture-test edge-cases of that enhancement. BTW, the only way I found to validate that this script actually does create non-contiguous files was to manually inspect the FAT bitmap in a hex dump of the FAT image. hdparm --fibmap doesn't work on loop-mounted filesystems. filefrag -v -e seems to lie about files being contiguous when they aren't. Signed-off-by: Stephen Warren <swarren@wwwdotorg.org> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org>
* | itest: make memory access work under sandboxStephen Warren2015-10-24-5/+16
| | | | | | | | | | | | | | | | itest accesses memory, and hence must map/unmap it. Without doing so, it accesses invalid addresses and crashes. Signed-off-by: Stephen Warren <swarren@wwwdotorg.org> Reviewed-by: Simon Glass <sjg@chromium.org>
* | distro_bootcmd: Add support for booting from ubifsRoy Spliet2015-10-24-0/+19
| | | | | | | | | | | | | | | | | | Under the assumptions of having a UBI volume called boot, containing a ubifs filesystem. Signed-off-by: Roy Spliet <rspliet@eclipso.eu> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Stephen Warren <swarren@nvidia.com>
* | ubifs: Add generic fs supportHans de Goede2015-10-24-0/+44
| | | | | | | | | | | | | | | | Add generic fs support, so that commands like ls, load and test -e can be used on ubifs. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Heiko Schocher <hs@denx.de>
* | ubifs: Add functions for generic fs useHans de Goede2015-10-24-0/+69
| | | | | | | | | | | | | | | | Implement the necessary functions for implementing generic fs support for ubifs. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Heiko Schocher <hs@denx.de>
* | ubifs: Modify ubifs u-boot wrapper function prototypes for generic fs useHans de Goede2015-10-24-29/+87
| | | | | | | | | | | | | | | | | | | | | | Modify the ubifs u-boot wrapper function prototypes for generic fs use, and give them their own header file. This is a preparation patch for adding ubifs support to the generic fs code from fs/fs.c. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Heiko Schocher <hs@denx.de>
* | disk/part: Only build hostfs special handling when CONFIG_SANDBOX is setHans de Goede2015-10-24-0/+2
| | | | | | | | | | | | | | | | | | This is not necessary / useful when not building with CONFIG_SANDBOX and with the addition of ubifs support to the generic fs commands it actually gets in the way, since both operate on a fake / NULL blkdev. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Stephen Warren <swarren@nvidia.com>
* | Allow imxtract to extract part of script image.Pierre Aubert2015-10-24-1/+2
| | | | | | | | | | | | | | Scripts are multi-file images, the imxtract command should handle them in the same manner. Signed-off-by: Pierre Aubert <p.aubert@staubli.com>
* | Fix bad return value checks (detected with Coccinelle)Thomas Huth2015-10-24-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the "Getting Started with Coccinelle - KVM edition" presentation that has been held by Julia Lawall at the KVM forum 2015 (see the slides at http://events.linuxfoundation.org/sites/events/files/slides/tutorial_kvm_0.pdf), she pointed out some bad return value checks in U-Boot that can be detected with Coccinelle by using the following config file: @@ identifier x,y; identifier f; statement S; @@ x = f(...); ( if (x < 0) S | if ( - y + x < 0) S ) This patch now fixes these issues. Signed-off-by: Thomas Huth <huth@tuxfamily.org>
* | ARM: rpi: Add CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG supportGuillaume GARDET2015-10-24-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | Add CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG support and enable it to set 'board_rev' and 'board_name' envs. 'board_rev' can be used in scripts to determine what board we are running on and 'board_name' for pretty printing. Signed-off-by: Guillaume GARDET <guillaume.gardet@free.fr> Cc: Stephen Warren <swarren@wwwdotorg.org> Acked-by: Stephen Warren <swarren@wwwdotorg.org>
* | allow LED initialization without STATUS_LED_BOOTBernhard Nortmann2015-10-24-5/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For current U-Boot to initialize status LEDs via status_led_init(), it is required to have both CONFIG_STATUS_LED and STATUS_LED_BOOT defined. This may be a particular concern with GPIO LEDs, where __led_init() is required to correctly set up the GPIO (gpio_request and gpio_direction_output). Without STATUS_LED_BOOT the initialization isn't called, which could leave the user with a non-functional "led" command - due to the fact that the LED routines in gpio_led.c use gpio_set_value() just fine, but the GPIO never got set up properly in the first place. I think having CONFIG_STATUS_LED is sufficient to justify a corresponding call to status_led_init(), even with no STATUS_LED_BOOT defined. To do so, common/board_r.c needs call that routine, so it now is exposed via status_led.h. Signed-off-by: Bernhard Nortmann <bernhard.nortmann@web.de> [trini: Add dummy __led_init to pca9551_led.c] Signed-off-by: Tom Rini <trini@konsulko.com>