1# Can't use feature-arm-dsp.inc, since that will add "+dsp", which isn't supported in GCC for ARMv5
2ARMPKGSFX_DSP = "${@bb.utils.contains('TUNE_FEATURES', [ 'dsp' ], 'e', '', d)}"
3TUNEVALID[dsp] = "ARM DSP functionality"
4
5require conf/machine/include/arm/arch-armv5.inc
6
7# Little Endian
8AVAILTUNES += "armv5e armv5te"
9ARMPKGARCH:tune-armv5e  ?= "armv5"
10ARMPKGARCH:tune-armv5te ?= "armv5"
11TUNE_FEATURES:tune-armv5e  = "${TUNE_FEATURES:tune-armv5} dsp"
12TUNE_FEATURES:tune-armv5te = "${TUNE_FEATURES:tune-armv5t} dsp"
13PACKAGE_EXTRA_ARCHS:tune-armv5e  = "${PACKAGE_EXTRA_ARCHS:tune-armv5} armv5e"
14PACKAGE_EXTRA_ARCHS:tune-armv5te = "${PACKAGE_EXTRA_ARCHS:tune-armv5t} armv5e armv5te"
15
16# Little Endian + VFP/DSP
17AVAILTUNES += "armv5e-vfp armv5te-vfp armv5ehf-vfp armv5tehf-vfp"
18ARMPKGARCH:tune-armv5e-vfp    ?= "armv5"
19ARMPKGARCH:tune-armv5te-vfp   ?= "armv5"
20ARMPKGARCH:tune-armv5ehf-vfp  ?= "armv5"
21ARMPKGARCH:tune-armv5tehf-vfp ?= "armv5"
22TUNE_FEATURES:tune-armv5e-vfp    = "${TUNE_FEATURES:tune-armv5e} vfp"
23TUNE_FEATURES:tune-armv5te-vfp   = "${TUNE_FEATURES:tune-armv5te} vfp"
24TUNE_FEATURES:tune-armv5ehf-vfp  = "${TUNE_FEATURES:tune-armv5e-vfp} callconvention-hard"
25TUNE_FEATURES:tune-armv5tehf-vfp = "${TUNE_FEATURES:tune-armv5te-vfp} callconvention-hard"
26PACKAGE_EXTRA_ARCHS:tune-armv5e-vfp    = "${PACKAGE_EXTRA_ARCHS:tune-armv5-vfp} armv5e armv5e-vfp"
27PACKAGE_EXTRA_ARCHS:tune-armv5te-vfp   = "${PACKAGE_EXTRA_ARCHS:tune-armv5t-vfp} armv5e armv5te armv5e-vfp armv5te-vfp"
28PACKAGE_EXTRA_ARCHS:tune-armv5ehf-vfp  = "${PACKAGE_EXTRA_ARCHS:tune-armv5hf-vfp} armv5ehf-vfp"
29PACKAGE_EXTRA_ARCHS:tune-armv5tehf-vfp = "${PACKAGE_EXTRA_ARCHS:tune-armv5thf-vfp} armv5ehf-vfp armv5tehf-vfp"
30
31# Big Endian
32AVAILTUNES += "armv5eb armv5teb"
33ARMPKGARCH:tune-armv5eb  ?= "armv5"
34ARMPKGARCH:tune-armv5teb ?= "armv5"
35TUNE_FEATURES:tune-armv5eb  = "${TUNE_FEATURES:tune-armv5e} bigendian"
36TUNE_FEATURES:tune-armv5teb = "${TUNE_FEATURES:tune-armv5te} bigendian"
37PACKAGE_EXTRA_ARCHS:tune-armv5eb  = "${PACKAGE_EXTRA_ARCHS:tune-armv5b} armv5eb"
38PACKAGE_EXTRA_ARCHS:tune-armv5teb = "${PACKAGE_EXTRA_ARCHS:tune-armv5tb} armv5eb armv5teb"
39
40# Big Endian + VFP/DSP
41AVAILTUNES += "armv5eb-vfp armv5teb-vfp armv5ehfb-vfp armv5tehfb-vfp"
42ARMPKGARCH:tune-armv5eb-vfp    ?= "armv5"
43ARMPKGARCH:tune-armv5teb-vfp   ?= "armv5"
44ARMPKGARCH:tune-armv5ehfb-vfp  ?= "armv5"
45ARMPKGARCH:tune-armv5tehfb-vfp ?= "armv5"
46TUNE_FEATURES:tune-armv5eb-vfp    = "${TUNE_FEATURES:tune-armv5e-vfp} bigendian"
47TUNE_FEATURES:tune-armv5teb-vfp   = "${TUNE_FEATURES:tune-armv5te-vfp} bigendian"
48TUNE_FEATURES:tune-armv5ehfb-vfp  = "${TUNE_FEATURES:tune-armv5ehf-vfp} bigendian"
49TUNE_FEATURES:tune-armv5tehfb-vfp = "${TUNE_FEATURES:tune-armv5tehf-vfp} bigendian"
50PACKAGE_EXTRA_ARCHS:tune-armv5eb-vfp    = "${PACKAGE_EXTRA_ARCHS:tune-armv5b-vfp} armv5eb armv5eb-vfp"
51PACKAGE_EXTRA_ARCHS:tune-armv5teb-vfp   = "${PACKAGE_EXTRA_ARCHS:tune-armv5tb-vfp} armv5eb armv5teb armv5eb-vfp armv5teb-vfp"
52PACKAGE_EXTRA_ARCHS:tune-armv5ehfb-vfp  = "${PACKAGE_EXTRA_ARCHS:tune-armv5hfb-vfp} armv5ehfb-vfp"
53PACKAGE_EXTRA_ARCHS:tune-armv5tehfb-vfp = "${PACKAGE_EXTRA_ARCHS:tune-armv5thfb-vfp} armv5ehfb-vfp armv5tehfb-vfp"
54