2
0
Эх сурвалжийг харах

mpc85xx: add a new 'spe_fpu' feature flag for the FPU used on freescale powerpc cpus The SPE FPU is ABI-incompatible with the regular powerpc FPU, this needs to be reflected in the toolchain target name. Fixes floating point crashes in user space

SVN-Revision: 25018
Felix Fietkau 14 жил өмнө
parent
commit
8740549c57

+ 3 - 0
rules.mk

@@ -69,6 +69,9 @@ endif
 ifneq ($(findstring -march=armv5te,$(TARGET_OPTIMIZATION)),)
   ARCH_SUFFIX:=_v5te
 endif
+ifdef CONFIG_HAS_SPE_FPU
+  TARGET_SUFFIX:=$(TARGET_SUFFIX)spe
+endif
 
 DL_DIR:=$(if $(call qstrip,$(CONFIG_DOWNLOAD_FOLDER)),$(call qstrip,$(CONFIG_DOWNLOAD_FOLDER)),$(TOPDIR)/dl)
 BIN_DIR:=$(TOPDIR)/bin/$(BOARD)

+ 1 - 0
scripts/metadata.pl

@@ -168,6 +168,7 @@ sub target_config_features(@) {
 		/cpiogz/ and $ret .= "\tselect USES_CPIOGZ\n";
 		/ubifs/ and $ret .= "\tselect USES_UBIFS\n";
 		/fpu/ and $ret .= "\tselect HAS_FPU\n";
+		/spe_fpu/ and $ret .= "\tselect HAS_SPE_FPU\n";
 		/ramdisk/ and $ret .= "\tselect USES_INITRAMFS\n";
 		/powerpc64/ and $ret .= "\tselect powerpc64\n";
 		/nommu/ and $ret .= "\tselect NOMMU\n";

+ 5 - 0
target/Config.in

@@ -2,6 +2,11 @@ source "tmp/.config-target.in"
 
 # Kernel/Hardware features
 
+config HAS_SPE_FPU
+	depends powerpc
+	select HAS_FPU
+	bool
+
 config HAS_FPU
 	bool
 

+ 1 - 1
target/linux/mpc85xx/Makefile

@@ -10,7 +10,7 @@ ARCH:=powerpc
 BOARD:=mpc85xx
 BOARDNAME:=Freescale MPC85xx
 CFLAGS:=-Os -pipe -funit-at-a-time -mcpu=8540
-FEATURES:=fpu ramdisk broken
+FEATURES:=spe_fpu ramdisk broken
 MAINTAINER:=Imre Kaloz <[email protected]>
 
 LINUX_VERSION:=2.6.36.2