aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
Diffstat (limited to 'arch')
-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
-rw-r--r--arch/arm/plat-mxc/include/mach/board-mx31lilly.h43
4 files changed, 132 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
diff --git a/arch/arm/plat-mxc/include/mach/board-mx31lilly.h b/arch/arm/plat-mxc/include/mach/board-mx31lilly.h
new file mode 100644
index 000000000000..823fb88fe0f2
--- /dev/null
+++ b/arch/arm/plat-mxc/include/mach/board-mx31lilly.h
@@ -0,0 +1,43 @@
1/*
2 * Copyright (C) 2009 Daniel Mack <daniel@caiaq.de>
3 *
4 * Based on code for mobots boards,
5 * Copyright (C) 2009 Valentin Longchamp, EPFL Mobots group
6 *
7 * This program is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU General Public License
9 * as published by the Free Software Foundation; either version 2
10 * of the License, or (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19 * MA 02110-1301, USA.
20 */
21
22#ifndef __ASM_ARCH_MXC_BOARD_MX31LILLY_H__
23#define __ASM_ARCH_MXC_BOARD_MX31LILLY_H__
24
25/* mandatory for CONFIG_LL_DEBUG */
26
27#define MXC_LL_UART_PADDR UART1_BASE_ADDR
28#define MXC_LL_UART_VADDR (AIPI_BASE_ADDR_VIRT + 0x0A000)
29
30#ifndef __ASSEMBLY__
31
32enum mx31lilly_boards {
33 MX31LILLY_NOBOARD = 0,
34};
35
36/*
37 * This CPU module needs a baseboard to work. After basic initializing
38 * its own devices, it calls baseboard's init function.
39 */
40
41#endif
42
43#endif /* __ASM_ARCH_MXC_BOARD_MX31LILLY_H__ */