diff options
author | Eric Miao <eric.miao@marvell.com> | 2009-01-20 01:15:18 -0500 |
---|---|---|
committer | Eric Miao <eric.miao@marvell.com> | 2009-03-22 22:11:34 -0400 |
commit | 49cbe78637eb0503f45fc9b556ec08918a616534 (patch) | |
tree | 96de29959c5ef512d8f1e0bea7eae2245b7cc3f9 /arch/arm/include | |
parent | f8dec04d33b94a4cfa9358fd9666c01480bb164d (diff) |
[ARM] pxa: add base support for Marvell's PXA168 processor line
"""The MarvellĀ® PXA168 processor is the first in a family of application
processors targeted at mass market opportunities in computing and consumer
devices. It balances high computing and multimedia performance with low
power consumption to support extended battery life, and includes a wealth
of integrated peripherals to reduce overall BOM cost .... """
See http://www.marvell.com/featured/pxa168.jsp for more information.
1. Marvell Mohawk core is a hybrid of xscale3 and its own ARM core,
there are many enhancements like instructions for flushing the
whole D-cache, and so on
2. Clock reuses Russell's common clkdev, and added the basic support
for UART1/2.
3. Devices are a bit different from the 'mach-pxa' way, the platform
devices are now dynamically allocated only when necessary (i.e.
when pxa_register_device() is called). Description for each device
are stored in an array of 'struct pxa_device_desc'. Now that:
a. this array of device description is marked with __initdata and
can be freed up system is fully up
b. which means board code has to add all needed devices early in
his initializing function
c. platform specific data can now be marked as __initdata since
they are allocated and copied by platform_device_add_data()
4. only the basic UART1/2/3 are added, more devices will come later.
Signed-off-by: Jason Chagas <chagas@marvell.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Diffstat (limited to 'arch/arm/include')
-rw-r--r-- | arch/arm/include/asm/cacheflush.h | 8 | ||||
-rw-r--r-- | arch/arm/include/asm/proc-fns.h | 8 |
2 files changed, 16 insertions, 0 deletions
diff --git a/arch/arm/include/asm/cacheflush.h b/arch/arm/include/asm/cacheflush.h index 6cbd8fdc9f1f..bfb0cb9aaa97 100644 --- a/arch/arm/include/asm/cacheflush.h +++ b/arch/arm/include/asm/cacheflush.h | |||
@@ -94,6 +94,14 @@ | |||
94 | # endif | 94 | # endif |
95 | #endif | 95 | #endif |
96 | 96 | ||
97 | #if defined(CONFIG_CPU_MOHAWK) | ||
98 | # ifdef _CACHE | ||
99 | # define MULTI_CACHE 1 | ||
100 | # else | ||
101 | # define _CACHE mohawk | ||
102 | # endif | ||
103 | #endif | ||
104 | |||
97 | #if defined(CONFIG_CPU_FEROCEON) | 105 | #if defined(CONFIG_CPU_FEROCEON) |
98 | # define MULTI_CACHE 1 | 106 | # define MULTI_CACHE 1 |
99 | #endif | 107 | #endif |
diff --git a/arch/arm/include/asm/proc-fns.h b/arch/arm/include/asm/proc-fns.h index db80203b68e0..c6250311550b 100644 --- a/arch/arm/include/asm/proc-fns.h +++ b/arch/arm/include/asm/proc-fns.h | |||
@@ -185,6 +185,14 @@ | |||
185 | # define CPU_NAME cpu_xsc3 | 185 | # define CPU_NAME cpu_xsc3 |
186 | # endif | 186 | # endif |
187 | # endif | 187 | # endif |
188 | # ifdef CONFIG_CPU_MOHAWK | ||
189 | # ifdef CPU_NAME | ||
190 | # undef MULTI_CPU | ||
191 | # define MULTI_CPU | ||
192 | # else | ||
193 | # define CPU_NAME cpu_mohawk | ||
194 | # endif | ||
195 | # endif | ||
188 | # ifdef CONFIG_CPU_FEROCEON | 196 | # ifdef CONFIG_CPU_FEROCEON |
189 | # ifdef CPU_NAME | 197 | # ifdef CPU_NAME |
190 | # undef MULTI_CPU | 198 | # undef MULTI_CPU |