Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f8b2dcbd authored by Martin Schwidefsky's avatar Martin Schwidefsky
Browse files

s390: add z13 code generation support



Allow to generate code that only runs on z13 machines.

Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
parent e9825067
Loading
Loading
Loading
Loading
+18 −0
Original line number Diff line number Diff line
@@ -185,6 +185,10 @@ config HAVE_MARCH_ZEC12_FEATURES
	def_bool n
	select HAVE_MARCH_Z196_FEATURES

config HAVE_MARCH_Z13_FEATURES
	def_bool n
	select HAVE_MARCH_ZEC12_FEATURES

choice
	prompt "Processor type"
	default MARCH_G5
@@ -244,6 +248,14 @@ config MARCH_ZEC12
	  2827 series). The kernel will be slightly faster but will not work on
	  older machines.

config MARCH_Z13
	bool "IBM z13"
	select HAVE_MARCH_Z13_FEATURES if 64BIT
	help
	  Select this to enable optimizations for IBM z13 (2964 series).
	  The kernel will be slightly faster but will not work on older
	  machines.

endchoice

config MARCH_G5_TUNE
@@ -267,6 +279,9 @@ config MARCH_Z196_TUNE
config MARCH_ZEC12_TUNE
	def_bool TUNE_ZEC12 || MARCH_ZEC12 && TUNE_DEFAULT

config MARCH_Z13_TUNE
	def_bool TUNE_Z13 || MARCH_Z13 && TUNE_DEFAULT

choice
	prompt "Tune code generation"
	default TUNE_DEFAULT
@@ -305,6 +320,9 @@ config TUNE_Z196
config TUNE_ZEC12
	bool "IBM zBC12 and zEC12"

config TUNE_Z13
	bool "IBM z13"

endchoice

config 64BIT
+2 −0
Original line number Diff line number Diff line
@@ -42,6 +42,7 @@ 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)
@@ -53,6 +54,7 @@ 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
+3 −1
Original line number Diff line number Diff line
@@ -436,7 +436,9 @@ ENTRY(startup_kdump)
# followed by the facility words.

#if defined(CONFIG_64BIT)
#if defined(CONFIG_MARCH_ZEC12)
#if defined(CONFIG_MARCH_Z13)
	.long 3, 0xc100eff2, 0xf46ce800, 0x00400000
#elif defined(CONFIG_MARCH_ZEC12)
	.long 3, 0xc100eff2, 0xf46ce800, 0x00400000
#elif defined(CONFIG_MARCH_Z196)
	.long 2, 0xc100eff2, 0xf46c0000
+3 −0
Original line number Diff line number Diff line
@@ -810,6 +810,9 @@ static void __init setup_hwcaps(void)
	case 0x2828:
		strcpy(elf_platform, "zEC12");
		break;
	case 0x2964:
		strcpy(elf_platform, "z13");
		break;
	}
}