From: nbd Date: Sun, 16 Jan 2011 01:25:06 +0000 (+0000) Subject: mpc85xx: add a new 'spe_fpu' feature flag for the FPU used on freescale powerpc cpus X-Git-Url: https://git.rohieb.name/openwrt.git/commitdiff_plain/89a10d913b8e4cf2d42a32ab9101c19197d48967?ds=inline 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 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@25018 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- diff --git a/rules.mk b/rules.mk index 09b4f5447..2e66bea4c 100644 --- a/rules.mk +++ b/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) diff --git a/scripts/metadata.pl b/scripts/metadata.pl index 37c0a51ee..9f06299aa 100755 --- a/scripts/metadata.pl +++ b/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"; diff --git a/target/Config.in b/target/Config.in index 226624564..9e0263e4c 100644 --- a/target/Config.in +++ b/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 diff --git a/target/linux/mpc85xx/Makefile b/target/linux/mpc85xx/Makefile index a441acf23..5488adc59 100644 --- a/target/linux/mpc85xx/Makefile +++ b/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 LINUX_VERSION:=2.6.36.2