Import 2.3.25pre1
[davej-history.git] / include / asm-arm / arch-ebsa285 / memory.h
blob14ba9d4fdd9f56b820ea9bd4c3ca81e11db7c335
1 /*
2 * linux/include/asm-arm/arch-ebsa285/memory.h
4 * Copyright (c) 1996-1999 Russell King.
6 * Changelog:
7 * 20-Oct-1996 RMK Created
8 * 31-Dec-1997 RMK Fixed definitions to reduce warnings.
9 * 17-May-1998 DAG Added __virt_to_bus and __bus_to_virt functions.
10 * 21-Nov-1998 RMK Changed __virt_to_bus and __bus_to_virt to macros.
11 * 21-Mar-1999 RMK Added PAGE_OFFSET for co285 architecture.
12 * Renamed to memory.h
13 * Moved PAGE_OFFSET and TASK_SIZE here
15 #ifndef __ASM_ARCH_MMU_H
16 #define __ASM_ARCH_MMU_H
18 #include <linux/config.h>
20 #if defined(CONFIG_HOST_FOOTBRIDGE)
23 * Task size: 3GB
25 #define TASK_SIZE (0xc0000000UL)
26 #define TASK_SIZE_26 (0x04000000UL)
29 * Page offset: 3GB
31 #define PAGE_OFFSET (0xc0000000UL)
32 #define PHYS_OFFSET (0x00000000UL)
34 #define __virt_to_bus__is_a_macro
35 #define __virt_to_bus(x) ((x) - 0xe0000000)
36 #define __bus_to_virt__is_a_macro
37 #define __bus_to_virt(x) ((x) + 0xe0000000)
39 #elif defined(CONFIG_ADDIN_FOOTBRIDGE)
41 #if defined(CONFIG_ARCH_CO285)
44 * Task size: 1.5GB
46 #define TASK_SIZE (0x60000000UL)
47 #define TASK_SIZE_26 (0x04000000UL)
50 * Page offset: 1.5GB
52 #define PAGE_OFFSET (0x60000000UL)
53 #define PHYS_OFFSET (0x00000000UL)
55 #else
57 #error Add in your architecture here
59 #endif
61 #ifndef __ASSEMBLY__
62 extern unsigned long __virt_to_bus(unsigned long);
63 extern unsigned long __bus_to_virt(unsigned long);
64 #endif
66 #endif
69 * On Footbridge machines, the dram is contiguous.
70 * On Host Footbridge, these conversions are constant.
71 * On an add-in footbridge, these depend on register settings.
73 #define __virt_to_phys__is_a_macro
74 #define __virt_to_phys(vpage) ((unsigned long)(vpage) - PAGE_OFFSET)
75 #define __phys_to_virt__is_a_macro
76 #define __phys_to_virt(ppage) ((unsigned long)(ppage) + PAGE_OFFSET)
78 #endif