platform/kernel/u-boot.git
12 years agofsl_esdhc: Remove cache snooping for i.MX
Benoît Thébaudeau [Mon, 13 Aug 2012 07:28:16 +0000 (07:28 +0000)]
fsl_esdhc: Remove cache snooping for i.MX

The cache snooping feature of Freescale's eSDHC IP is not available on i.MX, so
disable it globally for this architecture. This avoids setting no_snoop for all
i.MX boards, and it prevents setting a reserved bit of a reserved register if
fsl_esdhc_mmc_init() is used on i.MX, like in
arch/arm/cpu/armv7/imx-common/cpu.c/cpu_mmc_init().

Since no_snoop was only used on i.MX, get rid of it BTW.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Andy Fleming <afleming@gmail.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Kim Phillips <kim.phillips@freescale.com>
12 years agomxc: Define architecture identifier
Benoît Thébaudeau [Mon, 13 Aug 2012 07:27:58 +0000 (07:27 +0000)]
mxc: Define architecture identifier

Define ARCH_MXC for i.MX devices. This is useful to identify features or
behaviors common to all i.MX SoCs.

The i.MX28 is omitted because its architecture is a bit different (like imx/mxc
vs. mxs in Linux).

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Andy Fleming <afleming@gmail.com>
Cc: Kim Phillips <kim.phillips@freescale.com>
12 years agoMX5: efikamx: substitutes GPIO_NUMBER with IMX_GPIO_NR
Stefano Babic [Tue, 28 Aug 2012 03:10:51 +0000 (03:10 +0000)]
MX5: efikamx: substitutes GPIO_NUMBER with IMX_GPIO_NR

The macro to get the gpio number id was renamed to
IMX_GPIO_NR as in kernel. Fix the wrong name in efika.

Signed-off-by: Stefano Babic <sbabic@denx.de>
CC: Matt Sealey <matt@genesi-usa.com>
Acked-by: Matt Sealey <matt@genesi-usa.com>
12 years agomx5:Use IMX_GPIO_NR macro
Ashok Kumar Reddy [Tue, 28 Aug 2012 02:09:38 +0000 (07:39 +0530)]
mx5:Use IMX_GPIO_NR macro

Signed-off-by: Ashok Kumar Reddy <ashokkourla2000@gmail.com>
12 years agoefikamx: sync Smartbook DDR settings in DCD with those found in Genesi's production...
Matt Sealey [Fri, 24 Aug 2012 06:44:24 +0000 (06:44 +0000)]
efikamx: sync Smartbook DDR settings in DCD with those found in Genesi's production U-Boot

We have no idea where the DCD was derived from for Smartbook support, but they
differ from the Smarttop settings, MX51EVK settings and certainly don't
correspond to any shipped or development version of U-Boot that Genesi has ever
had on any Smartbook.

So, copy the calibrated, verified settings from the U-Boot as shipped with every
Smartbook since retail production. Remove those few settings that just set the
POR defaults which have already been confirmed for the previous Smarttop DCD
change.

One of the lines is specific to i.MX51 TO3 designs and therefore TO2 Smartbooks
will possibly not work so reliably with this new DCD; that said, TO2 Smartbooks
basically don't exist at retail and the number of units in the world is less
than 5 (3 of which are at the Genesi office or owned by Genesi employees).

Many hours of memory testing confirms the new settings are stable.

Patch v2:
 * picked the correct commit from our development tree, correcting tuned DDR ODF setting
   (which was correct anyway)

Signed-off-by: Matt Sealey <matt@genesi-usa.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Marek Vasut <marex@denx.de>
12 years agoefikamx: update to Efika MX Smarttop and Smartbook boards
Matt Sealey [Mon, 27 Aug 2012 05:58:30 +0000 (05:58 +0000)]
efikamx: update to Efika MX Smarttop and Smartbook boards

This is a rework of a previously submitted patchset and bundles the
main board support and USB support into a single commit.

It requires the patch "mx5: add iomux-mx51.h include"

* Use iomux-mx51.h include to simplify board configuration.
* Simplify LED support (remove efikamx_toggle_led, change lit LEDs).
* Simplify MMC support for CD and WP pin differences.
* Fix broken CPU voltage setting - comment said 1.1V but the code set to
  1.2V. It should never have been set to 1.2V even on i.MX51 TO2 and
  all available Linux kernels would drop the voltage to 1.1V anyway and
  work reliably. This should lower power consumption during the boot
  process.
* Function renames for readability.
* Some board identification string changes to match actual product names.
* Passes checkpatch (v2)

Signed-off-by: Matt Sealey <matt@genesi-usa.com>
Cc: Stefano Babic <sbabic@denx.de>
12 years agomxs: Convert timeout parameter to 'unsigned int'
fabio.estevam@freescale.com [Wed, 22 Aug 2012 10:10:11 +0000 (10:10 +0000)]
mxs: Convert timeout parameter to 'unsigned int'

For representing a timeout value, it makes more sense to pass it as
'unsigned int'.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Marek Vasut <marex@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agoefikamx: update MAINTAINERS for Genesi Efika MX systems
Matt Sealey [Thu, 23 Aug 2012 04:56:19 +0000 (04:56 +0000)]
efikamx: update MAINTAINERS for Genesi Efika MX systems

Update maintainer for "efikamx" and "efikasb" to myself.

Signed-off-by: Matt Sealey <matt@genesi-usa.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Marek Vasut <marex@denx.de>
12 years agoefikamx: configure Smarttop PCBID and LED pads in DCD for convenience
Matt Sealey [Wed, 22 Aug 2012 09:25:40 +0000 (09:25 +0000)]
efikamx: configure Smarttop PCBID and LED pads in DCD for convenience

PCBID pads seem to need time to settle due to external pulldowns, otherwise
we are reading floating GPIO pins with implicit pad pullups and get the wrong
data. However we can't "wait" at the time we need them before relocation,
since timers are not available. The time taken to get from DCD to the code
requiring the pads set seems to be more than long enough (even with caches
enabled).

We have space in the DCD due to the DDR settings changes to configure all
the pad settings we need for this, plus the LED pad settings too which
reduces the amount of code required later on.

Signed-off-by: Matt Sealey <matt@genesi-usa.com>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agoefikamx: remove drive strength function and roll its functionality into the DCD
Matt Sealey [Wed, 22 Aug 2012 09:25:39 +0000 (09:25 +0000)]
efikamx: remove drive strength function and roll its functionality into the DCD

Efika MX boards configure their DDR pad settings twice, one in the DCD generated
from imximage_*.cfg and again in init_drive_strength called before relocation.

Rather than doing this, roll the changes it makes into the DCD so DDR is set up
before a single line of code in U-Boot is run.

The settings are identical with this DCD block which is shorter (by 7 entries)
than the old one, and after the output of init_drive_strength since a lot of the
functionality in the existing DCD and init_drive_strength function was just
setting the POR defaults. This goes to explain some now-missing entries.

Several hundred rounds of mtest have been run to test the settings before and
after to confirm DDR is stable and no ill-effects have been found.

Signed-off-by: Matt Sealey <matt@genesi-usa.com>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agoefikamx: move and rename Efika MX directories and config files to prepare for new...
Matt Sealey [Wed, 22 Aug 2012 09:25:38 +0000 (09:25 +0000)]
efikamx: move and rename Efika MX directories and config files to prepare for new boards

* Move Efika MX Smarttop and Smartbook boards into a "genesi" vendor directory
* Rename efikamx -> mx51_efikamx since there is an mx53_efikamx and mx6_efikamx to come

Signed-off-by: Matt Sealey <matt@genesi-usa.com>
Acked-by: Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agoMX28: m28evk: Enable SPI DMA
Marek Vasut [Tue, 21 Aug 2012 16:17:29 +0000 (16:17 +0000)]
MX28: m28evk: Enable SPI DMA

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <festevam@gmail.com>
Cc: Otavio Salvador <otavio@ossystems.com.br>
Cc: Stefano Babic <sbabic@denx.de>
12 years agoMX28: m28evk: Align SSP clock speed
Marek Vasut [Tue, 21 Aug 2012 16:17:28 +0000 (16:17 +0000)]
MX28: m28evk: Align SSP clock speed

Align the SSP clock speed with oscilator to achieve
higher transfer stability.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <festevam@gmail.com>
Cc: Otavio Salvador <otavio@ossystems.com.br>
Cc: Stefano Babic <sbabic@denx.de>
12 years agoMX28: SPI: Supercharge the SPI driver
Marek Vasut [Tue, 21 Aug 2012 16:17:27 +0000 (16:17 +0000)]
MX28: SPI: Supercharge the SPI driver

This change implements DMA chaining into SPI driver. This allows
the transfers to go much faster, while also fixing SF issues.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <festevam@gmail.com>
Cc: Otavio Salvador <otavio@ossystems.com.br>
Cc: Stefano Babic <sbabic@denx.de>
12 years agoMX28: DMA: Prolong the DMA timeout
Marek Vasut [Tue, 21 Aug 2012 16:17:26 +0000 (16:17 +0000)]
MX28: DMA: Prolong the DMA timeout

Load from SPI flash can create a long DMA chain, which can take long
time to transfer. Change the DMA timeout to roughly 10s to prevent
such long chains misreporting errors.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <festevam@gmail.com>
Cc: Otavio Salvador <otavio@ossystems.com.br>
Cc: Stefano Babic <sbabic@denx.de>
12 years agoMX28: DMA: Align the struct mxs_dma_desc
Marek Vasut [Tue, 21 Aug 2012 16:17:25 +0000 (16:17 +0000)]
MX28: DMA: Align the struct mxs_dma_desc

Align this structure to DMA alignment size.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <festevam@gmail.com>
Cc: Otavio Salvador <otavio@ossystems.com.br>
Cc: Stefano Babic <sbabic@denx.de>
12 years agomx6qarm2:Use IMX_GPIO_NR macro
Ashok Kumar Reddy [Thu, 23 Aug 2012 15:31:34 +0000 (21:01 +0530)]
mx6qarm2:Use IMX_GPIO_NR macro

Signed-off-by: Ashok Kumar Reddy <ashokkourla2000@gmail.com>
Acked-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agoimx27lite: update with gpio api change (v4)
trem [Sat, 25 Aug 2012 05:30:34 +0000 (05:30 +0000)]
imx27lite: update with gpio api change (v4)

Signed-off-by: Philippe Reynes <tremyfr@yahoo.fr>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agogpio: add gpio api support to mx27 (v4)
trem [Sat, 25 Aug 2012 05:30:33 +0000 (05:30 +0000)]
gpio: add gpio api support to mx27 (v4)

The gpio api has been tested on an armadeus apf27.

Signed-off-by: Philippe Reynes <tremyfr@yahoo.fr>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agomx5: add iomux-mx51.h include
Matt Sealey [Wed, 22 Aug 2012 09:24:06 +0000 (09:24 +0000)]
mx5: add iomux-mx51.h include

Allow usage of the imx-common/iomux-v3.h framework by including pad settings
for the i.MX51. The content of the file is taken from Linux kernel at
commit 5d23b39 plus the required changes to make it work in U-Boot.

The contained pad settings are the minimum required to make an Efika MX boot
and get all the currently-implemented peripherals working in U-Boot.

It is recommended that this file not be just a dumping ground for pins but
only contain the settings required for all the boards using it.

Changes for v2:
 * reference commit id from Linux kernel
 * additionally roll in the USB pads
 * removed GPIO_NUMBER define

Signed-off-by: Matt Sealey <matt@genesi-usa.com>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agomxs: Rename 'mx28_dram_init' to 'mxs_dram_init'
Otavio Salvador [Sun, 19 Aug 2012 04:58:30 +0000 (04:58 +0000)]
mxs: Rename 'mx28_dram_init' to 'mxs_dram_init'

The DRAM initialization, after SPL has complete, is exactly the same
for all mxs SoCs so we should name it accordinly.

The following boards has been changed:

 * apx4devkit
 * m28evk
 * mx28evk
 * sc_sps_1

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Acked-by: Marek Vasut <marex@denx.de>
Acked-by: Veli-Pekka Peltola <veli-pekka.peltola@bluegiga.com>
12 years agomxs: Only build internal Ethernet controller for i.MX28
Otavio Salvador [Sun, 19 Aug 2012 04:58:29 +0000 (04:58 +0000)]
mxs: Only build internal Ethernet controller for i.MX28

The internal Ethernet controller is only available on i.MX28
processors so it needs to use CONFIG_MX28 guardian to avoid having
this code called in others.

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Acked-by: Marek Vasut <marex@denx.de>
12 years agomxs: Replace i.MX233 by i.MX23 on copyright header
Otavio Salvador [Sun, 19 Aug 2012 04:58:28 +0000 (04:58 +0000)]
mxs: Replace i.MX233 by i.MX23 on copyright header

All other header are going to use i.MX23 so we change this for
consistency.

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
12 years agomxc: Make gpio_get_value() use PSR
Benoît Thébaudeau [Mon, 20 Aug 2012 10:55:41 +0000 (10:55 +0000)]
mxc: Make gpio_get_value() use PSR

gpio_get_value() should use PSR like Linux, not DR, because DR does not always
reflect the pin state, while PSR does. This is especially useful to detect a
short circuit on a GPIO pin configured as output, or to read the level of a pin
controlled by a non-GPIO IOMUX function.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agomx53ard: Use IMX_GPIO_NR macro
Fabio Estevam [Tue, 21 Aug 2012 10:01:58 +0000 (10:01 +0000)]
mx53ard: Use IMX_GPIO_NR macro

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
12 years agomx51evk: Use IMX_GPIO_NR macro
Fabio Estevam [Tue, 21 Aug 2012 10:01:57 +0000 (10:01 +0000)]
mx51evk: Use IMX_GPIO_NR macro

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
12 years agomx53loco: Use IMX_GPIO_NR macro
Fabio Estevam [Tue, 21 Aug 2012 10:01:56 +0000 (10:01 +0000)]
mx53loco: Use IMX_GPIO_NR macro

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
12 years agomx35: Remove declaration of non-existing function
Benoît Thébaudeau [Tue, 14 Aug 2012 10:32:40 +0000 (10:32 +0000)]
mx35: Remove declaration of non-existing function

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agomx35: Move clock enums to clock.h
Benoît Thébaudeau [Tue, 14 Aug 2012 10:32:21 +0000 (10:32 +0000)]
mx35: Move clock enums to clock.h

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agomx35: Remove declaration of non-existing function
Benoît Thébaudeau [Tue, 14 Aug 2012 09:40:02 +0000 (09:40 +0000)]
mx35: Remove declaration of non-existing function

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agomx35: Fix broken pin definitions
Benoît Thébaudeau [Tue, 14 Aug 2012 09:39:49 +0000 (09:39 +0000)]
mx35: Fix broken pin definitions

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agomx35 iomux: Remove unused macro
Benoît Thébaudeau [Tue, 14 Aug 2012 09:39:16 +0000 (09:39 +0000)]
mx35 iomux: Remove unused macro

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agomx5: Undeclare imx_decode_pll()
Benoît Thébaudeau [Tue, 14 Aug 2012 08:06:23 +0000 (08:06 +0000)]
mx5: Undeclare imx_decode_pll()

The imx_decode_pll() function does not exist for mx5, so remove its declaration.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Stefano Babic <sbabic@denx.de>
12 years agoMX: Set a common gpio.h for all i.MX
Stefano Babic [Sun, 19 Aug 2012 21:33:50 +0000 (21:33 +0000)]
MX: Set a common gpio.h for all i.MX

Each i.MX has its own gpio.h, defining the same structure.
The internal GPIO controller has the same layout
(at least for the register used by u-boot) and can be shared.

Signed-off-by: Stefano Babic <sbabic@denx.de>
Tested-by: Matt Sealey <matt@genesi-usa.com>
12 years agomxs: Use correct function name to initialize dram
Fabio Estevam [Sat, 18 Aug 2012 13:28:12 +0000 (13:28 +0000)]
mxs: Use correct function name to initialize dram

commit d92591a (mxs: Convert sys_proto.h prefixes to 'mxs') introduced
a mxs_dram_init() function, which is not used anywhere.

Fix it, so that the following warning goes away:

mx28evk.c: In function ‘dram_init’:
mx28evk.c:67:2: warning: implicit declaration of function ‘mx28_dram_init’ [-Wimplicit-function-declaration]

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Marek Vasut <marex@denx.de>
Acked-by: Otavio Salvador <otavio@ossystems.com.br>
12 years agomx28evk: Remove unneeded 'undef'
Fabio Estevam [Sat, 18 Aug 2012 13:28:11 +0000 (13:28 +0000)]
mx28evk: Remove unneeded 'undef'

There is no need to undef an option that is not enabled by default.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Marek Vasut <marex@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agoMX28: Move "regs-base.h" include after SoC type configuration
Otavio Salvador [Sat, 18 Aug 2012 07:25:26 +0000 (07:25 +0000)]
MX28: Move "regs-base.h" include after SoC type configuration

For i.MX233 addition the base registers need to be change so the SoC
definition needs to be known before the header include.

The following boards has been changed:

 * apx4devkit
 * m28evk
 * mx28evk
 * sc_sps_1

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agoMX28: config: Allow different target generation in elftosb call
Otavio Salvador [Sat, 18 Aug 2012 07:25:25 +0000 (07:25 +0000)]
MX28: config: Allow different target generation in elftosb call

The elftosb call needs to use a target param specific for i.MX28. This
patch allow for later addition of i.MX233.

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Acked-by: Marek Vasut <marex@denx.de>
12 years agomx35: Add cpu_mmc_init()
Benoît Thébaudeau [Fri, 17 Aug 2012 10:43:48 +0000 (10:43 +0000)]
mx35: Add cpu_mmc_init()

Add cpu_mmc_init() function to make it easy to init a single eSDHC instance.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agomx5/6: Fix cpu_mmc_init() return value
Benoît Thébaudeau [Fri, 17 Aug 2012 10:42:55 +0000 (10:42 +0000)]
mx5/6: Fix cpu_mmc_init() return value

Do not pretend to have initialized mmc successfully if CONFIG_FSL_ESDHC is not
defined. Instead, only implement a custom cpu_mmc_init() when it does something.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agospi: fix mxs_spi_slave structure allocation to clear memory
Matt Sealey [Fri, 17 Aug 2012 08:15:11 +0000 (08:15 +0000)]
spi: fix mxs_spi_slave structure allocation to clear memory

Use calloc() instead of malloc() to allocate the mxs_spi_slave structure.
Clearing the memory is necessary since most of the time this gets done
super early in boot, but on warm reboots, and when SPI probing is done
long after the init stages it could actually pick up previously used memory,
and things like the chipselect polarity and other data end up being filled
with trash data if not explicitly set by the board files.

This solves a semi-random, almost unreproducable error whereby SPI devices
act very, very strangly on boot.

Signed-off-by: Matt Sealey <matt@genesi-usa.com>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agospi: fix mxc_spi_slave structure allocation to clear memory
Matt Sealey [Fri, 17 Aug 2012 08:15:10 +0000 (08:15 +0000)]
spi: fix mxc_spi_slave structure allocation to clear memory

Use calloc() instead of malloc() to allocate the mxc_spi_slave structure.
Clearing the memory is necessary since most of the time this gets done
super early in boot, but on warm reboots, and when SPI probing is done
long after the init stages it could actually pick up previously used memory,
and things like the chipselect polarity and other data end up being filled
with trash data if not explicitly set by the board files.

This solves a semi-random, almost unreproducable error whereby SPI devices
act very, very strangly on boot. Tested on Efika MX over several years..

Signed-off-by: Matt Sealey <matt@genesi-usa.com>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agomx53evk: add boot_mode support
Troy Kisky [Wed, 15 Aug 2012 10:31:22 +0000 (10:31 +0000)]
mx53evk: add boot_mode support

This allows a watchdog reset to start the ROM's
usb/serial downloader, or boot from an sdcard.

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
12 years agomx6qsabrelite: add boot_mode support
Troy Kisky [Wed, 15 Aug 2012 10:31:21 +0000 (10:31 +0000)]
mx6qsabrelite: add boot_mode support

This allows a watchdog reset to start the ROM's
usb downloader, or boot from an sdcard.

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
12 years agoimx-common/cmd_bmode.c: add imx bmode (bootmode) command
Troy Kisky [Wed, 15 Aug 2012 10:31:20 +0000 (10:31 +0000)]
imx-common/cmd_bmode.c: add imx bmode (bootmode) command

This is useful for forcing the ROM's
usb downloader to activate upon a watchdog reset.
Or, you can boot from either SD Card.

Currently, support added for MX53 and MX6Q
Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
Note: MX53 support untested.
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agoiomux: move IOMUX_GPR13_xxx defines
Troy Kisky [Wed, 15 Aug 2012 10:27:11 +0000 (10:27 +0000)]
iomux: move IOMUX_GPR13_xxx defines

Move mx6 specific defines to arch-mx6 directory.

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agomx35: Remove duplicate GPIO3_BASE_ADDR
Benoît Thébaudeau [Tue, 14 Aug 2012 11:03:34 +0000 (11:03 +0000)]
mx35: Remove duplicate GPIO3_BASE_ADDR

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agomx5: cosmetic: Clean up lowlevel_init
Benoît Thébaudeau [Tue, 14 Aug 2012 05:18:43 +0000 (05:18 +0000)]
mx5: cosmetic: Clean up lowlevel_init

Coding style cleanup:
 - Remove useless parentheses.
 - Use tabs for indentations and alignments.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agomx5/6 timer: Round up tick_to_time() value
Benoît Thébaudeau [Tue, 14 Aug 2012 05:01:21 +0000 (05:01 +0000)]
mx5/6 timer: Round up tick_to_time() value

Round up tick_to_time() value instead of truncating it. This avoids stopping
waits instantly for low usec values, and this generally guarantees that the code
always waits for at least the requested duration.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agomx3: Fix typo on IPU_CONF_CSI_EN
Benoît Thébaudeau [Tue, 14 Aug 2012 03:33:52 +0000 (03:33 +0000)]
mx3: Fix typo on IPU_CONF_CSI_EN

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agomx35: Fix typo on EDIO
Benoît Thébaudeau [Tue, 14 Aug 2012 03:28:24 +0000 (03:28 +0000)]
mx35: Fix typo on EDIO

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agomx5: Enable dcache
Benoît Thébaudeau [Tue, 14 Aug 2012 03:17:52 +0000 (03:17 +0000)]
mx5: Enable dcache

Now that the main i.MX features work fine with dcache enabled, enabled it by
default if CONFIG_SYS_DCACHE_OFF is not defined.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agomx25: Enable dcache
Benoît Thébaudeau [Tue, 14 Aug 2012 03:17:33 +0000 (03:17 +0000)]
mx25: Enable dcache

Now that the main i.MX features work fine with dcache enabled, enabled it by
default if CONFIG_SYS_DCACHE_OFF is not defined.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agomxc_spi: Round up clock divider
Benoît Thébaudeau [Fri, 10 Aug 2012 08:51:50 +0000 (08:51 +0000)]
mxc_spi: Round up clock divider

Since the input frequency of the API is a maximum that should not be exceeded in
order for the devices to operate properly, the SPI clock divider should be
rounded up, not truncated.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agortc: add support of mx27 rtc
trem [Wed, 8 Aug 2012 07:04:46 +0000 (07:04 +0000)]
rtc: add support of mx27 rtc

This driver has been tested on board armadeus apf27.

Signed-off-by: Philippe Reynes <tremyfr@yahoo.fr>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agoMX28: Shuffle around the power management code
Marek Vasut [Mon, 6 Aug 2012 11:34:55 +0000 (11:34 +0000)]
MX28: Shuffle around the power management code

Move some function calls to a more appropriate place, so they're
called only when needed.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agoMX28: Drop the cp15 reconfiguration from SPL
Marek Vasut [Mon, 6 Aug 2012 11:34:54 +0000 (11:34 +0000)]
MX28: Drop the cp15 reconfiguration from SPL

The SPL doesn't need the CP15 reconfiguration, as that's what the
BootROM does for us already. Moreover, when the CP15 is reconfigured
and the code returns control to BootROM, the USB boot works no more.

Remove the code and allow [1] to work properly as well.

[1] http://git.bfuser.eu/?p=marex/mxsldr.git;a=summary

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agotx25: Use generic gpio_* calls
Vikram Narayanan [Sat, 16 Jun 2012 07:16:17 +0000 (07:16 +0000)]
tx25: Use generic gpio_* calls

Instead of manipulating gpio registers directly, use the calls
from the gpio library.

Signed-off-by: Vikram Narayanan <vikram186@gmail.com>
Acked-by: Stefano Babic <sbabic@denx.de>
Cc: John Rigby <jcrigby@gmail.com>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agomxs: Convert sys_proto.h prefixes to 'mxs'
Otavio Salvador [Mon, 13 Aug 2012 09:53:12 +0000 (09:53 +0000)]
mxs: Convert sys_proto.h prefixes to 'mxs'

The sys_proto.h functions (except the boot modes) are compatible with
i.MX233 and i.MX28 so we use 'mxs' prefix for its methods.

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
12 years agomxs: rename regs-clkctrl.h to regs-clkctrl-mx28.h
Otavio Salvador [Mon, 13 Aug 2012 09:53:11 +0000 (09:53 +0000)]
mxs: rename regs-clkctrl.h to regs-clkctrl-mx28.h

The CLKCTRL registers are SoC specific so we ought to have it clear on
filename.

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
12 years agomxs: Remove not required include of iomux-mx28.h
Otavio Salvador [Mon, 13 Aug 2012 09:53:10 +0000 (09:53 +0000)]
mxs: Remove not required include of iomux-mx28.h

The iomux-mx28.h include is not required on spl_mem_init.c so it has
been droped.

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
12 years agomxs: Remove not required explicit iomux-mx28.h include
Otavio Salvador [Mon, 13 Aug 2012 09:53:09 +0000 (09:53 +0000)]
mxs: Remove not required explicit iomux-mx28.h include

The iomux header is included on sys_proto.h so to avoid SoC specific
header inclusion.

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Acked-by: Marek Vasut <marex@denx.de>
12 years agoapx4devkit: Turn on caches
Fabio Estevam [Sun, 5 Aug 2012 06:18:00 +0000 (06:18 +0000)]
apx4devkit: Turn on caches

Turn on data and instruction caches.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
 include/configs/apx4devkit.h |    2 --
 1 files changed, 0 insertions(+), 2 deletions(-)
Acked-by: Veli-Pekka Peltola <veli-pekka.peltola@bluegiga.com>
12 years agom28evk: Turn on caches
Fabio Estevam [Sun, 5 Aug 2012 06:17:59 +0000 (06:17 +0000)]
m28evk: Turn on caches

Turn on data and instruction caches.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
12 years agoarm:cache:trats: Enable PL310 L2 Cache Controller at TRATS Samsung board
Łukasz Majewski [Tue, 7 Aug 2012 05:42:14 +0000 (05:42 +0000)]
arm:cache:trats: Enable PL310 L2 Cache Controller at TRATS Samsung board

Enable the PL310 L2 cache controller at TRATS Samsung board.

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoarm:exynos: Enable data cache at exynos based processors.
Łukasz Majewski [Tue, 7 Aug 2012 03:24:03 +0000 (03:24 +0000)]
arm:exynos: Enable data cache at exynos based processors.

This patch enables the L1 data cache for systems based on Samsung
Exynos processor.

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agovideo: support exynos pwm backlight driver
Donghwa Lee [Mon, 2 Jul 2012 01:16:13 +0000 (01:16 +0000)]
video: support exynos pwm backlight driver

This patch support exynos pwm backlight driver. It can control backlight
power and brightness by using pwm.

Signed-off-by: Donghwa Lee <dh09.lee@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agovideo: exynos fb driver supports display port feature
Donghwa Lee [Mon, 2 Jul 2012 01:16:08 +0000 (01:16 +0000)]
video: exynos fb driver supports display port feature

If dp_enabled was set, exynos fb driver support display port feature.
This patch depends on [PATCH] video: support exynos fimd driver
for various exynos series.

http://marc.info/?l=u-boot&m=134119605104467&w=2

Signed-off-by: Donghwa Lee <dh09.lee@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agovideo: add dp_enabled variable in vidinfo structure
Donghwa Lee [Mon, 2 Jul 2012 01:16:05 +0000 (01:16 +0000)]
video: add dp_enabled variable in vidinfo structure

To support display port in exynos fb driver, added dp_enabled variable
in vidinfo structure that set in board file.

Signed-off-by: Donghwa Lee <dh09.lee@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agovideo: support exynos display port drivers
Donghwa Lee [Mon, 2 Jul 2012 01:16:02 +0000 (01:16 +0000)]
video: support exynos display port drivers

This patch set supports exynos display port drivers.

DisplayPort is an industry standard device to accommodate the increasing board
adoption of digital display technology within the PC and consumer electronics.
The interface supports internal chip-to-chip and external box-to-box digital
display connections.

Signed-off-by: Donghwa Lee <dh09.lee@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoEXYNOS5: add display port base address
Donghwa Lee [Mon, 2 Jul 2012 01:15:59 +0000 (01:15 +0000)]
EXYNOS5: add display port base address

This patch add display port base address for EXYNOS5. In case of EXYNOS4,
use DEVICE_NOT_AVAILABLE macro because DP is not supported.

Signed-off-by: Donghwa Lee <dh09.lee@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoEXYNOS5: support display port phy control function
Donghwa Lee [Mon, 2 Jul 2012 01:15:56 +0000 (01:15 +0000)]
EXYNOS5: support display port phy control function

This patch support display port phy control function.

Signed-off-by: Donghwa Lee <dh09.lee@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoEXYNOS5: support display system register control
Donghwa Lee [Mon, 2 Jul 2012 01:15:53 +0000 (01:15 +0000)]
EXYNOS5: support display system register control

This patch supports display block system regisger control.

Signed-off-by: Donghwa Lee <dh09.lee@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoEXYNOS5: support exynos5 lcd clock control
Donghwa Lee [Mon, 2 Jul 2012 01:15:49 +0000 (01:15 +0000)]
EXYNOS5: support exynos5 lcd clock control

This patch support exynos5 lcd clock control.

Signed-off-by: Donghwa Lee <dh09.lee@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agovideo: support exynos fimd driver for various exynos series
Donghwa Lee [Thu, 26 Jul 2012 15:30:49 +0000 (15:30 +0000)]
video: support exynos fimd driver for various exynos series

This patch supports exynos fimd driver for various exynos series different from
existing it supports only exynos4 chip.

Signed-off-by: Donghwa Lee <dh09.lee@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoARM: EXYNOS: fixed compiler warning message
Jaehoon Chung [Mon, 9 Jul 2012 21:20:34 +0000 (21:20 +0000)]
ARM: EXYNOS: fixed compiler warning message

Removed [-Wuninitialized] warning message.
The fout_sel is assigned to "-1" by default.
And start, gpio_func is initialized to 0.

Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Rajeshwari Shinde <rajeshwari.s@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoarm/s5pxx: Fix get_timer_masked to get the time.
Zhong Hongbo [Mon, 2 Jul 2012 13:50:49 +0000 (13:50 +0000)]
arm/s5pxx: Fix get_timer_masked to get the time.

In general, The get_timer_masked function get the system time,
no the number of ticks. Such as the nand_wait_ready will use
get_timer_masked to delay the operations. And change the system
time to adopt to the CONFIG_SYS_HZ.

Signed-off-by: Hongbo Zhong <bocui107@gmail.com>
Tested-by: Jaehoon Chung<jh80.chung@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoarm:trats: loaduimage environment variable defied for TRATS target
Łukasz Majewski [Mon, 2 Jul 2012 23:41:15 +0000 (23:41 +0000)]
arm:trats: loaduimage environment variable defied for TRATS target

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoSMDK5250: Enable UART and MMC for Exynos5250 Rev 1.0
Rajeshwari Shinde [Tue, 3 Jul 2012 20:03:00 +0000 (20:03 +0000)]
SMDK5250: Enable UART and MMC for Exynos5250 Rev 1.0

This patch sets UART3 and MMC channle 0 for Exynos5250 Rev 1.0

Signed-off-by: Rajeshwari Shinde <rajeshwari.s@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoEXYNOS5 : Modify pinnumx settings as per Exynos5250 Rev 1.0
Rajeshwari Shinde [Tue, 3 Jul 2012 20:02:59 +0000 (20:02 +0000)]
EXYNOS5 : Modify pinnumx settings as per Exynos5250 Rev 1.0

This patch modifies the pinmux settings of MMC and UART as per
Exynos5250 Rev 1.0.
It also corrects the gpio offset calculations.

Signed-off-by: Rajeshwari Shinde <rajeshwari.s@samsung.com>
Acked-by: Joonyoung Shim <jy0922.shim@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoEXYNOS5: CLOCK: Add BPLL support
Rajeshwari Shinde [Tue, 3 Jul 2012 20:02:58 +0000 (20:02 +0000)]
EXYNOS5: CLOCK: Add BPLL support

This patch adds support for BPLL clock.

Signed-off-by: Rajeshwari Shinde <rajeshwari.s@samsung.com>
Acked-by: Joonyoung Shim <jy0922.shim@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoEXYNOS5: CLOCK: Modify MPLL clock out for Exynos5250 Rev 1.0
Rajeshwari Shinde [Tue, 3 Jul 2012 20:02:57 +0000 (20:02 +0000)]
EXYNOS5: CLOCK: Modify MPLL clock out for Exynos5250 Rev 1.0

MPLL clock-out of Exynos5250 Rev 1.0 is always at 1.6GHz.
Adjust the divisor value to get 800MHz as needed by devices
like UART etc

Signed-off-by: Hatim Ali <hatim.rv@samsung.com>
Signed-off-by: Rajeshwari Shinde <rajeshwari.s@samsung.com>
Acked-by: Joonyoung Shim <jy0922.shim@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoExynos5: DDR3: Add DDR3 memory setup for Exynos5250 Rev 1.0
Rajeshwari Shinde [Tue, 3 Jul 2012 20:02:56 +0000 (20:02 +0000)]
Exynos5: DDR3: Add DDR3 memory setup for Exynos5250 Rev 1.0

The patch adds the memory initialization sequence of DDR3.

Signed-off-by: Hatim Ali <hatim.rv@samsung.com>
Signed-off-by: Rajeshwari Shinde <rajeshwari.s@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoEXYNOS5: CLOCK: Add clock support for Exynos5250 Rev 1.0
Rajeshwari Shinde [Tue, 3 Jul 2012 20:02:55 +0000 (20:02 +0000)]
EXYNOS5: CLOCK: Add clock support for Exynos5250 Rev 1.0

Add new clock values for Exynos5250 Rev 1.0

Signed-off-by: Hatim Ali <hatim.rv@samsung.com>
Signed-off-by: Rajeshwari Shinde <rajeshwari.s@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoEXYNOS5: CLOCK: define additional clock registers for Exynos5250 Rev 1.0
Rajeshwari Shinde [Tue, 3 Jul 2012 20:02:54 +0000 (20:02 +0000)]
EXYNOS5: CLOCK: define additional clock registers for Exynos5250 Rev 1.0

Define additional registers for clock control in Exynos5250 Rev 1.0

Signed-off-by: Hatim Ali <hatim.rv@samsung.com>
Signed-off-by: Rajeshwari Shinde <rajeshwari.s@samsung.com>
Acked-by: Joonyoung Shim <jy0922.shim@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoSMDK5250: Add smdk5250-uboot-spl.lds
Rajeshwari Shinde [Tue, 3 Jul 2012 20:02:53 +0000 (20:02 +0000)]
SMDK5250: Add smdk5250-uboot-spl.lds

Default spl/u-boot-spl.lds created by spl/Makefile resolves
the spl text load addr to 0x0. As 0x0 belongs to iROM addr so
Global variables can not be used.

Adding specific smdk5250-uboot-spl.lds makes possible to use Global Variables
in spl.

Signed-off-by: Alim Akhtar <alim.akhtar@samsung.com>
Signed-off-by: Rajeshwari Shinde <rajeshwari.s@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoSMDK5250: SPL: Define parametric board initializer
Rajeshwari Shinde [Tue, 3 Jul 2012 20:02:52 +0000 (20:02 +0000)]
SMDK5250: SPL: Define parametric board initializer

Define table-driven configuration mechanism for SMDK5250
rather than hard-coding board initialization parameters.

Signed-off-by: Che-Liang Chiou <clchiou@chromium.org>
Signed-off-by: Abhilash Kesavan <a.kesavan@samsung.com>
Signed-off-by: Tom Wai-Hong Tam <waihong@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Rajeshwari Shinde <rajeshwari.s@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoARCH: SPL: Add parametric board initializer
Rajeshwari Shinde [Tue, 3 Jul 2012 20:02:51 +0000 (20:02 +0000)]
ARCH: SPL: Add parametric board initializer

Add a structure for table-driven configuration mechanism such that no recompilation
is needed to update the configuration parameters, rather than hard-coding
board initialization parameters.

Signed-off-by: Che-Liang Chiou <clchiou@chromium.org>
Signed-off-by: Abhilash Kesavan <a.kesavan@samsung.com>
Signed-off-by: Tom Wai-Hong Tam <waihong@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Rajeshwari Shinde <rajeshwari.s@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoARM: Remove unused stack and irq config defines
Rob Herring [Fri, 13 Jul 2012 09:44:01 +0000 (09:44 +0000)]
ARM: Remove unused stack and irq config defines

CONFIG_STACKSIZE is not referenced anywhere except on AVR32, but present
in most ARM board config files.

IRQs are only enabled for 1 config, so remove the unused config options
for IRQ and FIQ stack size as well.

Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
12 years agoarm: bugfix: save_boot_params_default accesses uninitalized stack when -O0
Tetsuyuki Kobayashi [Fri, 6 Jul 2012 21:14:20 +0000 (21:14 +0000)]
arm: bugfix: save_boot_params_default accesses uninitalized stack when -O0

save_boot_params_default() in cpu.c accesses uninitialized stack area
when it compiled with -O0 (not optimized).
This patch removes save_boot_params_default() and put the equivalent in start.S

Signed-off-by: Tetsuyuki Kobayashi <koba@kmckk.co.jp>
Acked-by: Tom Rini <trini@ti.com>
12 years agotegra20: Remove armv4t build flags
Allen Martin [Fri, 31 Aug 2012 08:30:15 +0000 (08:30 +0000)]
tegra20: Remove armv4t build flags

These flags were necessary when building tegra20 as a single binary
that supported ARM7TDMI and Cortex A9.  Now that the ARM7TDMI support
is split into a separate SPL, this is no longer necessary.

Signed-off-by: Allen Martin <amartin@nvidia.com>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
Tested-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agospl: fix SPL build of private libgcc
Allen Martin [Fri, 31 Aug 2012 08:30:14 +0000 (08:30 +0000)]
spl: fix SPL build of private libgcc

This fixes the SPL build to link with the SPL version of libgcc if
USE_PRIVATE_LIBGCC is set to "yes".  Previously it was linking with
the libgcc from the normal u-boot build because it gets set in
PLATFORM_LIBS and passed down the to the SPL build.

Signed-off-by: Allen Martin <amartin@nvidia.com>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
Tested-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agoarm: enable libgcc build for SPL
Allen Martin [Fri, 31 Aug 2012 08:30:13 +0000 (08:30 +0000)]
arm: enable libgcc build for SPL

Enable the building of private libgcc for SPL

Signed-off-by: Allen Martin <amartin@nvidia.com>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
Tested-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra20: enable SPL for tegra20 boards
Allen Martin [Fri, 31 Aug 2012 08:30:12 +0000 (08:30 +0000)]
tegra20: enable SPL for tegra20 boards

Add SPL options to tegra20 config files and enable SPL build for
tegra20 boards.  Also remove redundant code from u-boot that is not
contained in SPL.

Signed-off-by: Allen Martin <amartin@nvidia.com>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
Tested-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra20: move SDRAM param save to later in boot
Allen Martin [Fri, 31 Aug 2012 08:30:11 +0000 (08:30 +0000)]
tegra20: move SDRAM param save to later in boot

Move warmboot_save_sdram_params() to later in the boot sequence.  This
code relies on devicetree to get the address of the memory controller
and with upcoming changes for SPL boot it gets called early in the
boot process when devicetree is not initialized yet.

Signed-off-by: Allen Martin <amartin@nvidia.com>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
Tested-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra20: add u-boot-*-tegra.bin targets
Allen Martin [Fri, 31 Aug 2012 08:30:10 +0000 (08:30 +0000)]
tegra20: add u-boot-*-tegra.bin targets

Add target for tegra20 u-boot image.  This is a concatenation of tegra
spl and normal u-boot binaries.  For non-devicetree builds this is
named "u-boot-nodtb-tegra.bin" for devicetree builds is named
"u-boot-dtb-tegra.bin".

Signed-off-by: Allen Martin <amartin@nvidia.com>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
Tested-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agoARM: add tegra20 support to arm720t
Allen Martin [Fri, 31 Aug 2012 08:30:09 +0000 (08:30 +0000)]
ARM: add tegra20 support to arm720t

Add support for tegra20 arm7 boot processor.  This processor is used
to power on the Cortex A9 and transfer control to it.  In tegra this
processor is an ARM7TDMI not an ARM720T, but since we don't use cache
it was easier to just reuse the ARM720T code as the processors are
otherwise identical except for cache and MMU.

Signed-off-by: Allen Martin <amartin@nvidia.com>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
Tested-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra20: remove timer_init from SPL build
Allen Martin [Fri, 31 Aug 2012 08:30:08 +0000 (08:30 +0000)]
tegra20: remove timer_init from SPL build

Don't use timer_init from tegra board.c.  This comes out of arm720t
for the SPL build.

Signed-off-by: Allen Martin <amartin@nvidia.com>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
Tested-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agoARM: Fix arm720t SPL build
Allen Martin [Fri, 31 Aug 2012 08:30:07 +0000 (08:30 +0000)]
ARM: Fix arm720t SPL build

Take a few SPL fixes from armv7 and apply them to arm720t:
-Use dummy exception handlers for SPL build
-Initialize relocation register r9 to 0 for the case of no relocation
-ifdef out interrupt handler code

Signed-off-by: Allen Martin <amartin@nvidia.com>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
Tested-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agoMAKEALL: update to work with new boards.cfg syntax
Allen Martin [Fri, 31 Aug 2012 08:30:06 +0000 (08:30 +0000)]
MAKEALL: update to work with new boards.cfg syntax

Update MAKEALL to handle the optional SPL CPU field that was added to
boards.cfg.  This impacts the cases in MAKEALL that have to match
against CPU type (field 3).  In these cases use ':' as a field
separator to split the u-boot CPU from the SPL CPU.

Signed-off-by: Allen Martin <amartin@nvidia.com>
Signed-off-by: Tom Warren <twarren@nvidia.com>