2005-04-17 06:20:36 +08:00
|
|
|
#
|
|
|
|
# m32r/Makefile
|
|
|
|
#
|
2006-03-06 06:14:10 +08:00
|
|
|
# This file is included by the global makefile so that you can add your own
|
|
|
|
# architecture-specific flags and dependencies.
|
|
|
|
#
|
2005-04-17 06:20:36 +08:00
|
|
|
|
2008-04-22 05:33:02 +08:00
|
|
|
KBUILD_DEFCONFIG := m32700ut.smp_defconfig
|
|
|
|
|
2005-04-17 06:20:36 +08:00
|
|
|
LDFLAGS :=
|
|
|
|
OBJCOPYFLAGS := -O binary -R .note -R .comment -S
|
[PATCH] m32r: fix kernel entry address of vmlinux
This patch fixes the kernel entry point address of vmlinux.
The m32r kernel entry address is 0x08002000 (physical).
But, so far, the ENTRY point written in vmlinux.lds.S was not point
the correct kernel entry address.
(before fix)
$ objdump -x vmlinux
vmlinux: file format elf32-m32r-linux
vmlinux
architecture: m32r2, flags 0x00000112:
EXEC_P, HAS_SYMS, D_PAGED
start address 0x88002090 /* NG */
:
Sections:
Idx Name Size VMA LMA File off Algn
0 .empty_zero_page 00001000 88001000 88001000 00001000 2**12
CONTENTS, ALLOC, LOAD, DATA
1 .boot 0000008c 88002000 88002000 00002000 2**2
CONTENTS, ALLOC, LOAD, READONLY, CODE
2 .text 001ab694 88002090 88002090 00002090 2**4
CONTENTS, ALLOC, LOAD, READONLY, CODE
:
(after fix)
$ objdump -x vmlinux
vmlinux: file format elf32-m32r-linux
vmlinux
architecture: m32r2, flags 0x00000112:
EXEC_P, HAS_SYMS, D_PAGED
start address 0x08002000 /* OK */
:
This fix also remedies the following GDB error message (of gdb-6.4 or after)
at the first operation of kernel debugging:
"Previous frame identical to this frame (corrupt stack?)".
Signed-off-by: Hirokazu Takata <takata@linux-m32r.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-02-10 17:43:39 +08:00
|
|
|
LDFLAGS_vmlinux :=
|
2005-04-17 06:20:36 +08:00
|
|
|
|
2007-10-15 04:21:35 +08:00
|
|
|
KBUILD_CFLAGS += -pipe -fno-schedule-insns
|
2010-07-29 01:11:27 +08:00
|
|
|
KBUILD_CFLAGS_KERNEL += -mmodel=medium
|
kbuild: allow assignment to {A,C,LD}FLAGS_MODULE on the command line
It is now possible to assign options to AS, CC and LD
on the command line - which is only used when building modules.
{A,C,LD}FLAGS_MODULE was all used both in the top-level Makefile
in the arch makefiles, thus users had no way to specify
additional options to AS, CC, LD when building modules
without overriding the original value.
Introduce a new set of variables KBUILD_{A,C,LD}FLAGS_MODULE
that is used by arch specific files and free up
{A,C,LD}FLAGS_MODULE so they can be assigned on
the command line.
All arch Makefiles that used the old variables has been updated.
Note: Previously we had a MODFLAGS variable for both
AS and CC. But in favour of consistency this was dropped.
So in some cases arch Makefile has one assignmnet replaced by
two assignmnets.
Note2: MODFLAGS was not documented and is dropped
without any notice. I do not expect much/any breakage
from this.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Cc: Denys Vlasenko <vda.linux@googlemail.com>
Cc: Haavard Skinnemoen <hskinnemoen@atmel.com>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Tony Luck <tony.luck@intel.com>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Chen Liqin <liqin.chen@sunplusct.com>
Acked-by: Mike Frysinger <vapier@gentoo.org> [blackfin]
Acked-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com> [avr32]
Signed-off-by: Michal Marek <mmarek@suse.cz>
2010-07-28 23:33:09 +08:00
|
|
|
KBUILD_CFLAGS_MODULE += -mmodel=large
|
2005-04-17 06:20:36 +08:00
|
|
|
|
|
|
|
ifdef CONFIG_CHIP_VDEC2
|
|
|
|
cflags-$(CONFIG_ISA_M32R2) += -DNO_FPU -Wa,-bitinst
|
2006-02-25 05:03:50 +08:00
|
|
|
aflags-$(CONFIG_ISA_M32R2) += -DNO_FPU -O2 -Wa,-bitinst -Wa,-no-parallel
|
2005-04-17 06:20:36 +08:00
|
|
|
else
|
|
|
|
cflags-$(CONFIG_ISA_M32R2) += -DNO_FPU -m32r2
|
2006-02-25 05:03:50 +08:00
|
|
|
aflags-$(CONFIG_ISA_M32R2) += -DNO_FPU -m32r2 -O2
|
2005-04-17 06:20:36 +08:00
|
|
|
endif
|
|
|
|
|
|
|
|
cflags-$(CONFIG_ISA_M32R) += -DNO_FPU
|
2006-02-25 05:03:50 +08:00
|
|
|
aflags-$(CONFIG_ISA_M32R) += -DNO_FPU -O2 -Wa,-no-bitinst
|
2005-04-17 06:20:36 +08:00
|
|
|
|
2007-10-15 04:21:35 +08:00
|
|
|
KBUILD_CFLAGS += $(cflags-y)
|
2007-10-16 03:59:31 +08:00
|
|
|
KBUILD_AFLAGS += $(aflags-y)
|
2005-04-17 06:20:36 +08:00
|
|
|
|
2005-09-26 13:19:28 +08:00
|
|
|
CHECKFLAGS += -D__m32r__ -D__BIG_ENDIAN__=1
|
2005-04-17 06:20:36 +08:00
|
|
|
|
2012-05-03 17:02:54 +08:00
|
|
|
head-y := arch/m32r/kernel/head.o
|
2005-04-17 06:20:36 +08:00
|
|
|
|
2007-10-15 04:21:35 +08:00
|
|
|
LIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name)
|
2005-04-17 06:20:36 +08:00
|
|
|
|
|
|
|
libs-y += arch/m32r/lib/ $(LIBGCC)
|
|
|
|
core-y += arch/m32r/kernel/ \
|
|
|
|
arch/m32r/mm/ \
|
2007-08-01 20:09:31 +08:00
|
|
|
arch/m32r/boot/ \
|
|
|
|
arch/m32r/platforms/
|
2005-04-17 06:20:36 +08:00
|
|
|
|
|
|
|
drivers-$(CONFIG_OPROFILE) += arch/m32r/oprofile/
|
|
|
|
|
|
|
|
boot := arch/m32r/boot
|
|
|
|
|
2006-03-06 06:14:10 +08:00
|
|
|
PHONY += zImage
|
2005-04-17 06:20:36 +08:00
|
|
|
|
|
|
|
all: zImage
|
|
|
|
|
|
|
|
zImage: vmlinux
|
|
|
|
$(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
|
|
|
|
|
|
|
|
compressed: zImage
|
|
|
|
|
|
|
|
archclean:
|
|
|
|
$(Q)$(MAKE) $(clean)=$(boot)
|
|
|
|
|
|
|
|
define archhelp
|
|
|
|
echo '* zImage - Compressed kernel image (arch/$(ARCH)/boot/zImage)'
|
|
|
|
endef
|