kernel/u-boot.git
11 years agomx28evk: Propagate the error if cpu_eth_init() fails
Fabio Estevam [Fri, 20 Sep 2013 19:30:49 +0000 (16:30 -0300)]
mx28evk: Propagate the error if cpu_eth_init() fails

If cpu_eth_init() fails we should return the error immediately.

Cc: Marek Vasut <marex@denx.de>
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Marek Vasut <marex@denx.de>
11 years agomx28evk: Propagate the error if cpu_eth_init() fails
Fabio Estevam [Fri, 20 Sep 2013 19:30:48 +0000 (16:30 -0300)]
mx28evk: Propagate the error if cpu_eth_init() fails

If cpu_eth_init() fails we should return the error immediately.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
11 years agotools/imximage.c: Fix compiling warning
York Sun [Fri, 20 Sep 2013 19:24:44 +0000 (12:24 -0700)]
tools/imximage.c: Fix compiling warning

Convert set_hdr_func(struct imx_header *imxhdr) to set_hdr_func(void)
to get rid of the warning

warning: ‘imxhdr’ is used uninitialized in this function

Signed-off-by: York Sun <yorksun@freescale.com>
Acked-by: Stefano Babic <sbabic@denx.de>
11 years agonet: fec_mxc: Fix timeouts during tftp transfer
Fabio Estevam [Wed, 18 Sep 2013 02:13:10 +0000 (23:13 -0300)]
net: fec_mxc: Fix timeouts during tftp transfer

Performing tftp transfers on mx28 results in random timeouts.

Hector Palacios and Robert Hodaszi analyzed the root cause being related to the
wrong alignment of the 'buff' buffer inside fec_recv().

Benoît Thébaudeau provided an excellent analysis of the alignment bug that is
present on older versions, such as GCC 4.5.4:

http://marc.info/?l=u-boot&m=137942904906131&w=2

Use ALLOC_CACHE_ALIGN_BUFFER() to avoid alignment issues from older GCC
versions.

Reported-by: Hector Palacios <hector.palacios@digi.com>
Tested-by: Oliver Metz <oliver@freetz.org>
Tested-by: Hector Palacios <hector.palacios@digi.com>
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Marek Vasut <marex@denx.de>
Tested-by: Marek Vasut <marex@denx.de>
11 years agomx6sabresd: Fix the fdt file for the mx6dl version
Fabio Estevam [Wed, 18 Sep 2013 01:55:59 +0000 (22:55 -0300)]
mx6sabresd: Fix the fdt file for the mx6dl version

We need to load 'imx6dl-sabresd.dtb' in the mx6dl version.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Otavio Salvador <otavio@ossystems.com.br>
11 years agodoc: README.mxs: Add instruction to install 'libssl-dev'
Fabio Estevam [Mon, 16 Sep 2013 14:25:55 +0000 (11:25 -0300)]
doc: README.mxs: Add instruction to install 'libssl-dev'

Since commit bce883707 (ARM: mxs: tools: Add mkimage support for MXS bootstream)
the following build error is seen when doing a MAKEALL build:

$ ./MAKEALL mx28evk
Configuring for mx28evk - Board: mx28evk, Options: ENV_IS_IN_MMC
mxsimage.c:18:25: fatal error: openssl/evp.h: No such file or directory

Add an entry about the need of installing the 'libssl-dev' package.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Marek Vasut <marex@denx.de>
11 years agomx28evk: Fix checkpatch warning
Fabio Estevam [Sat, 14 Sep 2013 22:34:17 +0000 (19:34 -0300)]
mx28evk: Fix checkpatch warning

Fix the following checkpatch warning:

$ ./tools/checkpatch.pl -F board/freescale/mx28evk/mx28evk.c
CHECK: Alignment should match open parenthesis
#109: FILE: freescale/mx28evk/mx28evk.c:109:
+ writel(CLKCTRL_ENET_TIME_SEL_RMII_CLK | CLKCTRL_ENET_CLK_OUT_EN,
+ &clkctrl_regs->hw_clkctrl_enet);

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
11 years agoi.MX6DL/S: add drive-strength back to pads DISP0_DAT2/DAT10
Eric Nelson [Fri, 13 Sep 2013 16:19:21 +0000 (09:19 -0700)]
i.MX6DL/S: add drive-strength back to pads DISP0_DAT2/DAT10

This patch fixes a regression introduced by commit 87d720e0.

Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
Acked-by: Otavio Salvador <otavio@ossystems.com.br>
11 years agomx6slevk: Add Ethernet support
Fabio Estevam [Fri, 13 Sep 2013 03:36:28 +0000 (00:36 -0300)]
mx6slevk: Add Ethernet support

mx6slevk has a SMSC8720 connected in RMII mode.

Add support for it.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
11 years agonet: fec_mxc: Add support for mx6 solo-lite
Fabio Estevam [Fri, 13 Sep 2013 03:36:27 +0000 (00:36 -0300)]
net: fec_mxc: Add support for mx6 solo-lite

Similarly as mx25 and mx53, mx6solo-lite needs to setup the MII gasket for RMII
mode.

Add support for mx6solo-lite.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
11 years agomx6qsabreauto: Return error if cpu_eth_init() fails
Fabio Estevam [Fri, 13 Sep 2013 01:03:23 +0000 (22:03 -0300)]
mx6qsabreauto: Return error if cpu_eth_init() fails

Currently board_eth_init() always return 0, but we should propagate the error
when cpu_eth_init() fails.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
11 years agomx6sabresd: Return error if cpu_eth_init() fails
Fabio Estevam [Fri, 13 Sep 2013 01:03:22 +0000 (22:03 -0300)]
mx6sabresd: Return error if cpu_eth_init() fails

Currently board_eth_init() always return 0, but we should propagate the error
when cpu_eth_init() fails.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
11 years agomx35pdk: Remove CONFIG_SYS_CACHELINE_SIZE
Fabio Estevam [Thu, 12 Sep 2013 19:56:34 +0000 (16:56 -0300)]
mx35pdk: Remove CONFIG_SYS_CACHELINE_SIZE

In arch/arm/cpu/arm1136/cpu.c we have:

#ifndef CONFIG_SYS_CACHELINE_SIZE
#define CONFIG_SYS_CACHELINE_SIZE 32
#endif

,so there is no need to define 'CONFIG_SYS_CACHELINE_SIZE' with the default
size in the board config file.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
11 years agommc: fsl_esdhc: Check the result from malloc()
Fabio Estevam [Thu, 12 Sep 2013 13:35:52 +0000 (10:35 -0300)]
mmc: fsl_esdhc: Check the result from malloc()

malloc can fail, so we should better check its return value before using it.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
11 years agomx6sabresd: Reset counter to prevent error message
Fabio Estevam [Wed, 11 Sep 2013 21:14:30 +0000 (18:14 -0300)]
mx6sabresd: Reset counter to prevent error message

If a HDMI cable is not connected, the following message is seen on boot:

CPU:   Freescale i.MX6Q rev1.1 at 792 MHz
Reset cause: POR
Board: MX6-SabreSD
DRAM:  1 GiB
MMC:   FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2
No panel detected: default to HDMI
unsupported panel HDMI

Reset the 'i' variable to fix the 'unsupported panel' message.

This follows the same idea of commit 47ac53d7ae (imx: nitrogen6x/mx6qsabrelite:
Fix bug in board_video_skip).

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
11 years agomx6sabresd: Avoid hang when HDMI cable is not connected
Fabio Estevam [Wed, 11 Sep 2013 21:14:29 +0000 (18:14 -0300)]
mx6sabresd: Avoid hang when HDMI cable is not connected

Since commit d9b894603 (mx6sabresd: Add LVDS splash screen support) the
following hang happens if the HDMI cable is not connected or the 'panel'
variable is not set:

U-Boot 2013.10-rc2-12978-g47ac53d-dirty (Sep 11 2013 - 15:07:38)

CPU:   Freescale i.MX6Q rev1.2 at 792 MHz
Reset cause: POR
Board: MX6-SabreSD
DRAM:  1 GiB
MMC:   FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2
...

Provide a check to 'dev->detect' in order to prevent the hang.

Reported-by: Pardeep Kumar Singla <b45784@freescale.com>
Suggested-by: Eric Bénard <eric@eukrea.com>
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
11 years agoARM: arch-mx6: fix PLL2_PFD2_FREQ
Markus Niebel [Wed, 11 Sep 2013 13:30:14 +0000 (15:30 +0200)]
ARM: arch-mx6: fix PLL2_PFD2_FREQ

according to the manual frequency of PLL2 PFD2 is 396.000.000
instead of 400.000.000

Signed-off-by: Markus Niebel <Markus.Niebel@tqs.de>
Acked-by: Stefano Babic <sbabic@denx.de>
11 years agowandboard: Use imx6dl-wandboard.dtb for the solo version
Fabio Estevam [Mon, 9 Sep 2013 21:28:07 +0000 (18:28 -0300)]
wandboard: Use imx6dl-wandboard.dtb for the solo version

The wandboard solo version should boot the 'imx6dl-wandboard.dtb' file, since
dual-lite and solo variants are the same SoC with only the number of cores being
different.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
11 years agoMerge branch 'master' of git://git.denx.de/u-boot-arm
Stefano Babic [Fri, 13 Sep 2013 10:04:54 +0000 (12:04 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-arm

Conflicts:
MAINTAINERS
boards.cfg

Signed-off-by: Stefano Babic <sbabic@denx.de>
11 years agoRevert "standalone-examples: support custom GCC lib"
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>
11 years agoMerge and reformat boards.cfg and MAINTAINERS
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>
11 years agoMerge branch 'master' of git://git.denx.de/u-boot-arm
Tom Rini [Thu, 12 Sep 2013 13:08:24 +0000 (09:08 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-arm

11 years agoMerge branch 'u-boot-samsung/master' into 'u-boot-arm/master'
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

11 years agoapf27: add FPGA support for the apf27 board
trem [Tue, 10 Sep 2013 20:08:40 +0000 (22:08 +0200)]
apf27: add FPGA support for the apf27 board

Signed-off-by: Philippe Reynes <tremyfr@yahoo.fr>
Signed-off-by: Eric Jarrige <eric.jarrige@armadeus.org>
Acked-by: Stefano Babic <sbabic@denx.de>
11 years agoapf27: add support for the armadeus APF27 board
trem [Tue, 10 Sep 2013 20:08:39 +0000 (22:08 +0200)]
apf27: add support for the armadeus APF27 board

Signed-off-by: Philippe Reynes <tremyfr@yahoo.fr>
Signed-off-by: Eric Jarrige <eric.jarrige@armadeus.org>
Signed-off-by: Nicolas Colombain <nicolas.colombain@armadeus.com>
11 years agomxs_nand: Fix ECC strength for NAND flash with OOB size of 224
Elie De Brauwer [Sat, 24 Aug 2013 14:51:24 +0000 (16:51 +0200)]
mxs_nand: Fix ECC strength for NAND flash with OOB size of 224

On a board with an i.mx28 and a Micron MT29F4G08ABAEAH4, Linux says:

NAND device: Manufacturer ID: 0x2c, Chip ID: 0xdc (Micron MT29F4G08ABAEAH4),
512MiB, page size: 4096, OOB size: 224) the ECC strength is 16.

root@(none):/sys/devices/virtual/mtd/mtd0# for i in ecc_strength oobsize subpagesize; do echo $i = `cat $i`; done
ecc_strength = 16
oobsize = 224
subpagesize = 4096

The ECC strength was not properly discovered by U-Boot causing the data
written by Linux to return an -74 (EBADMSG) when read from U-Boot. This
patch fixes mxs_nand_get_ecc_strength() to function in case of a NAND
flash with page_data_size = 4096 and page_oob_size= 224.

Signed-off-by: Elie De Brauwer <eliedebrauwer@gmail.com>
Acked-by: Scott Wood <scottwood@freescale.com>
11 years agoarm:goni:mmc: Add sd card detection and initialization.
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>
11 years agoarm:mmc:goni/exynos: Fix wrong mmc base register devices offset.
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>
11 years agodts: samsung: arndale: Fix include path
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>
11 years agoimx: nitrogen6x/mx6qsabrelite: Fix bug in board_video_skip
Robert Winkler [Thu, 13 Jun 2013 18:32:22 +0000 (11:32 -0700)]
imx: nitrogen6x/mx6qsabrelite: Fix bug in board_video_skip

Signed-off-by: Robert Winkler <robert.winkler@boundarydevices.com>
11 years agoARM: mxs: Add SanDisk Sansa Fuze+ board
Marek Vasut [Sat, 31 Aug 2013 13:53:46 +0000 (15:53 +0200)]
ARM: mxs: Add SanDisk Sansa Fuze+ board

Add STMP3780-based Sansa Fuze+ board. This board is a small PMP
device sporting a CPU which was later rebranded to i.MX233 .
Currently supported is USB gadget mode and MMC .

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Otavio Salvador <otavio@ossystems.com.br>
Cc: Stefano Babic <sbabic@denx.de>
11 years agoARM: mxs: Add Creative ZEN XFi3 board
Marek Vasut [Sat, 31 Aug 2013 13:53:45 +0000 (15:53 +0200)]
ARM: mxs: Add Creative ZEN XFi3 board

Add STMP3780-based XFi3 board. This board is a small PMP device
sporting a CPU which was later rebranded to i.MX233 . Currently
supported is USB gadget mode and both external SD and internal
Phison SD-NAND bridge .

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Otavio Salvador <otavio@ossystems.com.br>
Cc: Stefano Babic <sbabic@denx.de>
11 years agomx27: add missing constant for mx27
trem [Fri, 6 Sep 2013 15:33:45 +0000 (17:33 +0200)]
mx27: add missing constant for mx27

Add some missing constant (chip select, ...)

Signed-off-by: Philippe Reynes <tremyfr@yahoo.fr>
Signed-off-by: Eric Jarrige <eric.jarrige@armadeus.org>
Acked-by: Stefano Babic <sbabic@denx.de>
11 years agomx6sabresd: Add LVDS splash screen support
Fabio Estevam [Wed, 4 Sep 2013 18:12:38 +0000 (15:12 -0300)]
mx6sabresd: Add LVDS splash screen support

mx6sabresd boards can be connected to a Hannstar XGA LVDS panel.

Add support for displaying U-boot splashscreen on it.

By default, HDMI splash is selected.

In order to use splash via LVDS, do the following in the U-boot prompt:

setenv panel Hannstar-XGA
save

and reboot.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
11 years agoARM: mxs: Receive r0 and r1 passed from BootROM
Marek Vasut [Sat, 31 Aug 2013 13:53:44 +0000 (15:53 +0200)]
ARM: mxs: Receive r0 and r1 passed from BootROM

Make sure value in register r0 and r1 is preserved and passed to
the board_init_ll() and mxs_common_spl_init() where it can be
processed further. The value in r0 can be configured during the
BootStream generation to arbitary value, r1 contains pointer to
return value from CALL'd function.

This patch also clears the value in r0 before returning to BootROM
to make sure the BootROM is not confused by this value.

Finally, this patch cleans up some comments in the start.S file.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
11 years agoARM: mxs: Document the power block initialization
Marek Vasut [Sat, 31 Aug 2013 13:53:43 +0000 (15:53 +0200)]
ARM: mxs: Document the power block initialization

This patch adds documentation for the functions used during the
initialization of MXS power block.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
11 years agoARM: mxs: Sort the mx23evk and mx23_olinuxino
Marek Vasut [Sat, 31 Aug 2013 13:53:42 +0000 (15:53 +0200)]
ARM: mxs: Sort the mx23evk and mx23_olinuxino

These boards were not sortes in the boards.cfg, fix this.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Otavio Salvador <otavio@ossystems.com.br>
11 years agotools: mxsboot: Mark the FCB pages as valid
Marek Vasut [Tue, 27 Aug 2013 21:32:38 +0000 (23:32 +0200)]
tools: mxsboot: Mark the FCB pages as valid

Without this marker, Linux will complain that the NAND pages with
FCB are invalid.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
11 years agomx6: Fix calculation of emi_slow clock rate
Andrew Gabbasov [Thu, 4 Jul 2013 11:27:32 +0000 (06:27 -0500)]
mx6: Fix calculation of emi_slow clock rate

This is porting of Freescale's patch from version imx_v2009.08_3.0.35_4.0.0,
that fixes the obvious mistype of bits offset macro name (ACLK_EMI_PODF_OFFSET
was used instead of ACLK_EMI_SLOW_PODF_OFFSET).

Using the occasion, change the variable name 'emi_slow_pof' to more consistent
'emi_slow_podf'.

Signed-off-by: Jason Liu <r64343@freescale.com>
Signed-off-by: Andrew Gabbasov <andrew_gabbasov@mentor.com>
Acked-by: Dirk Behme <dirk.behme@de.bosch.com>
11 years agoMerge branch 'master' of git://www.denx.de/git/u-boot-ppc4xx
Tom Rini [Mon, 9 Sep 2013 13:59:30 +0000 (09:59 -0400)]
Merge branch 'master' of git://denx.de/git/u-boot-ppc4xx

11 years agoMerge branch 'master' of git://git.denx.de/u-boot-i2c
Tom Rini [Mon, 9 Sep 2013 13:35:38 +0000 (09:35 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-i2c

11 years agopowerpc/mpc85xx: Fix the I2C bus speed error on p1022
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>
11 years agoSPL: P1022DS: switch to new multibus/multiadapter support
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>
11 years agoppc4xx: Fix GPIO handling in lwmon5 and lcd4_lwmon5 BSP
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>
11 years agoMerge branch 'master' of git://git.denx.de/u-boot-arm
Tom Rini [Sat, 7 Sep 2013 00:25:35 +0000 (20:25 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-arm

11 years agocam_enc_4xx: Move CONFIG_SPL_PAD_TO to a config header
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>
11 years agoconfig.mk: Delete unnecessary code
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>
11 years agofw_env: fix writing environment for mtd devices
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>
11 years agofw_env: add redundant env support for MTD_ABSENT
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>
11 years agomail: Fix email address
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>
11 years agoAlways build u-boot.img when using CONFIG_SPL_FRAMEWORK
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>
11 years agoahci: convert to use libata functions and definitions
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>
11 years agoahci: increase spin-up timeout to 20 sec
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>
11 years agoahci: handle COMINIT received during spin-up
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>
11 years agoahci: move link bring-up handling to separate function
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>
11 years agoahci: add defines for PORT_SCR_STAT register bits
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>
11 years agoahci: fix memory leak in ata_scsiop_inquiry
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>
11 years agoahci: fix unaligned access
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>
11 years agoahci: use ports implemented map instead of num_ports
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>
11 years agostandalone-examples: support custom GCC lib
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>
11 years agofs: fat: don't call disk_write with zero sector num
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>
11 years agocompiler_gcc: do not redefine __gnu_attributes
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>
11 years agogit-mailrc: Update MMC custodian
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>
11 years agoMerge branch 'master' of git://git.denx.de/u-boot-nios
Tom Rini [Fri, 6 Sep 2013 13:37:04 +0000 (09:37 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-nios

11 years agoam335x_evm.h: Add back the actual load of the kernel image
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>
11 years agosocfpga: Creating driver for Reset Manager
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>
11 years agosocfpga: Adding configuration for development kit
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>
11 years agonios2: fix missing comment terminator from SPDX License commit
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>
11 years agoarm: lds: Remove libgcc eabi exception handling tables
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>
11 years agoMerge branch 'u-boot-atmel/master' into 'u-boot-arm/master'
Albert ARIBAUD [Thu, 5 Sep 2013 10:04:49 +0000 (12:04 +0200)]
Merge branch 'u-boot-atmel/master' into 'u-boot-arm/master'

11 years agoMerge branch 'u-boot-imx/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.

11 years agoARM: atmel: sama5d3: drop unused CONFIG_NET_MULTI
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>
11 years agomtd: atmel_nand: pmecc: fix bug fail to correct bit error in 1024-bytes sector
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>
11 years agoMerge branch 'u-boot-ti/master' into 'u-boot-arm/master'
Albert ARIBAUD [Wed, 4 Sep 2013 12:06:56 +0000 (14:06 +0200)]
Merge branch 'u-boot-ti/master' into 'u-boot-arm/master'

11 years agoMerge branch 'u-boot-atmel/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'

11 years agobootm: allow correct bounds-check of destination
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>
11 years agolzo: correctly bounds-check output buffer
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>
11 years agolzma: correctly bounds-check output buffer
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>
11 years agogzip: correctly bounds-check output buffer
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>
11 years agodocumentation: add more compression configs
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>
11 years agosandbox: add compression tests
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>
11 years agosandbox: Correct compiler warnings in cmd_bootm/cmd_ximg
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>
11 years agoMerge branch 'u-boot-tegra/master' into 'u-boot-arm/master'
Albert ARIBAUD [Tue, 3 Sep 2013 12:59:18 +0000 (14:59 +0200)]
Merge branch 'u-boot-tegra/master' into 'u-boot-arm/master'

11 years agoMerge 'u-boot-microblaze/zynq' 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.

11 years agoPrepare v2013.10-rc2 v2013.10-rc2
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>
11 years agoi.MX6: Set and clear the gating bits for Phase Fractional Dividers
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>
11 years agoi.MX6: nitrogen6x: Don't bother setting PLL3(480) PFD1 divisor
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>
11 years agoi.MX6: Correct ANATOP_PFD (Phase Fractional Divider) register declarations
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>
11 years agoi.MX6: Add convenience macros cpu_type(rev) and is_cpu_type(cpu)
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>
11 years agoARM: mxs: rename function that sets AUTO_RESTART flag
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>
11 years agoARM: Congatec: README update
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>
11 years agotools: mxsboot: Staticize functions
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>
11 years agotools: Sort lists of files in Makefile
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>
11 years agoARM: mxs: tools: Add mkimage support for MXS bootstream
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>
11 years agoimx: add status reporting for HAB status
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>
11 years agotools: add support for setting the CSF into imximage
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>
11 years agotools: add padding of data image file for imximage
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>
11 years agotools: add variable padding of data image in mkimage
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>
11 years agotools: dynamically allocate imx_header in imximage
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>
11 years agotools: rename mximage_flash_offset to imximage_ivt_offset
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>