platform/kernel/u-boot.git
12 years agomcx: support for HTKW mcx board
Ilya Yanok [Tue, 7 Feb 2012 23:30:22 +0000 (23:30 +0000)]
mcx: support for HTKW mcx board

This patch adds support for the HTKW mcx AM3517-based board.
Serial, Ethernet, NAND, MMC, RTC, EHCI USB host and both
NAND and MMC SPLs are supported.

Signed-off-by: Ilya Yanok <yanok@emcraft.com>
Signed-off-by: Stefano Babic <sbabic@denx.de>
CC: Tom Rini <tom.rini@gmail.com>
Cc: Detlev Zundel <dzu@denx.de>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
12 years agoARM: omap3: Added Teejet mt_ventoux
Stefano Babic [Tue, 7 Feb 2012 23:29:34 +0000 (23:29 +0000)]
ARM: omap3: Added Teejet mt_ventoux

The mt_ventoux board is a custom board using
the Technexion TAM3517 module.

The patch fixes also the mtdparts variable in the
TAM3517 common configuration file.

Signed-off-by: Stefano Babic <sbabic@denx.de>
CC: Ilya Yanok <yanok@emcraft.com>
CC: Igor Grinberg <grinberg@compulab.co.il>
CC: Tom Rini <tom.rini@gmail.com>
Cc: Detlev Zundel <dzu@denx.de>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
12 years agoOMAP3: TAM3517: update ehci interface
Stefano Babic [Tue, 7 Feb 2012 23:28:58 +0000 (23:28 +0000)]
OMAP3: TAM3517: update ehci interface

Changed the EHCI interface using the ulpi framework.

Signed-off-by: Stefano Babic <sbabic@denx.de>
CC: Tom Rini <tom.rini@gmail.com>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
12 years agoOMAP4: ehci-omap: enable ehci-omap for panda boards
Govindraj.R [Mon, 6 Feb 2012 03:55:37 +0000 (03:55 +0000)]
OMAP4: ehci-omap: enable ehci-omap for panda boards

For panda initialise the mux pins for ehci usage and
enable ehci in omap4_panda config file.

Signed-off-by: Govindraj.R <govindraj.raja@ti.com>
Tested-by: Stefano Babic <sbabic@denx.de>
12 years agoOMAP4: clock-common: Move the usb dppl configuration to new func
Govindraj.R [Mon, 6 Feb 2012 03:55:36 +0000 (03:55 +0000)]
OMAP4: clock-common: Move the usb dppl configuration to new func

usb dpll configuration is done only part of non-essential
dppl configuration however if CONFIG_USB_EHCI_OMAP is defined
we may have to configure usb dpll's for proper functioning
of usb modules. So move the usb dppl configuration to a new func.
and utilise the same during essential dpll configuration.

Signed-off-by: Govindraj.R <govindraj.raja@ti.com>
Tested-by: Stefano Babic <sbabic@denx.de>
12 years agoOMAP3+: Clock: Adding ehci clock enabling
Govindraj.R [Mon, 6 Feb 2012 03:55:35 +0000 (03:55 +0000)]
OMAP3+: Clock: Adding ehci clock enabling

Adding ehci clock enabling mechanism part of clock framework.
When essential clocks are enabled during init phase usb host
clocks can also be enabled from clock framework.

Acked-by: Igor Grinberg <grinberg@compulab.co.il>
Signed-off-by: Govindraj.R <govindraj.raja@ti.com>
Tested-by: Stefano Babic <sbabic@denx.de>
12 years agoehci-omap: Clean up added ehci-omap.c
Govindraj.R [Mon, 6 Feb 2012 03:55:34 +0000 (03:55 +0000)]
ehci-omap: Clean up added ehci-omap.c

Clean up added ehci-omap.c and make it generic for re-use across
omap-soc having same ehci ip block. Also pass the modes to be configured
from board file and configure the ports accordingly. All usb layers
are not cache aligned, till then keep cache off for usb ops as ehci will use
internally dma for all usb ops.

* Add a generic common header ehci-omap.h having common ip block
  data and reg shifts.
* Rename and modify ehci-omap3 to ehci.h retain only conflicting
  sysc reg shifts remove others and move to common header file.
* pass the board data for beagle/panda accordinly to use
  ehci ports.

Acked-by: Igor Grinberg <grinberg@compulab.co.il>
Signed-off-by: Govindraj.R <govindraj.raja@ti.com>
12 years agoehci-omap: driver for EHCI host on OMAP3
Ilya Yanok [Mon, 6 Feb 2012 03:55:33 +0000 (03:55 +0000)]
ehci-omap: driver for EHCI host on OMAP3

Taken from Beagle code. Tested on mcx board (AM3517-based).

Signed-off-by: Ilya Yanok <yanok@emcraft.com>
Tested-by: Stefano Babic <sbabic@denx.de>
12 years agousb: ulpi: Add omap-ulpi-view port support
Govindraj.R [Mon, 6 Feb 2012 03:55:32 +0000 (03:55 +0000)]
usb: ulpi: Add omap-ulpi-view port support

Based on discussion from this thread [1].
Adding omap-view port that helps us in using the generic ulpi
framework for any ulpi phy ops using the INSNREG05_ULPI viewport
reg available on omap platform.

Currently ehci ports are available on omap3/4 platforms so enable the same
for beagle and panda, patch is tested on the same boards.

Thanks to Igor Grinberg <grinberg@compulab.co.il> for reviewing the
omap-ehci patches and suggesting this approach.

[1]: http://www.mail-archive.com/u-boot@lists.denx.de/msg76076.html

Tested-by: Stefano Babic <sbabic@denx.de>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
Signed-off-by: Govindraj.R <govindraj.raja@ti.com>
12 years agousb: ulpi: Extend the existing ulpi framework.
Govindraj.R [Mon, 6 Feb 2012 03:55:31 +0000 (03:55 +0000)]
usb: ulpi: Extend the existing ulpi framework.

Extend the existing ulpi viewport framework
to pass the port number information for any ulpi
ops. Fix the usage of ulpi api's accordingly.

Tested-by: Stefano Babic <sbabic@denx.de>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
Signed-off-by: Govindraj.R <govindraj.raja@ti.com>
12 years agoARM: Convert spear3xx and spear6xx boards to boards.cfg
Amit Virdi [Thu, 9 Feb 2012 00:25:33 +0000 (00:25 +0000)]
ARM: Convert spear3xx and spear6xx boards to boards.cfg

Signed-off-by: Amit Virdi <amit.virdi@st.com>
Acked-by: Stefan Roese <sr@denx.de>
12 years agoSMDK5250: Add ethernet support
Chander Kashyap [Thu, 9 Feb 2012 01:26:19 +0000 (01:26 +0000)]
SMDK5250: Add ethernet support

This patch enable support for SMC911X based ethernet device.

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoEXYNOS: SMDK5250: Add MMC SPL support
Chander Kashyap [Sun, 5 Feb 2012 23:01:48 +0000 (23:01 +0000)]
EXYNOS: SMDK5250: Add MMC SPL support

This patch adds support for MMC SPL booting.

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoEXYNOS: Add SMDK5250 board support
Chander Kashyap [Sun, 5 Feb 2012 23:01:47 +0000 (23:01 +0000)]
EXYNOS: Add SMDK5250 board support

SMDK5250 board is based on Samsungs EXYNOS5250 SoC.

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoARM: EXYNOS: Add support for Exynos5 based SoCs
Chander Kashyap [Sun, 5 Feb 2012 23:01:46 +0000 (23:01 +0000)]
ARM: EXYNOS: Add support for Exynos5 based SoCs

Samsung's ARM Cortex-A15 based SoCs are known as Exynos5 series of
SoCs. This patch adds the support for Exynos5.

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoExynos: Clock.c: Use CONFIG_SYS_CLK_FREQ macro
Chander Kashyap [Sun, 5 Feb 2012 23:01:45 +0000 (23:01 +0000)]
Exynos: Clock.c: Use CONFIG_SYS_CLK_FREQ macro

CONFIG_SYS_CLK_FREQ_C210 macro giving notion of S5PC2XX (Exynos4)
architecture. Replace CONFIG_SYS_CLK_FREQ_C210 with CONFIG_SYS_CLK_FREQ
to make it generic for exynos architecture.

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoTRATS: set gpio of UART correctly
Minkyu Kang [Thu, 26 Jan 2012 10:51:54 +0000 (19:51 +0900)]
TRATS: set gpio of UART correctly

Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
Signed-off-by: HeungJun, Kim <riverful.kim@samsung.com>
Cc: Chander Kashyap <chander.kashyap@linaro.org>
12 years agoTRATS: use the generic watchdog timer
Minkyu Kang [Wed, 18 Jan 2012 06:56:47 +0000 (15:56 +0900)]
TRATS: use the generic watchdog timer

Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Cc: HeungJun, Kim <riverful.kim@samsung.com>
12 years agoS5P: support generic watchdog timer
Minkyu Kang [Wed, 18 Jan 2012 06:55:05 +0000 (15:55 +0900)]
S5P: support generic watchdog timer

This patch adds support the generic watchdog timer for s5pc1xx and exynos4

Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Cc: HeungJun, Kim <riverful.kim@samsung.com>
12 years agoORIGEN: remove duplicated MACH_TYPE define
Minkyu Kang [Wed, 18 Jan 2012 08:36:35 +0000 (17:36 +0900)]
ORIGEN: remove duplicated MACH_TYPE define

Since MACH_TYPE_ORIGEN is updated on mach-types,
remove the MACH_TYPE_ORIGEN on config file.

Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
Cc: Chander Kashyap <chander.kashyap@linaro.org>
12 years agoARMV7: Exynos4: Add support for TRATS board
HeungJun, Kim [Mon, 16 Jan 2012 21:13:05 +0000 (21:13 +0000)]
ARMV7: Exynos4: Add support for TRATS board

This patch adds support for Samsung TRATS board

Signed-off-by: HeungJun, Kim <riverful.kim@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoARMV7: Exynos4: Add supoort power for Exynos4
HeungJun, Kim [Mon, 16 Jan 2012 21:13:04 +0000 (21:13 +0000)]
ARMV7: Exynos4: Add supoort power for Exynos4

This patch adds power.h and SAMSUNG_BASE() macro for using Exynos4 power.

Signed-off-by: HeungJun, Kim <riverful.kim@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoARMV7: Exynos4: Add watchdog.h for Exynos4
HeungJun, Kim [Mon, 16 Jan 2012 21:13:03 +0000 (21:13 +0000)]
ARMV7: Exynos4: Add watchdog.h for Exynos4

This patch add watchdog.h for Exynos4

Signed-off-by: HeungJun, Kim <riverful.kim@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoOrigen: Select SCLKMPLL as FIMD0 parent clock
Chander Kashyap [Sun, 18 Dec 2011 20:16:32 +0000 (20:16 +0000)]
Origen: Select SCLKMPLL as FIMD0 parent clock

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoExynos: Fix ARM Clock frequency calculation
Chander Kashyap [Sun, 18 Dec 2011 22:56:44 +0000 (22:56 +0000)]
Exynos: Fix ARM Clock frequency calculation

Earliar ARM clock frequency was calculated by:
MOUTAPLL/(DIVAPLL + 1) which is actually returning SCLKAPLL.
It is fixed by calculating it as follows:
ARMCLK=MOUTCORE / (DIVCORE + 1) / (DIVCORE2 + 1)

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoExynos: PWM: Add TCMPB3 field in pwm structure
Chander Kashyap [Sun, 18 Dec 2011 22:56:43 +0000 (22:56 +0000)]
Exynos: PWM: Add TCMPB3 field in pwm structure

Add TCMPB3 field in pwm structure, earliar this was res1.

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoarm/km: checkpatch cleanup
Holger Brunck [Wed, 14 Dec 2011 05:31:20 +0000 (05:31 +0000)]
arm/km: checkpatch cleanup

Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
Cc: Valentin Longchamp <valentin.longchamp@keymile.com>
Cc: Prafulla Wadaskar <prafulla@marvell.com>
Acked-by: Heiko Schocher <hs@denx.de>
12 years agoarm/km: speed up i2c access for keymile boards
Holger Brunck [Wed, 14 Dec 2011 05:31:19 +0000 (05:31 +0000)]
arm/km: speed up i2c access for keymile boards

We don't need 3us delay for our i2c bus. Decrease it to 1us.
It would also be possible to use 100ns in the future, but
currently kirkwood has no ndelay implementation.

Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
Cc: Valentin Longchamp <valentin.longchamp@keymile.com>
Cc: Prafulla Wadaskar <prafulla@marvell.com>
Cc: Heiko Schocher <hs@denx.de>
Acked-by: Heiko Schocher <hs@denx.de>
12 years agobugfix: all Marvell specific build fails due to undefined reference to `get_ticks'
Prafulla Wadaskar [Wed, 8 Feb 2012 08:45:53 +0000 (14:15 +0530)]
bugfix: all Marvell specific build fails due to undefined reference to `get_ticks'

after http://patchwork.ozlabs.org/patch/136415/ was applied. All Marvell
build fails with below error

common/libcommon.o: In function `cread_line':
/home/uboot/src/u-boot-arm/common/main.c:717: undefined reference to `get_ticks'
/home/uboot/src/u-boot-arm/common/main.c:717: undefined reference to `get_tbclk'
/home/uboot/src/u-boot-arm/common/main.c:720: undefined reference to `get_ticks'

The same is fixed for Kirkwood, ARMADA100, pantheon and orion5x SoCs

Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com>
12 years agokirkwood: add support for D-Link DNS-325
Stefan [Fri, 23 Dec 2011 06:35:04 +0000 (06:35 +0000)]
kirkwood: add support for D-Link DNS-325

This patch adds support for D-Link DNS-325 ShareCenter NAS.

Signed-off-by: Stefan Herbrechtsmeier <stefan@code.herbrechtsmeier.net>
Cc: prafulla@marvell.com
Cc: albert.u.boot@aribaud.net
12 years agoarm, arm-kirkwood: disable l2c before linux boot
Michael Walle [Mon, 6 Feb 2012 17:12:10 +0000 (22:42 +0530)]
arm, arm-kirkwood: disable l2c before linux boot

The decompressor expects the L2 cache to be disabled. This fixes booting
some kernels, which have CONFIG_ARM_PATCH_PHYS_VIRT enabled.

Signed-off-by: Michael Walle <michael@walle.cc>
Acked-by: Prafulla Wadaskar <prafulla@marvell.com>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Cc: Prafulla Wadaskar <prafulla@marvell.com>
Cc: Wolfgang Denk <wd@denx.de>
12 years agoedminiv2: add USB host support
Albert ARIBAUD [Sun, 15 Jan 2012 22:08:41 +0000 (22:08 +0000)]
edminiv2: add USB host support

Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
12 years agoorion5x: add USB host ehci-marvell support
Albert ARIBAUD [Sun, 15 Jan 2012 22:08:40 +0000 (22:08 +0000)]
orion5x: add USB host ehci-marvell support

Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
12 years agoRemove kirkwood-specifics from marvell EHCI driver
Albert ARIBAUD [Sun, 15 Jan 2012 22:08:39 +0000 (22:08 +0000)]
Remove kirkwood-specifics from marvell EHCI driver

Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
12 years agoRename ehci-kirkwood as ehci-marvell
Albert ARIBAUD [Mon, 6 Feb 2012 15:09:29 +0000 (20:39 +0530)]
Rename ehci-kirkwood as ehci-marvell

Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com>
12 years agoedminiv2: add hush parser, cmdline editing and long help
Albert ARIBAUD [Mon, 6 Feb 2012 15:02:19 +0000 (20:32 +0530)]
edminiv2: add hush parser, cmdline editing and long help

Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
12 years agokirkwood_spi: correct access to irq_mask register
Ian Campbell [Thu, 12 Jan 2012 06:10:22 +0000 (06:10 +0000)]
kirkwood_spi: correct access to irq_mask register

Problem appears to have been present since day one but masked because alignment
aborts were not enabled. ca4b55800ed7 "arm, arm926ejs: always do cpu critical
inits" turned on alignment aborts and uncovered this latent problem.

Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Acked-By: Jason Cooper <u-boot@lakedaemon.net>
Tested-By: Holger Brunck <holger.brunck@keymile.com>
Cc: Prafulla Wadaskar <prafulla@marvell.com>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
12 years agoARM: activate DISPLAY_CPUINFO for VCMA9 + SMDK2410 board
David Müller (ELSOFT AG) [Thu, 22 Dec 2011 01:19:25 +0000 (01:19 +0000)]
ARM: activate DISPLAY_CPUINFO for VCMA9 + SMDK2410 board

Signed-off-by: David Mueller <d.mueller@elsoft.ch>
Acked-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agoi.mx: i.mx5: update imx_get_mac_from_fuse function
Jason Liu [Tue, 31 Jan 2012 02:07:29 +0000 (02:07 +0000)]
i.mx: i.mx5: update imx_get_mac_from_fuse function

FEC does not work on the i.mx51/53evk board, it will hangup
In:    serial
Out:   serial
Err:   serial
Net:

After bisect, it due to the following commit:
be252b6 net: imx: Add multi-FEC support for imx_get_mac_from_fuse
has change the imx_get_mac_from_fuse fucntion prototype, but fail
to update i.mx5, here it does it.

After apply this patch, u-boot works again on i.mx51/53 evk boards.

Signed-off-by: Jason Liu <jason.hui@linaro.org>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agott01: add MMC support
Helmut Raiger [Wed, 18 Jan 2012 21:27:13 +0000 (21:27 +0000)]
tt01: add MMC support

board_mmc_init() initializes the pins of SDHC1 and
turns on V_MMC1 of the PMIC. Config adds support for EXT2
and FAT.

Signed-off-by: Helmut Raiger <helmut.raiger@hale.at>
12 years agomc13783.h: create and add regulator mode 0 and 1
Helmut Raiger [Wed, 18 Jan 2012 00:41:03 +0000 (00:41 +0000)]
mc13783.h: create and add regulator mode 0 and 1

Add bit definitions for register 32 and 33 of Freescale MC13783.

Signed-off-by: Helmut Raiger <helmut.raiger@hale.at>
12 years agomx28: fix i.MX28 spi driver
Matthias Fuchs [Sat, 14 Jan 2012 02:25:25 +0000 (02:25 +0000)]
mx28: fix i.MX28 spi driver

The generic spi flash driver (drivers/mtd/spi/spi_flash.c) uses the
spi low level driver's spi_xfer() function with len=0 to deassert the
SPI flash' chip select. But the i.MX28 spi driver rejects this call
due to len=0.

This patch implements an exception for len=0 with the SPI_XFER_END
flag set. This results in an extra read with the chip select being
deasserted afterwards. There seems to be no way to deassert the signal
by hand.

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd.eu>
Tested-by: Fabio Estevam <fabio.estevam@freescale.com>
12 years agomx28: Show CPU frequency
Fabio Estevam [Sun, 22 Jan 2012 16:38:08 +0000 (16:38 +0000)]
mx28: Show CPU frequency

Showing CPU frequency during boot is useful information.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agoimx6: mx6qarm2: updated board_mmc_getcd() to the new prototype
Stefano Babic [Tue, 17 Jan 2012 11:15:00 +0000 (12:15 +0100)]
imx6: mx6qarm2: updated board_mmc_getcd() to the new prototype

Commit 314284b1567f1ce29c19060641e7f213146f7ab8 has
changed board_mmc_getcd() function prototype, while
mx6qarm2 has still the old one.

Signed-off-by: Stefano Babic <sbabic@denx.de>
CC: Jason Liu <jason.hui@linaro.org>
Acked-by: Dirk Behme <dirk.behme@de.bosch.com>
Acked-by: Jason Liu <jason.hui@linaro.org>
Tested-by: Jason Liu <jason.hui@linaro.org>
12 years agoconfigs: Remove CONFIG_NET_MULTI from board files
Fabio Estevam [Sun, 15 Jan 2012 05:03:08 +0000 (05:03 +0000)]
configs: Remove CONFIG_NET_MULTI from board files

CONFIG_NET_MULTI is not used anymore, so remove it from board files.

Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Kumar Gala <kumar.gala@freescale.com>
Cc: Sandeep Paulraj <s-paulraj@ti.com>
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Tom Rini <trini@ti.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
Acked-by: Heiko Schocher <hs@denx.de>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Stefano Babic <sbabic@denx.de>
Tested-by: Marek Vasut <marek.vasut@gmail.com>
Tested-by: Heiko Schocher <hs@denx.de>
12 years agommc: access mxcmmc from mx31 boards
Helmut Raiger [Wed, 11 Jan 2012 03:59:22 +0000 (03:59 +0000)]
mmc: access mxcmmc from mx31 boards

This patch modifies mxcmmc.c to be used
not only by i.MX27 but also by i.MX31 boards.
Both use the same SD controller, but have different
clock set-ups.
The i.MX27 imx_get_XXXclock functions are made static to
generic.c and a public mxc_get_clock() function
is provided.  Pins, base address and prototypes for
an i.MX31 specific board_init_mmc() are provided.
Some of the i.MX27 clock getters are unused and marked
as such to avoid warnings (./MAKEALL -s mx27), but
the code was left in for future use.

Signed-off-by: Helmut Raiger <helmut.raiger@hale.at>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agoi.mx6q: mx6qsabrelite: Add the ethernet function support
Jason Liu [Thu, 12 Jan 2012 22:56:16 +0000 (22:56 +0000)]
i.mx6q: mx6qsabrelite: Add the ethernet function support

Signed-off-by: Jason Liu <jason.hui@linaro.org>
Signed-off-by: Eric Miao <eric.miao@linaro.org>
CC: Jason Liu <jason.hui@linaro.org>
CC: Stefano Babic <sbabic@denx.de>
12 years agoi.mx6q: configs: Add fdt_high and initrd_high variables
Dirk Behme [Thu, 12 Jan 2012 23:49:24 +0000 (23:49 +0000)]
i.mx6q: configs: Add fdt_high and initrd_high variables

To be able to load the device tree and initrd correctly, set
the fdt_high and initrd_high environment variables.

Using 0xffffffff implies that the device tree and the initrd
are initially copied to working addresses. This will avoid an
additional copy.

Loading the device tree to 0x30000000 and the initrd to 0x3c000000
should work for both boards, the ARM2 and SabreLite.

Example (SabreLite):

fatload mmc 0:2 0x10000000 uImage
fatload mmc 0:2 0x3c000000 uInitrd
fatload mmc 0:2 0x30000000 board.dtb
bootm 0x10000000 0x3c000000 0x30000000

Note: This requires that the kernel has CONFIG_HIGHMEM enabled.

Signed-off-by: Dirk Behme <dirk.behme@de.bosch.com>
CC: Jason Liu <jason.hui@linaro.org>
CC: Stefano Babic <sbabic@denx.de>
Acked-by: Jason Liu <jason.hui@linaro.org>
12 years agoi.mx6q: mx6qsabrelite: Setup uart1 pinmux
Troy Kisky [Thu, 12 Jan 2012 23:49:25 +0000 (23:49 +0000)]
i.mx6q: mx6qsabrelite: Setup uart1 pinmux

This allows the Linux kernel to use UART1 before pinmux
support is added for UART1

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
CC: Troy Kisky <troy.kisky@boundarydevices.com>
CC: Jason Liu <jason.hui@linaro.org>
CC: Stefano Babic <sbabic@denx.de>
Acked-by: Jason Liu <jason.hui@linaro.org>
12 years agoi.mx6: mx6x_pins: Fix uart txd definitions
Troy Kisky [Thu, 12 Jan 2012 23:49:23 +0000 (23:49 +0000)]
i.mx6: mx6x_pins: Fix uart txd definitions

The uart txd pad can also provide the rxd function. But it does not stop its
tx role. This could be used for a half duplex serial port.

Change names to reduce confusion.

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
CC: Troy Kisky <troy.kisky@boundarydevices.com>
CC: Jason Liu <jason.hui@linaro.org>
CC: Stefano Babic <sbabic@denx.de>
Acked-by: Jason Liu <jason.hui@linaro.org>
12 years agoimximage: Sort bootops alphabetically
Dirk Behme [Wed, 11 Jan 2012 23:28:32 +0000 (23:28 +0000)]
imximage: Sort bootops alphabetically

Signed-off-by: Dirk Behme <dirk.behme@de.bosch.com>
CC: Fabio Estevam <festevam@gmail.com>
CC: Stefano Babic <sbabic@denx.de>
CC: Jason Liu <jason.hui@linaro.org>
Acked-by: Jason Liu <jason.hui@linaro.org>
12 years agoimximage: Add support for i.MX6
Dirk Behme [Wed, 11 Jan 2012 23:28:31 +0000 (23:28 +0000)]
imximage: Add support for i.MX6

The i.MX6 processor can boot from NOR flash and SATA disks,
additionally. Add the flash offsets for these additional
boot modes.

Signed-off-by: Dirk Behme <dirk.behme@de.bosch.com>
Signed-off-by: Fabio Estevam <festevam@gmail.com>
CC: Stefano Babic <sbabic@denx.de>
CC: Jason Liu <jason.hui@linaro.org>
Acked-by: Jason Liu <jason.hui@linaro.org>
12 years agoimximage: Add MX53 to the documentation
Dirk Behme [Wed, 11 Jan 2012 23:28:30 +0000 (23:28 +0000)]
imximage: Add MX53 to the documentation

i.MX53 is supported, too. Add this to the introduction of the
documentation.

Signed-off-by: Dirk Behme <dirk.behme@de.bosch.com>
CC: Fabio Estevam <festevam@gmail.com>
CC: Stefano Babic <sbabic@denx.de>
CC: Jason Liu <jason.hui@linaro.org>
12 years agosdhc_boot: Introduce CONFIG_FSL_FIXED_MMC_LOCATION option
Fabio Estevam [Wed, 11 Jan 2012 09:20:50 +0000 (09:20 +0000)]
sdhc_boot: Introduce CONFIG_FSL_FIXED_MMC_LOCATION option

Since commit 97039ab98 (env_mmc: Allow board code to override the environment address)
mmc_get_env_addr is a weak-aliased function in common/env_mmc.c

The mmc_get_env_addr implementation that exists at
board/freescale/common/sdhc_boot.c is meant to be used only for PowerPC boards,
but currently it is being used for all platforms that have CONFIG_ENV_IS_IN_MMC defined.

Introduce CONFIG_FSL_FIXED_MMC_LOCATION so that the boards that need to use
the mmc_get_env_addr version from board/freescale/common/sdhc_boot.c could activate
this config option on their board file.

This fixes the retrieval of CONFIG_ENV_OFFSET on non-PowerPC boards.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agoarm, davinci: cam_enc_4xx board updates
Heiko Schocher [Mon, 16 Jan 2012 21:20:09 +0000 (21:20 +0000)]
arm, davinci: cam_enc_4xx board updates

- CONFIG_SYS_MMC_ENV_DEV, needed if environment on mmc
- wait for 1 second timer in board_late_init() only, if
  timer is running.
- add UBI/UBIFS support
- add FIT images support
- menu support
- U-Boot max size now 0xa0000
- SPL now Block 0 page 0
- new MTD partitioning
  0x00000000 SPL
  0x00020000 UBL-Header
  0x00040000 UBL-Header
  0x00060000 UBL-Header
  0x00080000 UBoot (0xa0000(U-Boot length) + 0x60000(3 spare blocks))
  0x00180000 ENV- Variablen (1)
  0x001a0000 ENV- Variablen (2)
  0x001c0000 ENV- Variablen (reserved for Bad Block)
  0x001e0000 ENV- Variablen (reserved for Bad Block)
  0x00200000 UBI-Device

  UBI Volumes:
  „default“:  contain environment-default values
  „rootfs1“:  UBIFS root-fs (1); contain linux kernel image
  „rootfs2“:  UBIFS root-fs (2); contain linux kernel image
  „data-ro“:  UBIFS data (read only)
  „data-rw“:  UBIFS data (read/write)

- new environment variables:
  - app_reset
    (this is only passed per cmdline to linux)
  - dvn_app_vers
    string from ramdisk description contained in the
    FIT image
  - dvn_boot_vers
    string from ubootimage description contained in the
    FIT image
  - saveparms, restoreparms, restoretmpparms, savetmpparms
    helper for saving network parameter.
  - ubiargs
    set ubi kernel cmdlinargs for booting with a ubifs rootfs
  - ubi_ubi boot with reading kernel image from ubifs, and
    use a ubifs as rootfs

Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Sandeep Paulraj <s-paulraj@ti.com>
Cc: Tom Rini <tom.rini@gmail.com>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Wolfgang Denk <wd@denx.de>
12 years agocommon, menu: do not trigger timeout again, if a line is read
Heiko Schocher [Mon, 16 Jan 2012 22:24:29 +0000 (22:24 +0000)]
common, menu: do not trigger timeout again, if a line is read

Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Jason Hobbs <jason.hobbs@calxeda.com>
Acked-by: Jason Hobbs <jason.hobbs@calxeda.com>
12 years agocommon, menu: show menu on startup if CONFIG_MENU_SHOW is defined
Heiko Schocher [Mon, 16 Jan 2012 21:13:35 +0000 (21:13 +0000)]
common, menu: show menu on startup if CONFIG_MENU_SHOW is defined

show a menu on startup instead running the shell.

Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Jason Hobbs <jason.hobbs@calxeda.com>
Cc: Mike Frysinger <vapier@gentoo.org>
Acked-by: Jason Hobbs <jason.hobbs@calxeda.com>
12 years agocommon, menu: add statusline support
Heiko Schocher [Mon, 16 Jan 2012 21:13:20 +0000 (21:13 +0000)]
common, menu: add statusline support

add the possibility to show a statusline when printing a menu

Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Jason Hobbs <jason.hobbs@calxeda.com>
Cc: Mike Frysinger <vapier@gentoo.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
12 years agocommon: add possibility for readline_into_buffer timeout
Heiko Schocher [Mon, 16 Jan 2012 21:13:05 +0000 (21:13 +0000)]
common: add possibility for readline_into_buffer timeout

add possibility to add a timeout when reading a line
into a buffer.

Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Mike Frysinger <vapier@gentoo.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
12 years agoarm, davinci: add timer defines for tcr field
Heiko Schocher [Sat, 14 Jan 2012 21:43:04 +0000 (21:43 +0000)]
arm, davinci: add timer defines for tcr field

Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Sandeep Paulraj <s-paulraj@ti.com>
Cc: Tom Rini <tom.rini@gmail.com>
12 years agoarm, davinci: add workaround for not resetting DMA bus and VPSS modules
Heiko Schocher [Sat, 14 Jan 2012 21:42:46 +0000 (21:42 +0000)]
arm, davinci: add workaround for not resetting DMA bus and VPSS modules

The Buffer Logic of VPSS is Not Reset by System Reset Pin, see
http://www.ti.com/lit/er/sprz316b/sprz316b.pdf chapter Advisory 1.2.1
on page 9. Add workaroundcode proposed in the errata.

Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Sandeep Paulraj <s-paulraj@ti.com>
Cc: Tom Rini <tom.rini@gmail.com>
12 years agoOMAP SPL: Fix missing timer_init() call in OMAP4 s_init()
Dechesne, Nicolas [Tue, 31 Jan 2012 07:35:40 +0000 (07:35 +0000)]
OMAP SPL: Fix missing timer_init() call in OMAP4 s_init()

In 8775471bb, the call to timer_init() was removed from common code
and put in OMAP3 s_init() function. As a result the boot was broken
on OMAP4. This patch adds timer_init() in OMAP4 s_init(), that fix
boot on all OMAP4 boards.

Signed-off-by: Nicolas Dechesne <n-dechesne@ti.com>
Tested-by: Robert P. J. Day <rpjday@crashcourse.ca>
Cc: Sandeep Paulraj <s-paulraj@ti.com>
Cc: Tom Rini <trini@ti.com>
12 years agoOMAP3: Add Corscience Tricorder board
Thomas Weber [Sat, 28 Jan 2012 09:25:46 +0000 (09:25 +0000)]
OMAP3: Add Corscience Tricorder board

Tricorder is a board which is very similar to the Devkit8000. It
is designed as a base platform for further medical devices.

www.corscience.de/en/medical-engineering/products/multiparameter/mp10-board.html

Signed-off-by: Thomas Weber <weber@corscience.de>
12 years agoOMAP3: Correct get_sdr_cs_offset mask
Tom Rini [Wed, 18 Jan 2012 08:28:50 +0000 (08:28 +0000)]
OMAP3: Correct get_sdr_cs_offset mask

The function get_sdr_cs_offset reads the CS_CFG register in the SDRC
to determine where CS1 is mapped to.  make_cs1_contiguous() will set
CS1 to follow after CS0.  The CS_CFG register has values in bits 9:8
and 3:0 but we had erroneously been testing 5:4 and 3:0 resulting in
incorrect offsets on platforms with less than 128MB as 3:0 describe
128MB hunks and 9:8 describe 32MB offsets after the 128MB hunk.

Tested-by: Grant Erickson <marathon96@gmail.com>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoBeagleboard: Correct memory size on rev C4
robertcnelson@gmail.com [Fri, 27 Jan 2012 07:09:42 +0000 (07:09 +0000)]
Beagleboard: Correct memory size on rev C4

The logic for the rev C4 boards was missing one of the cases
(variant with Micron NAND and 2x128MB).

Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
12 years agoam3517evm: remove rootfstype kernel parameter for MMC boot device
Yegor Yefremov [Mon, 18 Jul 2011 13:44:42 +0000 (15:44 +0200)]
am3517evm: remove rootfstype kernel parameter for MMC boot device

it is not necessary to define rootfstype for mass storage devices.
Kernel detects it automatically.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
12 years agoarm: omap3: Define save_boot_params in lowlevel_init.S for SPL only
Pali Rohár [Tue, 24 Jan 2012 04:27:58 +0000 (04:27 +0000)]
arm: omap3: Define save_boot_params in lowlevel_init.S for SPL only

Wrap the function save_boot_params with CONFIG_SPL_BUILD.  This will
allow non-SPL boards to define their own save_boot_params functions
in U-Boot itself.

Signed-off-by: Pali Rohár <pali.rohar@gmail.com>
12 years agoarm, davinci: add PLL0 prediv to da850 lowlevel setup
Ben Gardiner [Mon, 16 Jan 2012 07:43:15 +0000 (07:43 +0000)]
arm, davinci: add PLL0 prediv to da850 lowlevel setup

The OMAP-L138 has a pre-divider available on PLL0.

Add support to da850_lowlevel.c for configuring PLL0's pre-divider. This is
to achieve certain OPP's -- e.g. the 372MHz OPP used also by Linux.

Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
Cc: Christian Riesch <christian.riesch@omicron.at>
CC: Heiko Schocher <hs@denx.de>
Cc: Sandeep Paulraj <s-paulraj@ti.com>
Cc: Tom Rini <tom.rini@gmail.com>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Acked-by: Heiko Schocher <hs@denx.de>
Acked-by: Christian Riesch <christian.riesch@omicron.at>
12 years agotegra2: Enable data cache
Simon Glass [Mon, 9 Jan 2012 13:22:15 +0000 (13:22 +0000)]
tegra2: Enable data cache

This enables the data cache on Tegra2 boards.

As discussed on the list, this is better off in the Tegra2 cpu code than in a
particular vendor directory. We should be safe turning on the cache for all
Tegra2 boards.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra: mmc: Support operation with dcache enabled
Simon Glass [Mon, 9 Jan 2012 13:20:40 +0000 (13:20 +0000)]
tegra: mmc: Support operation with dcache enabled

When the data cache is enabled we must flush on write and invalidate
on read. We also check that buffers are aligned to data cache lines
boundaries. With recent work in U-Boot this should generally be the case
but the warnings will catch problems.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra: Use funcmux for MMC on seaboard
Simon Glass [Wed, 11 Jan 2012 12:42:28 +0000 (12:42 +0000)]
tegra: Use funcmux for MMC on seaboard

Use the new funcmux_select() feature to set up the MMC pin mux.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra: Use funcmux for MMC on harmony
Simon Glass [Wed, 11 Jan 2012 12:42:27 +0000 (12:42 +0000)]
tegra: Use funcmux for MMC on harmony

Use the new funcmux_select() feature to set up the MMC pin mux.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra: Use funcmux for MMC on tamonten
Simon Glass [Wed, 11 Jan 2012 12:42:26 +0000 (12:42 +0000)]
tegra: Use funcmux for MMC on tamonten

Use the new funcmux_select() feature to set up the MMC pin mux.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra: Add SDMMC support to funcmux
Simon Glass [Wed, 11 Jan 2012 12:42:25 +0000 (12:42 +0000)]
tegra: Add SDMMC support to funcmux

This adds support for SDMMC ports to the funcmux. Only one
option is supported: FUNCMUXO_SDMMC_8BIT which selects an 8-bit
wide SDIO interface where available.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra: Add I2C support to funcmux
Simon Glass [Wed, 11 Jan 2012 12:42:24 +0000 (12:42 +0000)]
tegra: Add I2C support to funcmux

Add support to funcmux for selecting I2C functions and programming
the pinmux appropriately.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra: Add enum to select from available funcmux configs
Simon Glass [Wed, 11 Jan 2012 12:42:23 +0000 (12:42 +0000)]
tegra: Add enum to select from available funcmux configs

We want to give a name to each available funcmux config. For now we just
use the pin group names (even through it is verbose) since there seems
to be nothing better.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra: Adjust funcmux config test to permit expansion
Simon Glass [Wed, 11 Jan 2012 12:42:22 +0000 (12:42 +0000)]
tegra: Adjust funcmux config test to permit expansion

We want to support config options other than zero, so move the test to the
end to allow intermediate code to OK such a config.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Add support for Compal Paz00 (Toshiba AC100)
Stephen Warren [Fri, 6 Jan 2012 12:14:42 +0000 (12:14 +0000)]
tegra2: Add support for Compal Paz00 (Toshiba AC100)

The Toshiba AC100 (Compal code-name Paz00, aka Dynabook AZ) is a netbook
derived from the NVIDIA Tegra Harmony reference board. It ships with
Android, but is often repurposed to run Linux. This patch adds just enough
support to get a U-Boot serial console, and the ability access built-in
eMMC and the external SD slot.

v2:
* Rebased on latest HEAD, incorporated changes made to other board files.
* Moved board files from board/nvidia to board/compal.
* Switched to correct odmdata value. This required add the previous patch
  to fix U-Boot's interpretation of the odmdata RAM size field.
* Removed nvmem= from default Linux kernel command-line; no drivers use the
  reserved memory yet, so there's no point reserving it.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Fix default RAM size selection in odmdata
Stephen Warren [Fri, 6 Jan 2012 12:14:41 +0000 (12:14 +0000)]
tegra2: Fix default RAM size selection in odmdata

A value of 0 in the odmdata RAM size field means default, which is 512MB
not 1GB. Fix this. For reference, see:

http://nv-tegra.nvidia.com/gitweb/?p=linux-2.6.git;a=blob;\
f=arch/arm/mach-tegra/odm_kit/query/harmony/tegra_devkit_custopt.h;\
h=1ec7010911454f19a5018952fd245785a62c59ad;\
hb=0e52d7fe25b11a656c376a37890be219470661fb

v2: New patch

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Fix conflicting pinmux for UARTA
Stephen Warren [Fri, 6 Jan 2012 12:14:40 +0000 (12:14 +0000)]
tegra2: Fix conflicting pinmux for UARTA

Tegra appears to boot with function UARTA pre-selected on mux
group SDB. If two mux groups are both set to the same function,
it's unclear which group's pins drive the RX signals into the
HW module. For UARTA, SDB certainly overrides group IRTX in
practice. To solve this, configure some alternative function on
SDB to avoid the conflict. Also, tri-state the group to avoid
driving any signal onto it until we know what's connected.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agofw_env.h: fix comment
Frans Meulenbroeks [Thu, 5 Jan 2012 08:09:10 +0000 (08:09 +0000)]
fw_env.h: fix comment

made description according to implementation
(where the config file is the default).

Signed-off-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
12 years agoMerge branch 'master' of /home/wd/git/u-boot/custodians
Wolfgang Denk [Sat, 11 Feb 2012 21:16:50 +0000 (22:16 +0100)]
Merge branch 'master' of /home/wd/git/u-boot/custodians

* 'master' of /home/wd/git/u-boot/custodians:
  add STM29F400BB to table of supported legacy flashs
  * Fix: watchdog timed out, if flash blank (0xFF) blocks

12 years agoMerge branch 'master' of git://git.denx.de/u-boot-cfi-flash
Wolfgang Denk [Sat, 11 Feb 2012 21:16:47 +0000 (22:16 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-cfi-flash

* 'master' of git://git.denx.de/u-boot-cfi-flash:
  add STM29F400BB to table of supported legacy flashs
  * Fix: watchdog timed out, if flash blank (0xFF) blocks

12 years agoMerge branch 'master' of /home/wd/git/u-boot/custodians
Wolfgang Denk [Sat, 11 Feb 2012 21:14:56 +0000 (22:14 +0100)]
Merge branch 'master' of /home/wd/git/u-boot/custodians

* 'master' of /home/wd/git/u-boot/custodians:
  nand/fsl_elbc: Convert to self-init
  nand: Introduce CONFIG_SYS_NAND_SELF_INIT
  nand_spl: store ecc data on the stack
  mtd/nand: Add ONFI support for FSL NAND controller
  nand: make 1-bit software ECC configurable
  nand: Sanitize ONFI strings.
  nand: Merge changes to BBT from Linux nand driver
  nand: Merge changes from Linux nand driver
  nand: cleanup whitespace
  nand: Add more NAND types from Linux nand driver
  nand: Merge BCH code from Linux nand driver
  NAND: Remove additional (CONFIG_SYS)_NAND_MAX_CHIPS
  NAND: remove NAND_MAX_CHIPS definitions
  nand_spl_simple: store ecc data on the stack

12 years agoMerge branch 'master' of git://git.denx.de/u-boot-nand-flash
Wolfgang Denk [Sat, 11 Feb 2012 21:07:48 +0000 (22:07 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-nand-flash

* 'master' of git://git.denx.de/u-boot-nand-flash:
  nand/fsl_elbc: Convert to self-init
  nand: Introduce CONFIG_SYS_NAND_SELF_INIT
  nand_spl: store ecc data on the stack
  mtd/nand: Add ONFI support for FSL NAND controller
  nand: make 1-bit software ECC configurable
  nand: Sanitize ONFI strings.
  nand: Merge changes to BBT from Linux nand driver
  nand: Merge changes from Linux nand driver
  nand: cleanup whitespace
  nand: Add more NAND types from Linux nand driver
  nand: Merge BCH code from Linux nand driver
  NAND: Remove additional (CONFIG_SYS)_NAND_MAX_CHIPS
  NAND: remove NAND_MAX_CHIPS definitions
  nand_spl_simple: store ecc data on the stack

12 years agoMerge branch 'master' of /home/wd/git/u-boot/custodians
Wolfgang Denk [Sat, 11 Feb 2012 21:05:13 +0000 (22:05 +0100)]
Merge branch 'master' of /home/wd/git/u-boot/custodians

* 'master' of /home/wd/git/u-boot/custodians:
  ARM: AM33XX: Add i2c support
  ARM: AM33XX: Add AM33XX I2C driver support
  ARM: I2C: I2C Multi byte address support

12 years agoadd STM29F400BB to table of supported legacy flashs
David Müller (ELSOFT AG) [Mon, 6 Feb 2012 08:42:54 +0000 (09:42 +0100)]
add STM29F400BB to table of supported legacy flashs

Signed-off-by: David Mueller <d.mueller@elsoft.ch>
Signed-off-by: Stefan Roese <sr@denx.de>
12 years ago* Fix: watchdog timed out, if flash blank (0xFF) blocks
Jens Scharsig (BuS Elektronik) [Fri, 27 Jan 2012 08:29:53 +0000 (09:29 +0100)]
* Fix: watchdog timed out, if flash blank (0xFF) blocks

The current implementation of cfi_flash uses udelay to reset watchdog.
If several blocks are blank (0xff filled) the watchdog timed out.
The reason is, udelay is never called, if flash device is ready to fast.

e.g.
     mw.w $(copy_addr) FFFF 10000;cp.b $(copy_addr) 10880000 20000

     -> watchdog timed out

     mw.w $(copy_addr) 0000 10000;cp.b $(copy_addr) 10880000 20000

     -> watchdog not timed out

This patch adds an extra watchdog reset in front of flash ready check.

Signed-off-by: Jens Scharsig (BuS Elektronik) <esw@bus-elektronik.de>
Signed-off-by: Stefan Roese <sr@denx.de>
12 years agonand/fsl_elbc: Convert to self-init
Scott Wood [Fri, 13 Jan 2012 01:42:58 +0000 (19:42 -0600)]
nand/fsl_elbc: Convert to self-init

This driver doesn't yet make use of the added flexibility (not that that
should stop anyone from converting...), but it will with the in-progress
hack to support 4k-page NAND.

Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agonand: Introduce CONFIG_SYS_NAND_SELF_INIT
Scott Wood [Fri, 13 Jan 2012 01:07:23 +0000 (19:07 -0600)]
nand: Introduce CONFIG_SYS_NAND_SELF_INIT

This allows a driver to run code between nand_scan_ident() and
nand_scan_tail(), among other things.  See the additions to
doc/README.nand for details.

To allow a gradual transition, Boards that don't set
CONFIG_SYS_NAND_SELF_INIT will still be initialized the old way, but
new drivers should not require this, and existing drivers should be
converted when convenient.

Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agonand_spl: store ecc data on the stack
Scott Wood [Wed, 11 Jan 2012 21:41:01 +0000 (15:41 -0600)]
nand_spl: store ecc data on the stack

Adapt the following patch from spl to nand_spl:

  Author: Stefano Babic <sbabic@denx.de>
  Date:   Thu Dec 15 10:55:37 2011 +0100

      nand_spl_simple: store ecc data on the stack

      Currently nand_spl_simple puts it's temp data at 0x10000 offset in SDRAM
      which is likely to contain already loaded data.
      The patch saves the oob data and the ecc on the stack replacing
      the fixed address in RAM.

Signed-off-by: Stefano Babic <sbabic@denx.de>
CC: Ilya Yanok <yanok@emcraft.com>
CC: Scott Wood <scottwood@freescale.com>
CC: Tom Rini <tom.rini@gmail.com>
CC: Simon Schwarz <simonschwarzcor@googlemail.com>
CC: Wolfgang Denk <wd@denx.de>
Signed-off-by: Scott Wood <scottwood@freescale.com>
While nand_spl is on its way out, in favor of spl, there are still
many boards using it, and conversions are gradual.  This allows us
to get rid of CONFIG_SYS_NAND_ECCSTEPS and CONFIG_SYS_NAND_ECCTOTAL now,
which would otherwise be likely to linger unreferenced after a conversion.

It also eliminates a temporary error in the hawkboard_nand build, since
the spl version of the patch removed ECCSTEPS/TOTAL from hawkboard.h, but
the spl conversion is pending (and may be merged via a different tree).

Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agomtd/nand: Add ONFI support for FSL NAND controller
Shengzhou Liu [Mon, 12 Dec 2011 09:49:57 +0000 (17:49 +0800)]
mtd/nand: Add ONFI support for FSL NAND controller

- fix NAND_CMD_READID command for ONFI detect.
- add NAND_CMD_PARAM command to read the ONFI parameter page.

Signed-off-by: Shengzhou Liu <Shengzhou.Liu@freescale.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agonand: make 1-bit software ECC configurable
Christian Hitz [Wed, 12 Oct 2011 07:32:06 +0000 (09:32 +0200)]
nand: make 1-bit software ECC configurable

The software ECC algorithm is not necessary when hardware ECC
is available and can be left out for a smaller image size.
Enable with CONFIG_MTD_ECC_SOFT.

Signed-off-by: Christian Hitz <christian.hitz@aizo.com>
Cc: Scott Wood <scottwood@freescale.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agonand: Sanitize ONFI strings.
Christian Hitz [Wed, 12 Oct 2011 07:32:05 +0000 (09:32 +0200)]
nand: Sanitize ONFI strings.

[backport from linux commit 02f8c6aee8df3cdc935e9bdd4f2d020306035dbe]

This is part of the synchronization with the nand driver to the
Linux 3.0 state.

Signed-off-by: Christian Hitz <christian.hitz@aizo.com>
Cc: Scott Wood <scottwood@freescale.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agonand: Merge changes to BBT from Linux nand driver
Christian Hitz [Wed, 12 Oct 2011 07:32:04 +0000 (09:32 +0200)]
nand: Merge changes to BBT from Linux nand driver

[backport from linux commit 02f8c6aee8df3cdc935e9bdd4f2d020306035dbe]

This patch synchronizes the nand driver with the Linux 3.0 state.

Signed-off-by: Christian Hitz <christian.hitz@aizo.com>
Cc: Scott Wood <scottwood@freescale.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agonand: Merge changes from Linux nand driver
Christian Hitz [Wed, 12 Oct 2011 07:32:02 +0000 (09:32 +0200)]
nand: Merge changes from Linux nand driver

[backport from linux commit 02f8c6aee8df3cdc935e9bdd4f2d020306035dbe]

This patch synchronizes the nand driver with the Linux 3.0 state.

Signed-off-by: Christian Hitz <christian.hitz@aizo.com>
Cc: Scott Wood <scottwood@freescale.com>
[scottwood@freescale.com: minor fixes]
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agonand: cleanup whitespace
Christian Hitz [Wed, 12 Oct 2011 07:32:01 +0000 (09:32 +0200)]
nand: cleanup whitespace

Bring up to date with corresponding file from linux.

Signed-off-by: Christian Hitz <christian.hitz@aizo.com>
Cc: Scott Wood <scottwood@freescale.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agonand: Add more NAND types from Linux nand driver
Christian Hitz [Wed, 12 Oct 2011 07:32:00 +0000 (09:32 +0200)]
nand: Add more NAND types from Linux nand driver

[backport from linux commit 02f8c6aee8df3cdc935e9bdd4f2d020306035dbe]

This patch merges the additional NAND flash types from the 3.0 Linux
kernel.

Signed-off-by: Christian Hitz <christian.hitz@aizo.com>
Cc: Scott Wood <scottwood@freescale.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agonand: Merge BCH code from Linux nand driver
Christian Hitz [Wed, 12 Oct 2011 07:31:59 +0000 (09:31 +0200)]
nand: Merge BCH code from Linux nand driver

[backport from linux commit 02f8c6aee8df3cdc935e9bdd4f2d020306035dbe]

This patch merges the BCH ECC algorithm from the 3.0 Linux kernel.
This enables U-Boot to support modern NAND flash chips that
require more than 1-bit of ECC in software.

Signed-off-by: Christian Hitz <christian.hitz@aizo.com>
Cc: Scott Wood <scottwood@freescale.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agoNAND: Remove additional (CONFIG_SYS)_NAND_MAX_CHIPS
Scott Wood [Thu, 5 Jan 2012 23:24:13 +0000 (17:24 -0600)]
NAND: Remove additional (CONFIG_SYS)_NAND_MAX_CHIPS

NAND_MAX_CHIPS has been replaced by CONFIG_SYS_NAND_MAX_CHIPS,
and the latter defaults to 1.

Signed-off-by: Scott Wood <scottwood@freescale.com>