Merge tag 'v3.3.7' into 3.3/master
[zen-stable.git] / arch / arm / include / asm / mach / map.h
blobb36f3654bf54ebcc9e1c9617663c706d81bcfd97
1 /*
2 * arch/arm/include/asm/map.h
4 * Copyright (C) 1999-2000 Russell King
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
10 * Page table mapping constructs and function prototypes
12 #include <asm/io.h>
14 struct map_desc {
15 unsigned long virtual;
16 unsigned long pfn;
17 unsigned long length;
18 unsigned int type;
21 /* types 0-3 are defined in asm/io.h */
22 #define MT_UNCACHED 4
23 #define MT_CACHECLEAN 5
24 #define MT_MINICLEAN 6
25 #define MT_LOW_VECTORS 7
26 #define MT_HIGH_VECTORS 8
27 #define MT_MEMORY 9
28 #define MT_ROM 10
29 #define MT_MEMORY_NONCACHED 11
30 #define MT_MEMORY_DTCM 12
31 #define MT_MEMORY_ITCM 13
32 #define MT_MEMORY_SO 14
34 #ifdef CONFIG_MMU
35 extern void iotable_init(struct map_desc *, int);
37 struct mem_type;
38 extern const struct mem_type *get_mem_type(unsigned int type);
40 * external interface to remap single page with appropriate type
42 extern int ioremap_page(unsigned long virt, unsigned long phys,
43 const struct mem_type *mtype);
44 #else
45 #define iotable_init(map,num) do { } while (0)
46 #endif