project/bcm63xx/u-boot.git
11 years agoRefactor the bootm command to reduce code duplication
Simon Glass [Tue, 11 Jun 2013 18:14:47 +0000 (11:14 -0700)]
Refactor the bootm command to reduce code duplication

At present the bootm code is mostly duplicated for the plain 'bootm'
command and its sub-command variant. This makes the code harder to
maintain and means that changes must be made to several places.

Introduce do_bootm_states() which performs selected portions of the bootm
work, so that both plain 'bootm' and 'bootm <sub_command>' can use the
same code.

Additional duplication exists in bootz, so tidy that up as well. This
is not intended to change behaviour, apart from minor fixes where the
previously-duplicated code missed some chunks of code.

Signed-off-by: Simon Glass <sjg@chromium.org>
11 years agoClarify bootm OS arguments
Simon Glass [Tue, 11 Jun 2013 18:14:46 +0000 (11:14 -0700)]
Clarify bootm OS arguments

At present the arguments to bootm are processed in a somewhat confusing
way. Sub-functions must know how many arguments their calling functions
have processed, and the OS boot function must also have this information.
Also it isn't obvious that 'bootm' and 'bootm start' provide arguments in
the same way.

Adjust the code so that arguments are removed from the list before calling
a sub-function. This means that all functions can know that argv[0] is the
first argument of which they need to take notice.

Signed-off-by: Simon Glass <sjg@chromium.org>
11 years agoAdd a simple test for sandbox trace
Simon Glass [Tue, 11 Jun 2013 18:14:45 +0000 (11:14 -0700)]
Add a simple test for sandbox trace

It is difficult to automatically test tracing on most architectures, but
with sandbox it is easy enough to do a simple sanity check.

Signed-off-by: Simon Glass <sjg@chromium.org>
11 years agosandbox: Support trace feature
Simon Glass [Tue, 11 Jun 2013 18:14:44 +0000 (11:14 -0700)]
sandbox: Support trace feature

Support tracing on sandbox by adding suitable CONFIG options. To enable it,
compile U-Boot with FTRACE=1.

The timer functions are marked to skip tracing, since these are called from
the tracing code itself, and we want to avoid an infinite loop.

Signed-off-by: Simon Glass <sjg@chromium.org>
11 years agoAdd proftool to decode profile data
Simon Glass [Tue, 11 Jun 2013 18:14:43 +0000 (11:14 -0700)]
Add proftool to decode profile data

This tool provides the facility to decode U-Boot trace data and write out
a text file in Linux ftrace format for use with pytimechart.

Signed-off-by: Simon Glass <sjg@chromium.org>
11 years agoAdd trace support to generic board
Simon Glass [Tue, 11 Jun 2013 18:14:42 +0000 (11:14 -0700)]
Add trace support to generic board

Add hooks for tracing to generic board, including:

- allow early tracing to start early as possible in U-Boot
- reserve memory for trace buffer
- copy early trace buffer to main trace buffer after relocation
- setup full tracing support after relocation

Signed-off-by: Simon Glass <sjg@chromium.org>
11 years agoSupport tracing in config.mk when enabled
Simon Glass [Tue, 11 Jun 2013 18:14:41 +0000 (11:14 -0700)]
Support tracing in config.mk when enabled

Use -finstrument-functions when tracing is enabled (make FTRACE=1).
Tracing is not currently supported by SPL even if sufficient memory is
available.

When tracing is enabled, we #define FTRACE. This can be used by
board config files to conditionally enable the tracing options.

Signed-off-by: Simon Glass <sjg@chromium.org>
11 years agoAdd a trace command
Simon Glass [Tue, 11 Jun 2013 18:14:40 +0000 (11:14 -0700)]
Add a trace command

Add a trace command with sub-commands to start/stop tracing, print out
statistics and dump trace information to memory for later upload to a host.

Signed-off-by: Simon Glass <sjg@chromium.org>
11 years agoAdd trace library
Simon Glass [Tue, 11 Jun 2013 18:14:39 +0000 (11:14 -0700)]
Add trace library

Add a library which supports tracing of execution using built-in gcc
features and a microsecond timer. This can be used to record a list of
function which are executed, along with a timestamp for each. Later
this information can be sent to the host for processing.

Signed-off-by: Simon Glass <sjg@chromium.org>
11 years agoAdd function to print a number with grouped digits
Simon Glass [Tue, 11 Jun 2013 18:14:38 +0000 (11:14 -0700)]
Add function to print a number with grouped digits

Move bootstage's numbering printing code into a generic place so that it can
be used by tracing also.

Signed-off-by: Simon Glass <sjg@chromium.org>
11 years agobootstage: Correct printf types
Simon Glass [Tue, 11 Jun 2013 18:14:37 +0000 (11:14 -0700)]
bootstage: Correct printf types

The unstash code is a bit loose with its printf() types, which gives
warnings on sandbox. Correct this.

Signed-off-by: Simon Glass <sjg@chromium.org>
11 years agoShow stdout on error in fit-test
Simon Glass [Tue, 11 Jun 2013 18:14:36 +0000 (11:14 -0700)]
Show stdout on error in fit-test

When this test fails it is useful to see the output from U-Boot. Add
printing of this information on failure.

Signed-off-by: Simon Glass <sjg@chromium.org>
11 years agoFix missing return in do_mem_loop()
Simon Glass [Tue, 11 Jun 2013 18:14:35 +0000 (11:14 -0700)]
Fix missing return in do_mem_loop()

For some reason this does not normally cause a compiler warning, but the code
seems to be incorrect. Add the missing return.

Signed-off-by: Simon Glass <sjg@chromium.org>
11 years agox86: Correct missing local variable in bootm
Simon Glass [Tue, 11 Jun 2013 18:14:34 +0000 (11:14 -0700)]
x86: Correct missing local variable in bootm

Enabling FIT produces a compile error. Fix this.

Signed-off-by: Simon Glass <sjg@chromium.org>
11 years agopci: Convert extern inline functions to static inline
Simon Glass [Tue, 11 Jun 2013 18:14:33 +0000 (11:14 -0700)]
pci: Convert extern inline functions to static inline

I am not sure of the meaning of extern inline, but this gives errors
when building with function instrumenting enabled. Change these functions
to static inline.

Signed-off-by: Simon Glass <sjg@chromium.org>
11 years agocros: exynos: enable cros-ec for smdk5250
Hung-ying Tyan [Wed, 15 May 2013 10:27:34 +0000 (18:27 +0800)]
cros: exynos: enable cros-ec for smdk5250

This patch initiates cros-ec in board_init() to enable it for smdk5250.

This patch depends on the patch in the MMC series that brings in exynos5-dt.c.
Refer to http://patchwork.ozlabs.org/patch/240084.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Vincent Palatin <vpalatin@chromium.org>
Signed-off-by: Hung-ying Tyan <tyanh@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
11 years agocros: exynos: add cros-ec device nodes to exynos5250-snow.dts
Hung-ying Tyan [Wed, 15 May 2013 10:27:33 +0000 (18:27 +0800)]
cros: exynos: add cros-ec device nodes to exynos5250-snow.dts

This patch adds cros-ec related device nodes to exynos5250-snow.dts.
It also adds a gpio node to exynos5250.dtsi.

Signed-off-by: Hung-ying Tyan <tyanh@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
11 years agocros: adds cros_ec keyboard driver
Hung-ying Tyan [Wed, 15 May 2013 10:27:32 +0000 (18:27 +0800)]
cros: adds cros_ec keyboard driver

This patch adds the driver for keyboard that's controlled by ChromeOS EC.

Signed-off-by: Randall Spangler <rspangler@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Vincent Palatin <vpalatin@chromium.org>
Signed-off-by: Hung-ying Tyan <tyanh@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
11 years agocros: add LPC support for cros_ec
Hung-ying Tyan [Wed, 15 May 2013 10:27:31 +0000 (18:27 +0800)]
cros: add LPC support for cros_ec

This patch adds LPC support for carrying out the cros_ec protocol.

Signed-off-by: Randall Spangler <rspangler@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Hung-ying Tyan <tyanh@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
11 years agocros: exynos: add SPI support for cros_ec
Hung-ying Tyan [Wed, 15 May 2013 10:27:30 +0000 (18:27 +0800)]
cros: exynos: add SPI support for cros_ec

This patch adds SPI support for carrying out the cros_ec protocol.

Signed-off-by: Hung-ying Tyan <tyanh@chromium.org>
Signed-off-by: Randall Spangler <rspangler@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
11 years agocros: add I2C support for cros_ec
Hung-ying Tyan [Wed, 15 May 2013 10:27:29 +0000 (18:27 +0800)]
cros: add I2C support for cros_ec

This patch adds I2C support for carrying out the cros_ec protocol.

Signed-off-by: Randall Spangler <rspangler@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Hung-ying Tyan <tyanh@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
11 years agocros: add cros_ec driver
Hung-ying Tyan [Wed, 15 May 2013 10:27:28 +0000 (18:27 +0800)]
cros: add cros_ec driver

This patch adds the cros_ec driver that implements the protocol for
communicating with Google's ChromeOS embedded controller.

Signed-off-by: Bernie Thompson <bhthompson@chromium.org>
Signed-off-by: Bill Richardson <wfrichar@chromium.org>
Signed-off-by: Che-Liang Chiou <clchiou@chromium.org>
Signed-off-by: Doug Anderson <dianders@chromium.org>
Signed-off-by: Gabe Black <gabeblack@chromium.org>
Signed-off-by: Hung-ying Tyan <tyanh@chromium.org>
Signed-off-by: Louis Yung-Chieh Lo <yjlou@chromium.org>
Signed-off-by: Randall Spangler <rspangler@chromium.org>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Vincent Palatin <vpalatin@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
11 years agoMerge branch 'master' of git://git.denx.de/u-boot-net
Tom Rini [Tue, 25 Jun 2013 02:27:44 +0000 (22:27 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-net

11 years agophylib: add atheros ar803x phy
Heiko Schocher [Tue, 4 Jun 2013 08:58:00 +0000 (10:58 +0200)]
phylib: add atheros ar803x phy

add atheros ar803x phy, used on the upcoming siemens boards.

Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Andy Fleming <afleming@freescale.com>
Cc: Joe Hershberger <joe.hershberger@gmail.com>
11 years agophylib: add natsemi dp83630 phy
Heiko Schocher [Tue, 4 Jun 2013 08:58:09 +0000 (10:58 +0200)]
phylib: add natsemi dp83630 phy

add natsemi dp83630 phy, used on the upcoming siemens boards.

Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Andy Fleming <afleming@freescale.com>
Cc: Joe Hershberger <joe.hershberger@gmail.com>
11 years agonet: update FTGMAC100 for MMU/D-cache support
Kuo-Jung Su [Tue, 7 May 2013 06:33:51 +0000 (14:33 +0800)]
net: update FTGMAC100 for MMU/D-cache support

Signed-off-by: Kuo-Jung Su <dantesu@faraday-tech.com>
CC: Joe Hershberger <joe.hershberger@gmail.com>
CC: Tom Rini <trini@ti.com>
11 years agonet: add Faraday FTMAC110 10/100Mbps ethernet support
Kuo-Jung Su [Tue, 7 May 2013 06:33:31 +0000 (14:33 +0800)]
net: add Faraday FTMAC110 10/100Mbps ethernet support

Faraday FTMAC110 10/100Mbps supports half-word data transfer for Linux.
However it has a weird DMA alignment issue:

(1) Tx DMA Buffer Address:
    1 bytes aligned: Invalid
    2 bytes aligned: O.K
    4 bytes aligned: O.K

(2) Rx DMA Buffer Address:
    1 bytes aligned: Invalid
    2 bytes aligned: O.K
    4 bytes aligned: Invalid!!!

Signed-off-by: Kuo-Jung Su <dantesu@faraday-tech.com>
Cc: Joe Hershberger <joe.hershberger@gmail.com>
Cc: Tom Rini <trini@ti.com>
11 years agonet: phy: supplement support for Micrel's KSZ9031
SARTRE Leo [Tue, 30 Apr 2013 14:57:25 +0000 (16:57 +0200)]
net: phy: supplement support for Micrel's KSZ9031

Add function ksz9031_phy_extended_write and ksz9031_phy_extended_read

Signed-off-by: Leo Sartre <lsartre@adeneo-embedded.com>
11 years agonet: macb: add support for gigabit MAC
Bo Shen [Wed, 24 Apr 2013 07:59:28 +0000 (15:59 +0800)]
net: macb: add support for gigabit MAC

Add gigabit MAC support in macb driver
  - using IP version to distinguish whether MAC is GMAC

Signed-off-by: Bo Shen <voice.shen@atmel.com>
11 years agonet: macb: using phylib to configure phy device
Bo Shen [Wed, 24 Apr 2013 07:59:27 +0000 (15:59 +0800)]
net: macb: using phylib to configure phy device

using phylib to configure phy device in macb driver

Signed-off-by: Bo Shen <voice.shen@atmel.com>
11 years agonet: macb: using AT91FAMILY replace #ifdeferry
Bo Shen [Wed, 24 Apr 2013 07:59:26 +0000 (15:59 +0800)]
net: macb: using AT91FAMILY replace #ifdeferry

Using CONFIG_AT91FAMILY replace #ifdeferry for atmel SoC

Signed-off-by: Bo Shen <voice.shen@atmel.com>
Acked-by: Andreas Bießmann <andreas.devel@googlemail.com>
11 years agoARM: at91sam9n12: add network support with ksz8851_16mll
Bo Shen [Wed, 24 Apr 2013 02:46:18 +0000 (10:46 +0800)]
ARM: at91sam9n12: add network support with ksz8851_16mll

add network support with ksz8851_16mll on at91sam9n12ek board

Signed-off-by: Bo Shen <voice.shen@atmel.com>
Acked-by: Andreas Bießmann <andreas.devel@googlemail.com>
11 years agonet: ks8851_mll: add ethernet support
Roberto Cerati [Wed, 24 Apr 2013 02:46:17 +0000 (10:46 +0800)]
net: ks8851_mll: add ethernet support

The device interface is 16 bits wide.
All the available packets are read from the incoming fifo.

Signed-off-by: Roberto Cerati <roberto.cerati@bticino.it>
Signed-off-by: Raffaele Recalcati <raffaele.recalcati@bticino.it>
[voice.shen@atmel.com: address comments from review results]
[voice.shen@atmel.com: clean up for submit]
Signed-off-by: Bo Shen <voice.shen@atmel.com>
Tested-by: Raffaele Recalcati <raffaele.recalcati@bticino.it>
11 years agophylib: Add Atheros AR8035 GETH PHY support
Xie Xiaobo [Wed, 10 Apr 2013 08:23:39 +0000 (16:23 +0800)]
phylib: Add Atheros AR8035 GETH PHY support

Signed-off-by: Xie Xiaobo <X.Xie@freescale.com>
11 years agoadd support for Xilinx 1000BASE-X phy (GTX)
Charles Coldwell [Thu, 21 Feb 2013 13:25:52 +0000 (08:25 -0500)]
add support for Xilinx 1000BASE-X phy (GTX)

commit 39695029bc15041c809df3db4ba19bd729c447fa
Author: Charles Coldwell <coldwell@ll.mit.edu>
Date:   Tue Feb 19 08:27:33 2013 -0500

    Changes to support the Xilinx 1000BASE-X phy (GTX/MGT)

Signed-off-by: Charles Coldwell <coldwell@ll.mit.edu>
11 years agonet: Correct check for link-local target IP conflict
Joe Hershberger [Fri, 8 Feb 2013 20:18:53 +0000 (14:18 -0600)]
net: Correct check for link-local target IP conflict

Make the link-local code conform more completely with the RFC.

This will prevent ARP queries for the target (such as while it is
rebooting) from causing the device to choose a different link-local
address, thinking that its address is in use by another machine.

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
11 years agoPHY: micrel.c: add support for KSZ9031
David Andrey [Wed, 6 Feb 2013 21:18:37 +0000 (22:18 +0100)]
PHY: micrel.c: add support for KSZ9031

Add support for Micrel PHY KSZ9031 in phylib,
including small rework for KSZ9021 to avoid
code duplication

Signed-off-by: David Andrey <david.andrey@netmodule.com>
Cc: Troy Kisky <troy.kisky@boundarydevices.com>
Cc: Joe Herschberger <joe.hershberger@gmail.com>
Cc: Andy Fleming <afleming@freescale.com>
Acked-by: Stefan Roese <sr@denx.de>
11 years agonet/tftp: sparse fixes
Kim Phillips [Thu, 17 Jan 2013 00:09:19 +0000 (18:09 -0600)]
net/tftp: sparse fixes

tftp.c:464:17: warning: cast to restricted __be16
tftp.c:552:29: warning: cast to restricted __be16
tftp.c:640:33: warning: cast to restricted __be16
tftp.c:642:25: warning: cast to restricted __be16

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Cc: Joe Hershberger <joe.hershberger@gmail.com>
11 years agonet: make IPaddr type big endian
Kim Phillips [Thu, 17 Jan 2013 00:09:11 +0000 (18:09 -0600)]
net: make IPaddr type big endian

for use with sparse.

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Cc: Joe Hershberger <joe.hershberger@gmail.com>
11 years agonet: Fix build regression in macb.c
Joe Hershberger [Tue, 25 Jun 2013 00:06:38 +0000 (19:06 -0500)]
net: Fix build regression in macb.c

The added weak symbol must not be static.

This was introduced in 416ce623fbad51af57660346ebb6f7befb88b3c9

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
11 years agonet/macb: Add arch specific routine to get mdio control
Shiraz Hashim [Thu, 13 Dec 2012 11:52:52 +0000 (17:22 +0530)]
net/macb: Add arch specific routine to get mdio control

SPEAr310 and SPEAr320 Ethernet interfaces share same MDIO lines to control their
respective phys. Currently there is a fixed configuration in which only a
particular MAC can use the MDIO lines.

Call an arch specific function to take control of specific mdio lines at
runtime.

Signed-off-by: Shiraz Hashim <shiraz.hashim@st.com>
Signed-off-by: Vipin Kumar <vipin.kumar@st.com>
Acked-by: Stefan Roese <sr@denx.de>
11 years agonet/designware: Do not select MIIPORT for RGMII interface
Vipin Kumar [Thu, 13 Dec 2012 11:52:51 +0000 (17:22 +0530)]
net/designware: Do not select MIIPORT for RGMII interface

Do not select MIIPORT for RGMII interface

Signed-off-by: Vipin Kumar <vipin.kumar@st.com>
Acked-by: Stefan Roese <sr@denx.de>
11 years agonet: nfs: add dynamic wait period
Matthias Brugger [Tue, 11 Dec 2012 18:14:16 +0000 (19:14 +0100)]
net: nfs: add dynamic wait period

This patch tackles the time out problem which leads to break the
boot process, when loading file over nfs. The patch does two things.

First of all, we just ignore messages that arrive with a rpc_id smaller
then the client id. We just interpret this messages as answers to
formaly timed out messages.

Second, when a time out occurs we double the time to wait, so that we
do not stress the server resending the last message.

Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
Tested-by: Enric Balletbo i Serra <eballetbo@gmail.com>
11 years agoNET: mvgbe: add support for Dove
Sebastian Hesselbarth [Tue, 4 Dec 2012 08:32:01 +0000 (09:32 +0100)]
NET: mvgbe: add support for Dove

Marvell Dove also uses mvgbe as ethernet driver, therefore add support
for Dove to reuse the current driver.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
11 years agoNET: mvgbe: add phylib support
Sebastian Hesselbarth [Tue, 4 Dec 2012 08:32:00 +0000 (09:32 +0100)]
NET: mvgbe: add phylib support

This add phylib support to the Marvell GBE driver.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
11 years agoNET: phy: add 88E1310 PHY initialization
Sebastian Hesselbarth [Tue, 4 Dec 2012 08:31:59 +0000 (09:31 +0100)]
NET: phy: add 88E1310 PHY initialization

This adds PHY initialization for Marvell Alaska 88E1310 PHY.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
11 years agopxe: add ipappend support
Rob Herring [Mon, 3 Dec 2012 03:00:29 +0000 (21:00 -0600)]
pxe: add ipappend support

Add ipappend support to pass network device information to the kernel.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
11 years agonet: Fix build regression in cmd_pxe.c
Joe Hershberger [Mon, 24 Jun 2013 22:21:04 +0000 (17:21 -0500)]
net: Fix build regression in cmd_pxe.c

Not all boards define an SOC.  As a result, we can't depend on that.

This was introduced in 39f985536d3f0df5dba32c15b64ba2b5d32dd296

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
11 years agopxe: add support for per arch and SoC default paths
Rob Herring [Mon, 3 Dec 2012 03:00:28 +0000 (21:00 -0600)]
pxe: add support for per arch and SoC default paths

A pxelinux server setup for "default" menu is typically an x86 binary.
This does not work well with a mixed architecture setup. Extend the default
search to look for default-<arch>-<soc> and then default-<arch> before
falling back to just "default".

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
11 years agopxe: add support for ontimeout token
Rob Herring [Mon, 3 Dec 2012 03:00:27 +0000 (21:00 -0600)]
pxe: add support for ontimeout token

ontimeout is similar to default, but is the selection on menu timeout.
This is how cobbler sets a default. The label default is supposed to be
the default selection when <enter> is pressed. If both default and
ontimeout are set, last one parsed wins.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
11 years agopxe: simplify menu display and selection
Rob Herring [Mon, 3 Dec 2012 03:00:26 +0000 (21:00 -0600)]
pxe: simplify menu display and selection

Menus with lots of entries and long append lines are hard to read.
Just show a numbered list using the label or name and make the choice
by entering the number.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
11 years agopxe: always display a menu when present
Rob Herring [Mon, 3 Dec 2012 03:00:25 +0000 (21:00 -0600)]
pxe: always display a menu when present

The prompt flag is for displaying a "boot:" prompt in pxelinux. This
doesn't make sense for u-boot as we don't support the pxelinux command
interface. So we should just ignore prompt statements and always show the
menu if a menu is present.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
11 years agopxe: try bootz if bootm fails to find a valid image
Rob Herring [Mon, 3 Dec 2012 19:17:21 +0000 (13:17 -0600)]
pxe: try bootz if bootm fails to find a valid image

Standard pxelinux servers will typically use a zImage rather than u-boot
image format, so fallback to bootz if bootm fails.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
11 years agobootz: un-staticize do_bootz
Rob Herring [Mon, 3 Dec 2012 03:00:23 +0000 (21:00 -0600)]
bootz: un-staticize do_bootz

Make do_bootz available for other functions like do_bootm is.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
11 years agopxe: fix handling of different localboot values
Rob Herring [Mon, 3 Dec 2012 03:00:22 +0000 (21:00 -0600)]
pxe: fix handling of different localboot values

Add support for value of -1 For localboot. A value of -1 means return to
u-boot prompt.

The localboot value is often 0, so we need to distinguish the value from
localboot being selected. A value of greater than or equal to 0 means
attempt local boot command.

If localboot is selected, we don't want to try other entries.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
11 years agopxe: make string parameters const
Rob Herring [Mon, 3 Dec 2012 03:00:21 +0000 (21:00 -0600)]
pxe: make string parameters const

Convert a bunch of string parameters to be const.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
11 years agopxe: Use ethact setting for pxe
Rob Herring [Mon, 3 Dec 2012 03:00:20 +0000 (21:00 -0600)]
pxe: Use ethact setting for pxe

Get the MAC address using eth_getenv_enetaddr_by_index so that the MAC
address of ethact is used. This enables using the a NIC other than the
first one for PXE boot.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
11 years agonet: add ICPlus PHY driver
Yegor Yefremov [Wed, 28 Nov 2012 10:15:18 +0000 (11:15 +0100)]
net: add ICPlus PHY driver

The driver code was taken from Linux kernel source:
drivers/net/phy/icplus.c

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
11 years agophy: export genphy_parse_link()
Yegor Yefremov [Wed, 28 Nov 2012 10:15:17 +0000 (11:15 +0100)]
phy: export genphy_parse_link()

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
11 years agonet: Add sunxi (Allwinner) wemac driver
Henrik Nordström [Sun, 25 Nov 2012 11:41:36 +0000 (12:41 +0100)]
net: Add sunxi (Allwinner) wemac driver

This patch adds support for the WEMAC, the ethernet controller included
in the Allwinner A10 SoC. It will get used in the upcoming A10 board
support.

From: Stefan Roese <sr@denx.de>
Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Henrik Nordstrom <henrik@henriknordstrom.net>
11 years agocheckpatch: add ignore for network block comment style checking
Bo Shen [Wed, 24 Apr 2013 02:46:16 +0000 (10:46 +0800)]
checkpatch: add ignore for network block comment style checking

When use checkpatch.pl to check network related patch, it will report
--->8---
WARNING: networking block comments don't use an empty /* line,
use /* Comment...
---<8---

So, add --ignore NETWORKING_BLOCK_COMMENT_STYLE into .checkpatch.conf
This will help to keep all driver include network related driver use
the same comment style

Signed-off-by: Bo Shen <voice.shen@atmel.com>
11 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc5xxx
Tom Rini [Mon, 24 Jun 2013 20:44:15 +0000 (16:44 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc5xxx

11 years agoMerge branch 'master' of git://git.denx.de/u-boot-spi
Tom Rini [Mon, 24 Jun 2013 20:37:01 +0000 (16:37 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-spi

11 years agoac14xx: rephrase network boot config for development
Gerhard Sittig [Wed, 5 Jun 2013 12:51:11 +0000 (14:51 +0200)]
ac14xx: rephrase network boot config for development

- remove the builtin 'rootpath' spec (according to U-Boot project
  policy) and require user provided environments to contain these
- rephrase the evaluation of the 'muster_nr' approach which allows to
  quickly switch among several network boot setups (make the setting
  transparent when empty, resulting in default DULG behaviour)
- reduce the ARP timeout for faster network boot

Signed-off-by: Gerhard Sittig <gsi@denx.de>
11 years agoac14xx: use the official product name everywhere
Gerhard Sittig [Wed, 5 Jun 2013 12:51:10 +0000 (14:51 +0200)]
ac14xx: use the official product name everywhere

remove remaining "k6" code names, switch to the official 'ac14xx' name

Signed-off-by: Gerhard Sittig <gsi@denx.de>
11 years agoac14xx: remove obsolete board config items
Gerhard Sittig [Wed, 5 Jun 2013 12:51:09 +0000 (14:51 +0200)]
ac14xx: remove obsolete board config items

- use the default baudrate table for serial communication
- remove hostname/boofile/rootpath defines which were not referenced elsewhere

Signed-off-by: Gerhard Sittig <gsi@denx.de>
11 years agoac14xx: re-order the recovery condition checks
Gerhard Sittig [Wed, 5 Jun 2013 12:51:08 +0000 (14:51 +0200)]
ac14xx: re-order the recovery condition checks

re-order the conditions which make the recovery system startup: combine
those conditions which were explicitly initiated (key press, software
request) and those which post-process error conditions (installer issues)

Signed-off-by: Gerhard Sittig <gsi@denx.de>
11 years agoac14xx: minor improvement in diagnostics
Gerhard Sittig [Wed, 5 Jun 2013 12:51:07 +0000 (14:51 +0200)]
ac14xx: minor improvement in diagnostics

- minor rewording of diagnostics output
- make diagnostics optional and off by default

Signed-off-by: Gerhard Sittig <gsi@denx.de>
11 years agoac14xx: cleanup comments in the board support
Gerhard Sittig [Wed, 5 Jun 2013 12:51:06 +0000 (14:51 +0200)]
ac14xx: cleanup comments in the board support

fix typos, minor rephrasing, remove obsolete notes and TODO items

Signed-off-by: Gerhard Sittig <gsi@denx.de>
11 years agoac14xx: fix a potential NULL deref in diagnostics
Gerhard Sittig [Wed, 5 Jun 2013 12:51:05 +0000 (14:51 +0200)]
ac14xx: fix a potential NULL deref in diagnostics

getenv() immediately after setenv() may perfectly legally return NULL, so
make sure to not deference an invalid pointer when creating diagnostic output

Signed-off-by: Gerhard Sittig <gsi@denx.de>
11 years agosf: Warn to use BAR for > 16MiB flashes
Jagannadha Sutradharudu Teki [Fri, 21 Jun 2013 13:49:03 +0000 (19:19 +0530)]
sf: Warn to use BAR for > 16MiB flashes

Warning for > 16MiB flashes to #define CONFIG_SPI_FLASH_BAR

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
11 years agosf: Add debug messages on spi_flash_read_common
Jagannadha Sutradharudu Teki [Fri, 21 Jun 2013 13:49:02 +0000 (19:19 +0530)]
sf: Add debug messages on spi_flash_read_common

- Added debug's on spi_flash_read_common()
- Added space

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
11 years agosf: Place the sf calls in proper order
Jagannadha Sutradharudu Teki [Fri, 21 Jun 2013 13:49:01 +0000 (19:19 +0530)]
sf: Place the sf calls in proper order

Placed the sf calls in proper order - erase/write/read

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
11 years agosf: Unify spi_flash write code
Jagannadha Sutradharudu Teki [Fri, 21 Jun 2013 13:49:00 +0000 (19:19 +0530)]
sf: Unify spi_flash write code

Move common flash write code into spi_flash_write_common().

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
Acked-by: Simon Glass <sjg@chromium.org>
11 years agosf: Add flag status register polling support
Jagannadha Sutradharudu Teki [Fri, 21 Jun 2013 10:26:30 +0000 (15:56 +0530)]
sf: Add flag status register polling support

Flag status register polling is required for micron 512Mb flash
devices onwards, for performing erase/program operations.

Like polling for WIP(Write-In-Progress) bit in read status register,
spi_flash_cmd_wait_ready will poll for PEC(Program-Erase-Control)
bit in flag status register.

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
11 years agosf: Remove spi_flash_cmd_poll_bit()
Jagannadha Sutradharudu Teki [Sun, 26 May 2013 18:07:11 +0000 (23:37 +0530)]
sf: Remove spi_flash_cmd_poll_bit()

There is no other call other than spi_flash_cmd_wait_ready(),
hence removed spi_flash_cmd_poll_bit and use the poll status code
spi_flash_cmd_wait_ready() itself.

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
11 years agosf: spansion: Add support for S25FL512S_64K
Jagannadha Sutradharudu Teki [Mon, 10 Jun 2013 18:11:57 +0000 (23:41 +0530)]
sf: spansion: Add support for S25FL512S_64K

Add support for Spansion S25FL512S_64K SPI flash.

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
11 years agosf: stmicro: Add support for N25Q1024A
Jagannadha Sutradharudu Teki [Tue, 16 Apr 2013 14:53:48 +0000 (20:23 +0530)]
sf: stmicro: Add support for N25Q1024A

Add support for Numonyx N25Q1024A SPI flash.

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
11 years agosf: stmicro: Add support for N25Q1024
Jagannadha Sutradharudu Teki [Tue, 16 Apr 2013 14:52:48 +0000 (20:22 +0530)]
sf: stmicro: Add support for N25Q1024

Add support for Numonyx N25Q1024 SPI flash.

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
11 years agosf: stmicro: Add support for N25Q512A
Jagannadha Sutradharudu Teki [Tue, 16 Apr 2013 14:50:12 +0000 (20:20 +0530)]
sf: stmicro: Add support for N25Q512A

Add support for Numonyx N25Q512A SPI flash.

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
11 years agosf: stmicro: Add support for N25Q512
Jagannadha Sutradharudu Teki [Tue, 16 Apr 2013 14:48:29 +0000 (20:18 +0530)]
sf: stmicro: Add support for N25Q512

Add support for Numonyx N25Q512 SPI flash.

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
11 years agosf: Use spi_flash_addr() in write call
Jagannadha Sutradharudu Teki [Tue, 11 Jun 2013 16:06:20 +0000 (21:36 +0530)]
sf: Use spi_flash_addr() in write call

Use the existing spi_flash_addr() for 3-byte addressing
cmd filling in write call.

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
11 years agosf: Add bank addr code in CONFIG_SPI_FLASH_BAR
Jagannadha Sutradharudu Teki [Wed, 19 Jun 2013 10:03:58 +0000 (15:33 +0530)]
sf: Add bank addr code in CONFIG_SPI_FLASH_BAR

Defined bank addr code on CONFIG_SPI_FLASH_BAR macro, to reduce the
size for existing boards which has < 16Mbytes SPI flashes.

It's upto user which has provision to use the bank addr code for
flashes which has > 16Mbytes.

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
11 years agosf: Update sf read to support all sizes of flashes
Jagannadha Sutradharudu Teki [Fri, 31 May 2013 10:30:36 +0000 (16:00 +0530)]
sf: Update sf read to support all sizes of flashes

This patch updated the spi_flash read func to support all
sizes of flashes using bank reg addr facility.

The same support has been added in below patch for erase/write
spi_flash functions:
"sf: Support all sizes of flashes using bank addr reg facility"
(sha1: c956f600cbb0943d0afe1004cdb503f4fcd8f415)

With these new updates on sf framework, the flashes which has < 16MB
are not effected as per as performance is concern and but the
u-boot.bin size incrased ~460 bytes.

sf update(for first 16MBytes), Changes before:
U-Boot> sf update 0x1000000 0x0 0x1000000
- N25Q256
  16777216 bytes written, 0 bytes skipped in 199.72s, speed 86480 B/s
- W25Q128BV
  16777216 bytes written, 0 bytes skipped in 351.739s, speed 48913 B/s
- S25FL256S_64K
  16777216 bytes written, 0 bytes skipped in 65.659s, speed 262144 B/s

sf update(for first 16MBytes), Changes before:
U-Boot> sf update 0x1000000 0x0 0x1000000
- N25Q256
  16777216 bytes written, 0 bytes skipped in 198.953s, speed 86480 B/s
- W25Q128BV
  16777216 bytes written, 0 bytes skipped in 350.90s, speed 49200 B/s
- S25FL256S_64K
  16777216 bytes written, 0 bytes skipped in 66.521s, speed 262144 B/s

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
11 years agosf: Update sf to support all sizes of flashes
Jagannadha Sutradharudu Teki [Thu, 30 May 2013 14:54:14 +0000 (20:24 +0530)]
sf: Update sf to support all sizes of flashes

Updated the spi_flash framework to handle all sizes of flashes
using bank/extd addr reg facility

The current implementation in spi_flash supports 3-byte address mode
due to this up to 16Mbytes amount of flash is able to access for those
flashes which has an actual size of > 16MB.

As most of the flashes introduces a bank/extd address registers
for accessing the flashes in 16Mbytes of banks if the flash size
is > 16Mbytes, this new scheme will add the bank selection feature
for performing write/erase operations on all flashes.

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
11 years agosf: Read flash bank addr register at probe time
Jagannadha Sutradharudu Teki [Wed, 19 Jun 2013 10:07:09 +0000 (15:37 +0530)]
sf: Read flash bank addr register at probe time

Read the flash bank addr register to get the state of bank in
a perticular flash. and also bank write happens only when there is
a change in bank selection from user.

bank read only valid for flashes which has > 16Mbytes those are
opearted in 3-byte addr mode, each bank occupies 16Mytes.

Suppose if the flash has 64Mbytes size consists of 4 banks like
bank0, bank1, bank2 and bank3.

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
11 years agosf: Discover the bank addr commands
Jagannadha Sutradharudu Teki [Wed, 19 Jun 2013 10:01:23 +0000 (15:31 +0530)]
sf: Discover the bank addr commands

Bank/Extended addr commands are specific to particular
flash vendor so discover them based on the idocode0.

Assign the discovered bank commands to spi_flash members
so-that the bank read/write will use their specific operations.

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
11 years agosf: Add bank address register writing support
Jagannadha Sutradharudu Teki [Thu, 13 Jun 2013 15:07:19 +0000 (20:37 +0530)]
sf: Add bank address register writing support

This patch provides support to program a flash bank address
register.

extended/bank address register contains an information to access
the 4th byte addressing in 3-byte address mode.

reff' the spec for more details about bank addr register
in Page-63, Table 8.16
http://www.spansion.com/Support/Datasheets/S25FL128S_256S_00.pdf

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
11 years agospi: mxc_spi: Use DIV_ROUND_UP at appropriate places
Axel Lin [Fri, 14 Jun 2013 13:13:32 +0000 (21:13 +0800)]
spi: mxc_spi: Use DIV_ROUND_UP at appropriate places

This change slightly improves readability.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Reviewed-by: Jagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>
11 years agospi: cf_qspi: Use DIV_ROUND_UP at appropriate place
Axel Lin [Fri, 14 Jun 2013 13:12:19 +0000 (21:12 +0800)]
spi: cf_qspi: Use DIV_ROUND_UP at appropriate place

This change slightly improves readability.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Richard Retanubun <richardretanubun@ruggedcom.com>
Reviewed-by: Jagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>
11 years agosf: winbond: Add support for W25QXXXFV
Jagannadha Sutradharudu Teki [Thu, 30 May 2013 11:04:19 +0000 (16:34 +0530)]
sf: winbond: Add support for W25QXXXFV

Add support for Winbond W25QXXXFV SPI flash.

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
11 years agosf: winbond: Add support for W25Q16DW
Jagannadha Sutradharudu Teki [Mon, 27 May 2013 19:25:00 +0000 (00:55 +0530)]
sf: winbond: Add support for W25Q16DW

Add support for Winbond W25Q16DW SPI flash.

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
11 years agosf: winbond: Add support for W25Q128FW
Jagannadha Sutradharudu Teki [Mon, 27 May 2013 19:19:26 +0000 (00:49 +0530)]
sf: winbond: Add support for W25Q128FW

Add support for Winbond W25Q128FW SPI flash.

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
11 years agosf: winbond: Update the names for W25Q 0x40XX ID's flash parts
Jagannadha Sutradharudu Teki [Mon, 27 May 2013 19:11:58 +0000 (00:41 +0530)]
sf: winbond: Update the names for W25Q 0x40XX ID's flash parts

Use the exact names for W25Q 0x40XX ID's flash parts, as the same
sizes of flashes comes with different ID's. so-that the distinguishes
becomes easy with this change.

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
11 years agosf: spansion: Correct name of S25FL128S 64K Sector part
Jagannadha Sutradharudu Teki [Fri, 14 Jun 2013 15:33:51 +0000 (21:03 +0530)]
sf: spansion: Correct name of S25FL128S 64K Sector part

Corrected the name of S25FL128S 64K sector part SPI flash,
S25FL128S supported has been added in below commit
"sf: spansion: Add support for S25FL128S"
(sha1: 1bfb9f156aa66cca6bb9c773867a1f02a84b14be)

Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
11 years agoMerge branch 'master' of git://git.denx.de/u-boot-arm
Tom Rini [Sat, 22 Jun 2013 11:38:12 +0000 (07:38 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-arm

11 years agoarm: optimize relocate_code routine
Albert ARIBAUD [Tue, 11 Jun 2013 12:17:35 +0000 (14:17 +0200)]
arm: optimize relocate_code routine

Use section symbols directly
Drop support for R_ARM_ABS32 record types
Eliminate unneeded intermediate registers
Optimize relocation table iteration

Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
Tested-by: Lubomir Popov <lpopov@mm-sol.com>
Tested-by: Jeroen Hofstee <jeroen@myspectrum.nl>
Reviewed-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
11 years agoarm: make __rel_dyn_{start, end} compiler-generated
Albert ARIBAUD [Tue, 11 Jun 2013 12:17:34 +0000 (14:17 +0200)]
arm: make __rel_dyn_{start, end} compiler-generated

This change is only done where needed: some linker
scripts may contain relocation symbols yet remain
unchanged.

__rel_dyn_start and __rel_dyn_end each requires
its own output section; putting them in relocation
sections changes their flags and breaks relocation.

Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
Tested-by: Lubomir Popov <lpopov@mm-sol.com>
Tested-by: Jeroen Hofstee <jeroen@myspectrum.nl>
Reviewed-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
11 years agoarm: make __image_copy_{start, end} compiler-generated
Albert ARIBAUD [Tue, 11 Jun 2013 12:17:33 +0000 (14:17 +0200)]
arm: make __image_copy_{start, end} compiler-generated

This change is only done where needed: some linker
scripts may contain __image_copy_{start,end} yet
remain unchanged.

Also, __image_copy_end needs its own section; putting
it in relocation sections changes their flags and makes
relocation break.

Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
Tested-by: Lubomir Popov <lpopov@mm-sol.com>
Tested-by: Jeroen Hofstee <jeroen@myspectrum.nl>
Reviewed-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
11 years agoarm: generalize lib/bss.c into lib/sections.c
Albert ARIBAUD [Tue, 11 Jun 2013 12:17:32 +0000 (14:17 +0200)]
arm: generalize lib/bss.c into lib/sections.c

File arch/arm/lib/bss.c was initially defined for BSS only,
but is now going to also contain definitions for other
section-boundary-related symbols, so rename it for better
accuracy.

Also, remove useless 'used' attributes.

Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
Tested-by: Lubomir Popov <lpopov@mm-sol.com>
Tested-by: Jeroen Hofstee <jeroen@myspectrum.nl>
Reviewed-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>