[Buildroot] [PATCH v8 13/23] package/ti-k3: move TI_K3_{SECTYPE, SOC} out of the image-gen scope
Dario Binacchi
dario.binacchi at amarulasolutions.com
Fri Mar 1 13:36:10 UTC 2024
Recent versions of U-Boot can use Binman to compile and sign the generated
binaries, thus making the use of custom tools like ti-k3-image-gen no
longer necessary. In ti-k3-image-gen, options such as SECTYPE and SOC were
configured and used outside of it. This patch allows setting such options
even if the package is not enabled.
The patch makes an exception to the Buildroot rule "no subdirectory in
package directory".
Signed-off-by: Dario Binacchi <dario.binacchi at amarulasolutions.com>
---
Changes in v7:
- Revert change disabling BR2_PACKAGE_TI_K3_SECTYPE_HS_FS for
BR2_PACKAGE_TI_K3_SOC_AM65X. The change is moved in a separate patch.
Changes in v6:
- Move BR2_TARGET_UBOOT_TI_K3_DM_SOCNAME to ti-k3 (BR2_PACKAGE_TI_K3_DM).
- Disable BR2_PACKAGE_TI_K3_SECTYPE_HS_FS for BR2_PACKAGE_TI_K3_SOC_AM65X
Changes in v5:
- Add SOB tag
- Move the new ti-k3 from boot to package
Added in v4
Signed-off-by: Dario Binacchi <dario.binacchi at amarulasolutions.com>
---
boot/ti-k3-image-gen/Config.in | 61 ++-----------------------
boot/ti-k3-image-gen/ti-k3-image-gen.mk | 4 +-
boot/uboot/Config.in | 12 +----
boot/uboot/uboot.mk | 2 +-
configs/ti_am62x_sk_defconfig | 3 +-
configs/ti_am64x_sk_defconfig | 3 +-
package/Config.in | 1 +
package/ti-k3/Config.in | 59 ++++++++++++++++++++++++
package/ti-k3/ti-k3.mk | 7 +++
9 files changed, 79 insertions(+), 73 deletions(-)
create mode 100644 package/ti-k3/Config.in
create mode 100644 package/ti-k3/ti-k3.mk
diff --git a/boot/ti-k3-image-gen/Config.in b/boot/ti-k3-image-gen/Config.in
index d76cef82e911..a57319f4be6d 100644
--- a/boot/ti-k3-image-gen/Config.in
+++ b/boot/ti-k3-image-gen/Config.in
@@ -13,65 +13,12 @@ config BR2_TARGET_TI_K3_IMAGE_GEN
https://git.ti.com/cgit/k3-image-gen/k3-image-gen/
if BR2_TARGET_TI_K3_IMAGE_GEN
-choice
- prompt "SoC family"
-
-config BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62AX
- bool "am62ax"
-
-config BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62X
- bool "am62x"
-
-config BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM64X
- bool "am64x"
-
-config BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM65X
- bool "am65x"
-
-endchoice
-
-choice
- prompt "Security type"
- help
- The target SoC security type option for image gen. Valid
- options are "gp" for General Purpose devices, "hs-fs" for
- High Security - Field Securable devices, or "hs" for High
- Security - Security Enforcing devices. Note for all High
- Security device variants the TI_SECURE_DEV_PKG environmental
- variable must be defined at build time pointing to a valid
- core-secdev-k3 folder location, otherwise the build will
- fail, see
- https://git.ti.com/cgit/security-development-tools/core-secdev-k3
-
-config BR2_TARGET_TI_K3_IMAGE_GEN_SECTYPE_GP
- bool "gp"
-
-config BR2_TARGET_TI_K3_IMAGE_GEN_SECTYPE_HS_FS
- bool "hs-fs"
-
-config BR2_TARGET_TI_K3_IMAGE_GEN_SECTYPE_HS
- bool "hs"
-
-endchoice
-
-config BR2_TARGET_TI_K3_IMAGE_GEN_SOC
- string
- default "am62ax" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62AX
- default "am62x" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62X
- default "am64x" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM64X
- default "am65x" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM65X
config BR2_TARGET_TI_K3_IMAGE_GEN_FW_TYPE
string
- default "ti-fs" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62AX
- default "ti-fs" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62X
- default "ti-sci" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM64X
- default "ti-sci" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM65X
-
-config BR2_TARGET_TI_K3_IMAGE_GEN_SECTYPE
- string
- default "gp" if BR2_TARGET_TI_K3_IMAGE_GEN_SECTYPE_GP
- default "hs-fs" if BR2_TARGET_TI_K3_IMAGE_GEN_SECTYPE_HS_FS
- default "hs" if BR2_TARGET_TI_K3_IMAGE_GEN_SECTYPE_HS
+ default "ti-fs" if BR2_PACKAGE_TI_K3_SOC_AM62AX
+ default "ti-fs" if BR2_PACKAGE_TI_K3_SOC_AM62X
+ default "ti-sci" if BR2_PACKAGE_TI_K3_SOC_AM64X
+ default "ti-sci" if BR2_PACKAGE_TI_K3_SOC_AM65X
endif
diff --git a/boot/ti-k3-image-gen/ti-k3-image-gen.mk b/boot/ti-k3-image-gen/ti-k3-image-gen.mk
index 64be9a18f2c4..aca29bcf1bd4 100644
--- a/boot/ti-k3-image-gen/ti-k3-image-gen.mk
+++ b/boot/ti-k3-image-gen/ti-k3-image-gen.mk
@@ -26,8 +26,8 @@ TI_K3_IMAGE_GEN_DEPENDENCIES = \
$(BR2_MAKE_HOST_DEPENDENCY)
TI_K3_IMAGE_GEN_FW_TYPE = $(call qstrip,$(BR2_TARGET_TI_K3_IMAGE_GEN_FW_TYPE))
-TI_K3_IMAGE_GEN_SOC = $(call qstrip,$(BR2_TARGET_TI_K3_IMAGE_GEN_SOC))
-TI_K3_IMAGE_GEN_SECTYPE = $(call qstrip,$(BR2_TARGET_TI_K3_IMAGE_GEN_SECTYPE))
+TI_K3_IMAGE_GEN_SOC = $(call qstrip,$(BR2_PACKAGE_TI_K3_SOC))
+TI_K3_IMAGE_GEN_SECTYPE = $(call qstrip,$(BR2_PACKAGE_TI_K3_SECTYPE))
TI_K3_IMAGE_GEN_SYSFW = $(TI_K3_IMAGE_GEN_FW_TYPE)-firmware-$(TI_K3_IMAGE_GEN_SOC)-$(TI_K3_IMAGE_GEN_SECTYPE).bin
diff --git a/boot/uboot/Config.in b/boot/uboot/Config.in
index e6e7956adccb..821854d08acc 100644
--- a/boot/uboot/Config.in
+++ b/boot/uboot/Config.in
@@ -244,21 +244,11 @@ config BR2_TARGET_UBOOT_NEEDS_TI_K3_DM
bool "U-Boot needs TI K3 Device Manager (DM)"
# We use the SoC selection defined for the ti-k3-image-gen
# package
- depends on BR2_TARGET_TI_K3_IMAGE_GEN
- depends on BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62AX || BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62X
+ depends on BR2_PACKAGE_TI_K3_SOC_AM62AX || BR2_PACKAGE_TI_K3_SOC_AM62X
help
Some TI K3 devices need the Device Manager (DM) firmware to
be available for the U-Boot build.
-if BR2_TARGET_UBOOT_NEEDS_TI_K3_DM
-
-config BR2_TARGET_UBOOT_TI_K3_DM_SOCNAME
- string
- default "am62axx" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62AX
- default "am62xx" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62X
-
-endif
-
config BR2_TARGET_UBOOT_NEEDS_OPENSBI
bool "U-Boot needs OpenSBI"
depends on BR2_TARGET_OPENSBI
diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
index 35a41d96a12d..7cd4636aa292 100644
--- a/boot/uboot/uboot.mk
+++ b/boot/uboot/uboot.mk
@@ -189,7 +189,7 @@ endif
ifeq ($(BR2_TARGET_UBOOT_NEEDS_TI_K3_DM),y)
UBOOT_DEPENDENCIES += ti-k3-boot-firmware
ifeq ($(BR2_TARGET_UBOOT_USE_BINMAN),)
-UBOOT_TI_K3_DM_SOCNAME = $(call qstrip,$(BR2_TARGET_UBOOT_TI_K3_DM_SOCNAME))
+UBOOT_TI_K3_DM_SOCNAME = $(call qstrip,$(BR2_PACKAGE_TI_K3_DM_SOCNAME))
UBOOT_MAKE_OPTS += DM=$(BINARIES_DIR)/ti-dm/$(UBOOT_TI_K3_DM_SOCNAME)/ipc_echo_testb_mcu1_0_release_strip.xer5f
endif
endif
diff --git a/configs/ti_am62x_sk_defconfig b/configs/ti_am62x_sk_defconfig
index a129e216d25b..2835404a57df 100644
--- a/configs/ti_am62x_sk_defconfig
+++ b/configs/ti_am62x_sk_defconfig
@@ -11,6 +11,8 @@ BR2_LINUX_KERNEL_INTREE_DTS_NAME="ti/k3-am625-sk"
BR2_LINUX_KERNEL_INSTALL_TARGET=y
BR2_PACKAGE_LINUX_FIRMWARE=y
BR2_PACKAGE_LINUX_FIRMWARE_TI_WL18XX=y
+BR2_PACKAGE_TI_K3=y
+BR2_PACKAGE_TI_K3_SOC_AM62X=y
BR2_TARGET_ROOTFS_EXT2=y
BR2_TARGET_ROOTFS_EXT2_4=y
BR2_TARGET_ROOTFS_EXT2_SIZE="256M"
@@ -23,7 +25,6 @@ BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_OPTEE=y
BR2_TARGET_OPTEE_OS=y
BR2_TARGET_OPTEE_OS_PLATFORM="k3-am62x"
BR2_TARGET_TI_K3_IMAGE_GEN=y
-BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62X=y
BR2_TARGET_TI_K3_R5_LOADER=y
BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_VERSION=y
BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_VERSION_VALUE="2022.10"
diff --git a/configs/ti_am64x_sk_defconfig b/configs/ti_am64x_sk_defconfig
index 26195194c7d6..566cbbe4824f 100644
--- a/configs/ti_am64x_sk_defconfig
+++ b/configs/ti_am64x_sk_defconfig
@@ -11,6 +11,8 @@ BR2_LINUX_KERNEL_INTREE_DTS_NAME="ti/k3-am642-sk"
BR2_LINUX_KERNEL_INSTALL_TARGET=y
BR2_PACKAGE_LINUX_FIRMWARE=y
BR2_PACKAGE_LINUX_FIRMWARE_TI_WL18XX=y
+BR2_PACKAGE_TI_K3=y
+BR2_PACKAGE_TI_K3_SOC_AM64X=y
BR2_TARGET_ROOTFS_EXT2=y
BR2_TARGET_ROOTFS_EXT2_4=y
BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
@@ -23,7 +25,6 @@ BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_OPTEE=y
BR2_TARGET_OPTEE_OS=y
BR2_TARGET_OPTEE_OS_PLATFORM="k3-am64x"
BR2_TARGET_TI_K3_IMAGE_GEN=y
-BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM64X=y
BR2_TARGET_TI_K3_R5_LOADER=y
BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_VERSION=y
BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_VERSION_VALUE="2022.10"
diff --git a/package/Config.in b/package/Config.in
index bf0fe078b955..6d3ed34e121b 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -629,6 +629,7 @@ endmenu
source "package/sysstat/Config.in"
source "package/targetcli-fb/Config.in"
source "package/ti-gfx/Config.in"
+ source "package/ti-k3/Config.in"
source "package/ti-sgx-demos/Config.in"
source "package/ti-sgx-km/Config.in"
source "package/ti-sgx-um/Config.in"
diff --git a/package/ti-k3/Config.in b/package/ti-k3/Config.in
new file mode 100644
index 000000000000..2a51b1531487
--- /dev/null
+++ b/package/ti-k3/Config.in
@@ -0,0 +1,59 @@
+config BR2_PACKAGE_TI_K3
+ bool "TI K3"
+ help
+ The TI K3 SOC specific selections.
+
+if BR2_PACKAGE_TI_K3
+
+choice
+ prompt "SoC family"
+
+config BR2_PACKAGE_TI_K3_SOC_AM62AX
+ bool "am62ax"
+
+config BR2_PACKAGE_TI_K3_SOC_AM62X
+ bool "am62x"
+
+config BR2_PACKAGE_TI_K3_SOC_AM64X
+ bool "am64x"
+
+config BR2_PACKAGE_TI_K3_SOC_AM65X
+ bool "am65x"
+
+endchoice
+
+choice
+ prompt "Security type"
+ help
+ The target SoC security type option.
+
+config BR2_PACKAGE_TI_K3_SECTYPE_GP
+ bool "gp"
+
+config BR2_PACKAGE_TI_K3_SECTYPE_HS_FS
+ bool "hs-fs"
+
+config BR2_PACKAGE_TI_K3_SECTYPE_HS
+ bool "hs"
+
+endchoice
+
+config BR2_PACKAGE_TI_K3_SOC
+ string
+ default "am62ax" if BR2_PACKAGE_TI_K3_SOC_AM62AX
+ default "am62x" if BR2_PACKAGE_TI_K3_SOC_AM62X
+ default "am64x" if BR2_PACKAGE_TI_K3_SOC_AM64X
+ default "am65x" if BR2_PACKAGE_TI_K3_SOC_AM65X
+
+config BR2_PACKAGE_TI_K3_SECTYPE
+ string
+ default "gp" if BR2_PACKAGE_TI_K3_SECTYPE_GP
+ default "hs-fs" if BR2_PACKAGE_TI_K3_SECTYPE_HS_FS
+ default "hs" if BR2_PACKAGE_TI_K3_SECTYPE_HS
+
+config BR2_PACKAGE_TI_K3_DM_SOCNAME
+ string
+ default "am62axx" if BR2_PACKAGE_TI_K3_SOC_AM62AX
+ default "am62xx" if BR2_PACKAGE_TI_K3_SOC_AM62X
+
+endif
diff --git a/package/ti-k3/ti-k3.mk b/package/ti-k3/ti-k3.mk
new file mode 100644
index 000000000000..a2da29f5148c
--- /dev/null
+++ b/package/ti-k3/ti-k3.mk
@@ -0,0 +1,7 @@
+################################################################################
+#
+# ti-k3
+#
+################################################################################
+
+include $(sort $(wildcard package/ti-k3/*/*.mk))
--
2.43.0
More information about the buildroot
mailing list