aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorvikram pandita <vikram.pandita@ti.com>2009-11-22 13:11:32 -0500
committerTony Lindgren <tony@atomide.com>2009-11-22 13:24:33 -0500
commit5f35fbe8b8a05743fb9686e33194a126cd4273f6 (patch)
tree815c2428deabf4fed11b55f97578735f667173ef /arch
parent6b61a83b31744d143b0e7bc92f463d831319eabc (diff)
omap3: zoom: Introduce zoom3 board support
Zoom3 is the next version of Zoom2 board. There has been a silicon update from zoom2 to zoom3. Zoom2 has OMAP34xx Zoom3 has OMAP3630 [1] Zoom3 = OMAP3630 SOM board [2] + same zoom2 main board [3] + same debugboard Zoom3 has a SDRAM part from Hynix Zoom2 had SDRAM part from micron Hynix memory timings are contributed by: Chalhoub, Nicole and Bour, Vincent Reuse the zoom2 files as much for zoom3, as at board level, there is no change at all. References: (courtesy Nishant Menon) [1] OMAP3630 http://focus.ti.com/general/docs/wtbu/wtbuproductcontent.tsp?templateId=6123&navigationId=12836&contentId=52606 [2] SOM boards http://logicpd.com/products/system-modules/texas-instruments-omap35x-som-lv [3] Zoom2 boards http://logicpd.com/products/development-kits/texas-instruments-zoom%E2%84%A2-omap34x-ii-mdp OMAP3630: Signed-off-by: Vikram Pandita <vikram.pandita@ti.com> Cc: Nicole Chalhoub <n-chalhoub@ti.com> Cc: Vincent Bour <v-bour@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-omap2/Kconfig4
-rw-r--r--arch/arm/mach-omap2/Makefile4
-rw-r--r--arch/arm/mach-omap2/board-zoom3.c59
-rw-r--r--arch/arm/mach-omap2/sdram-hynix-h8mbx00u0mer-0em.h51
4 files changed, 118 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index aad194f61a33..0d14dde68cd4 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -97,6 +97,10 @@ config MACH_OMAP_ZOOM2
97 bool "OMAP3 Zoom2 board" 97 bool "OMAP3 Zoom2 board"
98 depends on ARCH_OMAP3 && ARCH_OMAP34XX 98 depends on ARCH_OMAP3 && ARCH_OMAP34XX
99 99
100config MACH_OMAP_ZOOM3
101 bool "OMAP3630 Zoom3 board"
102 depends on ARCH_OMAP3 && ARCH_OMAP34XX
103
100config MACH_OMAP_4430SDP 104config MACH_OMAP_4430SDP
101 bool "OMAP 4430 SDP board" 105 bool "OMAP 4430 SDP board"
102 depends on ARCH_OMAP4 106 depends on ARCH_OMAP4
diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
index 8ac121edfa4a..f40619ed7fad 100644
--- a/arch/arm/mach-omap2/Makefile
+++ b/arch/arm/mach-omap2/Makefile
@@ -78,6 +78,10 @@ obj-$(CONFIG_MACH_OMAP_ZOOM2) += board-zoom2.o \
78 board-zoom-peripherals.o \ 78 board-zoom-peripherals.o \
79 mmc-twl4030.o \ 79 mmc-twl4030.o \
80 board-zoom-debugboard.o 80 board-zoom-debugboard.o
81obj-$(CONFIG_MACH_OMAP_ZOOM3) += board-zoom3.o \
82 board-zoom-peripherals.o \
83 mmc-twl4030.o \
84 board-zoom-debugboard.o
81 85
82obj-$(CONFIG_MACH_OMAP_4430SDP) += board-4430sdp.o 86obj-$(CONFIG_MACH_OMAP_4430SDP) += board-4430sdp.o
83 87
diff --git a/arch/arm/mach-omap2/board-zoom3.c b/arch/arm/mach-omap2/board-zoom3.c
new file mode 100644
index 000000000000..8d965a6516c8
--- /dev/null
+++ b/arch/arm/mach-omap2/board-zoom3.c
@@ -0,0 +1,59 @@
1/*
2 * Copyright (C) 2009 Texas Instruments Inc.
3 *
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 2 as
7 * published by the Free Software Foundation.
8 */
9
10#include <linux/kernel.h>
11#include <linux/init.h>
12#include <linux/platform_device.h>
13#include <linux/input.h>
14#include <linux/gpio.h>
15
16#include <asm/mach-types.h>
17#include <asm/mach/arch.h>
18
19#include <mach/board-zoom.h>
20
21#include <plat/common.h>
22#include <plat/board.h>
23
24#include "sdram-hynix-h8mbx00u0mer-0em.h"
25
26static void __init omap_zoom_map_io(void)
27{
28 omap2_set_globals_343x();
29 omap2_map_common_io();
30}
31
32static struct omap_board_config_kernel zoom_config[] __initdata = {
33};
34
35static void __init omap_zoom_init_irq(void)
36{
37 omap_board_config = zoom_config;
38 omap_board_config_size = ARRAY_SIZE(zoom_config);
39 omap2_init_common_hw(h8mbx00u0mer0em_sdrc_params,
40 h8mbx00u0mer0em_sdrc_params);
41 omap_init_irq();
42 omap_gpio_init();
43}
44
45static void __init omap_zoom_init(void)
46{
47 zoom_peripherals_init();
48 zoom_debugboard_init();
49}
50
51MACHINE_START(OMAP_ZOOM3, "OMAP Zoom3 board")
52 .phys_io = 0x48000000,
53 .io_pg_offst = ((0xfa000000) >> 18) & 0xfffc,
54 .boot_params = 0x80000100,
55 .map_io = omap_zoom_map_io,
56 .init_irq = omap_zoom_init_irq,
57 .init_machine = omap_zoom_init,
58 .timer = &omap_timer,
59MACHINE_END
diff --git a/arch/arm/mach-omap2/sdram-hynix-h8mbx00u0mer-0em.h b/arch/arm/mach-omap2/sdram-hynix-h8mbx00u0mer-0em.h
new file mode 100644
index 000000000000..8bfaf342a028
--- /dev/null
+++ b/arch/arm/mach-omap2/sdram-hynix-h8mbx00u0mer-0em.h
@@ -0,0 +1,51 @@
1/*
2 * SDRC register values for the Hynix H8MBX00U0MER-0EM
3 *
4 * Copyright (C) 2009 Texas Instruments, Inc.
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 */
10
11#ifndef __ARCH_ARM_MACH_OMAP2_SDRAM_HYNIX_H8MBX00U0MER0EM
12#define __ARCH_ARM_MACH_OMAP2_SDRAM_HYNIX_H8MBX00U0MER0EM
13
14#include <plat/sdrc.h>
15
16/* Hynix H8MBX00U0MER-0EM */
17static struct omap_sdrc_params h8mbx00u0mer0em_sdrc_params[] = {
18 [0] = {
19 .rate = 200000000,
20 .actim_ctrla = 0xa2e1b4c6,
21 .actim_ctrlb = 0x0002131c,
22 .rfr_ctrl = 0x0005e601,
23 .mr = 0x00000032,
24 },
25 [1] = {
26 .rate = 166000000,
27 .actim_ctrla = 0x629db4c6,
28 .actim_ctrlb = 0x00012214,
29 .rfr_ctrl = 0x0004dc01,
30 .mr = 0x00000032,
31 },
32 [2] = {
33 .rate = 100000000,
34 .actim_ctrla = 0x51912284,
35 .actim_ctrlb = 0x0002120e,
36 .rfr_ctrl = 0x0002d101,
37 .mr = 0x00000022,
38 },
39 [3] = {
40 .rate = 83000000,
41 .actim_ctrla = 0x31512283,
42 .actim_ctrlb = 0x0001220a,
43 .rfr_ctrl = 0x00025501,
44 .mr = 0x00000022,
45 },
46 [4] = {
47 .rate = 0
48 },
49};
50
51#endif