* [PATCH meta-rockchip master scarthgap v3 01/16] rk3588/rk3588s: add SOC_FAMILY
2024-05-31 9:25 [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Quentin Schulz
@ 2024-05-31 9:25 ` Quentin Schulz
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 02/16] rk3066: fix MACHINEOVERRIDES order Quentin Schulz
` (15 subsequent siblings)
16 siblings, 0 replies; 22+ messages in thread
From: Quentin Schulz @ 2024-05-31 9:25 UTC (permalink / raw)
To: yocto-patches; +Cc: Quentin Schulz
From: Quentin Schulz <quentin.schulz@cherry.de>
This adds an SOC_FAMILY for rk3588 and rk3588s.
Note that we are NOT "require"'ing conf/machine/include/soc-family.inc
so SOC_FAMILY is just another BitBake variable. If we were to require
this file, it would break the MACHINEOVERRIDES order, so some more
changes would be required to handle those properly.
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
conf/machine/include/rk3588.inc | 1 +
conf/machine/include/rk3588s.inc | 1 +
2 files changed, 2 insertions(+)
diff --git a/conf/machine/include/rk3588.inc b/conf/machine/include/rk3588.inc
index 34f0627..958efb2 100644
--- a/conf/machine/include/rk3588.inc
+++ b/conf/machine/include/rk3588.inc
@@ -1,4 +1,5 @@
MACHINEOVERRIDES =. "rk3588:"
+SOC_FAMILY = "rk3588"
# the rk3588s is a "stripped-down" version of the rk3588
# in the kernel's device-tree the rk3588 builds on top of the rk3588s
diff --git a/conf/machine/include/rk3588s.inc b/conf/machine/include/rk3588s.inc
index 878f7a8..6e700d8 100644
--- a/conf/machine/include/rk3588s.inc
+++ b/conf/machine/include/rk3588s.inc
@@ -1,3 +1,4 @@
+SOC_FAMILY ?= "rk3588s"
MACHINEOVERRIDES =. "rk3588s:"
DEFAULTTUNE ?= "cortexa76-cortexa55-crypto"
--
2.45.1
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH meta-rockchip master scarthgap v3 02/16] rk3066: fix MACHINEOVERRIDES order
2024-05-31 9:25 [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Quentin Schulz
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 01/16] rk3588/rk3588s: add SOC_FAMILY Quentin Schulz
@ 2024-05-31 9:25 ` Quentin Schulz
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 03/16] rk3188: " Quentin Schulz
` (14 subsequent siblings)
16 siblings, 0 replies; 22+ messages in thread
From: Quentin Schulz @ 2024-05-31 9:25 UTC (permalink / raw)
To: yocto-patches; +Cc: Quentin Schulz
From: Quentin Schulz <quentin.schulz@cherry.de>
The SOC_FAMILY OVERRIDES should come after the TUNE one, so it needs to
be defined before.
before:
MACHINEOVERRIDES="rk3066:armv7a:marsboard-rk3066"
after:
MACHINEOVERRIDES="armv7a:rk3066:marsboard-rk3066"
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
conf/machine/include/rk3066.inc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/conf/machine/include/rk3066.inc b/conf/machine/include/rk3066.inc
index 3510df2..a2685af 100644
--- a/conf/machine/include/rk3066.inc
+++ b/conf/machine/include/rk3066.inc
@@ -3,8 +3,8 @@
SOC_FAMILY = "rk3066"
-require conf/machine/include/arm/armv7a/tune-cortexa9.inc
require conf/machine/include/soc-family.inc
+require conf/machine/include/arm/armv7a/tune-cortexa9.inc
require conf/machine/include/rockchip-defaults.inc
SERIAL_CONSOLES = "115200;ttyS2"
--
2.45.1
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH meta-rockchip master scarthgap v3 03/16] rk3188: fix MACHINEOVERRIDES order
2024-05-31 9:25 [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Quentin Schulz
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 01/16] rk3588/rk3588s: add SOC_FAMILY Quentin Schulz
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 02/16] rk3066: fix MACHINEOVERRIDES order Quentin Schulz
@ 2024-05-31 9:25 ` Quentin Schulz
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 04/16] rk3288: " Quentin Schulz
` (13 subsequent siblings)
16 siblings, 0 replies; 22+ messages in thread
From: Quentin Schulz @ 2024-05-31 9:25 UTC (permalink / raw)
To: yocto-patches; +Cc: Quentin Schulz
From: Quentin Schulz <quentin.schulz@cherry.de>
The SOC_FAMILY OVERRIDES should come after the TUNE one, so it needs to
be defined before.
before:
MACHINEOVERRIDES="rk3188:armv7a:radxarock"
after:
MACHINEOVERRIDES="armv7a:rk3188:radxarock"
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
conf/machine/include/rk3188.inc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/conf/machine/include/rk3188.inc b/conf/machine/include/rk3188.inc
index 830f908..c85710d 100644
--- a/conf/machine/include/rk3188.inc
+++ b/conf/machine/include/rk3188.inc
@@ -3,8 +3,8 @@
SOC_FAMILY = "rk3188"
-require conf/machine/include/arm/armv7a/tune-cortexa9.inc
require conf/machine/include/soc-family.inc
+require conf/machine/include/arm/armv7a/tune-cortexa9.inc
require conf/machine/include/rockchip-defaults.inc
SERIAL_CONSOLES = "115200;ttyFIQ0"
--
2.45.1
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH meta-rockchip master scarthgap v3 04/16] rk3288: fix MACHINEOVERRIDES order
2024-05-31 9:25 [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Quentin Schulz
` (2 preceding siblings ...)
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 03/16] rk3188: " Quentin Schulz
@ 2024-05-31 9:25 ` Quentin Schulz
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 05/16] add rockchip MACHINEOVERRIDES Quentin Schulz
` (12 subsequent siblings)
16 siblings, 0 replies; 22+ messages in thread
From: Quentin Schulz @ 2024-05-31 9:25 UTC (permalink / raw)
To: yocto-patches; +Cc: Quentin Schulz
From: Quentin Schulz <quentin.schulz@cherry.de>
The SOC_FAMILY OVERRIDES should come after the TUNE one, so it needs to
be defined before.
before:
MACHINEOVERRIDES="rk3288:armv7ve:vyasa-rk3288"
after:
MACHINEOVERRIDES="armv7ve:rk3288:vyasa-rk3288"
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
conf/machine/include/rk3288.inc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/conf/machine/include/rk3288.inc b/conf/machine/include/rk3288.inc
index e682c0b..e0dbd6c 100644
--- a/conf/machine/include/rk3288.inc
+++ b/conf/machine/include/rk3288.inc
@@ -3,8 +3,8 @@
SOC_FAMILY = "rk3288"
-require conf/machine/include/arm/armv7a/tune-cortexa17.inc
require conf/machine/include/soc-family.inc
+require conf/machine/include/arm/armv7a/tune-cortexa17.inc
require conf/machine/include/rockchip-defaults.inc
SERIAL_CONSOLES = "115200;ttyS2"
--
2.45.1
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH meta-rockchip master scarthgap v3 05/16] add rockchip MACHINEOVERRIDES
2024-05-31 9:25 [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Quentin Schulz
` (3 preceding siblings ...)
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 04/16] rk3288: " Quentin Schulz
@ 2024-05-31 9:25 ` Quentin Schulz
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 06/16] bsp: u-boot: rework BL31 in EXTRA_OEMAKE Quentin Schulz
` (11 subsequent siblings)
16 siblings, 0 replies; 22+ messages in thread
From: Quentin Schulz @ 2024-05-31 9:25 UTC (permalink / raw)
To: yocto-patches; +Cc: Quentin Schulz
From: Quentin Schulz <quentin.schulz@cherry.de>
Add "rockchip" to the MACHINEOVERRIDES so that it can be used to easily
identify things that apply only to Rockchip-based devices and keeping
other devices untouched.
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
conf/machine/include/px30.inc | 2 +-
conf/machine/include/rk3066.inc | 2 +-
conf/machine/include/rk3188.inc | 2 +-
conf/machine/include/rk3288.inc | 2 +-
conf/machine/include/rk3308.inc | 2 +-
conf/machine/include/rk3328.inc | 2 +-
conf/machine/include/rk3399.inc | 2 +-
conf/machine/include/rk3568.inc | 2 +-
conf/machine/include/rk3588s.inc | 2 +-
conf/machine/include/rockchip-defaults.inc | 2 +-
10 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/conf/machine/include/px30.inc b/conf/machine/include/px30.inc
index badcbcd..d78409e 100644
--- a/conf/machine/include/px30.inc
+++ b/conf/machine/include/px30.inc
@@ -6,8 +6,8 @@ SOC_FAMILY = "px30"
DEFAULTTUNE ?= "cortexa35-crypto"
require conf/machine/include/soc-family.inc
-require conf/machine/include/arm/armv8a/tune-cortexa35.inc
require conf/machine/include/rockchip-defaults.inc
+require conf/machine/include/arm/armv8a/tune-cortexa35.inc
require conf/machine/include/rockchip-wic.inc
KBUILD_DEFCONFIG ?= "defconfig"
diff --git a/conf/machine/include/rk3066.inc b/conf/machine/include/rk3066.inc
index a2685af..026d5b5 100644
--- a/conf/machine/include/rk3066.inc
+++ b/conf/machine/include/rk3066.inc
@@ -4,8 +4,8 @@
SOC_FAMILY = "rk3066"
require conf/machine/include/soc-family.inc
-require conf/machine/include/arm/armv7a/tune-cortexa9.inc
require conf/machine/include/rockchip-defaults.inc
+require conf/machine/include/arm/armv7a/tune-cortexa9.inc
SERIAL_CONSOLES = "115200;ttyS2"
diff --git a/conf/machine/include/rk3188.inc b/conf/machine/include/rk3188.inc
index c85710d..0120e2f 100644
--- a/conf/machine/include/rk3188.inc
+++ b/conf/machine/include/rk3188.inc
@@ -4,8 +4,8 @@
SOC_FAMILY = "rk3188"
require conf/machine/include/soc-family.inc
-require conf/machine/include/arm/armv7a/tune-cortexa9.inc
require conf/machine/include/rockchip-defaults.inc
+require conf/machine/include/arm/armv7a/tune-cortexa9.inc
SERIAL_CONSOLES = "115200;ttyFIQ0"
diff --git a/conf/machine/include/rk3288.inc b/conf/machine/include/rk3288.inc
index e0dbd6c..684e864 100644
--- a/conf/machine/include/rk3288.inc
+++ b/conf/machine/include/rk3288.inc
@@ -4,8 +4,8 @@
SOC_FAMILY = "rk3288"
require conf/machine/include/soc-family.inc
-require conf/machine/include/arm/armv7a/tune-cortexa17.inc
require conf/machine/include/rockchip-defaults.inc
+require conf/machine/include/arm/armv7a/tune-cortexa17.inc
SERIAL_CONSOLES = "115200;ttyS2"
diff --git a/conf/machine/include/rk3308.inc b/conf/machine/include/rk3308.inc
index 5a5dafd..2802d4e 100644
--- a/conf/machine/include/rk3308.inc
+++ b/conf/machine/include/rk3308.inc
@@ -3,8 +3,8 @@ SOC_FAMILY = "rk3308"
DEFAULTTUNE ?= "cortexa35-crypto"
require conf/machine/include/soc-family.inc
-require conf/machine/include/arm/armv8a/tune-cortexa35.inc
require conf/machine/include/rockchip-defaults.inc
+require conf/machine/include/arm/armv8a/tune-cortexa35.inc
require conf/machine/include/rockchip-wic.inc
SERIAL_CONSOLES = "1500000;ttyS0"
diff --git a/conf/machine/include/rk3328.inc b/conf/machine/include/rk3328.inc
index 6be777c..4ecd681 100644
--- a/conf/machine/include/rk3328.inc
+++ b/conf/machine/include/rk3328.inc
@@ -6,8 +6,8 @@ SOC_FAMILY = "rk3328"
DEFAULTTUNE ?= "cortexa53-crypto"
require conf/machine/include/soc-family.inc
-require conf/machine/include/arm/armv8a/tune-cortexa53.inc
require conf/machine/include/rockchip-defaults.inc
+require conf/machine/include/arm/armv8a/tune-cortexa53.inc
require conf/machine/include/rockchip-wic.inc
KBUILD_DEFCONFIG ?= "defconfig"
diff --git a/conf/machine/include/rk3399.inc b/conf/machine/include/rk3399.inc
index 5a3f439..47f0560 100644
--- a/conf/machine/include/rk3399.inc
+++ b/conf/machine/include/rk3399.inc
@@ -6,8 +6,8 @@ SOC_FAMILY = "rk3399"
DEFAULTTUNE ?= "cortexa72-cortexa53-crypto"
require conf/machine/include/soc-family.inc
-require conf/machine/include/arm/armv8a/tune-cortexa72-cortexa53.inc
require conf/machine/include/rockchip-defaults.inc
+require conf/machine/include/arm/armv8a/tune-cortexa72-cortexa53.inc
require conf/machine/include/rockchip-wic.inc
KBUILD_DEFCONFIG ?= "defconfig"
diff --git a/conf/machine/include/rk3568.inc b/conf/machine/include/rk3568.inc
index 3c227dc..92d9d6d 100644
--- a/conf/machine/include/rk3568.inc
+++ b/conf/machine/include/rk3568.inc
@@ -3,8 +3,8 @@ SOC_FAMILY = "rk3568"
DEFAULTTUNE ?= "cortexa55"
require conf/machine/include/soc-family.inc
-require conf/machine/include/arm/armv8-2a/tune-cortexa55.inc
require conf/machine/include/rockchip-defaults.inc
+require conf/machine/include/arm/armv8-2a/tune-cortexa55.inc
require conf/machine/include/rockchip-wic.inc
KBUILD_DEFCONFIG ?= "defconfig"
diff --git a/conf/machine/include/rk3588s.inc b/conf/machine/include/rk3588s.inc
index 6e700d8..6e01ede 100644
--- a/conf/machine/include/rk3588s.inc
+++ b/conf/machine/include/rk3588s.inc
@@ -2,8 +2,8 @@ SOC_FAMILY ?= "rk3588s"
MACHINEOVERRIDES =. "rk3588s:"
DEFAULTTUNE ?= "cortexa76-cortexa55-crypto"
-require conf/machine/include/arm/armv8-2a/tune-cortexa76-cortexa55.inc
require conf/machine/include/rockchip-defaults.inc
+require conf/machine/include/arm/armv8-2a/tune-cortexa76-cortexa55.inc
require conf/machine/include/rockchip-wic.inc
KBUILD_DEFCONFIG ?= "defconfig"
diff --git a/conf/machine/include/rockchip-defaults.inc b/conf/machine/include/rockchip-defaults.inc
index e33a25c..e1634e2 100644
--- a/conf/machine/include/rockchip-defaults.inc
+++ b/conf/machine/include/rockchip-defaults.inc
@@ -1,5 +1,5 @@
# meta-rockchip default settings
-
+MACHINEOVERRIDES =. "rockchip:"
# kernel
PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
KCONFIG_MODE ?= "alldefconfig"
--
2.45.1
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH meta-rockchip master scarthgap v3 06/16] bsp: u-boot: rework BL31 in EXTRA_OEMAKE
2024-05-31 9:25 [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Quentin Schulz
` (4 preceding siblings ...)
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 05/16] add rockchip MACHINEOVERRIDES Quentin Schulz
@ 2024-05-31 9:25 ` Quentin Schulz
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 07/16] bsp: rkbin: rk3308-rkbin: PROVIDES rockchip-rkbin Quentin Schulz
` (10 subsequent siblings)
16 siblings, 0 replies; 22+ messages in thread
From: Quentin Schulz @ 2024-05-31 9:25 UTC (permalink / raw)
To: yocto-patches; +Cc: Quentin Schulz
From: Quentin Schulz <quentin.schulz@cherry.de>
By making use of the newly added rockchip MACHINEOVERRIDES as well as
SOC_FAMILY, the logic can be drastically simplified in addition to not
needing to update BL31 for new SoCs.
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
recipes-bsp/u-boot/u-boot_%.bbappend | 24 +++++++++---------------
1 file changed, 9 insertions(+), 15 deletions(-)
diff --git a/recipes-bsp/u-boot/u-boot_%.bbappend b/recipes-bsp/u-boot/u-boot_%.bbappend
index 7d2e4a0..c78c86f 100644
--- a/recipes-bsp/u-boot/u-boot_%.bbappend
+++ b/recipes-bsp/u-boot/u-boot_%.bbappend
@@ -7,21 +7,15 @@ DEPENDS:append:rk3308 = " u-boot-tools-native"
DEPENDS:append:rock-pi-4 = " gnutls-native"
DEPENDS:append:rk-u-boot-env = " u-boot-mkenvimage-native"
-EXTRA_OEMAKE:append:px30 = " BL31=${DEPLOY_DIR_IMAGE}/bl31-px30.elf"
-EXTRA_OEMAKE:append:rk3308 = " \
- BL31=${DEPLOY_DIR_IMAGE}/bl31-rk3308.elf \
- ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3308.bin \
- "
-EXTRA_OEMAKE:append:rk3328 = " BL31=${DEPLOY_DIR_IMAGE}/bl31-rk3328.elf"
-EXTRA_OEMAKE:append:rk3399 = " BL31=${DEPLOY_DIR_IMAGE}/bl31-rk3399.elf"
-EXTRA_OEMAKE:append:rk3568 = " \
- BL31=${DEPLOY_DIR_IMAGE}/bl31-rk3568.elf \
- ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3568.bin \
- "
-EXTRA_OEMAKE:append:rk3588s = " \
- BL31=${DEPLOY_DIR_IMAGE}/bl31-rk3588.elf \
- ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3588.bin \
- "
+BL31:rockchip:aarch64 = "${DEPLOY_DIR_IMAGE}/bl31-${SOC_FAMILY}.elf"
+# SOC_FAMILY for RK3588S is rk3588s but it should use the binaries from rk3588
+BL31:rk3588s = "${DEPLOY_DIR_IMAGE}/bl31-rk3588.elf"
+EXTRA_OEMAKE:append:rockchip:aarch64 = " BL31=${BL31}"
+
+# No open-source TPL (yet)
+EXTRA_OEMAKE:append:rk3308 = " ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3308.bin"
+EXTRA_OEMAKE:append:rk3568 = " ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3568.bin"
+EXTRA_OEMAKE:append:rk3588s = " ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3588.bin"
INIT_FIRMWARE_DEPENDS ??= ""
INIT_FIRMWARE_DEPENDS:px30 = " trusted-firmware-a:do_deploy"
--
2.45.1
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH meta-rockchip master scarthgap v3 07/16] bsp: rkbin: rk3308-rkbin: PROVIDES rockchip-rkbin
2024-05-31 9:25 [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Quentin Schulz
` (5 preceding siblings ...)
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 06/16] bsp: u-boot: rework BL31 in EXTRA_OEMAKE Quentin Schulz
@ 2024-05-31 9:25 ` Quentin Schulz
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 08/16] rk3308: move rockchip-rkbin selection to SoC conf file Quentin Schulz
` (9 subsequent siblings)
16 siblings, 0 replies; 22+ messages in thread
From: Quentin Schulz @ 2024-05-31 9:25 UTC (permalink / raw)
To: yocto-patches; +Cc: Quentin Schulz
From: Quentin Schulz <quentin.schulz@cherry.de>
This makes it possible to select rk3308-rkbin as a PREFERRED_PROVIDER
for rockchip-rkbin, which makes it much easier to handle "flavors" in
recipes where this dependency exists.
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
recipes-bsp/rkbin/rk3308-rkbin_git.bb | 1 +
1 file changed, 1 insertion(+)
diff --git a/recipes-bsp/rkbin/rk3308-rkbin_git.bb b/recipes-bsp/rkbin/rk3308-rkbin_git.bb
index c6b05b2..f32b57a 100644
--- a/recipes-bsp/rkbin/rk3308-rkbin_git.bb
+++ b/recipes-bsp/rkbin/rk3308-rkbin_git.bb
@@ -6,6 +6,7 @@ SRC_URI = "git://github.com/rockchip-linux/rkbin;protocol=https;branch=master"
SRCREV = "e65b97b511f1349156702db40694454c141d8fe2"
PROVIDES += "trusted-firmware-a"
+PROVIDES += "rockchip-rkbin"
PROVIDES += "optee-os"
inherit bin_package deploy
--
2.45.1
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH meta-rockchip master scarthgap v3 08/16] rk3308: move rockchip-rkbin selection to SoC conf file
2024-05-31 9:25 [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Quentin Schulz
` (6 preceding siblings ...)
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 07/16] bsp: rkbin: rk3308-rkbin: PROVIDES rockchip-rkbin Quentin Schulz
@ 2024-05-31 9:25 ` Quentin Schulz
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 09/16] bsp: u-boot: explicit dependency on trusted-firware-a Quentin Schulz
` (8 subsequent siblings)
16 siblings, 0 replies; 22+ messages in thread
From: Quentin Schulz @ 2024-05-31 9:25 UTC (permalink / raw)
To: yocto-patches; +Cc: Quentin Schulz
From: Quentin Schulz <quentin.schulz@cherry.de>
The mechanism remains the same, except that everything that requires
rockchip-rkbin doesn't need to know that rk3308 boards would prefer the
rk3308-rkbin instead, it's abstracted by the PREFERRED_PROVIDER
mechanism by BitBake.
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
conf/machine/include/rk3308.inc | 2 ++
recipes-bsp/u-boot/u-boot_%.bbappend | 2 +-
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/conf/machine/include/rk3308.inc b/conf/machine/include/rk3308.inc
index 2802d4e..94ce8e1 100644
--- a/conf/machine/include/rk3308.inc
+++ b/conf/machine/include/rk3308.inc
@@ -16,3 +16,5 @@ KERNEL_IMAGETYPE ?= "fitImage"
UBOOT_SUFFIX ?= "itb"
UBOOT_ENTRYPOINT ?= "0x06000000"
+
+PREFERRED_PROVIDER_rockchip-rkbin = "${@bb.utils.contains('RKBIN_RK3308_LATEST', '1', 'rockchip-rkbin', 'rk3308-rkbin', d)}"
diff --git a/recipes-bsp/u-boot/u-boot_%.bbappend b/recipes-bsp/u-boot/u-boot_%.bbappend
index c78c86f..79314f7 100644
--- a/recipes-bsp/u-boot/u-boot_%.bbappend
+++ b/recipes-bsp/u-boot/u-boot_%.bbappend
@@ -19,7 +19,7 @@ EXTRA_OEMAKE:append:rk3588s = " ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3588.bin"
INIT_FIRMWARE_DEPENDS ??= ""
INIT_FIRMWARE_DEPENDS:px30 = " trusted-firmware-a:do_deploy"
-INIT_FIRMWARE_DEPENDS:rk3308 = " ${@bb.utils.contains('RKBIN_RK3308_LATEST', '1', 'rockchip-rkbin', 'rk3308-rkbin', d)}:do_deploy"
+INIT_FIRMWARE_DEPENDS:rk3308 = " rockchip-rkbin:do_deploy"
INIT_FIRMWARE_DEPENDS:rk3328 = " trusted-firmware-a:do_deploy"
INIT_FIRMWARE_DEPENDS:rk3399 = " trusted-firmware-a:do_deploy"
INIT_FIRMWARE_DEPENDS:rk3568 = " rockchip-rkbin:do_deploy"
--
2.45.1
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH meta-rockchip master scarthgap v3 09/16] bsp: u-boot: explicit dependency on trusted-firware-a
2024-05-31 9:25 [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Quentin Schulz
` (7 preceding siblings ...)
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 08/16] rk3308: move rockchip-rkbin selection to SoC conf file Quentin Schulz
@ 2024-05-31 9:25 ` Quentin Schulz
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 10/16] bsp: u-boot: remove duplicate trusted-firmware-a dependency for SoCs with open DDR init Quentin Schulz
` (7 subsequent siblings)
16 siblings, 0 replies; 22+ messages in thread
From: Quentin Schulz @ 2024-05-31 9:25 UTC (permalink / raw)
To: yocto-patches; +Cc: Quentin Schulz
From: Quentin Schulz <quentin.schulz@cherry.de>
All Aarch64 boards require a BL31 from TF-A to be able to boot a Linux
kernel. Therefore let's explicit this dependency right after adding the
BL31 variable to EXTRA_OEMAKE.
While it is already explicitly added later in the file, it is stored in
a variable whose name is a bit confusing as TF-A has not much to do with
being an init firmware.
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
recipes-bsp/u-boot/u-boot_%.bbappend | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/recipes-bsp/u-boot/u-boot_%.bbappend b/recipes-bsp/u-boot/u-boot_%.bbappend
index 79314f7..b4664d9 100644
--- a/recipes-bsp/u-boot/u-boot_%.bbappend
+++ b/recipes-bsp/u-boot/u-boot_%.bbappend
@@ -12,6 +12,10 @@ BL31:rockchip:aarch64 = "${DEPLOY_DIR_IMAGE}/bl31-${SOC_FAMILY}.elf"
BL31:rk3588s = "${DEPLOY_DIR_IMAGE}/bl31-rk3588.elf"
EXTRA_OEMAKE:append:rockchip:aarch64 = " BL31=${BL31}"
+TFA_DEPENDS ??= ""
+TFA_DEPENDS:rockchip:aarch64 = " trusted-firmware-a:do_deploy"
+do_compile[depends] .= "${TFA_DEPENDS}"
+
# No open-source TPL (yet)
EXTRA_OEMAKE:append:rk3308 = " ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3308.bin"
EXTRA_OEMAKE:append:rk3568 = " ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3568.bin"
--
2.45.1
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH meta-rockchip master scarthgap v3 10/16] bsp: u-boot: remove duplicate trusted-firmware-a dependency for SoCs with open DDR init
2024-05-31 9:25 [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Quentin Schulz
` (8 preceding siblings ...)
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 09/16] bsp: u-boot: explicit dependency on trusted-firware-a Quentin Schulz
@ 2024-05-31 9:25 ` Quentin Schulz
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 11/16] bsp: u-boot: split things that can apply to any U-Boot into a .inc file Quentin Schulz
` (6 subsequent siblings)
16 siblings, 0 replies; 22+ messages in thread
From: Quentin Schulz @ 2024-05-31 9:25 UTC (permalink / raw)
To: yocto-patches; +Cc: Quentin Schulz
From: Quentin Schulz <quentin.schulz@cherry.de>
For SoCs with open DDR init in U-Boot, there's no need for anything but
the BL31 from TF-A (maybe OP-TEE as well but that's off-topic) in
U-Boot. This is already handled by the TFA_DEPENDS variable outside of
this git context, so there's no need to duplicate it here.
By keeping the rockchip-rkbin dependency in INIT_FIRMWARE_DEPENDS and
use the PREFERRED_PROVIDER mechanism for selecting rockchip-rkbin as
provider for trusted-firmware-a as passed to TFA_DEPENDS, we make
explicit the dependency on two different pieces of software, though
currently provided by the same recipe.
The point being that this should prepare us and at the very least break
the build if we forget, for when open BL31 TF-A (so coming from
trusted-firmware-a recipe and not rockchip-rkbin) is released and we can
have rockchip-rkbin provide only the DDR bin and upstream TF-A provide
BL31 TF-A and still have a proper dependency scheme.
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
recipes-bsp/u-boot/u-boot_%.bbappend | 3 ---
1 file changed, 3 deletions(-)
diff --git a/recipes-bsp/u-boot/u-boot_%.bbappend b/recipes-bsp/u-boot/u-boot_%.bbappend
index b4664d9..60f93a4 100644
--- a/recipes-bsp/u-boot/u-boot_%.bbappend
+++ b/recipes-bsp/u-boot/u-boot_%.bbappend
@@ -22,10 +22,7 @@ EXTRA_OEMAKE:append:rk3568 = " ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3568.bin"
EXTRA_OEMAKE:append:rk3588s = " ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3588.bin"
INIT_FIRMWARE_DEPENDS ??= ""
-INIT_FIRMWARE_DEPENDS:px30 = " trusted-firmware-a:do_deploy"
INIT_FIRMWARE_DEPENDS:rk3308 = " rockchip-rkbin:do_deploy"
-INIT_FIRMWARE_DEPENDS:rk3328 = " trusted-firmware-a:do_deploy"
-INIT_FIRMWARE_DEPENDS:rk3399 = " trusted-firmware-a:do_deploy"
INIT_FIRMWARE_DEPENDS:rk3568 = " rockchip-rkbin:do_deploy"
INIT_FIRMWARE_DEPENDS:rk3588s = " rockchip-rkbin:do_deploy"
do_compile[depends] .= "${INIT_FIRMWARE_DEPENDS}"
--
2.45.1
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH meta-rockchip master scarthgap v3 11/16] bsp: u-boot: split things that can apply to any U-Boot into a .inc file
2024-05-31 9:25 [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Quentin Schulz
` (9 preceding siblings ...)
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 10/16] bsp: u-boot: remove duplicate trusted-firmware-a dependency for SoCs with open DDR init Quentin Schulz
@ 2024-05-31 9:25 ` Quentin Schulz
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 12/16] machine: rockchip-defaults: conditionally add closed-tpl MACHINEOVERRIDES Quentin Schulz
` (5 subsequent siblings)
16 siblings, 0 replies; 22+ messages in thread
From: Quentin Schulz @ 2024-05-31 9:25 UTC (permalink / raw)
To: yocto-patches; +Cc: Quentin Schulz
From: Quentin Schulz <quentin.schulz@cherry.de>
Anyone writing their own U-Boot recipe for their Rockchip-based board
will need to repeat the same as currently done in a bbappend that only
applies to the upstream u-boot recipe from OE-Core. This is both
error-prone and more difficult to maintain as well as lowering the
number of people actually using the code in meta-rockchip (thus
increasing maintainer load by having less people debug the code).
Move everything that is Rockchip-specific but reusable in an .inc file
that can be included by other layers.
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
recipes-bsp/u-boot/u-boot-rockchip.inc | 19 +++++++++++++++++++
recipes-bsp/u-boot/u-boot_%.bbappend | 22 ++--------------------
2 files changed, 21 insertions(+), 20 deletions(-)
diff --git a/recipes-bsp/u-boot/u-boot-rockchip.inc b/recipes-bsp/u-boot/u-boot-rockchip.inc
new file mode 100644
index 0000000..0a634fc
--- /dev/null
+++ b/recipes-bsp/u-boot/u-boot-rockchip.inc
@@ -0,0 +1,19 @@
+BL31:rockchip:aarch64 = "${DEPLOY_DIR_IMAGE}/bl31-${SOC_FAMILY}.elf"
+# SOC_FAMILY for RK3588S is rk3588s but it should use the binaries from rk3588
+BL31:rk3588s = "${DEPLOY_DIR_IMAGE}/bl31-rk3588.elf"
+EXTRA_OEMAKE:append:rockchip:aarch64 = " BL31=${BL31}"
+
+TFA_DEPENDS ??= ""
+TFA_DEPENDS:rockchip:aarch64 = " trusted-firmware-a:do_deploy"
+do_compile[depends] .= "${TFA_DEPENDS}"
+
+# No open-source TPL (yet)
+EXTRA_OEMAKE:append:rk3308 = " ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3308.bin"
+EXTRA_OEMAKE:append:rk3568 = " ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3568.bin"
+EXTRA_OEMAKE:append:rk3588s = " ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3588.bin"
+
+INIT_FIRMWARE_DEPENDS ??= ""
+INIT_FIRMWARE_DEPENDS:rk3308 = " rockchip-rkbin:do_deploy"
+INIT_FIRMWARE_DEPENDS:rk3568 = " rockchip-rkbin:do_deploy"
+INIT_FIRMWARE_DEPENDS:rk3588s = " rockchip-rkbin:do_deploy"
+do_compile[depends] .= "${INIT_FIRMWARE_DEPENDS}"
diff --git a/recipes-bsp/u-boot/u-boot_%.bbappend b/recipes-bsp/u-boot/u-boot_%.bbappend
index 60f93a4..1f5f634 100644
--- a/recipes-bsp/u-boot/u-boot_%.bbappend
+++ b/recipes-bsp/u-boot/u-boot_%.bbappend
@@ -1,3 +1,5 @@
+require u-boot-rockchip.inc
+
FILESEXTRAPATHS:prepend := "${THISDIR}/files:"
SRC_URI:append:rk-u-boot-env = " file://rockchip-enable-environment-mmc.cfg"
@@ -7,26 +9,6 @@ DEPENDS:append:rk3308 = " u-boot-tools-native"
DEPENDS:append:rock-pi-4 = " gnutls-native"
DEPENDS:append:rk-u-boot-env = " u-boot-mkenvimage-native"
-BL31:rockchip:aarch64 = "${DEPLOY_DIR_IMAGE}/bl31-${SOC_FAMILY}.elf"
-# SOC_FAMILY for RK3588S is rk3588s but it should use the binaries from rk3588
-BL31:rk3588s = "${DEPLOY_DIR_IMAGE}/bl31-rk3588.elf"
-EXTRA_OEMAKE:append:rockchip:aarch64 = " BL31=${BL31}"
-
-TFA_DEPENDS ??= ""
-TFA_DEPENDS:rockchip:aarch64 = " trusted-firmware-a:do_deploy"
-do_compile[depends] .= "${TFA_DEPENDS}"
-
-# No open-source TPL (yet)
-EXTRA_OEMAKE:append:rk3308 = " ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3308.bin"
-EXTRA_OEMAKE:append:rk3568 = " ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3568.bin"
-EXTRA_OEMAKE:append:rk3588s = " ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3588.bin"
-
-INIT_FIRMWARE_DEPENDS ??= ""
-INIT_FIRMWARE_DEPENDS:rk3308 = " rockchip-rkbin:do_deploy"
-INIT_FIRMWARE_DEPENDS:rk3568 = " rockchip-rkbin:do_deploy"
-INIT_FIRMWARE_DEPENDS:rk3588s = " rockchip-rkbin:do_deploy"
-do_compile[depends] .= "${INIT_FIRMWARE_DEPENDS}"
-
do_compile:append:rock2-square () {
# copy to default search path
if [ "${SPL_BINARY}" = "u-boot-spl-dtb.bin" ]; then
--
2.45.1
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH meta-rockchip master scarthgap v3 12/16] machine: rockchip-defaults: conditionally add closed-tpl MACHINEOVERRIDES
2024-05-31 9:25 [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Quentin Schulz
` (10 preceding siblings ...)
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 11/16] bsp: u-boot: split things that can apply to any U-Boot into a .inc file Quentin Schulz
@ 2024-05-31 9:25 ` Quentin Schulz
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 13/16] machine: rk3308: mark all machines as to be using the closed TPL Quentin Schulz
` (4 subsequent siblings)
16 siblings, 0 replies; 22+ messages in thread
From: Quentin Schulz @ 2024-05-31 9:25 UTC (permalink / raw)
To: yocto-patches; +Cc: Quentin Schulz
From: Quentin Schulz <quentin.schulz@cherry.de>
This adds closed-tpl to MACHINEOVERRIDES if ROCKCHIP_CLOSED_TPL is set
to 1. This is a way to tell U-Boot that it needs to fetch the TPL from
some place instead of building it. This will allow us to have a common
logic in U-Boot, and also avoid touching the U-Boot recipe to add
support for a new SoC.
As there may be a transition phase during which we still have closed TPL
by default but an open-source implementation exists, let's make it a
weak assignment so it can be overridden from higher configuration files.
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
conf/machine/include/rockchip-defaults.inc | 1 +
1 file changed, 1 insertion(+)
diff --git a/conf/machine/include/rockchip-defaults.inc b/conf/machine/include/rockchip-defaults.inc
index e1634e2..85ec7b9 100644
--- a/conf/machine/include/rockchip-defaults.inc
+++ b/conf/machine/include/rockchip-defaults.inc
@@ -1,4 +1,5 @@
# meta-rockchip default settings
+MACHINEOVERRIDES =. "${@bb.utils.contains('ROCKCHIP_CLOSED_TPL', '1', 'closed-tpl:', '', d)}"
MACHINEOVERRIDES =. "rockchip:"
# kernel
PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
--
2.45.1
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH meta-rockchip master scarthgap v3 13/16] machine: rk3308: mark all machines as to be using the closed TPL
2024-05-31 9:25 [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Quentin Schulz
` (11 preceding siblings ...)
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 12/16] machine: rockchip-defaults: conditionally add closed-tpl MACHINEOVERRIDES Quentin Schulz
@ 2024-05-31 9:25 ` Quentin Schulz
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 14/16] machine: rk3568: " Quentin Schulz
` (3 subsequent siblings)
16 siblings, 0 replies; 22+ messages in thread
From: Quentin Schulz @ 2024-05-31 9:25 UTC (permalink / raw)
To: yocto-patches; +Cc: Quentin Schulz
From: Quentin Schulz <quentin.schulz@cherry.de>
This will be useful once we migrate the U-Boot recipe to use this new
override.
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
conf/machine/include/rk3308.inc | 2 ++
1 file changed, 2 insertions(+)
diff --git a/conf/machine/include/rk3308.inc b/conf/machine/include/rk3308.inc
index 94ce8e1..5abdd06 100644
--- a/conf/machine/include/rk3308.inc
+++ b/conf/machine/include/rk3308.inc
@@ -2,6 +2,8 @@ SOC_FAMILY = "rk3308"
DEFAULTTUNE ?= "cortexa35-crypto"
+ROCKCHIP_CLOSED_TPL ?= "1"
+
require conf/machine/include/soc-family.inc
require conf/machine/include/rockchip-defaults.inc
require conf/machine/include/arm/armv8a/tune-cortexa35.inc
--
2.45.1
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH meta-rockchip master scarthgap v3 14/16] machine: rk3568: mark all machines as to be using the closed TPL
2024-05-31 9:25 [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Quentin Schulz
` (12 preceding siblings ...)
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 13/16] machine: rk3308: mark all machines as to be using the closed TPL Quentin Schulz
@ 2024-05-31 9:25 ` Quentin Schulz
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 15/16] machine: rk3588/rk3588s: " Quentin Schulz
` (2 subsequent siblings)
16 siblings, 0 replies; 22+ messages in thread
From: Quentin Schulz @ 2024-05-31 9:25 UTC (permalink / raw)
To: yocto-patches; +Cc: Quentin Schulz
From: Quentin Schulz <quentin.schulz@cherry.de>
This will be useful once we migrate the U-Boot recipe to use this new
override.
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
conf/machine/include/rk3568.inc | 2 ++
1 file changed, 2 insertions(+)
diff --git a/conf/machine/include/rk3568.inc b/conf/machine/include/rk3568.inc
index 92d9d6d..1da212a 100644
--- a/conf/machine/include/rk3568.inc
+++ b/conf/machine/include/rk3568.inc
@@ -2,6 +2,8 @@ SOC_FAMILY = "rk3568"
DEFAULTTUNE ?= "cortexa55"
+ROCKCHIP_CLOSED_TPL ?= "1"
+
require conf/machine/include/soc-family.inc
require conf/machine/include/rockchip-defaults.inc
require conf/machine/include/arm/armv8-2a/tune-cortexa55.inc
--
2.45.1
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH meta-rockchip master scarthgap v3 15/16] machine: rk3588/rk3588s: mark all machines as to be using the closed TPL
2024-05-31 9:25 [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Quentin Schulz
` (13 preceding siblings ...)
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 14/16] machine: rk3568: " Quentin Schulz
@ 2024-05-31 9:25 ` Quentin Schulz
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 16/16] bsp: u-boot-rockchip.inc: rework ROCKCHIP_TPL to use closed-tpl OVERRIDES Quentin Schulz
2024-06-05 17:23 ` [yocto-patches] [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Trevor Woerner
16 siblings, 0 replies; 22+ messages in thread
From: Quentin Schulz @ 2024-05-31 9:25 UTC (permalink / raw)
To: yocto-patches; +Cc: Quentin Schulz
From: Quentin Schulz <quentin.schulz@cherry.de>
This will be useful once we migrate the U-Boot recipe to use this new
override.
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
conf/machine/include/rk3588s.inc | 2 ++
1 file changed, 2 insertions(+)
diff --git a/conf/machine/include/rk3588s.inc b/conf/machine/include/rk3588s.inc
index 6e01ede..cd84461 100644
--- a/conf/machine/include/rk3588s.inc
+++ b/conf/machine/include/rk3588s.inc
@@ -2,6 +2,8 @@ SOC_FAMILY ?= "rk3588s"
MACHINEOVERRIDES =. "rk3588s:"
DEFAULTTUNE ?= "cortexa76-cortexa55-crypto"
+ROCKCHIP_CLOSED_TPL ?= "1"
+
require conf/machine/include/rockchip-defaults.inc
require conf/machine/include/arm/armv8-2a/tune-cortexa76-cortexa55.inc
require conf/machine/include/rockchip-wic.inc
--
2.45.1
^ permalink raw reply related [flat|nested] 22+ messages in thread* [PATCH meta-rockchip master scarthgap v3 16/16] bsp: u-boot-rockchip.inc: rework ROCKCHIP_TPL to use closed-tpl OVERRIDES
2024-05-31 9:25 [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Quentin Schulz
` (14 preceding siblings ...)
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 15/16] machine: rk3588/rk3588s: " Quentin Schulz
@ 2024-05-31 9:25 ` Quentin Schulz
2024-06-05 17:23 ` [yocto-patches] [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Trevor Woerner
16 siblings, 0 replies; 22+ messages in thread
From: Quentin Schulz @ 2024-05-31 9:25 UTC (permalink / raw)
To: yocto-patches; +Cc: Quentin Schulz
From: Quentin Schulz <quentin.schulz@cherry.de>
Since closed-tpl OVERRIDES allows us to have a common logic for all
boards using ROCKCHIP_TPL in U-Boot for specifying external TPL blobs as
DDR init, let's make use of it.
This also allows us now to not have to care about the U-Boot recipe
whenever a new SoC will be supported.
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
---
recipes-bsp/u-boot/u-boot-rockchip.inc | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/recipes-bsp/u-boot/u-boot-rockchip.inc b/recipes-bsp/u-boot/u-boot-rockchip.inc
index 0a634fc..d2267cc 100644
--- a/recipes-bsp/u-boot/u-boot-rockchip.inc
+++ b/recipes-bsp/u-boot/u-boot-rockchip.inc
@@ -8,12 +8,11 @@ TFA_DEPENDS:rockchip:aarch64 = " trusted-firmware-a:do_deploy"
do_compile[depends] .= "${TFA_DEPENDS}"
# No open-source TPL (yet)
-EXTRA_OEMAKE:append:rk3308 = " ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3308.bin"
-EXTRA_OEMAKE:append:rk3568 = " ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3568.bin"
-EXTRA_OEMAKE:append:rk3588s = " ROCKCHIP_TPL=${DEPLOY_DIR_IMAGE}/ddr-rk3588.bin"
+ROCKCHIP_TPL:closed-tpl = "${DEPLOY_DIR_IMAGE}/ddr-${SOC_FAMILY}.bin"
+# SOC_FAMILY for RK3588S is rk3588s but it should use the binaries from rk3588
+ROCKCHIP_TPL:closed-tpl:rk3588s = "${DEPLOY_DIR_IMAGE}/ddr-rk3588.bin"
+EXTRA_OEMAKE:append:closed-tpl = " ROCKCHIP_TPL=${ROCKCHIP_TPL}"
INIT_FIRMWARE_DEPENDS ??= ""
-INIT_FIRMWARE_DEPENDS:rk3308 = " rockchip-rkbin:do_deploy"
-INIT_FIRMWARE_DEPENDS:rk3568 = " rockchip-rkbin:do_deploy"
-INIT_FIRMWARE_DEPENDS:rk3588s = " rockchip-rkbin:do_deploy"
+INIT_FIRMWARE_DEPENDS:closed-tpl = " rockchip-rkbin:do_deploy"
do_compile[depends] .= "${INIT_FIRMWARE_DEPENDS}"
--
2.45.1
^ permalink raw reply related [flat|nested] 22+ messages in thread* Re: [yocto-patches] [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES
2024-05-31 9:25 [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Quentin Schulz
` (15 preceding siblings ...)
2024-05-31 9:25 ` [PATCH meta-rockchip master scarthgap v3 16/16] bsp: u-boot-rockchip.inc: rework ROCKCHIP_TPL to use closed-tpl OVERRIDES Quentin Schulz
@ 2024-06-05 17:23 ` Trevor Woerner
2024-06-06 8:17 ` Quentin Schulz
16 siblings, 1 reply; 22+ messages in thread
From: Trevor Woerner @ 2024-06-05 17:23 UTC (permalink / raw)
To: yocto-patches; +Cc: Quentin Schulz
On Fri 2024-05-31 @ 11:25:07 AM, Quentin Schulz via lists.yoctoproject.org wrote:
> This does a few reworks of how we handle TF-A and DDR bin blob
> dependencies, hopefully in a way that makes it much easier to add
> support for new SoCs without having to touch too many files.
>
> While at it, add an SOC_FAMILY entry for rk3588s/rk3588 boards.
>
> Additionally, make rk3308 use the PREFERRED_PROVIDER mechanism to select
> rk3308-rkbin instead of rockchip-rkbin.
>
> Finally, fix a few MACHINEOVERRIDES ordering issues.
Here are the new MACHINEOVERRIDES (with these patches applied) for all the
MACHINEs we support (with rk-u-boot-env enabled):
MACHINEOVERRIDES="armv7ve:rockchip:rk3288:firefly-rk3288:rk-u-boot-env"
MACHINEOVERRIDES="armv7a:rockchip:rk3066:marsboard-rk3066"
MACHINEOVERRIDES="armv7a:rockchip:rk3188:radxarock"
MACHINEOVERRIDES="armv7ve:rockchip:rk3288:rock2-square"
MACHINEOVERRIDES="armv7ve:rockchip:rk3288:tinker-board:rk-u-boot-env"
MACHINEOVERRIDES="armv7ve:rockchip:rk3288:tinker-board-s:rk-u-boot-env"
MACHINEOVERRIDES="armv7ve:rockchip:rk3288:vyasa-rk3288:rk-u-boot-env"
MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-m4:nanopi-m4:rk-u-boot-env"
MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-m4:nanopi-m4-2gb:rk-u-boot-env"
MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-m4b:rk-u-boot-env"
MACHINEOVERRIDES="aarch64:rockchip:rk3328:nanopi-r2s:rk-u-boot-env"
MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-r4s:rk-u-boot-env"
MACHINEOVERRIDES="aarch64:cortexa76-cortexa55:rockchip:closed-tpl:rk3588s:rk3588:orangepi-5-plus:rk-u-boot-env"
MACHINEOVERRIDES="aarch64:rockchip:closed-tpl:rk3308:roc-rk3308-cc:rk-u-boot-env"
MACHINEOVERRIDES="aarch64:rockchip:rk3328:roc-rk3328-cc:rk-u-boot-env"
MACHINEOVERRIDES="aarch64:rockchip:closed-tpl:rk3568:rock-3a:rk-u-boot-env"
MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-4c-plus:rk-u-boot-env"
MACHINEOVERRIDES="aarch64:cortexa76-cortexa55:rockchip:closed-tpl:rk3588s:rock-5a:rk-u-boot-env"
MACHINEOVERRIDES="aarch64:cortexa76-cortexa55:rockchip:closed-tpl:rk3588s:rk3588:rock-5b:rk-u-boot-env"
MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-pi-4a:rk-u-boot-env"
MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-pi-4b:rk-u-boot-env"
MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-pi-4c:rk-u-boot-env"
MACHINEOVERRIDES="aarch64:rockchip:rk3328:rock-pi-e:rk-u-boot-env"
MACHINEOVERRIDES="aarch64:rockchip:closed-tpl:rk3308:rock-pi-s:rk-u-boot-env"
MACHINEOVERRIDES="aarch64:rockchip:rk3328:rock64:rk-u-boot-env"
For uniformity, would it be nicer to have all MACHINEs include the SoC
OVERRIDE?
Other than that this patch set looks great!
I'm not overly fond of the name "u-boot-rockchip.inc" since it sounds like
it's an inc file for building the rockchip vendor fork of u-boot, but I can't
really think of anything that is obviously nicer.
^ permalink raw reply [flat|nested] 22+ messages in thread* Re: [yocto-patches] [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES
2024-06-05 17:23 ` [yocto-patches] [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES Trevor Woerner
@ 2024-06-06 8:17 ` Quentin Schulz
2024-06-06 11:49 ` Trevor Woerner
0 siblings, 1 reply; 22+ messages in thread
From: Quentin Schulz @ 2024-06-06 8:17 UTC (permalink / raw)
To: Trevor Woerner, yocto-patches
Hi Trevor,
On 6/5/24 7:23 PM, Trevor Woerner wrote:
> On Fri 2024-05-31 @ 11:25:07 AM, Quentin Schulz via lists.yoctoproject.org wrote:
>> This does a few reworks of how we handle TF-A and DDR bin blob
>> dependencies, hopefully in a way that makes it much easier to add
>> support for new SoCs without having to touch too many files.
>>
>> While at it, add an SOC_FAMILY entry for rk3588s/rk3588 boards.
>>
>> Additionally, make rk3308 use the PREFERRED_PROVIDER mechanism to select
>> rk3308-rkbin instead of rockchip-rkbin.
>>
>> Finally, fix a few MACHINEOVERRIDES ordering issues.
>
> Here are the new MACHINEOVERRIDES (with these patches applied) for all the
> MACHINEs we support (with rk-u-boot-env enabled):
>
> MACHINEOVERRIDES="armv7ve:rockchip:rk3288:firefly-rk3288:rk-u-boot-env"
> MACHINEOVERRIDES="armv7a:rockchip:rk3066:marsboard-rk3066"
> MACHINEOVERRIDES="armv7a:rockchip:rk3188:radxarock"
> MACHINEOVERRIDES="armv7ve:rockchip:rk3288:rock2-square"
> MACHINEOVERRIDES="armv7ve:rockchip:rk3288:tinker-board:rk-u-boot-env"
> MACHINEOVERRIDES="armv7ve:rockchip:rk3288:tinker-board-s:rk-u-boot-env"
> MACHINEOVERRIDES="armv7ve:rockchip:rk3288:vyasa-rk3288:rk-u-boot-env"
> MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-m4:nanopi-m4:rk-u-boot-env"
> MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-m4:nanopi-m4-2gb:rk-u-boot-env"
> MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-m4b:rk-u-boot-env"
> MACHINEOVERRIDES="aarch64:rockchip:rk3328:nanopi-r2s:rk-u-boot-env"
> MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-r4s:rk-u-boot-env"
> MACHINEOVERRIDES="aarch64:cortexa76-cortexa55:rockchip:closed-tpl:rk3588s:rk3588:orangepi-5-plus:rk-u-boot-env"
> MACHINEOVERRIDES="aarch64:rockchip:closed-tpl:rk3308:roc-rk3308-cc:rk-u-boot-env"
> MACHINEOVERRIDES="aarch64:rockchip:rk3328:roc-rk3328-cc:rk-u-boot-env"
> MACHINEOVERRIDES="aarch64:rockchip:closed-tpl:rk3568:rock-3a:rk-u-boot-env"
> MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-4c-plus:rk-u-boot-env"
> MACHINEOVERRIDES="aarch64:cortexa76-cortexa55:rockchip:closed-tpl:rk3588s:rock-5a:rk-u-boot-env"
> MACHINEOVERRIDES="aarch64:cortexa76-cortexa55:rockchip:closed-tpl:rk3588s:rk3588:rock-5b:rk-u-boot-env"
> MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-pi-4a:rk-u-boot-env"
> MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-pi-4b:rk-u-boot-env"
> MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-pi-4c:rk-u-boot-env"
> MACHINEOVERRIDES="aarch64:rockchip:rk3328:rock-pi-e:rk-u-boot-env"
> MACHINEOVERRIDES="aarch64:rockchip:closed-tpl:rk3308:rock-pi-s:rk-u-boot-env"
> MACHINEOVERRIDES="aarch64:rockchip:rk3328:rock64:rk-u-boot-env"
>
> For uniformity, would it be nicer to have all MACHINEs include the SoC
> OVERRIDE?
>
I'm not sure to follow here, the SoC name is in the override?
rk3288
rk3066
rk3188
rk3288
rk3288
rk3288
rk3288
rk3399
rk3399
rk3399
rk3328
rk3399
rk3588
rk3308
rk3328
rk3568
rk3399
rk3588s
rk3588
rk3399
rk3399
rk3399
rk3328
rk3308
rk3328
for all the above?
Aaaaaah... or you meant renaming the machines so that they have their
SoC name in the filename? e.g. rock-pi-4a to rk3399-rock-pi-4a? I found
it annoying when reworking to look into each machine conf to figure out
which SoC they were based on, so I understand the pain :) If you want to
go this route, I would suggest to prefix it with <SoC>- as is customary
in the Linux kernel for Device Trees for example.
> Other than that this patch set looks great!
>
> I'm not overly fond of the name "u-boot-rockchip.inc" since it sounds like
> it's an inc file for building the rockchip vendor fork of u-boot, but I can't
> really think of anything that is obviously nicer.
Could suggest u-boot-rkxxxx.inc instead? There are only a few SoCs that
do not follow RKXXXX naming scheme (the PX family and RV families right now)
We could also add some comment at the top of this file explaining what
this is supposed to be used for?
Let me know how you want to proceed with this,
Cheers,
Quentin
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [yocto-patches] [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES
2024-06-06 8:17 ` Quentin Schulz
@ 2024-06-06 11:49 ` Trevor Woerner
2024-06-06 13:02 ` Quentin Schulz
0 siblings, 1 reply; 22+ messages in thread
From: Trevor Woerner @ 2024-06-06 11:49 UTC (permalink / raw)
To: Quentin Schulz; +Cc: yocto-patches
On Thu 2024-06-06 @ 10:17:17 AM, Quentin Schulz wrote:
> Hi Trevor,
>
> On 6/5/24 7:23 PM, Trevor Woerner wrote:
> > On Fri 2024-05-31 @ 11:25:07 AM, Quentin Schulz via lists.yoctoproject.org wrote:
> > > This does a few reworks of how we handle TF-A and DDR bin blob
> > > dependencies, hopefully in a way that makes it much easier to add
> > > support for new SoCs without having to touch too many files.
> > >
> > > While at it, add an SOC_FAMILY entry for rk3588s/rk3588 boards.
> > >
> > > Additionally, make rk3308 use the PREFERRED_PROVIDER mechanism to select
> > > rk3308-rkbin instead of rockchip-rkbin.
> > >
> > > Finally, fix a few MACHINEOVERRIDES ordering issues.
> >
> > Here are the new MACHINEOVERRIDES (with these patches applied) for all the
> > MACHINEs we support (with rk-u-boot-env enabled):
> >
> > MACHINEOVERRIDES="armv7ve:rockchip:rk3288:firefly-rk3288:rk-u-boot-env"
> > MACHINEOVERRIDES="armv7a:rockchip:rk3066:marsboard-rk3066"
> > MACHINEOVERRIDES="armv7a:rockchip:rk3188:radxarock"
> > MACHINEOVERRIDES="armv7ve:rockchip:rk3288:rock2-square"
> > MACHINEOVERRIDES="armv7ve:rockchip:rk3288:tinker-board:rk-u-boot-env"
> > MACHINEOVERRIDES="armv7ve:rockchip:rk3288:tinker-board-s:rk-u-boot-env"
> > MACHINEOVERRIDES="armv7ve:rockchip:rk3288:vyasa-rk3288:rk-u-boot-env"
> > MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-m4:nanopi-m4:rk-u-boot-env"
> > MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-m4:nanopi-m4-2gb:rk-u-boot-env"
> > MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-m4b:rk-u-boot-env"
> > MACHINEOVERRIDES="aarch64:rockchip:rk3328:nanopi-r2s:rk-u-boot-env"
> > MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-r4s:rk-u-boot-env"
> > MACHINEOVERRIDES="aarch64:cortexa76-cortexa55:rockchip:closed-tpl:rk3588s:rk3588:orangepi-5-plus:rk-u-boot-env"
> > MACHINEOVERRIDES="aarch64:rockchip:closed-tpl:rk3308:roc-rk3308-cc:rk-u-boot-env"
> > MACHINEOVERRIDES="aarch64:rockchip:rk3328:roc-rk3328-cc:rk-u-boot-env"
> > MACHINEOVERRIDES="aarch64:rockchip:closed-tpl:rk3568:rock-3a:rk-u-boot-env"
> > MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-4c-plus:rk-u-boot-env"
> > MACHINEOVERRIDES="aarch64:cortexa76-cortexa55:rockchip:closed-tpl:rk3588s:rock-5a:rk-u-boot-env"
> > MACHINEOVERRIDES="aarch64:cortexa76-cortexa55:rockchip:closed-tpl:rk3588s:rk3588:rock-5b:rk-u-boot-env"
> > MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-pi-4a:rk-u-boot-env"
> > MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-pi-4b:rk-u-boot-env"
> > MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-pi-4c:rk-u-boot-env"
> > MACHINEOVERRIDES="aarch64:rockchip:rk3328:rock-pi-e:rk-u-boot-env"
> > MACHINEOVERRIDES="aarch64:rockchip:closed-tpl:rk3308:rock-pi-s:rk-u-boot-env"
> > MACHINEOVERRIDES="aarch64:rockchip:rk3328:rock64:rk-u-boot-env"
> >
> > For uniformity, would it be nicer to have all MACHINEs include the SoC
> > OVERRIDE?
> >
>
> I'm not sure to follow here
Sorry, what I mean is the "cortexa72-cortexa53" parts, which I guess is the
CPU? I don't know that I've seen those overrides being used often, but I would
rather either see all of them have this override, or none of them, as part of
any MACHINEOVERRIDE cleaning patches.
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [yocto-patches] [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES
2024-06-06 11:49 ` Trevor Woerner
@ 2024-06-06 13:02 ` Quentin Schulz
2024-06-06 17:23 ` Trevor Woerner
0 siblings, 1 reply; 22+ messages in thread
From: Quentin Schulz @ 2024-06-06 13:02 UTC (permalink / raw)
To: Trevor Woerner; +Cc: yocto-patches
Hi Trevor,
On 6/6/24 1:49 PM, Trevor Woerner wrote:
> On Thu 2024-06-06 @ 10:17:17 AM, Quentin Schulz wrote:
>> Hi Trevor,
>>
>> On 6/5/24 7:23 PM, Trevor Woerner wrote:
>>> On Fri 2024-05-31 @ 11:25:07 AM, Quentin Schulz via lists.yoctoproject.org wrote:
>>>> This does a few reworks of how we handle TF-A and DDR bin blob
>>>> dependencies, hopefully in a way that makes it much easier to add
>>>> support for new SoCs without having to touch too many files.
>>>>
>>>> While at it, add an SOC_FAMILY entry for rk3588s/rk3588 boards.
>>>>
>>>> Additionally, make rk3308 use the PREFERRED_PROVIDER mechanism to select
>>>> rk3308-rkbin instead of rockchip-rkbin.
>>>>
>>>> Finally, fix a few MACHINEOVERRIDES ordering issues.
>>>
>>> Here are the new MACHINEOVERRIDES (with these patches applied) for all the
>>> MACHINEs we support (with rk-u-boot-env enabled):
>>>
>>> MACHINEOVERRIDES="armv7ve:rockchip:rk3288:firefly-rk3288:rk-u-boot-env"
>>> MACHINEOVERRIDES="armv7a:rockchip:rk3066:marsboard-rk3066"
>>> MACHINEOVERRIDES="armv7a:rockchip:rk3188:radxarock"
>>> MACHINEOVERRIDES="armv7ve:rockchip:rk3288:rock2-square"
>>> MACHINEOVERRIDES="armv7ve:rockchip:rk3288:tinker-board:rk-u-boot-env"
>>> MACHINEOVERRIDES="armv7ve:rockchip:rk3288:tinker-board-s:rk-u-boot-env"
>>> MACHINEOVERRIDES="armv7ve:rockchip:rk3288:vyasa-rk3288:rk-u-boot-env"
>>> MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-m4:nanopi-m4:rk-u-boot-env"
>>> MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-m4:nanopi-m4-2gb:rk-u-boot-env"
>>> MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-m4b:rk-u-boot-env"
>>> MACHINEOVERRIDES="aarch64:rockchip:rk3328:nanopi-r2s:rk-u-boot-env"
>>> MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-r4s:rk-u-boot-env"
>>> MACHINEOVERRIDES="aarch64:cortexa76-cortexa55:rockchip:closed-tpl:rk3588s:rk3588:orangepi-5-plus:rk-u-boot-env"
>>> MACHINEOVERRIDES="aarch64:rockchip:closed-tpl:rk3308:roc-rk3308-cc:rk-u-boot-env"
>>> MACHINEOVERRIDES="aarch64:rockchip:rk3328:roc-rk3328-cc:rk-u-boot-env"
>>> MACHINEOVERRIDES="aarch64:rockchip:closed-tpl:rk3568:rock-3a:rk-u-boot-env"
>>> MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-4c-plus:rk-u-boot-env"
>>> MACHINEOVERRIDES="aarch64:cortexa76-cortexa55:rockchip:closed-tpl:rk3588s:rock-5a:rk-u-boot-env"
>>> MACHINEOVERRIDES="aarch64:cortexa76-cortexa55:rockchip:closed-tpl:rk3588s:rk3588:rock-5b:rk-u-boot-env"
>>> MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-pi-4a:rk-u-boot-env"
>>> MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-pi-4b:rk-u-boot-env"
>>> MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-pi-4c:rk-u-boot-env"
>>> MACHINEOVERRIDES="aarch64:rockchip:rk3328:rock-pi-e:rk-u-boot-env"
>>> MACHINEOVERRIDES="aarch64:rockchip:closed-tpl:rk3308:rock-pi-s:rk-u-boot-env"
>>> MACHINEOVERRIDES="aarch64:rockchip:rk3328:rock64:rk-u-boot-env"
>>>
>>> For uniformity, would it be nicer to have all MACHINEs include the SoC
>>> OVERRIDE?
>>>
>>
>> I'm not sure to follow here
>
> Sorry, what I mean is the "cortexa72-cortexa53" parts, which I guess is the
> CPU? I don't know that I've seen those overrides being used often, but I would
> rather either see all of them have this override, or none of them, as part of
> any MACHINEOVERRIDE cleaning patches.
Ahah, this isn't something to fix in meta-rockchip (or as a temporary
work-around if you prefer, or for non-master branches) but rather in
openembedded-core :)
c.f.
https://git.openembedded.org/openembedded-core/tree/meta/conf/machine/include/arm/armv8-2a/tune-cortexa76-cortexa55.inc#n7
for RK3588(s).
I assume we need to add the same to other Arm conf include files?
For the Aarch32 ones, the Cortex-A17 and Cortex-A9 already have this but
not setting cortex-a17/a9 in it but rather armv7ve/armv7a.
For Aarch64 ones, all that use a big.LITTLE architecture have it set,
but not the other, maybe something we could add then?
Cheers,
Quentin
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [yocto-patches] [PATCH meta-rockchip master scarthgap v3 00/16] various reworks around u-boot and rkbin + fixes for MACHINEOVERRIDES
2024-06-06 13:02 ` Quentin Schulz
@ 2024-06-06 17:23 ` Trevor Woerner
0 siblings, 0 replies; 22+ messages in thread
From: Trevor Woerner @ 2024-06-06 17:23 UTC (permalink / raw)
To: Quentin Schulz; +Cc: yocto-patches
On Thu 2024-06-06 @ 03:02:42 PM, Quentin Schulz wrote:
> Hi Trevor,
>
> On 6/6/24 1:49 PM, Trevor Woerner wrote:
> > On Thu 2024-06-06 @ 10:17:17 AM, Quentin Schulz wrote:
> > > Hi Trevor,
> > >
> > > On 6/5/24 7:23 PM, Trevor Woerner wrote:
> > > > On Fri 2024-05-31 @ 11:25:07 AM, Quentin Schulz via lists.yoctoproject.org wrote:
> > > > > This does a few reworks of how we handle TF-A and DDR bin blob
> > > > > dependencies, hopefully in a way that makes it much easier to add
> > > > > support for new SoCs without having to touch too many files.
> > > > >
> > > > > While at it, add an SOC_FAMILY entry for rk3588s/rk3588 boards.
> > > > >
> > > > > Additionally, make rk3308 use the PREFERRED_PROVIDER mechanism to select
> > > > > rk3308-rkbin instead of rockchip-rkbin.
> > > > >
> > > > > Finally, fix a few MACHINEOVERRIDES ordering issues.
> > > >
> > > > Here are the new MACHINEOVERRIDES (with these patches applied) for all the
> > > > MACHINEs we support (with rk-u-boot-env enabled):
> > > >
> > > > MACHINEOVERRIDES="armv7ve:rockchip:rk3288:firefly-rk3288:rk-u-boot-env"
> > > > MACHINEOVERRIDES="armv7a:rockchip:rk3066:marsboard-rk3066"
> > > > MACHINEOVERRIDES="armv7a:rockchip:rk3188:radxarock"
> > > > MACHINEOVERRIDES="armv7ve:rockchip:rk3288:rock2-square"
> > > > MACHINEOVERRIDES="armv7ve:rockchip:rk3288:tinker-board:rk-u-boot-env"
> > > > MACHINEOVERRIDES="armv7ve:rockchip:rk3288:tinker-board-s:rk-u-boot-env"
> > > > MACHINEOVERRIDES="armv7ve:rockchip:rk3288:vyasa-rk3288:rk-u-boot-env"
> > > > MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-m4:nanopi-m4:rk-u-boot-env"
> > > > MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-m4:nanopi-m4-2gb:rk-u-boot-env"
> > > > MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-m4b:rk-u-boot-env"
> > > > MACHINEOVERRIDES="aarch64:rockchip:rk3328:nanopi-r2s:rk-u-boot-env"
> > > > MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:nanopi-r4s:rk-u-boot-env"
> > > > MACHINEOVERRIDES="aarch64:cortexa76-cortexa55:rockchip:closed-tpl:rk3588s:rk3588:orangepi-5-plus:rk-u-boot-env"
> > > > MACHINEOVERRIDES="aarch64:rockchip:closed-tpl:rk3308:roc-rk3308-cc:rk-u-boot-env"
> > > > MACHINEOVERRIDES="aarch64:rockchip:rk3328:roc-rk3328-cc:rk-u-boot-env"
> > > > MACHINEOVERRIDES="aarch64:rockchip:closed-tpl:rk3568:rock-3a:rk-u-boot-env"
> > > > MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-4c-plus:rk-u-boot-env"
> > > > MACHINEOVERRIDES="aarch64:cortexa76-cortexa55:rockchip:closed-tpl:rk3588s:rock-5a:rk-u-boot-env"
> > > > MACHINEOVERRIDES="aarch64:cortexa76-cortexa55:rockchip:closed-tpl:rk3588s:rk3588:rock-5b:rk-u-boot-env"
> > > > MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-pi-4a:rk-u-boot-env"
> > > > MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-pi-4b:rk-u-boot-env"
> > > > MACHINEOVERRIDES="aarch64:cortexa72-cortexa53:rockchip:rk3399:rock-pi-4:rock-pi-4c:rk-u-boot-env"
> > > > MACHINEOVERRIDES="aarch64:rockchip:rk3328:rock-pi-e:rk-u-boot-env"
> > > > MACHINEOVERRIDES="aarch64:rockchip:closed-tpl:rk3308:rock-pi-s:rk-u-boot-env"
> > > > MACHINEOVERRIDES="aarch64:rockchip:rk3328:rock64:rk-u-boot-env"
> > > >
> > > > For uniformity, would it be nicer to have all MACHINEs include the SoC
> > > > OVERRIDE?
> > > >
> > >
> > > I'm not sure to follow here
> >
> > Sorry, what I mean is the "cortexa72-cortexa53" parts, which I guess is the
> > CPU? I don't know that I've seen those overrides being used often, but I would
> > rather either see all of them have this override, or none of them, as part of
> > any MACHINEOVERRIDE cleaning patches.
>
> Ahah, this isn't something to fix in meta-rockchip (or as a temporary
> work-around if you prefer, or for non-master branches) but rather in
> openembedded-core :)
>
> c.f. https://git.openembedded.org/openembedded-core/tree/meta/conf/machine/include/arm/armv8-2a/tune-cortexa76-cortexa55.inc#n7
> for RK3588(s).
Ah okay. Well in that case let's just leave it as-is. Like I said, I don't
know that I've seen much of anything use those overrides, and it's not
something we're using. I was just going for uniformity for what I thought was
our cleanup.
Applied to meta-rockchip, master and scrathgap branches. Thanks!
^ permalink raw reply [flat|nested] 22+ messages in thread