[COMMON] arm64: adds map.h to arch/arm64/include/asm
authorYulgon Kim <yulgon.kim@samsung.com>
Fri, 22 Apr 2016 12:57:25 +0000 (21:57 +0900)
committerJaehyoung Choi <jkkkkk.choi@samsung.com>
Wed, 2 May 2018 02:11:49 +0000 (11:11 +0900)
This commit adds map.h into "arch/arm64/include/asm".

Change-Id: I687d590065b9c4c93de62d2948b5aa5d01ed89fd
Signed-off-by: Yulgon Kim <yulgon.kim@samsung.com>
arch/arm64/include/asm/map.h [new file with mode: 0755]

diff --git a/arch/arm64/include/asm/map.h b/arch/arm64/include/asm/map.h
new file mode 100755 (executable)
index 0000000..714819e
--- /dev/null
@@ -0,0 +1,64 @@
+/*
+ *  arch/arm/include/asm/map.h
+ *
+ *  Copyright (C) 1999-2000 Russell King
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ *
+ *  Page table mapping constructs and function prototypes
+ */
+#ifndef __ASM_MACH_MAP_H
+#define __ASM_MACH_MAP_H
+
+#include <asm/io.h>
+
+struct map_desc {
+       unsigned long virtual;
+       unsigned long pfn;
+       unsigned long length;
+       unsigned int type;
+};
+
+/* types 0-3 are defined in asm/io.h */
+#define MT_UNCACHED            4
+#define MT_CACHECLEAN          5
+#define MT_MINICLEAN           6
+#define MT_LOW_VECTORS         7
+#define MT_HIGH_VECTORS                8
+#define MT_MEMORY              9
+#define MT_ROM                 10
+#define MT_MEMORY_NONCACHED    11
+#define MT_MEMORY_DTCM         12
+#define MT_MEMORY_ITCM         13
+#define MT_MEMORY_SO           14
+#define MT_MEMORY_DMA_READY    15
+
+#ifdef CONFIG_MMU
+extern void iotable_init(struct map_desc *, int);
+extern void iotable_init_exec(struct map_desc *, int);
+extern void vm_reserve_area_early(unsigned long addr, unsigned long size,
+                                 void *caller);
+
+#ifdef CONFIG_DEBUG_LL
+extern void debug_ll_addr(unsigned long *paddr, unsigned long *vaddr);
+extern void debug_ll_io_init(void);
+#else
+static inline void debug_ll_io_init(void) {}
+#endif
+
+struct mem_type;
+extern const struct mem_type *get_mem_type(unsigned int type);
+/*
+ * external interface to remap single page with appropriate type
+ */
+extern int ioremap_page(unsigned long virt, unsigned long phys,
+                       const struct mem_type *mtype);
+#else
+#define iotable_init(map,num)  do { } while (0)
+#define iotable_init_exec(map,num)     do { } while (0)
+#define vm_reserve_area_early(a,s,c)   do { } while (0)
+#endif
+
+#endif