1DEFAULTTUNE ?= "armv5"
2
3TUNEVALID[armv5] = "Enable instructions for ARMv5"
4TUNECONFLICTS[armv5] = "armv4"
5TUNE_CCARGS_MARCH .= "${@bb.utils.contains('TUNE_FEATURES', 'armv5', ' -march=armv5t${ARMPKGSFX_DSP}', '', d)}"
6MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'armv5', 'armv5:', '', d)}"
7
8require conf/machine/include/arm/arch-armv4.inc
9require conf/machine/include/arm/feature-arm-vfp.inc
10
11# Little Endian
12AVAILTUNES += "armv5 armv5t"
13ARMPKGARCH:tune-armv5  ?= "armv5"
14ARMPKGARCH:tune-armv5t ?= "armv5"
15TUNE_FEATURES:tune-armv5  = "arm armv5"
16TUNE_FEATURES:tune-armv5t = "${TUNE_FEATURES:tune-armv5} thumb"
17PACKAGE_EXTRA_ARCHS:tune-armv5  = "${PACKAGE_EXTRA_ARCHS:tune-armv4} armv5"
18PACKAGE_EXTRA_ARCHS:tune-armv5t = "${PACKAGE_EXTRA_ARCHS:tune-armv4t} armv5 armv5t"
19
20# Little Endian + VFP/DSP
21AVAILTUNES += "armv5-vfp armv5t-vfp armv5hf-vfp armv5thf-vfp"
22ARMPKGARCH:tune-armv5-vfp    ?= "armv5"
23ARMPKGARCH:tune-armv5t-vfp   ?= "armv5"
24ARMPKGARCH:tune-armv5hf-vfp  ?= "armv5"
25ARMPKGARCH:tune-armv5thf-vfp ?= "armv5"
26TUNE_FEATURES:tune-armv5-vfp    = "${TUNE_FEATURES:tune-armv5} vfp"
27TUNE_FEATURES:tune-armv5t-vfp   = "${TUNE_FEATURES:tune-armv5t} vfp"
28TUNE_FEATURES:tune-armv5hf-vfp  = "${TUNE_FEATURES:tune-armv5-vfp} callconvention-hard"
29TUNE_FEATURES:tune-armv5thf-vfp = "${TUNE_FEATURES:tune-armv5t-vfp} callconvention-hard"
30PACKAGE_EXTRA_ARCHS:tune-armv5-vfp     = "${PACKAGE_EXTRA_ARCHS:tune-armv5} armv5-vfp"
31PACKAGE_EXTRA_ARCHS:tune-armv5t-vfp    = "${PACKAGE_EXTRA_ARCHS:tune-armv5t} armv5-vfp armv5t-vfp"
32PACKAGE_EXTRA_ARCHS:tune-armv5hf-vfp   = "armv5hf-vfp"
33PACKAGE_EXTRA_ARCHS:tune-armv5thf-vfp  = "armv5hf-vfp armv5thf-vfp"
34
35# Big Endian
36AVAILTUNES += "armv5b armv5tb"
37ARMPKGARCH:tune-armv5b  ?= "armv5"
38ARMPKGARCH:tune-armv5tb ?= "armv5"
39TUNE_FEATURES:tune-armv5b  = "${TUNE_FEATURES:tune-armv5} bigendian"
40TUNE_FEATURES:tune-armv5tb = "${TUNE_FEATURES:tune-armv5t} bigendian"
41PACKAGE_EXTRA_ARCHS:tune-armv5b  = "${PACKAGE_EXTRA_ARCHS:tune-armv4b} armv5b"
42PACKAGE_EXTRA_ARCHS:tune-armv5tb = "${PACKAGE_EXTRA_ARCHS:tune-armv4tb} armv5b armv5tb"
43
44# Big Endian + VFP/DSP
45AVAILTUNES += "armv5b-vfp armv5tb-vfp armv5hfb-vfp armv5thfb-vfp"
46ARMPKGARCH:tune-armv5b-vfp    ?= "armv5"
47ARMPKGARCH:tune-armv5tb-vfp   ?= "armv5"
48ARMPKGARCH:tune-armv5hfb-vfp  ?= "armv5"
49ARMPKGARCH:tune-armv5thfb-vfp ?= "armv5"
50TUNE_FEATURES:tune-armv5b-vfp    = "${TUNE_FEATURES:tune-armv5-vfp} bigendian"
51TUNE_FEATURES:tune-armv5tb-vfp   = "${TUNE_FEATURES:tune-armv5t-vfp} bigendian"
52TUNE_FEATURES:tune-armv5hfb-vfp  = "${TUNE_FEATURES:tune-armv5hf-vfp} bigendian"
53TUNE_FEATURES:tune-armv5thfb-vfp = "${TUNE_FEATURES:tune-armv5thf-vfp} bigendian"
54PACKAGE_EXTRA_ARCHS:tune-armv5b-vfp    = "${PACKAGE_EXTRA_ARCHS:tune-armv5b} armv5b-vfp"
55PACKAGE_EXTRA_ARCHS:tune-armv5tb-vfp   = "${PACKAGE_EXTRA_ARCHS:tune-armv5tb} armv5b-vfp armv5tb-vfp"
56PACKAGE_EXTRA_ARCHS:tune-armv5hfb-vfp  = "armv5hfb-vfp"
57PACKAGE_EXTRA_ARCHS:tune-armv5thfb-vfp = "armv5hfb-vfp armv5thfb-vfp"
58