pandora-u-boot.git
9 years agomalloc_f: enable SYS_MALLOC_F by default if DM is on
Masahiro Yamada [Thu, 19 Mar 2015 10:42:55 +0000 (19:42 +0900)]
malloc_f: enable SYS_MALLOC_F by default if DM is on

This option has a bool type, not hex.
Fix it and enable it if CONFIG_DM is on because Driver Model always
requires malloc memory.  Devices are scanned twice, before/after
relocation.  CONFIG_SYS_MALLOC_F should be enabled to use malloc
memory before relocation.  As it is board-independent, handle it
globally.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Acked-by: Robert Baldyga <r.baldyga@samsung.com>
9 years agomalloc_f: remove redundant defalut values of CONFIG_SYS_MALLOC_F_LEN
Masahiro Yamada [Thu, 19 Mar 2015 10:42:54 +0000 (19:42 +0900)]
malloc_f: remove redundant defalut values of CONFIG_SYS_MALLOC_F_LEN

The default value of CONFIG_SYS_MALLOC_F_LEN is defined by ./Kconfig
as 0x400.  Each defconfig or Kconfig need not repeat the same value.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Acked-by: Robert Baldyga <r.baldyga@samsung.com>
9 years agom68k: remove arch/m68k/lib/board.c
Masahiro Yamada [Thu, 19 Mar 2015 10:42:53 +0000 (19:42 +0900)]
m68k: remove arch/m68k/lib/board.c

All the M68000 boards have switched to Generic Board.
This file is no longer necessary.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Huan Wang <alison.wang@freescale.com>
Cc: Angelo Dureghello <angelo@sysam.it>
Reviewed-by: Simon Glass <sjg@chromium.org>
9 years agogeneric-board: select SYS_GENERIC_BOARD for some architectures
Masahiro Yamada [Thu, 19 Mar 2015 10:42:52 +0000 (19:42 +0900)]
generic-board: select SYS_GENERIC_BOARD for some architectures

We have done with the generic board conversion for all the boards
of ARC, Blackfin, M68000, MicroBlaze, MIPS, NIOS2, Sandbox, X86.

Let's select SYS_GENERIC_BOARD for those architectures, so we can
tell which architecture has finished the conversion at a glance.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Alexey Brodkin <abrodkin@synopsys.com>
9 years agogeneric-board: move __HAVE_ARCH_GENERIC_BOARD to Kconfig
Masahiro Yamada [Thu, 19 Mar 2015 10:42:51 +0000 (19:42 +0900)]
generic-board: move __HAVE_ARCH_GENERIC_BOARD to Kconfig

Move the option to Kconfig renaming it to CONFIG_HAVE_GENERIC_BOARD.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Alexey Brodkin <abrodkin@synopsys.com>
9 years agokbuild: remove scripts/multiconfig.sh
Masahiro Yamada [Fri, 13 Mar 2015 09:08:55 +0000 (18:08 +0900)]
kbuild: remove scripts/multiconfig.sh

We have switched to the single .config configuration system,
the same one as used in Linux Kernel.

The necessary glue code is small enough now, so move it to the
top-level Makefile and scripts/kconfig/Makefile, and then delete
scripts/multiconfig.sh.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
9 years agokbuild: remove "*_felconfig" target
Masahiro Yamada [Fri, 13 Mar 2015 09:08:54 +0000 (18:08 +0900)]
kbuild: remove "*_felconfig" target

This target was added by commit cbdd9a9737cc (sunxi: kconfig: Add
%_felconfig rule to enable FEL build of sunxi platforms.).

At that time, U-Boot used separate .config files for U-Boot proper
and SPL.  I understood the pain to modify both .config and
spl/.config.

Now, we have switched to single .config configuration.
It seems acceptable to run "make menuconfig" or friends to enable
CONFIG_SPL_FEL, as we do for other CONFIGs.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Ian Campbell <ijc@hellion.org.uk>
Cc: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
9 years agoMerge branch 'master' of git://git.denx.de/u-boot-sunxi
Tom Rini [Fri, 27 Mar 2015 02:13:52 +0000 (22:13 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-sunxi

9 years agoMerge branch 'master' of git://git.denx.de/u-boot-dm
Tom Rini [Fri, 27 Mar 2015 02:13:32 +0000 (22:13 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-dm

9 years agoMerge branch 'master' of git://git.denx.de/u-boot-x86
Tom Rini [Fri, 27 Mar 2015 02:13:11 +0000 (22:13 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-x86

9 years agosunxi: axp209: fix incorrect limits on ldo3
Iain Paton [Wed, 25 Mar 2015 16:03:26 +0000 (16:03 +0000)]
sunxi: axp209: fix incorrect limits on ldo3

board/sunxi/board.c tries to set ldo3 to 2.8v however drivers/power/axp209.c
contains an incorrect limit on ldo3 of 2.275v

The origin of the incorrect limit seems likely due to some inconsistencies
in the axp209 datasheet. ldo3 is described with different limits in
different sections. register 0x29 uses 7 bits for voltage configuration
while the 2.275v limit would apply if only 6 bits were used.
Probably this is a cut&paste error from register 0x23

The linux kernel driver has the correct limit and operation up to the 2.8v
required by my board has been physically verified with a multimeter.

Signed-off-by: Iain Paton <ipaton0@gmail.com>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
9 years agosunxi: set GMAC TX delay = 0x1 on Cubietruck.
Ian Campbell [Wed, 25 Mar 2015 13:39:05 +0000 (13:39 +0000)]
sunxi: set GMAC TX delay = 0x1 on Cubietruck.

Of 4 boards in our automated test system 2 do not have reliable
networking with the default TX delay of 0x0. Increasing to 0x1 seems
to make things reliable on all 4 boards.

Some previous ad-hpoc tests with tx delay set to 0, 1, 2 and 3 on one
of the problematic boards showed:

0: mw.l 0x1c20164 0x006 1     -- t/o in 4/5 tftp runs
1: mw.l 0x1c20164 0x406 1     -- t/o in 1/5 tftp runs
2: mw.l 0x1c20164 0x806 1     -- t/o in 1/5 tftp runs
3: mw.l 0x1c20164 0xc06 1     -- t/o many times in first tftp run

For 0, 1 and 2 "t/o" means one or two "T" glitches in the download,
but it did complete. For 3 those were basically continuous and it
couldn't complete.

tftp was of a 16M initrd.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
9 years agodm: serial: remove bogus include <ns16550.h>
Masahiro Yamada [Fri, 20 Mar 2015 04:24:45 +0000 (13:24 +0900)]
dm: serial: remove bogus include <ns16550.h>

Serial-uclass should be generically implemented without depending
a particular hardware.  Fortunately, nothing in include/ns16550.h is
referenced from drivers/serial/serial-uclass.c, so remove this bogus
include.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Acked-by: Simon Glass <sjg@chromium.org>
9 years agoconfig_distro_bootcmd.h: Prefer booting from bootable paritions
Sjoerd Simons [Wed, 25 Feb 2015 22:23:52 +0000 (23:23 +0100)]
config_distro_bootcmd.h: Prefer booting from bootable paritions

List bootable partitions and only scan those for bootable files, falling
back to partition 1 if there are no bootable partitions

Signed-off-by: Sjoerd Simons <sjoerd.simons@collabora.co.uk>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Stephen Warren <swarren@nvidia.com>
9 years agoconfig_cmd_default.h: Add 'env exists' command
Sjoerd Simons [Wed, 25 Feb 2015 22:23:51 +0000 (23:23 +0100)]
config_cmd_default.h: Add 'env exists' command

env exists allows scripts to query whether an environment variable
exists. Enable by default as it adds only a trivial amount of code and
can be useful in scripts.

Signed-off-by: Sjoerd Simons <sjoerd.simons@collabora.co.uk>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Stephen Warren <swarren@nvidia.com>
9 years agopart: Add support for list filtering on bootable partitions
Sjoerd Simons [Wed, 25 Feb 2015 22:23:50 +0000 (23:23 +0100)]
part: Add support for list filtering on bootable partitions

Add an optional -bootable parameter to the part list commands to only
put the list of bootable partitions in the environment variable

Signed-off-by: Sjoerd Simons <sjoerd.simons@collabora.co.uk>
Reviewed-by: Stephen Warren <swarren@nvidia.com>
9 years agox86: Add ramboot and nfsboot commands in x86-common.h
Bin Meng [Thu, 12 Mar 2015 05:08:46 +0000 (13:08 +0800)]
x86: Add ramboot and nfsboot commands in x86-common.h

It is very common in the debug stage to test U-Boot loading a linux
kernel. The commands to boot linux kernel with ramdisk and nfs as the
root are common to all x86 targets, so it makes sense to add them as
the U-Boot default environment in x86-common.h.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chroimum.org>
9 years agox86: galileo: Enable saving environment in SPI flash
Bin Meng [Wed, 11 Mar 2015 09:22:29 +0000 (17:22 +0800)]
x86: galileo: Enable saving environment in SPI flash

Saving U-Boot's environment in SPI flash on Intel Galileo board.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sg@chromium.org>
9 years agox86: crownbay: Enable saving environment in SPI flash
Bin Meng [Wed, 11 Mar 2015 09:22:28 +0000 (17:22 +0800)]
x86: crownbay: Enable saving environment in SPI flash

Saving U-Boot's environment in SPI flash on Intel CrownBay board.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sg@chromium.org>
9 years agox86: crownbay: Enable Intel Topcliff GMAC support
Bin Meng [Fri, 20 Mar 2015 09:12:21 +0000 (17:12 +0800)]
x86: crownbay: Enable Intel Topcliff GMAC support

Intel Crown Bay board has one ethernet port connected from Intel
Topcliff PCH. Enable it in the board configuration.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
9 years agonet: Add Intel Topcliff GMAC driver
Bin Meng [Fri, 20 Mar 2015 09:12:20 +0000 (17:12 +0800)]
net: Add Intel Topcliff GMAC driver

Add a new driver for the Gigabit Ethernet MAC found on Intel Topcliff
Platform Controller Hub. Tested under 10/100 half/full duplex and 1000
full duplex modes using ping and tftpboot commands.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
9 years agonet: Update README.drivers.eth to mention latest APIs
Bin Meng [Fri, 20 Mar 2015 09:12:19 +0000 (17:12 +0800)]
net: Update README.drivers.eth to mention latest APIs

README.drivers.eth still refers to the deprecated miiphy_register().
Update the doc to mention new APIs mdio_alloc() and mdio_register().

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
9 years agonet: Add ethernet FCS length macro in net.h
Bin Meng [Fri, 20 Mar 2015 09:12:18 +0000 (17:12 +0800)]
net: Add ethernet FCS length macro in net.h

Some ethernet drivers use their own version of ethernet FCS length
macro which is really common. We define ETH_FCS_LEN in net.h and
replace those custom versions in various places.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
9 years agox86: quark: Enable on-chip ethernet controllers
Bin Meng [Wed, 11 Mar 2015 03:25:56 +0000 (11:25 +0800)]
x86: quark: Enable on-chip ethernet controllers

Intel Quark SoC integrates two 10/100 ethernet controllers which can
be connected to an external RMII PHY. The MAC IP is from Designware.
Enable this support with the existing U-Boot Designware MAC driver
so that the ethernet port on Intel Galileo board can be used.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
9 years agox86: Add queensbay fsp patch information in README.x86
Bin Meng [Thu, 5 Mar 2015 03:21:03 +0000 (11:21 +0800)]
x86: Add queensbay fsp patch information in README.x86

The FSP release version 001 for Intel Queensbay has a bug which
could cause random endless loop during the FspInit call. This bug
was published by Intel although Intel did not describe any details.
Describe this information in the x86 doc so that U-Boot Queensbay
support is invulnerable.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
9 years agofdtdec: Improve fdtdec_get_pci_bdf() documentation
Bin Meng [Wed, 4 Mar 2015 07:08:26 +0000 (15:08 +0800)]
fdtdec: Improve fdtdec_get_pci_bdf() documentation

Add the description that how the compatible property is involved in
the fdtdec_get_pci_bdf() documentation.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
9 years agoarch/x86/cpu/quark/mrc.c: Switch to U_BOOT_DATE / U_BOOT_TIME
Tom Rini [Thu, 19 Feb 2015 11:58:57 +0000 (06:58 -0500)]
arch/x86/cpu/quark/mrc.c: Switch to U_BOOT_DATE / U_BOOT_TIME

Using __DATE__ and __TIME__ results in an error due to -Werror=date-time
with gcc-4.9 (__DATE__ / __TIME__ might prevent reproducible builds) so
switch these over to U_BOOT_DATE / U_BOOT_TIME

Cc: Bin Meng <bmeng.cn@gmail.com>
Cc: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
Acked-by: Simon Glass <sjg@chromium.org>
9 years agox86: quark: MRC codes clean up
Bin Meng [Tue, 10 Mar 2015 10:31:20 +0000 (18:31 +0800)]
x86: quark: MRC codes clean up

This patch cleans up the quark MRC codes coding style by:
- Remove BIT0/1../31 defines from mrc_util.h
- Create names for the documented BITs and use them
- For undocumented single BITs, use (1 << n) directly
- For undocumented ORed BITs, use the hex number directly
- Remove redundancy parenthesis all over the codes
- Replace to use lower case hex numbers

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
9 years agobav335x: Update defconfigs and fix typo in EEPROM config format
Gilles Gameiro [Tue, 24 Mar 2015 06:13:03 +0000 (23:13 -0700)]
bav335x: Update defconfigs and fix typo in EEPROM config format

After v2015.01 we need to have DM enabled in order to use UART.  Also
fix a typo in the EEPROM config format.

Signed-off-by: Gilles Gameiro <gilles@gigadevices.com>
[trini: Reword commit message, re-save defconfigs with 'savedefconfig']
Signed-off-by: Tom Rini <trini@konsulko.com>
9 years agoARM: rpi: fix RPi1 board rev detection for warranty bit
Stephen Warren [Tue, 24 Mar 2015 05:00:25 +0000 (23:00 -0600)]
ARM: rpi: fix RPi1 board rev detection for warranty bit

Apparently the firmware's board rev response includes both the board
revision and some other data even on the RPi1. In particular, the
"warranty bit" is bit 24. We need to mask that out when looking up the
board ID.

Signed-off-by: Stephen Warren <swarren@wwwdotorg.org>
9 years agoremove unnecessary version.h includes
Rob Herring [Tue, 17 Mar 2015 20:28:55 +0000 (15:28 -0500)]
remove unnecessary version.h includes

Various files are needlessly rebuilt every time due to the version and
build time changing. As version.h is not actually needed, remove the
include.

Signed-off-by: Rob Herring <robh@kernel.org>
Cc: Albert Aribaud <albert.u.boot@aribaud.net>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Minkyu Kang <mk7.kang@samsung.com>
Cc: Marek Vasut <marex@denx.de>
Cc: Tom Warren <twarren@nvidia.com>
Cc: Michal Simek <monstr@monstr.eu>
Cc: Macpaul Lin <macpaul@andestech.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: York Sun <yorksun@freescale.com>
Cc: Stefan Roese <sr@denx.de>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Cc: Simon Glass <sjg@chromium.org>
Cc: Philippe Reynes <tremyfr@yahoo.fr>
Cc: Eric Jarrige <eric.jarrige@armadeus.org>
Cc: "David Müller" <d.mueller@elsoft.ch>
Cc: Phil Edworthy <phil.edworthy@renesas.com>
Cc: Robert Baldyga <r.baldyga@samsung.com>
Cc: Torsten Koschorrek <koschorrek@synertronixx.de>
Cc: Anatolij Gustschin <agust@denx.de>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Łukasz Majewski <l.majewski@samsung.com>
9 years agoMerge branch 'master' of git://git.denx.de/u-boot-uniphier
Tom Rini [Tue, 24 Mar 2015 14:50:16 +0000 (10:50 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-uniphier

9 years agoARM: UniPhier: remove unnecessary ifdef conditional
Masahiro Yamada [Sun, 22 Mar 2015 15:07:33 +0000 (00:07 +0900)]
ARM: UniPhier: remove unnecessary ifdef conditional

The callee (arch/arm/lib/cache-cp15.c) has a #ifdef
CONFIG_SYS_DCACHE_OFF conditional.  The same conditional in the
caller (arch/arm/mach-uniphier/cache_uniphier.c) is redundant.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agoARM: UniPhier: disable L2 cache by lowlevel_init of U-Boot proper
Masahiro Yamada [Sun, 22 Mar 2015 15:07:32 +0000 (00:07 +0900)]
ARM: UniPhier: disable L2 cache by lowlevel_init of U-Boot proper

The L2 cache is used as a temporary SRAM on SPL.
Now the secondary CPUs store the necessary code for jumping to
Linux on their L1 I-caches.  So, the L2 cache can be disabled
much earlier, at the very entry of U-Boot proper (lowlevel_init).
This makes the boot sequence clearer.
Also, as the L1 cache has been disabled by the start.S,
enable_caches() does not need to do it again.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agoARM: UniPhier: optimize kicking secondary CPUs code
Masahiro Yamada [Sun, 22 Mar 2015 15:07:31 +0000 (00:07 +0900)]
ARM: UniPhier: optimize kicking secondary CPUs code

Currently, the secondary CPU(s) are kicked three times:
Boot ROM ---(kick)--> SPL ---(kick)--> U-boot ---(kick)--> Linux.
It makes the boot sequence very complicated.

This commit merges the first and the second kicks, so the secondary
CPU(s) can directly jump from SPL to Linux.
arch/arm/mach-uniphier/smp.S is no longer necessary.

Linux boot test passed.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agoARM: UniPhier: fix typos in comments
Masahiro Yamada [Sun, 22 Mar 2015 15:07:30 +0000 (00:07 +0900)]
ARM: UniPhier: fix typos in comments

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agoARM: UniPhier: add empty lowlevel_init to U-boot proper
Masahiro Yamada [Sun, 22 Mar 2015 15:07:29 +0000 (00:07 +0900)]
ARM: UniPhier: add empty lowlevel_init to U-boot proper

To remove the ifdef conditional of CONFIG_SKIP_LOWLEVEL_INIT,
add late_lowlevel_init.S to U-Boot proper.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agoARM: UniPhier: move init stack area just below TEXT_BASE
Masahiro Yamada [Sun, 22 Mar 2015 15:07:28 +0000 (00:07 +0900)]
ARM: UniPhier: move init stack area just below TEXT_BASE

There is no good reason to have the 0x1000 gap between
CONFIG_SYS_INIT_SP_ADDR and CONFIG_SYS_TEXT_BASE.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agoARM: UniPhier: add CONFIG_SPL_MAX_FOOTPRINT
Masahiro Yamada [Sun, 22 Mar 2015 15:07:27 +0000 (00:07 +0900)]
ARM: UniPhier: add CONFIG_SPL_MAX_FOOTPRINT

The Boot ROM of UniPhier platform only loads 64KB image.  We should
always make sure that SPL memory footprint is less than that.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agoARM: UniPhier: use CONFIG_SPL_STACK to define SPL stack pointer
Masahiro Yamada [Sun, 22 Mar 2015 15:07:26 +0000 (00:07 +0900)]
ARM: UniPhier: use CONFIG_SPL_STACK to define SPL stack pointer

Ifdef conditionals for CONFIG options are not Kconfig-friendly.
Instead, define CONFIG_SPL_STACK to prepare for Kconfig moves.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agoARM: UniPhier: enable Driver Model and UART on SPL
Masahiro Yamada [Sun, 22 Mar 2015 15:07:25 +0000 (00:07 +0900)]
ARM: UniPhier: enable Driver Model and UART on SPL

Enable CONFIG_SPL_DM and CONFIG_SPL_SERIAL_SUPPORT, which provide
Driver Model UART support on SPL.

CONFIG_SYS_SPL_MALLOC_{START,SIZE} should be dropped because simple
malloc is preferred on SPL.  Dlmalloc requires some static variables
on .data section that is not available yet for NOR boot mode etc.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agoARM: UniPhier: enable CONFIG_PANIC_HANG
Masahiro Yamada [Sun, 22 Mar 2015 15:07:24 +0000 (00:07 +0900)]
ARM: UniPhier: enable CONFIG_PANIC_HANG

Do not reset board on panic, which allows us to not link reset_cpu()
into SPL.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agoARM: UniPhier: move UART pin settings to SPL
Masahiro Yamada [Sun, 22 Mar 2015 15:07:23 +0000 (00:07 +0900)]
ARM: UniPhier: move UART pin settings to SPL

The UniPhier platform is going to enable Driver Model and UART
support on SPL.  Move UART pin settings to early_pin_init(),
which is called from SPL.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agoARM: UniPhier: move platform devices to SPL
Masahiro Yamada [Sun, 22 Mar 2015 15:07:22 +0000 (00:07 +0900)]
ARM: UniPhier: move platform devices to SPL

Since we do not have OF_CONTROL support for SPL, platform devices
are necessary to enable Driver Model on SPL.

To prepare for that, move platdevice.o to SPL and enable it by
CONFIG_SPL_DM.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agoARM: UniPhier: include PH1-LD4 Makefile from PH1-sLD8
Masahiro Yamada [Sun, 22 Mar 2015 15:07:21 +0000 (00:07 +0900)]
ARM: UniPhier: include PH1-LD4 Makefile from PH1-sLD8

The two Makefiles arch/arm/mach-uniphier/{ph1-ld4,ph1-sld8}/Makefile
are completely the same.  We can improve the maintainability by
having one to include the other.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agoARM: UniPhier: remove unnecessary CONFIG_SYS_SOC
Masahiro Yamada [Mon, 16 Mar 2015 04:46:07 +0000 (13:46 +0900)]
ARM: UniPhier: remove unnecessary CONFIG_SYS_SOC

Since commit a86ac9540e20 (ARM: UniPhier: include <mach/*.h> instead
of <asm/arch/*.h>), UniPhier platform does not need the symbolic
link arch/arm/include/asm.  This option is not necessary either.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agosunxi: musb: Return early on VBUS GPIO error instead of on a positive value
Paul Kocialkowski [Sun, 15 Mar 2015 17:27:44 +0000 (18:27 +0100)]
sunxi: musb: Return early on VBUS GPIO error instead of on a positive value

This allows printing the error message when VBUS is detected, as it would with
AXP VBUS detect.

Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
9 years agoat91sam9rlek_mmc_defconfig: Add CONFIG_ARCH_AT91=y
Tom Rini [Fri, 20 Mar 2015 14:47:38 +0000 (10:47 -0400)]
at91sam9rlek_mmc_defconfig: Add CONFIG_ARCH_AT91=y

This flag was missing and thus the board was totally being configured
wrong.

Signed-off-by: Tom Rini <trini@konsulko.com>
9 years agoMerge branch 'master' of git://git.denx.de/u-boot-atmel
Tom Rini [Fri, 20 Mar 2015 11:01:00 +0000 (07:01 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-atmel

9 years agoARM: atmel: sama5d4: set non-secured for peripherals
Bo Shen [Wed, 4 Mar 2015 05:48:47 +0000 (13:48 +0800)]
ARM: atmel: sama5d4: set non-secured for peripherals

When access the programmable secure peripherals address space,
it needs set them to non-secured.

Signed-off-by: Bo Shen <voice.shen@atmel.com>
9 years agoNet: macb: reset GBE bit when fallback checking
Bo Shen [Wed, 4 Mar 2015 05:35:16 +0000 (13:35 +0800)]
Net: macb: reset GBE bit when fallback checking

If the GBE bit is set, when do next time autonegotiation,
if the result is not 1000Mbps, it will fallback to 100Mbps
checking. So, we need to clear the GBE bit.

Signed-off-by: Bo Shen <voice.shen@atmel.com>
9 years agoARM: atmel: armv7: move spl lds to armv7 directory
Bo Shen [Wed, 4 Mar 2015 05:32:57 +0000 (13:32 +0800)]
ARM: atmel: armv7: move spl lds to armv7 directory

As the u-boot-spl.lds is used only for armv7 SoCs (includes
sama5d3 and sama5d4), so move it to armv7 directory.

Signed-off-by: Bo Shen <voice.shen@atmel.com>
9 years agoARM: atmel: sama5d4 boards: fix spl lds location
Bo Shen [Wed, 4 Mar 2015 05:32:56 +0000 (13:32 +0800)]
ARM: atmel: sama5d4 boards: fix spl lds location

As the u-boot-spl.lds is moved to <arch/arm/mach-at91> directory.
So, correct the path for sama5d4 related boards.

Signed-off-by: Bo Shen <voice.shen@atmel.com>
9 years agoARM: atmel: sama5d4 xplained: enable mmc power
Bo Shen [Fri, 13 Feb 2015 07:53:18 +0000 (15:53 +0800)]
ARM: atmel: sama5d4 xplained: enable mmc power

Enable the power for MMC/SD port.

Signed-off-by: Bo Shen <voice.shen@atmel.com>
9 years agoARM: at91: at91sam9rlek: add hush parser to defconfig
Wu, Josh [Tue, 3 Feb 2015 10:19:05 +0000 (18:19 +0800)]
ARM: at91: at91sam9rlek: add hush parser to defconfig

HUSH parser will handle the variable easier. That will be helpful for
write a complicated U-Boot commands or varaibles.

Signed-off-by: Josh Wu <josh.wu@atmel.com>
Acked-by: Bo Shen <voice.shen@atmel.com>
9 years agoARM: at91: at91sam9rlek: add mmc environment configuration
Wu, Josh [Mon, 2 Feb 2015 09:51:01 +0000 (17:51 +0800)]
ARM: at91: at91sam9rlek: add mmc environment configuration

Add a mmc default config, which will save the environment in a FAT file
(uboot.env) of MMC.

Signed-off-by: Josh Wu <josh.wu@atmel.com>
9 years agoARM: at91: at91sam9rlek: add mci support
Wu, Josh [Mon, 2 Feb 2015 09:51:00 +0000 (17:51 +0800)]
ARM: at91: at91sam9rlek: add mci support

This patch enable the MCI support for at91sam9rlek board.

Signed-off-by: Josh Wu <josh.wu@atmel.com>
[rebase on ToT]
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
9 years agoARM: at91: at91sam9rlek: update the default nand flash configs
Wu, Josh [Tue, 3 Feb 2015 03:38:30 +0000 (11:38 +0800)]
ARM: at91: at91sam9rlek: update the default nand flash configs

Update the nand flash offset mapping, default nand bootcmand and
bootargs to align with linux4sam.org.

Signed-off-by: Josh Wu <josh.wu@atmel.com>
Acked-by: Bo Shen <voice.shen@atmel.com>
9 years agoMerge branch 'master' of git://www.denx.de/git/u-boot-imx
Tom Rini [Wed, 18 Mar 2015 11:07:43 +0000 (07:07 -0400)]
Merge branch 'master' of git://denx.de/git/u-boot-imx

9 years agoMerge branch 'master' of git://git.denx.de/u-boot-i2c
Tom Rini [Wed, 18 Mar 2015 11:07:36 +0000 (07:07 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-i2c

9 years agoMerge branch 'master' of git://git.denx.de/u-boot-mmc
Tom Rini [Wed, 18 Mar 2015 11:07:20 +0000 (07:07 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-mmc

9 years agoi2c: mvtwsi: Fix problem with baud rate calculation
Stefan Roese [Wed, 18 Mar 2015 08:30:54 +0000 (09:30 +0100)]
i2c: mvtwsi: Fix problem with baud rate calculation

The current implementation for baudrate calculation is incorrect.
This part from the formula:

"2 ^ (n + 1)" is not equivalent to (1 << n) but to (2 << n)!

This patch fixes this and moves this calculation to a function instead of using a macro.
This new function is taken from the Linux kernel.

This was detected and tested on the Marvell Armada A38x DB-88F6820-GP eval board.

Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Prafulla Wadaskar <prafulla@marvell.com>
Cc: Luka Perkov <luka.perkov@sartura.hr>
Cc: Hans de Goede <hdegoede@redhat.com>
Cc: Ian Campbell <ijc@hellion.org.uk>
Cc: Heiko Schocher <hs@denx.de>
Acked-by: Hans de Goede <hdegoede@redhat.com>
9 years agomv_i2c: fix warnings on 64-bit builds
Rob Herring [Tue, 17 Mar 2015 20:46:36 +0000 (15:46 -0500)]
mv_i2c: fix warnings on 64-bit builds

Change addresses to unsigned long to be compatible with 64-bit builds.

Signed-off-by: Rob Herring <robh@kernel.org>
Cc: Heiko Schocher <hs@denx.de>
9 years agomv_sdhci: fix warnings on 64-bit builds
Rob Herring [Tue, 17 Mar 2015 20:46:39 +0000 (15:46 -0500)]
mv_sdhci: fix warnings on 64-bit builds

Change addresses to unsigned long to be compatible with 64-bit builds.
Regardless of fixing warnings, the device is still only 32-bit capable.

Signed-off-by: Rob Herring <robh@kernel.org>
Cc: Pantelis Antoniou <panto@antoniou-consulting.com>
9 years agosdhci: fix warnings on 64-bit builds
Rob Herring [Tue, 17 Mar 2015 20:46:38 +0000 (15:46 -0500)]
sdhci: fix warnings on 64-bit builds

Change addresses to unsigned long to be compatible with 64-bit builds.
Regardless of fixing warnings, the device is still only 32-bit capable.

Signed-off-by: Rob Herring <robh@kernel.org>
Cc: Pantelis Antoniou <panto@antoniou-consulting.com>
9 years agommc: sdhci: don't clobber adjacent registers
Matt Reimer [Mon, 23 Feb 2015 21:56:58 +0000 (14:56 -0700)]
mmc: sdhci: don't clobber adjacent registers

SDHCI_HOST_CONTROL is a byte-sized register, so don't write to it
as if it were a long, as that would result in clobbering the three
registers following.

Signed-off-by: Matt Reimer <mreimer@sdgsystems.com>
9 years agommc: s5p: properly mask SELBASECLK
Matt Reimer [Mon, 23 Feb 2015 21:52:22 +0000 (14:52 -0700)]
mmc: s5p: properly mask SELBASECLK

Properly mask SELBASECLK by using an actual mask rather than the
number of bits to shift in order to create the mask.

Signed-off-by: Matt Reimer <mreimer@sdgsystems.com>
Acked-by: Jaehoon Chung <jh80.chung@samsung.com>
9 years agoPrepare v2015.04-rc4 v2015.04-rc4
Tom Rini [Tue, 17 Mar 2015 20:37:48 +0000 (16:37 -0400)]
Prepare v2015.04-rc4

Signed-off-by: Tom Rini <trini@konsulko.com>
9 years agompc83xx: preempt premature board support removal by setting GENERIC_BOARD
Kim Phillips [Tue, 17 Mar 2015 17:00:45 +0000 (12:00 -0500)]
mpc83xx: preempt premature board support removal by setting GENERIC_BOARD

Boards that haven't been converted to GENERIC_BOARD does
*not* mean they should be removed.

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
9 years agotravis.yml: add more targets to build on travis
Heiko Schocher [Tue, 17 Mar 2015 07:21:41 +0000 (08:21 +0100)]
travis.yml: add more targets to build on travis

- add more targets for building with buildman:
  - avr32
  - m68k

and while at it, sort the list alphabetical

Reviewed-by: Roger Meier <r.meier@siemens.com>
Signed-off-by: Heiko Schocher <hs@denx.de>
9 years agopowerpc: ppc4xx: remove korat board support
Masahiro Yamada [Tue, 17 Mar 2015 03:28:09 +0000 (12:28 +0900)]
powerpc: ppc4xx: remove korat board support

This has not been converted to Generic Board, so should be removed.
(See doc/README.generic-board for details.)

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Larry Johnson <lrj@acm.org>
9 years agopowerpc: mpc5xxx: remove galaxy5200 board support
Masahiro Yamada [Tue, 17 Mar 2015 03:28:08 +0000 (12:28 +0900)]
powerpc: mpc5xxx: remove galaxy5200 board support

This has not been converted to Generic Board, so should be removed.
(See doc/README.generic-board for details.)

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Eric Millbrandt <emillbrandt@dekaresearch.com>
9 years agopowerpc: ppc4xx: remove W7OLMC/W7OLMG board support
Masahiro Yamada [Tue, 17 Mar 2015 03:28:07 +0000 (12:28 +0900)]
powerpc: ppc4xx: remove W7OLMC/W7OLMG board support

They have not been converted to Generic Board, so should be removed.
(See doc/README.generic-board for details.)

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Erik Theisen <etheisen@mindspring.com>
9 years agopowerpc: mpc5xxx: remove aev, TB5200 board support
Masahiro Yamada [Tue, 17 Mar 2015 03:28:06 +0000 (12:28 +0900)]
powerpc: mpc5xxx: remove aev, TB5200 board support

They have not been converted to Generic Board, so should be removed.
(See doc/README.generic-board for details.)

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agopowerpc: ppc4xx: remove JSE board support
Masahiro Yamada [Tue, 17 Mar 2015 03:28:05 +0000 (12:28 +0900)]
powerpc: ppc4xx: remove JSE board support

This has not been converted to Generic Board, so should be removed.
(See doc/README.generic-board for details.)

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Stephen Williams <steve@icarus.com>
9 years agopowerpc: mpc5xxx: remove BC3450 board support
Masahiro Yamada [Tue, 17 Mar 2015 03:28:04 +0000 (12:28 +0900)]
powerpc: mpc5xxx: remove BC3450 board support

This has not been converted to Generic Board, so should be removed.
(See doc/README.generic-board for details.)

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agoboard/BuR/common: use SYS_CONSOLE_OVERWRITE
Hannes Petermaier [Tue, 17 Mar 2015 14:31:21 +0000 (15:31 +0100)]
board/BuR/common: use SYS_CONSOLE_OVERWRITE

We don't want that CONSOLE is redirected to LCD upon init, we rather prefer
that console is still on the serial line.

Signed-off-by: Hannes Petermaier <oe5hpm@oevsv.at>
9 years agommc: fsl_esdhc fix register offset
Peng Fan [Tue, 10 Mar 2015 07:35:46 +0000 (15:35 +0800)]
mmc: fsl_esdhc fix register offset

Commit f022d36e8a4517b2a9d25ff2d75bd2459d0c68b1 introduces
error register offset.

Change the "char reserved3[59]" to "char reserved3[56]".

Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Tested-by: Fabio Estevam <fabio.estevam@freescale.com>
9 years agoodroid: defconfig: fix build break caused by missing dts
Przemyslaw Marczak [Tue, 10 Mar 2015 09:52:59 +0000 (10:52 +0100)]
odroid: defconfig: fix build break caused by missing dts

The build break was caused by one of my previous commit:
'odroid: defconfig: disable memset at malloc init'

It removes the dts from odroid defconfig - rebase mistake.

Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
Cc: Minkyu Kang <mk7.kang@samsung.com>
Acked-by: Lukasz Majewski <l.majewski@samsung.com>
Acked-by: Minkyu Kang <mk7.kang@samsung.com>
9 years agoboard/BuR/common: fix compiler warning
Hannes Petermaier [Mon, 16 Mar 2015 18:20:31 +0000 (19:20 +0100)]
board/BuR/common: fix compiler warning

Signed-off-by: Hannes Petermaier <hannes.petermaier@br-automation.com>
Signed-off-by: Hannes Petermaier <oe5hpm@oevsv.at>
9 years agoMerge branch 'master' of git://git.denx.de/u-boot-uniphier
Tom Rini [Sun, 15 Mar 2015 18:31:39 +0000 (14:31 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-uniphier

9 years agokconfig: remove meaningless prefixes in defconfig files
Masahiro Yamada [Thu, 12 Mar 2015 04:24:39 +0000 (13:24 +0900)]
kconfig: remove meaningless prefixes in defconfig files

Since commit e02ee2548afe (kconfig: switch to single .config
configuration), the prefixes in defconfig files such as "+S:",
"+ST:", etc., are meaningless.

This commit was generated by the following command:

  find configs -name '*_defconfig' | xargs sed -i 's/^+*S*T*://'

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agoMAKEALL: Don't try to print size when ./u-boot is deleted
Joe Hershberger [Wed, 11 Mar 2015 23:47:33 +0000 (18:47 -0500)]
MAKEALL: Don't try to print size when ./u-boot is deleted

In the case of BUILD_NBUILDS > 1, MAKEALL would try to print the size
immediately after the u-boot binary is deleted by the call to:

make -s clean

Move the size print to before the clean

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
9 years agoARM: UniPhier: adjust device trees for business transfer
Masahiro Yamada [Wed, 11 Mar 2015 06:54:46 +0000 (15:54 +0900)]
ARM: UniPhier: adjust device trees for business transfer

Panasonic's System LSI products, UniPhier SoC family, have been
transferred to Socionext Inc.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agogit-mailrc: update Masahiro's email address
Masahiro Yamada [Wed, 11 Mar 2015 04:01:36 +0000 (13:01 +0900)]
git-mailrc: update Masahiro's email address

I have transferred to Socionext Inc.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agoMAINTAINERS: update Masahiro's email address
Masahiro Yamada [Wed, 11 Mar 2015 04:01:35 +0000 (13:01 +0900)]
MAINTAINERS: update Masahiro's email address

I have transferred to Socionext Inc.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
9 years agoREADME: remove description about driver model configuration options (again)
Masahiro Yamada [Wed, 11 Mar 2015 08:34:25 +0000 (17:34 +0900)]
README: remove description about driver model configuration options (again)

The Driver Model description in README was removed by commit
65eb659e56fa (README: remove description about driver model
configuration options), and was revived by mistake by commit
b79dadf846e5 when resolving the conflict.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Tom Rini <trini@konsulko.com>
Acked-by: Simon Glass <sjg@chromium.org>
9 years agoconfig_distro_bootcmd.h: add note on error handling
Stephen Warren [Tue, 10 Mar 2015 21:40:58 +0000 (15:40 -0600)]
config_distro_bootcmd.h: add note on error handling

This should make it more clear why there appear to be C pre-processor
symbols in the file that contain mixed case. They're really error
messages.

Suggested-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
9 years agobeagle_x15: increase phy autoneg timeout
Sekhar Nori [Tue, 10 Mar 2015 10:30:09 +0000 (16:00 +0530)]
beagle_x15: increase phy autoneg timeout

When Beagle X15 is connected to Gigabit switch, it takes
more time to finish auto-negotiation than on a 10/100 switch.

The default 4 second limit times-out more often than not. This is
observed when testing with a D-Link DGS-1008A desktop switch.

Increase the auto-negotiation time-out for Beagle-X15 to handle
this case.

Signed-off-by: Sekhar Nori <nsekhar@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
9 years agoARM: OMAP3: rx51: Enable workaround for ARM errata 454179, 430973, 621766
Nishanth Menon [Mon, 9 Mar 2015 22:12:09 +0000 (17:12 -0500)]
ARM: OMAP3: rx51: Enable workaround for ARM errata 454179, 430973, 621766

RX51 has a secure logic which uses different parameters compared to
traditional implementation. So, make the generic secure acr write
over-ride-able by board file and refactor rx51 code to use this.

While at it, enable the OMAP3 specific errata code for 454179, 430973,
621766.

Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
9 years agoARM: OMAP3: Enable workaround for ARM errata 454179, 430973, 621766
Nishanth Menon [Mon, 9 Mar 2015 22:12:08 +0000 (17:12 -0500)]
ARM: OMAP3: Enable workaround for ARM errata 454179, 430973, 621766

Enable the OMAP3 specific errata code for 454179, 430973, 621766
and while at it, remove legacy non-revision checked errata logic.

Signed-off-by: Nishanth Menon <nm@ti.com>
Tested-by: Matt Porter <mporter@konsulko.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
9 years agoARM: OMAP5 / DRA7: Setup L2 Aux Control Register with recommended configuration
Nishanth Menon [Mon, 9 Mar 2015 22:12:07 +0000 (17:12 -0500)]
ARM: OMAP5 / DRA7: Setup L2 Aux Control Register with recommended configuration

Update to existing recommendation for L2ACTLR configuration to prevent
system instability and optimize performance.

These apply to both OMAP5 and DRA7.

Reported-by: Vivek Chengalvala <vchengalvala@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
9 years agoARM: DRA7 / OMAP5: Add workaround for ARM errata 798870
Praveen Rao [Mon, 9 Mar 2015 22:12:06 +0000 (17:12 -0500)]
ARM: DRA7 / OMAP5: Add workaround for ARM errata 798870

This patch enables the workaround for ARM errata 798870 for OMAP5 /
DRA7 which says "If back-to-back speculative cache line fills (fill
A and fill B) are issued from the L1 data cache of a CPU to the
L2 cache, the second request (fill B) is then cancelled, and the
second request would have detected a hazard against a recent write or
eviction (write B) to the same cache line as fill B then the L2 logic
might deadlock."

An l2auxctlr accessor implementation for OMAP5 and DRA7 is introduced
here as well.

Signed-off-by: Praveen Rao <prao@ti.com>
Signed-off-by: Angela Stegmaier <angelabaker@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Tested-by: Matt Porter <mporter@konsulko.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
9 years agoARM: OMAP3: Get rid of omap3_gp_romcode_call and replace with omap_smc1
Nishanth Menon [Mon, 9 Mar 2015 22:12:05 +0000 (17:12 -0500)]
ARM: OMAP3: Get rid of omap3_gp_romcode_call and replace with omap_smc1

omap_smc1 is now generic enough to remove duplicate
omap3_gp_romcode_call logic that omap3 introduced.

As part of this change, move to using the generic lowlevel_init.S for
omap3 as well.

Signed-off-by: Nishanth Menon <nm@ti.com>
Tested-by: Matt Porter <mporter@konsulko.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
9 years agoARM: OMAP3: Rename omap3.h to omap.h to be generic as all SoCs
Nishanth Menon [Mon, 9 Mar 2015 22:12:04 +0000 (17:12 -0500)]
ARM: OMAP3: Rename omap3.h to omap.h to be generic as all SoCs

This is in preperation of using generic cross OMAP code.

Signed-off-by: Nishanth Menon <nm@ti.com>
Tested-by: Matt Porter <mporter@konsulko.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
9 years agoARM: OMAP: Change set_pl310_ctrl_reg to be generic
Nishanth Menon [Mon, 9 Mar 2015 22:12:03 +0000 (17:12 -0500)]
ARM: OMAP: Change set_pl310_ctrl_reg to be generic

set_pl310_ctrl_reg does use the Secure Monitor Call (SMC) to setup
PL310 control register, however, that is something that is generic
enough to be used for OMAP5 generation of processors as well. The only
difference being the service being invoked for the function.

So, convert the service to a macro and use a generic name (same as
that used in Linux for some consistency). While at that, also add a
data barrier which is necessary as per recommendation.

While at this, smc #0 is maintained as handcoded assembly thanks to
various gcc version eccentricities, discussion thread:
http://marc.info/?t=142542166800001&r=1&w=2

Signed-off-by: Nishanth Menon <nm@ti.com>
Tested-by: Matt Porter <mporter@konsulko.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
9 years agoARM: Introduce erratum workaround for 621766
Nishanth Menon [Mon, 9 Mar 2015 22:12:02 +0000 (17:12 -0500)]
ARM: Introduce erratum workaround for 621766

621766: Under a specific set of conditions, executing a sequence of
NEON or vfp load instructions can cause processor deadlock
Impacts: Every Cortex-A8 processors with revision lower than r2p1
Work around: Set L1NEON to 1

Based on ARM errata Document revision 20.0 (13 Nov 2010)

Signed-off-by: Nishanth Menon <nm@ti.com>
Tested-by: Matt Porter <mporter@konsulko.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
9 years agoARM: Introduce erratum workaround for 430973
Nishanth Menon [Mon, 9 Mar 2015 22:12:01 +0000 (17:12 -0500)]
ARM: Introduce erratum workaround for 430973

430973: Stale prediction on replaced inter working branch causes
Cortex-A8 to execute in the wrong ARM/Thumb state
Impacts: Every Cortex-A8 processors with revision lower than r2p1
Work around: Set IBE to 1

Based on ARM errata Document revision 20.0 (13 Nov 2010)

Signed-off-by: Nishanth Menon <nm@ti.com>
Tested-by: Matt Porter <mporter@konsulko.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
9 years agoARM: Introduce erratum workaround for 454179
Nishanth Menon [Mon, 9 Mar 2015 22:12:00 +0000 (17:12 -0500)]
ARM: Introduce erratum workaround for 454179

454179: Stale prediction may inhibit target address misprediction on
next predicted taken branch
Impacts: Every Cortex-A8 processors with revision lower than r2p1
Work around:  Set IBE and disable branch size mispredict to 1

Also provide a hook for SoC specific handling to take place if needed.

Based on ARM errata Document revision 20.0 (13 Nov 2010)

Signed-off-by: Nishanth Menon <nm@ti.com>
Tested-by: Matt Porter <mporter@konsulko.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
9 years agoARM: Introduce erratum workaround for 798870
Nishanth Menon [Mon, 9 Mar 2015 22:11:59 +0000 (17:11 -0500)]
ARM: Introduce erratum workaround for 798870

Add workaround for Cortex-A15 ARM erratum 798870 which says
"If back-to-back speculative cache line fills (fill A and fill B) are
issued from the L1 data cache of a CPU to the L2 cache, the second
request (fill B) is then cancelled, and the second request would have
detected a hazard against a recent write or eviction (write B) to the
same cache line as fill B then the L2 logic might deadlock."

Implementations for SoC families such as Exynos, OMAP5/DRA7 etc
will be widely different.

Every SoC has slightly different manner of setting up access to L2ACLR
and similar registers since the Secure Monitor handling of Secure
Monitor Call(smc) is diverse. Hence an weak function is introduced
which may be overriden to implement SoC specific accessor implementation.

Based on ARM errata Document revision 18.0 (22 Nov 2013)

Signed-off-by: Nishanth Menon <nm@ti.com>
Tested-by: Matt Porter <mporter@konsulko.com>
Reviewed-by: Tom Rini <trini@konsulko.com>