* [U-Boot] [PATCH] MIPS: Kconfig: optimize gcc -march and -mtune setup
@ 2015-12-26 18:55 Daniel Schwierzeck
0 siblings, 0 replies; only message in thread
From: Daniel Schwierzeck @ 2015-12-26 18:55 UTC (permalink / raw)
To: u-boot
Move setup of -march to arch/mips/Makefile and follow the design on ARM.
Also add a possibility to chose specific CPU tune options.
Signed-off-by: Wills Wang <wills.wang@live.com>
Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
---
arch/mips/Kconfig | 12 +++++++++++-
arch/mips/Makefile | 13 +++++++++++++
arch/mips/config.mk | 6 ------
arch/mips/mach-au1x00/config.mk | 8 --------
4 files changed, 24 insertions(+), 15 deletions(-)
delete mode 100644 arch/mips/mach-au1x00/config.mk
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 7f7e258..388e4c0 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -43,6 +43,7 @@ config TARGET_DBAU1X00
select SUPPORTS_CPU_MIPS32_R1
select SUPPORTS_CPU_MIPS32_R2
select SYS_MIPS_CACHE_INIT_RAM_LOAD
+ select MIPS_TUNE_4KC
config TARGET_PB1X00
bool "Support pb1x00"
@@ -50,7 +51,7 @@ config TARGET_PB1X00
select SUPPORTS_CPU_MIPS32_R1
select SUPPORTS_CPU_MIPS32_R2
select SYS_MIPS_CACHE_INIT_RAM_LOAD
-
+ select MIPS_TUNE_4KC
endchoice
@@ -174,6 +175,15 @@ config CPU_MIPS64
bool
default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
+config MIPS_TUNE_4KC
+ bool
+
+config MIPS_TUNE_14KC
+ bool
+
+config MIPS_TUNE_24KC
+ bool
+
config 32BIT
bool
diff --git a/arch/mips/Makefile b/arch/mips/Makefile
index 6a9f798..90cd590 100644
--- a/arch/mips/Makefile
+++ b/arch/mips/Makefile
@@ -13,3 +13,16 @@ machdirs := $(patsubst %,arch/mips/mach-%/,$(machine-y))
libs-y += $(machdirs)
PLATFORM_CPPFLAGS += $(patsubst %,-I$(srctree)/%include,$(machdirs))
+
+# Optimize for MIPS architectures
+arch-$(CONFIG_CPU_MIPS32_R1) += -march=mips32 -Wa,-mips32
+arch-$(CONFIG_CPU_MIPS32_R2) += -march=mips32r2 -Wa,-mips32r2
+arch-$(CONFIG_CPU_MIPS64_R1) += -march=mips64 -Wa,-mips64
+arch-$(CONFIG_CPU_MIPS64_R2) += -march=mips64r2 -Wa,-mips64r2
+
+# Allow extra optimization for specific CPUs/SoCs
+tune-$(CONFIG_MIPS_TUNE_4KC) += -mtune=4kc
+tune-$(CONFIG_MIPS_TUNE_14KC) += -mtune=14kc
+tune-$(CONFIG_MIPS_TUNE_24KC) += -mtune=24kc
+
+PLATFORM_CPPFLAGS += $(arch-y) $(tune-y)
diff --git a/arch/mips/config.mk b/arch/mips/config.mk
index 3ebc202..bf8dd9c 100644
--- a/arch/mips/config.mk
+++ b/arch/mips/config.mk
@@ -35,12 +35,6 @@ PLATFORM_LDFLAGS += -m$(64bit-emul)
OBJCOPYFLAGS += -O $(64bit-bfd)
endif
-cpuflags-$(CONFIG_CPU_MIPS32_R1) += -march=mips32 -Wa,-mips32
-cpuflags-$(CONFIG_CPU_MIPS32_R2) += -march=mips32r2 -Wa,-mips32r2
-cpuflags-$(CONFIG_CPU_MIPS64_R1) += -march=mips64 -Wa,-mips64
-cpuflags-$(CONFIG_CPU_MIPS64_R2) += -march=mips64r2 -Wa,-mips64r2
-PLATFORM_CPPFLAGS += $(cpuflags-y)
-
PLATFORM_CPPFLAGS += -D__MIPS__
#
diff --git a/arch/mips/mach-au1x00/config.mk b/arch/mips/mach-au1x00/config.mk
deleted file mode 100644
index 5c89129..0000000
--- a/arch/mips/mach-au1x00/config.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-#
-# (C) Copyright 2011
-# Wolfgang Denk, DENX Software Engineering, wd at denx.de.
-#
-# SPDX-License-Identifier: GPL-2.0+
-#
-
-PLATFORM_CPPFLAGS += -mtune=4kc
--
2.5.0
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2015-12-26 18:55 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-12-26 18:55 [U-Boot] [PATCH] MIPS: Kconfig: optimize gcc -march and -mtune setup Daniel Schwierzeck
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.