Paul Burton [Wed, 4 Sep 2013 15:12:24 +0000 (16:12 +0100)]
spl_mmc: only call printf or puts with CONFIG_SPL_LIBCOMMON_SUPPORT
If we don't have CONFIG_SPL_LIBCOMMON_SUPPORT defined then stdio
functions are unavailable & calling them will cause a link failure.
Signed-off-by: Paul Burton <paul.burton@imgtec.com>
Paul Burton [Wed, 4 Sep 2013 15:12:23 +0000 (16:12 +0100)]
spl: remove unnecessary (& ARM specific) include of asm/utils.h
ARM is the only architecture which includes this header and nothing in
spl_mmc.c makes use of it. Remove the include.
Signed-off-by: Paul Burton <paul.burton@imgtec.com>
Lubomir Popov [Wed, 14 Aug 2013 15:59:18 +0000 (18:59 +0300)]
ARM: OMAP: Enable 8-bit eMMC access for OMAP4/5/DRA7xx
Enable 8-bit host capability for HSMMC2 and/or HSMMC3. CONFIG_HSMMC2_8BIT
(for OMAP4/5/DRA7xx) and/or CONFIG_HSMMC3_8BIT (for DRA7xx only) must be
defined in the board header if an 8-bit eMMC device is connected to the
corresponding port.
Fix the "No status update" error that appeared for eMMC devices by
inserting a 20 us delay between writing arguments and command. This
solution has been proposed by Michael Cashwell <mboards@prograde.net>.
A minor cosmetic fix in a comment as well.
Signed-off-by: Lubomir Popov <lpopov@mm-sol.com>
Oleksandr Tyshchenko [Tue, 6 Aug 2013 10:44:16 +0000 (13:44 +0300)]
omap_hsmmc: omap4+/am335x: modify MMC controller internal fsm reset func
"mmc_send_cmd: timeout: No status update" error sometimes happens in
omap_hsmmc driver func mmc_send_cmd() when the MMC controller card
identification and selection sequence is executed for eMMC on OMAP4
boards.
It happens due to incorrect execution of CMD line reset procedure
for OMAP4. Because CMD(DAT) lines reset procedures are slightly
different for OMAP3 and OMAP4(AM335x,OMAP5,DRA7xx).
According to OMAP3 TRM:
Set SRC(SRD) bit in MMCHS_SYSCTL register to 0x1 and wait until
it returns to 0x0.
According to OMAP4(AM335x,OMAP5,DRA7xx) TRMs, CMD(DATA) lines reset
procedure steps must be as follows:
1. Initiate CMD(DAT) line reset by writing 0x1 to SRC(SRD) bit in
MMCHS_SYSCTL register (SD_SYSCTL for AM335x).
2. Poll the SRC(SRD) bit until it is set to 0x1.
3. Wait until the SRC(SRD) bit returns to 0x0
(reset procedure is completed).
Unfortunately, at present omap_hsmmc driver has support only for
OMAP3. And as result step #2 is missing for OMAP4(AM335x,OMAP5,DRA7xx).
This sometimes leads to the fact that the waiting loop which is
required in step #3 does not executed, because SRC bit does not set
yet (at the moment of checking a condition of a loop execution).
And as a result this can cause to timeout error when sending a
next command.
In the particular case (working with eMMC witch do not respond to
some SD specific command) due to incorrect reset sequence after
command SD_CMD_SEND_IF_COND which finished with CTO flag within
64 clock cycles, the next command MMC_CMD_APP_CMD leads to a
timeout error within 1s.
So, extend CMD(DATA) lines reset procedure in func
mmc_reset_controller_fsm() by adding the missing step #2 for
OMAP4+/AM335x boards.
Signed-off-by: Oleksandr Tyshchenko <oleksandr.tyshchenko@ti.com>
Acked-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Oleksandr Tyshchenko [Tue, 6 Aug 2013 10:50:10 +0000 (13:50 +0300)]
mmc: Remove unused variable backup from mmc_send_cmd()
Do not call a memset for unused variable backup every time.
Remove unused variable from function.
Signed-off-by: Oleksandr Tyshchenko <oleksandr.tyshchenko@ti.com>
Acked-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Jaehoon Chung [Fri, 19 Jul 2013 08:44:49 +0000 (17:44 +0900)]
mmc: sdhci: use the SDHCI_QUIRK_USE_WIDE8 for samsung SoC
Samsung SoC is supported the WIDE8, even if Controller version is v2.0.
So add the SDHCI_QUIRK_USE_WIDE8 for Samsung-SoC.
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Tom Rini [Tue, 17 Sep 2013 00:08:33 +0000 (20:08 -0400)]
Prepare v2013.10-rc3
Signed-off-by: Tom Rini <trini@ti.com>
Tom Rini [Tue, 17 Sep 2013 00:02:50 +0000 (20:02 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-spi
Tom Rini [Fri, 13 Sep 2013 22:12:36 +0000 (18:12 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx
Tom Rini [Tue, 10 Sep 2013 13:51:44 +0000 (09:51 -0400)]
Revert "standalone-examples: support custom GCC lib"
After further testing, this patch has two problems. First,
examples/standalone/Makefile was already inherting PLATFORM_LIBS from
the top-level Makefile so this lead to duplicating the private libgcc.
Second, currently the private libgcc has a reference to 'hang' that is
not being fulfilled.
This reverts commit
4412db46468d5965da736d06f84d13e68a6e0b51.
Signed-off-by: Tom Rini <trini@ti.com>
Albert ARIBAUD [Wed, 11 Sep 2013 13:52:51 +0000 (15:52 +0200)]
Merge and reformat boards.cfg and MAINTAINERS
Put all informations about targets, including state (active or
orphan) and maintainers, in boards.cfg; remove MAINTAINERS;
adjust the build system accordingly.
Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
Tom Rini [Thu, 12 Sep 2013 13:08:24 +0000 (09:08 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-arm
Albert ARIBAUD [Wed, 11 Sep 2013 07:59:27 +0000 (09:59 +0200)]
Merge branch 'u-boot-samsung/master' into 'u-boot-arm/master'
Conflicts:
tools/Makefile
Przemyslaw Marczak [Tue, 10 Sep 2013 09:34:49 +0000 (11:34 +0200)]
arm:goni:mmc: Add sd card detection and initialization.
This change allow to use sd card on Goni the same like mmc 0.
SD card is mmc dev 1, so it can be used like this: "fatls mmc 1:2".
SD card is inited even if eMMC initialization fails.
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
CC: Minkyu Kang <mk7.kang@samsung.com>
Acked-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
Przemyslaw Marczak [Tue, 3 Sep 2013 12:57:52 +0000 (14:57 +0200)]
arm:mmc:goni/exynos: Fix wrong mmc base register devices offset.
On s5pc1xx mmc devices offset is multiply of 0x100000,
wrong value was 0x10000. Register offset always points
to mmc 0 before this change.
Add macro definition of mmc dev register offset to s5pc1xx and
exynos mmc.
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
CC: Minkyu Kang <mk7.kang@samsung.com>
Acked-by: Jaehoon Chung <jh80.chung at samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
Chander Kashyap [Tue, 10 Sep 2013 08:11:36 +0000 (13:41 +0530)]
dts: samsung: arndale: Fix include path
As per new convention ARCH_CPU_DTS is not defined in "dtc/Makefile".
Hence Arndale comilation is failing. Fix this by adding proper include
file in "board/samsung/dts/exynos5250-arndale.dts".
Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
York Sun [Tue, 20 Aug 2013 22:09:43 +0000 (15:09 -0700)]
powerpc/mpc85xx: Add workaround for erratum A-005125
In a very rare condition, a system hang is possible when the e500 core
initiates a guarded load to PCI / PCIe /SRIO performs a coherent write
to memory. Please refer to errata document for more details. This erratum
applies to the following SoCs and their variants, if any.
BSC9132
BSC9131
MPC8536
MPC8544
MPC8548
MPC8569
MPC8572
P1010
P1020
P1021
P1022
P1023
P2020
C29x
Signed-off-by: York Sun <yorksun@freescale.com>
CC: Scott Wood <scottwood@freescale.com>
Shaohui Xie [Tue, 10 Sep 2013 08:15:07 +0000 (16:15 +0800)]
powerpc/p2041: fix I2C controller's offset
Without this patch, SPD access will fail which leads to DDR init fail.
Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
Tested-by: Chris Packham <judge.packham@gmail.com>
Acked-by: York Sun <yorksun@freescale.com>
Tom Rini [Mon, 9 Sep 2013 13:59:30 +0000 (09:59 -0400)]
Merge branch 'master' of git://denx.de/git/u-boot-ppc4xx
Tom Rini [Mon, 9 Sep 2013 13:35:38 +0000 (09:35 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-i2c
Tang Yuantian [Fri, 6 Sep 2013 02:45:40 +0000 (10:45 +0800)]
powerpc/mpc85xx: Fix the I2C bus speed error on p1022
The source clock frequency of I2C bus on p1022 is the platform(CCB)
clock, not CCB/2. The wrong source clock frequency leads to wrong
I2C bus speed setting. so, fixed it.
Signed-off-by: Tang Yuantian <Yuantian.Tang@freescale.com>
Ying Zhang [Wed, 4 Sep 2013 09:03:45 +0000 (17:03 +0800)]
SPL: P1022DS: switch to new multibus/multiadapter support
- Added section "u_boot_list" in arch/powerpc/cpu/mpc85xx/u-boot-spl.lds
- Use the function i2c_init_all instead of i2c_init
Signed-off-by: Ying Zhang <b40530@freescale.com>
Stefan Roese [Mon, 26 Aug 2013 10:08:48 +0000 (12:08 +0200)]
ppc4xx: Fix GPIO handling in lwmon5 and lcd4_lwmon5 BSP
LCD4 needs a slightly different GPIO configuration than the
original LWMON5 variant. GPIO49 needs to be configured to a
default output value of 0 (permanent voltage supply).
Additionally lcd4 also needs to enable the LSB transmitter.
Signed-off-by: Stefan Roese <sr@denx.de>
Tom Rini [Sat, 7 Sep 2013 00:25:35 +0000 (20:25 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-arm
Masahiro Yamada [Sun, 1 Sep 2013 06:04:27 +0000 (15:04 +0900)]
cam_enc_4xx: Move CONFIG_SPL_PAD_TO to a config header
For most boards which define CONFIG_SPL_PAD_TO,
it is defined in config header files.
Currently, there exists only one exception, cam_enc_4xx board.
This patch moves CONFIG_SPL_PAD_TO definition
from board/ait/cam_enc_4xx/config.mk
to include/configs/cam_enc_4xx.h.
With this modification, we can delete a glue code
in the top level config.mk:
ifneq ($(CONFIG_SPL_PAD_TO),)
CPPFLAGS += -DCONFIG_SPL_PAD_TO=$(CONFIG_SPL_PAD_TO)
endif
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Cc: Heiko Schocher <hs@denx.de>
Masahiro Yamada [Sun, 1 Sep 2013 06:04:26 +0000 (15:04 +0900)]
config.mk: Delete unnecessary code
Currently no makefiles (board-specific config.mk)
set the following variables:
CONFIG_SPL_TEXT_BASE
CONFIG_UBOOT_PAD_TO
CONFIG_RESET_VECTOR_ADDRESS
CONFIG_TPL_PAD_TO
For all target boards using above macros
they are set in header files (include/configs/*.h),
so we do not need to set them as CPPFLAGS.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Oliver Metz [Thu, 29 Aug 2013 22:56:02 +0000 (00:56 +0200)]
fw_env: fix writing environment for mtd devices
Signed-off-by: Oliver Metz <oliver@freetz.org>
Tested-by: Luka Perkov <luka@openwrt.org>
Oliver Metz [Thu, 29 Aug 2013 22:56:01 +0000 (00:56 +0200)]
fw_env: add redundant env support for MTD_ABSENT
Signed-off-by: Oliver Metz <oliver@freetz.org>
Tested-by: Luka Perkov <luka@openwrt.org>
Marek Vasut [Tue, 27 Aug 2013 21:32:11 +0000 (23:32 +0200)]
mail: Fix email address
Fix my email address.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Tom Rini <trini@ti.com>
Henrik Nordström [Mon, 26 Aug 2013 22:37:22 +0000 (00:37 +0200)]
Always build u-boot.img when using CONFIG_SPL_FRAMEWORK
Use of uImage formatted u-boot have long been preferred, and recent
changes to better support Falcon mode on MMC now enforces it on MMC.
Signed-off-by: Henrik Nordstrom <henrik@henriknordstrom.net>
Rob Herring [Sat, 24 Aug 2013 15:10:54 +0000 (10:10 -0500)]
ahci: convert to use libata functions and definitions
libata already has similar functions as implemented in the ahci code.
Refactor the code to use the libata variants and remove the dependency on
ata.h. Convert some defines to use the version from libata.h. Also, remove
some unnecessary memset's of bss data.
This is a step toward hopefully merging ahci.c and dw_ahsata.c which are
essentially the same driver.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Reviewed-by: Tom Rini <trini@ti.com>
Rob Herring [Sat, 24 Aug 2013 15:10:53 +0000 (10:10 -0500)]
ahci: increase spin-up timeout to 20 sec
Based on Linux libata code, most drives are less than 10 sec, but some
need up to 20 sec.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Reviewed-by: Tom Rini <trini@ti.com>
Rob Herring [Sat, 24 Aug 2013 15:10:52 +0000 (10:10 -0500)]
ahci: handle COMINIT received during spin-up
Some Intel SSDs can send a COMINIT after the initial COMRESET. This causes
the link to go down and we need to re-initialize the link.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Rob Herring [Sat, 24 Aug 2013 15:10:51 +0000 (10:10 -0500)]
ahci: move link bring-up handling to separate function
Move the link bring-up handling to a separate weak function in order to
allow platforms to override it. This is needed on highbank platform which
needs special phy handling.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Rob Herring [Sat, 24 Aug 2013 15:10:50 +0000 (10:10 -0500)]
ahci: add defines for PORT_SCR_STAT register bits
Replace hard-coded register values with proper defines for PORT_SCR_STAT
register.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Rob Herring [Sat, 24 Aug 2013 15:10:49 +0000 (10:10 -0500)]
ahci: fix memory leak in ata_scsiop_inquiry
This fixes a memory leak when scsi inquiry fails.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Reviewed-by: Tom Rini <trini@ti.com>
Rob Herring [Sat, 24 Aug 2013 15:10:48 +0000 (10:10 -0500)]
ahci: fix unaligned access
gcc 4.7 will generate unaligned accesses to local char arrays, so make
them static to avoid that.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Reviewed-by: Tom Rini <trini@ti.com>
Richard Gibbs [Sat, 24 Aug 2013 15:10:47 +0000 (10:10 -0500)]
ahci: use ports implemented map instead of num_ports
The AHCI driver was incorrectly using the Capabilities register NP (number
of ports) field to determine which ports to activate. This commit changes
it to correctly use the PORTS_IMPL register as a port map.
Signed-off-by: Richard Gibbs <richard.gibbs@calxeda.com>
Reviewed-by: Tom Rini <trini@ti.com>
Jack Mitchell [Tue, 16 Jul 2013 13:44:23 +0000 (14:44 +0100)]
standalone-examples: support custom GCC lib
Add support for defining the gcc lib in standalone examples as is
done in the main u-boot Makefile
Signed-off-by: Jack Mitchell <jack.mitchell@dbbroadcast.co.uk>
Wu, Josh [Wed, 24 Jul 2013 09:55:30 +0000 (17:55 +0800)]
fs: fat: don't call disk_write with zero sector num
In the set_cluster() function, it will convert the buffer size to sector
numbers. Then call disk_write() to write by sector.
For remaining buffer, the size is less than a sector, call disk_write()
again to write them in one sector.
But if the total buffer size is less then one sector, the original code
will call disk_write() with zero sector number. It is unnecessary.
So this patch fix this. Now it will not call disk_write() if total buffer size
is less than one sector.
Signed-off-by: Josh Wu <josh.wu@atmel.com>
Jeroen Hofstee [Sat, 10 Aug 2013 15:16:50 +0000 (17:16 +0200)]
compiler_gcc: do not redefine __gnu_attributes
gcc allows extensions to be non compiler specific by defining
__* macros for the attributes supported by gcc. Having a
different definition causes many warnings during the build
(cdefs.h on FreeBSD uses __attribute((__pure__)) where u-boot
uses __attribute__((pure)) for example). Do not redefine
these macros to suppress these warnings.
This patch ignores the checkpatch warning:
WARNING: __packed is preferred over __attribute__((packed))
Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
Pantelis Antoniou [Thu, 8 Aug 2013 16:15:47 +0000 (19:15 +0300)]
git-mailrc: Update MMC custodian
Update git-mailrc with my nick and replace afleming as mmc custodian.
Signed-off-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Tom Rini [Fri, 6 Sep 2013 13:37:04 +0000 (09:37 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-nios
Robert P. J. Day [Wed, 4 Sep 2013 12:41:44 +0000 (08:41 -0400)]
am335x_evm.h: Add back the actual load of the kernel image
Somewhere along the line of refactoring the am335x header files, the
kernel image load was lost, so put it back in.
Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Chin Liang See [Wed, 7 Aug 2013 15:08:03 +0000 (10:08 -0500)]
socfpga: Creating driver for Reset Manager
Consolidating reset code into reset_manager.c. Also
separating reset configuration for virtual target and
real hardware Cyclone V development kit
Signed-off-by: Chin Liang See <clsee@altera.com>
Reviewed-by: Pavel Machek <pavel@denx.de>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Pavel Machek <pavel@denx.de>
Cc: Dinh Nguyen <dinguyen@altera.com>
Cc: Tom Rini <trini@ti.com>
Cc: Albert Aribaud <albert.u.boot@aribaud.net>
Chin Liang See [Wed, 7 Aug 2013 15:06:56 +0000 (10:06 -0500)]
socfpga: Adding configuration for development kit
Separating the configuration file for Virtual
Target and real hardware Cyclone V development kit
Signed-off-by: Chin Liang See <clsee@altera.com>
Reviewed-by: Pavel Machek <pavel@denx.de>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Pavel Machek <pavel@denx.de>
Cc: Dinh Nguyen <dinguyen@altera.com>
Cc: Tom Rini <trini@ti.com>
Cc: Albert Aribaud <albert.u.boot@aribaud.net>
Thomas Chou [Tue, 3 Sep 2013 01:36:04 +0000 (09:36 +0800)]
nios2: fix missing comment terminator from SPDX License commit
The commit
1a4596601fd395f3afb8f82f3f840c5e00bdd57a
Add GPL-2.0+ SPDX-License-Identifier to source files
generated a warning due to a missing comment terminator.
longlong.h:7:1: warning: "/*" within comment
Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Michal Simek [Thu, 25 Jul 2013 14:16:46 +0000 (16:16 +0200)]
arm: lds: Remove libgcc eabi exception handling tables
Remove ARM eabi exception handling tables (for frame unwinding).
AFAICT, u-boot stubs away the frame unwiding routines, so the tables will
more or less just consume space. It should be OK to remove them.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Albert ARIBAUD [Thu, 5 Sep 2013 10:04:49 +0000 (12:04 +0200)]
Merge branch 'u-boot-atmel/master' into 'u-boot-arm/master'
Albert ARIBAUD [Thu, 5 Sep 2013 09:15:26 +0000 (11:15 +0200)]
Merge branch 'u-boot-imx/master' into 'u-boot-arm/master'
Conflicts:
drivers/serial/serial.c
The conflict above was a trivial case of adding one init
function in each branch, and manually resolved in merge.
Bo Shen [Wed, 28 Aug 2013 14:36:56 +0000 (14:36 +0000)]
ARM: atmel: sama5d3: drop unused CONFIG_NET_MULTI
Drop unused CONFIG_NET_MULTI
Signed-off-by: Bo Shen <voice.shen@gmail.com>
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
Wu, Josh [Fri, 23 Aug 2013 07:09:05 +0000 (15:09 +0800)]
mtd: atmel_nand: pmecc: fix bug fail to correct bit error in 1024-bytes sector
The PMECC use BCH algorithm to correct error. In BCH algorithm, the
primitive polynomial value is GF(2^13) for 512-bytes sector size. And it is
GF(2^14) for 1024-bytes sector size.
This patch will choose correct degree of the remainders (13 or 14) for
different sector size.
Tested in AT91SAM9X5-EK with MLC nand flash.
More detail can be refered to section 5.4.1 of:
AT91SAM ARM-based Embedded MPU Application Note
<http://www.atmel.com/Images/doc11127.pdf>
Signed-off-by: Josh Wu <josh.wu@atmel.com>
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
Albert ARIBAUD [Wed, 4 Sep 2013 12:06:56 +0000 (14:06 +0200)]
Merge branch 'u-boot-ti/master' into 'u-boot-arm/master'
Albert ARIBAUD [Wed, 4 Sep 2013 09:50:25 +0000 (11:50 +0200)]
Merge branch 'u-boot-atmel/master' into 'u-boot-arm/master'
Kees Cook [Fri, 16 Aug 2013 14:59:16 +0000 (07:59 -0700)]
bootm: allow correct bounds-check of destination
While nothing presently examines the destination size, it should at
least be correct so that future users of sys_mapmem() will not be
surprised. Without this, it might be possible to overflow memory.
Signed-off-by: Kees Cook <keescook@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
Kees Cook [Fri, 16 Aug 2013 14:59:15 +0000 (07:59 -0700)]
lzo: correctly bounds-check output buffer
This checks the size of the output buffer and fails if it was going to
overflow the buffer during lzo decompression.
Signed-off-by: Kees Cook <keescook@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
Kees Cook [Fri, 16 Aug 2013 14:59:14 +0000 (07:59 -0700)]
lzma: correctly bounds-check output buffer
The output buffer size must be correctly passed to the lzma decoder or
there is a risk of overflowing memory during decompression. Switching
to the LZMA_FINISH_END mode means nothing is left in an unknown state
once the buffer becomes full.
Signed-off-by: Kees Cook <keescook@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
Kees Cook [Fri, 16 Aug 2013 14:59:13 +0000 (07:59 -0700)]
gzip: correctly bounds-check output buffer
The output buffer size must not be reset by the gzip decoder or there
is a risk of overflowing memory during decompression.
Signed-off-by: Kees Cook <keescook@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
Kees Cook [Fri, 16 Aug 2013 14:59:12 +0000 (07:59 -0700)]
documentation: add more compression configs
This adds the missing compression config items to the README.
Signed-off-by: Kees Cook <keescook@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
Kees Cook [Fri, 16 Aug 2013 14:59:11 +0000 (07:59 -0700)]
sandbox: add compression tests
This adds the "test_compression" command when building the sandbox. This
tests the existing compression and decompression routines for simple
sanity and for buffer overflow conditions.
Signed-off-by: Kees Cook <keescook@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
Simon Glass [Fri, 30 Aug 2013 17:00:09 +0000 (11:00 -0600)]
sandbox: Correct compiler warnings in cmd_bootm/cmd_ximg
Correct the following warnings found with sandbox when compression
is enabled.
cmd_bootm.c: In function 'bootm_load_os':
cmd_bootm.c:443:11: warning: passing argument 4 of 'lzop_decompress' from incompatible pointer type [enabled by default]
/usr/local/google/c/cosarm/src/third_party/u-boot/files/include/linux/lzo.h:31:5: note: expected 'size_t *' but argument is of type 'uint *'
cmd_ximg.c: In function 'do_imgextract':
cmd_ximg.c:225:6: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
cmd_ximg.c:225:14: warning: 'hdr' may be used uninitialized in this function [-Wuninitialized]
Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Kees Cook <keescook@chromium.org>
Albert ARIBAUD [Tue, 3 Sep 2013 12:59:18 +0000 (14:59 +0200)]
Merge branch 'u-boot-tegra/master' into 'u-boot-arm/master'
Albert ARIBAUD [Tue, 3 Sep 2013 12:01:02 +0000 (14:01 +0200)]
Merge 'u-boot-microblaze/zynq' into (u-boot-arm/master'
Conflicts:
arch/arm/include/asm/arch-zynq/hardware.h
The conflict above was trivial and solved during merge.
Tom Rini [Mon, 2 Sep 2013 18:20:36 +0000 (14:20 -0400)]
Prepare v2013.10-rc2
Signed-off-by: Tom Rini <trini@ti.com>
Eric Nelson [Thu, 29 Aug 2013 19:41:46 +0000 (12:41 -0700)]
i.MX6: Set and clear the gating bits for Phase Fractional Dividers
This addresses silicon errata ERR006282 as described in this
document:
https://community.freescale.com/docs/DOC-94581
Also implemented in Freescale's 2009.08-based release:
http://git.freescale.com/git/cgit.cgi/imx/uboot-imx.git/
Commit id:
b7c5badf94ffbe6cd0845efbb75e16e05e3af404
Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
Acked-by: Stefano Babic <sbabic@denx.de>
Eric Nelson [Thu, 29 Aug 2013 19:37:36 +0000 (12:37 -0700)]
i.MX6: nitrogen6x: Don't bother setting PLL3(480) PFD1 divisor
This clock isn't feeding anything under U-Boot, so there's no
point in changing it from power-on default.
Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
Eric Nelson [Thu, 29 Aug 2013 19:37:35 +0000 (12:37 -0700)]
i.MX6: Correct ANATOP_PFD (Phase Fractional Divider) register declarations
Some _CLKGATE_MASK and _FRAC_MASK macros were wrong for PFD_480
and the PFD_528 macros were missing.
Fortunately, the incorrect macros weren't being used.
Since both the PFD_480 and PFD_528 registers have the same
structure, and the fields are identical for [0..3] in bytes
[0..3], so a single set of macros will suffice.
Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
Eric Nelson [Thu, 29 Aug 2013 17:57:10 +0000 (10:57 -0700)]
i.MX6: Add convenience macros cpu_type(rev) and is_cpu_type(cpu)
Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
Acked-by: Stefano Babic <sbabic@denx.de>
Hector Palacios [Wed, 24 Jul 2013 14:01:39 +0000 (16:01 +0200)]
ARM: mxs: rename function that sets AUTO_RESTART flag
The AUTO_RESTART flag of HW_RTC_PERSISTENT0 register will
power up the chip automatically 180ms after power down.
This bit must be enabled by the boot loader to ensure the
target can start upon hardware reset or watchdog reset
even when powered from a battery.
Currently the function named 'mxs_power_clear_auto_restart()'
is setting this flag although the 'clear' in its name suggest
the opposite.
This patch renames the function to 'mxs_power_set_auto_restart()'
and removes the comment about EVK revision A which was confusing
because the function indeed was setting the flag.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
SARTRE Leo [Thu, 20 Jun 2013 13:46:50 +0000 (15:46 +0200)]
ARM: Congatec: README update
README: U-boot works both on SPI-NOR and SDcard
Signed-off-by: Leo Sartre <lsartre@adeneo-embedded.com>
Acked-by: Otavio Salvador <otavio@ossystems.com.br>
Marek Vasut [Tue, 27 Aug 2013 21:32:37 +0000 (23:32 +0200)]
tools: mxsboot: Staticize functions
Make remaining non-static functions static and the same for vars.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Marek Vasut [Mon, 26 Aug 2013 18:43:34 +0000 (20:43 +0200)]
tools: Sort lists of files in Makefile
Fix the lists of files so they are in order again.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Tom Rini <trini@ti.com>
Cc: Stefano Babic <sbabic@denx.de>
Marek Vasut [Mon, 26 Aug 2013 18:43:33 +0000 (20:43 +0200)]
ARM: mxs: tools: Add mkimage support for MXS bootstream
Add mkimage support for generating and verifying MXS bootstream.
The implementation here is mostly a glue code between MXSSB v0.4
and mkimage, but the long-term goal is to rectify this and merge
MXSSB with mkimage more tightly. Once this code is properly in
U-Boot, MXSSB shall be deprecated in favor of mkimage-mxsimage
support.
Note that the mxsimage generator needs libcrypto from OpenSSL, I
therefore enabled the libcrypto/libssl unconditionally.
MXSSB: http://git.denx.de/?p=mxssb.git;a=summary
The code is based on research presented at:
http://www.rockbox.org/wiki/SbFileFormat
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Tom Rini <trini@ti.com>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Otavio Salvador <otavio@ossystems.com.br>
Stefano Babic [Thu, 27 Jun 2013 22:20:21 +0000 (00:20 +0200)]
imx: add status reporting for HAB status
Add functions to report the HAB (High Assurance Boot) status
of e.g. i.MX6 CPUs.
This is taken from
git://git.freescale.com/imx/uboot-imx.git branch imx_v2009.08_3.0.35_4.0.0
cpu/arm_cortexa8/mx6/generic.c
include/asm-arm/arch-mx6/mx6_secure.h
Signed-off-by: Stefano Babic <sbabic@denx.de>
Stefano Babic [Thu, 27 Jun 2013 09:42:38 +0000 (11:42 +0200)]
tools: add support for setting the CSF into imximage
Add support for setting the CSF (Command Sequence File) pointer
which is used for HAB (High Assurance Boot) in the imximage by
adding e.g.
CSF 0x2000
in the imximage.cfg file.
This will set the CSF pointer accordingly just after the padded
data image area. The boot_data.length is adjusted with the
value from the imximage.cfg config file.
The resulting u-boot.imx can be signed with the FSL HAB tooling.
The generated CSF block needs to be appended to the u-boot.imx.
Signed-off-by: Stefano Babic <sbabic@denx.de>
Stefano Babic [Mon, 19 Aug 2013 17:03:20 +0000 (19:03 +0200)]
tools: add padding of data image file for imximage
Implement function vrec_header to be able to pad the final
data image file according the what has been calculated for
boot_data.length.
Signed-off-by: Stefano Babic <sbabic@denx.de>
Stefano Babic [Mon, 19 Aug 2013 17:03:19 +0000 (19:03 +0200)]
tools: add variable padding of data image in mkimage
Use previously unused return value of function vrec_header
to return a padding size to generic mkimage. This padding
size is used in copy_files to pad with zeros after copying
the data image.
Signed-off-by: Stefano Babic <sbabic@denx.de>
Stefano Babic [Wed, 26 Jun 2013 21:50:06 +0000 (23:50 +0200)]
tools: dynamically allocate imx_header in imximage
Change to dynamically allocate the imx_header to correctly
allocate the IVT, Boot Data and DCD at correct locations
depending on the boot media.
Also check that the Image Vector Table Offset + IVT +
Boot Data + DCD <= Initial Load Region Size.
Previously struct imx_header was always 4096 bytes and was
not dealing correctly with the Image Vector Table Offset.
Now, the memory allocation looks for e.g. SD boot like this
Storage u-boot.imx RAM
Device
00000000 177ff000 <--------------
|
00000400 00000000 d1 00 20 40 IVT.header
177ff400 <------- |
00000404 00000004 00 00 80 17 IVT.entry
177ff404 ----------- |
00000408 00000008 00 00 00 00 IVT.reserved1
177ff408 | | |
0000040C 0000000C 2c f4 7f 17 IVT.dcd
177ff40C ------ | | |
00000410 00000010 20 f4 7f 17 IVT.boot
177ff410 ---- | | | |
00000414 00000014 00 f4 7f 17 IVT.self
177ff414 -------- | |
00000418 00000018 00 00 00 00 IVT.csf
177ff418 | | | |
0000041C 0000001C 00 00 00 00 IVT.reserved2
177ff41C | | | |
00000420 00000020 00 f0 7f 17 BootData.start
177ff420 <--- | | ---
00000424 00000024 00 60 03 00 BootData.length
177ff424 | |
00000428 00000028 00 00 00 00 BootData.plugin
177ff428 | |
0000042C 0000002C d2 03 30 40 DCD.header
177ff42C <----- |
... |
00001000 00000c00 13 00 00 ea U-Boot Start
17800000 <----------
While at it also remove the unused #define HEADER_OFFSET.
Signed-off-by: Stefano Babic <sbabic@denx.de>
Stefano Babic [Wed, 26 Jun 2013 16:08:37 +0000 (18:08 +0200)]
tools: rename mximage_flash_offset to imximage_ivt_offset
This better reflects the naming from the Reference Manual
as well as fits better since "flash" is not really applicabe
for SATA.
Signed-off-by: Stefano Babic <sbabic@denx.de>
Stefano Babic [Wed, 26 Jun 2013 15:26:27 +0000 (17:26 +0200)]
tools: imx_header should not include flash_offset
Doing a make distclean; make mx6qsabresd_config; make
and hexdump -C u-boot.imx | less
...
00000360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
000003f0 00 00 00 00 00 00 00 00 00 00 00 00 00 04 00 00 |................|
^^^^^^^^^^^
00000400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00001000 13 00 00 ea 14 f0 9f e5 14 f0 9f e5 14 f0 9f e5 |...ê.ð.å.ð.å.ð.å|
...
shows the flash_offset value being written into the final
generated image, wich is not correct.
Instead create flash_offset as static variable such that the
generated image is "clean".
00000360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00001000 13 00 00 ea 14 f0 9f e5 14 f0 9f e5 14 f0 9f e5 |...ê.ð.å.ð.å.ð.å|
Signed-off-by: Stefano Babic <sbabic@denx.de>
Piotr Wilczek [Tue, 25 Jun 2013 07:59:47 +0000 (09:59 +0200)]
drivers:power:max77686: add function to set voltage and mode
This patch add new functions to pmic max77686 to set voltage and mode.
Signed-off-by: Piotr Wilczek <p.wilczek@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Rajeshwari Shinde <rajeshwari.s@samsung.com>
Acked-by: Tom Rini <trini@ti.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
Inderpal Singh [Wed, 21 Aug 2013 05:08:57 +0000 (10:38 +0530)]
exynos5250: arndale: Add mmc support
This patch adds mmc support to the arndale board.
Signed-off-by: Inderpal Singh <inderpal.singh@linaro.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
Chander Kashyap [Wed, 21 Aug 2013 05:08:56 +0000 (10:38 +0530)]
exynos5250: Add arndale board support
Arndale board is based on samsung's exynos5250 soc.
Signed-off-by: Inderpal Singh <inderpal.singh@linaro.org>
Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
Tom Rini [Wed, 28 Aug 2013 16:00:18 +0000 (12:00 -0400)]
siemens-am33x-common.h: Always build CONFIG_OMAP_GPIO support
The MMC driver relies on this block now.
Signed-off-by: Tom Rini <trini@ti.com>
Heiko Schocher [Mon, 19 Aug 2013 14:39:01 +0000 (16:39 +0200)]
arm, am335x: add support for 3 siemens boards
add support for the am335x based boards from siemens:
dxr2:
- DDR3 128MiB
- NAND 256MiB
- Ethernet with external Switch SMSC LAN9303
- no PMIC
- internal Watchdog
- DFU support
pxm2:
- DDR2 512 MiB
- NAND 1024 MiB
- PMIC
- PHY atheros ar803x
- USB Host
- internal Watchdog
- DFU support
rut:
- DDR3 256 MiB
- NAND 256 MiB
- PMIC
- PHY natsemi dp83630
- external Watchdog
- DFU support
Signed-off-by: Heiko Schocher <hs@denx.de>
Signed-off-by: Roger Meier <r.meier@siemens.com>
Signed-off-by: Samuel Egli <samuel.egli@siemens.com>
Cc: Pascal Bach <pascal.bach@siemens.com>
Cc: Tom Rini <trini@ti.com>
Heiko Schocher [Mon, 19 Aug 2013 14:39:00 +0000 (16:39 +0200)]
video: add formike lcd panel init
Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Tom Rini <trini@ti.com>
Acked-by: Anatolij Gustschin <agust@denx.de>
Heiko Schocher [Mon, 19 Aug 2013 14:38:59 +0000 (16:38 +0200)]
arm, am335x: add watchdog support
Add TI OMAP 16xx & 24xx/34xx 32KHz (non-secure) watchdog support.
Signed-off-by: Heiko Schocher <hs@denx.de>
Reviewed-by: Tom Rini <trini@ti.com>
Cc: Albert Aribaud <albert.u.boot@aribaud.net>
Heiko Schocher [Mon, 19 Aug 2013 14:38:58 +0000 (16:38 +0200)]
arm, spl: add watchdog library to SPL
Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Tom Rini <trini@ti.com>
Heiko Schocher [Mon, 19 Aug 2013 14:38:57 +0000 (16:38 +0200)]
arm, am335x: add some missing registers and defines for lcd and epwm support
- add missing register defines in struct cm_perpl
epwmss0clkctrl
epwmss2clkctrl
lcdcclkstctrl
- add missing register defines in struct cm_dpll
clklcdcpixelclk
- add struct pwmss_regs
- add struct pwmss_ecap_regs
- add LCD Controller base LCD_CNTL_BASE
- add PWM0 controller base PWMSS0_BASE
Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Tom Rini <trini@ti.com>
Heiko Schocher [Mon, 19 Aug 2013 14:38:56 +0000 (16:38 +0200)]
arm, am33xx: add defines for gmii_sel_register bits
Signed-off-by: Heiko Schocher <hs@denx.de>
Acked-by: Mugunthan V N <mugunthanvnm@ti.com>
Tom Rini [Tue, 20 Aug 2013 12:53:54 +0000 (08:53 -0400)]
dra7xx_evm: Re-order and comment the networking related config options
Signed-off-by: Tom Rini <trini@ti.com>
Tom Rini [Tue, 20 Aug 2013 12:53:53 +0000 (08:53 -0400)]
omap5_uevm: Better comment why we have TCA642X and the reset time
Signed-off-by: Tom Rini <trini@ti.com>
Tom Rini [Tue, 20 Aug 2013 12:53:52 +0000 (08:53 -0400)]
TI:omap5: Clarify comments about SPL and DDR timings in common config
Signed-off-by: Tom Rini <trini@ti.com>
Tom Rini [Tue, 20 Aug 2013 12:53:51 +0000 (08:53 -0400)]
TI:am33xx: Move SPL YMODEM support to the per-board config
Signed-off-by: Tom Rini <trini@ti.com>
Tom Rini [Tue, 20 Aug 2013 12:53:50 +0000 (08:53 -0400)]
am335x_evm: Update README for customization
As this is a reference platform, update the README to note which IP
blocks are required for use due to design choices of the reference
rather than required by the SoC itself.
Signed-off-by: Tom Rini <trini@ti.com>
Tom Rini [Tue, 20 Aug 2013 12:53:49 +0000 (08:53 -0400)]
TI:armv7: Re-order slightly the generic CONFIG options, expand related comments
Re-group the general options to note things that can be removed safely
to reduce binary size when not required, and expand the comment about
what commands we do include to note it could be replaced with a specific
list of required one. While at it, move the CMD parts of various
blocks IP to the end of the list for consistency.
Signed-off-by: Tom Rini <trini@ti.com>
Tom Rini [Tue, 20 Aug 2013 12:53:48 +0000 (08:53 -0400)]
am335x_evm: Regroup USB options
Signed-off-by: Tom Rini <trini@ti.com>
Tom Rini [Tue, 20 Aug 2013 12:53:47 +0000 (08:53 -0400)]
am335x_evm: Add comment by SPL SPI support
Signed-off-by: Tom Rini <trini@ti.com>
Tom Rini [Tue, 20 Aug 2013 12:53:46 +0000 (08:53 -0400)]
TI:am335x: Better comment and organize the networking related options
While in here, drop CONFIG_BOOTP_DEFAULT as it is unused in the code.
Signed-off-by: Tom Rini <trini@ti.com>
Tom Rini [Tue, 20 Aug 2013 12:53:45 +0000 (08:53 -0400)]
omap5: Expand CONFIG_SPL_MAX_SIZE and comment upon SRAM_SCRATCH_SPACE_ADDR
After examining both TRMs and doing some experimentation, we can rely on
using the start of the download area for CONFIG_SPL_TEXT_BASE and then
move SRAM_SCRATCH_SPACE_ADDR up, just like am335x. This is required for
peripheral boot modes such as UART.
Signed-off-by: Tom Rini <trini@ti.com>