#ifdef CONFIG_SUN3
#define KMAP_START 0x0DC00000
#define KMAP_END 0x0E000000
+#elif CONFIG_COLDFIRE
+#define KMAP_START (VMALLOC_END + 1)
+#define KMAP_END 0xe0000000
#else
#define KMAP_START 0xd0000000
#define KMAP_END 0xf0000000
#endif
-#ifndef CONFIG_SUN3
+#if !defined(CONFIG_SUN3) && !defined(CONFIG_COLDFIRE)
/* Just any arbitrary offset to the start of the vmalloc VM area: the
* current 8MB value just means that there will be a 8MB "hole" after the
* physical memory until the kernel virtual memory starts. That means that
#define VMALLOC_OFFSET (8*1024*1024)
#define VMALLOC_START (((unsigned long) high_memory + VMALLOC_OFFSET) & ~(VMALLOC_OFFSET-1))
#define VMALLOC_END KMAP_START
-#else
+#elif defined(CONFIG_SUN3)
extern unsigned long m68k_vmalloc_end;
#define VMALLOC_START 0x0f800000
#define VMALLOC_END m68k_vmalloc_end
-#endif /* CONFIG_SUN3 */
+#else
+#define VMALLOC_START 0xC0000000
+#define VMALLOC_END 0xCFFFFFFF
+#endif /* CONFIG_COLDFIRE */
/* zero page used for uninitialized stuff */
extern void *empty_zero_page;
#ifdef CONFIG_SUN3
#include <asm/sun3_pgtable.h>
+#elif CONFIG_COLDFIRE
+#include <asm/mcf_pgtable.h>
#else
#include <asm/motorola_pgtable.h>
#endif
/*
* Macro to mark a page protection value as "uncacheable".
*/
-#ifdef SUN3_PAGE_NOCACHE
+#ifdef CONFIG_COLDFIRE
+# define define pgprot_noncached(prot) (__pgprot(pgprot_val(prot) | CF_PAGE_NOCACHE))
+#elif defined(SUN3_PAGE_NOCACHE)
# define __SUN3_PAGE_NOCACHE SUN3_PAGE_NOCACHE
#else
# define __SUN3_PAGE_NOCACHE 0
#endif
+
#define pgprot_noncached(prot) \
(MMU_IS_SUN3 \
? (__pgprot(pgprot_val(prot) | __SUN3_PAGE_NOCACHE)) \