diff options
author | Greg Ungerer <gerg@uclinux.org> | 2011-10-18 02:16:43 -0400 |
---|---|---|
committer | Greg Ungerer <gerg@uclinux.org> | 2011-12-29 19:20:37 -0500 |
commit | d49316e84bbad307543c50be53555ca9a768f31d (patch) | |
tree | e68b95c71ea0c60cf3d8656ee9f4e4008bdc8420 /arch/m68k | |
parent | 60610192559d430dd24d9b508ae9d8d249709af9 (diff) |
m68k: use ColdFire MMU read/write bit flags when ioremapping
The ColdFire MMU has separate read and write bits, unlike the Motorola
m68k MMU which has a single read-only bit.
Define a _PAGE_READWRITE value for the Motorola MMU, which is 0, so we
can unconditionaly include that in the page table entry bits when setting
up ioremapped pages.
Signed-off-by: Greg Ungerer <gerg@uclinux.org>
Acked-by: Matt Waddel <mwaddel@yahoo.com>
Acked-by: Kurt Mahan <kmahan@xmission.com>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Diffstat (limited to 'arch/m68k')
-rw-r--r-- | arch/m68k/include/asm/motorola_pgtable.h | 1 | ||||
-rw-r--r-- | arch/m68k/mm/kmap.c | 3 |
2 files changed, 3 insertions, 1 deletions
diff --git a/arch/m68k/include/asm/motorola_pgtable.h b/arch/m68k/include/asm/motorola_pgtable.h index 45bd3f589bf0..e0fdd4d08075 100644 --- a/arch/m68k/include/asm/motorola_pgtable.h +++ b/arch/m68k/include/asm/motorola_pgtable.h | |||
@@ -8,6 +8,7 @@ | |||
8 | #define _PAGE_PRESENT 0x001 | 8 | #define _PAGE_PRESENT 0x001 |
9 | #define _PAGE_SHORT 0x002 | 9 | #define _PAGE_SHORT 0x002 |
10 | #define _PAGE_RONLY 0x004 | 10 | #define _PAGE_RONLY 0x004 |
11 | #define _PAGE_READWRITE 0x000 | ||
11 | #define _PAGE_ACCESSED 0x008 | 12 | #define _PAGE_ACCESSED 0x008 |
12 | #define _PAGE_DIRTY 0x010 | 13 | #define _PAGE_DIRTY 0x010 |
13 | #define _PAGE_SUPER 0x080 /* 68040 supervisor only */ | 14 | #define _PAGE_SUPER 0x080 /* 68040 supervisor only */ |
diff --git a/arch/m68k/mm/kmap.c b/arch/m68k/mm/kmap.c index 69345849454b..1cc2bed4c3dd 100644 --- a/arch/m68k/mm/kmap.c +++ b/arch/m68k/mm/kmap.c | |||
@@ -171,7 +171,8 @@ void __iomem *__ioremap(unsigned long physaddr, unsigned long size, int cachefla | |||
171 | break; | 171 | break; |
172 | } | 172 | } |
173 | } else { | 173 | } else { |
174 | physaddr |= (_PAGE_PRESENT | _PAGE_ACCESSED | _PAGE_DIRTY); | 174 | physaddr |= (_PAGE_PRESENT | _PAGE_ACCESSED | |
175 | _PAGE_DIRTY | _PAGE_READWRITE); | ||
175 | switch (cacheflag) { | 176 | switch (cacheflag) { |
176 | case IOMAP_NOCACHE_SER: | 177 | case IOMAP_NOCACHE_SER: |
177 | case IOMAP_NOCACHE_NONSER: | 178 | case IOMAP_NOCACHE_NONSER: |