1DEFAULTTUNE ?= "cortexa9thf-neon"
2
3require conf/machine/include/arm/arch-armv7a.inc
4
5TUNEVALID[cortexa9] = "Enable Cortex-A9 specific processor optimizations"
6TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa9', ' -mcpu=cortex-a9', '', d)}"
7MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'cortexa9', 'armv7a:', '', d)}"
8
9# Little Endian base configs
10AVAILTUNES += "cortexa9 cortexa9t cortexa9-neon cortexa9t-neon"
11ARMPKGARCH:tune-cortexa9             = "cortexa9"
12ARMPKGARCH:tune-cortexa9t            = "cortexa9"
13ARMPKGARCH:tune-cortexa9-neon        = "cortexa9"
14ARMPKGARCH:tune-cortexa9t-neon       = "cortexa9"
15# mcpu is used so don't use armv7a as we don't want march
16TUNE_FEATURES:tune-cortexa9             = "arm vfp cortexa9"
17TUNE_FEATURES:tune-cortexa9t            = "${TUNE_FEATURES:tune-cortexa9} thumb"
18TUNE_FEATURES:tune-cortexa9-neon        = "${TUNE_FEATURES:tune-cortexa9} neon"
19TUNE_FEATURES:tune-cortexa9t-neon       = "${TUNE_FEATURES:tune-cortexa9-neon} thumb"
20PACKAGE_EXTRA_ARCHS:tune-cortexa9             = "${PACKAGE_EXTRA_ARCHS:tune-armv7a} cortexa9-vfp"
21PACKAGE_EXTRA_ARCHS:tune-cortexa9t            = "${PACKAGE_EXTRA_ARCHS:tune-armv7at} cortexa9-vfp cortexa9t2-vfp"
22PACKAGE_EXTRA_ARCHS:tune-cortexa9-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7a-neon} cortexa9-vfp cortexa9-neon"
23PACKAGE_EXTRA_ARCHS:tune-cortexa9t-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7at-neon} cortexa9-vfp cortexa9-neon cortexa9t2-vfp cortexa9t2-neon"
24
25# HF Tunes
26AVAILTUNES += "cortexa9hf cortexa9thf cortexa9hf-neon cortexa9thf-neon"
27ARMPKGARCH:tune-cortexa9hf             = "cortexa9"
28ARMPKGARCH:tune-cortexa9thf            = "cortexa9"
29ARMPKGARCH:tune-cortexa9hf-neon        = "cortexa9"
30ARMPKGARCH:tune-cortexa9thf-neon       = "cortexa9"
31# mcpu is used so don't use armv7a as we don't want march
32TUNE_FEATURES:tune-cortexa9hf             = "${TUNE_FEATURES:tune-cortexa9} callconvention-hard"
33TUNE_FEATURES:tune-cortexa9thf            = "${TUNE_FEATURES:tune-cortexa9t} callconvention-hard"
34TUNE_FEATURES:tune-cortexa9hf-neon        = "${TUNE_FEATURES:tune-cortexa9-neon} callconvention-hard"
35TUNE_FEATURES:tune-cortexa9thf-neon       = "${TUNE_FEATURES:tune-cortexa9t-neon} callconvention-hard"
36PACKAGE_EXTRA_ARCHS:tune-cortexa9hf             = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahf} cortexa9hf-vfp"
37PACKAGE_EXTRA_ARCHS:tune-cortexa9thf            = "${PACKAGE_EXTRA_ARCHS:tune-armv7athf} cortexa9hf-vfp cortexa9t2hf-vfp"
38PACKAGE_EXTRA_ARCHS:tune-cortexa9hf-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahf-neon} cortexa9hf-vfp cortexa9hf-neon"
39PACKAGE_EXTRA_ARCHS:tune-cortexa9thf-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7athf-neon} cortexa9hf-vfp cortexa9hf-neon cortexa9t2hf-vfp cortexa9t2hf-neon"
40
41# VFPv3 Tunes
42AVAILTUNES += "cortexa9-vfpv3 cortexa9t-vfpv3 cortexa9hf-vfpv3 cortexa9thf-vfpv3"
43ARMPKGARCH:tune-cortexa9-vfpv3          = "cortexa9"
44ARMPKGARCH:tune-cortexa9t-vfpv3         = "cortexa9"
45ARMPKGARCH:tune-cortexa9hf-vfpv3        = "cortexa9"
46ARMPKGARCH:tune-cortexa9thf-vfpv3       = "cortexa9"
47# mcpu is used so don't use armv7a as we don't want march
48TUNE_FEATURES:tune-cortexa9-vfpv3           = "${TUNE_FEATURES:tune-cortexa9} vfpv3"
49TUNE_FEATURES:tune-cortexa9t-vfpv3          = "${TUNE_FEATURES:tune-cortexa9t} vfpv3"
50TUNE_FEATURES:tune-cortexa9hf-vfpv3         = "${TUNE_FEATURES:tune-cortexa9hf} vfpv3"
51TUNE_FEATURES:tune-cortexa9thf-vfpv3        = "${TUNE_FEATURES:tune-cortexa9thf} vfpv3"
52PACKAGE_EXTRA_ARCHS:tune-cortexa9-vfpv3           = "${PACKAGE_EXTRA_ARCHS:tune-armv7a-vfpv3} cortexa9-vfp cortexa9-vfpv3"
53PACKAGE_EXTRA_ARCHS:tune-cortexa9t-vfpv3          = "${PACKAGE_EXTRA_ARCHS:tune-armv7at-vfpv3} cortexa9-vfp cortexa9-vfpv3 cortexa9t2-vfp cortexa9t2-vfpv3"
54PACKAGE_EXTRA_ARCHS:tune-cortexa9hf-vfpv3         = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahf-vfpv3} cortexa9hf-vfp cortexa9hf-vfpv3"
55PACKAGE_EXTRA_ARCHS:tune-cortexa9thf-vfpv3        = "${PACKAGE_EXTRA_ARCHS:tune-armv7athf-vfpv3} cortexa9hf-vfp cortexa9hf-vfpv3 cortexa9t2hf-vfp cortexa9t2hf-vfpv3"
56