summaryrefslogtreecommitdiff
path: root/arch
AgeCommit message (Collapse)Author
2014-04-01arm: mxs: Add serial console support into SPLMarek Vasut
Add support for serial console into the i.MX23/i.MX28 SPL. A full, uncrippled serial console support comes very helpful when debugging various spectacular hardware bringup issues early in the process. Because we do not use SPL framework, but have our own minimalistic SPL, which is compatible with the i.MX23/i.MX28 BootROM, we do not use preloader_console_init(), but instead use a similar function to start the console. Nonetheless, to avoid blowing up the size of the SPL binary, this support is enabled only if CONFIG_SPL_SERIAL_SUPPORT is defined, which is disabled by default. Signed-off-by: Marek Vasut <[email protected]> Cc: Stefano Babic <[email protected]>
2014-04-01arm: mxs: Properly set GD pointer in SPLMarek Vasut
Set the GD pointer in the SPL to a defined symbol so various functions from U-Boot can be used without adverse side effects. Signed-off-by: Marek Vasut <[email protected]> Cc: Stefano Babic <[email protected]>
2014-03-31arm: mxs: Add support for generating signed BootStreamMarek Vasut
This patch adds the groundwork for generating signed BootStream, which can be used by the HAB library in i.MX28. We are adding a new target, u-boot-signed.sb , since the process for generating regular non-signed BootStream is much easier. Moreover, the signed bootstream depends on external _proprietary_ _binary-only_ tool from Freescale called 'cst', which is available only under NDA. To make things even uglier, the CST or HAB mandates a kind-of circular dependency. The problem is, unlike the regular IVT, which is generated by mxsimage, the IVT for signed boot must be generated by hand here due to special demands of the CST. The U-Boot binary (or SPL binary) and IVT are then signed by the CST as a one block. But here is the problem. The size of the entire image (U-Boot, IVT, CST blocks) must be appended at the end of IVT. But the size of the entire image is not known until the CST has finished signing the U-Boot and IVT. We solve this by expecting the CST block to be always 3904B (which it is in case two files, U-Boot and the hand-made IVT, are signed in the CST block). Signed-off-by: Marek Vasut <[email protected]> Cc: Stefano Babic <[email protected]>
2014-03-31arm: mxs: Adjust the load address of U-Boot and SPL for HABMarek Vasut
When using HAB, there are additional special requirements on the placement of U-Boot and the U-Boot SPL in memory. To fullfill these, this patch moves the U-Boot binary a little further from the begining of the DRAM, so the HAB CST and IVT can be placed in front of the U-Boot binary. This is necessary, since both the U-Boot and the IVT must be contained in single CST signature. To make things worse, the IVT must be concatenated with one more entry at it's end, that is the length of the entire CST signature, IVT and U-Boot binary in memory. By placing the blocks in this order -- CST, IVT, U-Boot, we can easily align them all and then produce the length field as needed. As for the SPL, on i.MX23/i.MX28, the SPL size is limited to 32 KiB, thus we place the IVT at 0x8000 offset, CST right past IVT and claim the size is correct. The HAB library accepts this setup. Finally, to make sure the vectoring in SPL still works even after moving the SPL from 0x0 to 0x1000, we add a small function which copies the vectoring code and tables to 0x0. This is fine, since the vectoring code is position independent. Signed-off-by: Marek Vasut <[email protected]> Cc: Stefano Babic <[email protected]>
2014-03-31tegra: fix Makefile to pass per-file CFLAGSMasahiro Yamada
Since Kbuild was introduced, warmboot_avp.o has been compiled without -march=armv4t. Makefile should be adjusted to pass a per-file option. Signed-off-by: Masahiro Yamada <[email protected]> Cc: Stephen Warren <[email protected]> Cc: Tom Warren <[email protected]>
2014-03-28cpu: exynos4: add ace sha base addressPrzemyslaw Marczak
Signed-off-by: Przemyslaw Marczak <[email protected]> Cc: Minkyu Kang <[email protected]>
2014-03-28spl: Fix guardian macros in spl.hMarek Vasut
Fix the macros guarding the spl.h header for various platforms. Due to a typo and a propagation of it, the macros went out-of-sync with their ifdef check, so fix this. Signed-off-by: Marek Vasut <[email protected]> Cc: Tom Rini <[email protected]>
2014-03-28kbuild: move asm-offsets.c from SoC directory to arch/$(ARCH)/libMasahiro Yamada
U-Boot has supported two kinds of asm-offsets.h. One is generic for all architectures and its source is located at ./lib/asm-offsets.c. The other is SoC specific and its source is under SoC directory. The problem here is that only boards with SoC directory can use the asm-offsets infrastructure. Putting asm-offsets.c right under CPU directory does not work. Now a new demand is coming. PowerPC folks want to use asm-offsets. But no PowerPC boards have SoC directory. It seems inconsistent that some boards add asm-offsets.c to SoC directoreis and some to CPU directories. It looks more reasonable to put asm-offsets.c under arch/$(ARCH)/lib. This commit merges asm-offsets.c under SoC directories into arch/$(ARCH)/lib/asm-offsets.c. By the way, I doubt the necessity of some entries in asm-offsets.c. I am leaving refactoring to the board maintainers. Please check "TODO" in the comment blocks in arch/{arm,nds32}/lib/asm-offsets.c. Signed-off-by: Masahiro Yamada <[email protected]> Cc: Yuantian Tang <[email protected]>
2014-03-28kbuild: Rename UIMAGE to MKIMAGEMarek Vasut
U-Boot uses the 'mkimage' tool to produce various image types, not only uImage image type. Rename the invocation name from UIMAGE to MKIMAGE. The following command was used to do the replacement: git grep 'quiet_cmd_mkimage.* = UIMAGE' | cut -d : -f 1 | \ xargs -i sed -i "s@\(quiet_cmd_mkimage\)\(.*\) = UIMAGE @\1\2 = MKIMAGE@" {} Signed-off-by: Marek Vasut <[email protected]> Cc: Tom Rini <[email protected]> Cc: Masahiro Yamada <[email protected]> Acked-by: Masahiro Yamada <[email protected]>
2014-03-25Merge branch 'u-boot/master' into 'u-boot-arm/master'Albert ARIBAUD
Trivial merge conflict, needed to manually remove local_info as per commit 41364f0f. Conflicts: board/samsung/common/board.c
2014-03-24mmc: Split mmc struct, rework mmc initialization (v2)Pantelis Antoniou
The way that struct mmc was implemented was a bit of a mess; configuration and internal state all jumbled up in a single structure. On top of that the way initialization is done with mmc_register leads to a lot of duplicated code in drivers. Typically the initialization got something like this in every driver. struct mmc *mmc = malloc(sizeof(struct mmc)); memset(mmc, 0, sizeof(struct mmc); /* fill in fields of mmc struct */ /* store private data pointer */ mmc_register(mmc); By using the new mmc_create call one just passes an mmc config struct and an optional private data pointer like this: struct mmc = mmc_create(&cfg, priv); All in tree drivers have been updated to the new form, and expect mmc_register to go away before long. Changes since v1: * Use calloc instead of manually calling memset. * Mark mmc_register as deprecated. Signed-off-by: Pantelis Antoniou <[email protected]>
2014-03-21sparc: consolidate CONFIG_{LEON, LEON2, LEON3} definitionMasahiro Yamada
CONFIG_LEON is already defined in arch/sparc/cpu/{leon2,leon3}/config.mk. Remove the redundant definition in board header files. All leon3 boards define CONFIG_LEON3 in board header files. Move the definition to arch/sparc/cpu/leon3/config.mk. CONFIG_LEON2 can be move to arch/sparc/cpu/leon2/config.mk as well. Signed-off-by: Masahiro Yamada <[email protected]> Cc: Daniel Hellstrom <[email protected]>
2014-03-21aes: Move the AES-128-CBC encryption function to common codeMarek Vasut
Move the AES-128-CBC encryption function implemented in tegra20-common/crypto.c into lib/aes.c . This is well re-usable common code. Moreover, clean the code up a bit and fix the kerneldoc-style annotations. Signed-off-by: Marek Vasut <[email protected]>
2014-03-17sandbox: Add options to clean up temporary filesSimon Glass
When jumping from one sandbox U-Boot to another in sandbox, the RAM buffer is preserved in the jump by using a temporary file. Add an option to tell the receiving U-Boot to remove this file when it is no longer needed. Similarly the old U-Boot image is left behind in this case. We cannot delete it immediately since gdb cannot then find its debug symbols. Delete it just before exiting. Together these changes ensure that temporary files are removed both for memory and U-Boot. Signed-off-by: Simon Glass <[email protected]>
2014-03-17sandbox: Allow Ctrl-C to work in sandboxSimon Glass
It is useful for Cltl-C to be handled by U-Boot as it is on other boards. But it is also useful to be able to terminate U-Boot with Ctrl-C. Add an option to enable signals while in raw mode, and make this the default. Add an option to leave the terminal cooked, which is useful for redirecting output. Signed-off-by: Simon Glass <[email protected]>
2014-03-17sandbox: Add LCD driverSimon Glass
Add a simple LCD driver which uses SDL to display the image. We update the image regularly, while still providing for reasonable performance. Adjust the common lcd code to support sandbox. For command-line runs we do not want the LCD to be displayed, so add a --show_lcd option to enable it. Tested-by: Che-Liang Chiou <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2014-03-17sandbox: Add a simple sound driverSimon Glass
Add a sound driver for sandbox, which uses SDL. Tested-by: Che-Liang Chiou <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2014-03-17sandbox: Add SDL library for LCD, keyboard, audioSimon Glass
SDL (Simple DirectMedia Layer - see www.libsdl.org) is a library which provides simple graphics and sound features. It works under X11 and also with a simple frame buffer interface. It is ideally suited to sandbox U-Boot since it fits nicely with the low-level feature set required by U-Boot. For example, U-Boot has its own font drawing routines, its own keyboard processing and just needs raw sound output. We can use SDL to provide emulation of these basic functions for sandbox. This significantly expands the testing that is possible with sandbox. Add a basic SDL library which we will use in future commits. Tested-by: Che-Liang Chiou <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2014-03-17sandbox: Add -j option to indicate a jump from a previous U-BootSimon Glass
In order to support the 'go' command we allow the jumping U-Boot to pass its filename to the new U-Boot image. This can then be used to delete that image if required. Reviewed-by: Simon Glass <[email protected]> Tested-by: Che-Liang Chiou <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2014-03-17sandbox: Add os_jump_to_image() to run another executableSimon Glass
For some tests it is useful to be able to run U-Boot again but pass on the same memory contents. Add a function to achieve this. Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2014-03-17sandbox: dts: Add display and keyboard to sandboxSimon Glass
Add an LCD display and keyboard to the sandbox device tree so that these features can be used. Signed-off-by: Simon Glass <[email protected]>
2014-03-17Use a const pointer for map_to_sysmem()Simon Glass
This function does not actually change the pointer contents, so use const so that functions which have a const pointer do not need to cast. Signed-off-by: Simon Glass <[email protected]>
2014-03-14sh: fix PFC registers definition for SH772{2, 3, 4}Baruch Siach
Add missing port X data register, and fix the offset of ports Y and Z. Signed-off-by: Baruch Siach <[email protected]> Signed-off-by: Nobuhiro Iwamatsu <[email protected]>
2014-03-13Merge branch 'u-boot-samsung/master' into 'u-boot-arm/master'Albert ARIBAUD
2014-03-13arm: exynos: Squash bogus warnings in pinmuxMarek Vasut
Squash these warnings in pinmux.c found with GCC 4.8: /arch/arm/cpu/armv7/exynos/pinmux.c: In function 'exynos_pinmux_config': /arch/arm/cpu/armv7/exynos/pinmux.c:687:28: warning: 'count' may be used uninitialized in this function [-Wmaybe-uninitialized] for (i = start; i < start + count; i++) { ^ /arch/arm/cpu/armv7/exynos/pinmux.c:663:16: note: 'count' was declared here int i, start, count; ^ /arch/arm/cpu/armv7/exynos/pinmux.c:687:28: warning: 'start' may be used uninitialized in this function [-Wmaybe-uninitialized] for (i = start; i < start + count; i++) { ^ /arch/arm/cpu/armv7/exynos/pinmux.c:663:9: note: 'start' was declared here int i, start, count; ^ /arch/arm/cpu/armv7/exynos/pinmux.c:689:19: warning: 'bank' may be used uninitialized in this function [-Wmaybe-uninitialized] s5p_gpio_cfg_pin(bank, i, GPIO_FUNC(0x2)); ^ /arch/arm/cpu/armv7/exynos/pinmux.c:662:24: note: 'bank' was declared here struct s5p_gpio_bank *bank; ^ /arch/arm/cpu/armv7/exynos/pinmux.c: In function 'exynos_pinmux_config': /arch/arm/cpu/armv7/exynos/pinmux.c:687:28: warning: 'count' may be used uninitialized in this function [-Wmaybe-uninitialized] for (i = start; i < start + count; i++) { ^ /arch/arm/cpu/armv7/exynos/pinmux.c:663:16: note: 'count' was declared here int i, start, count; ^ /arch/arm/cpu/armv7/exynos/pinmux.c:687:28: warning: 'start' may be used uninitialized in this function [-Wmaybe-uninitialized] for (i = start; i < start + count; i++) { ^ /arch/arm/cpu/armv7/exynos/pinmux.c:663:9: note: 'start' was declared here int i, start, count; ^ /arch/arm/cpu/armv7/exynos/pinmux.c:689:19: warning: 'bank' may be used uninitialized in this function [-Wmaybe-uninitialized] s5p_gpio_cfg_pin(bank, i, GPIO_FUNC(0x2)); ^ /arch/arm/cpu/armv7/exynos/pinmux.c:662:24: note: 'bank' was declared here struct s5p_gpio_bank *bank; ^ Note that the warning is bogus, the function can never be called with invalid 'peripheral' argument. GCC just cannot analyze this. Signed-off-by: Marek Vasut <[email protected]> Cc: Naveen Krishna Chatradhi <[email protected]> Cc: Akshay Saraswat <[email protected]> Cc: Simon Glass <[email protected]> Cc: Tom Rini <[email protected]> Acked-by: Simon Glass <[email protected]> Acked-by: Rajeshwari S Shinde <[email protected]> Signed-off-by: Lukasz Majewski <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2014-03-12kbuild: rename OBJTREE to objtreeMasahiro Yamada
Prior to Kbuild, $(OBJTREE) was used for pointing to the top of build directory with absolute path. In Kbuild style, $(objtree) is used instead. This commit renames OBJTREE to objtree and delete the defition of OBJTREE. Signed-off-by: Masahiro Yamada <[email protected]>
2014-03-12kbuild: rename TOPDIR to stctreeMasahiro Yamada
Prior to Kbuild, $(TOPDIR) or $(SRCTREE) was used for pointing to the top of source directory. (No difference between the two.) In Kbuild style, $(srctree) is used instead. This commit renames TOPDIR to srctree and delete the defition of TOPDIR. Signed-off-by: Masahiro Yamada <[email protected]>
2014-03-12kirkwood: kwbimage: refactor CONFIG_SYS_KWD_CONFIGMasahiro Yamada
Pull out "$(SRCTREE)/" from CONFIG_SYS_KWD_CONFIG and push it into the top Makefile. Signed-off-by: Masahiro Yamada <[email protected]> Cc: Michael Walle <[email protected]> Cc: Simon Guinot <[email protected]> Cc: Dave Purdy <[email protected]> Cc: Stefan Herbrechtsmeier <[email protected]> Cc: Luka Perkov <[email protected]> Cc: Valentin Longchamp <[email protected]> Cc: Jason Cooper <[email protected]> Cc: Siddarth Gore <[email protected]> Cc: Prafulla Wadaskar <[email protected]> Cc: Eric Cooper <[email protected]> Cc: Suriyan Ramasami <[email protected]>
2014-03-12kbuild: delete redundant LDSCRIPT definitionMasahiro Yamada
$(SRCTREE)/$(CPUDIR)/u-boot.lds is our default location of arch-specific linker script. Remove redundant definitions in arch/{arc,microblaze,openrisc}/config.mk. Signed-off-by: Masahiro Yamada <[email protected]> Cc: Alexey Brodkin <[email protected]> Cc: Stefan Kristiansson <[email protected]> Acked-by: Michal Simek <[email protected]>
2014-03-12x86: specify CONFIG_USE_PRIVATE_LIBGCC more simplyMasahiro Yamada
Signed-off-by: Masahiro Yamada <[email protected]> Cc: Simon Glass <[email protected]>
2014-03-12kbuild, x86: use a short log for arch/x86/lib/libgcc.aMasahiro Yamada
Signed-off-by: Masahiro Yamada <[email protected]> Cc: Simon Glass <[email protected]>
2014-03-12kbuild,mxs: use short logs for MXS imagesMasahiro Yamada
Signed-off-by: Masahiro Yamada <[email protected]> Cc: Fabio Estevam <[email protected]> Cc: Otavio Salvador <[email protected]> Cc: Lauri Hintsala <[email protected]> Acked-by: Marek Vasut <[email protected]>
2014-03-12am33xx: Rework #ifdef's around s_init for clarityTom Rini
The s_init function is only called on SPL or XIP cases, so lets only build it for them. This makes the #if logic within the function a bit clearer as to when we are or are not calling things, and makes it easier to see that for example preloader_console_init isn't ever called in the non-XIP full U-Boot case. Signed-off-by: Tom Rini <[email protected]>
2014-03-12board:trats2: Enable device tree on Trats2Piotr Wilczek
This patch enables to run Trats2 board on device tree. Signed-off-by: Piotr Wilczek <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2014-03-12board:trats: Enable device tree on TratsPiotr Wilczek
This patch enables to run Trats board on device tree. Signed-off-by: Piotr Wilczek <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> CC: Lukasz Majewski <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2014-03-12board:universal: Enable device tree on UniversalPiotr Wilczek
This patch enables to run Universal board on device tree. Signed-off-by: Piotr Wilczek <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Acked-by: Przemyslaw Marczak <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2014-03-12board:origen: Enable device tree on OrigenPiotr Wilczek
This patch enables to run Origen board on device tree. Uart, DRAM and MMC init functions are removed as their generic replacements form the common board file are used. The config file is modified to contain only board specific options. Signed-off-by: Piotr Wilczek <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Cc: Chander Kashyap <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2014-03-12arm:exynos: add common DTS file for exynos 4Piotr Wilczek
This patch adds common dtsi file and config header for all Exynos 4 based boards. Patch additionaly adds board specific (weak) functions for board_early_init_f and board_power_init functions. Signed-off-by: Piotr Wilczek <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2014-03-12drivers:mmc:sdhci: enable support for DTPiotr Wilczek
This patch enables support for device tree for sdhci driver. Non DT case is still supported. Signed-off-by: Piotr Wilczek <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2014-03-12video:mipidsim:fdt: Add DT support for mipi dsim driverPiotr Wilczek
This patch enables parsing mipi data from device tree. Non device tree case is still supported. Signed-off-by: Piotr Wilczek <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2014-03-12exynos4:pinmux:fdt: decode peripheral idPiotr Wilczek
This patch adds api to decode peripheral id based on interrupt number. Signed-off-by: Piotr Wilczek <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2014-03-10Merge branch 'master' of git://git.denx.de/u-boot-armTom Rini
2014-03-10Merge branch 'master' of git://git.denx.de/u-boot-usbTom Rini
2014-03-10usb: create common header virtual root hub descriptorsStephen Warren
Many USB host controller drivers contain almost identical copies of the same virtual root hub descriptors. Put these into a common file to avoid duplication. Note that there were some very minor differences between the descriptors in the various files, such as: - USB 1.0 vs. USB 1.1 - Manufacturer/Device ID - Max packet size - String content I assume these aren't relevant. Cc: Thomas Lange <[email protected]> Cc: Shinya Kuribayashi <[email protected]> Cc: Gary Jennejohn <[email protected]> Cc: Wolfgang Denk <[email protected]> Cc: Eric Millbrandt <[email protected]> Cc: Pierre Aubert <[email protected]> Cc: Stefan Roese <[email protected]> Cc: Daniel Hellstrom <[email protected]> Cc: Denis Peter <[email protected]> Cc: Rodolfo Giometti <[email protected]> Cc: Zhang Wei <[email protected]> Cc: Mateusz Zalega <[email protected]> Cc: Remy Bohmer <[email protected]> Cc: Markus Klotzbuecher <[email protected]> Cc: Minkyu Kang <[email protected]> Cc: Gary Jennejohn <[email protected]> Cc: C Nauman <[email protected]> Cc: David Müller <[email protected]> Cc: Yoshihiro Shimoda <[email protected]> Cc: Nobuhiro Iwamatsu <[email protected]> Cc: Thomas Abraham <[email protected]> Cc: Tom Rini <[email protected]> Cc: Andrew Murray <[email protected]> Cc: Matej Frančeškin <[email protected]> Cc: Cliff Cai <[email protected]> Cc: Bryan Wu <[email protected]> Signed-off-by: Stephen Warren <[email protected]>
2014-03-10ahci-plat: Provide a weak scsi_init hookIan Campbell
This allow the platform to register the platform ahci device. Signed-off-by: Ian Campbell <[email protected]>
2014-03-09arm: atmel: sama5d3: add nand spl boot supportBo Shen
Add NAND SPL boot support with hardware PMECC. Signed-off-by: Bo Shen <[email protected]> Signed-off-by: Andreas Bießmann <[email protected]>
2014-03-09arm: atmel: sama5d3: add spi spl boot supportBo Shen
Add SPI SPL boot support for sama5d3xek board. Signed-off-by: Bo Shen <[email protected]> Signed-off-by: Andreas Bießmann <[email protected]>
2014-03-09at91 gpio: fix typo in compatibility macroAndreas Henriksson
It's called _pio_ in the version that was added to git. Apparently it got renamed without updating the macros before it was applied, c.f. http://u-boot.10912.n7.nabble.com/U-Boot-PATCH-3-9-V3-add-a-new-AT91-GPIO-driver-td75922.html Signed-off-by: Andreas Henriksson <[email protected]> Signed-off-by: Andreas Bießmann <[email protected]>
2014-03-09at91sam9263ek: add mmc supportAndreas Henriksson
Add support for using the Atmel MCI driver on at91sam9263ek. This change is modeled after the existing at91sam9260ek support. Please note that this hooks up slot1 (MCI1) for SD. Not both. Tested with at91bootstrap and u-boot on dataflash in slot 0 and fat-formatted 8GB SDHC in slot 1 on first revision at91sam9263ek (which must use dataflash in slot0 to boot). CONFIG_ATMEL_MCI_PORTB not tested. Signed-off-by: Andreas Henriksson <[email protected]> [remove empty line] Signed-off-by: Andreas Bießmann <[email protected]>
2014-03-07Merge branch 'master' of git://git.denx.de/u-boot-mpc85xxTom Rini