oweals/u-boot.git
10 years agousb: ci_udc: fix probe error cleanup
Stephen Warren [Tue, 10 Jun 2014 17:02:37 +0000 (11:02 -0600)]
usb: ci_udc: fix probe error cleanup

If allocation of the ep0 req fails, clean up all the allocations that
were made in ci_udc_probe().

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agousb: ci_udc: fix freeing of ep0 req
Stephen Warren [Tue, 10 Jun 2014 17:02:36 +0000 (11:02 -0600)]
usb: ci_udc: fix freeing of ep0 req

ci_ep_alloc_request() avoids allocating multiple request objects for ep0
by keeping a record of the first req allocated for ep0, and always
returning that instead of allocating a new req. However, if this req is
ever freed, the record of the previous allocation is not cleared, so
ci_ep_alloc_request() will keep returning this stale pointer. Fix
ci_ep_free_request() to clear the record of the previous allocation.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agousb: ci_udc: call udc_disconnect() from ci_pullup()
Stephen Warren [Tue, 10 Jun 2014 17:02:35 +0000 (11:02 -0600)]
usb: ci_udc: call udc_disconnect() from ci_pullup()

ci_pullup()'s !is_on path contains a cut/paste copy of udc_disconnect().
Remove the duplication by simply calling udc_disconnect() instead.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agousb: ci_udc: complete ep0 direction handling
Stephen Warren [Thu, 29 May 2014 20:53:03 +0000 (14:53 -0600)]
usb: ci_udc: complete ep0 direction handling

handle_setup() currently assumes that the response to a Setup transaction
will be an OUT transaction, and any subsequent packet (if any) will be an
IN transaction. This appears to be valid in many cases; both USB
enumeration and Mass Storage work OK with this restriction. However, DFU
uses ep0 to transfer data in both directions. This renders the assumption
invalid; when sending data from device to host, the Data Stage is an IN
transaction, and the Status Stage is an OUT transaction. Enhance
handle_setup() to deduce the correct direction for the USB transactions
based on Setup transaction data.

ep0's request object only needs to be automatically re-queued when the
Data Stage completes, in order to implement the Status Stage. Once the
Status Stage transaction is complete, there is no need to re-queue the
USB request, so don't do that.

Don't sent USB request completion callbacks for Status Stage transactions.
These were queued by ci_udc itself, and only serve to confuse the USB
function code. For example, f_dfu attempts to interpret the 0-length data
buffers for Status Stage transactions as DFU packets. These buffers
contain stale data from the previous transaction. This causes f_dfu to
complain about a sequence number mismatch.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agousb: ci_udc: pre-allocate ep0 req
Stephen Warren [Thu, 29 May 2014 20:53:02 +0000 (14:53 -0600)]
usb: ci_udc: pre-allocate ep0 req

Allocate ep0's USB request object when the UDC driver is probed. This
solves a couple of issues in the current code:

a) A request object always exists for ep0. Prior to this patch, if setup
transactions arrived in an unexpected order, handle_setup() would need
to reply to a setup transaction before any ep0 usb_req was created.

This issue was introduced in commit 2813006fecda "usb: ci_udc: allow
multiple buffer allocs per ep."

b) handle_ep_complete no longer /has/ to queue the ep0 request again
after every single request completion. This is currently required, since
handle_setup() assumes it can find some request object in ep0's request
queue. This patch doesn't actually stop handle_ep_complete() from always
requeueing the request, but the next patch will.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agousb: ci_udc: use a single descriptor for ep0
Stephen Warren [Thu, 29 May 2014 20:53:01 +0000 (14:53 -0600)]
usb: ci_udc: use a single descriptor for ep0

ci_udc currently points ep->desc at separate descriptors for IN and OUT.
These descriptors only differ in the ep address IN/OUT field. Modify the
code to use a single descriptor, and change that descriptor's ep address
to indicate IN/OUT as required. This removes some data duplication.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agousb: ci_udc: detect queued requests on ep0
Stephen Warren [Thu, 29 May 2014 20:53:00 +0000 (14:53 -0600)]
usb: ci_udc: detect queued requests on ep0

The flipping of ep0 between IN and OUT relies on ci_ep_queue() consuming
the current IN/OUT setting immediately. If this is deferred to a later
point when the req is pulled out of ci_req->queue, then the IN/OUT
setting may have been changed since the req was queued, and state will
get out of sync. This condition doesn't occur today, but could if bugs
were introduced later, and this error-check will save a lot of debugging
time.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agousb: hub: remove CONFIG_USB_HUB_MIN_POWER_ON_DELAY
Stephen Warren [Mon, 19 May 2014 20:21:18 +0000 (14:21 -0600)]
usb: hub: remove CONFIG_USB_HUB_MIN_POWER_ON_DELAY

Now that we wait the correct specification-mandated time at the end of
usb_hub_power_on(), I suspect that CONFIG_USB_HUB_MIN_POWER_ON_DELAY has
no purpose.

For cm_t35.h, we already wait longer than the original MIN_POWER_ON_DELAY,
so this change is safe.

For gw_ventana.h, we will wait as long as the original MIN_POWER_ON_DELAY
iff pgood_delay was at least 200ms. I'm not sure if this is the case or
not, hence I've CC'd relevant people to test this change.

Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Tim Harvey <tharvey@gateworks.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agousb: hub: fix power good delay timing
Stephen Warren [Mon, 19 May 2014 20:21:17 +0000 (14:21 -0600)]
usb: hub: fix power good delay timing

usb_hub_power_on() currently waits for the maximum of (a) the hub port's
power output to become good, (b) the max time the USB specification
allows a device to take to connect.

However, these two operations must occur in series rather than in
parallel. First, the power supply ramps up to the level required to
power the USB device, and then the device may take a certain amount of
time to connect (assert D+/D- pullups).

Related, the maximum time that a device has to assert pullups is 1s not
100ms.

This is explained in "Connect Timing ECN.pdf", itself part of
usb_20_042814.zip from www.usb.org.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agodfu: Introduction of the "dfu_hash_algo" env variable for checksum method setting
Lukasz Majewski [Mon, 12 May 2014 08:43:36 +0000 (10:43 +0200)]
dfu: Introduction of the "dfu_hash_algo" env variable for checksum method setting

Up till now the CRC32 of received data was calculated unconditionally.
The standard crc32 implementation causes long delay when large images
were uploaded.

The "dfu_hash_algo" environment variable gives the opportunity to
disable on demand the hash (crc32) calculation.
It can be done without the need to recompile the u-boot binary.

By default the crc32 is calculated, which means that legacy behavior
has been preserved.

Tests results:
400 MiB ums.img file
With  crc32 calculation: 65 sec [avg 6.29 MB/s]
Without  crc32 calculation: 25 sec [avg 16.17 MB/s]

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
Cc: Marek Vasut <marex@denx.de>
10 years agoMerge branch 'master' of git://git.denx.de/u-boot-arm
Tom Rini [Fri, 30 May 2014 15:34:39 +0000 (11:34 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-arm

10 years agomain: Avoid unncessary strdup()/free()
Simon Glass [Fri, 11 Apr 2014 02:01:36 +0000 (20:01 -0600)]
main: Avoid unncessary strdup()/free()

It doesn't seem necessary to use memory allocation in this code. The setenv()
will make a copy anyway.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agomain: Make the execution path a little clearer in main.c
Simon Glass [Fri, 11 Apr 2014 02:01:35 +0000 (20:01 -0600)]
main: Make the execution path a little clearer in main.c

bootdelay_process() never returns in some circumstances, whichs makes the
control flow confusing. Change it so that the decision about how to execute
the boot command is made in the main_loop() code, so it is easier to follow.
Move CLI stuff to cli.c.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agomain: Hide the hush/simple details inside cli.c
Simon Glass [Fri, 11 Apr 2014 02:01:34 +0000 (20:01 -0600)]
main: Hide the hush/simple details inside cli.c

Move these details from main (which doesn't care which parser is used) to
cli.c where they belong.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agoSimplify the main loop
Simon Glass [Fri, 11 Apr 2014 02:01:33 +0000 (20:01 -0600)]
Simplify the main loop

The main loop is easier to follow if the code is grouped into separate
functions. Make this change, so that main_loop() is easier to read.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agom68k: powerpc: Clean up do_mdm_init
Simon Glass [Fri, 11 Apr 2014 02:01:32 +0000 (20:01 -0600)]
m68k: powerpc: Clean up do_mdm_init

This code seems unnecessarily complex. We really just need to check the
global_data. Now that is it all in one place, and not arch-specific, this
is pretty easy.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agoRename bootretry functions and remove #ifdefs
Simon Glass [Fri, 11 Apr 2014 02:01:31 +0000 (20:01 -0600)]
Rename bootretry functions and remove #ifdefs

Add a bootretry_ prefix to these two functions, and remove the need for
the #ifdef around everything (it moves to the Makefile).

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agoMove bootretry code into bootretry.c and clean up
Simon Glass [Fri, 11 Apr 2014 02:01:30 +0000 (20:01 -0600)]
Move bootretry code into bootretry.c and clean up

This code is only used by one board, so it seems a shame to clutter up
the readline code with it. Move it into its own file.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agoMove command line API into cli.c
Simon Glass [Fri, 11 Apr 2014 02:01:29 +0000 (20:01 -0600)]
Move command line API into cli.c

We now have a single entry point to the CLI, whether simple or hush. Put
this in its own file.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agoMove autoboot code to autoboot.c
Simon Glass [Fri, 11 Apr 2014 02:01:28 +0000 (20:01 -0600)]
Move autoboot code to autoboot.c

The autoboot code is complex and long. It deserves its own file with
a simple interface from main.c.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agoAdd cli_ prefix to readline functions
Simon Glass [Fri, 11 Apr 2014 02:01:27 +0000 (20:01 -0600)]
Add cli_ prefix to readline functions

This makes it clear where the code resides.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agoSplit out simple parser and readline into separate files
Simon Glass [Fri, 11 Apr 2014 02:01:26 +0000 (20:01 -0600)]
Split out simple parser and readline into separate files

It doesn't make sense to have the simple parser and the readline code
all in main. Split them out into separate files.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agomove CLI prototypes to cli.h and add comments
Simon Glass [Fri, 11 Apr 2014 02:01:25 +0000 (20:01 -0600)]
move CLI prototypes to cli.h and add comments

Move the CLI prototypes from common.h to cli.h as part of an effort to
reduce the size of common.h.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agoRename hush to cli_hush
Simon Glass [Fri, 11 Apr 2014 02:01:24 +0000 (20:01 -0600)]
Rename hush to cli_hush

Hush is a command-line interpreter, so rename it to make that clearer.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agoRemove unnecessary use of hush header file
Simon Glass [Fri, 11 Apr 2014 02:01:23 +0000 (20:01 -0600)]
Remove unnecessary use of hush header file

Some files include hush.h but don't actually use it. Remove this where
possible.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agoMerge branch 'master' of git://git.denx.de/u-boot-arc
Tom Rini [Tue, 27 May 2014 15:44:19 +0000 (11:44 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-arc

10 years agotb100 - add Abilis TB100 board
Alexey Brodkin [Wed, 21 May 2014 10:39:32 +0000 (14:39 +0400)]
tb100 - add Abilis TB100 board

Development board for headless gateway platform from Abilis Systems.
Initial commit with working UART and DW GMAC.

For now with generic Ethernet PHY due to problems in Realtek PHY driver.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Vineet Gupta <vgupta@synopsys.com>
Cc: Christian Ruppert <christian.ruppert@abilis.com>
Cc: Pierrick Hascoet <pierrick.hascoet@abilis.com>
10 years agoPrepare v2014.07-rc2 v2014.07-rc2
Tom Rini [Tue, 27 May 2014 14:22:07 +0000 (10:22 -0400)]
Prepare v2014.07-rc2

Signed-off-by: Tom Rini <trini@ti.com>
10 years agodm: rename device struct to udevice
Heiko Schocher [Thu, 22 May 2014 10:43:05 +0000 (12:43 +0200)]
dm: rename device struct to udevice

using UBI and DM together leads in compiler error, as
both define a "struct device", so rename "struct device"
in include/dm/device.h to "struct udevice", as we use
linux code (MTD/UBI/UBIFS some USB code,...) and cannot
change the linux "struct device"

Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Simon Glass <sjg@chromium.org>
Cc: Marek Vasut <marex@denx.de>
10 years agoARM: at91sam9m10g45ek: add mmc environment configuration support
Wu, Josh [Wed, 21 May 2014 02:42:16 +0000 (10:42 +0800)]
ARM: at91sam9m10g45ek: add mmc environment configuration support

In this configuration the environment will save in file: uboot.env of
mmc card.

Signed-off-by: Josh Wu <josh.wu@atmel.com>
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
10 years agoARM: at91sam9m10g45ek: enable mci0 support
Wu, Josh [Wed, 21 May 2014 02:42:15 +0000 (10:42 +0800)]
ARM: at91sam9m10g45ek: enable mci0 support

Also we enable the mmc command in configuration file.

As both CONFIG_CMD_MMC and CONFIG_CMD_USB use the CONFIG_DOS_PARTITION,
so remove the redundant CONFIG_DOS_PARTITION definition.

Signed-off-by: Josh Wu <josh.wu@atmel.com>
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
10 years agoARM: at91: remove redundant ARM926EJS definition in board config files
Wu, Josh [Tue, 20 May 2014 09:44:45 +0000 (17:44 +0800)]
ARM: at91: remove redundant ARM926EJS definition in board config files

As at91 board config file will include the SoC header, so we can remove
the ARM926EJS definition in board config files.

Signed-off-by: Josh Wu <josh.wu@atmel.com>
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
10 years agoat91: remove redundant AT91FAMILY definition in board config file
Wu, Josh [Tue, 20 May 2014 09:44:44 +0000 (17:44 +0800)]
at91: remove redundant AT91FAMILY definition in board config file

Now the AT91FAMILY is already defined in the at91 SoC header. The at91
board config file will include the SoC header file.

So we can remove the redundant AT91FAMILY definition in at91 board
config files.

Signed-off-by: Josh Wu <josh.wu@atmel.com>
[rebase patch]
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
10 years agoARM: at91sam9x5: define the AT91FAMILY and ARM926EJS in SoC header
Wu, Josh [Tue, 20 May 2014 09:44:43 +0000 (17:44 +0800)]
ARM: at91sam9x5: define the AT91FAMILY and ARM926EJS in SoC header

Signed-off-by: Josh Wu <josh.wu@atmel.com>
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
10 years agoARM: at91: remove AT91X40 macro since it is not use any more
Wu, Josh [Tue, 20 May 2014 09:27:28 +0000 (17:27 +0800)]
ARM: at91: remove AT91X40 macro since it is not use any more

The at91x40.h is not exist. So we remove it.

Signed-off-by: Josh Wu <josh.wu@atmel.com>
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
10 years agosama5d3xek: enable PMECC header generation
Andreas Bießmann [Mon, 19 May 2014 12:23:41 +0000 (14:23 +0200)]
sama5d3xek: enable PMECC header generation

Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
Cc: Bo Shen <voice.shen@atmel.com>
Tested-by: Bo Shen <voice.shen@atmel.com>
10 years agoarm:at91: enable ROM loadable atmel image
Andreas Bießmann [Mon, 19 May 2014 12:23:40 +0000 (14:23 +0200)]
arm:at91: enable ROM loadable atmel image

For sama5d3xek we need to modify the SPL image for correct detection by ROM
code.

Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
Tested-by: Bo Shen <voice.shen@atmel.com>
10 years agomkimage: add atmelimage
Andreas Bießmann [Mon, 19 May 2014 12:23:39 +0000 (14:23 +0200)]
mkimage: add atmelimage

The new atmelimage converts a machine code BLOB to bootable ROM image. Atmel
ROM has no sophisticated image format, it only checks the first 7 ARM vectors.
The vectors can contain valid B or LDR opcodes, the 6'th vector contains the
image size to load.

Additionally the PMECC header can be written by the atmelimage target. The
parameters must be given via the -n switch as a coma separated list. For
example:

mkimage -T atmelimage \
 -n usePmecc=1,sectorPerPage=4,sectorSize=512,spareSize=64,eccBits=4,eccOffset=36 \
 -d spl/u-boot-spl.bin boot.bin

A provided image can be checked for correct header setup. It prints out the
PMECC header parameters if it has one and the 6'th interrupt vector content.

---8<---
Image Type: ATMEL ROM-Boot Image with PMECC Header
PMECC header
====================
eccOffset:        36
sectorSize:      512
eccBitReq:         4
spareSize:        64
nbSectorPerPage:   4
usePmecc:          1
====================
6'th vector has 17044 set
--->8---

A SPL binary modified with the atmelimage mkimage target was succesfully
booted on a sama5d34ek via MMC and NAND.

Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
Cc: Bo Shen <voice.shen@atmel.com>
Cc: Heiko Schocher <hs@denx.de>
Tested-by: Bo Shen <voice.shen@atmel.com>
10 years agocorvus: remove unneeded CONFIG_AT91_LEGACY
Andreas Bießmann [Fri, 16 May 2014 08:51:05 +0000 (10:51 +0200)]
corvus: remove unneeded CONFIG_AT91_LEGACY

Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
Cc: Heiko Schocher <hs@denx.de>
10 years agommc: atmel_mci: fix print incorrect buffer content for debug
Wu, Josh [Wed, 7 May 2014 09:06:08 +0000 (17:06 +0800)]
mmc: atmel_mci: fix print incorrect buffer content for debug

Signed-off-by: Josh Wu <josh.wu@atmel.com>
[fix checkpatch line length warning]
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
10 years agogpio: at91: add sanity check for the NULL pointer
Wu, Josh [Wed, 7 May 2014 08:50:45 +0000 (16:50 +0800)]
gpio: at91: add sanity check for the NULL pointer

We need check the NULL pointer as at91_pio_get_port() may return NULL.

Also print a error message when at91_pio_get_port() failed otherwise we
cannot notice the failure.

Signed-off-by: Josh Wu <josh.wu@atmel.com>
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
10 years agoARM: atmel: at91sam9x5ek: convert to generic board
Bo Shen [Thu, 24 Apr 2014 03:42:16 +0000 (11:42 +0800)]
ARM: atmel: at91sam9x5ek: convert to generic board

Enable CONFIG_SYS_GENERIC_BOARD, so that we get rid of the following
warning on boot:

"Warning: Your board does not use generic board. Please read
doc/README.generic-board and take action. Boards not
upgraded by the late 2014 may break or be removed."

Signed-off-by: Bo Shen <voice.shen@atmel.com>
Tested-by: Josh Wu <josh.wu@atmel.com>
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
10 years agoARM: atmel: at91sam9m10g45ek: convert to generic board
Bo Shen [Thu, 24 Apr 2014 03:42:15 +0000 (11:42 +0800)]
ARM: atmel: at91sam9m10g45ek: convert to generic board

Enable CONFIG_SYS_GENERIC_BOARD, so that we get rid of the following
warning on boot:

"Warning: Your board does not use generic board. Please read
doc/README.generic-board and take action. Boards not
upgraded by the late 2014 may break or be removed."

Signed-off-by: Bo Shen <voice.shen@atmel.com>
Tested-by: Josh Wu <josh.wu@atmel.com>
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
10 years agoARM: atmel: sama5d3_xplained: convert to generic board
Bo Shen [Thu, 24 Apr 2014 03:42:14 +0000 (11:42 +0800)]
ARM: atmel: sama5d3_xplained: convert to generic board

Enable CONFIG_SYS_GENERIC_BOARD, so that we get rid of the following
warning on boot:

"Warning: Your board does not use generic board. Please read
doc/README.generic-board and take action. Boards not
upgraded by the late 2014 may break or be removed."

Signed-off-by: Bo Shen <voice.shen@atmel.com>
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
10 years agoARM: atmel: sama5d3xek: convert to generic board
Bo Shen [Thu, 24 Apr 2014 03:42:13 +0000 (11:42 +0800)]
ARM: atmel: sama5d3xek: convert to generic board

Enable CONFIG_SYS_GENERIC_BOARD, so that we get rid of the following
warning on boot:

"Warning: Your board does not use generic board. Please read
doc/README.generic-board and take action. Boards not
upgraded by the late 2014 may break or be removed."

Signed-off-by: Bo Shen <voice.shen@atmel.com>
Tested-by: Josh Wu <josh.wu@atmel.com>
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
10 years agoARM: atmel: enable SPL on sama5d3_xplained board
Bo Shen [Wed, 19 Mar 2014 06:48:45 +0000 (14:48 +0800)]
ARM: atmel: enable SPL on sama5d3_xplained board

It supports boot from NAND and SD/MMC card.

Signed-off-by: Bo Shen <voice.shen@atmel.com>
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
10 years agoARM: atmel: switch to main crystal osc for SPL boot
Bo Shen [Wed, 19 Mar 2014 06:48:44 +0000 (14:48 +0800)]
ARM: atmel: switch to main crystal osc for SPL boot

If without switch to main crystal oscillator, the sama5d3 SoC will
use internal on chip RC oscillator.
In order to get better accuracy, switch to main crystal oscillator.

Signed-off-by: Bo Shen <voice.shen@atmel.com>
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
10 years agonet/designware: Make DMA burst length configurable and reduce by default
Ian Campbell [Thu, 8 May 2014 21:26:35 +0000 (22:26 +0100)]
net/designware: Make DMA burst length configurable and reduce by default

The correct value for this setting can vary across SoCs and boards, so make it
configurable.

Also reduce the default value to 8, which is the same default as used in the
Linux driver.

Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
10 years agonet/designware: reorder struct dw_eth_dev to pack more efficiently.
Ian Campbell [Wed, 14 May 2014 18:30:29 +0000 (19:30 +0100)]
net/designware: reorder struct dw_eth_dev to pack more efficiently.

On Thu, 2014-05-08 at 22:26 +0100, Ian Campbell wrote:
> The {r,t}xbuffs fields also need to be aligned. Previously this was done
> implicitly because they immediately followed the descriptor tables. Make this
> explicit and also move to the head of the struct.

Looks like I managed to not actually commit the move of the field to the
head of the struct! v3.1 follows....

Ian.

8<------------

>From 2937ba01841887317f6792709ed57cb86b5fc0cd Mon Sep 17 00:00:00 2001
From: Ian Campbell <ijc@hellion.org.uk>
Date: Thu, 1 May 2014 19:45:15 +0100
Subject: [PATCH] net/designware: reorder struct dw_eth_dev to pack more
 efficiently.

The {tx,rx}_mac_descrtable fields are aligned to ARCH_DMA_MINALIGN, which could
be 256 or even larger. That means there is a potentially huge hole in the
struct before those fields, so move them to the front where they are better
packed.

Moving them to the front also helps ensure that so long as dw_eth_dev is
properly aligned (which it is since "net/designware: ensure device private data
is DMA aligned.") the {tx,rx}_mac_descrtable will be too, or at least avoids
having to worry too much about compiler specifics.

The {r,t}xbuffs fields also need to be aligned. Previously this was done
implicitly because they immediately followed the descriptor tables. Make this
explicit and also move to the head of the struct.

Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Tested-by: Siarhei Siamashka <siarhei.siamashka@gmail.com>
Reviewed-by: Siarhei Siamashka <siarhei.siamashka@gmail.com>
10 years agonet/designware: ensure cache invalidations are aligned to ARCH_DMA_MINALIGN
Ian Campbell [Thu, 8 May 2014 21:26:33 +0000 (22:26 +0100)]
net/designware: ensure cache invalidations are aligned to ARCH_DMA_MINALIGN

This is required at least on ARM.

When sending instead of simply invalidating the entire descriptor, flush
as little as possible while still respecting ARCH_DMA_MINALIGN, as
requested by Alexey.

Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
10 years agonet/designware: ensure device private data is DMA aligned.
Ian Campbell [Thu, 8 May 2014 21:26:32 +0000 (22:26 +0100)]
net/designware: ensure device private data is DMA aligned.

struct dw_eth_dev contains fields which are accessed via DMA, so make sure it
is aligned to a dma boundary. Without this I see:
    ERROR: v7_dcache_inval_range - start address is not aligned - 0x7fb677e0

Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Reviewed-by: Alexey Brodkin <abrodkin@synopsys.com>
Acked-by: Marek Vasut <marex@denx.de>
10 years agosunxi: non-FEL SPL boot support for sun7i
Ian Campbell [Mon, 5 May 2014 10:52:30 +0000 (11:52 +0100)]
sunxi: non-FEL SPL boot support for sun7i

Add support for booting from an MMC card.

Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Henrik Nordström <henrik@henriknordstrom.net>
Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Reviewed-by: Marek Vasut <marex@denx.de>
Cc: Tom Cubie <Mr.hipboi@gmail.com>
Reviewed-by: Tom Rini <trini@ti.com>
10 years agosunxi: mmc support
Ian Campbell [Mon, 5 May 2014 13:42:31 +0000 (14:42 +0100)]
sunxi: mmc support

On Mon, 2014-05-05 at 14:18 +0200, Stefan Roese wrote:
> > + case 1:
> > +#if CONFIG_MMC1_PG

> Are you sure that this is correct and shouldn't be:
>
> +#ifdef CONFIG_MMC1_PG
>
> ?

It's "correct" in so far as it works (the boards.cfg config stuff
#defines things to 1), but I think you are right that it isn't the
preferred style. But...

> A quick scan through this patch series shows that this define
> is not set at all. Perhaps its outdated? Or is it used to support
> some other sunxi SoC? Not sure, perhaps it should be removed for
> now.

...I had thought that it was to support some other board which wasn't
being upstreamed right now, so eventually useful and harmless for now,
but I've just checked and it isn't actually used by any of the boards in
u-boot-sunxi.git. So rather than fix it to use #ifdef lets drop it.
Rather than resend the entire series, here is v5.1 of this patch.

> Other than this please add my:
>
> Reviewed-by: Stefan Roese <sr@denx.de>

Thanks!

8<---------------------------------

>From 20704e35a41664de5f516ed0e02981ac06085102 Mon Sep 17 00:00:00 2001
From: Ian Campbell <ijc@hellion.org.uk>
Date: Fri, 7 Mar 2014 04:29:39 +0000
Subject: [PATCH v5.1 7/8] sunxi: mmc support

This adds support for the MMC controller on the Allwinner A20 (sun7i)
processor.

Signed-off-by: Henrik Nordstrom <henrik@henriknordstrom.net>
Signed-off-by: Luke Leighton <lkcl@lkcl.net>
Signed-off-by: Oliver Schinagl <oliver@schinagl.nl>
Signed-off-by: Wills Wang <wills.wang.open@gmail.com>
Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Reviewed-by: Marek Vasut <marex@denx.de>
Reviewed-by: Stefan Roese <sr@denx.de>
Cc: Tom Cubie <Mr.hipboi@gmail.com>
Cc: Aaron Maoye <leafy.myeh@allwinnertech.com>
Cc: Pantelis Antoniou <panto@antoniou-consulting.com>
Reviewed-by: Tom Rini <trini@ti.com>
10 years agosunxi: add gmac Ethernet support
Ian Campbell [Mon, 5 May 2014 10:52:28 +0000 (11:52 +0100)]
sunxi: add gmac Ethernet support

Add support for the GMAC Ethernet controller on Allwinner A20 (sun7i)
processors. Enable for the Cubietruck.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Jens Kuske <jenskuske@gmail.com>
Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Reviewed-by: Marek Vasut <marex@denx.de>
Reviewed-by: Tom Rini <trini@ti.com>
10 years agosunxi: add support for Cubietruck booting in FEL mode
Ian Campbell [Mon, 5 May 2014 10:52:27 +0000 (11:52 +0100)]
sunxi: add support for Cubietruck booting in FEL mode

Signed-off-by: Oliver Schinagl <oliver@schinagl.nl>
Signed-off-by: Jens Kuske <jenskuske@gmail.com>
Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Reviewed-by: Tom Rini <trini@ti.com>
Reviewed-by: Marek Vasut <marex@denx.de>
10 years agosunxi: add sun7i cpu, board and start of day support
Ian Campbell [Mon, 5 May 2014 10:52:26 +0000 (11:52 +0100)]
sunxi: add sun7i cpu, board and start of day support

This patch adds generic board, start of day and basic build system support for
the Allwinner A20 (sun7i) processor. This code will not been compiled until the
build is hooked up in a later patch. It has been split out to keep the patches
manageable.

Signed-off-by: Adam Sampson <ats@offog.org>
Signed-off-by: Aleksei Mamlin <mamlinav@gmail.com>
Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Emilio López <emilio@elopez.com.ar>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Henrik Nordstrom <henrik@henriknordstrom.net>
Signed-off-by: Jens Kuske <jenskuske@gmail.com>
Signed-off-by: Luc Verhaegen <libv@skynet.be>
Signed-off-by: Luke Leighton <lkcl@lkcl.net>
Signed-off-by: Oliver Schinagl <oliver@schinagl.nl>
Signed-off-by: Patrick Wood <patrickhwood@gmail.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Wills Wang <wills.wang.open@gmail.com>
Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Reviewed-by: Marek Vasut <marex@denx.de>
Cc: Tom Cubie <Mr.hipboi@gmail.com>
Reviewed-by: Tom Rini <trini@ti.com>
10 years agosunxi: add sun7i dram setup support
Ian Campbell [Mon, 5 May 2014 10:52:25 +0000 (11:52 +0100)]
sunxi: add sun7i dram setup support

This patch adds DRAM initialisation support for the Allwinner A20 (sun7i)
processor. This code will not been compiled until the build is hooked up in a
later patch. It has been split out to keep the patches manageable.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Signed-off-by: Emilio López <emilio@elopez.com.ar>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Henrik Nordstrom <henrik@henriknordstrom.net>
Signed-off-by: Jens Kuske <jenskuske@gmail.com>
Signed-off-by: Luke Leighton <lkcl@lkcl.net>
Signed-off-by: Oliver Schinagl <oliver@schinagl.nl>
Signed-off-by: Siarhei Siamashka <siarhei.siamashka@gmail.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Reviewed-by: Marek Vasut <marex@denx.de>
Cc: Tom Cubie <Mr.hipboi@gmail.com>
Reviewed-by: Tom Rini <trini@ti.com>
10 years agosunxi: add sun7i pinmux and gpio support
Ian Campbell [Mon, 5 May 2014 10:52:24 +0000 (11:52 +0100)]
sunxi: add sun7i pinmux and gpio support

This patch adds the basic pinmux and gpio support for the Allwinner A20 (sun7i)
processor. This code will not been compiled until the build is hooked up in a
later patch. It has been split out to keep the patches manageable.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Ma Haijun <mahaijuns@gmail.com>
Signed-off-by: Oliver Schinagl <oliver@schinagl.nl>
Signed-off-by: Henrik Nordström <henrik@henriknordstrom.net>
Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Reviewed-by: Tom Rini <trini@ti.com>
Acked-by: Marek Vasut <marex@denx.de>
Cc: Stefan Roese <sr@denx.de>
Cc: Tom Cubie <Mr.hipboi@gmail.com>
Reviewed-by: Tom Rini <trini@ti.com>
10 years agosunxi: add sun7i clocks and timer support.
Ian Campbell [Mon, 5 May 2014 10:52:23 +0000 (11:52 +0100)]
sunxi: add sun7i clocks and timer support.

This patch adds the basic clocks and timer support for the Allwinner A20
(sun7i) processor. This code will not been compiled until the build is hooked
up in a later patch. It has been split out to keep the patches manageable.

Some of the code here is common to multiple sunxi subarchtectures, hence files
are named sun4i which is the earliest similar variant.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Emilio López <emilio@elopez.com.ar>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Henrik Nordstrom <henrik@henriknordstrom.net>
Signed-off-by: Jens Kuske <jenskuske@gmail.com>
Signed-off-by: Luke Leighton <lkcl@lkcl.net>
Signed-off-by: Oliver Schinagl <oliver@schinagl.nl>
Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Cc: Stefan Roese <sr@denx.de>
Cc: Tom Cubie <Mr.hipboi@gmail.com>
Reviewed-by: Tom Rini <trini@ti.com>
10 years agoboards.cfg: update highbank maintainer email
Rob Herring [Wed, 23 Apr 2014 16:34:40 +0000 (11:34 -0500)]
boards.cfg: update highbank maintainer email

My Calxeda email is gone, so update my email address.

Signed-off-by: Rob Herring <robh@kernel.org>
10 years agoarm: vf610: add DDR_SEL_PAD_CONTR register
Stefan Agner [Wed, 23 Apr 2014 16:17:51 +0000 (18:17 +0200)]
arm: vf610: add DDR_SEL_PAD_CONTR register

Set DDR_SEL_PAD_CONTR register explicitly to DDR3 which solves RAM
issues with newer silicon (1.1). This register was added in revision
4 of the Vybrid Reference Manual.

Signed-off-by: Stefan Agner <stefan@agner.ch>
10 years agoArm64 fix a bug of vbar_el3 initialization
David Feng [Sat, 19 Apr 2014 01:45:21 +0000 (09:45 +0800)]
Arm64 fix a bug of vbar_el3 initialization

Signed-off-by: David Feng <fenghua@phytium.com.cn>
10 years agoARM: highbank: convert to generic board
Rob Herring [Fri, 11 Apr 2014 20:09:44 +0000 (15:09 -0500)]
ARM: highbank: convert to generic board

Enable CONFIG_SYS_GENERIC_BOARD on highbank.

Signed-off-by: Rob Herring <robh@kernel.org>
10 years agolsxl: rework boot scripts
Michael Walle [Tue, 1 Apr 2014 18:09:14 +0000 (20:09 +0200)]
lsxl: rework boot scripts

Move addresses for kernel, ramdisk and fdt blob to own variables. Add dtb
blob loading to all existing boot scripts, dtb filenames were taken from
vanilla kernel. Introduce new boot script bootcmd_legacy, which only loads
a kernel and a ramdisk. Make this the default boot script. This should also
restore the behaviour of the original bootloader.

Cc: Prafulla Wadaskar <prafulla@marvell.com>
Cc: Tom Rini <trini@ti.com>
Signed-off-by: Michael Walle <michael@walle.cc>
10 years agolsxl: use 64bit for LBA48 to support 4 TB drives
Michael Walle [Tue, 1 Apr 2014 18:09:13 +0000 (20:09 +0200)]
lsxl: use 64bit for LBA48 to support 4 TB drives

Cc: Prafulla Wadaskar <prafulla@marvell.com>
Signed-off-by: Michael Walle <michael@walle.cc>
10 years agoMerge branch 'master' of git://git.denx.de/u-boot-arm
Tom Rini [Sat, 24 May 2014 10:34:08 +0000 (06:34 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-arm

10 years agoMerge branch 'u-boot-ti/master' into 'u-boot-arm/master'
Albert ARIBAUD [Sat, 24 May 2014 07:50:00 +0000 (09:50 +0200)]
Merge branch 'u-boot-ti/master' into 'u-boot-arm/master'

10 years agocompulab: eeprom: enable any i2c driver
Ilya Ledvich [Wed, 16 Apr 2014 10:48:26 +0000 (13:48 +0300)]
compulab: eeprom: enable any i2c driver

Make the common eeprom library available for any I2C driver.

Signed-off-by: Ilya Ledvich <ilya@compulab.co.il>
Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
10 years agocm-t54: add environment partition runtime detection
Dmitry Lifshitz [Sun, 27 Apr 2014 10:18:48 +0000 (13:18 +0300)]
cm-t54: add environment partition runtime detection

Add environment partition runtime detection callback.

Signed-off-by: Dmitry Lifshitz <lifshitz@compulab.co.il>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
10 years agocm-t54: add EEPROM support and MAC address handling
Dmitry Lifshitz [Sun, 27 Apr 2014 10:18:46 +0000 (13:18 +0300)]
cm-t54: add EEPROM support and MAC address handling

cm-t54 Eth MAC address is stored in onboard EEPROM.
Add EEPROM support and setup stored Eth MAC address.

If EEPROM does not contain a valid MAC, then generate it from the
processor ID code (reference code is taken from OMAP5 uEvm board file).

Modify Device Tree blob MAC address field with retrieved data.

Signed-off-by: Dmitry Lifshitz <lifshitz@compulab.co.il>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
10 years agocm-t54: add cm-t54 board support
Dmitry Lifshitz [Mon, 19 May 2014 09:50:54 +0000 (12:50 +0300)]
cm-t54: add cm-t54 board support

Add cm-t54 board directory, config file. Enable build.

Basic support includes:

Serial console
SD/MMC
eMMC
USB
Ethernet

Signed-off-by: Dmitry Lifshitz <lifshitz@compulab.co.il>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
10 years agoam33xx: report silicon revision instead of code
Sergey Alyoshin [Thu, 22 May 2014 07:56:03 +0000 (11:56 +0400)]
am33xx: report silicon revision instead of code

As revision code 1 is for silicon revision 2.0, it is easily confused with
silicon revision 1.0.

Device type report also reworked in same style.

Signed-off-by: Sergey Alyoshin <alyoshin.s@gmail.com>
10 years agoARM: OMAP: Fix omap_sdram_size calculation
Lokesh Vutla [Mon, 12 May 2014 08:19:33 +0000 (13:49 +0530)]
ARM: OMAP: Fix omap_sdram_size calculation

Last section of DMM is used for trapping tiler unmapped sections.
Corresponding trap_size should be deducted from total SDRAM size
only if trap section is overlapping with available SDRAM
based on DMM sections. Fixing the same.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
10 years agoarm, am33xx: Enable CONFIG_SYS_GENERIC_BOARD for siemens boards
Heiko Schocher [Wed, 14 May 2014 10:40:27 +0000 (12:40 +0200)]
arm, am33xx: Enable CONFIG_SYS_GENERIC_BOARD for siemens boards

Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Tom Rini <trini@ti.com>
Cc: Samuel Egli <samuel.egli@siemens.com>
Cc: Roger Meier <r.meier@siemens.com>
Tested-by: Samuel Egli <samuel.egli@siemens.com>
10 years agoomap4: duovero: Add Gumstix DuoVero machine.
Ash Charles [Wed, 14 May 2014 15:34:34 +0000 (08:34 -0700)]
omap4: duovero: Add Gumstix DuoVero machine.

This adds the Gumstix DuoVero machine [1].  This is a OMAP4430-based
computer-on-module (COM aka SOM) that can be mounted on various
expansion boards with different peripherals.

[1] https://store.gumstix.com/index.php/category/43/

Signed-off-by: Ash Charles <ash@gumstix.com>
[trini: Rename gpmc_enable_gpmc_cs_config to gpmc_enable_gpmc_net_config]
Signed-off-by: Tom Rini <trini@ti.com>
10 years agoarmv7:TI: Add <asm/ti-common/sys_proto.h> and migrate omap_hw_init_context
Tom Rini [Fri, 16 May 2014 17:02:24 +0000 (13:02 -0400)]
armv7:TI: Add <asm/ti-common/sys_proto.h> and migrate omap_hw_init_context

The omap_hw_init_context function (and assorted helpers) is the same for
all OMAP-derived parts as when CHSETTINGS are used, that's the same and
our DDR base is also always the same.  In order to make this common we
simply need to update the names of the define for DDR address space
which is also common.

Cc: Sricharan R. <r.sricharan@ti.com>
Cc: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Tom Rini <trini@ti.com>
Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
10 years agocompulab: eeprom: add default eeprom address
Igor Grinberg [Thu, 15 May 2014 08:25:09 +0000 (11:25 +0300)]
compulab: eeprom: add default eeprom address

Add default eeprom address setting.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
10 years agoARM: DRA7xx: ctrl: Fix efuse register addresses
Lokesh Vutla [Thu, 15 May 2014 05:38:42 +0000 (11:08 +0530)]
ARM: DRA7xx: ctrl: Fix efuse register addresses

Efuse register addresses are wrongly programmed.
Fixing the same.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Acked-by: Tom Rini <trini@ti.com>
10 years agoARM: DRA72x: Update EMIF data
Lokesh Vutla [Thu, 15 May 2014 05:38:41 +0000 (11:08 +0530)]
ARM: DRA72x: Update EMIF data

DRA72 has 1GB connected to EMIF1 only. Updating the details.
And also enable WA for BUG0039 only if corresponding EMIF is present.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Acked-by: Tom Rini <trini@ti.com>
10 years agoARM: DRA72x: clocks: Update the hwdata
Lokesh Vutla [Thu, 15 May 2014 05:38:40 +0000 (11:08 +0530)]
ARM: DRA72x: clocks: Update the hwdata

Adding the prcm, dplls, control module hooks for DRA72x.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Acked-by: Tom Rini <trini@ti.com>
10 years agoARM: DRA72x: volt: Update the pmic offsets
Keerthy [Thu, 15 May 2014 05:38:39 +0000 (11:08 +0530)]
ARM: DRA72x: volt: Update the pmic offsets

TPS65917 is used in DRA722 evm. Update the address offsets accordingly.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Keerthy <j-keerthy@ti.com>
Acked-by: Tom Rini <trini@ti.com>
10 years agoARM: DRA72x: Add Silicon ID support
Lokesh Vutla [Thu, 15 May 2014 05:38:38 +0000 (11:08 +0530)]
ARM: DRA72x: Add Silicon ID support

Add silicon ID code for DRA722 silicon.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Acked-by: Tom Rini <trini@ti.com>
10 years agoARM: omap: merge GPMC initialization code for all platform
pekon gupta [Thu, 8 May 2014 16:13:47 +0000 (21:43 +0530)]
ARM: omap: merge GPMC initialization code for all platform

GPMC controller on TI's OMAP SoC is general purpose controller to interface
with different types of external devices like;
 - parallel NOR flash
 - parallel NAND flash
 - OneNand flash
 - SDR RAM
 - Ethernet Devices like LAN9220

Though GPMC configurations may be different for each platform depending on
clock-frequency and external device interfacing with controller. But
initialization sequence remains common across all platfoms.

Thus this patch merges gpmc_init() scattered in different arch-xx/mem.c
files into single omap-common/mem-common.c

However, actual platforms specific register config values are still sourced
from corresponding platform specific headers like;
 AM33xx: arch/arm/include/asm/arch-am33xx/mem.h
 OMAP3:  arch/arm/include/asm/arch-omap3/mem.h
 OMAP4:  arch/arm/include/asm/arch-omap4/mem.h
 OMAP4:  arch/arm/include/asm/arch-omap5/mem.h

Also, CONFIG_xx passed by board-profile decide config for which set of macros
need to be used for initialization
 CONFIG_NAND:    initialize GPMC for NAND device
 CONFIG_NOR:     initialize GPMC for NOR device
 CONFIG_ONENAND: initialize GPMC for ONENAND device

Signed-off-by: Pekon Gupta <pekon@ti.com>
[trini: define GPMC_SIZE_256M for omap3]
Signed-off-by: Tom Rini <trini@ti.com>
10 years agoexamples: select libgcc for non-default architecture
Alexey Brodkin [Fri, 16 May 2014 08:54:17 +0000 (12:54 +0400)]
examples: select libgcc for non-default architecture

In case of multilib-enabled toolchains if default architecture differ from
the one examples are being built for linker will fail to link example object
files with libgcc of another (non-compatible) architecture.

Interesting enough for years in main Makefile we used CFLAGS/c_flags for this
but not for examples.

So fixing it now.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Masahiro Yamada <yamada.m@jp.panasonic.com>
Cc: Tom Rini <trini@ti.com>
Cc: Wolfgang Denx <wd@denx.de>
Acked-by: WOlfgang Denk <wd@denx.de>
Acked-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agodoc:git-mailrc: Add entry for dfu subsystem
Łukasz Majewski [Thu, 22 May 2014 13:26:55 +0000 (15:26 +0200)]
doc:git-mailrc: Add entry for dfu subsystem

Entry for dfu subsystem have been added to doc/git-mailrc file

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
10 years agoAdd myself as maintainer for chromebook-x86
Simon Glass [Thu, 15 May 2014 20:42:11 +0000 (14:42 -0600)]
Add myself as maintainer for chromebook-x86

This is currently the only x86 board.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agoMerge branch 'u-boot-sh/rmobile' into 'u-boot-arm/master'
Albert ARIBAUD [Fri, 23 May 2014 20:50:43 +0000 (22:50 +0200)]
Merge branch 'u-boot-sh/rmobile' into 'u-boot-arm/master'

10 years agoMerge branch 'u-boot-microblaze/zynq' into 'u-boot-arm/master'
Albert ARIBAUD [Fri, 23 May 2014 20:50:23 +0000 (22:50 +0200)]
Merge branch 'u-boot-microblaze/zynq' into 'u-boot-arm/master'

10 years agoARM: omap5: add platform specific info for GPMC and ELM controllers
pekon gupta [Thu, 8 May 2014 16:13:46 +0000 (21:43 +0530)]
ARM: omap5: add platform specific info for GPMC and ELM controllers

This patch moves platform specific information for GPMC and ELM controller
into separate header files, so that any derivative devices do not mess other
header files.

Platform specific information added into arch-xx/../hardware.h
 - CPU related platform specific details like base-address of GPMC and ELM

Platform specific information added into arch-xx/../mem.h
 - Generic configs for GPMC and ELM initialization.
 - Hardware parameters or constrains specific to GPMC and ELM IP like;
   number of max number of chip-selects available

Signed-off-by: Pekon Gupta <pekon@ti.com>
10 years agoARM: omap4: add platform specific info for GPMC and ELM controllers
pekon gupta [Thu, 8 May 2014 16:13:45 +0000 (21:43 +0530)]
ARM: omap4: add platform specific info for GPMC and ELM controllers

This patch moves platform specific information for GPMC and ELM controller
into separate header files, so that any derivative devices do not mess other
header files.

Platform specific information added into arch-xx/../hardware.h
 - CPU related platform specific details like base-address of GPMC and ELM

Platform specific information added into arch-xx/../mem.h
 - Generic configs for GPMC and ELM initialization.
 - Hardware parameters or constrains specific to GPMC and ELM IP like;
   number of max number of chip-selects available

Signed-off-by: Pekon Gupta <pekon@ti.com>
10 years agoomap3: overo: Use common configurations for Overo
Ash Charles [Wed, 21 May 2014 21:04:55 +0000 (14:04 -0700)]
omap3: overo: Use common configurations for Overo

Clean-up the board configuration file for the Gumstix Overo board by
including common omap3 definitions from ti_omap3_common.h as suggested
here [1].

[1] http://permalink.gmane.org/gmane.comp.boot-loaders.u-boot/185960

Signed-off-by: Ash Charles <ashcharles@gmail.com>
Conflicts:
include/configs/omap3_overo.h

10 years agoAllow overo to boot with device tree
Ash Charles [Wed, 21 May 2014 21:04:54 +0000 (14:04 -0700)]
Allow overo to boot with device tree

Update the board configuration for Gumstix Overo. In particular,
add support for zImage and DTB files on boot.

Signed-off-by: Ash Charles <ashcharles@gmail.com>
10 years agoOMAP3: overo: add some Gumstix expansion boards
Ash Charles [Wed, 21 May 2014 21:04:53 +0000 (14:04 -0700)]
OMAP3: overo: add some Gumstix expansion boards

Add EEPROM ID switches for Alto35, Arbor43C, Stagecoach, Thumbo, and
Turtlecore Gumstix Overo expansion boards.

Signed-off-by: Ash Charles <ash@gumstix.com>
10 years agoAdd Board Revision for Wireless chip
Ash Charles [Wed, 21 May 2014 21:04:52 +0000 (14:04 -0700)]
Add Board Revision for Wireless chip

Gumstix Overo COMs with board revision 0x4 use a different Wifi and
Bluetooth module: Wi2Wi's W2CBW0015.  No other code changes are required
in u-boot---just handling of this particular board revision.

Signed-off-by: Ash Charles <ashcharles@gmail.com>
10 years agoarm: omap3: Fix omap3_overo SPL boot hangup
Ash Charles [Wed, 21 May 2014 21:04:51 +0000 (14:04 -0700)]
arm: omap3: Fix omap3_overo SPL boot hangup

Patch f33b9bd3
[arm: omap3: Enable clocks for peripherals only if they are used]
breaks SPL booting on Overo. Since some gpio inputs are
read to detect the board revision. But with this patch above, the
clocks to the GPIO subsystems are not enabled per default any more.
The GPIO banks need to be configured specifically now.

Signed-off-by: Ash Charles <ashcharles@gmail.com>
10 years agoOMAP3: overo: eliminate hard-coded partition offsets
Ash Charles [Wed, 21 May 2014 21:04:50 +0000 (14:04 -0700)]
OMAP3: overo: eliminate hard-coded partition offsets

The linux kernel is at nand0,3 using the current layout, but is best
accessed through the partition label "linux".  Since CONFIG_CMD_MTDPARTS is
defined the CONFIG_JFFS2 settings are unreferenced; use "setenv partition
rootfs" to set the default mtd partition for jffs2.

Signed-off-by: Peter A. Bigot <pab@pabigot.com>
Tested-by: Ash Charles <ash@gumstix.com>
10 years agoOMAP3: overo: increase linux partition to 8 MiB
Peter A. Bigot [Wed, 21 May 2014 21:04:49 +0000 (14:04 -0700)]
OMAP3: overo: increase linux partition to 8 MiB

Linux kernel at version 3.5 is about 3.5 MiB; test kernels for 3.10 exceed 4
MiB.  Prepare for future upgrades by increasing the NAND partition now.

Signed-off-by: Peter A. Bigot <pab@pabigot.com>
Tested-by: Ash Charles <ash@gumstix.com>
10 years agoOMAP3: overo: add command support for mtd and ubi
Ash Charles [Wed, 21 May 2014 21:04:48 +0000 (14:04 -0700)]
OMAP3: overo: add command support for mtd and ubi

The NAND linux partition format default was changed from jffs2 to ubi in
254973e6df0e48f1a72b67905185c774dcd9f394 but the corresponding commands were
not enabled.

Signed-off-by: Peter A. Bigot <pab@pabigot.com>
Tested-by: Ash Charles <ash@gumstix.com>
10 years agoomap: overo: allow the use of a plain text env file instead boot scripts
Ash Charles [Wed, 21 May 2014 21:04:47 +0000 (14:04 -0700)]
omap: overo: allow the use of a plain text env file instead boot scripts

Adapted from d70f5480 described below.

    commit d70f54808dfa83b574e1239c3eccbcf3317343e1
    Author: Javier Martinez Canillas <javier@dowhile0.org>
    Date:   Mon Jan 7 03:51:20 2013 +0000

    omap4: allow the use of a plain text env file instead boot scripts

    For production systems it is better to use script images since
    they are protected by checksums and carry valuable information like
    name and timestamp. Also, you can't validate the content passed to
    env import.

    But for development, it is easier to use the env import command and
    plain text files instead of script-images.

    Since both OMAP4 supported boards (Panda and TI SDP4430) are used
    primarily for development, this patch allows U-Boot to load env var
    from a text file in case that an boot.scr script-image is not present.

    The variable uenvcmd (if existent) will be executed (using run) after
    uEnv.txt was loaded. If uenvcmd doesn't exist the default boot sequence
    will be started.

Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
Acked-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
Tested-by: Ash Charles <ash@gumstix.com>
10 years agoesdhc/usdhc: Fix warning when CONFIG_SYS_FSL_ESDHC_USE_PIO is not set
Tom Rini [Fri, 23 May 2014 13:19:05 +0000 (09:19 -0400)]
esdhc/usdhc: Fix warning when CONFIG_SYS_FSL_ESDHC_USE_PIO is not set

In 7168977 we made calls to check_and_invalidate_dcache_range()
conditional on !CONFIG_SYS_FSL_ESDHC_USE_PIO.  Only define this function
in this case as well.

Signed-off-by: Tom Rini <trini@ti.com>