at v3.6 47 lines 1.2 kB view raw
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#include <asm/io.h> 13 14struct map_desc { 15 unsigned long virtual; 16 unsigned long pfn; 17 unsigned long length; 18 unsigned int type; 19}; 20 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 33#define MT_MEMORY_DMA_READY 15 34 35#ifdef CONFIG_MMU 36extern void iotable_init(struct map_desc *, int); 37 38struct mem_type; 39extern const struct mem_type *get_mem_type(unsigned int type); 40/* 41 * external interface to remap single page with appropriate type 42 */ 43extern int ioremap_page(unsigned long virt, unsigned long phys, 44 const struct mem_type *mtype); 45#else 46#define iotable_init(map,num) do { } while (0) 47#endif