diff options
author | Daniel Mack <daniel@caiaq.de> | 2009-05-20 13:54:33 -0400 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2009-05-26 06:30:32 -0400 |
commit | 65b1aa13f2a14e113d1139ecf7cb2507a3cfa8b8 (patch) | |
tree | bc3dcf794b45e86f54cc3e4fca48baee544b15cb /arch/arm/mach-mx3 | |
parent | 0003b795c310da83501fcf0329f6be7a0984647d (diff) |
ARM: MX3: basic support for lilly-1131 board
This patch adds basic support for INCO startec's LILLY-1131 iMX31 based
modules. The module needs a baseboard support to work which will be
added in the next patch.
Signed-off-by: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/mach-mx3')
-rw-r--r-- | arch/arm/mach-mx3/Kconfig | 7 | ||||
-rw-r--r-- | arch/arm/mach-mx3/Makefile | 1 | ||||
-rw-r--r-- | arch/arm/mach-mx3/mx31lilly.c | 81 |
3 files changed, 89 insertions, 0 deletions
diff --git a/arch/arm/mach-mx3/Kconfig b/arch/arm/mach-mx3/Kconfig index ebab18a661ef..6f17ceb00593 100644 --- a/arch/arm/mach-mx3/Kconfig +++ b/arch/arm/mach-mx3/Kconfig | |||
@@ -60,6 +60,13 @@ config MACH_MX31MOBOARD | |||
60 | Include support for mx31moboard platform. This includes specific | 60 | Include support for mx31moboard platform. This includes specific |
61 | configurations for the board and its peripherals. | 61 | configurations for the board and its peripherals. |
62 | 62 | ||
63 | config MACH_MX31LILLY | ||
64 | bool "Support MX31 LILLY-1131 platforms (INCO startec)" | ||
65 | select ARCH_MX31 | ||
66 | help | ||
67 | Include support for mx31 based LILLY1131 modules. This includes | ||
68 | specific configurations for the board and its peripherals. | ||
69 | |||
63 | config MACH_QONG | 70 | config MACH_QONG |
64 | bool "Support Dave/DENX QongEVB-LITE platform" | 71 | bool "Support Dave/DENX QongEVB-LITE platform" |
65 | select ARCH_MX31 | 72 | select ARCH_MX31 |
diff --git a/arch/arm/mach-mx3/Makefile b/arch/arm/mach-mx3/Makefile index 611812bfe1d3..d3e3f3b06620 100644 --- a/arch/arm/mach-mx3/Makefile +++ b/arch/arm/mach-mx3/Makefile | |||
@@ -8,6 +8,7 @@ obj-y := mm.o devices.o | |||
8 | obj-$(CONFIG_ARCH_MX31) += clock.o iomux.o | 8 | obj-$(CONFIG_ARCH_MX31) += clock.o iomux.o |
9 | obj-$(CONFIG_ARCH_MX35) += clock-imx35.o | 9 | obj-$(CONFIG_ARCH_MX35) += clock-imx35.o |
10 | obj-$(CONFIG_MACH_MX31ADS) += mx31ads.o | 10 | obj-$(CONFIG_MACH_MX31ADS) += mx31ads.o |
11 | obj-$(CONFIG_MACH_MX31LILLY) += mx31lilly.o | ||
11 | obj-$(CONFIG_MACH_MX31LITE) += mx31lite.o | 12 | obj-$(CONFIG_MACH_MX31LITE) += mx31lite.o |
12 | obj-$(CONFIG_MACH_PCM037) += pcm037.o | 13 | obj-$(CONFIG_MACH_PCM037) += pcm037.o |
13 | obj-$(CONFIG_MACH_MX31_3DS) += mx31pdk.o | 14 | obj-$(CONFIG_MACH_MX31_3DS) += mx31pdk.o |
diff --git a/arch/arm/mach-mx3/mx31lilly.c b/arch/arm/mach-mx3/mx31lilly.c new file mode 100644 index 000000000000..3f6477849067 --- /dev/null +++ b/arch/arm/mach-mx3/mx31lilly.c | |||
@@ -0,0 +1,81 @@ | |||
1 | /* | ||
2 | * LILLY-1131 module support | ||
3 | * | ||
4 | * Copyright (c) 2009 Daniel Mack <daniel@caiaq.de> | ||
5 | * | ||
6 | * based on code for other MX31 boards, | ||
7 | * | ||
8 | * Copyright 2005-2007 Freescale Semiconductor | ||
9 | * Copyright (c) 2009 Alberto Panizzo <maramaopercheseimorto@gmail.com> | ||
10 | * Copyright (C) 2009 Valentin Longchamp, EPFL Mobots group | ||
11 | * | ||
12 | * This program is free software; you can redistribute it and/or modify | ||
13 | * it under the terms of the GNU General Public License as published by | ||
14 | * the Free Software Foundation; either version 2 of the License, or | ||
15 | * (at your option) any later version. | ||
16 | * | ||
17 | * This program is distributed in the hope that it will be useful, | ||
18 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
19 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
20 | * GNU General Public License for more details. | ||
21 | * | ||
22 | * You should have received a copy of the GNU General Public License | ||
23 | * along with this program; if not, write to the Free Software | ||
24 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
25 | */ | ||
26 | |||
27 | #include <linux/types.h> | ||
28 | #include <linux/init.h> | ||
29 | #include <linux/clk.h> | ||
30 | |||
31 | #include <asm/mach-types.h> | ||
32 | #include <asm/mach/arch.h> | ||
33 | #include <asm/mach/time.h> | ||
34 | #include <asm/mach/map.h> | ||
35 | |||
36 | #include <mach/hardware.h> | ||
37 | #include <mach/common.h> | ||
38 | #include <mach/iomux-mx3.h> | ||
39 | #include <mach/board-mx31lilly.h> | ||
40 | |||
41 | #include "devices.h" | ||
42 | |||
43 | /* | ||
44 | * This file contains module-specific initialization routines for LILLY-1131. | ||
45 | * Initialization of peripherals found on the baseboard is implemented in the | ||
46 | * appropriate baseboard support code. | ||
47 | */ | ||
48 | |||
49 | static int mx31lilly_baseboard; | ||
50 | core_param(mx31lilly_baseboard, mx31lilly_baseboard, int, 0444); | ||
51 | |||
52 | static void __init mx31lilly_board_init(void) | ||
53 | { | ||
54 | switch (mx31lilly_baseboard) { | ||
55 | case MX31LILLY_NOBOARD: | ||
56 | break; | ||
57 | default: | ||
58 | printk(KERN_ERR "Illegal mx31lilly_baseboard type %d\n", | ||
59 | mx31lilly_baseboard); | ||
60 | } | ||
61 | } | ||
62 | |||
63 | static void __init mx31lilly_timer_init(void) | ||
64 | { | ||
65 | mx31_clocks_init(26000000); | ||
66 | } | ||
67 | |||
68 | static struct sys_timer mx31lilly_timer = { | ||
69 | .init = mx31lilly_timer_init, | ||
70 | }; | ||
71 | |||
72 | MACHINE_START(LILLY1131, "INCO startec LILLY-1131") | ||
73 | .phys_io = AIPS1_BASE_ADDR, | ||
74 | .io_pg_offst = ((AIPS1_BASE_ADDR_VIRT) >> 18) & 0xfffc, | ||
75 | .boot_params = PHYS_OFFSET + 0x100, | ||
76 | .map_io = mx31_map_io, | ||
77 | .init_irq = mxc_init_irq, | ||
78 | .init_machine = mx31lilly_board_init, | ||
79 | .timer = &mx31lilly_timer, | ||
80 | MACHINE_END | ||
81 | |||