platform/kernel/u-boot.git
12 years agoi.mx: add the initial support for freescale i.MX6Q processor
Jason Liu [Fri, 25 Nov 2011 00:18:02 +0000 (00:18 +0000)]
i.mx: add the initial support for freescale i.MX6Q processor

i.MX6Q is freescale quad core processors with ARM cortex_a9 complex.
This patch is to add the initial support for this processor.

Signed-off-by: Jason Liu <jason.hui@linaro.org>
Cc:Stefano Babic <sbabic@denx.de>

12 years agoi.mx: introduce the armv7/imx-common folder
Jason Liu [Fri, 25 Nov 2011 00:18:01 +0000 (00:18 +0000)]
i.mx: introduce the armv7/imx-common folder

In order to support the coming MX6 platform and to reducde
the duplicated code, we had better move some common files
or functions to the imx-common folder for sharing.

This patch does the following:
- move speed.c file from armv7/mx5/speed.c to armv7/imx-common/speed.c
- move armv7/mx5/timer.c to armv7/imx-common/timer.c, no any new feature
  added but just fix the checkpatch errors in the old file and remove
  the CONFIG_SYS_MX5_CLK32 reference in the file
- create one new file cpu.c file to store the common function with i.mx5/6

Signed-off-by: Jason Liu <jason.hui@linaro.org>
Cc:Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agoS5PC2XX: Rename S5pc2XX to exynos
Chander Kashyap [Tue, 6 Dec 2011 23:34:12 +0000 (23:34 +0000)]
S5PC2XX: Rename S5pc2XX to exynos

As per new naming convention for Samsung SoC's, all Cortex-A9 and Cortex-A15
based SoC's will be classified under the name Exynos. Cortex-A9 and Cortex-A15
based SoC's will be sub-classified as Exynos4 and Exynos5 respectively.

In order to better adapt and reuse code across various upcoming Samsung Exynos
based boards, all uses of s5pc210 prefix/suffix/directory-names are renamed in
this patch. s5pc210 is renamed as exynos4210 and S5PC210/s5pc210 suffix/prefix
are renamed as exynos4/EXYNOS4.

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agotegra2: Don't use board pointer before it is set up
Simon Glass [Sat, 5 Nov 2011 03:56:57 +0000 (03:56 +0000)]
tegra2: Don't use board pointer before it is set up

In board_init_f() the gd->bd pointer is not valid when dram_init() is called.
This only avoids dying because DRAM is at zero on Tegra2. The common ARM
routine sets up the banks in the same way anyway, so we can just remove this
code.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Remove unneeded 'dynamic ram size' message
Simon Glass [Sat, 5 Nov 2011 03:56:56 +0000 (03:56 +0000)]
tegra2: Remove unneeded 'dynamic ram size' message

This message is not required, since it is followed by an 'official' U-Boot
message.

U-Boot 2011.03-00048-gd7cb0d3 (May 11 2011 - 17:17:23)

TEGRA2
Board: NVIDIA Seaboard
dynamic ram_size = 1073741824
DRAM:  1 GiB

becomes:

TEGRA2
Board: NVIDIA Seaboard
DRAM:  1 GiB

This is a separate commit since it changes behavior.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Remove unused low-level Tegra2 UART code
Simon Glass [Sat, 5 Nov 2011 03:56:55 +0000 (03:56 +0000)]
tegra2: Remove unused low-level Tegra2 UART code

This was used by the AVP in early boot but is no longer used. Unless we
plan to enable it somehow it is not needed. In any case we should try
to use the ns16550 driver instead as it has the same code.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Remove unneeded config option
Simon Glass [Sat, 5 Nov 2011 03:56:54 +0000 (03:56 +0000)]
tegra2: Remove unneeded config option

CONFIG_ENABLE_CORTEXA9 and CONFIG_SKIP_RELOCATE_UBOOT are not needed,
so remove them.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Remove unneeded boot code
Simon Glass [Sat, 5 Nov 2011 03:56:53 +0000 (03:56 +0000)]
tegra2: Remove unneeded boot code

Since we have cache support built in we can remove Tegra's existing cache
initialization code amd other related dead code.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Enable instruction cache
Simon Glass [Sat, 5 Nov 2011 03:56:52 +0000 (03:56 +0000)]
tegra2: Enable instruction cache

Since low-level init is skipped, the instruction cache is never enabled on
Tegra2. This explicitly calls this initialization as soon as the A9 is
initialized.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agoarm: Move CP15 init out of cpu_init_crit()
Simon Glass [Sat, 5 Nov 2011 03:56:51 +0000 (03:56 +0000)]
arm: Move CP15 init out of cpu_init_crit()

Some SOCs have do not start up with their 'main' CPU. The first U-Boot
code may then be executed with a CPU which does not have a CP15, or not a
useful one.

Here we split the initialization of CP15 into a separate call, which can
be performed later if required.

Once the main CPU is running, you should call cpu_init_cp15() to perform
this init as early as possible.

Existing ARMv7 boards which define CONFIG_SKIP_LOWLEVEL_INIT should not
need to change, this CP15 init is still skipped in that case. The only
impact for these boards is that the cpu_init_cp15() will be available
even if it is never used on these boards.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Simplify tegra_start() boot path
Simon Glass [Sat, 5 Nov 2011 03:56:50 +0000 (03:56 +0000)]
tegra2: Simplify tegra_start() boot path

The Tegra2 boot path is more complicated than it needs to be. Since we want
to move to building most of U-Boot with ARMv7 and only a small part with
ARMv4T (for AVP) it should be as simple as possible.

This makes tegra2_start() into a simple function which either does AVP
init or A9 init depending on which core is running it. Both cores now
following the same init path, beginning at _start, and the special Tegra2
boot path code is no longer required.

Only two files need to be built for ARMv4T, and this is handled in the
Tegra2 CPU Makefile.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Add arch_cpu_init() to fire up Cortex-A9
Simon Glass [Sat, 5 Nov 2011 03:56:49 +0000 (03:56 +0000)]
tegra2: Add arch_cpu_init() to fire up Cortex-A9

We want to move away from a special Tegra2 start-up, and just use
arch_cpu_init() instead. However, if we run board_init_f() from boot
we need to build it for ARMv4T, since the Tegra's AVP start-up CPU
does not support ARMv7.

The effect of this is to do the AVP init earlier, and in
arch_cpu_init(), rather that board_early_init_f().

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Use new GPIO APIs in gpio_config_uart()
Stephen Warren [Thu, 6 Oct 2011 12:52:22 +0000 (12:52 +0000)]
tegra2: Use new GPIO APIs in gpio_config_uart()

... rather than open-coding the register accesses.

However, gpio_request() typically stores the "label" parameter in a global
data structure. This causes problems when called from gpio_config_uart(),
since the code is running before relocation. To solve this, pass a NULL
string to gpio_request(), and modify gpio_request() not to touch the string
if it's NULL.

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: Add support for Ventana
Stephen Warren [Mon, 31 Oct 2011 06:51:37 +0000 (06:51 +0000)]
tegra2: Add support for Ventana

Ventana is a board which is very similar to Seaboard. Support it by
re-using board/nvidia/seaboard/seaboard.c with minor run-time conditionals.

v5: Makefile: Use cmd_link_o_target, remove unused clean/distclean targets.
v6: Make gpio_config_uart_seaboard() static.
v7: Add MAINTAINERS entry for Ventana. Tom Warren doesn't have Ventana, so
    he asked me to add myself for this board.

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: Modify MMC driver to handle power and cd GPIOs
Stephen Warren [Mon, 31 Oct 2011 06:51:36 +0000 (06:51 +0000)]
tegra2: Modify MMC driver to handle power and cd GPIOs

Pass the GPIO numbers for power and card detect to tegra2_mmc_init(), and
modify that function to perform all required GPIO initialization. This
removes the need for board files to perform these operations.

Move board_mmc_getcd() into tegra2_mmc.c now that the driver knows which
GPIOs to use.

Update affected call-sites in seaboard.c and harmony.c. Note that this
change should make all SD ports work on Harmony, since the required GPIO
setup is now being performed.

v4: Fix prototype of tegra2_mmc_init() in board.h to match driver change.
    Remove prototype of gpio_config_mmc() from board.h

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Cc: Andy Fleming <afleming@gmail.com>
Tested-by: Simon Glass <sjg@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
Acked-by: Andy Fleming <afleming@freescale.com>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Move board_mmc_init into board files
Stephen Warren [Mon, 31 Oct 2011 06:51:35 +0000 (06:51 +0000)]
tegra2: Move board_mmc_init into board files

For Seaboard, this is mostly a cut/paste of board_mmc_init() and
pin_mux_mmc() into seaboard.c; pin_mux_mmc() was modified to add some
missing pinmux_tristate_disable calls for the GPIOs.

For Harmony, those functions were modified to configure SDMMC2 (index 2)
instead of SDMMC3 (index 1), since that's what is present on the board.

However, harmony.c is still missing the required GPIO setup, so neither
port is likely to function correctly yet.  This will be fixed in the next
change.

v4: Include board.h to prototype tegra2_mmc_init().

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Tested-by: Simon Glass <sjg@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agocommon/usb_kbd.c: fix bug introduced in commit 00b7d6e
Wolfgang Denk [Fri, 9 Dec 2011 11:09:35 +0000 (12:09 +0100)]
common/usb_kbd.c: fix bug introduced in commit 00b7d6e

During the rebase of commit 00b7d6e "USB: Squash checkpatch warnings
in usb_kbd.c" I missed a brace, resulting in a number of build errors.
Fix these.

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agodrivers/gpio/da8xx_gpio.c: Fix build warning
Anatolij Gustschin [Wed, 7 Dec 2011 11:47:47 +0000 (11:47 +0000)]
drivers/gpio/da8xx_gpio.c: Fix build warning

Fix:
da8xx_gpio.c: In function 'gpio_toggle_value':
da8xx_gpio.c:208:23: warning: variable 'bank' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Anatolij Gustschin <agust@denx.de>
12 years agoMIPS: MAKEALL: fix lists for MIPSel and MIPS boards
Daniel Schwierzeck [Thu, 24 Nov 2011 03:57:56 +0000 (03:57 +0000)]
MIPS: MAKEALL: fix lists for MIPSel and MIPS boards

Build dbau1550_el only in LIST_au1xx0_el and LIST_mips_el.
Also remove obsolete lists for mips5kc.

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@googlemail.com>
Cc: Thomas Lange <thomas@corelatus.se>
12 years agodrivers/usb/gadget/ep0.c: Fix GCC 4.6 warning
Anatolij Gustschin [Sat, 3 Dec 2011 06:46:12 +0000 (06:46 +0000)]
drivers/usb/gadget/ep0.c: Fix GCC 4.6 warning

Fix:
ep0.c: In function 'ep0_get_descriptor':
ep0.c:187:8: warning: variable 'cp' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: Remy Bohmer <linux@bohmer.net>
Acked-by: Remy Bohmer <linux@bohmer.net>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
12 years agodrivers/usb/gadget/core.c: Fix GCC 4.6 warning
Anatolij Gustschin [Sat, 3 Dec 2011 06:46:11 +0000 (06:46 +0000)]
drivers/usb/gadget/core.c: Fix GCC 4.6 warning

Fix:
core.c: In function 'usbd_device_event_irq':
core.c:596:21: warning: variable 'state' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: Remy Bohmer <linux@bohmer.net>
Acked-by: Remy Bohmer <linux@bohmer.net>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
12 years agodrivers/usb/musb/musb_udc.c: Fix GCC 4.6 warning
Anatolij Gustschin [Sat, 3 Dec 2011 06:46:10 +0000 (06:46 +0000)]
drivers/usb/musb/musb_udc.c: Fix GCC 4.6 warning

Fix:
musb_udc.c: In function 'musb_peri_softconnect':
musb_udc.c:166:14: warning: variable 'intrtx' set but not used
[-Wunused-but-set-variable]
musb_udc.c:166:6: warning: variable 'intrrx' set but not used
[-Wunused-but-set-variable]
musb_udc.c:165:5: warning: variable 'intrusb' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: Remy Bohmer <linux@bohmer.net>
Acked-by: Remy Bohmer <linux@bohmer.net>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
12 years agodrivers/usb/host/ehci-mxc.c: Fix GCC 4.6 warning
Anatolij Gustschin [Sat, 19 Nov 2011 10:10:33 +0000 (10:10 +0000)]
drivers/usb/host/ehci-mxc.c: Fix GCC 4.6 warning

Fix:
ehci-mxc.c: In function 'ehci_hcd_init':
ehci-mxc.c:113:6: warning: variable 'tmp' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Anatolij Gustschin <agust@denx.de>
12 years agoFix warnings in arch/arm/cpu/arm920t/s3c24x0/usb_ohci.c
Simon Glass [Tue, 15 Nov 2011 18:17:06 +0000 (18:17 +0000)]
Fix warnings in arch/arm/cpu/arm920t/s3c24x0/usb_ohci.c

Sorry if this is already fixed somewhere - I could not find it.

This fixes these warnings:

usb_ohci.c: In function 'submit_control_msg':
usb_ohci.c:1081: warning: dereferencing pointer 'data_buf.76' does break strict-aliasing rules
usb_ohci.c:1081: note: initialized from here
usb_ohci.c:1084: warning: dereferencing pointer 'data_buf.76' does break strict-aliasing rules
usb_ohci.c:1084: note: initialized from here
usb_ohci.c:1087: warning: dereferencing pointer 'data_buf.76' does break strict-aliasing rules
usb_ohci.c:1087: note: initialized from here

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
12 years agoUSB: Squash checkpatch warnings in usb_kbd.c
Marek Vasut [Mon, 10 Oct 2011 05:34:25 +0000 (05:34 +0000)]
USB: Squash checkpatch warnings in usb_kbd.c

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Remy Bohmer <linux@bohmer.net>
Cc: Wolfgang Denk <wd@denx.de>
Acked-by: Mike Frysinger <vapier@gentoo.org>
Rebased to current code.

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agone2000: Convert to new net-multi model, fixes build of three boards
Bernhard Kaindl [Thu, 20 Oct 2011 10:56:59 +0000 (10:56 +0000)]
ne2000: Convert to new net-multi model, fixes build of three boards

This fixes the build of the two sh boards shmin and r7780mp and qemu-mips
which currently fail to build due to dropped pre-CONFIG_NET_MULTI code.

This v2 patch minimizes the number of lines in the diff for easy review
and to eliminate any possible accidential changes resulting from moving
lines of code in the file. This also makes the register function very easy.

Any cleanups and improvements are intentionally deferred to follow-up patches
to keep this patch as simple and as easy to review as possible.

A new driver register function, ne2k_register() calls the existing
one-time setup part of the old init function and calls eth_register().

Changes to shmin, r7780mp and qemu-mips:
- Call the new ne2k_register() from board_eth_init() of the boards.

- Tested using qemu-mips board,
- Tested the two renesas / sh boards r7780mp and shmin to compile again,
  and should work.

checkpatch-clean when "--ignore VOLATILE" is added to .checkpatch.conf,
and no warnings introduced in none of the three boards using this driver.

Signed-off-by: Bernhard Kaindl <bernhard.kaindl@gmx.net>
12 years agodrivers/net/inca-ip_sw.c: Fix GCC 4.6 build warning
Wolfgang Denk [Thu, 8 Dec 2011 02:01:51 +0000 (02:01 +0000)]
drivers/net/inca-ip_sw.c: Fix GCC 4.6 build warning

Fix:
inca-ip_sw.c: In function 'inca_switch_init':
inca-ip_sw.c:210:6: warning: variable 'v' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agoarch/mips/lib/board.c: Fix GCC 4.6 build warning
Wolfgang Denk [Thu, 8 Dec 2011 02:01:50 +0000 (02:01 +0000)]
arch/mips/lib/board.c: Fix GCC 4.6 build warning

Fix:
board.c: In function 'board_init_r':
board.c:262:8: warning: unused variable 's' [-Wunused-variable]

(raised for configurations without ethernet support like
vct_premium_small)

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp>
12 years agoarch/mips/lib/board.c: make (mostly) checkpatch clean
Wolfgang Denk [Thu, 8 Dec 2011 02:01:49 +0000 (02:01 +0000)]
arch/mips/lib/board.c: make (mostly) checkpatch clean

Fix all errors and all warnings except for "externs should be avoided"
which could require more extensive changes.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp>
12 years agoMerge branch 'master' of git://git.denx.de/u-boot-nand-flash
Wolfgang Denk [Thu, 8 Dec 2011 19:54:13 +0000 (20:54 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-nand-flash

* 'master' of git://git.denx.de/u-boot-nand-flash:
  nand_spl/nand_boot.c: Fix build warning
  drivers/mtd/nand/nand_spl_load.c: Fix GCC 4.6 warning
  drivers/mtd/nand/nand_spl_simple.c: Fix GCC 4.6 warnings

12 years agoboard/w7o/vpd.c: Fix GCC 4.6 compile warnings
Wolfgang Denk [Wed, 7 Dec 2011 12:19:28 +0000 (12:19 +0000)]
board/w7o/vpd.c: Fix GCC 4.6 compile warnings

Fix:
vpd.c: In function 'vpd_is_valid':
vpd.c:168:2: warning: dereferencing type-punned pointer will break
strict-aliasing rules [-Wstrict-aliasing]
vpd.c:169:2: warning: dereferencing type-punned pointer will break
strict-aliasing rules [-Wstrict-aliasing]
vpd.c:178:2: warning: dereferencing type-punned pointer will break
strict-aliasing rules [-Wstrict-aliasing]
vpd.c: In function 'vpd_get_data':
vpd.c:281:6: warning: dereferencing type-punned pointer will break
strict-aliasing rules [-Wstrict-aliasing]
vpd.c:291:6: warning: dereferencing type-punned pointer will break
strict-aliasing rules [-Wstrict-aliasing]
vpd.c:297:6: warning: dereferencing type-punned pointer will break
strict-aliasing rules [-Wstrict-aliasing]
vpd.c:302:6: warning: dereferencing type-punned pointer will break
strict-aliasing rules [-Wstrict-aliasing]

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agoboard/w7o/vpd.c: make (mostly) checkpatch clean
Wolfgang Denk [Wed, 7 Dec 2011 12:19:27 +0000 (12:19 +0000)]
board/w7o/vpd.c: make (mostly) checkpatch clean

Accept 2 warnings "externs should be avoided".

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agoboard/w7o/flash.c: Fix GCC 4.6 compile warning
Wolfgang Denk [Wed, 7 Dec 2011 12:19:26 +0000 (12:19 +0000)]
board/w7o/flash.c: Fix GCC 4.6 compile warning

Fix:
flash.c: In function 'flash_init':
flash.c:47:25: warning: variable 'base_b1' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agoboard/w7o/flash.c: make (mostly) checkpatch clean
Wolfgang Denk [Wed, 7 Dec 2011 12:19:25 +0000 (12:19 +0000)]
board/w7o/flash.c: make (mostly) checkpatch clean

No full cleanup was attempted.  Warnings about "Use of volatile is
usually wrong" were ignored.  One line > 80 char was intentionally
accepted.

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agoboard/w7o/fpga.c: Fix GCC 4.6 build warning
Wolfgang Denk [Wed, 7 Dec 2011 12:19:24 +0000 (12:19 +0000)]
board/w7o/fpga.c: Fix GCC 4.6 build warning

Fix:
fpga.c: In function 'fpgaDownload':
fpga.c:68:29: warning: variable 'val' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agoboard/w7o/fpga.c: make (mostly) checkpatch clean
Wolfgang Denk [Wed, 7 Dec 2011 12:19:23 +0000 (12:19 +0000)]
board/w7o/fpga.c: make (mostly) checkpatch clean

Just reformated the code.  No attempts were made to clean up warnings
about "Use of volatile is usually wrong" or "externs should be avoided".

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agoMPC850: remove obsolete "rmu" Board
Wolfgang Denk [Wed, 7 Dec 2011 12:19:22 +0000 (12:19 +0000)]
MPC850: remove obsolete "rmu" Board

The "rmu" board has long been unmaintained, and is broken.
Remove it.

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agoMPC8240: remove obsolete "OXC" board
Wolfgang Denk [Wed, 7 Dec 2011 12:19:21 +0000 (12:19 +0000)]
MPC8240: remove obsolete "OXC" board

The OXC board has long been unmaintained, and is broken.
Remove it.

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agoMPC7xx: remove obsolete "BAB7xx" board
Wolfgang Denk [Wed, 7 Dec 2011 12:19:20 +0000 (12:19 +0000)]
MPC7xx: remove obsolete "BAB7xx" board

The BAB7xx boards are almost deceased.  They cause build warnings, an
it's not worth the effort to fix these.  Remove the dead body.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Frank Gottschling <fgottschling@eltec.de>
12 years agonand_spl/nand_boot.c: Fix build warning
Anatolij Gustschin [Wed, 7 Dec 2011 11:58:56 +0000 (11:58 +0000)]
nand_spl/nand_boot.c: Fix build warning

Fix:
nand_boot.c: In function 'nand_read_page':
nand_boot.c:150:6: warning: variable 'stat' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agopowerpc: Minimal private libgcc to build on Debian
Kyle Moffett [Wed, 23 Feb 2011 06:40:38 +0000 (06:40 +0000)]
powerpc: Minimal private libgcc to build on Debian

Standard Debian powerpc and powerpcspe systems only include hard-float
libgcc in their native compilers, which causes scary build warnings when
building U-Boot.

Debian and other PowerPC-supporting distributions used to provide libgcc
and other libraries in a "nof" (soft-float) form in the "multilib"
packages.  As they were completely unused by the distribution and
therefore tended to be very buggy it was decided to save some time on
the part of the maintainers and build-servers by removing them.

Admittedly, right now the linker warnings do not indicate any problems,
as the included routines do not use any floating point at all.

The concern is that if floating-point code were ever added it might
cause hard-float code to be unexpectedly included in U-Boot without
generating a hard error.  This would cause unexplained crashes or
indeterminate results at runtime.

The easiest way to resolve this is to borrow the routines that U-Boot
needs from the Linux kernel, which has the same issue.

Specifically, the routines are: _ashldi3(), _ashrdi3(), and _lshrdi3().
They were borrowed from arch/powerpc/kernel/misc_32.S as of v2.6.38-rc5,
commit 85e2efbb1db9a18d218006706d6e4fbeb0216213, and are GPLv2+.

The Makefile framework was copied from the U-Boot ARM port.

Signed-off-by: Kyle Moffett <Kyle.D.Moffett@boeing.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Kim Phillips <kim.phillips@freescale.com>
Cc: Andy Fleming <afleming@gmail.com>
Cc: Kumar Gala <kumar.gala@freescale.com>
Cc: Stefan Roese <sr@denx.de>
12 years agodrivers/mtd/nand/nand_spl_load.c: Fix GCC 4.6 warning
Anatolij Gustschin [Sat, 3 Dec 2011 06:46:09 +0000 (06:46 +0000)]
drivers/mtd/nand/nand_spl_load.c: Fix GCC 4.6 warning

Fix:
nand_spl_load.c: In function 'nand_boot':
nand_spl_load.c:31:6: warning: variable 'ret' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: Heiko Schocher <hs@denx.de>
Cc: Scott Wood <scottwood@freescale.com>
Acked-by: Heiko Schocher <hs@denx.de>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agodrivers/mtd/nand/nand_spl_simple.c: Fix GCC 4.6 warnings
Anatolij Gustschin [Sat, 3 Dec 2011 06:46:08 +0000 (06:46 +0000)]
drivers/mtd/nand/nand_spl_simple.c: Fix GCC 4.6 warnings

Fix warnings for both cases:

definded CONFIG_SYS_NAND_HW_ECC_OOBFIRST:
nand_spl_simple.c: In function 'nand_read_page':
nand_spl_simple.c:156:6: warning: variable 'stat' set but not used
[-Wunused-but-set-variable]

not definded CONFIG_SYS_NAND_HW_ECC_OOBFIRST:
nand_spl_simple.c: In function 'nand_read_page':
nand_spl_simple.c:196:6: warning: variable 'stat' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: Heiko Schocher <hs@denx.de>
Cc: Scott Wood <scottwood@freescale.com>
Acked-by: Heiko Schocher <hs@denx.de>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc83xx
Wolfgang Denk [Wed, 7 Dec 2011 22:01:26 +0000 (23:01 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc83xx

* 'master' of git://git.denx.de/u-boot-mpc83xx:
  powerpc/83xx: fix sdram initialization for keymile boards
  powerpc/mpc83xx: cleanup makefile for mpc83xx

12 years agovideo: cfb_console: fix build warnings
Anatolij Gustschin [Wed, 7 Dec 2011 03:58:10 +0000 (03:58 +0000)]
video: cfb_console: fix build warnings

Fix:
cfb_console.c:371: warning: 'cursor_state' defined but not used
cfb_console.c:372: warning: 'old_col' defined but not used
cfb_console.c:373: warning: 'old_row' defined but not used
cfb_console.c:435: warning: 'video_invertchar' defined but not used

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Tested-by: Wolfgang Denk <wd@denx.de>
12 years agoboard/esd/cpci405/cpci405.c: Fix GCC 4.6 warning
Matthias Fuchs [Thu, 24 Nov 2011 05:39:21 +0000 (05:39 +0000)]
board/esd/cpci405/cpci405.c: Fix GCC 4.6 warning

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd.eu>
12 years agoppc4xx: Remove usbdev.c
Stefan Roese [Fri, 18 Nov 2011 02:38:17 +0000 (02:38 +0000)]
ppc4xx: Remove usbdev.c

As this "driver" doesn't seem to be really used, let's remove
it completely.

Signed-off-by: Stefan Roese <sr@denx.de>
12 years agoMerge branch 'master' of git://git.denx.de/u-boot-arm
Wolfgang Denk [Wed, 7 Dec 2011 08:09:58 +0000 (09:09 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-arm

* 'master' of git://git.denx.de/u-boot-arm:
  davinci: Remove unwanted memsize.c from hawkboard's nand spl build
  devkit8000: Move CONFIG_SYS_TEXT_BASE out of bss
  da850evm: pass board revision info to kernel
  arch/arm/include/asm/arch-omap5/clocks.h: Fix GCC 4.2 warnings
  arch/arm/cpu/armv7/omap-common/clocks-common.c: Fix GCC 4.6 warnings
  arch/arm/cpu/armv7/omap-common/spl.c: Fix GCC 4.2 warnings
  MX35: flea3: changes due to hardware revision B
  MX: serial_mxc: cleanup removing nasty #ifdef
  M28: Fix OB1 bug in GPIO driver
  MXS: Add static annotations to dma driver
  apbh_dma: return error value on timeout
  Efika: Configure additional regulators for HDMI output
  mx5: Correct a warning in clock.c
  MC13892: Add REGMODE0 bits definitions
  mx51evk: Configure the pins as GPIOs prior to using gpio_get_value
  mx53smd: Configure the pins as GPIOs prior to using gpio_get_value
  mx53evk: Configure the pins as GPIOs prior to using gpio_get_value
  mx53ard: Configure the pins as GPIOs prior to using gpio_get_value
  mx53loco: Configure the pins as GPIOs prior to using gpio_get_value
  OMAP3: Add SPL_BOARD_INIT hook
  AM3517 CraneBoard: Add SPL support
  AM3517: Add SPL support
  OMAP3: Add SPL support to omap3_evm
  OMAP3: Add SPL support to Beagleboard
  OMAP3 SPL: Add identify_nand_chip function
  OMAP3 SPL: Rework memory initalization and devkit8000 support
  OMAP3: Suffix all Micron memory timing parts with their speed
  OMAP3: Add optimal SDRC autorefresh control values
  omap3: mem: Add MCFG helper macro
  OMAP3: Remove get_mem_type prototype
  OMAP3: Change mem_ok to clear again after reading back
  OMAP3: Add a helper function to set timings in SDRC
  OMAP3: Update SDRC dram_init to always call make_cs1_contiguous()
  omap3: mem: Comment enable_gpmc_cs_config more
  ARM: davici_emac: Fix condition for number of phy detects
  arm: printf() is not available in some SPL configurations
  arm, davinci: add support for am1808 based enbw_cmc board
  arm, davinci: move misc function in arch tree
  arm, board/davinci/common/misc.c: Codingstyle cleanup
  arm, davinci, da850: add uart1 tx rx pinmux config
  arm, davinci: move davinci_rtc struct to hardware.h
  arm, davinci: Remove duplication of pinmux configuration code
  arm, hawkboard: Use the pinmux configurations defined in the arch tree
  arm, da850evm: Use the pinmux configurations defined in the arch tree
  arm, da850: Add pinmux configurations to the arch tree
  arm, da850evm: Do pinmux configuration for EMAC together with other pinmuxes
  arm, hawkboard: Remove obsolete struct pinmux_config i2c_pins
  arm, davinci: Move pinmux functions from board to arch tree
  arm, arm926ejs: always do cpu critical inits
  omap_gpmc: use SOFTECC in SPL if it's enabled
  nand_spl_simple: add support for software ECC
  AM3517: move AM3517 specific mux defines to generic header
  AM35xx: add EMAC support
  davinci_emac: hardcode 100Mbps for AM35xx and RMII
  davinci_emac: fix for running with dcache enabled
  arm926ejs: add noop implementation for dcache ops
  davinci_emac: conditionally compile specific PHY support
  davinci_emac: use internal addresses in buffer descriptors
  davinci_emac: move arch-independent defines to separate header
  BeagleBoard: config: Really switch to ttyO2
  ARM: davinci_dm6467Tevm: Fix build breakage
  ARM: OMAP: Remove STACKSIZE for IRQ and FIQ if unused
  ARM: OMAP3: Remove unused define SDRC_R_C_B
  ARM: OMAP3: Remove unused define CONFIG_OMAP3430
  omap4: fix IO setting
  omap4+: streamline CONFIG_SYS_TEXT_BASE and other SDRAM addresses
  omap4460: add ES1.1 identification
  omap4: emif: fix error in driver
  omap: remove I2C from SPL
  omap4460: fix TPS initialization
  omap: fix cache line size for omap3/omap4 boards
  omap4: ttyO2 instead of ttyS2 in default bootargs
  omap: Improve PLL parameter calculation tool
  start.S: remove omap3 specific code from start.S
  armv7: setup vector
  armv7: include armv7/cpu.c in SPL build
  armv7: disable L2 cache in cleanup_before_linux()
  arm, arm926ejs: Fix clear bss loop for zero length bss
  PXA: Move colibri_pxa270 to board/toradex/
  PXA: Flip colibri_pxa27x to pxa-common.h
  PXA: Introduce common configuration header for PXA
  PXA: Rename pxa_dram_init to pxa2xx_dram_init
  PXA: Squash extern pxa_dram_init()
  PXA: Export cpu_is_ and pxa_dram_init functions
  PXA: Cleanup Colibri PXA270
  PXA: Replace timer driver
  PXA: Add cpuinfo display for PXA2xx
  PXA: Separate PXA2xx CPU init
  PXA: Rename CONFIG_PXA2[57]X to CONFIG_CPU_PXA2[57]X
  PXA: Unify vpac270 environment size
  PXA: Enable command line editing for vpac270
  PXA: Adapt Voipac PXA270 to OneNAND SPL
  PXA: Drop Voipac PXA270 OneNAND IPL
  PXA: Fixup PXA25x boards after start.S update
  PXA: Re-add the Dcache locking as RAM for pxa250
  PXA: Rework start.S to be closer to other ARMs
  PXA: Drop XM250 board
  PXA: Drop PLEB2 board
  PXA: Drop CRADLE board
  PXA: Drop CERF250 board
  Fix regression in SMDK6400
  nand: Add common functions to linux/mtd/nand.h
  Ethernut 5 board support
  net: Armada100: Fix compilation warnings
  ARM: remove duplicated code for LaCie boards
  ARM: add support for LaCie 2Big Network v2
  mvsata: fix ide_preinit for missing disks
  netspace_v2: Read Ethernet MAC address from EEPROM
  omap3evm: Add support for EFI partitions
  part_efi: Fix compile errors

12 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc85xx
Wolfgang Denk [Wed, 7 Dec 2011 08:07:28 +0000 (09:07 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx

* 'master' of git://git.denx.de/u-boot-mpc85xx:
  p2041rdb: fix serdes clock map

12 years agoMerge branch 'master' of git://git.denx.de/u-boot-video
Wolfgang Denk [Wed, 7 Dec 2011 08:06:29 +0000 (09:06 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-video

* 'master' of git://git.denx.de/u-boot-video:
  video: cfb_console: Make the software cursor non-destructive

12 years agoIntroduce generic TPM support in u-boot
Vadim Bendebury [Mon, 17 Oct 2011 08:36:14 +0000 (08:36 +0000)]
Introduce generic TPM support in u-boot

TPM (Trusted Platform Module) is an integrated circuit and
software platform that provides computer manufacturers with the
core components of a subsystem used to assure authenticity,
integrity and confidentiality.

This driver supports version 1.2 of the TCG (Trusted Computing
Group) specifications.

The TCG specification defines several so called localities in a
TPM chip, to be controlled by different software layers. When
used on a typical x86 platform during the firmware phase, only
locality 0 can be accessed by the CPU, so this driver even while
supporting the locality concept presumes that only locality zero
is used.

This implementation is loosely based on the article "Writing a
TPM Device Driver" published on http://ptgmedia.pearsoncmg.com

Compiling this driver with DEBUG defined will generate trace of
all accesses to TMP registers.

This driver has been tested and is being used in three different
functional ChromeOS machines (Pinetrail and Sandy Bridge Intel
chipsets) all using the same Infineon SLB 9635 TT 1.2 device.

A u-boot cli command allowing access to the TPM was also
implemented and is being submitted as a second patch.

Change-Id: I22a33c3e5b2e20eec9557a7621bd463b30389d73
Signed-off-by: Vadim Bendebury <vbendeb@chromium.org>
CC: Wolfgang Denk <wd@denx.de>
12 years agoFix unused function in cmd_bdinfo.c
Simon Glass [Tue, 6 Dec 2011 13:37:17 +0000 (13:37 +0000)]
Fix unused function in cmd_bdinfo.c

It is fine to use __maybe_unused instead of #ifdef, but we also need one
for print_eth() since not all boards have Ethernet. This fixes this
warning:

cmd_bdinfo.c:39:13: warning: 'print_eth' defined but not used [-Wunused-function]

Signed-off-by: Simon Glass <sjg@chromium.org>
12 years agoFix SPI build errors in exports.c
Simon Glass [Tue, 6 Dec 2011 19:31:32 +0000 (19:31 +0000)]
Fix SPI build errors in exports.c

The spi.h include is no longer included in exports.h, so must be included
here.

This fixes these errors:

In file included from exports.c:41:0:
/home/sjg/trunk/src/third_party/u-boot/files/include/_exports.h: In function 'jumptable_init':
/home/sjg/trunk/src/third_party/u-boot/files/include/_exports.h:27:1: error: 'spi_init' undeclared (first use in this function)
/home/sjg/trunk/src/third_party/u-boot/files/include/_exports.h:27:1: note: each undeclared identifier is reported only once for each function it appears in
/home/sjg/trunk/src/third_party/u-boot/files/include/_exports.h:28:1: error: 'spi_setup_slave' undeclared (first use in this function)
/home/sjg/trunk/src/third_party/u-boot/files/include/_exports.h:29:1: error: 'spi_free_slave' undeclared (first use in this function)
/home/sjg/trunk/src/third_party/u-boot/files/include/_exports.h:30:1: error: 'spi_claim_bus' undeclared (first use in this function)
/home/sjg/trunk/src/third_party/u-boot/files/include/_exports.h:31:1: error: 'spi_release_bus' undeclared (first use in this function)
/home/sjg/trunk/src/third_party/u-boot/files/include/_exports.h:32:1: error: 'spi_xfer' undeclared (first use in this function)

Signed-off-by: Simon Glass <sjg@chromium.org>
12 years agoInclude common.h in qsort.c to fix build warning
Simon Glass [Tue, 6 Dec 2011 13:37:16 +0000 (13:37 +0000)]
Include common.h in qsort.c to fix build warning

exports.h no longer includes common.h, which contains assert(). qsort.c
needs to be updated. This fixes this warning:

qsort.c: In function 'qsort':
qsort.c:30:3: warning: implicit declaration of function 'assert' [-Wimplicit-function-declaration]

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
Tested-by: Heiko Schocher <hs@denx.de>
12 years agoRevert "mii: miiphy register address width change"
Wolfgang Denk [Wed, 7 Dec 2011 07:35:14 +0000 (08:35 +0100)]
Revert "mii: miiphy register address width change"

This reverts commit 5c45a22b9203351a32aec4600514341b91175542.

It causes a lot of "incompatible pointer type" warnings for a large
number of Ethernet drivers, which are not really worth fixing
especially as this patch was only supposed to help the old,
deprecated miiphy API.  Instead of adding more efforts to a lost case
we rather revert it.

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agop2041rdb: fix serdes clock map
Shaohui Xie [Fri, 2 Dec 2011 01:38:12 +0000 (09:38 +0800)]
p2041rdb: fix serdes clock map

Description of SerDes clock Bank2 setting in p2041 hardware specification
is wrong, the clock map which based on it is wrong either, so fix the
serdes clock map.

wrong setting of SERDES Reference Clocks Bank2:
SW2[5:6] = ON OFF =>100MHz for PCI mode
SW2[5:6] = OFF ON =>125MHz for SGMII mode

right setting of SERDES Reference Clocks Bank2:
SW2[5:6] = OFF OFF =>100MHz for PCI mode
SW2[5:6] = OFF ON =>125MHz for SGMII mode
SW2[5:6] = ON OFF =>156.25MHZ

Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agodavinci: Remove unwanted memsize.c from hawkboard's nand spl build
Sughosh Ganu [Tue, 6 Dec 2011 03:45:28 +0000 (03:45 +0000)]
davinci: Remove unwanted memsize.c from hawkboard's nand spl build

dram_init function in board/davinci/common/misc.c does not get
compiled for spl builds, thus rendering inclusion of memsize.c
useless.

Signed-off-by: Sughosh Ganu <urwithsughosh@gmail.com>
12 years agodevkit8000: Move CONFIG_SYS_TEXT_BASE out of bss
Simon Schwarz [Mon, 5 Dec 2011 23:16:28 +0000 (23:16 +0000)]
devkit8000: Move CONFIG_SYS_TEXT_BASE out of bss

This moves CONFIG_SYS_TEXT_BASE one MB after beginning of SD-RAM. Move
CONFIG_SYS_SPL_MALLOC_START to have one MB of free space for the u-boot
image.

CONFIG_SYS_TEXT_BASE was in the middle of the bss-section. This was the
reason for the problems with MMC boot described here:
http://article.gmane.org/gmane.comp.boot-loaders.u-boot/118711

Signed-off-by: Simon Schwarz <simonschwarzcor@gmail.com>
Tested-by: Thomas Weber <weber@corscience.de>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoda850evm: pass board revision info to kernel
Manjunath Hadli [Mon, 10 Oct 2011 21:06:38 +0000 (21:06 +0000)]
da850evm: pass board revision info to kernel

there are two boards based on da850 SOC - OMAP-L138 and AM18x.
In order to differentiate between these two boards, revision id
is passed to kernel via second byte of ATAG_REVISION.

Signed-off-by: Manjunathappa, Prakash <prakash.pm@ti.com>
Signed-off-by: Manjunath Hadli <manjunath.hadli@ti.com>
12 years agoarch/arm/include/asm/arch-omap5/clocks.h: Fix GCC 4.2 warnings
Anatolij Gustschin [Sat, 3 Dec 2011 06:46:15 +0000 (06:46 +0000)]
arch/arm/include/asm/arch-omap5/clocks.h: Fix GCC 4.2 warnings

Fix:
clocks.c: In function 'setup_post_dividers':
clocks.c:175: warning: comparison is always true due to limited range of
data type
clocks.c:177: warning: comparison is always true due to limited range of
data type
clocks.c:179: warning: comparison is always true due to limited range of
data type
clocks.c:181: warning: comparison is always true due to limited range of
data type
clocks.c:183: warning: comparison is always true due to limited range of
data type
clocks.c:185: warning: comparison is always true due to limited range of
data type
clocks.c:187: warning: comparison is always true due to limited range of
data type
clocks.c:189: warning: comparison is always true due to limited range of
data type

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: sricharan <r.sricharan@ti.com>
Cc: Tom Rini <trini@ti.com>
12 years agoarch/arm/cpu/armv7/omap-common/clocks-common.c: Fix GCC 4.6 warnings
Anatolij Gustschin [Sat, 3 Dec 2011 06:46:14 +0000 (06:46 +0000)]
arch/arm/cpu/armv7/omap-common/clocks-common.c: Fix GCC 4.6 warnings

Fix:
clocks-common.c: In function 'setup_dplls':
clocks-common.c:256:6: warning: variable 'sysclk_ind' set but not used
[-Wunused-but-set-variable]
clocks-common.c: In function 'setup_non_essential_dplls':
clocks-common.c:292:6: warning: variable 'sysclk_ind' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: sricharan <r.sricharan@ti.com>
Cc: Tom Rini <trini@ti.com>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
Acked-by: Tom Rini <trini@ti.com>
12 years agoarch/arm/cpu/armv7/omap-common/spl.c: Fix GCC 4.2 warnings
Anatolij Gustschin [Sat, 3 Dec 2011 06:46:13 +0000 (06:46 +0000)]
arch/arm/cpu/armv7/omap-common/spl.c: Fix GCC 4.2 warnings

Fix:
spl.c: In function 'jump_to_image_no_args':
spl.c:103: warning: assignment makes pointer from integer without a cast
spl.c:105: warning: dereferencing type-punned pointer will break
strict-aliasing rules

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: sricharan <r.sricharan@ti.com>
Cc: Tom Rini <trini@ti.com>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
Acked-by: Tom Rini <trini@ti.com>
12 years agoMX35: flea3: changes due to hardware revision B
Stefano Babic [Fri, 25 Nov 2011 08:08:36 +0000 (09:08 +0100)]
MX35: flea3: changes due to hardware revision B

Revision B of the board uses CSD0 for the DRAM,
as usual for MX3 boards. The patch fixes also
some values in the U-Boot environment.

Signed-off-by: Stefano Babic <sbabic@denx.de>
12 years agoMX: serial_mxc: cleanup removing nasty #ifdef
Stefano Babic [Tue, 22 Nov 2011 14:22:39 +0000 (15:22 +0100)]
MX: serial_mxc: cleanup removing nasty #ifdef

The serial driver for iMX SOCs is continuosly changed if a
new SOC or not yet used port is used. CONFIG_SYS_<SOC>_<UART Port>
defines were used only to find the base address for the selected UART.
Instead of that, move the base address to the board configuration
file and drop all #ifdef from driver.

Signed-off-by: Stefano Babic <sbabic@denx.de>
CC: Marek Vasut <marek.vasut@gmail.com>
CC: Wolfgang Denk <wd@denx.de>
CC: Fabio Estevam <fabio.estevam@freescale.com>
CC: Helmut Raiger <helmut.raiger@hale.at>
CC: John Rigby <jcrigby@gmail.com>
CC: Matthias Weisser <weisserm@arcor.de>
CC: Jason Liu <jason.hui@linaro.org>
Acked-by: Jason Liu <jason.hui@linaro.org>
12 years agoM28: Fix OB1 bug in GPIO driver
Robert Deliën [Tue, 22 Nov 2011 04:14:22 +0000 (04:14 +0000)]
M28: Fix OB1 bug in GPIO driver

This patch fixes a small off-by-one bug in the GPIO driver for the mxs platform that allowed the selection gpio pins of one bank more than the SoC actually has.

Signed-off-by: Robert Deliën <robert at delien.nl>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
12 years agoMXS: Add static annotations to dma driver
Marek Vasut [Wed, 23 Nov 2011 10:59:13 +0000 (10:59 +0000)]
MXS: Add static annotations to dma driver

Some functions were internal to the apbh dma driver, so annotate them static.
Some of the functions weren't used at all so drop them. This makes the U-Boot
binary smaller by about 1500 bytes.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Wolfgang Denk <wd@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agoapbh_dma: return error value on timeout
Wolfram Sang [Fri, 18 Nov 2011 01:17:44 +0000 (01:17 +0000)]
apbh_dma: return error value on timeout

When a timeout occurs, the return value is prepared but never returned.
Fix that.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agoEfika: Configure additional regulators for HDMI output
Marek Vasut [Wed, 28 Sep 2011 02:19:57 +0000 (02:19 +0000)]
Efika: Configure additional regulators for HDMI output

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Stefano Babic <sbabic@denx.de>
12 years agomx5: Correct a warning in clock.c
Simon Glass [Sat, 5 Nov 2011 04:25:22 +0000 (04:25 +0000)]
mx5: Correct a warning in clock.c

This corects the warning below, obtained with my gcc 4.6 compiler.

arch/arm/cpu/armv7/mx5/libmx5.o: In function `decode_pll':
arch/arm/cpu/armv7/mx5/clock.c:94: undefined reference to `__aeabi_uldivmod'

I am not able to test this on MX5x hardware, but it does improve the
MAKEALL output for me. You may already have a similar patch, but I cannot
see it on the list.

Signed-off-by: Simon Glass <sjg@chromium.org>
12 years agoMC13892: Add REGMODE0 bits definitions
Marek Vasut [Wed, 28 Sep 2011 02:07:26 +0000 (02:07 +0000)]
MC13892: Add REGMODE0 bits definitions

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Stefano Babic <sbabic@denx.de>
12 years agomx51evk: Configure the pins as GPIOs prior to using gpio_get_value
Fabio Estevam [Tue, 15 Nov 2011 05:51:33 +0000 (05:51 +0000)]
mx51evk: Configure the pins as GPIOs prior to using gpio_get_value

Configure the pins as GPIO prior to using gpio_get_value.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
12 years agomx53smd: Configure the pins as GPIOs prior to using gpio_get_value
Fabio Estevam [Tue, 15 Nov 2011 05:51:32 +0000 (05:51 +0000)]
mx53smd: Configure the pins as GPIOs prior to using gpio_get_value

Configure the pins as GPIO prior to using gpio_get_value.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
12 years agomx53evk: Configure the pins as GPIOs prior to using gpio_get_value
Fabio Estevam [Tue, 15 Nov 2011 05:51:31 +0000 (05:51 +0000)]
mx53evk: Configure the pins as GPIOs prior to using gpio_get_value

Configure the pins as GPIO prior to using gpio_get_value.

Cc: Jason Liu <r64343@freescale.com>
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Jason Liu <jason.hui@linaro.org>
12 years agomx53ard: Configure the pins as GPIOs prior to using gpio_get_value
Fabio Estevam [Tue, 15 Nov 2011 05:51:30 +0000 (05:51 +0000)]
mx53ard: Configure the pins as GPIOs prior to using gpio_get_value

Configure the pins as GPIO prior to using gpio_get_value.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
12 years agomx53loco: Configure the pins as GPIOs prior to using gpio_get_value
Fabio Estevam [Tue, 15 Nov 2011 05:51:29 +0000 (05:51 +0000)]
mx53loco: Configure the pins as GPIOs prior to using gpio_get_value

Configure the pins as GPIO prior to using gpio_get_value.

Cc: Jason Liu <r64343@freescale.com>
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Jason Liu <jason.hui@linaro.org>
12 years agoOMAP3: Add SPL_BOARD_INIT hook
Tom Rini [Wed, 23 Nov 2011 05:13:06 +0000 (05:13 +0000)]
OMAP3: Add SPL_BOARD_INIT hook

Add an SPL_BOARD_INIT hook and for OMAP3 have it turn on i2c.  OMAP4
doesn't need i2c enabled in SPL.  Enable SPL_BOARD_INIT on devkit8000.

Cc: Frederik Kriewitz <frederik@kriewitz.eu>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoAM3517 CraneBoard: Add SPL support
Tom Rini [Fri, 18 Nov 2011 12:48:11 +0000 (12:48 +0000)]
AM3517 CraneBoard: Add SPL support

The only change of note is that we move from 0x80008000 to 0x80100000
for CONFIG_SYS_TEXT_BASE

Cc: Nagendra T S <nagendra@mistralsolutions.com>
Tested-by: Koen Kooi <k-kooi@ti.com>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoAM3517: Add SPL support
Tom Rini [Fri, 18 Nov 2011 12:48:10 +0000 (12:48 +0000)]
AM3517: Add SPL support

The only change of note is that we move from 0x80008000 to 0x80100000
for CONFIG_SYS_TEXT_BASE

Cc: Vaibhav Hiremath <hvaibhav@ti.com>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoOMAP3: Add SPL support to omap3_evm
Tom Rini [Fri, 18 Nov 2011 12:48:09 +0000 (12:48 +0000)]
OMAP3: Add SPL support to omap3_evm

Add Hynix 200MHz timing information to <asm/arch-omap3/mem.h>.
This also changes CONFIG_SYS_TEXT_BASE to 0x80100000.

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoOMAP3: Add SPL support to Beagleboard
Tom Rini [Fri, 18 Nov 2011 12:48:08 +0000 (12:48 +0000)]
OMAP3: Add SPL support to Beagleboard

This introduces 200MHz Micron parts timing information based on x-loader
to <asm/arch-omap3/mem.h> and Numonyx MCFG calculation.  The memory init
logic is also based on what x-loader does in these cases.  Note that
while previously u-boot would be flashed in with SW ECC in this case it
now must be flashed with HW ECC.  We also change CONFIG_SYS_TEXT_BASE to
0x80100000.

Cc: Dirk Behme <dirk.behme@gmail.com>
Beagleboard rev C5, xM rev A:
Tested-by: Tom Rini <trini@ti.com>
Beagleboard xM rev C:
Tested-by: Matt Ranostay <mranostay@gmail.com>
Beagleboard rev B7, C2, xM rev B:
Tested-by: Matt Porter <mporter@ti.com>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoOMAP3 SPL: Add identify_nand_chip function
Tom Rini [Fri, 18 Nov 2011 12:48:07 +0000 (12:48 +0000)]
OMAP3 SPL: Add identify_nand_chip function

A number of boards are populated with a PoP chip for both DDR and NAND
memory.  Other boards may simply use this as an easy way to identify
board revs.  So we provide a function that can be called early to reset
the NAND chip and return the result of NAND_CMD_READID.  All of this
code is put into spl_id_nand.c and controlled via CONFIG_SPL_OMAP3_ID_NAND.

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoOMAP3 SPL: Rework memory initalization and devkit8000 support
Tom Rini [Fri, 18 Nov 2011 12:48:06 +0000 (12:48 +0000)]
OMAP3 SPL: Rework memory initalization and devkit8000 support

This changes to making the board be responsible for providing the
memory initialization timings in SPL and converts the devkit8000
to this framework.  In SPL we try and initialize both CS0 and CS1.

Cc: Frederik Kriewitz <frederik@kriewitz.eu>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoOMAP3: Suffix all Micron memory timing parts with their speed
Tom Rini [Fri, 18 Nov 2011 12:48:05 +0000 (12:48 +0000)]
OMAP3: Suffix all Micron memory timing parts with their speed

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoOMAP3: Add optimal SDRC autorefresh control values
Tom Rini [Fri, 18 Nov 2011 12:48:04 +0000 (12:48 +0000)]
OMAP3: Add optimal SDRC autorefresh control values

This adds the optimal SDRC autorefresh control register values for
100Mhz, 133MHz, 165MHz and 200MHz clocks.  We switch to using this
to provide the default 165MHz value.

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoomap3: mem: Add MCFG helper macro
Tom Rini [Fri, 18 Nov 2011 12:48:03 +0000 (12:48 +0000)]
omap3: mem: Add MCFG helper macro

This adds an MCFG macro to calculate the correct value, similar to
the ACTIMA/ACTIMB macros and adds a comment that all of the potential
values here are documented in the TRM.  Then we convert the Micron
value to use this macro.

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoOMAP3: Remove get_mem_type prototype
Tom Rini [Fri, 18 Nov 2011 12:48:02 +0000 (12:48 +0000)]
OMAP3: Remove get_mem_type prototype

This function doesn't exist for omap3

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoOMAP3: Change mem_ok to clear again after reading back
Tom Rini [Fri, 18 Nov 2011 12:48:01 +0000 (12:48 +0000)]
OMAP3: Change mem_ok to clear again after reading back

It's possible to need to call this function on the same banks multiple
times so we want to be sure that 'pos A' is cleared out again at the
end.

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoOMAP3: Add a helper function to set timings in SDRC
Tom Rini [Fri, 18 Nov 2011 12:48:00 +0000 (12:48 +0000)]
OMAP3: Add a helper function to set timings in SDRC

Since we go through the sequence to setup the SDRC timings more than
once, break this logic out into its own function and have that function
call mem_ok() to make sure the memory is usable.

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoOMAP3: Update SDRC dram_init to always call make_cs1_contiguous()
Tom Rini [Fri, 18 Nov 2011 12:47:59 +0000 (12:47 +0000)]
OMAP3: Update SDRC dram_init to always call make_cs1_contiguous()

We update the comment in make_cs1_contiguous() to be a little bit
more clear (it's been copy/pasted from other silicons) and then
explain in dram_init() why we need to always try this.

Note that in the previous behavior we were always calling this on
boards that never had cs1 populated anyhow so making sure we do
this always is fine and will correct things like omap3evm detecting
an invalid amount of memory (384MB).

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoomap3: mem: Comment enable_gpmc_cs_config more
Tom Rini [Fri, 18 Nov 2011 12:47:58 +0000 (12:47 +0000)]
omap3: mem: Comment enable_gpmc_cs_config more

Expand the "enable the config" comment to explain what the bit shifts
are and define out two of the magic numbers.

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoARM: davici_emac: Fix condition for number of phy detects
Prabhakar Lad [Thu, 17 Nov 2011 02:53:23 +0000 (02:53 +0000)]
ARM: davici_emac: Fix condition for number of phy detects

Fix the condition for number of phys in
davinci_eth_phy_detect() function.
CONFIG_SYS_DAVINCI_EMAC_PHY_COUNT indicates number of
phys. From this commit id dc02badab480563b0bf9d3908046ea9d6b22ae63
davinci emac initilazed one less than the number of phy count.

Signed-off-by: Prabhakar Lad <prabhakar.csengg@gmail.com>
Acked-by: Heiko Schocher <hs@denx.de>
12 years agoarm: printf() is not available in some SPL configurations
Christian Riesch [Tue, 29 Nov 2011 00:11:03 +0000 (00:11 +0000)]
arm: printf() is not available in some SPL configurations

This patch avoids build breakage for SPLs that do not support printf.

Signed-off-by: Christian Riesch <christian.riesch@omicron.at>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Albert Aribaud <albert.u.boot@aribaud.net>
Acked-by: Tom Rini <trini@ti.com>
Acked-by: Andreas Bießmann <andreas.devel@googlemail.com>
12 years agoarm, davinci: add support for am1808 based enbw_cmc board
Heiko Schocher [Tue, 29 Nov 2011 02:33:47 +0000 (02:33 +0000)]
arm, davinci: add support for am1808 based enbw_cmc board

- booting from NOR Flash with direct boot method
- POST support
- LOGBUF support

Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Paulraj Sandeep <s-paulraj@ti.com>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Christian Riesch <christian.riesch@omicron.at>
12 years agoarm, davinci: move misc function in arch tree
Heiko Schocher [Tue, 29 Nov 2011 02:33:46 +0000 (02:33 +0000)]
arm, davinci: move misc function in arch tree

move the board/davinci/common/misc.c file to
arch/arm/cpu/arm926ejs/davinci/misc.c, so all
davinci boards can use this functions.

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: Christian Riesch <christian.riesch@omicron.at>
12 years agoarm, board/davinci/common/misc.c: Codingstyle cleanup
Heiko Schocher [Tue, 29 Nov 2011 02:33:45 +0000 (02:33 +0000)]
arm, board/davinci/common/misc.c: Codingstyle cleanup

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: Christian Riesch <christian.riesch@omicron.at>
12 years agoarm, davinci, da850: add uart1 tx rx pinmux config
Heiko Schocher [Tue, 29 Nov 2011 02:33:44 +0000 (02:33 +0000)]
arm, davinci, da850: add uart1 tx rx pinmux config

Signed-off-by: Heiko Schocher <hs@denx.de>
Acked-by: Tom Rini <trini@ti.com>
Cc: Sandeep Paulraj <s-paulraj@ti.com>
Cc: Tom Rini <tom.rini@gmail.com>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Cc: Christian Riesch <christian.riesch@omicron.at>
12 years agoarm, davinci: move davinci_rtc struct to hardware.h
Heiko Schocher [Tue, 29 Nov 2011 02:33:43 +0000 (02:33 +0000)]
arm, davinci: move davinci_rtc struct to hardware.h

move struct davinci_rtc to arch/arm/include/asm/arch-davinci/hardware.h
and add RTC_KICK0R_WE, RTC_KICK1R_WE defines,
so they are global useable.

Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Sandeep Paulraj <s-paulraj@ti.com>
12 years agoarm, davinci: Remove duplication of pinmux configuration code
Christian Riesch [Mon, 28 Nov 2011 23:46:20 +0000 (23:46 +0000)]
arm, davinci: Remove duplication of pinmux configuration code

This patch replaces the pinmux configuration code in
arch/arm/cpu/arm926ejs/davinci/da850_lowlevel.c by the code from
arch/arm/cpu/arm926ejs/davinci/pinmux.c.

Signed-off-by: Christian Riesch <christian.riesch@omicron.at>
Cc: Sandeep Paulraj <s-paulraj@ti.com>
Acked-by: Heiko Schocher <hs@denx.de>
12 years agoarm, hawkboard: Use the pinmux configurations defined in the arch tree
Christian Riesch [Mon, 28 Nov 2011 23:46:19 +0000 (23:46 +0000)]
arm, hawkboard: Use the pinmux configurations defined in the arch tree

The boards in board/davinci/da8xxevm/ define pinmux_config[] vectors
that contain pinmux configurations for emac, uarts, memory controllers...
In an earlier patch such pinmux configurations were added to the arch
tree. This patch makes the hawkboard use these definitions instead of
defining its own.

Signed-off-by: Christian Riesch <christian.riesch@omicron.at>
Cc: Sandeep Paulraj <s-paulraj@ti.com>
Cc: Heiko Schocher <hs@denx.de>
Cc: Syed Mohammed Khasim <sm.khasim@gmail.com>
Cc: Sughosh Ganu <urwithsughosh@gmail.com>
Cc: Mike Frysinger <vapier@gentoo.org>
Acked-by: Heiko Schocher <hs@denx.de>
12 years agoarm, da850evm: Use the pinmux configurations defined in the arch tree
Christian Riesch [Mon, 28 Nov 2011 23:46:18 +0000 (23:46 +0000)]
arm, da850evm: Use the pinmux configurations defined in the arch tree

The boards in board/davinci/da8xxevm/ define pinmux_config[] vectors
that contain pinmux configurations for emac, uarts, memory controllers...
In an earlier patch such pinmux configurations were added to the arch
tree. This patch makes the da850evm use these definitions instead of
defining its own.

Signed-off-by: Christian Riesch <christian.riesch@omicron.at>
Cc: Sandeep Paulraj <s-paulraj@ti.com>
Cc: Heiko Schocher <hs@denx.de>
Cc: Sudhakar Rajashekhara <sudhakar.raj@ti.com>
Cc: Mike Frysinger <vapier@gentoo.org>
Acked-by: Heiko Schocher <hs@denx.de>