diff options
author | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-16 18:20:36 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-16 18:20:36 -0400 |
commit | 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (patch) | |
tree | 0bba044c4ce775e45a88a51686b5d9f90697ea9d /arch/arm/mach-clps711x/p720t.c |
Linux-2.6.12-rc2v2.6.12-rc2
Initial git repository build. I'm not bothering with the full history,
even though we have it. We can create a separate "historical" git
archive of that later if we want to, and in the meantime it's about
3.2GB when imported into git - space that would just make the early
git days unnecessarily complicated, when we don't have a lot of good
infrastructure for it.
Let it rip!
Diffstat (limited to 'arch/arm/mach-clps711x/p720t.c')
-rw-r--r-- | arch/arm/mach-clps711x/p720t.c | 115 |
1 files changed, 115 insertions, 0 deletions
diff --git a/arch/arm/mach-clps711x/p720t.c b/arch/arm/mach-clps711x/p720t.c new file mode 100644 index 000000000000..29269df054f5 --- /dev/null +++ b/arch/arm/mach-clps711x/p720t.c | |||
@@ -0,0 +1,115 @@ | |||
1 | /* | ||
2 | * linux/arch/arm/mach-clps711x/p720t.c | ||
3 | * | ||
4 | * Copyright (C) 2000-2001 Deep Blue Solutions Ltd | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
19 | */ | ||
20 | #include <linux/config.h> | ||
21 | #include <linux/kernel.h> | ||
22 | #include <linux/init.h> | ||
23 | #include <linux/types.h> | ||
24 | #include <linux/string.h> | ||
25 | #include <linux/mm.h> | ||
26 | |||
27 | #include <asm/hardware.h> | ||
28 | #include <asm/io.h> | ||
29 | #include <asm/pgtable.h> | ||
30 | #include <asm/page.h> | ||
31 | #include <asm/setup.h> | ||
32 | #include <asm/mach-types.h> | ||
33 | #include <asm/mach/arch.h> | ||
34 | #include <asm/mach/map.h> | ||
35 | #include <asm/arch/syspld.h> | ||
36 | |||
37 | #include "common.h" | ||
38 | |||
39 | /* | ||
40 | * Map the P720T system PLD. It occupies two address spaces: | ||
41 | * SYSPLD_PHYS_BASE and SYSPLD_PHYS_BASE + 0x00400000 | ||
42 | * We map both here. | ||
43 | */ | ||
44 | static struct map_desc p720t_io_desc[] __initdata = { | ||
45 | { SYSPLD_VIRT_BASE, SYSPLD_PHYS_BASE, 1048576, MT_DEVICE }, | ||
46 | { 0xfe400000, 0x10400000, 1048576, MT_DEVICE } | ||
47 | }; | ||
48 | |||
49 | static void __init | ||
50 | fixup_p720t(struct machine_desc *desc, struct tag *tag, | ||
51 | char **cmdline, struct meminfo *mi) | ||
52 | { | ||
53 | /* | ||
54 | * Our bootloader doesn't setup any tags (yet). | ||
55 | */ | ||
56 | if (tag->hdr.tag != ATAG_CORE) { | ||
57 | tag->hdr.tag = ATAG_CORE; | ||
58 | tag->hdr.size = tag_size(tag_core); | ||
59 | tag->u.core.flags = 0; | ||
60 | tag->u.core.pagesize = PAGE_SIZE; | ||
61 | tag->u.core.rootdev = 0x0100; | ||
62 | |||
63 | tag = tag_next(tag); | ||
64 | tag->hdr.tag = ATAG_MEM; | ||
65 | tag->hdr.size = tag_size(tag_mem32); | ||
66 | tag->u.mem.size = 4096; | ||
67 | tag->u.mem.start = PHYS_OFFSET; | ||
68 | |||
69 | tag = tag_next(tag); | ||
70 | tag->hdr.tag = ATAG_NONE; | ||
71 | tag->hdr.size = 0; | ||
72 | } | ||
73 | } | ||
74 | |||
75 | static void __init p720t_map_io(void) | ||
76 | { | ||
77 | clps711x_map_io(); | ||
78 | iotable_init(p720t_io_desc, ARRAY_SIZE(p720t_io_desc)); | ||
79 | } | ||
80 | |||
81 | MACHINE_START(P720T, "ARM-Prospector720T") | ||
82 | MAINTAINER("ARM Ltd/Deep Blue Solutions Ltd") | ||
83 | BOOT_MEM(0xc0000000, 0x80000000, 0xff000000) | ||
84 | BOOT_PARAMS(0xc0000100) | ||
85 | FIXUP(fixup_p720t) | ||
86 | MAPIO(p720t_map_io) | ||
87 | INITIRQ(clps711x_init_irq) | ||
88 | .timer = &clps711x_timer, | ||
89 | MACHINE_END | ||
90 | |||
91 | static int p720t_hw_init(void) | ||
92 | { | ||
93 | /* | ||
94 | * Power down as much as possible in case we don't | ||
95 | * have the drivers loaded. | ||
96 | */ | ||
97 | PLD_LCDEN = 0; | ||
98 | PLD_PWR &= ~(PLD_S4_ON|PLD_S3_ON|PLD_S2_ON|PLD_S1_ON); | ||
99 | |||
100 | PLD_KBD = 0; | ||
101 | PLD_IO = 0; | ||
102 | PLD_IRDA = 0; | ||
103 | PLD_CODEC = 0; | ||
104 | PLD_TCH = 0; | ||
105 | PLD_SPI = 0; | ||
106 | #ifndef CONFIG_DEBUG_LL | ||
107 | PLD_COM2 = 0; | ||
108 | PLD_COM1 = 0; | ||
109 | #endif | ||
110 | |||
111 | return 0; | ||
112 | } | ||
113 | |||
114 | __initcall(p720t_hw_init); | ||
115 | |||