|
@@ -23,15 +23,15 @@ struct vm_area_struct;
|
|
|
|
|
|
#define PAGE_NONE __pgprot(_PAGE_PRESENT | _CACHE_CACHABLE_NONCOHERENT)
|
|
|
#define PAGE_SHARED __pgprot(_PAGE_PRESENT | _PAGE_READ | _PAGE_WRITE | \
|
|
|
- PAGE_CACHABLE_DEFAULT)
|
|
|
+ _page_cachable_default)
|
|
|
#define PAGE_COPY __pgprot(_PAGE_PRESENT | _PAGE_READ | \
|
|
|
- PAGE_CACHABLE_DEFAULT)
|
|
|
+ _page_cachable_default)
|
|
|
#define PAGE_READONLY __pgprot(_PAGE_PRESENT | _PAGE_READ | \
|
|
|
- PAGE_CACHABLE_DEFAULT)
|
|
|
+ _page_cachable_default)
|
|
|
#define PAGE_KERNEL __pgprot(_PAGE_PRESENT | __READABLE | __WRITEABLE | \
|
|
|
- _PAGE_GLOBAL | PAGE_CACHABLE_DEFAULT)
|
|
|
+ _PAGE_GLOBAL | _page_cachable_default)
|
|
|
#define PAGE_USERIO __pgprot(_PAGE_PRESENT | _PAGE_READ | _PAGE_WRITE | \
|
|
|
- PAGE_CACHABLE_DEFAULT)
|
|
|
+ _page_cachable_default)
|
|
|
#define PAGE_KERNEL_UNCACHED __pgprot(_PAGE_PRESENT | __READABLE | \
|
|
|
__WRITEABLE | _PAGE_GLOBAL | _CACHE_UNCACHED)
|
|
|
|
|
@@ -40,23 +40,30 @@ struct vm_area_struct;
|
|
|
* read. Also, write permissions imply read permissions. This is the closest
|
|
|
* we can get by reasonable means..
|
|
|
*/
|
|
|
-#define __P000 PAGE_NONE
|
|
|
-#define __P001 PAGE_READONLY
|
|
|
-#define __P010 PAGE_COPY
|
|
|
-#define __P011 PAGE_COPY
|
|
|
-#define __P100 PAGE_READONLY
|
|
|
-#define __P101 PAGE_READONLY
|
|
|
-#define __P110 PAGE_COPY
|
|
|
-#define __P111 PAGE_COPY
|
|
|
-
|
|
|
-#define __S000 PAGE_NONE
|
|
|
-#define __S001 PAGE_READONLY
|
|
|
-#define __S010 PAGE_SHARED
|
|
|
-#define __S011 PAGE_SHARED
|
|
|
-#define __S100 PAGE_READONLY
|
|
|
-#define __S101 PAGE_READONLY
|
|
|
-#define __S110 PAGE_SHARED
|
|
|
-#define __S111 PAGE_SHARED
|
|
|
+
|
|
|
+/*
|
|
|
+ * Dummy values to fill the table in mmap.c
|
|
|
+ * The real values will be generated at runtime
|
|
|
+ */
|
|
|
+#define __P000 __pgprot(0)
|
|
|
+#define __P001 __pgprot(0)
|
|
|
+#define __P010 __pgprot(0)
|
|
|
+#define __P011 __pgprot(0)
|
|
|
+#define __P100 __pgprot(0)
|
|
|
+#define __P101 __pgprot(0)
|
|
|
+#define __P110 __pgprot(0)
|
|
|
+#define __P111 __pgprot(0)
|
|
|
+
|
|
|
+#define __S000 __pgprot(0)
|
|
|
+#define __S001 __pgprot(0)
|
|
|
+#define __S010 __pgprot(0)
|
|
|
+#define __S011 __pgprot(0)
|
|
|
+#define __S100 __pgprot(0)
|
|
|
+#define __S101 __pgprot(0)
|
|
|
+#define __S110 __pgprot(0)
|
|
|
+#define __S111 __pgprot(0)
|
|
|
+
|
|
|
+extern unsigned long _page_cachable_default;
|
|
|
|
|
|
/*
|
|
|
* ZERO_PAGE is a global shared page that is always zero; used
|