diff mbox series

[master/scarthgap,v2] conf: machine: k3: Use Cortex-A53/A72 CPU tune

Message ID 20250121190825.817065-1-denis@denix.org
State New
Headers show
Series [master/scarthgap,v2] conf: machine: k3: Use Cortex-A53/A72 CPU tune | expand

Commit Message

Denys Dmytriyenko Jan. 21, 2025, 7:08 p.m. UTC
From: Andrew Davis <afd@ti.com>

All current K3 devices use either A53 or A72. Use the compile tune
configuration specific for these to allow the compiler to make
better optimizations.

Default tune here is weakly set to a lowest common denominator of
aarch64, as before, which is a recommended behavior for a BSP layer.

This allows for greater binary reuse (packages, sstate, etc.) across
different platforms of the same architecture in multi-BSP environments.

At the same time, since all the correct tunes are now configured for
K3 devices, one can elevate compiler optimization levels either from
local.conf or own Distro configuration on a per-SoC or per-device
basis, like so:

DEFAULTTUNE:k3 = "armv8a-crc"
DEFAULTTUNE:j721e = "cortexa72-cortexa53"
DEFAULTTUNE:beagleplay = "cortexa72-cortexa53"

Signed-off-by: Andrew Davis <afd@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
---
There were several discussions on this topic, e.g. a v1 of this
patch and also a similar separate patch:
https://patchwork.yoctoproject.org/project/ti/patch/20240215212613.57012-1-afd@ti.com/
https://patchwork.yoctoproject.org/project/ti/patch/20241114140801.1964528-1-matthias.schiffer@ew.tq-group.com/

v2 sets back the lowest DEFAULTTUNE, explains why, and details
how to benefit from extra optimizations and where to set those.

 meta-ti-bsp/conf/machine/include/k3.inc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/meta-ti-bsp/conf/machine/include/k3.inc b/meta-ti-bsp/conf/machine/include/k3.inc
index a296f64f..dd3cbeca 100644
--- a/meta-ti-bsp/conf/machine/include/k3.inc
+++ b/meta-ti-bsp/conf/machine/include/k3.inc
@@ -3,7 +3,8 @@ 
 require conf/machine/include/ti-soc.inc
 SOC_FAMILY:append = ":k3"
 
-require conf/machine/include/arm/arch-arm64.inc
+DEFAULTTUNE ?= "aarch64"
+require conf/machine/include/arm/armv8a/tune-cortexa72-cortexa53.inc
 
 require conf/machine/include/ti-bsp.inc