summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorRussell King <rmk@flint.arm.linux.org.uk>2002-06-05 02:19:28 +0100
committerRussell King <rmk@flint.arm.linux.org.uk>2002-06-05 02:19:28 +0100
commit41a74af779416770093e10510122b489aafa30bd (patch)
tree277faaa16fd70863f1079ce471b904f8e30e65ba /include
parent0d899e26d8d746fdc8cbdc304eee44bbd57d6e60 (diff)
[ARM] Clean up map_desc structure
- remove LAST_DESC in favour of passing the array size to iotable_init - replace domain and permission bits/cache attributes with a generic "type", which can be easily converted to the required domain and permission bits/cache attributes at run time. It also removes the possibility for getting such things wrong and (accidentally) allowing all user space to fiddle with devices directly.
Diffstat (limited to 'include')
-rw-r--r--include/asm-arm/mach/map.h18
1 files changed, 8 insertions, 10 deletions
diff --git a/include/asm-arm/mach/map.h b/include/asm-arm/mach/map.h
index 51fef86d2406..284df8bb76d1 100644
--- a/include/asm-arm/mach/map.h
+++ b/include/asm-arm/mach/map.h
@@ -13,20 +13,18 @@ struct map_desc {
unsigned long virtual;
unsigned long physical;
unsigned long length;
- int domain:4,
- prot_read:1,
- prot_write:1,
- cacheable:1,
- bufferable:1,
- last:1;
+ unsigned int type;
};
-#define LAST_DESC \
- { last: 1 }
-
struct meminfo;
+#define MT_DEVICE 0
+#define MT_CACHECLEAN 1
+#define MT_MINICLEAN 2
+#define MT_VECTORS 3
+#define MT_MEMORY 4
+
extern void create_memmap_holes(struct meminfo *);
extern void memtable_init(struct meminfo *);
-extern void iotable_init(struct map_desc *);
+extern void iotable_init(struct map_desc *, int);
extern void setup_io_desc(void);