Commit graph

93 commits

Author SHA1 Message Date
Robert P. J. Day
c9c75e4cf3 Add comment explaining what cortex_a9_rev() is doing.
Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-02-10 12:34:53 +01:00
Robert P. J. Day
c0df8f2fca Remove apparently superfluous Kconfig variable HAS_OMAP_NAND
Remove what is an apparently valueless Kconfig variable HAS_OMAP_NAND.
A search of the entire source tree shows:

$ grep -r HAS_OMAP_NAND *
arch/arm/mach-omap/Kconfig:	select HAS_OMAP_NAND
arch/arm/mach-omap/Kconfig:	select HAS_OMAP_NAND
arch/arm/mach-omap/Kconfig:	select HAS_OMAP_NAND
arch/arm/mach-omap/Kconfig:	select HAS_OMAP_NAND
arch/arm/mach-omap/Kconfig:config HAS_OMAP_NAND
arch/arm/configs/phycard_a_l1_defconfig:CONFIG_HAS_OMAP_NAND=y
$

where the definition of that variable is simply:

config HAS_OMAP_NAND
        bool

so it seems pretty clear it can be removed as nothing is using it.

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-02-07 23:35:45 +01:00
Sascha Hauer
037cf6e80b Merge branch 'next' 2012-02-07 13:54:14 +01:00
Robert P. J. Day
b07b5f8689 Add ARCH_OMAP[34] dependencies to Kconfig file
Without the proper OMAP3 or OMAP4 dependency directives, you get the
wrong list of choices displayed based on which OMAP variant you pick.

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-02-07 11:54:47 +01:00
Juergen Kilb
21d2470471 ARM pca-a-l1: should depend on ARCH_OMAP3
Signed-off-by: Juergen Kilb <J.Kilb@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-01-23 09:33:22 +01:00
Juergen Kilb
a283c2cbd8 ARM pca-a-l1: fix board_init
board_init was moved to pure_initcall. broken since:

commit 0adce7ec68
Author: Sascha Hauer <s.hauer@pengutronix.de>
Date:   Sun Jan 15 21:11:17 2012 +0100

    ARM omap3: move board_init to pure_initcall

    board_init initializes the mux and sdram. For both there is no
    need to configure this so early. Move the code to a pure_initcall
    and remove the surrounding unneeded code.

    Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
    Tested-by: Sanjeev Premi <premi@ti.com>

Signed-off-by: Juergen Kilb <J.Kilb@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-01-23 09:33:22 +01:00
Sascha Hauer
fc5b5e71ac ARM omap3: make omap3_core.S thumb safe
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Tested-by: Sanjeev Premi <premi@ti.com>
2012-01-17 18:51:10 +01:00
Sascha Hauer
8b99fe8956 ARM omap3: reimplement setup_auxcr in pure asm
This function consists of only inline asm statements, so
use assembly in the first place. Also makes sure that the
function is compiled in arm mode.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Tested-by: Sanjeev Premi <premi@ti.com>
2012-01-17 18:50:50 +01:00
Sascha Hauer
987cada74a ARM omap3: remove vector setup from lowlevel code
No need to do this so early. We can't print anything right
now anyway, so there is no need to setup vectors.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Tested-by: Sanjeev Premi <premi@ti.com>
2012-01-17 18:50:45 +01:00
Sascha Hauer
91f2b4da50 ARM omap3 clock: move pll tables to C code
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Tested-by: Sanjeev Premi <premi@ti.com>
2012-01-17 18:50:41 +01:00
Sascha Hauer
ae2ac15105 ARM omap3: call a_init from board code
There is no need to call a_init before relocation, so rename
the function to omap3_core_init and call it from board code.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Tested-by: Sanjeev Premi <premi@ti.com>
2012-01-17 18:50:36 +01:00
Sascha Hauer
0adce7ec68 ARM omap3: move board_init to pure_initcall
board_init initializes the mux and sdram. For both there is no
need to configure this so early. Move the code to a pure_initcall
and remove the surrounding unneeded code.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Tested-by: Sanjeev Premi <premi@ti.com>
2012-01-17 18:50:31 +01:00
Sascha Hauer
4f5ba4e3bb ARM omap3: remove OMAP3_COPY_CLOCK_SRAM
The X-loader startup relocates to SRAM anyway, so there
is no need to be runnable from flash for the clock code.
This config is disabled in all defconfigs anyway, so remove
it.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Tested-by: Sanjeev Premi <premi@ti.com>
2012-01-17 18:50:19 +01:00
Jean-Christophe PLAGNIOL-VILLARD
494a12f703 omap3: move platform lowlevel init to mach-omap
this will allow to switch omap3 to standard organisation

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-01-16 10:28:00 +01:00
Sanjeev Premi
92bf239823 ARM omap3evm: Allow building first stage bootloader
Enable the flag HAVE_NOSHELL to allow first stage
bootloader to be built for this board.

Signed-off-by: Sanjeev Premi <premi@ti.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-01-12 09:58:35 +01:00
Juergen Kilb
212145ee5a Add support for the Phytec phyCARD-A-L1 (PCA-A-L1).
Signed-off-by: Juergen Kilb <J.Kilb@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-01-02 11:43:00 +01:00
Alexander Aring
659f150e90 omap_hsmmc: setup mmc voltage on twl6030
Support the setup of the mmc voltage, when booting OMAP4 with twl6030
from nand.

Signed-off-by: Alexander Aring <a.aring@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-12-21 12:48:08 +01:00
Alexander Aring
8007b25bdf i2c-omap: add i2c omap4 support
Added i2c support for omap4. Tested on pcm049.

Driver based on linux kernel implementation.
Also added a shift to access 16-bit registers
to make support for OMAP730/850 possible.

If accessing a non existing slave the bus will go into arbitration mode.
It's unable to recover from it.

Signed-off-by: Alexander Aring <a.aring@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-12-21 12:46:01 +01:00
Daniel Mack
bfba1b6cab omap3: add register definitions for chip die ID
Signed-off-by: Daniel Mack <zonque@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-12-19 12:02:58 +01:00
Sanjeev Premi
b2e9356130 omap: Unify run_shell() in xload configuration
Currently, there are multiple definitions of run_shell()
for each board that can be build in "xload" configuration.
Now there is only one function used by all boards.

The functions defined in xload.c are used only when "xload"
configuration used; but it gets compiled unconditionally.
This has been fixed as well.

Signed-off-by: Sanjeev Premi <premi@ti.com>
Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-11-11 12:07:14 +01:00
Sascha Hauer
3ee7877a48 introduce io.h
To allow for some generic io accessors introduce io.h and use
this instead of asm/io.h throughout the tree.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-09-22 19:03:05 +02:00
Juergen Kilb
801c667d8c Added helper function to get CS1 base address.
This helper function can be used for automatic
SDDR configuration based on register settings
made by a previously first stage bootloader
i.e. x-loader.

Signed-off-by: Juergen Kilb <J.Kilb@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-09-12 12:31:08 +02:00
Juergen Kilb
b9126db43f Add omap_hsmmc platform data.
Add platform data to specify maximum frequency of hsmmc interface
which can be restricted due to external level shifters.

Signed-off-by: Juergen Kilb <J.Kilb@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-09-12 12:31:08 +02:00
Juergen Kilb
9c2a525398 Add Reset Support for omap3.
Inspired from reset_cpu in omap4_generic.c.

Signed-off-by: Juergen Kilb <j.kilb@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-09-12 12:31:08 +02:00
Sascha Hauer
43ebdba64a remove now unnecessary HAVE_MMU from Kconfig
MMU now can be enabled on every ARM board, so remove
the dependency.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-08-03 09:12:16 +02:00
Jean-Christophe PLAGNIOL-VILLARD
c71a77ab87 ns16550: switch to resource
use generic read/write depending on the memory size
if no reg_read/write defined

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
2011-08-01 16:33:09 +08:00
Jean-Christophe PLAGNIOL-VILLARD
715b4e7ae3 omap: switch to add_generic_device
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
2011-07-29 14:05:24 +08:00
Jan Weitzel
61a2ccfbae OMAP4: change boot order
If OMAP4 fall back to MMC1 boot in bootmode 0x39 (NAND,USB,UART,MMC1)
NAND and MMC bit in TRACING_VECTOR3 are set. With changed order it will
detect boot from MMC.

Signed-off-by: Jan Weitzel <j.weitzel@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-18 09:27:36 +02:00
Sascha Hauer
6aa0fba45f ARM omap beagle: Add noshell support for booting from MMC
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-12 10:39:20 +02:00
Sascha Hauer
98537dd8cc ARM omap4: Add pcm049 board support
This patch adds support for Phytecs pcm049 board

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-12 10:39:16 +02:00
Sascha Hauer
a7b2114ad2 ARM omap4: panda board support
This patch adds support for the TI omap4 panda board.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-12 10:39:12 +02:00
Sascha Hauer
1cf3936829 ARM omap: add xload helper functions
Add some common xload helper functions to determine the boot source
on omap3/4 and to load images from mmc and nand.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-12 09:54:57 +02:00
Sascha Hauer
0065062124 ARM omap: Add omap4 support
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-12 09:54:57 +02:00
Sascha Hauer
d0874a846f ARM omap: make sr32 a static inline function
This generates smaller code.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-12 09:54:57 +02:00
Sascha Hauer
802e7d1adf ARM omap: Add omap signGP tool and possibility to build ift images
The tool is needed to build images suitable for omap processors
to load from mmc or nand.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-12 09:54:56 +02:00
Sascha Hauer
9ba8f95724 Merge branch 'omap-drivers' into next 2011-04-06 09:20:21 +02:00
Sascha Hauer
6e7eba2c61 mtd nand omap: Add BCH ecc support
This patch adds BCH ecc support to the omap nand driver. The BCH
error correction allows for up to 8 bit error correction. It is
also needed for booting from nand on omap4.

This is based on code from Sukumar Ghorai <s-ghorai@ti.com>:

[PATCH] omap3: nand: bch ecc support added

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-04 15:28:49 +02:00
Sascha Hauer
694363574e mtd nand omap: make ecc mode runtime configurable
On omap we use different ecc modes for different purposes. The initial
boot code has to be written with hardware ecc whereas Linux usually uses
software ecc. To be able to write in both modes with a sinlge barebox
image introduce a eccmode device parameter.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-04 15:28:49 +02:00
Sascha Hauer
2a1db7330a mtd nand omap: Pass ecc mode from platform
As we will get more ecc modes pass through the exact mode from
the platform, not only a flag.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-04 15:28:49 +02:00
Sascha Hauer
574652f154 ARM omap: make gpio support mandatory
If compiled without gpio support the linker will throw the
gpio functions away anyway, so make the omap kconfig entries
a bit easier.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-04 15:10:16 +02:00
Sascha Hauer
85f8ff5abb arm omap: remove unused request/free gpio functions
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-04 15:10:16 +02:00
Sascha Hauer
819f416b86 omap: rename GPMC Kconfig entry to OMAP_GPMC
Give this omap specific entry an omap namespace. Also, remove
unnecessary dependency to omap2/3 in nand Kconfig.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-04 15:10:16 +02:00
Sascha Hauer
9c04112b7f ARM omap4: fix indention in Kconfig
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-04 15:10:16 +02:00
Sascha Hauer
e5482ce76b ARM omap: move architecture specific kconfig entries to arch part
Just like all other architectures do.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-04 15:10:15 +02:00
Sascha Hauer
088591c235 ARM omap: move devices-gpmc-nand.c to omap architecture directory
The original plan was to add all omap devices into the boards/omap
directory. Anyway, there will be reasons to put a board somewhere
else, so move the generic parts into the omap architecture directory.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-04 15:10:15 +02:00
Sascha Hauer
1c83145abf ARM omap: rework gpio support
The current gpio support is derived from the kernel which allows
for support for omap2/3/4 in a single kernel. We do not need this
here, so make it more simple to be able to add omap4 support later.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-04 15:10:15 +02:00
Sascha Hauer
bd29dfd5f7 ARM omap: move uart access functions to a more generic place
These functions can be used on omap4 aswell, so move them to
omap.c

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-04 15:10:15 +02:00
Sanjeev Premi
d4d7a19258 omap3: Define GFX_DIV values for OMAP34xx and OMAP36xx
This patch updates the clock dividers for the graphics
processor.

It is based on commit:
    c4e1d9b718b65436e30422506f43fa4eb21069d3
    at http://arago-project.org/git/projects/?p=u-boot-omap3.git

Signed-off-by: Sanjeev Premi <premi@ti.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-01-05 11:05:25 +01:00
Sanjeev Premi
f2fccf6473 omap3: Avoid sudden change to SYS_CLK divider
In function get_osc_clk_speed(), the SYS_CLK divider
was being changed 'suddenly'.

This change has cascading effect on the derived clocks,
leading to inconsistent behavior - often a crash.

Signed-off-by: Sanjeev Premi <premi@ti.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-01-05 11:05:25 +01:00
Sanjeev Premi
d03d53f9d5 omap36x: Perform basic clock initialization
This patch adds the basic clock initizlization for OMAP36XX.

Portion of this patch is based on commit:
    29587220909e639cda4fb5a35cb5bf33aba242b9
    at http://arago-project.org/git/projects/?p=x-load-omap3.git

Signed-off-by: Sanjeev Premi <premi@ti.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-01-05 11:05:25 +01:00