diff options
author | Victor Rodriguez <vm.rod25@gmail.com> | 2010-09-23 12:28:40 -0400 |
---|---|---|
committer | Kevin Hilman <khilman@deeprootsystems.com> | 2010-09-24 10:40:32 -0400 |
commit | 6c18c91b3a6db6169998b54df12c9d53e74999f3 (patch) | |
tree | 6f0ea4c7bd54838caa9d7ae9d6ccbb70da67e4fa /arch/arm | |
parent | 2a7dae04f3a5966ade5086ebd2e09f170fd0e085 (diff) |
davinci: Initial support for Omapl138-Hawkboard
This patch adds initial support for the Hawkboard-L138 system
It is under the machine name "omapl138_hawkboard".
This system is based on the da850 davinci CPU architecture.
Information on these system may be found at http://www.hawkboard.org.
Basic support for the UART console is included in this patch.
It's tested with latest Angstrom File Systems like ramdisk
from http://alturl.com/imb45.
Signed-off-by: Victor Rodriguez <victor.rodriguez@sasken.com>
Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/configs/da8xx_omapl_defconfig | 1 | ||||
-rw-r--r-- | arch/arm/mach-davinci/Kconfig | 8 | ||||
-rw-r--r-- | arch/arm/mach-davinci/Makefile | 1 | ||||
-rw-r--r-- | arch/arm/mach-davinci/board-omapl138-hawk.c | 64 | ||||
-rw-r--r-- | arch/arm/mach-davinci/include/mach/uncompress.h | 1 |
5 files changed, 75 insertions, 0 deletions
diff --git a/arch/arm/configs/da8xx_omapl_defconfig b/arch/arm/configs/da8xx_omapl_defconfig index f8a47ee3ae7f..cdc40c4b8c48 100644 --- a/arch/arm/configs/da8xx_omapl_defconfig +++ b/arch/arm/configs/da8xx_omapl_defconfig | |||
@@ -18,6 +18,7 @@ CONFIG_ARCH_DAVINCI=y | |||
18 | CONFIG_ARCH_DAVINCI_DA830=y | 18 | CONFIG_ARCH_DAVINCI_DA830=y |
19 | CONFIG_ARCH_DAVINCI_DA850=y | 19 | CONFIG_ARCH_DAVINCI_DA850=y |
20 | CONFIG_MACH_MITYOMAPL138=y | 20 | CONFIG_MACH_MITYOMAPL138=y |
21 | CONFIG_MACH_OMAPL138_HAWKBOARD=y | ||
21 | CONFIG_DAVINCI_RESET_CLOCKS=y | 22 | CONFIG_DAVINCI_RESET_CLOCKS=y |
22 | CONFIG_NO_HZ=y | 23 | CONFIG_NO_HZ=y |
23 | CONFIG_HIGH_RES_TIMERS=y | 24 | CONFIG_HIGH_RES_TIMERS=y |
diff --git a/arch/arm/mach-davinci/Kconfig b/arch/arm/mach-davinci/Kconfig index 9aca60cb4241..b77b860b36d7 100644 --- a/arch/arm/mach-davinci/Kconfig +++ b/arch/arm/mach-davinci/Kconfig | |||
@@ -193,6 +193,14 @@ config MACH_MITYOMAPL138 | |||
193 | System on Module. Information on this SoM may be found at | 193 | System on Module. Information on this SoM may be found at |
194 | http://www.mitydsp.com | 194 | http://www.mitydsp.com |
195 | 195 | ||
196 | config MACH_OMAPL138_HAWKBOARD | ||
197 | bool "TI AM1808 / OMAPL-138 Hawkboard platform" | ||
198 | depends on ARCH_DAVINCI_DA850 | ||
199 | help | ||
200 | Say Y here to select the TI AM1808 / OMAPL-138 Hawkboard platform . | ||
201 | Information of this board may be found at | ||
202 | http://www.hawkboard.org/ | ||
203 | |||
196 | config DAVINCI_MUX | 204 | config DAVINCI_MUX |
197 | bool "DAVINCI multiplexing support" | 205 | bool "DAVINCI multiplexing support" |
198 | depends on ARCH_DAVINCI | 206 | depends on ARCH_DAVINCI |
diff --git a/arch/arm/mach-davinci/Makefile b/arch/arm/mach-davinci/Makefile index a7a70d1ba363..0b87a1ca2bb3 100644 --- a/arch/arm/mach-davinci/Makefile +++ b/arch/arm/mach-davinci/Makefile | |||
@@ -34,6 +34,7 @@ obj-$(CONFIG_MACH_DAVINCI_DA830_EVM) += board-da830-evm.o | |||
34 | obj-$(CONFIG_MACH_DAVINCI_DA850_EVM) += board-da850-evm.o | 34 | obj-$(CONFIG_MACH_DAVINCI_DA850_EVM) += board-da850-evm.o |
35 | obj-$(CONFIG_MACH_TNETV107X) += board-tnetv107x-evm.o | 35 | obj-$(CONFIG_MACH_TNETV107X) += board-tnetv107x-evm.o |
36 | obj-$(CONFIG_MACH_MITYOMAPL138) += board-mityomapl138.o | 36 | obj-$(CONFIG_MACH_MITYOMAPL138) += board-mityomapl138.o |
37 | obj-$(CONFIG_MACH_OMAPL138_HAWKBOARD) += board-omapl138-hawk.o | ||
37 | 38 | ||
38 | # Power Management | 39 | # Power Management |
39 | obj-$(CONFIG_CPU_FREQ) += cpufreq.o | 40 | obj-$(CONFIG_CPU_FREQ) += cpufreq.o |
diff --git a/arch/arm/mach-davinci/board-omapl138-hawk.c b/arch/arm/mach-davinci/board-omapl138-hawk.c new file mode 100644 index 000000000000..c472dd88ad91 --- /dev/null +++ b/arch/arm/mach-davinci/board-omapl138-hawk.c | |||
@@ -0,0 +1,64 @@ | |||
1 | /* | ||
2 | * Hawkboard.org based on TI's OMAP-L138 Platform | ||
3 | * | ||
4 | * Initial code: Syed Mohammed Khasim | ||
5 | * | ||
6 | * Copyright (C) 2009 Texas Instruments Incorporated - http://www.ti.com | ||
7 | * | ||
8 | * This file is licensed under the terms of the GNU General Public License | ||
9 | * version 2. This program is licensed "as is" without any warranty of | ||
10 | * any kind, whether express or implied. | ||
11 | */ | ||
12 | #include <linux/kernel.h> | ||
13 | #include <linux/init.h> | ||
14 | #include <linux/console.h> | ||
15 | #include <linux/gpio.h> | ||
16 | |||
17 | #include <asm/mach-types.h> | ||
18 | #include <asm/mach/arch.h> | ||
19 | |||
20 | #include <mach/cp_intc.h> | ||
21 | #include <mach/da8xx.h> | ||
22 | |||
23 | static struct davinci_uart_config omapl138_hawk_uart_config __initdata = { | ||
24 | .enabled_uarts = 0x7, | ||
25 | }; | ||
26 | |||
27 | static __init void omapl138_hawk_init(void) | ||
28 | { | ||
29 | int ret; | ||
30 | |||
31 | davinci_serial_init(&omapl138_hawk_uart_config); | ||
32 | |||
33 | ret = da8xx_register_watchdog(); | ||
34 | if (ret) | ||
35 | pr_warning("omapl138_hawk_init: " | ||
36 | "watchdog registration failed: %d\n", | ||
37 | ret); | ||
38 | } | ||
39 | |||
40 | #ifdef CONFIG_SERIAL_8250_CONSOLE | ||
41 | static int __init omapl138_hawk_console_init(void) | ||
42 | { | ||
43 | if (!machine_is_omapl138_hawkboard()) | ||
44 | return 0; | ||
45 | |||
46 | return add_preferred_console("ttyS", 2, "115200"); | ||
47 | } | ||
48 | console_initcall(omapl138_hawk_console_init); | ||
49 | #endif | ||
50 | |||
51 | static void __init omapl138_hawk_map_io(void) | ||
52 | { | ||
53 | da850_init(); | ||
54 | } | ||
55 | |||
56 | MACHINE_START(OMAPL138_HAWKBOARD, "AM18x/OMAP-L138 Hawkboard") | ||
57 | .phys_io = IO_PHYS, | ||
58 | .io_pg_offst = (__IO_ADDRESS(IO_PHYS) >> 18) & 0xfffc, | ||
59 | .boot_params = (DA8XX_DDR_BASE + 0x100), | ||
60 | .map_io = omapl138_hawk_map_io, | ||
61 | .init_irq = cp_intc_init, | ||
62 | .timer = &davinci_timer, | ||
63 | .init_machine = omapl138_hawk_init, | ||
64 | MACHINE_END | ||
diff --git a/arch/arm/mach-davinci/include/mach/uncompress.h b/arch/arm/mach-davinci/include/mach/uncompress.h index d370391d6f31..47723e8d75a4 100644 --- a/arch/arm/mach-davinci/include/mach/uncompress.h +++ b/arch/arm/mach-davinci/include/mach/uncompress.h | |||
@@ -89,6 +89,7 @@ static inline void __arch_decomp_setup(unsigned long arch_id) | |||
89 | DEBUG_LL_DA8XX(davinci_da830_evm, 2); | 89 | DEBUG_LL_DA8XX(davinci_da830_evm, 2); |
90 | DEBUG_LL_DA8XX(davinci_da850_evm, 2); | 90 | DEBUG_LL_DA8XX(davinci_da850_evm, 2); |
91 | DEBUG_LL_DA8XX(mityomapl138, 1); | 91 | DEBUG_LL_DA8XX(mityomapl138, 1); |
92 | DEBUG_LL_DA8XX(omapl138_hawkboard, 2); | ||
92 | 93 | ||
93 | /* TNETV107x boards */ | 94 | /* TNETV107x boards */ |
94 | DEBUG_LL_TNETV107X(tnetv107x, 1); | 95 | DEBUG_LL_TNETV107X(tnetv107x, 1); |