oweals/u-boot.git
10 years agobuildman: Allow selection of the number of commits to build
Simon Glass [Sat, 9 Aug 2014 21:33:09 +0000 (15:33 -0600)]
buildman: Allow selection of the number of commits to build

It is useful to be able to build only some of the commits in a branch. Add
support for the -c option to allow this. It was previously parsed by
buildman but not implemented.

Suggested-by: York Sun <yorksun@freescale.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: York Sun <yorksun@freescale.com>
10 years agobuildman: Introduce an 'and' operator for board selection
Simon Glass [Sat, 9 Aug 2014 21:33:08 +0000 (15:33 -0600)]
buildman: Introduce an 'and' operator for board selection

Currently buildman allows a list of boards to build to be specified on the
command line. The list can include specific board names, architecture, SOC
and so on.

At present the list of boards is dealt with in an 'OR' fashion, and there
is no way to specify something like 'arm & freescale', meaning boards with
ARM architecture but only those made by Freescale. This would exclude the
PowerPC boards made by Freescale.

Support an '&' operator on the command line to permit this. Ensure that
arguments can be specified in a single string to permit easy shell quoting.

Suggested-by: York Sun <yorksun@freescale.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: York Sun <yorksun@freescale.com>
10 years agobuildman: Add a few more toolchain examples to the README
Simon Glass [Sat, 9 Aug 2014 21:33:07 +0000 (15:33 -0600)]
buildman: Add a few more toolchain examples to the README

The current README is a bit sparse in this area, so add a few more
examples.

Suggested-by: Tom Rini <trini@ti.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Add a message indicating there are no errors
Simon Glass [Sat, 9 Aug 2014 21:33:06 +0000 (15:33 -0600)]
buildman: Add a message indicating there are no errors

If buildman finds no problems it prints nothing. This can be a bit confusing,
so add a message that all is well.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Add an option to specify the buildman config file
Simon Glass [Sat, 9 Aug 2014 21:33:05 +0000 (15:33 -0600)]
buildman: Add an option to specify the buildman config file

Add a new --config-file option (-G) to specify a different configuration
file from the default ~/.buildman.

Reported-by: Tom Rini <trini@ti.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Remove unused non-incremental build method code
Simon Glass [Sat, 9 Aug 2014 21:33:04 +0000 (15:33 -0600)]
buildman: Remove unused non-incremental build method code

The non-incremental build method is no longer used, so remove it.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Add verbose option to display errors as they happen
Simon Glass [Sat, 9 Aug 2014 21:33:03 +0000 (15:33 -0600)]
buildman: Add verbose option to display errors as they happen

Normally buildman operates in two passes - one to do the build and another
to summarise the errors. Add a verbose option (-v) to display build problems
as they happen. With -e also given, this will display errors too.

When building the current source tree (rather than a list of commits in a
branch), both -v and -e are enabled automatically.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Refactor output options
Simon Glass [Sat, 9 Aug 2014 21:33:02 +0000 (15:33 -0600)]
buildman: Refactor output options

We need the output options to be available in several places. It's a pain
to pass them into each function. Make them properties of the builder and
add a single function to set them up. At the same time, add a function which
produces summary output using these options.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Sort command line options
Simon Glass [Sat, 9 Aug 2014 21:33:01 +0000 (15:33 -0600)]
buildman: Sort command line options

These options have got slightly out of order. Fix them.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Move BuilderThread code to its own file
Simon Glass [Sat, 9 Aug 2014 21:33:00 +0000 (15:33 -0600)]
buildman: Move BuilderThread code to its own file

The builder.py file is getting too long, so split out some code.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Allow building of current source tree
Simon Glass [Sat, 9 Aug 2014 21:32:59 +0000 (15:32 -0600)]
buildman: Allow building of current source tree

Originally buildman had some support for building the current source tree.
However this was dropped before it was submitted, as part of the effort to
make it faster when building entire branches.

Reinstate this support. If no -b option is given, buildman will build the
current source tree.

Reported-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Add some notes about moving from MAKEALL
Simon Glass [Sat, 9 Aug 2014 21:32:58 +0000 (15:32 -0600)]
buildman: Add some notes about moving from MAKEALL

For those used to MAKEALL, buildman seems strange. Add some notes to ease
the transition.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Fix a few typos
Simon Glass [Sat, 9 Aug 2014 21:32:57 +0000 (15:32 -0600)]
buildman: Fix a few typos

There are several typos in the README - fix them.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agoMerge branch 'master' of git://git.denx.de/u-boot-blackfin
Tom Rini [Tue, 12 Aug 2014 20:54:55 +0000 (16:54 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-blackfin

10 years agolcd: support displaying 24bpp BMPs on >= 24bpp LCDs
Hannes Petermaier [Tue, 15 Jul 2014 14:28:46 +0000 (16:28 +0200)]
lcd: support displaying 24bpp BMPs on >= 24bpp LCDs

most todays LCDs support 32bpp e.g. the framebuffer memory is 32bpp
organized.

To support 24bpp BMPs we need to take only 3 byte from the bpp and set
one byte from the FB to 0.

Signed-off-by: Hannes Petermaier <oe5hpm@oevsv.at>
10 years agolcd: remove unused lcd_puts_xy
Jeroen Hofstee [Thu, 10 Jul 2014 20:21:11 +0000 (22:21 +0200)]
lcd: remove unused lcd_puts_xy

prevents a clang warning that the function is
never used.

cc: agust@denx.de
Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
10 years agovideo: ipu_disp: squash clang warning
Jeroen Hofstee [Tue, 17 Jun 2014 17:20:27 +0000 (19:20 +0200)]
video: ipu_disp: squash clang warning

Since rgb2ycbcr_coeff and friends are declared const, but assigned
to a void pointer, clang will warn that the const is implicity casted
away. If the pointer is changed to void const * gcc will warn when it
is implicitly casted to a const int array. Just add a correctly
typed pointer instead to prevent these casts and hence the warnings.

Cc: Troy Kisky <troy.kisky@boundarydevices.com>
Cc: Stefano Babic <sbabic@denx.de>
Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
10 years agovideo: ipu_disp: wait for DP SF end irq when disabling sync BG flows
Liu Ying [Fri, 28 Feb 2014 07:12:25 +0000 (15:12 +0800)]
video: ipu_disp: wait for DP SF end irq when disabling sync BG flows

Instead of waiting for DC triple buffer to be cleared, this patch
changes to wait for a relevant DP sync flow end interrupt to come
when disabling sync BG flows.  In this way, we align the implement
to the freescale internal IPUv3 driver.  After applying this patch,
an uboot hang up issue at the arch_preboot_os() stage, where we
disable a relevant ipu display channel, is not observed any more on
some MX6DL platforms.

Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
10 years agovideo: Add support for TI's AM335x LCD-Controller
Hannes Petermaier [Thu, 6 Mar 2014 13:39:06 +0000 (14:39 +0100)]
video: Add support for TI's AM335x LCD-Controller

- Adds support for a minimal framebuffer driver of TI's AM335x SoC
  to be compatible with Wolfgang Denk's LCD-Framework (CONFIG_LCD,
  common/lcd.c)

Signed-off-by: Hannes Petermaier <oe5hpm@oevsv.at>
10 years agolcd: cleanup unused functions
Hannes Petermaier [Fri, 7 Mar 2014 17:45:20 +0000 (18:45 +0100)]
lcd: cleanup unused functions

This patch removes following two functions:
- lcd_getbgcolor(...)
  not used somewhere outside lcd.c, internally we use now the global
  variable lcd_color_bg (was return value of function before)
- lcd_getfgcolor(...)
  not used in any place of u-boot

Signed-off-by: Hannes Petermaier <oe5hpm@oevsv.at>
[agust: rebased]
Signed-off-by: Anatolij Gustschin <agust@denx.de>
10 years agoAdd support for 32-bit organized framebuffers
Hannes Petermaier [Fri, 7 Mar 2014 17:55:40 +0000 (18:55 +0100)]
Add support for 32-bit organized framebuffers

- Adds support for 32-bit organized framebuffers to the LCD-framework.

Signed-off-by: Hannes Petermaier <oe5hpm@oevsv.at>
Cc: agust@denx.de
10 years agoenv_fat.c: Make sure our buffer is cache aligned
Tom Rini [Fri, 1 Aug 2014 17:59:10 +0000 (13:59 -0400)]
env_fat.c: Make sure our buffer is cache aligned

We must ensure the buffer we read the env into is aligned or we may get
warnings later on.

Signed-off-by: Tom Rini <trini@ti.com>
10 years agobootm: use genimg_get_kernel_addr()
Bryan Wu [Fri, 1 Aug 2014 00:40:00 +0000 (17:40 -0700)]
bootm: use genimg_get_kernel_addr()

Use the new API which is originally taken out from boot_get_kernel
of bootm.c

Signed-off-by: Bryan Wu <pengw@nvidia.com>
Tested-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Stephen Warren <swarren@nvidia.com>
[trini: Fix warnings with CONFIG_FIT]
Signed-off-by: Tom Rini <trini@ti.com>
10 years agopxe: detect image format before calling bootm/bootz
Bryan Wu [Fri, 1 Aug 2014 00:39:59 +0000 (17:39 -0700)]
pxe: detect image format before calling bootm/bootz

Trying bootm for zImage will print out several error message which
is not necessary for this case. So detect image format firstly, only
try bootm for legacy and FIT format image then try bootz for others.

This patch needs new function genimg_get_kernel_addr().

Signed-off-by: Bryan Wu <pengw@nvidia.com>
10 years agoimage: introduce genimg_get_kernel_addr()
Bryan Wu [Fri, 1 Aug 2014 00:39:58 +0000 (17:39 -0700)]
image: introduce genimg_get_kernel_addr()

Kernel address is normally stored as a string argument of bootm or bootz.
This function is taken out from boot_get_kernel() of bootm.c, which can be
reused by others.

Signed-off-by: Bryan Wu <pengw@nvidia.com>
[trini: Fix warnings with CONFIG_FIT]
Signed-off-by: Tom Rini <trini@ti.com>
10 years agoget_maintainer.pl: add support for scanning multiple MAINTAINERS files
Daniel Schwierzeck [Fri, 1 Aug 2014 00:24:11 +0000 (02:24 +0200)]
get_maintainer.pl: add support for scanning multiple MAINTAINERS files

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
10 years agoget_maintainer.pl: adapt to U-Boot tree
Daniel Schwierzeck [Fri, 1 Aug 2014 00:24:10 +0000 (02:24 +0200)]
get_maintainer.pl: adapt to U-Boot tree

Switch core maintainer to Tom Rini. Adapt directory layout for
git tree detection.

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
10 years agoget_maintainer.pl: import script from linux 3.15
Daniel Schwierzeck [Fri, 1 Aug 2014 00:24:09 +0000 (02:24 +0200)]
get_maintainer.pl: import script from linux 3.15

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
10 years agoMAINTAINERS: add initial version
Daniel Schwierzeck [Fri, 1 Aug 2014 00:24:08 +0000 (02:24 +0200)]
MAINTAINERS: add initial version

MAINTAINERS contains all currently known custodians based on
infos from wiki [1] and u-boot git forks [2].

[1] http://www.denx.de/wiki/U-Boot/Custodians
[2] http://git.denx.de/?p=u-boot.git;a=forks

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
10 years agolib: lmb: fix overflow in __lmb_alloc_base w/ large RAM
Stephen Warren [Thu, 31 Jul 2014 19:40:07 +0000 (13:40 -0600)]
lib: lmb: fix overflow in __lmb_alloc_base w/ large RAM

If a 32-bit system has 2GB of RAM, and the base address of that RAM is
2GB, then start+size will overflow a 32-bit value (to a value of 0).

__lmb_alloc_base is affected by this; it calculates the minimum of
(start+size of RAM) and max_addr. However, when start+size is 0, it
is always less than max_addr, which causes the value of max_addr not
to be taken into account when restricting the allocation's location.

Fix this by calculating start+size separately, and if that calculation
underflows, using -1 (interpreted as the max unsigned value) as the
value instead, and then taking the min of that and max_addr. Now that
start+size doesn't overflow, it's typically large, and max_addr
dominates the min() call, and is taken into account.

The user-visible symptom of this bug is that CONFIG_BOOTMAP_SZ is ignored
on Tegra124 systems with 2GB of RAM, which in turn causes the DT to be
relocated at the very end of RAM, which the ARM Linux kernel doesn't map
during early boot, and which causes boot failures. With this fix,
CONFIG_BOOTMAP_SZ correctly restricts the relocated DT to a much lower
address, and everything works.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agoARM: rpi_b: use new generic $bootcmd
Stephen Warren [Wed, 30 Jul 2014 22:37:16 +0000 (16:37 -0600)]
ARM: rpi_b: use new generic $bootcmd

Replace the custom $bootcmd with that from <config_distro_bootcmd.h>.
There should be no functional change, since the new generic $bootcmd was
derived strongly from tegra-common-post.h, after which this part of
rpi_b.h was modelled.

The #defines to enable/disable U-Boot commands/features were moved
earlier in rpi_b.h, so they are set up before config_distro_bootcmd.h
is included, since it tests whether certain features should be included
based on those defines.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Simon Glass <sjg@chromium.org>
10 years agoARM: tegra: use new generic $bootcmd
Stephen Warren [Wed, 30 Jul 2014 22:37:15 +0000 (16:37 -0600)]
ARM: tegra: use new generic $bootcmd

Replace the custom $bootcmd with that from <config_distro_bootcmd.h>.
There should be no functional change, since the new generic $bootcmd was
derived strongly from tegra-common-post.h.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Simon Glass <sjg@chromium.org>
10 years agoconfig: introduce a generic $bootcmd
Dennis Gilmore [Wed, 30 Jul 2014 22:37:14 +0000 (16:37 -0600)]
config: introduce a generic $bootcmd

This generic $bootcmd, and associated support macros, automatically
searches a defined set of storage devices (or network protocols) for an
extlinux configuration file or U-Boot boot script in various standardized
locations. Distros that install such a boot config file/script in those
standard locations will get easy-to-set-up booting on HW that enables
this generic $bootcmd.

Boards can define the set of devices from which boot is attempted, and
the order in which they are attempted. Users may later customize this
set/order by edting $boot_targets.

Users may interrupt the boot process and boot from a specific device
simply by executing e.g.:

$ run bootcmd_mmc1
or:
$ run bootcmd_pxe

This patch was originally written by Dennis Gilmore based on Tegra and
rpi_b boot scripts. I have made the following modifications since then:

* Boards must define the BOOT_TARGET_DEVICES macro in order to specify
  the set of devices (and order) from which to attempt boot. If needed,
  we can define a default directly in config_distro_bootcmd.h.

* Removed $env_import and related variables; nothing used them, and I
  think it's better for boards to pre-load an environment customization
  file using CONFIG_PREBOOT if they need.

* Renamed a bunch of variables to suit my whims:-)

Signed-off-by: Dennis Gilmore <dennis@ausil.us>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Marek Vasut <marex@denx.de>
Acked-by: Simon Glass <sjg@chromium.org>
10 years agorsa: Fix two errors in the implementation
Simon Glass [Wed, 30 Jul 2014 16:00:17 +0000 (10:00 -0600)]
rsa: Fix two errors in the implementation

1. Failure to set the return code correctly
2. Failure to detect the loop end condition when the value is equal to
the modulus.

Reported-by: Jeroen Hofstee <jeroen@myspectrum.nl>
Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agoomap: clean-up dead configs
Masahiro Yamada [Wed, 30 Jul 2014 10:11:41 +0000 (19:11 +0900)]
omap: clean-up dead configs

The following configs are not defined at all.

 - CONFIG_OMAP1510
 - CONFIG_OMAP_1510P1
 - CONFIG_OMAP_SX1
 - CONFIG_OMAP3_DMA
 - CONFIG_OMAP3_ZOOM2
 - CONFIG_OMAP_INNOVATOR

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Cc: Tom Rini <trini@ti.com>
10 years agofdt: Sync up with libfdt
Simon Glass [Wed, 30 Jul 2014 09:59:03 +0000 (03:59 -0600)]
fdt: Sync up with libfdt

This brings in changes up to commit f9e91a48 in the libfdt repo.
Mostly this is whitespace/minor changes. But there are a few new
features:

- fdt_size_cells() and fdt_address_cells()
- fdt_resize()

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agofdt: Rename fdt_resize() to fdt_shrink_to_minimum()
Simon Glass [Wed, 30 Jul 2014 09:59:02 +0000 (03:59 -0600)]
fdt: Rename fdt_resize() to fdt_shrink_to_minimum()

Since libfdt now has an fdt_resize() function, we need to rename the
U-Boot one.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agocosmetic: update doc/README.scrapyard
Masahiro Yamada [Tue, 29 Jul 2014 10:41:24 +0000 (19:41 +0900)]
cosmetic: update doc/README.scrapyard

- Add 'p1023rds' to the list since commit d0bc5140 dropped
   the board support but missed to update this file
 - Fill the Commit and Removed Date fields for boards removed
   by earlier commits
 - Move 'incaip' to keep the list sorted in reverse
   chronological order
 - Describe the soring rule in the comment block:
   "The list should be sorted in reverse chronological order."
 - Fix typos in the comment block

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agoext4load: fix help text
Pavel Machek [Tue, 29 Jul 2014 10:37:25 +0000 (12:37 +0200)]
ext4load: fix help text

Fix ext4load help text.

Signed-off-by: Pavel Machek <pavel@denx.de>
10 years agogit-mailrc: Add myself as dm maintainer
Simon Glass [Tue, 29 Jul 2014 06:03:12 +0000 (00:03 -0600)]
git-mailrc: Add myself as dm maintainer

Add a subsystem entry for dm with myself as maintainer.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agogit-mailrc: Change fdt maintainer
Simon Glass [Tue, 29 Jul 2014 06:03:11 +0000 (00:03 -0600)]
git-mailrc: Change fdt maintainer

Add myself as fdt maintainer.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agonet: BOOTP retry timeout improvements
Stephen Warren [Fri, 25 Jul 2014 23:30:48 +0000 (17:30 -0600)]
net: BOOTP retry timeout improvements

Currently, the BOOTP code sends out its initial request as soon as the
Ethernet driver indicates "link up". If this packet is lost or not
replied to for some reason, the code waits for a 1s timeout before
retrying. For some reason, such early packets are often lost on my
system, so this causes an annoying delay.

To optimize this, modify the BOOTP code to have very short timeouts for
the first packet transmitted, but gradually increase the timeout each
time a timeout occurs. This way, if the first packet is lost, the second
packet is transmitted quite quickly and hence the overall delay is low.
However, if there's still no response, we don't keep spewing out packets
at an insane speed.

It's arguably more correct to try and find out why the first packet is
lost. However, it seems to disappear inside my Ethenet chip; the TX chip
indicates no error during TX (not that it has much in the way of
reporting...), yet wireshark on the RX side doesn't see any packet.
FWIW, I'm using an ASIX USB Ethernet adapter. Perhaps "link up" is
reported too early or based on the wrong condition in HW, and we should
add some fixed extra delay into the driver. However, this would slow down
every link up event even if it ends up not being needed in some cases.
Having BOOTP retry quickly applies the fix/WAR to every possible
Ethernet device, and is quite simple to implement, so seems a better
solution.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
10 years agoemif.h: remove duplicated argument to |
maxin.john@enea.com [Thu, 24 Jul 2014 12:09:05 +0000 (14:09 +0200)]
emif.h: remove duplicated argument to |

Remove the duplicated argument to | in two places. Reported
by Coccinelle (http://coccinelle.lip6.fr/).

Signed-off-by: Maxin B. John <maxin.john@enea.com>
10 years agovitesse: remove duplicated argument to ||
maxin.john@enea.com [Thu, 24 Jul 2014 10:26:05 +0000 (12:26 +0200)]
vitesse: remove duplicated argument to ||

Remove the duplicated argument to || check

Signed-off-by: Maxin B. John <maxin.john@enea.com>
10 years agoboard_r: Add missing return to initr_doc
Ian Campbell [Thu, 24 Jul 2014 08:29:57 +0000 (09:29 +0100)]
board_r: Add missing return to initr_doc

I happened to spot this while working in the area.

Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Acked-by: Simon Glass <sjg@chromium.org>
Cc: Simon Glass <sjg@chromium.org>
10 years agoMakefile: use u-boot.map for binary_size_check
Chris Packham [Thu, 24 Jul 2014 05:27:07 +0000 (17:27 +1200)]
Makefile: use u-boot.map for binary_size_check

u-boot.map is generated automatically by the compiler and more
importantly can handle addresses >4GB.

10 years agoMakefile: use $(shell ...) for determining file_size
Chris Packham [Thu, 24 Jul 2014 00:44:25 +0000 (12:44 +1200)]
Makefile: use $(shell ...) for determining file_size

file_size was being calculated using back-ticks but map_size uses
$(shell ...). Update the file_size calculation to use $(shell ...).

From: Jeroen Hofstee <jeroen@myspectrum.nl>

The binary_size_check target relies on stat -c %s
to return the size of u-boot.bin. This only works
with GNU stat though. Use wc instead.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
10 years agopxe: clear Bootfile before returning
Stephen Warren [Wed, 23 Jul 2014 00:06:46 +0000 (18:06 -0600)]
pxe: clear Bootfile before returning

When "pxe boot" downloads the initrd/kernel/DTB, netboot_common() saves
the downloaded filename to global variable BootFile. If the boot
operation is aborted, this global state is not cleared. If "dhcp" is
executed later without any arguments, BootFile is not cleared, and when
the DHCP response is received, BootpCopyNetParams() writes the value into
environment variable bootfile.

This causes the following scenario:

* Boot script executes dhcp; pxe get; pxe boot

* User CTRL-C's the PXE menu, which causes the first menu item to be
  booted, which causes some file to be downloaded.

  (This boot-on-CTRL-C behaviour is arguably a bug too, but it's a
  separate bug and the bug this patch fixes would still exist if the user
  simply waited to press CTRL-C until "pxe boot" started downloading
  files)

* User CTRL-C's the file downloads, but the filename is still written to
  the bootfile environment variable.

* User re-runs the boot command, which in my case executes "dhcp; pxe get;
  pxe boot" again, and "dhcp" picks up the saved bootfile environment
  variable and proceeds to download a file that it shouldn't.

To solve this, modify the implementation of "pxe get" to clear BootFile
if the whole boot operation fails, which avoids this whole mess.

An alternative would be to modify netboot_common() such that the no-
arguments case explicitly clears the global variable BootFile. However,
that would prevent the following command sequences from working:

$ dhcp filename # downloads "filename"
$ dhcp          # downloads $bootfile, i.e. "filename"

or:
$ setenv bootfile filename
$ dhcp          # downloads $bootfile, i.e. "filename"

... and I assume someone relies on U-Boot working that way.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
10 years agodoc: README.android-fastboot: Add note about vendor ID
Barnes, Clifton A [Tue, 22 Jul 2014 15:23:56 +0000 (11:23 -0400)]
doc: README.android-fastboot: Add note about vendor ID

The Android fastboot client only communicates with specific vendor IDs.
This addition to the documentation points out that fact so everyone is
aware that not just any vendor ID will work and where to find the IDs
that will.

Signed-off-by: Clifton Barnes <cabarnes@indesign-llc.com>
Cc: Rob Herring <robh@kernel.org>
10 years agoext4: trats: trats2: Modify dfu_alt_info's file names to have absolute path
Łukasz Majewski [Tue, 22 Jul 2014 08:17:06 +0000 (10:17 +0200)]
ext4: trats: trats2: Modify dfu_alt_info's file names to have absolute path

After the clean up performed in the commit 1151b7ac10b81ecbb the DFU subsystem
requires absolute patch for correct operation.

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
10 years agoImplement generalised RSA public exponents for verified boot
Michael van der Westhuizen [Wed, 2 Jul 2014 08:17:26 +0000 (10:17 +0200)]
Implement generalised RSA public exponents for verified boot

Remove the verified boot limitation that only allows a single
RSA public exponent of 65537 (F4).  This change allows use with
existing PKI infrastructure and has been tested with HSM-based
PKI.

Change the configuration OF tree format to store the RSA public
exponent as a 64 bit integer and implement backward compatibility
for verified boot configuration trees without this extra field.

Parameterise vboot_test.sh to test different public exponents.

Mathematics and other hard work by Andrew Bott.

Tested with the following public exponents: 3, 5, 17, 257, 39981,
50457, 65537 and 4294967297.

Signed-off-by: Andrew Bott <Andrew.Bott@ipaccess.com>
Signed-off-by: Andrew Wishart <Andrew.Wishart@ipaccess.com>
Signed-off-by: Neil Piercy <Neil.Piercy@ipaccess.com>
Signed-off-by: Michael van der Westhuizen <michael@smart-africa.com>
Cc: Simon Glass <sjg@chromium.org>
10 years agoserial: sh: Add support External Clock mode
Nobuhiro Iwamatsu [Mon, 28 Jul 2014 06:07:44 +0000 (15:07 +0900)]
serial: sh: Add support External Clock mode

R8A7780 and R7A7791 of rmobile supports External Clock mode, and these uses
different from Internal Clock mode registers and calculations to the baud rate
setting. This adds function for External Clock mode.

Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
10 years agoserial: sh: Add support DL and CKS register for R8A7794
Nobuhiro Iwamatsu [Mon, 28 Jul 2014 06:07:43 +0000 (15:07 +0900)]
serial: sh: Add support DL and CKS register for R8A7794

R8A7794 has DL and CKS register, and these registers are used in external clock
mode. This adds support these for R8A7794.

Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
10 years agousb: ehci: rmobile: Remove xHCI address
Nobuhiro Iwamatsu [Mon, 28 Jul 2014 06:29:31 +0000 (15:29 +0900)]
usb: ehci: rmobile: Remove xHCI address

echi-rmobile does not support xHCI. This removes xHCI address
from address table. And this revise a value of CONFIG_USB_MAX_CONTROLLER_COUNT
for lager board and koelsh board.

Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
10 years agousb: ehci: rmobile: Add support R8A7794
Nobuhiro Iwamatsu [Thu, 24 Jul 2014 05:52:07 +0000 (14:52 +0900)]
usb: ehci: rmobile: Add support R8A7794

R8A7794 has same IP of USB controller as R8A7790 and R8A7791.
This addes support for R8A7794.

Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
10 years agodfu: fix readback buffer overflow test
Stephen Warren [Tue, 1 Jul 2014 18:16:57 +0000 (12:16 -0600)]
dfu: fix readback buffer overflow test

The buffer is too small if it's < size to read, not if it's <= the size.
This fixes the 1MB test case on Tegra, which has a 1MB buffer.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agotest: dfu: add some more test cases
Stephen Warren [Tue, 1 Jul 2014 18:16:56 +0000 (12:16 -0600)]
test: dfu: add some more test cases

On Tegra, the DFU buffer size is 1M. Consequently, the 8M test always
fails. Add tests for the 1M size, and one byte less as a corner case,
so that some large tests are executed and expected to pass.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agotest: dfu: cleanup before execution
Stephen Warren [Tue, 1 Jul 2014 18:16:55 +0000 (12:16 -0600)]
test: dfu: cleanup before execution

Call cleanup() before running tests too. If a previous test was CTRL-C'd
some stale files may have been left around. dfu-util refuses to receive
a file to a filename that already exists, which results in false test
failures if the files aren't cleaned up first.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agothor: defer parsing of device string to IO backend
Lukasz Majewski [Mon, 23 Jun 2014 07:39:16 +0000 (09:39 +0200)]
thor: defer parsing of device string to IO backend

Commit d4f5ef59cc7 "dfu: defer parsing of device string to IO backend" changed
the function signature of dfu_init_env_entities(). Adjust cmd_thordown.c
to match that change.

Also, apply the same change as commit d6d37d737b58e "dfu: free entities
when parsing fails" to cmd_thordown.c.

Fixes: d4f5ef59cc7 ("dfu: defer parsing of device string to IO backend")
Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
Reviewed-by: Stephen Warren <swarren@nvidia.com>
10 years agotest:dfu: README file update
Lukasz Majewski [Fri, 20 Jun 2014 15:53:44 +0000 (17:53 +0200)]
test:dfu: README file update

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
10 years agotest: dfu: script enhancements
Stephen Warren [Tue, 10 Jun 2014 22:28:10 +0000 (16:28 -0600)]
test: dfu: script enhancements

Various misc enhancements to dfu_gadget_test.sh:

* After every write (download), perform a write to a different file
  with different data. This ensures that the DFU buffer's content is
  replaced, so that if the read (upload) succeeds, we know that the
  correct data was actually read from the storage device, rather than
  simply being left over in the DFU buffer. This requires two alt
  setting names to be passed to the script, and a dummy data file to
  be generated by dfu_gadget_test_init.sh.

* Fix the assumption that dfu_gadget_test.sh is run from the directory
  that contains it, by cd'ing to that directory before invoking
  ./dfu_gadget_test_init.sh.

* Use $DIR$RCV_DIR consistently, rather than using plain $RCV_DIR in
  some places.

* Add 959, 961 test file sizes, to be consistent with having one
  more than and one less than all the other "round" sizes 64, 128, and
  4096.

* Remove references to $BKP_DIR from dfu_gadget_test_init.sh, since it
  isn't used.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agotest:dfu: Add test scripts for testing DFU regression
Lukasz Majewski [Wed, 18 Jun 2014 09:38:56 +0000 (11:38 +0200)]
test:dfu: Add test scripts for testing DFU regression

This commit adds test scripts for testing if any commit has introduced
regression to the DFU subsystem.

It uses md5 to test if sent and received file is correct.
The test detailed description is available at README file.

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
10 years agodfu: add SF backend
Stephen Warren [Wed, 11 Jun 2014 22:03:36 +0000 (16:03 -0600)]
dfu: add SF backend

This allows SPI Flash to be programmed using DFU.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agodfu: add free_entity() to struct dfu_entity
Stephen Warren [Wed, 11 Jun 2014 22:03:35 +0000 (16:03 -0600)]
dfu: add free_entity() to struct dfu_entity

This allows the backend to free any resources allocated during the
relevant dfu_fill_entity_*() call. This will soon be used by the
SF backend.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agodfu: allow backend to specify a maximum buffer size
Stephen Warren [Wed, 11 Jun 2014 22:03:34 +0000 (16:03 -0600)]
dfu: allow backend to specify a maximum buffer size

CONFIG_SYS_DFU_DATA_BUF_SIZE may be large to allow for FAT/ext layouts
to transfer large files. However, this means that individual write
operations will take a long time. Allow backends to specify a maximum
buffer size, so that each write operation is limited to a smaller data
block. This prevents the DFU protocol from timing out when e.g. writing
to SPI flash. I would guess that NAND might benefit from setting this
value too, but I can't test that.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agodfu: defer parsing of device string to IO backend
Stephen Warren [Wed, 11 Jun 2014 22:03:33 +0000 (16:03 -0600)]
dfu: defer parsing of device string to IO backend

Devices are not all identified by a single integer. To support
this, defer the parsing of the device string to the IO backed, so that
it can apply the appropriate rules.

SPI devices are specified as controller:chip_select. SPI/SF support will
be added soon.

MMC devices can also be specified as controller[.hwpart][:partition] in
many commands, although we don't support that syntax in DFU.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agodfu: add write error handling
Stephen Warren [Wed, 11 Jun 2014 18:48:08 +0000 (12:48 -0600)]
dfu: add write error handling

Fix calls to dfu_write() and dfu_flush() to detect errors in the I/O
itself. This could happen due to problems with the storage medium, or
simply when trying to write a FAT/ext file that is larger than the buffer
dfu_mmc.c maintains for this purpose.

Signal the error by switching the DFU state/status. This will be picked
up by the DFU client when it sends the next DFU request. Note that errors
can't simply be returned from e.g. dnload_request_complete(), since that
function has no way to pass errors back to the DFU client; a call to
dnload_request_complete() simply means that a USB OUT completed.

This error state/status needs to be cleared when the next DFU client
connects. While there is a DFU_CLRSTATUS request, no DFU client seems to
send this. Hence, clear this when selecting the USB alternate setting on
the USB interface.

Finally, dfu.c relies on a call to dfu_flush() to clear up the internal
state of the write transaction. Now that errors in dfu_write() are
detected, dfu_flush() may no longer be called for every transaction.
Separate out the cleanup code into a new function, and call it whenever
dfu_write() fails, as well as from any call to dfu_flush().

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agodfu: fix some issues with reads/uploads
Stephen Warren [Wed, 11 Jun 2014 18:47:27 +0000 (12:47 -0600)]
dfu: fix some issues with reads/uploads

DFU read support appears to rely upon dfu->read_medium() updating the
passed-by-reference len parameter to indicate the remaining size
available for reading.

dfu_read_medium_mmc() never does this, and the implementation of
dfu_read_medium_nand() will only work if called just once; it hard-codes
the value to the total size of the NAND device irrespective of read
offset.

I believe that overloading dfu->read_medium() is confusing. As such,
this patch introduces a new function dfu->get_medium_size() which can
be used to explicitly find out the medium size, and nothing else.
dfu_read() is modified to use this function to set the initial value for
dfu->r_left, rather than attempting to use the side-effects of
dfu->read_medium() for this purpose.

Due to this change, dfu_read() must initially set dfu->b_left to 0, since
no data has been read.

dfu_read_buffer_fill() must also be modified not to adjust dfu->r_left
when simply copying data from dfu->i_buf_start to the upload request
buffer. r_left represents the amount of data left to be read from HW.
That value is not affected by the memcpy(), but only by calls to
dfu->read_medium().

After this change, I can read from either a 4MB or 1.5MB chunk of a 4MB
eMMC boot partion with CONFIG_SYS_DFU_DATA_BUF_SIZE==1MB. Without this
change, attempting to do that would result in DFU read returning no data
at all due to r_left never being set.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agofs: implement size/fatsize/ext4size
Stephen Warren [Wed, 11 Jun 2014 18:47:26 +0000 (12:47 -0600)]
fs: implement size/fatsize/ext4size

These commands may be used to determine the size of a file without
actually reading the whole file content into memory. This may be used
to determine if the file will fit into the memory buffer that will
contain it. In particular, the DFU code will use it for this purpose
in the next commit.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agosupport blackfin board initialization in generic board_f
Sonic Zhang [Thu, 17 Jul 2014 11:01:34 +0000 (19:01 +0800)]
support blackfin board initialization in generic board_f

- init hardware watchdog if applicable
- use CONFIG_SYS_MONITOR_LEN as the gd monitor len for Blackfin
- reserve u-boot memory at the top field of the RAM for Blackfin
- avoid refer to CONFIG_SYS_MONITOR_LEN, which is not defined by Blackfin

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
10 years agoblackfin: convert blackfin board_f and board_r to use generic board init functions
Sonic Zhang [Thu, 17 Jul 2014 11:00:29 +0000 (19:00 +0800)]
blackfin: convert blackfin board_f and board_r to use generic board init functions

- move blackfin specific cpu init code from blackfin board.c to cpu.c
- remove blackfin specific board init code and invoke generic board_f fron cpu init entry
- rename section name bss_vma to bss_start in order to match the generic board init code
- add a fake relocate_code function to set up the new stack only

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
10 years agoblackfin: spi clock is in sysclk1 domain instead of sysclk0
Scott Jiang [Fri, 30 May 2014 08:43:34 +0000 (16:43 +0800)]
blackfin: spi clock is in sysclk1 domain instead of sysclk0

Signed-off-by: Scott Jiang <scott.jiang.linux@gmail.com>
Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
10 years agobfin: add register define required by core B on dual core BF609 processor
Aaron Wu [Wed, 30 Jul 2014 06:39:17 +0000 (14:39 +0800)]
bfin: add register define required by core B on dual core BF609 processor

Add register define required by core B on dual core BF609 processor.

Signed-off-by: Aaron Wu <Aaron.wu@analog.com>
10 years agoPrepare v2014.10-rc1 v2014.10-rc1
Tom Rini [Wed, 6 Aug 2014 12:52:10 +0000 (08:52 -0400)]
Prepare v2014.10-rc1

Signed-off-by: Tom Rini <trini@ti.com>
10 years agoChange Andy Fleming's email address
Andy Fleming [Fri, 25 Jul 2014 22:39:08 +0000 (17:39 -0500)]
Change Andy Fleming's email address

Messages to afleming@freescale.com now bounce, and should be
directed to my personal address at afleming@gmail.com

Signed-off-by: Andy Fleming <afleming@gmail.com>
10 years agoThe _config target is not present anymore, mention _defconfig instead
Holger Freyther [Mon, 4 Aug 2014 07:26:05 +0000 (09:26 +0200)]
The _config target is not present anymore, mention _defconfig instead

The _config part is gone for sure, the _defconfig target could at least
work. I have not verified this for all targets though.

10 years agogit-mailrc: add a kconfig alias
Stephen Warren [Thu, 31 Jul 2014 23:30:03 +0000 (17:30 -0600)]
git-mailrc: add a kconfig alias

It's easier to Cc Masahiro on Kconfig-related changes with a git-mailrc
alias.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agodoc: README.SPL: adjust for Kbuild and Kconfig
Masahiro Yamada [Tue, 5 Aug 2014 06:25:06 +0000 (15:25 +0900)]
doc: README.SPL: adjust for Kbuild and Kconfig

Reflect the latest build system to doc/README.SPL.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agodoc: delete README.ARM-SoC
Masahiro Yamada [Tue, 5 Aug 2014 06:25:32 +0000 (15:25 +0900)]
doc: delete README.ARM-SoC

This document is too old and useless.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agoMerge branch 'master' of git://git.denx.de/u-boot-spi
Tom Rini [Tue, 5 Aug 2014 21:16:16 +0000 (17:16 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-spi

10 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc85xx
Tom Rini [Mon, 4 Aug 2014 17:35:50 +0000 (13:35 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx

10 years agospi, spi_mxc: do not hang in spi_xchg_single
Heiko Schocher [Mon, 14 Jul 2014 08:22:11 +0000 (10:22 +0200)]
spi, spi_mxc: do not hang in spi_xchg_single

if status register do never set MXC_CSPICTRL_TC, spi_xchg_single
endless loops. Add a timeout here to prevent endless hang.

Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Dirk Behme <dirk.behme@gmail.com>
Reviewed-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
10 years agospi: Support half-duplex mode in FDT decode
Simon Glass [Mon, 7 Jul 2014 16:16:39 +0000 (10:16 -0600)]
spi: Support half-duplex mode in FDT decode

This parameter should also be supported.

Signed-off-by: Simon Glass <sjg@chromium.org>
Tested-by: Ajay Kumar <ajaykumar.rs@samsung.com>
Reviewed-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
10 years agoexynos: spi: Fix calculation of SPI transaction start time
Simon Glass [Mon, 7 Jul 2014 16:16:38 +0000 (10:16 -0600)]
exynos: spi: Fix calculation of SPI transaction start time

The SPI transaction delay is supposed to be measured from the end of one
transaction to the start of the next. The code does not work that way, so
fix it.

Signed-off-by: Simon Glass <sjg@chromium.org>
Tested-by: Ajay Kumar <ajaykumar.rs@samsung.com>
Reviewed-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
10 years agocros_ec: Fix two bugs in the SPI implementation
Simon Glass [Mon, 7 Jul 2014 16:16:37 +0000 (10:16 -0600)]
cros_ec: Fix two bugs in the SPI implementation

An incorrect message version is passed to the EC in some cases and the
parameters of one function are switched.

Fix these problems.

Signed-off-by: Simon Glass <sjg@chromium.org>
Tested-by: Ajay Kumar <ajaykumar.rs@samsung.com>
Reviewed-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
10 years agosf: sf_ops: Stop leaking memory
Marek Vasut [Sat, 12 Jul 2014 12:41:31 +0000 (18:11 +0530)]
sf: sf_ops: Stop leaking memory

It's usually a common pattern to free() the memory that we allocated.
Implement this here to stop leaking memory.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
10 years agoMerge http://git.denx.de/u-boot-dm
Tom Rini [Mon, 4 Aug 2014 14:16:27 +0000 (10:16 -0400)]
Merge http://git.denx.de/u-boot-dm

10 years agoarm: Support pre-relocation malloc()
Simon Glass [Fri, 11 Jul 2014 04:23:29 +0000 (22:23 -0600)]
arm: Support pre-relocation malloc()

Add support for re-relocation malloc() in arm's start-up code.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agoarm: Set up global data before board_init_f()
Simon Glass [Fri, 11 Jul 2014 04:23:26 +0000 (22:23 -0600)]
arm: Set up global data before board_init_f()

At present arm defines CONFIG_SYS_GENERIC_GLOBAL_DATA, meaning that
the global_data pointer is set up in board_init_f(). However it is
actually set up before this, it just isn't zeroed.

If we zero the global data before calling board_init_f() then we
don't need to define CONFIG_SYS_GENERIC_GLOBAL_DATA.

Make this change (on arm32 only) to simplify the init process. I
don't have the ability to test aarch64 yet.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Tom Rini <trini@ti.com>
10 years agokmp204x: prepare to use CPU watchdog
Boschung, Rainer [Tue, 3 Jun 2014 07:05:20 +0000 (09:05 +0200)]
kmp204x: prepare to use CPU watchdog

This patch configures the qrio to trigger a core reset on
a CPU reset request.

Signed-off-by: Rainer Boschung <rainer.boschung@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agokmp204x/qrio: support for setting the CPU reset request mode
Boschung, Rainer [Tue, 3 Jun 2014 07:05:19 +0000 (09:05 +0200)]
kmp204x/qrio: support for setting the CPU reset request mode

To acheive this, the qrio_uprstreq() function that sets the UPRSTREQN
flag in the qrio RESCNF reg is added.

Signed-off-by: Rainer Boschung <rainer.boschung@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agokmp204x: set CPU watchdog reset reason flag
Boschung, Rainer [Tue, 3 Jun 2014 07:05:18 +0000 (09:05 +0200)]
kmp204x: set CPU watchdog reset reason flag

Check the core timer status register (TSR) for watchdog reset,
and and set the QRIO's reset reason flag REASON1[0] accordingly.

This allows the appliction SW to identify the cpu watchdog as a
reset reason, by setting the REASON1[0] flag in the QRIO.

Signed-off-by: Rainer Boschung <rainer.boschung@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agokmp204x/qrio: prepare support for the CPU watchdog reset reason
Boschung, Rainer [Tue, 3 Jun 2014 07:05:17 +0000 (09:05 +0200)]
kmp204x/qrio: prepare support for the CPU watchdog reset reason

To achieve this, the qrio_cpuwd_flag() function that sets the CPU watchdog
flag in the REASON1 reg is added.

Signed-off-by: Rainer Boschung <rainer.boschung@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agokmp204x: CPU watchdog enabled
Boschung, Rainer [Tue, 3 Jun 2014 07:05:16 +0000 (09:05 +0200)]
kmp204x: CPU watchdog enabled

The booting of the board is now protected by the CPU watchdog.
A failure during the boot phase will end up in board reset.

Signed-off-by: Rainer Boschung <rainer.boschung@keymile.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agopowerpc: mpc85xx watchdog init added to init_func
Boschung, Rainer [Tue, 3 Jun 2014 07:05:15 +0000 (09:05 +0200)]
powerpc: mpc85xx watchdog init added to init_func

When CONFIG_WATCHDOG is defined the board initialization just performs
a WATCHDOG_RESET, an initialization of the watchdog is not done.
This has been modified fot the MPC85xx, the board initialization calls
its watchdog initialitzation allowing for full watchdog configuration
very early in the boot phase.

Signed-off-by: Rainer Boschung <rainer.boschung@keymile.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agompc85xx: watchdog initialisation added
Boschung, Rainer [Tue, 3 Jun 2014 07:05:14 +0000 (09:05 +0200)]
mpc85xx: watchdog initialisation added

Function to inititialize the cpu watchdog added.

Signed-off-by: Rainer Boschung <rainer.boschung@keymile.com>
[York Sun: Add prototype in watchdog.h]
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agopowerpc: macros for e500mc timer regs added
Boschung, Rainer [Tue, 3 Jun 2014 07:05:13 +0000 (09:05 +0200)]
powerpc: macros for e500mc timer regs added

For e500mc cores the watchdog timer period has to be set by means of a
6bit value, that defines the bit of the timebase counter used to signal
a watchdog timer exception on its 0 to 1 transition.
The macro used to set the watchdog period TCR_WP, was redefined for e500mc
to support 6 WP setting.

The parameter (x) given to the macro specifies the prescaling factor of
the time base clock (fTB):

watchdog_period = 1/fTB * 2^x

Signed-off-by: Rainer Boschung <rainer.boschung@keymile.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agompc85xx: fix interrupt init to not affect watchdog
Boschung, Rainer [Tue, 3 Jun 2014 07:05:12 +0000 (09:05 +0200)]
mpc85xx: fix interrupt init to not affect watchdog

TCR watchdog bit are overwritten when dec interrupt is enabled.
This has been fixed with this patch.

Signed-off-by: Rainer Boschung <rainer.boschung@keymile.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agoenv_mmc: support env partition setup in runtime
Dmitry Lifshitz [Wed, 30 Jul 2014 10:19:06 +0000 (13:19 +0300)]
env_mmc: support env partition setup in runtime

Add callback with __weak annotation to allow setup of environment
partition number in runtime from a board file.

Propagate mmc_switch_part() return value into init_mmc_for_env() instead
of -1 in case of failure.

Signed-off-by: Dmitry Lifshitz <lifshitz@compulab.co.il>
Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Acked-by: Pantelis Antoniou <panto@antoniou-consulting.com>
10 years agoenv_mmc: add mmc_get_env_addr() prototype
Dmitry Lifshitz [Wed, 30 Jul 2014 10:19:05 +0000 (13:19 +0300)]
env_mmc: add mmc_get_env_addr() prototype

Add missing mmc_get_env_addr() prototype in environment.h

Signed-off-by: Dmitry Lifshitz <lifshitz@compulab.co.il>
Acked-by: Pantelis Antoniou <panto@antoniou-consulting.com>