aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-nomadik/cpu-8815.c
diff options
context:
space:
mode:
authorAlessandro Rubini <rubini@gnudd.com>2009-07-02 14:06:47 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2009-07-02 16:20:44 -0400
commit28ad94ec61dc60207dbffdb95ff870c617fbb832 (patch)
tree4ee4d2fc06f98d70c0f7f803179b94638bc0e850 /arch/arm/mach-nomadik/cpu-8815.c
parent8c81b52422147b4b09f5adb8d0c6963342a336c6 (diff)
[ARM] 5590/1: Add basic support for ST Nomadik 8815 SoC and evaluation board
This patch adds the basic infrastructure for the Nomadik 8815 CPU and the "Nomadik Hardware Kit" NHK8815. This patch only includes the serial console and core stuff, no drivers. Signed-off-by: Alessandro Rubini <rubini@unipv.it> Acked-by: Andrea Gallo <andrea.gallo@stericsson.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-nomadik/cpu-8815.c')
-rw-r--r--arch/arm/mach-nomadik/cpu-8815.c58
1 files changed, 58 insertions, 0 deletions
diff --git a/arch/arm/mach-nomadik/cpu-8815.c b/arch/arm/mach-nomadik/cpu-8815.c
new file mode 100644
index 000000000000..dec42da6956a
--- /dev/null
+++ b/arch/arm/mach-nomadik/cpu-8815.c
@@ -0,0 +1,58 @@
1/*
2 * Copyright STMicroelectronics, 2007.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software
16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 */
18
19#include <linux/types.h>
20#include <linux/init.h>
21#include <linux/device.h>
22
23#include <mach/hardware.h>
24#include <mach/irqs.h>
25#include <asm/mach/map.h>
26#include <asm/hardware/vic.h>
27
28/* All SoC devices live in the same area (see hardware.h) */
29static struct map_desc nomadik_io_desc[] __initdata = {
30 {
31 .virtual = NOMADIK_IO_VIRTUAL,
32 .pfn = __phys_to_pfn(NOMADIK_IO_PHYSICAL),
33 .length = NOMADIK_IO_SIZE,
34 .type = MT_DEVICE,
35 }
36 /* static ram and secured ram may be added later */
37};
38
39void __init cpu8815_map_io(void)
40{
41 iotable_init(nomadik_io_desc, ARRAY_SIZE(nomadik_io_desc));
42}
43
44void __init cpu8815_init_irq(void)
45{
46 /* This modified VIC cell has two register blocks, at 0 and 0x20 */
47 vic_init(io_p2v(NOMADIK_IC_BASE + 0x00), IRQ_VIC_START + 0, ~0, 0);
48 vic_init(io_p2v(NOMADIK_IC_BASE + 0x20), IRQ_VIC_START + 32, ~0, 0);
49}
50
51/*
52 * This function is called from the board init ("init_machine").
53 * Currently nothing is done as we can't register amba devs so early.
54 */
55 void __init cpu8815_platform_init(void)
56{
57 return;
58}