aboutsummaryrefslogtreecommitdiffstats
path: root/meta/conf/machine/include/arm/feature-arm-vfp.inc
AgeCommit message (Collapse)Author
2016-01-07feature-arm-vfp.inc: Further simplify with TUNE_CCARGS_MFLOATMartin Jansa
* add TUNE_CCARGS_MFLOAT variable which is used to set -mfloat-abi parameter as well as ARMPKGSFX_EABI suffix in TUNE_PKGARCH and TARGET_FPU * TARGET_FPU was using ARMPKGSFX_FPU, but in most cases we use it only to distinguish between hard and soft abi, not various -mfpu variants which can appear in ARMPKGSFX_FPU Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-01-07feature-arm-{neon,vfp}.inc: refactor and fix issuesMartin Jansa
* respect all 4 vfp options ('vfp', 'vfpv3d16', 'vfpv3', 'vfpv4') when setting -mfloat-abi and ARMPKGSFX_EABI, without this change it wasn't possible to use call-convention hard together with vfpv4 * move 'vfpv3d16', 'vfpv3', 'vfpv4' support from feature-arm-vfp.inc to feature-arm-neon.inc the main difference is that feature-arm-vfp.inc is included in arch-armv5.inc while feature-arm-neon.inc only in armv7*.inc, so these options should be added to TUNEVALID also only for armv7* MACHINEs. * support vfpv4 with or without neon when both vfpv4 and neon are in TUNE_FEATURES we want to set only one -mfpu parameter and to neon-vfpv4 * prevent multiple appends to ARMPKGSFX_FPU, we don't want to include e.g. -vfp as well as -vfpv4 when both "vfp" and "vfpv4" are in TUNE_FEATURES * add -mfpu=vfp for tunes with "vfp" in TUNE_FEATURES - before that we were only adding -vfp to ARMPKGSFX_FPU * add TUNE_CCARGS_MFPU variable which is used to set -mfpu parameter as well as ARMPKGSFX_FPU suffix in TUNE_PKGARCH, all enabled values are appended to it based on TUNE_FEATURES and then the last one is used in the actual param and suffix * this prevents multiple -mfpu options in TUNE_CCARGS * !!! This means we need to change TUNE_PKGARCH and PACKAGE_EXTRA_ARCHS for vfpv4, vfpv3d16, vfpv3 tunes, because the -vfp* isn't prependend multiple times. If you're using one of these new DEFAULTTUNES (which were at least partially broken anyway) and depend on working binary package feed upgrade-path, then don't forget to migrate PR service database to new TUNE_PKGARCH. Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-12-01meta/conf/machine: use ' inside quoted valuesMartin Jansa
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-07-31arch-armv7a.inc, feature-arm-vfp.inc: add tunes for vfpv3 and vfpv3d16André Draszik
This adds tunes for ARM's v3 Vector Floating Point unit for 16 and 32 bit implementation: http://www.arm.com/products/processors/technologies/vector-floating-point.php See also https://wiki.debian.org/ArmHardFloatPort/VfpComparison for a nice comparison and why vfpv3d16 is useful. Signed-off-by: Ross Burton <ross.burton@intel.com>
2014-02-02Add Cortex A7 support for NEONv2 & FPv4Kristof Robot
[YOCTO #5710] Add tuning options for Cortex-A7 with NEONv2 & FPv4: - cortexa7hf-neon-vfpv4 - cortexa7thf-neon-vfpv4 Signed-off-by: Kristof Robot <krirobo@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-04-29conf/machine: use .= instead of += in TUNE_CCARGSMartin Jansa
* number of TUNE_CCARGS conditionals is important if we add extra space with each one in "else" branch I'm building for 2 MACHINEs one is cortexa9, second is cortexa8 few months ago we added TUNE_CCARGS[vardepvalue] in bitbake.conf http://git.openembedded.org/openembedded-core/commit/?id=03f1e34ea3ce80931e9c3cd2ab22824f28a7233b which fixed some cases (like mentioned tune-xscale and tune-arm926ejs) where both had unused TUNE_CCARGS when common DEFAULTTUNE was used. with cortexa[89] it's different, because cortexa9 has one extra TUNE_CCARGS TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "cortexa9", "-mtune=cortex-a9", "", d)}" which adds extra *space* even when not used because of '+=' and as result: $ bitbake-diffsigs tmp-eglibc/sstate-diff/1366797730/*/armv7*/adapterbase/*do_configure* basehash changed from f986789fb8fb3579ed6a3492cc8a8d10 to c851b5f838d945ee13072e9ad6725dca Variable TUNE_CCARGS value changed from ' -march=armv7-a -mthumb-interwork -mfloat-abi=softfp -mfpu=neon ' to ' -march=armv7-a -mthumb-interwork -mfloat-abi=softfp -mfpu=neon ' Hash for dependent task gcc-runtime_4.7.bb.do_populate_sysroot changed from bdeabf7a86958b9110b566344b7916de to 2be5618e6bc8c57ec9db5659bf217915 Hash for dependent task eglibc_2.17.bb.do_populate_sysroot changed from b4f40fc62dde684acd0a574532a55360 to 97fcb426603d4a1c1099c0504d2ebf7d Hash for dependent task glib-2.0_2.34.3.bb.do_populate_sysroot changed from fd2f90b83098c34e88d649d70f6ea4f5 to ebd740bb94ea3eb0a914efda6fc82c4a Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2011-07-27Add ARM tune file overhaul based largely on work from Mark HatleRichard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>