Merge branch 'nohz/printk-v8' into irq/core
[sfrench/cifs-2.6.git] / arch / arm / include / asm / mach / map.h
1 /*
2  *  arch/arm/include/asm/map.h
3  *
4  *  Copyright (C) 1999-2000 Russell King
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 version 2 as
8  * published by the Free Software Foundation.
9  *
10  *  Page table mapping constructs and function prototypes
11  */
12 #ifndef __ASM_MACH_MAP_H
13 #define __ASM_MACH_MAP_H
14
15 #include <asm/io.h>
16
17 struct map_desc {
18         unsigned long virtual;
19         unsigned long pfn;
20         unsigned long length;
21         unsigned int type;
22 };
23
24 /* types 0-3 are defined in asm/io.h */
25 #define MT_UNCACHED             4
26 #define MT_CACHECLEAN           5
27 #define MT_MINICLEAN            6
28 #define MT_LOW_VECTORS          7
29 #define MT_HIGH_VECTORS         8
30 #define MT_MEMORY               9
31 #define MT_ROM                  10
32 #define MT_MEMORY_NONCACHED     11
33 #define MT_MEMORY_DTCM          12
34 #define MT_MEMORY_ITCM          13
35 #define MT_MEMORY_SO            14
36 #define MT_MEMORY_DMA_READY     15
37
38 #ifdef CONFIG_MMU
39 extern void iotable_init(struct map_desc *, int);
40 extern void vm_reserve_area_early(unsigned long addr, unsigned long size,
41                                   void *caller);
42
43 #ifdef CONFIG_DEBUG_LL
44 extern void debug_ll_addr(unsigned long *paddr, unsigned long *vaddr);
45 extern void debug_ll_io_init(void);
46 #else
47 static inline void debug_ll_io_init(void) {}
48 #endif
49
50 struct mem_type;
51 extern const struct mem_type *get_mem_type(unsigned int type);
52 /*
53  * external interface to remap single page with appropriate type
54  */
55 extern int ioremap_page(unsigned long virt, unsigned long phys,
56                         const struct mem_type *mtype);
57 #else
58 #define iotable_init(map,num)   do { } while (0)
59 #define vm_reserve_area_early(a,s,c)    do { } while (0)
60 #endif
61
62 #endif