platform/kernel/u-boot.git
10 years agommc: provide a select_hwpart implementation for get_device()
Stephen Warren [Wed, 7 May 2014 18:19:02 +0000 (12:19 -0600)]
mmc: provide a select_hwpart implementation for get_device()

This enables specifying which eMMC HW partition to target for any U-Boot
command that uses the generic get_partition() function to parse its
command-line arguments.

Acked-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agodisk: support devices with HW partitions
Stephen Warren [Wed, 7 May 2014 18:19:01 +0000 (12:19 -0600)]
disk: support devices with HW partitions

Some device types (e.g. eMMC) have hardware-level partitions (for eMMC,
separate boot and user data partitions). This change allows the user to
specify the HW partition they wish to access when passing a device ID to
U-Boot Commands such as part, ls, load, ums, etc.

The syntax allows an optional ".$hwpartid" to be appended to the device
name string for those commands.

Existing syntax, for MMC device 0, default HW partition ID, SW partition
ID 1:

ls mmc 0:1 /

New syntax, for MMC device 0, HW partition ID 1 (boot0), SW partition
ID 2:

ls mmc 0.1:2 /

For my purposes, this is most useful for the ums (USB mass storage
gadget) command, but there's no reason not to allow the new syntax
globally.

This patch adds the core support infra-structure. The next patch will
provide the implementation for MMC.

Acked-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
10 years agocmd_part: fix typo in part command help text
Stephen Warren [Wed, 7 May 2014 18:19:00 +0000 (12:19 -0600)]
cmd_part: fix typo in part command help text

All the sub-commands start with the main command name, but it was
missing from one of the help texts.

<panto> typos fix.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Tom Rini <trini@ti.com>
Acked-by: Pantelis Antoniou <panto@antoniou-consulting.com>
10 years agoeMMC: cmd_mmc.c adds the 'rpmb' sub-command for the 'mmc' command
Pierre Aubert [Thu, 24 Apr 2014 08:30:08 +0000 (10:30 +0200)]
eMMC: cmd_mmc.c adds the 'rpmb' sub-command for the 'mmc' command

This sub-command adds support for the RPMB partition of an eMMC:
* mmc rpmb key <address of the authentication key>
  Programs the authentication key in the eMMC This key can not
  be overwritten.
* mmc rpmb read <address> <block> <#count> [address of key]
  Reads <#count> blocks of 256 bytes in the RPMB partition
  beginning at block number <block>. If the optionnal
  address of the authentication key is provided, the
  Message Authentication Code (MAC) is verified on each
  block.
* mmc rpmb write <address> <block> <#count> <address of key>
  Writes <#count> blocks of 256 bytes in the RPMB partition
  beginning at block number <block>. The datas are signed
  with the key provided.
* mmc rpmb counter
  Returns the 'Write counter' of the RPMB partition.

The sub-command is conditional on compilation flag CONFIG_SUPPORT_EMMC_RPMB

Acked-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Signed-off-by: Pierre Aubert <p.aubert@staubli.com>
CC: Wolfgang Denk <wd@denx.de>
10 years agoAdd the function 'confirm_yesno' for interactive
Pierre Aubert [Thu, 24 Apr 2014 08:30:07 +0000 (10:30 +0200)]
Add the function 'confirm_yesno' for interactive

User's confirmation is asked in different commands. This commit adds a
function for such confirmation.

Acked-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Signed-off-by: Pierre Aubert <p.aubert@staubli.com>
10 years agoeMMC: add support for operations in RPMB partition
Pierre Aubert [Thu, 24 Apr 2014 08:30:06 +0000 (10:30 +0200)]
eMMC: add support for operations in RPMB partition

This patch adds functions for read, write and authentication
key programming for the Replay Protected Memory Block partition
in the eMMC.

Acked-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Signed-off-by: Pierre Aubert <p.aubert@staubli.com>
10 years agommc: Handle switch error status bit in MMC card status
Andrew Gabbasov [Thu, 3 Apr 2014 09:34:32 +0000 (04:34 -0500)]
mmc: Handle switch error status bit in MMC card status

MMC switch command for unsupported feature (e.g. bus width) sets a switch
error bit in card status. This bit should be checked, and, if it's set,
no access with new controller settings should be performed.

Acked-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Signed-off-by: Andrew Gabbasov <andrew_gabbasov@mentor.com>
10 years agommc: postponed needless timer initialization
Mateusz Zalega [Tue, 29 Apr 2014 18:15:30 +0000 (20:15 +0200)]
mmc: postponed needless timer initialization

mmc_init() doesn't call get_timer() anymore if MMC is already
initialized.

<panto> Minor formatting fix.

Acked-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Signed-off-by: Mateusz Zalega <m.zalega@samsung.com>
10 years agoAdd board_mmc_init(...) function for init mmc1 only
Hannes Petermaier [Tue, 8 Apr 2014 06:39:20 +0000 (08:39 +0200)]
Add board_mmc_init(...) function for init mmc1 only

Since B&R boards uses only MMC-Controller #1, it only
wastes time if we initialize #0 first to see that there is nothing.

Cc: <trini@ti.com>
Acked-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Signed-off-by: Hannes Petermaier <oe5hpm@oevsv.at>
10 years agoesdhc/usdhc: Fix PIO mode bug in fsl_esdhc driver
Ye.Li [Thu, 20 Feb 2014 10:00:57 +0000 (18:00 +0800)]
esdhc/usdhc: Fix PIO mode bug in fsl_esdhc driver

When configure the fsl_esdhc driver to PIO mode by defining
"CONFIG_SYS_FSL_ESDHC_USE_PIO", the SD/MMC read and write will fail.

Two bugs in the driver to cause the issue:
1. The read buffer was invalidated after reading from DATAPORT register,
which should be only applied to DMA mode. The valid data in cache was
overwritten by physical memory.
2. The watermarks are not set in PIO mode, will cause according state not
be set.

Acked-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Signed-off-by: Ye.Li <B37916@freescale.com>
10 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc85xx
Tom Rini [Fri, 16 May 2014 22:30:33 +0000 (18:30 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx

10 years agopowerpc/srio-pcie-boot: Adjust addresses for SRIO/PCIE boot
Liu Gang [Thu, 15 May 2014 06:30:34 +0000 (14:30 +0800)]
powerpc/srio-pcie-boot: Adjust addresses for SRIO/PCIE boot

The new 768KB u-boot image size requires changes for
SRIO/PCIE boot. These addresses need to be updated to
appropriate locations.

The updated addresses are used to configure the SRIO/PCIE
inbound windows for the boot, and they must be aligned
with the window size based on the SRIO/PCIE modules requirement.
So for the 768KB u-boot image, the inbound window cannot be set
with 0xfff40000 base address and 0xc0000 size, it should be
extended to 1MB size and the base address can be aligned with
the size.

Signed-off-by: Liu Gang <Gang.Liu@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agompc85xx: configs: remove c=ffe from default environment
Kim Phillips [Thu, 15 May 2014 00:33:45 +0000 (19:33 -0500)]
mpc85xx: configs: remove c=ffe from default environment

AFAICT, c=ffe does nothing and was a typo from the original commit
d17123696c6180ac8b74fbd318bf14652623e982 "powerpc/p4080: Add support
for the P4080DS board" and just kept on getting duplicated
in subsequently added board config files.

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Acked-by: Edward Swarthout <ed.swarthout@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agoboard/p1_p2_rdb:Enable p1_p2_rdb boot from NAND/SD/SPI in SPL
Prabhakar Kushwaha [Thu, 15 May 2014 11:13:12 +0000 (16:43 +0530)]
board/p1_p2_rdb:Enable p1_p2_rdb boot from NAND/SD/SPI in SPL

In the earlier patches, the SPL/TPL fraamework was introduced.
For SD/SPI flash booting way, we introduce the SPL to enable a loader stub. The
SPL was loaded by the code from the internal on-chip ROM. The SPL initializes
the DDR according to the SPD and loads the final uboot image into DDR, then
jump to the DDR to begin execution.

For NAND booting way, the nand SPL has size limitation on some board(e.g.
P1010RDB), it can not be more than 4KB, we can call it "minimal SPL", So the
dynamic DDR driver doesn't fit into this minimum SPL. We added the TPL that is
loaded by the the minimal SPL. The TPL initializes the DDR according to the SPD
and loads the final uboot image into DDR,then jump to the DDR to begin execution.

This patch enabled SPL/TPL for P1_P2_RDB to support starting from NAND/SD/SPI
flash with SPL framework and initializing the DDR according to SPD in the SPL/TPL.
Because the minimal SPL load the TPL to L2 SRAM and the jump to the L2 SRAM to
execute, so the section .resetvec is no longer needed.

Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agopowerpc/mpc85xx: SECURE BOOT- corrected CSPR settings for BSC9132QDS NAND
Aneesh Bansal [Wed, 14 May 2014 06:15:15 +0000 (11:45 +0530)]
powerpc/mpc85xx: SECURE BOOT- corrected CSPR settings for BSC9132QDS NAND

In case of secure boot from NAND, CSPR and FTIM settings are
same as non-secure NAND boot. CSPR0 is configured as NAND and
CSPR1 is configured as NOR.

Signed-off-by: Aneesh Bansal <aneesh.bansal@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agompc85xx/p1020:Define number of USB controllers used on P1020RDB-PD platform
ramneek mehresh [Tue, 13 May 2014 10:06:07 +0000 (15:36 +0530)]
mpc85xx/p1020:Define number of USB controllers used on P1020RDB-PD platform

P1020 SoC which has two USB controllers, but only first one is used
on this platform.

Signed-off-by: Ramneek Mehresh <ramneek.mehresh@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agodrivers/usb : Define usb control register mask for w1c bits
Nikhil Badola [Thu, 8 May 2014 11:35:26 +0000 (17:05 +0530)]
drivers/usb : Define usb control register mask for w1c bits

Define and use CONTROL_REGISTER_W1C_MASK to make sure that
w1c bits of usb control register do not get reset while
writing any other bit

Signed-off-by: Nikhil Badola <nikhil.badola@freescale.com>
Signed-off-by: Ramneek Mehresh <ramneek.mehresh@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agopowerpc/mpc85xx: Added B4460 support
Shaveta Leekha [Wed, 7 May 2014 09:13:23 +0000 (14:43 +0530)]
powerpc/mpc85xx: Added B4460 support

B4460 differs from B4860 only in number of CPU cores,
hence used existing support for B4860.
B4460 has 2 PPC cores whereas B4860 has 4 PPC cores.

Signed-off-by: Shaveta Leekha <shaveta@freescale.com>
Signed-off-by: Sandeep Singh <Sandeep@freescale.com>
Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agopowerpc/85xx: Add T4160RDB board support
Chunhe Lan [Wed, 7 May 2014 02:56:18 +0000 (10:56 +0800)]
powerpc/85xx: Add T4160RDB board support

T4160RDB shares the same platform as T4240RDB. T4160 is
a low power version of T4240, with the eight e6500 cores,
two DDR3 controllers, and same peripheral bus interfaces.

Signed-off-by: Chunhe Lan <Chunhe.Lan@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agofsl/pci: Add workaround for erratum A-005434
Chunhe Lan [Wed, 7 May 2014 02:50:20 +0000 (10:50 +0800)]
fsl/pci: Add workaround for erratum A-005434

By default, all PEX inbound windows PEX_PEXIWARn[TRGT] are
mapped to 0xF, which is local memory. But for BSC9132, 0xF
is CCSR, 0x0 is local memory.

Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com>
Signed-off-by: Chunhe Lan <Chunhe.Lan@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agopowerpc/t104xrdb: Toggle deep sleep management signals after resume
Tang Yuantian [Wed, 7 May 2014 02:25:06 +0000 (10:25 +0800)]
powerpc/t104xrdb: Toggle deep sleep management signals after resume

T104xrdb has several sleep management signals that are used for deep
sleep. They are enabled by OS to enter deep sleep and should be
disabled by u-boot when cores wake up.

Signed-off-by: Tang Yuantian <Yuantian.Tang@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agoboard/freescale: Move CRC32 offset in NXID v1 data format
Ebony Zhu [Fri, 25 Apr 2014 23:38:44 +0000 (18:38 -0500)]
board/freescale: Move CRC32 offset in NXID v1 data format

According to AN3638, CRC of NXID v1 is at the end of the
256-byte I2C memory. The wrong CRC32 offset prevents Uboot
from reading system information from EEPROM. No NXID v0 is
being used on Freescale boards.

Signed-off-by: Ebony Zhu <b45385@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agonet: phy/vitesse: Add support for VSC8664 phy module
Chunhe Lan [Wed, 16 Apr 2014 08:40:52 +0000 (16:40 +0800)]
net: phy/vitesse: Add support for VSC8664 phy module

This patch adds support for VSC8664 PHY module which can
be found on Freescale's T4240RDB boards.

Signed-off-by: Chunhe Lan <Chunhe.Lan@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
10 years agopatman: Suppress duplicate signoffs only for real patches
Simon Glass [Tue, 13 May 2014 18:14:02 +0000 (12:14 -0600)]
patman: Suppress duplicate signoffs only for real patches

There is an unfortunate bug in the signoff suppression logic. The first
pass is performed with 'git log', and all signoffs are added to the
supression set, such that the second time (when processing the real
patches) we always suppress the signoffs.

Correct this by only suppressing signoffs in the second pass.

Signed-off-by: Simon Glass <sjg@chromium.org>
Tested-by: Michal Simek <monstr@monstr.eu>
Tested-by: Andreas Bießmann <andreas.devel@googlemail.com>
10 years agosandbox: set sandbox's vendor to null
Masahiro Yamada [Wed, 14 May 2014 03:57:28 +0000 (12:57 +0900)]
sandbox: set sandbox's vendor to null

Because sandbox is not a real hardware, setting vendor=sandbox is
almost meaningless.

This commit sets sandbox's vendor field to '-'.

It is a good thing that it decreases one level directory hierarchy.
The files board/sandbox/sandbox/* have been moved to board/sandbox/*.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
10 years agoRevert "sandbox: move source files from board/ to arch/sandbox/"
Masahiro Yamada [Wed, 14 May 2014 03:54:37 +0000 (12:54 +0900)]
Revert "sandbox: move source files from board/ to arch/sandbox/"

This reverts commit 258060905e04fe2eb509756ef3b37e23e220a2d6.

Conflicts:
boards.cfg

Wrong patch 25806090 was applied by accident. Revert it.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Cc: Simon Glass <sjg@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
10 years agomvtwsi: Remove unnecessary twsi_baud_rate and twsi_slave_address globals
Hans de Goede [Sat, 3 May 2014 15:46:27 +0000 (17:46 +0200)]
mvtwsi: Remove unnecessary twsi_baud_rate and twsi_slave_address globals

These are used only once, so their is no need to have them global.

This also stops mvtwsi from using any bss vars making it easier to use
before dram init (to talk to the pmic to set the dram voltage).

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
10 years agomvtwsi: Fix clock programming
Hans de Goede [Sat, 3 May 2014 15:46:26 +0000 (17:46 +0200)]
mvtwsi: Fix clock programming

The TWSI_FREQUENCY macro was wrong in 2 ways:
1) It was casting the result of the calculations to an u8, while i2c clk
rates are often >= 100Khz which won't fit in a u8, drop the cast.
2) It had an extra factor of 2 in the divider which neither the datasheet nor
the Linux driver have.

The comment for the default value was wrongly saying that m lives in
bits 4-7, while in reality it is in bits 3-6, as can be seen from the correct
shift by 3 used in i2c_init().

While at it remove the unused twsi_actual_speed variable.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
10 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc85xx
Tom Rini [Tue, 13 May 2014 21:09:28 +0000 (17:09 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx

10 years agoboards.cfg: fix a configuration error of ep8248 board
Masahiro Yamada [Wed, 30 Apr 2014 03:55:22 +0000 (12:55 +0900)]
boards.cfg: fix a configuration error of ep8248 board

"make ep8248_config" fails with an error like this:

    $ make ep8248_config
    make: *** [ep8248_config] Error 1

Its cause is that there are two entries for "ep8248".

The first is around line 652 of boards.cfg. (as Active)

The second appears around line 1230. (as Orphan)

This bug was accidentally introduced by commit e7e90901.
But it is not the author's fault. He just intended to change
IDS8247 board.

The commiter added ep8248 entry by mistake when he resolved a conflict.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Cc: Heiko Schocher <hs@denx.de>
Cc: Kim Phillips <kim.phillips@linaro.org>
Acked-by: Heiko Schocher <hs@denx.de>
Acked-by: Kim Phillips <kim.phillips@freescale.com>
10 years agopowerpc/freescale: Convert selected boards to generic board architecture
York Sun [Wed, 30 Apr 2014 21:43:49 +0000 (14:43 -0700)]
powerpc/freescale: Convert selected boards to generic board architecture

This patch converts the following boards to use generic board: MPC8536DS,
MPC8572DS, MPC8641HPCN, p1_p2_rdb_pc, corenet_ds, t4qds, B4860QDS. It has
been tested on NOR boot on MPC8536DS, MPC8572DS, P1021RDB, P4080DS,
P5020DS, P5040DS, P3041DS, T4240QDS, B4860QDS.

Signed-off-by: York Sun <yorksun@freescale.com>
CC: Ying Zhang <b40530@freescale.com>
CC: Prabhakar Kushwaha <prabhakar@freescale.com>
CC: Haijun.Zhang <Haijun.Zhang@freescale.com>
CC: Scott Wood <scottwood@freescale.com>
CC: Shaohui Xie <Shaohui.Xie@freescale.com>
10 years agopowerpc/mpc86xx: Fix boot_flag for calling board_init_f()
York Sun [Wed, 30 Apr 2014 21:43:48 +0000 (14:43 -0700)]
powerpc/mpc86xx: Fix boot_flag for calling board_init_f()

The argument boot_flag of board_inti_f() hasn't been used for powerpc until
recent changing to use generic board. Set it to 0 as a proper value.

Signed-off-by: York Sun <yorksun@freescale.com>
10 years agopowerpc/mpc85xx: Fix boot_flag for calling board_init_f()
York Sun [Wed, 30 Apr 2014 21:43:47 +0000 (14:43 -0700)]
powerpc/mpc85xx: Fix boot_flag for calling board_init_f()

baord_init_f takes one argument, boot_flag. It has not been used for
powerpc, until recently changing to use generic board architecture.
The boot flag is added as a return value from cpu_init_f().

Signed-off-by: York Sun <yorksun@freescale.com>
CC: Alexander Graf <agraf@suse.de>
10 years agopowerpc/freescale: Change the return value of mac_read_from_eeprom()
York Sun [Wed, 30 Apr 2014 21:43:46 +0000 (14:43 -0700)]
powerpc/freescale: Change the return value of mac_read_from_eeprom()

The return value has not been checked by its caller, until recent change
of using generic board architecture. The error of this function is not
critical enough to hang the system. Printing the warning message is enough
to catch user's attention. U-boot should continue to boot to give user
a chance to fix the EEPROM. Chaning the return value to 0 to avoid hanging
in the board_init_r().

Signed-off-by: York Sun <yorksun@freescale.com>
10 years agopowerpc/mpc85xx: Ignore FDT pointer for non-QEMU in cpu_init_early_f()
York Sun [Wed, 30 Apr 2014 21:43:45 +0000 (14:43 -0700)]
powerpc/mpc85xx: Ignore FDT pointer for non-QEMU in cpu_init_early_f()

The pointer of device tree comes from r3 for QEMU. This is not the case
for normal SoCs out of reset. Having gd->fdt_blob as 0 is important for
other functions to detect the non-existence of device tree.

Signed-off-by: York Sun <yorksun@freescale.com>
CC: Alexander Graf <agraf@suse.de>
10 years agopowerpc/mpc8572ds: Increase u-boot size to 768KB
York Sun [Fri, 25 Apr 2014 19:06:17 +0000 (12:06 -0700)]
powerpc/mpc8572ds: Increase u-boot size to 768KB

U-boot image has grown and exceeded the predefined 512KB. Increasing to
768KB to align with other powerpc boards. Tested on MPC8572DS for 32-
and 36-bit targets with NOR flash boot. NAND boot is not covered by
this patch.

Also update board maintainer for these boards.

Signed-off-by: York Sun <yorksun@freescale.com>
Acked-by: Heiko Schocher <hs@denx.de>
10 years agoqe: disable qe when qe-ucode fails to be uploaded for "deep sleep"
Zhao Qiang [Wed, 30 Apr 2014 08:45:31 +0000 (16:45 +0800)]
qe: disable qe when qe-ucode fails to be uploaded for "deep sleep"

when qe-ucode fails to be uploaded, "deep sleep" will hang.
if there is no qe-ucode, disable qe module for platforms
which support "deep sleep"

Signed-off-by: Zhao Qiang <B45475@freescale.com>
10 years agoPPC 85xx QEMU: Make a generic board file
Alexander Graf [Wed, 30 Apr 2014 17:21:14 +0000 (19:21 +0200)]
PPC 85xx QEMU: Make a generic board file

This patch enables the E500 QEMU board to use the generic cross-arch board
infrastructure.

Signed-off-by: Alexander Graf <agraf@suse.de>
10 years agopowerpc/mpc85xx: Update TLB CAMs in relocated mode
Alexander Graf [Wed, 30 Apr 2014 17:21:12 +0000 (19:21 +0200)]
powerpc/mpc85xx: Update TLB CAMs in relocated mode

We want to use the TLB mapping helpers in relocated mode as well. These helpers
need to have awareness of already occupied TLB entries. We already had them in
sync in non-relocated mode, but need to resync them when we move into relocated.

Signed-off-by: Alexander Graf <agraf@suse.de>
10 years agoPPC 85xx QEMU: Don't use HID1
Alexander Graf [Wed, 30 Apr 2014 17:21:11 +0000 (19:21 +0200)]
PPC 85xx QEMU: Don't use HID1

For the QEMU machine type, we can plug in either e500v2, e500mc, e5500
or e6500 style cores into the system. U-boot has to work with all of them.

So avoid using HID1 which is not available on e500mc systems to make sure
we don't trap on it.

Signed-off-by: Alexander Graf <agraf@suse.de>
10 years agoPPC 85xx QEMU: Always assume 1 core
Alexander Graf [Wed, 30 Apr 2014 17:21:10 +0000 (19:21 +0200)]
PPC 85xx QEMU: Always assume 1 core

We only need u-boot to bother about a single core in the QEMU machine.
Everything that would require additional knowledge of more cores gets
handled by QEMU and passed straight into the payload we execute.

Because of this setup, it would be counterproductive to enable SMP support
in u-boot. We would have to rip CPUs out of already existing spin tables
and respin them from u-boot. It would be a pretty big mess.

So only assume we have a single core. This fixes errors about CONFIG_MP
being disabled.

Signed-off-by: Alexander Graf <agraf@suse.de>
10 years agokmp204x: enable the errata command
Valentin Longchamp [Wed, 30 Apr 2014 13:01:49 +0000 (15:01 +0200)]
kmp204x: enable the errata command

Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
10 years agokmp204x: add workaround for A-004849
Valentin Longchamp [Wed, 30 Apr 2014 13:01:48 +0000 (15:01 +0200)]
kmp204x: add workaround for A-004849

This should prevent the problems that the CCF can deadlock with certain
traffic patterns.

This also fixes the workaround for A-006559 that was not correctly
implemented before.

Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
10 years agokmp204x: update the RCW
Valentin Longchamp [Wed, 30 Apr 2014 13:01:47 +0000 (15:01 +0200)]
kmp204x: update the RCW

Fix the IRQ/GPIO settings: all the muxed GPIO/external IRQs that are
used as internal interrupts are defined as GPIOs to avoid confusion
between the internal/external interrupts.

Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
10 years agokmp204x: complete the reset sequence and PRST configuration
Valentin Longchamp [Wed, 30 Apr 2014 13:01:46 +0000 (15:01 +0200)]
kmp204x: complete the reset sequence and PRST configuration

This adds the reset support for the following devices that was until
then not implemented:
- BFTIC4
- QSFPs

This also fixes the configuration of the prst behaviour for the other
resets: Only the u-boot and kernel relevant subsystems are taken out of
reset (pcie, ZL30158, and front eth phy).

Most of the prst config move to misc_init_f(), except for the PCIe
related ones that are in pci_init_board and the bftic and ZL30158 ones
that should be done as soon as possible.

Only the behavior of the Hooper reset is changed according to the
documentation as the application is not able to not configure the switch
when it is not reset.

Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
10 years agokmp204x: update the CONFIG_PRAM and CONFIG_KM_RESERVED_PRAM defines
Valentin Longchamp [Wed, 30 Apr 2014 13:01:45 +0000 (15:01 +0200)]
kmp204x: update the CONFIG_PRAM and CONFIG_KM_RESERVED_PRAM defines

This prevents u-boot from accessing into the reserved memory areas that
we have for /var and the logbooks.

Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
10 years agokmp204x: selftest/factory test pin support
Valentin Longchamp [Wed, 30 Apr 2014 13:01:44 +0000 (15:01 +0200)]
kmp204x: selftest/factory test pin support

This patch defines the post_hotkeys_pressed() function that is used for:
- triggering POST memory regions test
- starting the test application through the checktestboot command in
  a script by setting the active bank to testbank

The post_hotkeys_pressed return the state of the SELFTEST pin.

The patch moves from the complete POST-memory test that is too long in
its SLOW version for our production HW test procedure to the much shorter
POST-memory-regions test.

Finally, the unused #defines for the not so relevant mtest command are
removed.

Signed-off-by: Stefan Bigler <stefan.bigler@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
10 years agokmp204x: handle dip-switch for factory settings
Stefan Bigler [Fri, 2 May 2014 08:49:27 +0000 (10:49 +0200)]
kmp204x: handle dip-switch for factory settings

Add readout of dip-switch to revert to factory settings.
If one or more dip-switch are set, launch bank 0 that contains the
bootloader to do the required action.

Signed-off-by: Stefan Bigler <stefan.bigler@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
10 years agokmp204x: Add support for the unit LEDs
Stefan Bigler [Fri, 2 May 2014 08:48:41 +0000 (10:48 +0200)]
kmp204x: Add support for the unit LEDs

The unit LEDs are managed by the QRIO CPLD. This patch adds support for
accessing these LEDs in the QRIO.

The LEDs then are set to a correct boot state:
- UNIT-LED is red
- BOOT-LED is on.

Signed-off-by: Stefan Bigler <stefan.bigler@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
10 years agopowerpc/85xx: add T4080 SoC support
Shengzhou Liu [Fri, 25 Apr 2014 08:31:22 +0000 (16:31 +0800)]
powerpc/85xx: add T4080 SoC support

The T4080 SoC is a low-power version of the T4160.
T4080 combines 4 dual-threaded Power Architecture e6500
cores with single cluster and two memory complexes.

Signed-off-by: Shengzhou Liu <Shengzhou.Liu@freescale.com>
10 years agopowerpc/t208x: enable errata A006261, A006593, A006379
Shengzhou Liu [Thu, 24 Apr 2014 03:10:09 +0000 (11:10 +0800)]
powerpc/t208x: enable errata A006261A006593A006379

Enable errata A006261A006593A006379 for T208x.
Additionally enable CONFIG_CMD_ERRATA for T2080RDB.

Signed-off-by: Shengzhou Liu <Shengzhou.Liu@freescale.com>
10 years agopowerpc/fman/memac: use default MDIO_HOLD value
Shaohui Xie [Tue, 22 Apr 2014 10:21:37 +0000 (18:21 +0800)]
powerpc/fman/memac: use default MDIO_HOLD value

Current driver uses a Maximum value for MDIO_HOLD when doing 10G MDIO
access, this is due to an errata A-006260 on T4 rev1.0 which is fixed
on rev2.0, so remove the maximum value to use the default value for rev2.0.

Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
10 years agopowerpc/mpc85xx: SECURE BOOT- Add secure boot target for T2080RDB
Aneesh Bansal [Tue, 22 Apr 2014 09:47:06 +0000 (15:17 +0530)]
powerpc/mpc85xx: SECURE BOOT- Add secure boot target for T2080RDB

Secure Boot Target is added for T2080RDB

Changes:
For Secure boot, CPC is configured as SRAM and used as house
keeping area which needs to be disabled.
So CONFIG_SYS_CPC_REINIT_F is defined for CONFIG_T2080RDB.

Signed-off-by: Aneesh Bansal <aneesh.bansal@freescale.com>
10 years agopowerpc/mpc85xx: SECURE BOOT- secure boot target for t1040rdb
Aneesh Bansal [Tue, 22 Apr 2014 09:46:48 +0000 (15:16 +0530)]
powerpc/mpc85xx: SECURE BOOT- secure boot target for t1040rdb

T1040RDB.h file is removed and a unified file T104xRDB.h is created.
Hence macro CONFIG_T1040 is renamed to CONFIG_T104x.

Signed-off-by: Gaurav Kumar Rana <gaurav.rana@freescale.com>
Signed-off-by: Aneesh Bansal <aneesh.bansal@freescale.com>
10 years agopowerpc/85xx: Add T4240RDB board support
Chunhe Lan [Mon, 14 Apr 2014 10:42:06 +0000 (18:42 +0800)]
powerpc/85xx: Add T4240RDB board support

T4240RDB board Specification
----------------------------
Memory subsystem:
   6GB DDR3
   128MB NOR flash
   2GB NAND flash

Ethernet:
   Eight 1G SGMII ports
   Four 10Gbps SFP+ ports

PCIe:
   Two PCIe slots

USB:
   Two USB2.0 Type A ports

SDHC:
   One SD-card port

SATA:
   One SATA port

UART:
   Dual RJ45 ports

Signed-off-by: Chunhe Lan <Chunhe.Lan@freescale.com>
[York Sun: fix CONFIG_SYS_QE_FMAN_FW_ADDR in T4240RDB.h]

10 years agoboard/b4qds: VID support
Shaveta Leekha [Fri, 11 Apr 2014 08:42:40 +0000 (14:12 +0530)]
board/b4qds: VID support

The fuse status register provides the values from on-chip
voltage ID efuses programmed at the factory.
These values define the voltage requirements for
the chip. u-boot reads FUSESR and translates the values
into the appropriate commands to set the voltage output
value of an external voltage regulator.

B4860QDS has a PowerOne ZM7300 programmable digital Power
Manager which is programmed as per the value read from
the fuses.

Reference for this code is taken from t4qds VID implementation.

Signed-off-by: Shaveta Leekha <shaveta@freescale.com>
Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com>
10 years agoboard/freescale/common: ZM7300 driver
Shaveta Leekha [Fri, 11 Apr 2014 08:42:39 +0000 (14:12 +0530)]
board/freescale/common: ZM7300 driver

Adds Support for PowerOne ZM7300 voltage regulator.
This device is available on some Freescale Boards like B4860QDS
and has to be programmed to adjust the voltage on the board.

The device is accessible via I2C interface.

Signed-off-by: Shaveta Leekha <shaveta@freescale.com>
Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com>
10 years agoMerge branch 'fpga' of git://www.denx.de/git/u-boot-microblaze
Tom Rini [Tue, 13 May 2014 11:34:08 +0000 (07:34 -0400)]
Merge branch 'fpga' of git://denx.de/git/u-boot-microblaze

10 years agoMerge branch 'master' of git://git.denx.de/u-boot-video
Tom Rini [Tue, 13 May 2014 11:31:00 +0000 (07:31 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-video

10 years agofpga: zynq: Use helper function zynq_validate_bitstream
Siva Durga Prasad Paladugu [Thu, 13 Mar 2014 06:27:34 +0000 (11:57 +0530)]
fpga: zynq: Use helper function zynq_validate_bitstream

Use helper function zynq_validate_bitstream so that the
code can be reused easily for different cases of dma transfer.

Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agofpga: zynq: Use helper functions for zynq dma
Siva Durga Prasad Paladugu [Wed, 12 Mar 2014 11:39:26 +0000 (17:09 +0530)]
fpga: zynq: Use helper functions for zynq dma

Use zynq_dma_xfer_init, zynq_align_dma_buffer,
zynq_dma_transfer helper function performing dma
transfers so that the code can be reused easily for
different cases of dma transfer.

Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agofpga: zynq: Remove sparse warnings
Michal Simek [Fri, 25 Apr 2014 11:51:58 +0000 (13:51 +0200)]
fpga: zynq: Remove sparse warnings

Warnings:
drivers/fpga/zynqpl.c:150:32: warning: Using plain integer as NULL pointer
drivers/fpga/zynqpl.c:152:16: warning: Using plain integer as NULL pointer

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agofpga: xilinx: Simplify load/dump/info function handling
Michal Simek [Thu, 13 Mar 2014 12:07:57 +0000 (13:07 +0100)]
fpga: xilinx: Simplify load/dump/info function handling

Connect FPGA version with appropriate operations
to remove huge switch-cases for every FPGA family.
Tested on Zynq. Spartan2/Spartan3/Virtex2 just compile test.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agofpga: xilinx: Fix the rest of CamelCases
Michal Simek [Thu, 13 Mar 2014 11:58:20 +0000 (12:58 +0100)]
fpga: xilinx: Fix the rest of CamelCases

No functional changes.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agofpga: xilinx: Avoid CamelCase for in Xilinx_desc
Michal Simek [Thu, 13 Mar 2014 11:49:21 +0000 (12:49 +0100)]
fpga: xilinx: Avoid CamelCase for in Xilinx_desc

No functional changes.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agofpga: virtex2: Avoid CamelCase
Michal Simek [Thu, 13 Mar 2014 10:33:36 +0000 (11:33 +0100)]
fpga: virtex2: Avoid CamelCase

No functional changes.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agofpga: spartan3: Avoid CamelCase
Michal Simek [Thu, 13 Mar 2014 10:28:42 +0000 (11:28 +0100)]
fpga: spartan3: Avoid CamelCase

No functional changes.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agofpga: spartan2: Avoid CamelCase
Michal Simek [Thu, 13 Mar 2014 10:23:43 +0000 (11:23 +0100)]
fpga: spartan2: Avoid CamelCase

No functional changes.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agokbuild: Fix trailing whitespaces
Michal Simek [Thu, 24 Apr 2014 13:24:28 +0000 (15:24 +0200)]
kbuild: Fix trailing whitespaces

Trivial fix.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agonet/designware: call phy_connect_dev() to properly setup phylib device
Ian Campbell [Mon, 28 Apr 2014 19:14:05 +0000 (20:14 +0100)]
net/designware: call phy_connect_dev() to properly setup phylib device

This sets up the linkage from the phydev back to the ethernet device. This
symptom of not doing this which I noticed was:
    <NULL> Waiting for PHY auto negotiation to complete....
rather than:
    dwmac.1c50000 Waiting for PHY auto negotiation to complete....

Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Cc: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
10 years agoboards.cfg: Keep entries sorted
Fabio Estevam [Mon, 12 May 2014 16:01:51 +0000 (13:01 -0300)]
boards.cfg: Keep entries sorted

Run "tools/reformat.py -i -d '-' -s 8 <boards.cfg >boards0.cfg && mv boards0
in order to keep the entries sorted.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
10 years agofs/fat: correct FAT16/12 file finding in root dir
Wu, Josh [Thu, 8 May 2014 08:14:07 +0000 (16:14 +0800)]
fs/fat: correct FAT16/12 file finding in root dir

When write a file into FAT file system, it will search a match file in
root dir. So the find_directory_entry() will get the first cluster of
root dir content and search the directory item one by one. If the file
is not found, we will call get_fatent_value() to get next cluster of root
dir via lookup the FAT table and continue the search.

The issue is in FAT16/12 system, we cannot get root dir's next clust
from FAT table. The FAT table only be use to find the clust of data
aera in FAT16/12.

In FAT16/12 if the clust is in root dir, the clust number is a negative
number or 0, 1. Since root dir is located in front of the data area.
Data area start clust #2. So the root dir clust number should < 2.

This patch will check above situation before call get_fatenv_value().
If curclust is < 2, include minus number, we just increase one on the
curclust since root dir is in continous cluster.

The patch also add a sanity check for entry in get_fatenv_value().

Signed-off-by: Josh Wu <josh.wu@atmel.com>
10 years agofs: fat_write: fix the incorrect last cluster checking
Wu, Josh [Thu, 8 May 2014 08:14:06 +0000 (16:14 +0800)]
fs: fat_write: fix the incorrect last cluster checking

In fat_write.c, the last clust condition check is incorrect:

  if ((curclust >= 0xffffff8) || (curclust >= 0xfff8)) {
   ... ...
  }

For example, in FAT32 if curclust is 0x11000. It is a valid clust.
But on above condition check, it will be think as a last clust.

So the correct last clust check should be:
  in fat32, curclust >= 0xffffff8
  in fat16, curclust >= 0xfff8
  in fat12, curclust >= 0xff8

This patch correct the last clust check.

Signed-off-by: Josh Wu <josh.wu@atmel.com>
10 years agofs/fat: add fat12 cluster check
Wu, Josh [Thu, 8 May 2014 08:14:05 +0000 (16:14 +0800)]
fs/fat: add fat12 cluster check

Signed-off-by: Josh Wu <josh.wu@atmel.com>
10 years agofs:ext4:write:fix: Reinitialize global variables after updating a file
Łukasz Majewski [Tue, 6 May 2014 07:36:05 +0000 (09:36 +0200)]
fs:ext4:write:fix: Reinitialize global variables after updating a file

This bug shows up when file stored on the ext4 file system is updated.

The ext4fs_delete_file() is responsible for deleting file's (e.g. uImage)
data.
However some global data (especially ext4fs_indir2_block), which is used
during file deletion are left unchanged.

The ext4fs_indir2_block pointer stores reference to old ext4 double
indirect allocated blocks. When it is unchanged, after file deletion,
ext4fs_write_file() uses the same pointer (since it is already initialized
- i.e. not NULL) to return number of blocks to write. This trunks larger
file when previous one was smaller.

Lets consider following scenario:

1. Flash target with ext4 formatted boot.img (which has uImage [*] on itself)
2. Developer wants to upload their custom uImage [**]
- When new uImage [**] is smaller than the [*] - everything works
correctly - we are able to store the whole smaller file with corrupted
ext4fs_indir2_block pointer
- When new uImage [**] is larger than the [*] - theCRC is corrupted,
since truncation on data stored at eMMC was done.
3. When uImage CRC error appears, then reboot and LTHOR/DFU reflashing causes
proper setting of ext4fs_indir2_block() and after that uImage[**]
is successfully stored (correct uImage [*] metadata is stored at an
eMMC on the first flashing).

Due to above the bug was very difficult to reproduce.
This patch sets default values for all ext4fs_indir* pointers/variables.

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
10 years agofs:ext4:cleanup: Remove superfluous code
Łukasz Majewski [Tue, 6 May 2014 07:36:04 +0000 (09:36 +0200)]
fs:ext4:cleanup: Remove superfluous code

Code responsible for handling situation when ext4 has block size of 1024B
can be ordered to take less space.

This patch does that for ext4 common and write files.

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
10 years agodisk: part_efi: add support for the Backup GPT
Steve Rae [Mon, 5 May 2014 20:00:08 +0000 (13:00 -0700)]
disk: part_efi: add support for the Backup GPT

Check the Backup GPT table if the Primary GPT table is invalid.
Renamed "Secondary GPT" to "Backup GPT" as per:
  UEFI Specification (Version 2.3.1, Errata A)

Signed-off-by: Steve Rae <srae@broadcom.com>
10 years agocommon/board_f: Fix size variable
York Sun [Sat, 3 May 2014 00:28:05 +0000 (17:28 -0700)]
common/board_f: Fix size variable

DRAM size should use 64-bit variable when the size could be more than 4GB.
Caught and verified on P4080DS with 4GB DDR.

Signed-off-by: York Sun <yorksun@freescale.com>
Acked-by: Simon Glass <sjg@chromium.org>
10 years agocommon/board_f: Initialized global data for generic board
York Sun [Sat, 3 May 2014 00:28:04 +0000 (17:28 -0700)]
common/board_f: Initialized global data for generic board

Some platforms (tested on mpc85xx, mpc86xx) use global data before calling
function baord_inti_f(). The data should not be cleared later. Any arch
which uses global data in generic board board_init_f() should define
CONFIG_SYS_GENERIC_GLOBAL_DATA.

Signed-off-by: York Sun <yorksun@freescale.com>
CC: Scott Wood <scottwood@freescale.com>
CC: Simon Glass <sjg@chromium.org>
CC: Albert ARIBAUD <albert.u.boot@aribaud.net>
Acked-by: Simon Glass <sjg@chromium.org>
10 years agoTrivial fix to .gitignore for spl/Makefile
Ralph Siemsen [Thu, 1 May 2014 18:18:41 +0000 (14:18 -0400)]
Trivial fix to .gitignore for spl/Makefile

Trivial fix to .gitignore for spl/Makefile

According to the gitignore man page:

"An optional prefix "!" which negates the pattern; any matching file
excluded by a previous pattern will become included again."
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
So the directory exclude "/spl/*" must come before the exception
for spl/Makefile otherwise it has no effect.

Signed-off-by: Ralph Siemsen <ralphs@netwinder.org>
Tested-by: Masahiro Yamada <yamada.m@jp.panasonic.com> [on git v1.7.9.5 / v1.8.3.2]
10 years agocmd_bootm.c: Only say XIP image when load is image_start
Tom Rini [Thu, 1 May 2014 14:01:08 +0000 (10:01 -0400)]
cmd_bootm.c: Only say XIP image when load is image_start

We say we have an XIP (in this case, image loaded at desired execution
address) when the image header has been offset in the load.  It's
possible that in some cases executing the header is non-fatal but that's
not true in many other cases.

Signed-off-by: Tom Rini <trini@ti.com>
10 years agotools: env: Add aes.c placeholder
Marek Vasut [Mon, 28 Apr 2014 09:56:30 +0000 (11:56 +0200)]
tools: env: Add aes.c placeholder

Add missing aes.c placeholder which includes lib/aes.c . Without this
one, tools/env/ will fail to build.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
Cc: Masahiro Yamada <yamada.m@jp.panasonic.com>
Tested-by: Alexey Brodkin <abrodkin@synopsys.com>
Tested-by: Heiko Schocher <hs@denx.de>
10 years agonand_spl: remove unused linker scripts u-boot-nand.lds
Masahiro Yamada [Mon, 28 Apr 2014 08:45:05 +0000 (17:45 +0900)]
nand_spl: remove unused linker scripts u-boot-nand.lds

Commit 345b77ba removed some nand_spl boards but
it missed to delete linker scripts.

These linker scripts are not used now.

And one more fix:
amcc/acadia does not support nand_spl anymore, so remove
  #if !defined(CONFIG_NAND_U_BOOT) ... #endif

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Cc: Stefan Roese <sr@denx.de>
Acked-by: Stefan Roese <sr@denx.de>
10 years agoconfig: remove platform CONFIG_SYS_HZ definition part 4
Masahiro Yamada [Mon, 28 Apr 2014 01:18:34 +0000 (10:18 +0900)]
config: remove platform CONFIG_SYS_HZ definition part 4

Some new boards define CONFIG_SYS_HZ again! Remove.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Acked-by: Bo Shen <voice.shen@atmel.com>
10 years agocosmetic: delete misleading comment /* CONFIG_BOARDDIR */
Masahiro Yamada [Mon, 28 Apr 2014 01:17:10 +0000 (10:17 +0900)]
cosmetic: delete misleading comment /* CONFIG_BOARDDIR */

CONFIG_BOARDDIR is not referenced in these linker scripts.
The comment /* CONFIG_BOARDDIR */ is misleading.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agohush shell: Avoid string write overflow when entering max cmd length
Kristian Otnes [Fri, 25 Apr 2014 13:35:43 +0000 (15:35 +0200)]
hush shell: Avoid string write overflow when entering max cmd length

console_buffer array is defined to be CONFIG_SYS_CBSIZE + 1 long,
whereas the_command array only CONFIG_SYS_CBSIZE long. Subsequent
use of strcpy(the_command, console_buffer) will write final \0
terminating byte outside the_command array when entering a command
of max length.

Signed-off-by: Kristian Otnes <kotnes <at> cisco <dot> com>
10 years agokbuild: allow null board for spl build
Masahiro Yamada [Fri, 25 Apr 2014 12:54:31 +0000 (21:54 +0900)]
kbuild: allow null board for spl build

Commit 33a02da0 supported "<none>" for the board field of boards.cfg.
But it missed to modify spl/Makefile.

This commit provides the flexibility so we can use "<none>" board
in SPL too.

10 years agotps6586x: staticize funtions
Manish Badarkhe [Thu, 24 Apr 2014 03:25:07 +0000 (08:55 +0530)]
tps6586x: staticize funtions

Make funtions static which are locally used in file.

Signed-off-by: Manish Badarkhe <badarkhe.manish@gmail.com>
10 years agodoc: README.generic-board: Fix typo
Fabio Estevam [Tue, 22 Apr 2014 18:45:42 +0000 (15:45 -0300)]
doc: README.generic-board: Fix typo

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Simon Glass <sjg@chromium.org>
10 years agolib/sha256: fix compile on some hosts
Andreas Bießmann [Sun, 20 Apr 2014 08:34:15 +0000 (10:34 +0200)]
lib/sha256: fix compile on some hosts

Commit 2842c1c24269a05142802d25520e7cb9035e456c introduced lib/sha256 into
mkimage. Since then it will be compiled with HOSTCC which may produce errors
on some systems. Most BSD systems (like OS X for me) do not ship a
linux/string.h which will lead to take the U-Boot provided
include/linux/string.h in the end. This header howver is completely wrong
here. Just take the string.h if compiling with HOSTCC and linux/string.h when
not.

Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
Cc: Heiko Schocher <hs@denx.de>
Acked-by: Heiko Schocher<hs@denx.de>
10 years agokbuild: build with -Werror=date-time if the compiler supports it
Masahiro Yamada [Fri, 18 Apr 2014 10:09:51 +0000 (19:09 +0900)]
kbuild: build with -Werror=date-time if the compiler supports it

Using __DATE__, __TIME__ would make the build non-deterministic.

If the code needs to refer to build date/time, use U_BOOT_DATE and
U_BOOT_TIME in include/generated/timestamp_autogenerated.h instead.

This commit has been imported from Linux Kernel,
which should be applied to U-Boot too:

    commit fe7c36c7bde12190341722af69358e42171162f3
    Author: Josh Triplett <josh@joshtriplett.org>
    Date:   Mon Dec 23 13:56:06 2013 -0800

    Makefile: Build with -Werror=date-time if the compiler supports it

    GCC 4.9 and newer have a new warning -Wdate-time, which warns on any use
    of __DATE__, __TIME__, or __TIMESTAMP__, which would make the build
    non-deterministic.  Now that the kernel does not use any of those
    macros, turn on -Werror=date-time if available, to keep it that way.

    The kernel already (optionally) records this information at build time
    in a single place; other kernel code should not duplicate that.

Signed-off-by: Josh Triplett <josh@joshtriplett.org>
Signed-off-by: Michal Marek <mmarek@suse.cz>
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agofs: ubifs: drop __DATE__ and __TIME__
Masahiro Yamada [Fri, 18 Apr 2014 10:09:50 +0000 (19:09 +0900)]
fs: ubifs: drop __DATE__ and __TIME__

__DATE__ and __TIME__ makes the build non-deterministic.
Drop the debug message using them.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agoblackfin: replace bfin_gen_rand_mac() with eth_random_addr()
Masahiro Yamada [Fri, 18 Apr 2014 10:09:49 +0000 (19:09 +0900)]
blackfin: replace bfin_gen_rand_mac() with eth_random_addr()

bfin_gen_rand_mac() uses __DATE__ as the seed for random ethernet
address. This makes the build non-deterministic.

In the first place, it should not be implemented as a Bfin-specific
function. Use eth_random_addr() instead.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Cc: Sonic Zhang <sonic.zhang@analog.com>
10 years agonet: rename and refactor eth_rand_ethaddr() function
Masahiro Yamada [Fri, 18 Apr 2014 10:09:48 +0000 (19:09 +0900)]
net: rename and refactor eth_rand_ethaddr() function

Some functions in include/net.h are ported from
include/linux/etherdevice.h of Linux Kernel.

For ex.
  is_zero_ether_addr()
  is_multicast_ether_addr()
  is_broadcast_ether_addr()
  is_valid_ether_addr();

So, we should use the same function name as that of Linux Kernel,
eth_rand_addr(), for consistency.

Besides, eth_rand_addr() has been implemented as an inline function.
So it should not be surrounded by #ifdef CONFIG_RANDOM_MACADDR.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
10 years agorand: do not surround function declarations by #ifdef
Masahiro Yamada [Fri, 18 Apr 2014 10:09:47 +0000 (19:09 +0900)]
rand: do not surround function declarations by #ifdef

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agocmd_time: do not show ticks
Masahiro Yamada [Fri, 18 Apr 2014 08:46:13 +0000 (17:46 +0900)]
cmd_time: do not show ticks

The command "time" shows the execution time of the command given
to the argument, like this:

    time: 45.293 seconds, 45293 ticks

Since we adopted CONFIG_SYS_HZ = 1000 for all boards,
we always have a simple formula: "1 tick = 0.0001 second".

Showing ticks looks almost redundant.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agonet/phy: enable get_phy_id redefinable
Shengzhou Liu [Fri, 11 Apr 2014 08:14:17 +0000 (16:14 +0800)]
net/phy: enable get_phy_id redefinable

As some PHYs have non-standard PHY ID registers, PHY Id can't
be read correctly by current get_phy_id function, so we enable
get_phy_id redefinable to permit specific PHY driver having own
specific get_phy_id function.

Signed-off-by: Shengzhou Liu <Shengzhou.Liu@freescale.com>
10 years agoAR8035/phy: Enable autonegotiation function for ar8035
Xiaobo Xie [Fri, 11 Apr 2014 08:03:11 +0000 (16:03 +0800)]
AR8035/phy: Enable autonegotiation function for ar8035

Function "genphy_parse_link()" used "if (mii_reg & BMSR_ANEGCAPABLE)" before,
but used "if (phydev->supported & SUPPORTED_Autoneg)" now.
So assign "phydev->supported" to "phydev->drv->features" for ar8035
to enable autonegotiation. Then removed the genphy_config_aneg() function.

Signed-off-by: Xie Xiaobo <X.Xie@freescale.com>
10 years agoserial: nsl16550: add hw flow control support
Karicheri, Muralidharan [Wed, 9 Apr 2014 19:38:46 +0000 (15:38 -0400)]
serial: nsl16550: add hw flow control support

keystone serial hw support hw flow control. This patch
enables hw flow control for keystone EVMs as an optional
feature based on CONFIG_SERIAL_HW_FLOW_CONTROL.

Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
10 years agofs: fat: Fix cache align error message in fatwrite
Nobuhiro Iwamatsu [Tue, 8 Apr 2014 02:12:46 +0000 (11:12 +0900)]
fs: fat: Fix cache align error message in fatwrite

Use of malloc of do_fat_write() causes cache error on ARM v7 platforms.
Perhaps, the same problem will occur at any other CPUs.
This replaces malloc with memalign to fix cache buffer alignment.

Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Signed-off-by: Yoshiyuki Ito <yoshiyuki.ito.ub@renesas.com>
Tested-by: Hector Palacios <hector.palacios@digi.com>