oweals/u-boot.git
8 years agoenv_ubi.c: Correct pointer error in env load
Kevin Smith [Fri, 23 Oct 2015 17:51:47 +0000 (17:51 +0000)]
env_ubi.c: Correct pointer error in env load

The variable "buf" in this function is a char array, and the
function ubi_volume_read is expecting a char *.  In the call, the
address of the pointer is being taken, incorrectly passing a
char **.  The compiler warning was being silenced by the cast.
Remove the address operator and the cast.

Signed-off-by: Kevin Smith <kevin.smith@elecsyscorp.com>
Cc: Joe Hershberger <joe.hershberger@ni.com>
Cc: Tom Rini <trini@konsulko.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
8 years agoitest: add missing break statements to evalexp()
Stephen Warren [Tue, 17 Nov 2015 17:29:08 +0000 (10:29 -0700)]
itest: add missing break statements to evalexp()

The commit mentioned below replaced return statements inside a switch so
that other code could be called after the switch. However, it didn't add
any break statements, causing the cases to run together. Fix this.

Reported-by: Coverity (CID 132282, 132283)
Fixes: 7861204c9af7 ("itest: make memory access work under sandbox")
Signed-off-by: Stephen Warren <swarren@nvidia.com>
8 years agotest: fat: add error-checking to non-contig test
Stephen Warren [Tue, 17 Nov 2015 17:29:07 +0000 (10:29 -0700)]
test: fat: add error-checking to non-contig test

Check the result code of all command that are executed. Without this,
if the fallocate invocation fails (this feature is not supported on ext3
filesystems for example) then a zero-length output file will be created,
and subsequent the mkfs and mount invocations will fail, which will cause
the subsequent dd invocation to attempt to fill up the host's entire free
disk space. That's not a nice user experience!

Related, if fallocate does fail, try to create the test disk image using
dd instead. That should work everywhere.

Fixes: 4a28274227d0 ("test: fat: add test of non-contiguous file reads")
Signed-off-by: Stephen Warren <swarren@nvidia.com>
8 years agoFix sandbox build on Ubuntu 10.04
Stephen Warren [Sun, 15 Nov 2015 06:53:49 +0000 (23:53 -0700)]
Fix sandbox build on Ubuntu 10.04

gcc 4.4.3 (which is the default native compiler on x86-64 Ubuntu 10.04)
doesn't seem to like initializers for sub-fields of anonymous unions.
Solve this by replacing the initialization with an assignment. This
fixes:

lib/lz4_wrapper.c: In function ‘ulz4fn’:
lib/lz4_wrapper.c:97: error: unknown field ‘raw’ specified in initializer

Signed-off-by: Stephen Warren <swarren@wwwdotorg.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
Acked-by: Simon Glass <sjg@chromium.org>
8 years agokm/powerpc: fix ft_board_setup prototype for km82xx & km83xx
Valentin Longchamp [Tue, 17 Nov 2015 09:53:38 +0000 (10:53 +0100)]
km/powerpc: fix ft_board_setup prototype for km82xx & km83xx

Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
8 years agopowerpc/83xx: add support for kmtegr1 board
Valentin Longchamp [Tue, 17 Nov 2015 09:53:37 +0000 (10:53 +0100)]
powerpc/83xx: add support for kmtegr1 board

This board uses the same CPU (8309) as VECT1. The memory however is
different since it has NAND Flash, the NOR Flash partitioning is
different and of course the FPGAs as well.

Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
Signed-off-by: Christoph Dietrich <christoph.dietrich@keymile.com>
8 years agokm8309: change the default QE_FW address
Valentin Longchamp [Tue, 17 Nov 2015 09:53:36 +0000 (10:53 +0100)]
km8309: change the default QE_FW address

It should be after the u-boot reserved sectors and before the env
sectors, since the solution used for kmvect1 (tell the linker to put the
firmware into the u-boot produced binary, at the end of the area) should
be the exception.

The #define is only "conditional" so that we can still support kmvect1.

Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
8 years agokm83xx: use CONFIG_ENV_ADDR for the newenv env command
Valentin Longchamp [Tue, 17 Nov 2015 09:53:35 +0000 (10:53 +0100)]
km83xx: use CONFIG_ENV_ADDR for the newenv env command

The hardcoded value are bad, since the address could change between
different boards.

Furthermore, the relevant #defines are set only if #undefined here, so
that they can be changed by some boards if required.

Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
8 years agoboard/keymile/km82xx: setting dip_switch 3 and 4 will run bootloader
Bagavathiannan Palanisamy [Tue, 17 Nov 2015 09:53:34 +0000 (10:53 +0100)]
board/keymile/km82xx: setting dip_switch 3 and 4 will run bootloader

Setting dip_switch 3 and 4 also will run bootloader in COGE3 and COGE6
It is required remove local mgmt IP address, when DIP Switch PIN3 is
enabled. DIP Switch 4 also enabled to avoid u-boot update in future
for DIP switch enhancements.

Signed-off-by: Bagavathiannan Palanisamy <Bagavathiannan.Palanisamy@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
8 years agopowerpc/km8360: fix the ODT parameters for CS0
Valentin Longchamp [Tue, 17 Nov 2015 09:53:33 +0000 (10:53 +0100)]
powerpc/km8360: fix the ODT parameters for CS0

The ODT parameters for km8360 set the ODT_WR_ACS bit in u-boot KM-2011.09
that is used in the release bootpackage for kmcoge5ne. During the
transition from the kmeter1 to km8360 this was changed to
ODT_RD_ONLY_CURRENT, which is uncorrect and causes faulty RAM accesses at
low temperatures.

This is now changed to ODT_WR_ONLY_CURRENT which is the equivalent of
ODT_WR_ACS.

Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
8 years agopowerpc/km8309: define CONFIG_SYS_DDRCDR
Valentin Longchamp [Tue, 17 Nov 2015 09:53:32 +0000 (10:53 +0100)]
powerpc/km8309: define CONFIG_SYS_DDRCDR

For consistency with all the other km83xx plaforms, this should also be
defined for km8309. The same settings as for km8321 are taken.

Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
8 years agopowerpc/km8321: define CONFIG_SYS_DDRCDR
Valentin Longchamp [Tue, 17 Nov 2015 09:53:31 +0000 (10:53 +0100)]
powerpc/km8321: define CONFIG_SYS_DDRCDR

On the km8321 boards is CONFIG_SYS_DDRCDR not defined, which leads to
the DDRCDR not being configured at startup and still containing the
reset value.

The required settings for our km8321 hardware designs are different than
the reset value and must be set with CONFIG_SYS_DDRCDR, that is used
by mpc83xx's cpu_init_f function at early CPU initialization.

The important settings are the DDR2 internal voltage level and the
half-strength "drivers".

In our case where the DRAM chips are soldered on board and the routing
for these signals under control, half-strength is sufficient as a few
measurements done in the lasts have shown. Since all the hardware
qualification tests have been performed with half strength, the nominal
strength settings are removed in favor of the default reset half
strength settings.

Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
8 years agokm/powerpc82xx: remove unused function
Holger Brunck [Tue, 17 Nov 2015 09:53:30 +0000 (10:53 +0100)]
km/powerpc82xx: remove unused function

commit 0a4f88b98 removed the usage of our setports function, but the
function itself were not removed. So toss it it's dead code.

Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
8 years agokm/powerpc: remove unneeded defines
Holger Brunck [Tue, 17 Nov 2015 09:53:29 +0000 (10:53 +0100)]
km/powerpc: remove unneeded defines

We use CONFIG_OF_LIBFDT and CONFIG_OF_BOARD_SETUP on all our powerpc
targets, so there is no need to check these defines within our C code.

Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
8 years agokm/powerpc: move open firmware defines to km-powerpc.h
Holger Brunck [Tue, 17 Nov 2015 09:53:28 +0000 (10:53 +0100)]
km/powerpc: move open firmware defines to km-powerpc.h

We use the same settings for open firmware defines on all our powerpc
targets, so move them from the CPU specific headers to the common
powerpc header.

Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
8 years agokm/powerpc: increase space for kernel imange and FDT blob
Holger Brunck [Tue, 17 Nov 2015 09:53:27 +0000 (10:53 +0100)]
km/powerpc: increase space for kernel imange and FDT blob

128kByte and 3,986MB may be in the future too little for kernel the fdt
blob respectively the kernel image. So increase the reserved areas here,
we have the space for this.

Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
8 years agopowerpc/82xx/km: add testpin detection for mgcoge3ne
Holger Brunck [Tue, 17 Nov 2015 09:53:26 +0000 (10:53 +0100)]
powerpc/82xx/km: add testpin detection for mgcoge3ne

On mgcoge3ne we also want to start the test application if the testpin
is asserted. But we don't have a full POST test support yet. So simply
add a function to read the testpin value.

Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
8 years agopowerpc/82xx: make set/get_pin for km82xx more flexible
Holger Brunck [Tue, 17 Nov 2015 09:53:25 +0000 (10:53 +0100)]
powerpc/82xx: make set/get_pin for km82xx more flexible

The get_pin and set_pin funciton was only used for pins on Port D and
therefore the value was hard coded in the function. Enhance this with a
parameter, that we are able to use this functions for other ports too.

Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
8 years agopowerpc/83xx: add support for kmtepr2 board
Christoph Dietrich [Tue, 17 Nov 2015 09:53:24 +0000 (10:53 +0100)]
powerpc/83xx: add support for kmtepr2 board

This board is similar to TUXX1, but it has differend FPGAs.

Signed-off-by: Christoph Dietrich <christoph.dietrich@keymile.com>
Signed-off-by: Andreas Huber <andreas.huber@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
8 years agokm/scripts: search for kernel/DTBs at serverip:/PRODUCTNAME via TFTP in develop mode
Tobias Müller [Fri, 13 Nov 2015 15:15:22 +0000 (16:15 +0100)]
km/scripts: search for kernel/DTBs at serverip:/PRODUCTNAME via TFTP in develop mode

Search for the kernel and DTBs in a folder named PRODUCTNAME (found in the IVM)
at the TFTP server instead of the u-boot boardname.

Signed-off-by: Tobias Müller <Tobias.Mueller@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
8 years agokm/scripts: load fdt_bid_kwkey.dtb when working with tftp
Holger Brunck [Fri, 13 Nov 2015 15:15:21 +0000 (16:15 +0100)]
km/scripts: load fdt_bid_kwkey.dtb when working with tftp

When loading the dtb file via tftp we should load the one which matches
boardId and hwKey and not a common one for the boardname. We have boards
were different hwKeys are used and then we may load an incorrect dtb
file. If no fdt_bid_kwkey.dtb file is not a fallback to boardname.dtb is used.

Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
Signed-off-by: Tobias Müller <Tobias.Mueller@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
8 years agokm: update the boot script to check for a DTB
Valentin Longchamp [Fri, 13 Nov 2015 15:15:20 +0000 (16:15 +0100)]
km: update the boot script to check for a DTB

If a DTB is found with cramfsls, the bootscript continues as expected.
If none is found, the cramfsloadfdt and boot subbootcmds are updated to
not load the DTB from cramfs and not pass it to the kernel. The kernel
thus must have an appended DTB otherwise the boot will fail.

This is required for the km_kirkwood boards that must support .esw where
the DTB sometimes is appended (for backwards compatibility) and sometimes
is passed correctly (as we do now for all newer boards).

Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
8 years agokm/common: stop u-boot only if someone press <SPACE>
Holger Brunck [Fri, 13 Nov 2015 15:15:19 +0000 (16:15 +0100)]
km/common: stop u-boot only if someone press <SPACE>

To prevent u-boot to stop accidently e.g. due to line noise on the
serial line, we now use the option CONFIG_AUTOBOOT_KEYED. We choose the
<SPACE> key for this.

Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
8 years agoarm/km_kirkwood: fix the #ifdef for KM_COGE5UN dip switch
Valentin Longchamp [Fri, 13 Nov 2015 14:01:17 +0000 (15:01 +0100)]
arm/km_kirkwood: fix the #ifdef for KM_COGE5UN dip switch

There was a small typo for KM_COGE5UN that resulted in the dip switch
not to behave as expected.

Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
8 years agoarm/mgcoge3un: check dip_switch at startup
Holger Brunck [Fri, 13 Nov 2015 14:01:16 +0000 (15:01 +0100)]
arm/mgcoge3un: check dip_switch at startup

Similar to kmcoge5un we need to check the dip switch at startup
connected to the kirkwood at MPP43. If it's set we need to set the
actual_bank to zero to boot from SW bank zero. Additional to kmcoge5un
we need to check also the pin in misc_init to decide wether we wait for
the ne to start or not. If the dip_switch is set we don't wait and
continue immediately.

Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
8 years agoarm/km: Fix LED configuration for 88E1118R PHY (PIGGY3)
Tobias Müller [Fri, 13 Nov 2015 14:01:15 +0000 (15:01 +0100)]
arm/km: Fix LED configuration for 88E1118R PHY (PIGGY3)

Configure PHY LED register for Marvell 88E1118R PHY used on PIGGY3 to
match with printed descriptions on PCB

Signed-off-by: Tobias Müller <Tobias.Mueller@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
[trini: Fix typo, CRTL_PAGE -> CTRL_PAGE]
Signed-off-by: Tom Rini <trini@konsulko.com>
8 years agoarm/km_kirkwood: remove KM_ENV_BUS and use CONFIG_I2C_ENV_EEPROM_BUS
Valentin Longchamp [Fri, 13 Nov 2015 14:01:14 +0000 (15:01 +0100)]
arm/km_kirkwood: remove KM_ENV_BUS and use CONFIG_I2C_ENV_EEPROM_BUS

KM_ENV_BUS was used for nothing else than an direct assignment to
CONFIG_I2C_ENV_EEPROM_BUS. To avoid this, directly use
CONFIG_I2C_ENV_EEPROM_BUS instead.

Patchwork: http://patchwork.ozlabs.org/patch/399411/
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
8 years agoboard/ti/am335x: add support for BeagleBone Green
robertcnelson@gmail.com [Wed, 11 Nov 2015 15:10:52 +0000 (09:10 -0600)]
board/ti/am335x: add support for BeagleBone Green

SeeedStudio BeagleBone Green (BBG) is clone of the BeagleBone Black (BBB) minus
the HDMI port and addition of two Grove connectors (i2c2 and usart2).

This board can be identified by the 1A value after A335BNLT (BBB) in the at24 eeprom:
1A: [aa 55 33 ee 41 33 33 35  42 4e 4c 54 1a 00 00 00 |.U3.A335BNLT....|]

http://beagleboard.org/green
http://www.seeedstudio.com/wiki/Beaglebone_green

In Mainline Kernel as of:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=79a4e64c679d8a0b1037da174e4aea578c80c4e6

Patch tested on BeagleBone Black (rev C) and BeagleBone Green (production model)

Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
CC: Tom Rini <trini@konsulko.com>
CC: Jason Kridner <jkridner@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agocommon: add CMD_GPIO to Kconfig
Thomas Chou [Wed, 11 Nov 2015 13:39:33 +0000 (21:39 +0800)]
common: add CMD_GPIO to Kconfig

Add CMD_GPIO to Kconfig and run tools/moveconfig.py .

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Reviewed-by: Simon Glass <sjg@chromium.org>
8 years agogit-mailrc: Add Bin as a maintainer of x86
Bin Meng [Wed, 11 Nov 2015 02:13:34 +0000 (18:13 -0800)]
git-mailrc: Add Bin as a maintainer of x86

This updates git-mailrc to add me as a maintainer of x86.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
8 years agoomap3: cm-t3517: add board specific get_board_rev()
Dmitry Lifshitz [Tue, 10 Nov 2015 13:17:44 +0000 (15:17 +0200)]
omap3: cm-t3517: add board specific get_board_rev()

CM-T3517 has several HW revisions.
Add board specific get_board_rev() callback to retrieve revision number.

Signed-off-by: Dmitry Lifshitz <lifshitz@compulab.co.il>
Reviewed-by: Igor Grinberg <grinberg@compulab.co.il>
8 years agospl: mmc: add support for BOOT_DEVICE_MMC2
Nikita Kiryanov [Sun, 8 Nov 2015 15:11:54 +0000 (17:11 +0200)]
spl: mmc: add support for BOOT_DEVICE_MMC2

Currently the mmc device that SPL looks at is always mmc0, regardless
of the BOOT_DEVICE_MMCx value. This forces some boards to
implement hacks in order to boot from other mmc devices.

Make SPL take into account the correct mmc device.

Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agoarm: mx6: cm-fx6: define fallback boot devices for spl
Nikita Kiryanov [Sun, 8 Nov 2015 15:11:53 +0000 (17:11 +0200)]
arm: mx6: cm-fx6: define fallback boot devices for spl

Use spl alternate boot device feature to define fallback to
the main boot device as it is defined by hardware.

Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Tom Rini <trini@konsulko.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Stefano Babic <sbabic@denx.de>
8 years agospl: announce boot devices
Nikita Kiryanov [Sun, 8 Nov 2015 15:11:52 +0000 (17:11 +0200)]
spl: announce boot devices

Now that we support alternative boot devices, it can sometimes be
unclear which boot devices was actually used. Provide a function to
announce which boot devices are attempted during boot.

Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Tom Rini <trini@konsulko.com>
Cc: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
8 years agospl: add support for alternative boot device
Nikita Kiryanov [Sun, 8 Nov 2015 15:11:51 +0000 (17:11 +0200)]
spl: add support for alternative boot device

Introduce spl_boot_list array, which defines a list of boot devices
that SPL will try before hanging. By default this list will consist
of only spl_boot_device(), but board_boot_order() can be overridden
by board code to populate the array with custom values.

Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Tom Rini <trini@konsulko.com>
Cc: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
8 years agocommon: spl: move image load to its own function
Nikita Kiryanov [Sun, 8 Nov 2015 15:11:50 +0000 (17:11 +0200)]
common: spl: move image load to its own function

Refactor spl image load code out of board_init_r and into its own
function. This is a preparation for supporting alternative boot
devices.

Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Tom Rini <trini@konsulko.com>
Cc: Simon Glass <sjg@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agospl: change return values of spl_*_load_image()
Nikita Kiryanov [Sun, 8 Nov 2015 15:11:49 +0000 (17:11 +0200)]
spl: change return values of spl_*_load_image()

Make spl_*_load_image() functions return a value instead of
hanging if a problem is encountered. This enables main spl code
to make the decision whether to hang or not, thus preparing
it to support alternative boot devices.

Some boot devices (namely nand and spi) do not hang on error.
Instead, they return normally and SPL proceeds to boot the
contents of the load address. This is considered a bug and
is rectified by hanging on error for these devices as well.

Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Tom Rini <trini@konsulko.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Ian Campbell <ijc@hellion.org.uk>
Cc: Hans De Goede <hdegoede@redhat.com>
Cc: Albert Aribaud <albert.u.boot@aribaud.net>
Cc: Jagan Teki <jteki@openedev.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
8 years agospl: mmc: get rid of emmc boot code duplication
Nikita Kiryanov [Sun, 8 Nov 2015 15:11:48 +0000 (17:11 +0200)]
spl: mmc: get rid of emmc boot code duplication

Get rid of emmc boot code duplication in spl_mmc_load_image() using a switch
case fallthrough into MMCSD_MODE_RAW. Since the #ifdef CONFIG_SUPPORT_EMMC_BOOT
check is not really necessary, remove it in the process.

No functional changes.

Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Paul Kocialkowski <contact@paulk.fr>
Cc: Pantelis Antoniou <panto@antoniou-consulting.com>
Cc: Tom Rini <trini@konsulko.com>
Cc: Simon Glass <sjg@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agospl: mmc: move fs boot into its own function
Nikita Kiryanov [Sun, 8 Nov 2015 15:11:47 +0000 (17:11 +0200)]
spl: mmc: move fs boot into its own function

Move the code that handles fs boot out of spl_mmc_load_image() and into its
own function to reduce the #ifdef complexity of spl_mmc_load_image().

No functional changes.

Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Paul Kocialkowski <contact@paulk.fr>
Cc: Pantelis Antoniou <panto@antoniou-consulting.com>
Cc: Tom Rini <trini@konsulko.com>
Cc: Simon Glass <sjg@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agospl: mmc: get rid of #ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION check
Nikita Kiryanov [Sun, 8 Nov 2015 15:11:46 +0000 (17:11 +0200)]
spl: mmc: get rid of #ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION check

Implement defaults for the raw partition image loading so that the #ifdef
CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION in spl_mmc_load_image() will no
longer be necessary.

This change makes it possible for mmc_load_image_raw_partition() and
mmc_load_image_raw_sector() to coexist.

Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Paul Kocialkowski <contact@paulk.fr>
Cc: Pantelis Antoniou <panto@antoniou-consulting.com>
Cc: Tom Rini <trini@konsulko.com>
Cc: Simon Glass <sjg@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agospl: mmc: remove #ifdef CONFIG_SPL_OS_BOOT check
Nikita Kiryanov [Sun, 8 Nov 2015 15:11:45 +0000 (17:11 +0200)]
spl: mmc: remove #ifdef CONFIG_SPL_OS_BOOT check

Implement default versions of falcon mode functions to make the
CONFIG_SPL_OS_BOOT check in spl_mmc_load_image() unnecessary, thus reducing
its #ifdef complexity.

No functional changes.

Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Paul Kocialkowski <contact@paulk.fr>
Cc: Pantelis Antoniou <panto@antoniou-consulting.com>
Cc: Tom Rini <trini@konsulko.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Guillaume GARDET <guillaume.gardet@free.fr>
Cc: Suriyan Ramasami <suriyan.r@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agospl: mmc: refactor device location code to its own function
Nikita Kiryanov [Sun, 8 Nov 2015 15:11:44 +0000 (17:11 +0200)]
spl: mmc: refactor device location code to its own function

Simplify spl_mmc_load_image() code by moving the part that finds the mmc device
into its own function spl_mmc_find_device(), available in two flavors: DM and
non-DM.

This refactor fixes a bug in which an error in the device location sequence
does not necessarily aborts the rest of the code. With this refactor, we fail
the moment there is an error.

Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Paul Kocialkowski <contact@paulk.fr>
Cc: Pantelis Antoniou <panto@antoniou-consulting.com>
Cc: Tom Rini <trini@konsulko.com>
Cc: Simon Glass <sjg@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agospl: mmc: add break statements in spl_mmc_load_image()
Nikita Kiryanov [Sun, 8 Nov 2015 15:11:43 +0000 (17:11 +0200)]
spl: mmc: add break statements in spl_mmc_load_image()

The original intention of the mmc load_image() function was to try multiple
boot modes before failing. This is evident by the lack of break statements
in the switch, and the following line in the default case:
puts("spl: mmc: no boot mode left to try\n");

This implementation is problematic because:
- The availability of alternative boot modes is very arbitrary since it
depends on the specific order of the switch cases. If your boot mode happens to
be the first case, then you'll have a bunch of other boot modes as alternatives.
If it happens to be the last case, then you have none.
- Opting in/out is tied to config options, so the only way for you to prevent an
alternative boot mode from being attempted is to give up on the feature completely.
- This implementation makes the code more complicated and difficult to
understand.

Address these issues by inserting a break statements between the cases to make the
function try only one boot mode.

Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Paul Kocialkowski <contact@paulk.fr>
Cc: Pantelis Antoniou <panto@antoniou-consulting.com>
Cc: Tom Rini <trini@konsulko.com>
Cc: Simon Glass <sjg@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agospl: nand: remove code duplication
Nikita Kiryanov [Sun, 8 Nov 2015 15:11:42 +0000 (17:11 +0200)]
spl: nand: remove code duplication

Remove code duplication in spl_nand_load_image().

No functional changes.

Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
Cc: Scott Wood <scottwood@freescale.com>
Cc: Igor Grinberg <grinberg@compulab.co.il>
Acked-by: Scott Wood <scottwood@freescale.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Heiko Schocher <hs@denx.de>
[trini: Add back cast to unsigned long of spl_image.load_addr]
Signed-off-by: Tom Rini <trini@konsulko.com>
8 years agoAllow fw env tools to be available as library
Stefano Babic [Fri, 30 Oct 2015 13:57:04 +0000 (14:57 +0100)]
Allow fw env tools to be available as library

Sometimes it can be useful to link the fw_ tools instead
of having the fw_setenv/fw_printenv installed.
Patch exports the tool as library and allowes to link it
with own programs.

Signed-off-by: Stefano Babic <sbabic@denx.de>
CC: Tom Rini <trini@konsulko.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agoboard: ti: beagle_x15: Rename to indicate support for TI am57xx evms
Kipisz, Steven [Thu, 29 Oct 2015 21:50:43 +0000 (16:50 -0500)]
board: ti: beagle_x15: Rename to indicate support for TI am57xx evms

BeagleBoard X15 (http://beagleboard.org/x15) support in u-boot does
actually support two different platform configuration offered by
TI. In addition to BeagleBoard X15, it also supports the TMDXEVM5728
(or more commonly known as AM5728-evm).

Information about the TI AM57xx EVM can be found here
http://www.ti.com/tool/tmdxevm5728

The EVM configuration is 1-1 compatible with BeagleBoard X15 with the
additional support for mPCIe, mSATA, LCD, touchscreen, Camera, push
button and TI's wlink8 offering.

Hence, we rename the beagle_x15 directory to am57xx to support TI
EVMs that use the AM57xx processor. By doing this we have common code
reuse. This sets the stage to have a common u-boot image solution for
multiple TI EVMs such as that already done for am335x and am437x. This
sets the stage for upcoming multiple TI EVMs that share the same code
base.

NOTE: Commit eae7ae185335 ("am437x: Add am57xx_evm_defconfig using
CONFIG_DM") introduced DT support for beagle_x15 under am57xx_evm
platform name. However, this ignored the potential confusion arising for
users as a result. To prevent this, existing beagle_x15_defconfig is
renamed as am57xx_evm_nodt_defconfig to denote that this is the "non
device tree" configuration for the same platform. We still retain
am57xx-beagle-x15.dts at this point, since we just require the common
minimum dts.

As a result of this change, users should expect changes in build
procedures('make am57xx_evm_nodt_defconfig' instead of 'make
beagle_x15_defconfig'). Hopefully, this would be a one-time change.

Signed-off-by: Steve Kipisz <s-kipisz2@ti.com>
Signed-off-by: Schuyler Patton <spatton@ti.com>
Acked-by: Nishanth Menon <nm@ti.com>
Acked-by: Lokesh Vutla <lokeshvutla@ti.com>
8 years agotools/env: allow config filename to be passed via command line argument
Michael Heimpold [Tue, 27 Oct 2015 21:34:49 +0000 (22:34 +0100)]
tools/env: allow config filename to be passed via command line argument

When for example generating/manipulating SD card/eMMC images which
contain U-Boot and its environment(s), it is handy to use a given
configuration file instead of the compiled-in default one.
And since the default configuration file is expected under /etc
it's hard for an usual linux user account without special permissions
to use fw_printenv/fw_setenv for this purpose.
So allow to pass an optional filename via a new '-c' command
line argument.

Example:

$ ln -s fw_printenv tools/env/fw_setenv
$ cat fw_env.config
test.img 0x20000 0x20000
test.img 0x40000 0x20000

$ tools/env/fw_printenv -c ./fw_env.config fdt_file
fdt_file=imx28-duckbill.dtb

$ tools/env/fw_setenv -c ./fw_env.config fdt_file imx28-duckbill-spi.dtb

$ tools/env/fw_printenv -c ./fw_env.config fdt_file
fdt_file=imx28-duckbill-spi.dtb

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
8 years agonios2: zap ioremap
Thomas Chou [Sat, 14 Nov 2015 03:30:30 +0000 (11:30 +0800)]
nios2: zap ioremap

Zap ioremap(), as it is replaced by map_physmem(,,MAP_NOCACHE).

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Reviewed-by: Marek Vasut <marex@denx.de>
8 years agonios2: dma-mapping.h: change ioremap to map_physmem
Thomas Chou [Sat, 14 Nov 2015 03:34:09 +0000 (11:34 +0800)]
nios2: dma-mapping.h: change ioremap to map_physmem

Change ioremap() to map_physmem(), as it is more used in u-boot.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Reviewed-by: Marek Vasut <marex@denx.de>
8 years agoaltera_pio: change ioremap to map_physmem
Thomas Chou [Sat, 14 Nov 2015 03:26:51 +0000 (11:26 +0800)]
altera_pio: change ioremap to map_physmem

Change ioremap() to map_physmem(), as it is more used in u-boot.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Reviewed-by: Marek Vasut <marex@denx.de>
8 years agoaltera_qspi: change ioremap to map_physmem
Thomas Chou [Sat, 14 Nov 2015 03:22:50 +0000 (11:22 +0800)]
altera_qspi: change ioremap to map_physmem

Change ioremap() to map_physmem(), as it is more used in u-boot.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Reviewed-by: Marek Vasut <marex@denx.de>
8 years agoaltera_tse: change ioremap to map_physmem
Thomas Chou [Sat, 14 Nov 2015 03:21:16 +0000 (11:21 +0800)]
altera_tse: change ioremap to map_physmem

Change ioremap() to map_physmem(), as it is more used in u-boot.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Reviewed-by: Marek Vasut <marex@denx.de>
8 years agoaltera_sysid: change ioremap to map_physmem
Thomas Chou [Sat, 14 Nov 2015 03:18:52 +0000 (11:18 +0800)]
altera_sysid: change ioremap to map_physmem

Change ioremap() to map_physmem(), as it is more used in u-boot.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Reviewed-by: Marek Vasut <marex@denx.de>
8 years agoaltera_spi: change ioremap to map_physmem
Thomas Chou [Sat, 14 Nov 2015 03:17:25 +0000 (11:17 +0800)]
altera_spi: change ioremap to map_physmem

Change ioremap() to map_physmem(), as it is more used in u-boot.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Reviewed-by: Marek Vasut <marex@denx.de>
8 years agoaltera_timer: change ioremap to map_physmem
Thomas Chou [Sat, 14 Nov 2015 03:15:31 +0000 (11:15 +0800)]
altera_timer: change ioremap to map_physmem

Change ioremap() to map_physmem(), as it is more used in u-boot.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Reviewed-by: Marek Vasut <marex@denx.de>
8 years agoaltera_uart: change ioremap to map_physmem
Thomas Chou [Sat, 14 Nov 2015 02:38:09 +0000 (10:38 +0800)]
altera_uart: change ioremap to map_physmem

Change ioremap() to map_physmem(), as it is more used in u-boot.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Reviewed-by: Marek Vasut <marex@denx.de>
8 years agoaltera_jtag_uart: change ioremap to map_physmem
Thomas Chou [Sat, 14 Nov 2015 02:36:49 +0000 (10:36 +0800)]
altera_jtag_uart: change ioremap to map_physmem

Change ioremap() to map_physmem(), as it is more used in u-boot.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Reviewed-by: Marek Vasut <marex@denx.de>
8 years agoMerge git://git.denx.de/u-boot-marvell
Tom Rini [Tue, 17 Nov 2015 22:57:32 +0000 (17:57 -0500)]
Merge git://git.denx.de/u-boot-marvell

8 years agoarm: kirkwood: ib62x0: drop duplicate defines from CONFIG_SYS_MVFS
Luka Perkov [Sat, 31 Oct 2015 20:28:44 +0000 (21:28 +0100)]
arm: kirkwood: ib62x0: drop duplicate defines from CONFIG_SYS_MVFS

These options were already defined in mv-common.h file.

Signed-off-by: Luka Perkov <luka.perkov@sartura.hr>
8 years agoarm: kirkwood: ib62x0: drop dev CONFIG_OF_LIBFDT
Luka Perkov [Sat, 31 Oct 2015 20:23:51 +0000 (21:23 +0100)]
arm: kirkwood: ib62x0: drop dev CONFIG_OF_LIBFDT

It is already defined in included mv-common.h file.

Signed-off-by: Luka Perkov <luka.perkov@sartura.hr>
8 years agoarm: kirkwood: ib62x0: make use of defconfig
Luka Perkov [Sat, 31 Oct 2015 20:23:34 +0000 (21:23 +0100)]
arm: kirkwood: ib62x0: make use of defconfig

Signed-off-by: Luka Perkov <luka.perkov@sartura.hr>
8 years agoarm: kirkwood: ib62x0: drop CONFIG_CMD_ENV define
Luka Perkov [Sat, 31 Oct 2015 20:08:35 +0000 (21:08 +0100)]
arm: kirkwood: ib62x0: drop CONFIG_CMD_ENV define

The CONFIG_CMD_ENV is enabled by default so we can safely remove it.

Signed-off-by: Luka Perkov <luka.perkov@sartura.hr>
8 years agoarm: kirkwood: ib62x0: build u-boot.kwb
Luka Perkov [Sat, 31 Oct 2015 19:33:39 +0000 (20:33 +0100)]
arm: kirkwood: ib62x0: build u-boot.kwb

Avoid double typing in the shell and build u-boot.kwb when running "make" only.

Signed-off-by: Luka Perkov <luka.perkov@sartura.hr>
8 years agoarm: kirkwood: ib62x0: drop CONFIG_MACH_TYPE
Luka Perkov [Sat, 31 Oct 2015 19:32:04 +0000 (20:32 +0100)]
arm: kirkwood: ib62x0: drop CONFIG_MACH_TYPE

Mainline kernel for this device has only support for device tree. We can safely
drop this legacy code.

Signed-off-by: Luka Perkov <luka.perkov@sartura.hr>
8 years agoarm: kirkwood: Move common definitions into common file
Quentin Armitage [Wed, 28 Oct 2015 00:47:21 +0000 (00:47 +0000)]
arm: kirkwood: Move common definitions into common file

Create include/configs/mv-plug-common.h for common definitions
for Sheevaplug, Guruplug and Dreamplug. This will make it easier
to ensure the built u-boots stay in track with each other

Signed-off-by: Quentin Armitage <quentin@armitage.org.uk>
8 years agoarm: kirkwood: Remove duplicate definition from dreamplug.h
Quentin Armitage [Wed, 28 Oct 2015 00:47:20 +0000 (00:47 +0000)]
arm: kirkwood: Remove duplicate definition from dreamplug.h

CONFIG_DISPLAY_CPUINFO is already defined in mv-common.h

Signed-off-by: Quentin Armitage <quentin@armitage.org.uk>
8 years agoarm: kirkwood: Align configuration files
Quentin Armitage [Wed, 28 Oct 2015 00:47:19 +0000 (00:47 +0000)]
arm: kirkwood: Align configuration files

Cosmetic: CONFIG_OF_LIBFDT was in a different position in the config
file for the Dreamplug, compared to the Sheevaplug and Guruplug.

Signed-off-by: Quentin Armitage <quentin@armitage.org.uk>
8 years agoarm: kirkwood: Use common definition for filesystems
Quentin Armitage [Wed, 28 Oct 2015 00:47:18 +0000 (00:47 +0000)]
arm: kirkwood: Use common definition for filesystems

include/configs/mv-common.h brings in the required filesystems if
CONFIG_SYS_MVFS is defined, so use it for Sheevaplug and Guruplug.

Signed-off-by: Quentin Armitage <quentin@armitage.org.uk>
8 years agoarm: kirkwood: Move configuration of some commands to _defconfig files
Quentin Armitage [Wed, 28 Oct 2015 00:47:17 +0000 (00:47 +0000)]
arm: kirkwood: Move configuration of some commands to _defconfig files

For Marvell plugs, move the configuration of DHCP, NAND/SF, PING
and USB commands, and HUSH_PARSER into the _defconfig file, rather
than the include/configs/*plug.h files.

This avoids compiler warnings of duplicate definitions if the
option is selected in the .config, but also defined in the
include/configs/*plug.h file.

Signed-off-by: Quentin Armitage <quentin@armitage.org.uk>
8 years agoarm: kirkwood: Remove duplicate definition of CONFIG_CMD_FAT
Quentin Armitage [Wed, 28 Oct 2015 00:47:16 +0000 (00:47 +0000)]
arm: kirkwood: Remove duplicate definition of CONFIG_CMD_FAT

include/configs/guruplug.h defined CONFIG_CMD_FAT twice.

Signed-off-by: Quentin Armitage <quentin@armitage.org.uk>
8 years agoarm: kirkwood: standardise the configuration
Quentin Armitage [Wed, 28 Oct 2015 00:47:15 +0000 (00:47 +0000)]
arm: kirkwood: standardise the configuration

The Marvell plugs are very similar systems, and so it makes sense
for their u-boots to have the same commands/configuration.

Add EXT4 and MII to Dreamplug, DATE to Guruplug and Sheevaplug.
Add CONFIG_SYS_ALT_MEMTEST to Sheevaplug.
There are still command differences around NAND, SPI/NOR.

Also default to building u-boot.kwb for Sheevaplug and Guruplug.

Signed-off-by: Quentin Armitage <quentin@armitage.org.uk>
8 years agoarm: mvebu: Fix SAR1_CPU_CORE_MASK
Dirk Eibach [Wed, 28 Oct 2015 15:44:14 +0000 (16:44 +0100)]
arm: mvebu: Fix SAR1_CPU_CORE_MASK

SAR1_CPU_CORE_MASK was wrong, probably copy/paste
from another architecture.

Signed-off-by: Dirk Eibach <dirk.eibach@gdsys.cc>
Reviewed-by: Stefan Roese <sr@denx.de>
8 years agotools/kwbimage.c: Fix generation of binary header
Stefan Roese [Wed, 28 Oct 2015 06:53:58 +0000 (07:53 +0100)]
tools/kwbimage.c: Fix generation of binary header

The binary header ends with one lword, defining if another header
follows this one. This additions 4 bytes need to be taken into
account in the generation of the header size. And the complete
4 bytes at the end of this binary header need to get cleared.

Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Luka Perkov <luka.perkov@sartura.hr>
Cc: Kevin Smith <kevin.smith@elecsyscorp.com>
8 years agoarm: mvebu: a38x: serdes specification cleanup
Kevin Smith [Fri, 23 Oct 2015 17:53:19 +0000 (17:53 +0000)]
arm: mvebu: a38x: serdes specification cleanup

Instead of allocating space in the driver for the serdes
specification table, just allow the board file to set a pointer
to it.  Also, allow the board to only specify the lanes that are
used instead of including unused lanes.

Signed-off-by: Kevin Smith <kevin.smith@elecsyscorp.com>
Acked-by: Stefan Roese <sr@denx.de>
Cc: Dirk Eibach <eibach@gdsys.de>
Cc: Luka Perkov <luka.perkov@sartura.hr>
8 years agoarm: mvebu: a38x: Add const to some function calls
Kevin Smith [Fri, 23 Oct 2015 17:53:19 +0000 (17:53 +0000)]
arm: mvebu: a38x: Add const to some function calls

Functions that do not modify the pointer passed should declare it
as const.

Signed-off-by: Kevin Smith <kevin.smith@elecsyscorp.com>
Acked-by: Stefan Roese <sr@denx.de>
Cc: Dirk Eibach <eibach@gdsys.de>
Cc: Luka Perkov <luka.perkov@sartura.hr>
8 years agoarm: mvebu: a38x: Remove unsupported topologies
Kevin Smith [Fri, 23 Oct 2015 17:53:19 +0000 (17:53 +0000)]
arm: mvebu: a38x: Remove unsupported topologies

A lot of extra configuration information was left over in the
Marvell serdes and DDR3 initialization code for boards that
U-boot does not support.  Remove this extra config information,
and the concept of fixing up board topologies with information
loaded from an EEPROM.  If this needs to be done, it should be
handled in the board file, not in core code.

Signed-off-by: Kevin Smith <kevin.smith@elecsyscorp.com>
Acked-by: Stefan Roese <sr@denx.de>
Cc: Dirk Eibach <eibach@gdsys.de>
Cc: Luka Perkov <luka.perkov@sartura.hr>
8 years agoboard: axs10x switch serial port and Ethernet to driver model
Alexey Brodkin [Tue, 10 Nov 2015 16:16:25 +0000 (19:16 +0300)]
board: axs10x switch serial port and Ethernet to driver model

With this change Synopsys DesignWare SDP board is switched to driver
model for both serial port (serial_dw) and Ethernet (Designware GMAC).

This simplifies include/configs/axs101.h and allows for reuse of Linux's
Device Tree description.

For simplicity Linux's .dts files are not blindly copied but only very
few extracts of them are really used (those that are supported in U-Boot
at the moment).

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoarc: add empty asm/processor.h to satisfy compilation of USB code
Alexey Brodkin [Thu, 12 Nov 2015 21:45:20 +0000 (00:45 +0300)]
arc: add empty asm/processor.h to satisfy compilation of USB code

common/usb.c unconditionally includes <asm/processor.h>
And now to allow USB support on ARC boards we have to have that header.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
8 years agoarc: add stubs for map_physmem() and unmap_physmem()
Alexey Brodkin [Tue, 10 Nov 2015 08:13:42 +0000 (11:13 +0300)]
arc: add stubs for map_physmem() and unmap_physmem()

Up until now there was no need in those stubs.

But since following commit compilation of U-Boot on ARC is broken:
------------------------>8----------------------
commit 7861204c9af7fec1ea9b41541c272516235a6c93
Author: Stephen Warren <swarren@wwwdotorg.org>
Date:   Sat Oct 3 13:56:46 2015 -0600

    itest: make memory access work under sandbox

    itest accesses memory, and hence must map/unmap it. Without doing so, it
    accesses invalid addresses and crashes.

Signed-off-by: Stephen Warren <swarren@wwwdotorg.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
------------------------>8----------------------

That's because CMD_ITEST is enabled by default in common/Kconfig and now
map_physmem()/unmap_physmem() is used there.

So this patch adds missing stubs for ARC.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Cc: Stephen Warren <swarren@wwwdotorg.org>
8 years agoPrepare v2016.01-rc1 v2016.01-rc1
Tom Rini [Tue, 17 Nov 2015 01:29:51 +0000 (20:29 -0500)]
Prepare v2016.01-rc1

Signed-off-by: Tom Rini <trini@konsulko.com>
8 years agotools/proftool: fix use-after-free
Vincent Stehlé [Wed, 7 Oct 2015 13:48:48 +0000 (15:48 +0200)]
tools/proftool: fix use-after-free

The read_trace_config() can dereference the line pointer after freeing
it on its error path. Avoid that.

This was found by Coverity Scan.

Signed-off-by: Vincent Stehlé <vincent.stehle@freescale.com>
Cc: Simon Glass <sjg@chromium.org>
8 years agoMerge branch 'master' of git://www.denx.de/git/u-boot-imx
Tom Rini [Mon, 16 Nov 2015 13:35:38 +0000 (08:35 -0500)]
Merge branch 'master' of git://denx.de/git/u-boot-imx

8 years agoarm: mx6: cm-fx6: add splash locations to cm-fx6
Nikita Kiryanov [Thu, 29 Oct 2015 09:54:44 +0000 (11:54 +0200)]
arm: mx6: cm-fx6: add splash locations to cm-fx6

Add the following splash locations to cm-fx6:
* filesystem formatted mmc
* filesystem formatted usb
* filesystem formatted sata

Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Tom Rini <trini@konsulko.com>
Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
8 years agosplash_source: add support for filesystem formatted sata
Nikita Kiryanov [Thu, 29 Oct 2015 09:54:43 +0000 (11:54 +0200)]
splash_source: add support for filesystem formatted sata

Add support for loading splashimage from filesystem formatted sata
storage.

Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Tom Rini <trini@konsulko.com>
Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
8 years agosplash_source: add support for filesystem formatted usb
Nikita Kiryanov [Thu, 29 Oct 2015 09:54:42 +0000 (11:54 +0200)]
splash_source: add support for filesystem formatted usb

Add support for loading splash image from USB drive formatted with a
filesystem.

Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Tom Rini <trini@konsulko.com>
Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
8 years agosplash_source: add support for filesystem formatted mmc
Nikita Kiryanov [Thu, 29 Oct 2015 09:54:41 +0000 (11:54 +0200)]
splash_source: add support for filesystem formatted mmc

Add support for loading splash image from an SD card formatted with
a filesystem. Update boards to maintain original behavior where needed.

Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Tom Rini <trini@konsulko.com>
Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
8 years agosplash_source: rename *_read() to *_read_raw()
Nikita Kiryanov [Thu, 29 Oct 2015 09:54:40 +0000 (11:54 +0200)]
splash_source: rename *_read() to *_read_raw()

Rename raw read functions to *_read_raw() in preparation for supporting
read_fs() feature.

Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Tom Rini <trini@konsulko.com>
Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
8 years agoMerge branch 'series1_v2' of git://git.denx.de/u-boot-sparc
Tom Rini [Fri, 13 Nov 2015 15:04:34 +0000 (10:04 -0500)]
Merge branch 'series1_v2' of git://git.denx.de/u-boot-sparc

8 years agoMerge branch 'master' of git://git.denx.de/u-boot-x86
Tom Rini [Fri, 13 Nov 2015 15:02:43 +0000 (10:02 -0500)]
Merge branch 'master' of git://git.denx.de/u-boot-x86

8 years agosf: Fix NULL pointer exception for flashes without lock methods
Bin Meng [Fri, 13 Nov 2015 10:46:26 +0000 (02:46 -0800)]
sf: Fix NULL pointer exception for flashes without lock methods

commit c3c016c "sf: Add SPI NOR protection mechanism" introduced
flash_lock()/flash_unlock()/flash_is_locked() methods for SPI flash,
but not every flash driver supplies these. We should test these
methods against NULL before actually calling them.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Fabio Estevam <fabio.estevam@freescale.com>
Reviewed-by: Jagan Teki <jteki@openedev.com>
8 years agox86: Remove CONFIG_SYS_EARLY_PCI_INIT
Bin Meng [Fri, 6 Nov 2015 10:04:55 +0000 (02:04 -0800)]
x86: Remove CONFIG_SYS_EARLY_PCI_INIT

CONFIG_SYS_EARLY_PCI_INIT is not needed any more since with driver
model, PCI enumeration is automatically triggered.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
8 years agox86: Remove legacy pci codes
Bin Meng [Fri, 6 Nov 2015 10:04:54 +0000 (02:04 -0800)]
x86: Remove legacy pci codes

Now that we have converted all x86 boards to use driver model pci,
remove these legacy pci codes.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
8 years agox86: crownbay: Remove unused PCI region address macros
Bin Meng [Fri, 6 Nov 2015 10:04:53 +0000 (02:04 -0800)]
x86: crownbay: Remove unused PCI region address macros

These are leftover when converted to use driver model pci.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
8 years agox86: qemu: Convert to use driver model eth
Bin Meng [Fri, 6 Nov 2015 10:04:52 +0000 (02:04 -0800)]
x86: qemu: Convert to use driver model eth

Move to driver model for ETH (e1000) on QEMU.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
8 years agox86: qemu: Convert to use driver model usb
Bin Meng [Fri, 6 Nov 2015 10:04:51 +0000 (02:04 -0800)]
x86: qemu: Convert to use driver model usb

Move to driver model for USB on QEMU.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
8 years agox86: qemu: Convert to use driver model pci
Bin Meng [Fri, 6 Nov 2015 10:04:50 +0000 (02:04 -0800)]
x86: qemu: Convert to use driver model pci

Move to driver model for pci on QEMU.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
8 years agox86: qemu: Move chipset-specific codes from pci.c to qemu.c
Bin Meng [Fri, 6 Nov 2015 10:04:49 +0000 (02:04 -0800)]
x86: qemu: Move chipset-specific codes from pci.c to qemu.c

Move chipset-specific codes such as PAM init, PCIe ECAM and MP table
from pci.c to qemu.c, to prepare for DM PCI conversion.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
8 years agox86: qemu: Remove call to vgabios execution
Bin Meng [Fri, 6 Nov 2015 10:04:48 +0000 (02:04 -0800)]
x86: qemu: Remove call to vgabios execution

The call to pci_run_vga_bios() is not needed as this is handled
in the vesa_fb driver.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
8 years agox86: Move timer_init() call a bit earlier
Bin Meng [Fri, 23 Oct 2015 02:13:33 +0000 (19:13 -0700)]
x86: Move timer_init() call a bit earlier

Currently timer_init() is called in board_r.c which is quite late.
Some vgabios execution requires we set up the i8254 timer correctly,
but video initialization comes before timer_init(). Move the call
to board_f.c.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
8 years agox86: queensbay: Really disable IGD
Bin Meng [Fri, 23 Oct 2015 02:13:32 +0000 (19:13 -0700)]
x86: queensbay: Really disable IGD

According to Atom E6xx datasheet, setting VGA Disable (bit17)
of Graphics Controller register (offset 0x50) prevents IGD
(D2:F0) from reporting itself as a VGA display controller
class in the PCI configuration space, and should also prevent
it from responding to VGA legacy memory range and I/O addresses.

However test result shows that with just VGA Disable bit set and
a PCIe graphics card connected to one of the PCIe controllers on
the E6xx, accessing the VGA legacy space still causes system hang.
After a number of attempts, it turns out besides VGA Disable bit,
the SDVO (D3:F0) device should be disabled to make it work.

To simplify, use the Function Disable register (offset 0xc4)
to disable both IGD (D2:F0) and SDVO (D3:F0) devices. Now these
two devices will be completely disabled (invisible in the PCI
configuration space) unless a system reset is performed.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>