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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
Tom Rini [Tue, 17 Nov 2015 22:57:32 +0000 (17:57 -0500)]
Merge git://git.denx.de/u-boot-marvell
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
Tom Rini [Mon, 16 Nov 2015 13:35:38 +0000 (08:35 -0500)]
Merge branch 'master' of git://denx.de/git/u-boot-imx
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>
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>
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>
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>
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>
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
Tom Rini [Fri, 13 Nov 2015 15:02:43 +0000 (10:02 -0500)]
Merge branch 'master' of git://git.denx.de/u-boot-x86
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
Bin Meng [Fri, 23 Oct 2015 02:13:31 +0000 (19:13 -0700)]
x86: Move CONFIG_8259_PIC and CONFIG_8254_TIMER to Kconfig
Add Kconfig options for 8259 and 8254.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
Bin Meng [Fri, 23 Oct 2015 02:13:30 +0000 (19:13 -0700)]
x86: Rename pcat_ to i8254 and i8259 accordingly
Rename pcat_timer.c to i8254.c and pcat_interrupts.c to i8259.c,
to match their header file names (i8254.h and i8259.h).
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
Bin Meng [Fri, 23 Oct 2015 02:13:29 +0000 (19:13 -0700)]
x86: Initialize i8254 timer counter 1
Initialize counter 1, used to refresh request signal. This is
required for legacy purpose as some codes like vgabios utilizes
counter 1 to provide delay functionality.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
Bin Meng [Fri, 23 Oct 2015 02:13:28 +0000 (19:13 -0700)]
x86: Fix cosmetic issues in the i8254 and i8259 codes
This cleans up i8254 and i8259 codes to fix several cosmetic
issues, like coding convention and some comments improvement.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
Bin Meng [Fri, 23 Oct 2015 02:13:27 +0000 (19:13 -0700)]
x86: Remove dead codes wrapped by PARANOID_IRQ_TRIGGERS
PARANOID_IRQ_TRIGGERS is not referenced anywhere in U-Boot.
Remove these dead codes wrapped by it.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
Bin Meng [Fri, 23 Oct 2015 02:13:26 +0000 (19:13 -0700)]
x86: Rename CONFIG_SYS_NUM_IRQS to SYS_NUM_IRQS
CONFIG_SYS_NUM_IRQS is actually not something we can configure,
but an architecture defined number of ISA IRQs. Move it from
x86-common.h to asm/interrupt.h and rename it to SYS_NUM_IRQS.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
Stefano Babic [Fri, 13 Nov 2015 09:49:01 +0000 (10:49 +0100)]
imx6: fix warnings due to switch to distro environment
wandboard and mx6cuboxi have warnings because BOOT_DELAY
is defined twice.
Signed-off-by: Stefano Babic <sbabic@denx.de>
CC: Vagrant Cascadian <vagrant@debian.org>
CC: Otavio Salvador <otavio@ossystems.com.br>
CC: Fabio Estevam <fabio.estevam@freescale.com>
Francois Retief [Thu, 29 Oct 2015 10:55:34 +0000 (12:55 +0200)]
sparc: leon3: Add debug_uart support to LEON3 serial driver.
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Daniel Hellstrom [Mon, 20 Sep 2010 08:00:49 +0000 (10:00 +0200)]
sparc: ambapp: Removed warning and unnecessary printout.
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
Daniel Hellstrom [Thu, 21 Jan 2010 15:09:37 +0000 (16:09 +0100)]
sparc: leon3: Moved GRLIB core header files to common include/grlib directory
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
Daniel Hellstrom [Mon, 25 Jan 2010 08:56:08 +0000 (09:56 +0100)]
sparc: leon3: Added memory controller initialization using new AMBA PnP routines.
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
Francois Retief [Mon, 27 Oct 2014 11:39:03 +0000 (13:39 +0200)]
sparc: Kconfig: Move the CMD_AMBAPP command to Kconfig
Add an initr function in the board_r.c file for the AMBA Plug&Play
command. Add a Kconfig entry for the ambapp command and remove all
CONFIG_CMD_AMBAPP defines from the board configuration headers.
Add a Kconfig entry to display the AMBA Plug&Play information
on startup. This option is off by default. Remove relevent define
from board configuration headers.
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Daniel Hellstrom [Mon, 25 Jan 2010 08:54:51 +0000 (09:54 +0100)]
sparc: leon3: Reimplemented AMBA Plug&Play scanning routines.
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
Francois Retief [Wed, 28 Oct 2015 07:06:41 +0000 (09:06 +0200)]
sparc: Update startup code to take PIC mode into account
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Francois Retief [Tue, 4 Nov 2014 14:51:44 +0000 (16:51 +0200)]
sparc: Update GRSIM board with memory settings for TSIM eval
Update the GRSIM board with the memory settings for the evaluation
version of TSIM. This free version of TSIM is used for testing.
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Francois Retief [Wed, 28 Oct 2015 08:35:12 +0000 (10:35 +0200)]
sparc: Update LEON serial drivers to use readl/writel macros
Update the LEON2/3 serial driver to make use of the readl and writel
macros as well as the WATCHDOG_RESET() macro.
Add readl/writel and friends to the asm/io.h file.
Introduce the gd->arch.uart variable to store register address.
Lastly, remove baudrate scaler macro variables from board config. It
is now calculated in the serial driver using the global data variable.
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Francois Retief [Mon, 26 Oct 2015 10:27:15 +0000 (12:27 +0200)]
sparc: Add -mcpu= compiler flags for LEON2/LEON3
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Francois Retief [Mon, 26 Oct 2015 10:32:25 +0000 (12:32 +0200)]
sparc: Update the maintainer for SPARC architecture
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Francois Retief [Sat, 24 Oct 2015 21:14:55 +0000 (23:14 +0200)]
sparc: Fix broken files during license changes
Fixes broken search and replaced license changes in
files cpu/leon3/start.S and include/asm/winmacro.h
from commit
1a4596601fd395f3afb8f82f3f840c5e00bdd57a
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Series-to: u-boot
Series-cc: Tom Rini <trini@konsulko.com>
Series-version: 2
Cover-letter:
sparc: Updates to SPARC architecture in preperation for generic board
This patch series is a backlog of preparation work for upcomming
generic board changes.
I first want to get these reviewed and submitted to mainline before
sending out more patches.
END
Fabio Estevam [Thu, 12 Nov 2015 14:30:19 +0000 (12:30 -0200)]
board_init: Change the logic to setup malloc_base
Prior to commit
5ba534d247d418 ("arm: Switch 32-bit ARM to using generic
global_data setup") we used to have assembly code that configured the
malloc_base address.
Since this commit we use the board_init_f_mem() function in C to setup
malloc_base address.
In board_init_f_mem() there was a deliberate choice to support only
early malloc() or full malloc() in SPL, but not both.
Adapt this logic to allow both to be used, one after the other, in SPL.
This issue has been observed in a Congatec board, where we need to
retrieve the manufacturing information from the SPI NOR (the SPI API
calls malloc) prior to configuring the DRAM. In this case as malloc_base
was not configured we always see malloc to fail.
With this change we are able to use malloc in SPL prior to DRAM gets
initialized.
Also update the CONFIG_SYS_SPL_MALLOC_START entry in the README file.
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Tom Rini [Thu, 12 Nov 2015 20:59:35 +0000 (15:59 -0500)]
Merge branch 'master' of git://git.denx.de/u-boot-tegra
Vignesh R [Thu, 22 Oct 2015 06:00:53 +0000 (11:30 +0530)]
am43xx_evm: Add DFU support for qspi flash
This adds support to update firmware on qspi flash present on
am437x-sk-evm and am43xx-epos-evm via DFU.
On device:
=> setenv dfu_alt_info ${dfu_alt_info_qspi}
=> dfu 0 sf 0:0
On host:
$ sudo dfu-util -l
$ sudo dfu-util -D u-boot.bin -a u-boot.bin
Signed-off-by: Vignesh R <vigneshr@ti.com>
Michal Simek [Mon, 9 Nov 2015 09:45:07 +0000 (10:45 +0100)]
spl: Add support for CONFIG_OF_EMBED=y
CONFIG_OF_EMBED=y is the option which is here only for testing purpose
and shouldn't be enabled by default as is describe at:
"dts: Add a comment about CONFIG_OF_EMBED being for local use"
(sha1:
3d3f60cb7a6bb6c338e00a9769fa918a8536096c)
But still enabling this option locally shouldn't end up with compilation
error when you build SPL. This patch fix it.
Compilation error:
lib/built-in.o: In function `fdtdec_setup':
/mnt/disk/u-boot/lib/fdtdec.c:1246: undefined reference to
`__dtb_dt_begin'
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reported-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Guillaume REMBERT [Sun, 8 Nov 2015 14:37:15 +0000 (14:37 +0000)]
openrisc: updating build tools naming convention
Dear u-boot community,
I just made a small change on the openrisc-generic platform
configuration to take in account the new naming convention (or1k instead
of or32, so the build process gets fine).
Could you take care to review and approve the following patch, please?
Kind regards,
Andy Fleming [Wed, 4 Nov 2015 21:55:27 +0000 (15:55 -0600)]
Fix trini email in the get_maintainer.pl script
Looks like one spot got missed. Probably due to the backslash.
Signed-off-by: Andy Fleming <afleming@gmail.com>
Vincent BENOIT [Mon, 2 Nov 2015 17:50:23 +0000 (18:50 +0100)]
pengwyn: nand and ethernet fixes
-> Add National instrument ethernet transceiver configuration used (DP83848)
-> Change cpsw slave phy address
-> modify nand configuration to use the correct ECC and correct nand features
Fabio Estevam [Sun, 1 Nov 2015 15:18:27 +0000 (13:18 -0200)]
block: ahci: Remove dead code
CONFIG_AHCI_SETFEATURES_XFER is not selected by any user, so delete
the dead code.
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Peng Fan [Fri, 30 Oct 2015 09:30:02 +0000 (17:30 +0800)]
common: Simplify get_clocks() #ifdef
get_clocks is wrapped by CONFIG_FSL_CLK and CONFIG_M68K in seperate
piece code. They can be merged into one snippet.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Cc: Tom Rini <trini@konsulko.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Bin Meng <bmeng.cn@gmail.com>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: "angelo@sysam.it" <angelo@sysam.it>
Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
Cc: Stephen Warren <swarren@nvidia.com>
Cc: "Andreas Bießmann" <andreas.devel@googlemail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Acked-by: Angelo Dureghello <angelo@sysam.it>
Matwey V. Kornilov [Thu, 29 Oct 2015 18:54:15 +0000 (21:54 +0300)]
configs: Use config_distro_defaults.h in ti_armv7_common.h
CONFIG_BOOTDELAY is defined in config_distro_defaults.h
Signed-off-by: Matwey V. Kornilov <matwey.kornilov@gmail.com>
[trini: Drop omap3_logic.h settings which were a warning and no longer
correct usage].
Signed-off-by: Tom Rini <trini@konsulko.com>
Dirk Eibach [Thu, 29 Oct 2015 12:51:27 +0000 (13:51 +0100)]
i2c: Fix pca953x endianess issue
By reading 2 consecutive bytes from i2c to an u16 value
we have an endianess issue.
Signed-off-by: Dirk Eibach <dirk.eibach@gdsys.cc>
Dirk Eibach [Wed, 28 Oct 2015 10:46:39 +0000 (11:46 +0100)]
i2c: soft_i2c: Fix bus indizes
Since busses are sorted in alphabetical order, introducing more
than nine busses led to unexpected behaviour.
Signed-off-by: Dirk Eibach <dirk.eibach@gdsys.cc>
Dirk Eibach [Wed, 28 Oct 2015 10:46:38 +0000 (11:46 +0100)]
board: gdsys: Enable osd on output only
Signed-off-by: Dirk Eibach <dirk.eibach@gdsys.cc>
Dirk Eibach [Wed, 28 Oct 2015 10:46:37 +0000 (11:46 +0100)]
board: gdsys: Add osdsize command
osdsize adjusts the gdsys IHS osd dimensions in characters.
Signed-off-by: Dirk Eibach <dirk.eibach@gdsys.cc>
Dirk Eibach [Wed, 28 Oct 2015 10:46:36 +0000 (11:46 +0100)]
hrcon: Add fan controllers
Signed-off-by: Dirk Eibach <dirk.eibach@gdsys.cc>