On Mon, 7 Sep 2009, Greg Ungerer wrote:
This fails for me with:
LD vmlinux
/usr/local/bin/m68k-uclinux-ld:arch/m68knommu/kernel/vmlinux.lds:287: syntax
error
due to PAGE_SIZE evaluating to:
. = ALIGN((1UL << (12)));
The linker doesn't like the 'UL' suffix.
Yeah, sorry, I didn't have a cross-compiler for this one to test. The fix is to use _AC(1,UL), like most of the other architectures (including m68k with an mmu) do.
-Tim Abbott
m68knommu: Make PAGE_SIZE available to assembly files.
Signed-off-by: Tim Abbott <tabbott@xxxxxxxxxxx>
---
arch/m68k/include/asm/page_no.h | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/arch/m68k/include/asm/page_no.h b/arch/m68k/include/asm/page_no.h
index 9aa3f90..1f31b06 100644
--- a/arch/m68k/include/asm/page_no.h
+++ b/arch/m68k/include/asm/page_no.h
@@ -1,10 +1,12 @@
#ifndef _M68KNOMMU_PAGE_H
#define _M68KNOMMU_PAGE_H
+#include <linux/const.h>
+
/* PAGE_SHIFT determines the page size */
#define PAGE_SHIFT (12)
-#define PAGE_SIZE (1UL << PAGE_SHIFT)
+#define PAGE_SIZE (_AC(1,UL) << PAGE_SHIFT)
#define PAGE_MASK (~(PAGE_SIZE-1))
#include <asm/setup.h>