aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJuergen Beisert <j.beisert@pengutronix.de>2008-07-05 04:03:01 -0400
committerRobert Schwebel <r.schwebel@pengutronix.de>2008-07-05 04:03:01 -0400
commitff6552e4f3505da9c2886098773146be71c872e3 (patch)
treed5eeca5ae20095d31461796c8320386f5414fdfd
parent7e5e9f5457f5cd019fd7e2f3da94e9fc72cc9ff6 (diff)
i.MX27 family: Add the Phytec PCM970 evaluation board
The Phytec phyCORE-i.MX27 CPU module is delivered with the PCM970 baseboard by default. This patch adds support for the hardware. This code is only an empty stub; it is filled up with functionality in a later patch series. Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
-rw-r--r--arch/arm/mach-mx2/Kconfig14
-rw-r--r--arch/arm/mach-mx2/Makefile1
-rw-r--r--arch/arm/mach-mx2/pcm038.c4
-rw-r--r--arch/arm/mach-mx2/pcm970-baseboard.c32
-rw-r--r--include/asm-arm/arch-mxc/board-pcm038.h5
5 files changed, 56 insertions, 0 deletions
diff --git a/arch/arm/mach-mx2/Kconfig b/arch/arm/mach-mx2/Kconfig
index 4c19e1c79471..1eaa97cb716d 100644
--- a/arch/arm/mach-mx2/Kconfig
+++ b/arch/arm/mach-mx2/Kconfig
@@ -23,3 +23,17 @@ config MACH_PCM038
23 help 23 help
24 Include support for phyCORE-i.MX27 (aka pcm038) platform. This 24 Include support for phyCORE-i.MX27 (aka pcm038) platform. This
25 includes specific configurations for the module and its peripherals. 25 includes specific configurations for the module and its peripherals.
26
27choice
28 prompt "Baseboard"
29 depends on MACH_PCM038
30 default MACH_PCM970_BASEBOARD
31
32config MACH_PCM970_BASEBOARD
33 prompt "PHYTEC PCM970 development board"
34 bool
35 help
36 This adds board specific devices that can be found on Phytec's
37 PCM970 evaluation board.
38
39endchoice
diff --git a/arch/arm/mach-mx2/Makefile b/arch/arm/mach-mx2/Makefile
index f8d3836ee2f5..382d86080e86 100644
--- a/arch/arm/mach-mx2/Makefile
+++ b/arch/arm/mach-mx2/Makefile
@@ -11,3 +11,4 @@ obj-$(CONFIG_MACH_MX27) += clock_imx27.o
11 11
12obj-$(CONFIG_MACH_MX27ADS) += mx27ads.o 12obj-$(CONFIG_MACH_MX27ADS) += mx27ads.o
13obj-$(CONFIG_MACH_PCM038) += pcm038.o 13obj-$(CONFIG_MACH_PCM038) += pcm038.o
14obj-$(CONFIG_MACH_PCM970_BASEBOARD) += pcm970-baseboard.o
diff --git a/arch/arm/mach-mx2/pcm038.c b/arch/arm/mach-mx2/pcm038.c
index 46fc026138cc..a9a28f58e714 100644
--- a/arch/arm/mach-mx2/pcm038.c
+++ b/arch/arm/mach-mx2/pcm038.c
@@ -177,6 +177,10 @@ static void __init pcm038_init(void)
177 imx_init_uart(i, &uart_pdata[i]); 177 imx_init_uart(i, &uart_pdata[i]);
178 178
179 platform_add_devices(platform_devices, ARRAY_SIZE(platform_devices)); 179 platform_add_devices(platform_devices, ARRAY_SIZE(platform_devices));
180
181#ifdef CONFIG_MACH_PCM970_BASEBOARD
182 pcm970_baseboard_init();
183#endif
180} 184}
181 185
182static void __init pcm038_timer_init(void) 186static void __init pcm038_timer_init(void)
diff --git a/arch/arm/mach-mx2/pcm970-baseboard.c b/arch/arm/mach-mx2/pcm970-baseboard.c
new file mode 100644
index 000000000000..028ac4d33684
--- /dev/null
+++ b/arch/arm/mach-mx2/pcm970-baseboard.c
@@ -0,0 +1,32 @@
1/*
2 * Copyright (C) 2008 Juergen Beisert (kernel@pengutronix.de)
3 *
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU General Public License
6 * as published by the Free Software Foundation; either version 2
7 * of the License, or (at your option) any later version.
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program; if not, write to the Free Software
15 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
16 * MA 02110-1301, USA.
17 */
18
19#include <linux/platform_device.h>
20#include <asm/hardware.h>
21#include <asm/mach-types.h>
22#include <asm/mach/arch.h>
23
24/*
25 * system init for baseboard usage. Will be called by pcm038 init.
26 *
27 * Add platform devices present on this baseboard and init
28 * them from CPU side as far as required to use them later on
29 */
30void __init pcm970_baseboard_init(void)
31{
32}
diff --git a/include/asm-arm/arch-mxc/board-pcm038.h b/include/asm-arm/arch-mxc/board-pcm038.h
index 300467e8db66..750c62afd90f 100644
--- a/include/asm-arm/arch-mxc/board-pcm038.h
+++ b/include/asm-arm/arch-mxc/board-pcm038.h
@@ -30,7 +30,12 @@
30 * its own devices, it calls baseboard's init function. 30 * its own devices, it calls baseboard's init function.
31 * TODO: Add your own baseboard init function and call it from 31 * TODO: Add your own baseboard init function and call it from
32 * inside pcm038_init(). 32 * inside pcm038_init().
33 *
34 * This example here is for the development board. Refer pcm970-baseboard.c
33 */ 35 */
36
37extern void pcm970_baseboard_init(void);
38
34#endif 39#endif
35 40
36#endif /* __ASM_ARCH_MXC_BOARD_PCM038_H__ */ 41#endif /* __ASM_ARCH_MXC_BOARD_PCM038_H__ */