![Heiko Carstens](/assets/img/avatar_default.png)
Remove the 31 bit support in order to reduce maintenance cost and
effectively remove dead code. Since a couple of years there is no
distribution left that comes with a 31 bit kernel.
The 31 bit kernel also has been broken since more than a year before
anybody noticed. In addition I added a removal warning to the kernel
shown at ipl for 5 minutes: a960062e58
("s390: add 31 bit warning
message") which let everybody know about the plan to remove 31 bit
code. We didn't get any response.
Given that the last 31 bit only machine was introduced in 1999 let's
remove the code.
Anybody with 31 bit user space code can still use the compat mode.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
131 lines
3.7 KiB
Makefile
131 lines
3.7 KiB
Makefile
#
|
|
# s390/Makefile
|
|
#
|
|
# This file is included by the global makefile so that you can add your own
|
|
# architecture-specific flags and dependencies. Remember to do have actions
|
|
# for "archclean" and "archdep" for cleaning up and making dependencies for
|
|
# this architecture
|
|
#
|
|
# This file is subject to the terms and conditions of the GNU General Public
|
|
# License. See the file "COPYING" in the main directory of this archive
|
|
# for more details.
|
|
#
|
|
# Copyright (C) 1994 by Linus Torvalds
|
|
#
|
|
|
|
LD_BFD := elf64-s390
|
|
LDFLAGS := -m elf64_s390
|
|
KBUILD_AFLAGS_MODULE += -fPIC
|
|
KBUILD_CFLAGS_MODULE += -fPIC
|
|
KBUILD_CFLAGS += -m64
|
|
KBUILD_AFLAGS += -m64
|
|
UTS_MACHINE := s390x
|
|
STACK_SIZE := 16384
|
|
CHECKFLAGS += -D__s390__ -D__s390x__
|
|
|
|
export LD_BFD
|
|
|
|
mflags-$(CONFIG_MARCH_Z900) := -march=z900
|
|
mflags-$(CONFIG_MARCH_Z990) := -march=z990
|
|
mflags-$(CONFIG_MARCH_Z9_109) := -march=z9-109
|
|
mflags-$(CONFIG_MARCH_Z10) := -march=z10
|
|
mflags-$(CONFIG_MARCH_Z196) := -march=z196
|
|
mflags-$(CONFIG_MARCH_ZEC12) := -march=zEC12
|
|
mflags-$(CONFIG_MARCH_Z13) := -march=z13
|
|
|
|
aflags-y += $(mflags-y)
|
|
cflags-y += $(mflags-y)
|
|
|
|
cflags-$(CONFIG_MARCH_Z900_TUNE) += -mtune=z900
|
|
cflags-$(CONFIG_MARCH_Z990_TUNE) += -mtune=z990
|
|
cflags-$(CONFIG_MARCH_Z9_109_TUNE) += -mtune=z9-109
|
|
cflags-$(CONFIG_MARCH_Z10_TUNE) += -mtune=z10
|
|
cflags-$(CONFIG_MARCH_Z196_TUNE) += -mtune=z196
|
|
cflags-$(CONFIG_MARCH_ZEC12_TUNE) += -mtune=zEC12
|
|
cflags-$(CONFIG_MARCH_Z13_TUNE) += -mtune=z13
|
|
|
|
#KBUILD_IMAGE is necessary for make rpm
|
|
KBUILD_IMAGE :=arch/s390/boot/image
|
|
|
|
#
|
|
# Prevent tail-call optimizations, to get clearer backtraces:
|
|
#
|
|
cflags-$(CONFIG_FRAME_POINTER) += -fno-optimize-sibling-calls
|
|
|
|
# old style option for packed stacks
|
|
ifeq ($(call cc-option-yn,-mkernel-backchain),y)
|
|
cflags-$(CONFIG_PACK_STACK) += -mkernel-backchain -D__PACK_STACK
|
|
aflags-$(CONFIG_PACK_STACK) += -D__PACK_STACK
|
|
endif
|
|
|
|
# new style option for packed stacks
|
|
ifeq ($(call cc-option-yn,-mpacked-stack),y)
|
|
cflags-$(CONFIG_PACK_STACK) += -mpacked-stack -D__PACK_STACK
|
|
aflags-$(CONFIG_PACK_STACK) += -D__PACK_STACK
|
|
endif
|
|
|
|
ifeq ($(call cc-option-yn,-mstack-size=8192 -mstack-guard=128),y)
|
|
cflags-$(CONFIG_CHECK_STACK) += -mstack-size=$(STACK_SIZE)
|
|
ifneq ($(call cc-option-yn,-mstack-size=8192),y)
|
|
cflags-$(CONFIG_CHECK_STACK) += -mstack-guard=$(CONFIG_STACK_GUARD)
|
|
endif
|
|
endif
|
|
|
|
ifeq ($(call cc-option-yn,-mwarn-dynamicstack),y)
|
|
cflags-$(CONFIG_WARN_DYNAMIC_STACK) += -mwarn-dynamicstack
|
|
endif
|
|
|
|
ifdef CONFIG_FUNCTION_TRACER
|
|
# make use of hotpatch feature if the compiler supports it
|
|
cc_hotpatch := -mhotpatch=0,3
|
|
ifeq ($(call cc-option-yn,$(cc_hotpatch)),y)
|
|
CC_FLAGS_FTRACE := $(cc_hotpatch)
|
|
KBUILD_AFLAGS += -DCC_USING_HOTPATCH
|
|
KBUILD_CFLAGS += -DCC_USING_HOTPATCH
|
|
endif
|
|
endif
|
|
|
|
KBUILD_CFLAGS += -mbackchain -msoft-float $(cflags-y)
|
|
KBUILD_CFLAGS += -pipe -fno-strength-reduce -Wno-sign-compare
|
|
KBUILD_AFLAGS += $(aflags-y)
|
|
|
|
OBJCOPYFLAGS := -O binary
|
|
|
|
head-y := arch/s390/kernel/head.o
|
|
head-y += arch/s390/kernel/head64.o
|
|
|
|
# See arch/s390/Kbuild for content of core part of the kernel
|
|
core-y += arch/s390/
|
|
|
|
libs-y += arch/s390/lib/
|
|
drivers-y += drivers/s390/
|
|
|
|
# must be linked after kernel
|
|
drivers-$(CONFIG_OPROFILE) += arch/s390/oprofile/
|
|
|
|
boot := arch/s390/boot
|
|
|
|
all: image bzImage
|
|
|
|
install: vmlinux
|
|
$(Q)$(MAKE) $(build)=$(boot) $@
|
|
|
|
image bzImage: vmlinux
|
|
$(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
|
|
|
|
zfcpdump:
|
|
$(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
|
|
|
|
vdso_install:
|
|
$(Q)$(MAKE) $(build)=arch/$(ARCH)/kernel/vdso64 $@
|
|
$(Q)$(MAKE) $(build)=arch/$(ARCH)/kernel/vdso32 $@
|
|
|
|
archclean:
|
|
$(Q)$(MAKE) $(clean)=$(boot)
|
|
|
|
# Don't use tabs in echo arguments
|
|
define archhelp
|
|
echo '* image - Kernel image for IPL ($(boot)/image)'
|
|
echo '* bzImage - Compressed kernel image for IPL ($(boot)/bzImage)'
|
|
endef
|