aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-mx3
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-mx3')
-rw-r--r--arch/arm/mach-mx3/Kconfig7
-rw-r--r--arch/arm/mach-mx3/Makefile1
-rw-r--r--arch/arm/mach-mx3/mx31lilly.c81
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
63config 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
63config MACH_QONG 70config 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
8obj-$(CONFIG_ARCH_MX31) += clock.o iomux.o 8obj-$(CONFIG_ARCH_MX31) += clock.o iomux.o
9obj-$(CONFIG_ARCH_MX35) += clock-imx35.o 9obj-$(CONFIG_ARCH_MX35) += clock-imx35.o
10obj-$(CONFIG_MACH_MX31ADS) += mx31ads.o 10obj-$(CONFIG_MACH_MX31ADS) += mx31ads.o
11obj-$(CONFIG_MACH_MX31LILLY) += mx31lilly.o
11obj-$(CONFIG_MACH_MX31LITE) += mx31lite.o 12obj-$(CONFIG_MACH_MX31LITE) += mx31lite.o
12obj-$(CONFIG_MACH_PCM037) += pcm037.o 13obj-$(CONFIG_MACH_PCM037) += pcm037.o
13obj-$(CONFIG_MACH_MX31_3DS) += mx31pdk.o 14obj-$(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
49static int mx31lilly_baseboard;
50core_param(mx31lilly_baseboard, mx31lilly_baseboard, int, 0444);
51
52static 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
63static void __init mx31lilly_timer_init(void)
64{
65 mx31_clocks_init(26000000);
66}
67
68static struct sys_timer mx31lilly_timer = {
69 .init = mx31lilly_timer_init,
70};
71
72MACHINE_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,
80MACHINE_END
81