summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorMats Kärrman <Mats.Karrman@tritech.se>2014-04-01 16:20:34 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-04-01 23:39:14 +0100
commit3e528d3e4bc542ca2f654c54363c56af0fb9f61b (patch)
treec274b46cfb4b582e37b6ab3d7a1c609848dcbe68 /meta
parent8b0eceeebf88c1c19928c53fb96078e9c0c2299b (diff)
downloadpoky-3e528d3e4bc542ca2f654c54363c56af0fb9f61b.tar.gz
Make ppce300c3 tune hard-float by default
The tuning file for PowerPC e300c3 is soft-float. In OE-classic it was hard- float and it should be as the c3 has an fpu. I have modified the tuning file to include both a hard-float version (using the existing ppce300c3 name) and an optional soft-float version (called ppce300c3-nf). The following patch also passes a "--with-cpu=e300c3" argument to GLIBC. For this to have any effect the sqrt/sqrtf implementations added by the "glibc.fix_sqrt2.patch" are required and also an additional "Implies" file (added to the mentioned patch as a separate patch for eglibc_2.19). Tested with eglibc 2.19 on PowerPC MPC5125. (From OE-Core rev: 9d502ca8551fd461f869395b1b7e62d6dcf59a84) Signed-off-by: Mats Karrman <mats.karrman@tritech.se> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/conf/machine/include/tune-ppce300c3.inc20
1 files changed, 16 insertions, 4 deletions
diff --git a/meta/conf/machine/include/tune-ppce300c3.inc b/meta/conf/machine/include/tune-ppce300c3.inc
index 9431222284..b19cf220ba 100644
--- a/meta/conf/machine/include/tune-ppce300c3.inc
+++ b/meta/conf/machine/include/tune-ppce300c3.inc
@@ -2,10 +2,22 @@ DEFAULTTUNE ?= "ppce300c3"
2 2
3require conf/machine/include/powerpc/arch-powerpc.inc 3require conf/machine/include/powerpc/arch-powerpc.inc
4 4
5AVAILTUNES += "ppce300c3 ppce300c3-nf"
6
7# hard-float
5TUNEVALID[ppce300c3] = "Enable ppce300c3 specific processor optimizations" 8TUNEVALID[ppce300c3] = "Enable ppce300c3 specific processor optimizations"
9TUNE_FEATURES_tune-ppce300c3 = "${TUNE_FEATURES_tune-powerpc} ppce300c3"
10TUNE_PKGARCH_tune-ppce300c3 = "ppce300c3"
11PACKAGE_EXTRA_ARCHS_tune-ppce300c3 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc} ppce300c3"
6TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", " -mcpu=e300c3", "", d)}" 12TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", " -mcpu=e300c3", "", d)}"
7 13
8AVAILTUNES += "ppce300c3" 14# glibc config options to make use of e300c3 (603e) specific sqrt/sqrtf routines
9TUNE_FEATURES_tune-ppce300c3 = "m32 fpu-soft ppce300c3" 15GLIBC_EXTRA_OECONF += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", "--with-cpu=e300c3", "", d)}"
10TUNE_PKGARCH_tune-ppce300c3 = "ppce300c3" 16
11PACKAGE_EXTRA_ARCHS_tune-ppce300c3 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc-nf} ppce300c3" 17# soft-float
18TUNEVALID[ppce300c3-nf] = "Enable ppce300c3 specific processor optimizations (no fpu)"
19TUNE_FEATURES_tune-ppce300c3-nf = "${TUNE_FEATURES_tune-powerpc-nf} ppce300c3-nf"
20TUNE_PKGARCH_tune-ppce300c3-nf = "ppce300c3-nf"
21PACKAGE_EXTRA_ARCHS_tune-ppce300c3-nf = "${PACKAGE_EXTRA_ARCHS_tune-powerpc-nf} ppce300c3-nf"
22TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3-nf", " -mcpu=e300c3", "", d)}"
23