From: Thomas Petazzoni via buildroot <buildroot@buildroot.org>
To: Andreas Dannenberg via buildroot <buildroot@buildroot.org>
Cc: Andreas Dannenberg <dannenberg@ti.com>
Subject: Re: [Buildroot] [PATCH v8 03/10] boot/uboot: add support for building the TI K3 DM into U-Boot
Date: Tue, 22 Aug 2023 12:31:04 +0200 [thread overview]
Message-ID: <20230822123104.5a1c248e@windsurf> (raw)
In-Reply-To: <20230616002359.4139814-4-dannenberg@ti.com>
Hello Andreas,
On Thu, 15 Jun 2023 19:23:52 -0500
Andreas Dannenberg via buildroot <buildroot@buildroot.org> wrote:
> Certain TI K3 devices such as AM62x and AM62Ax require a Device Manager
> (DM) firmnware to be made available to the U-Boot build, which will get
> packaged into the "tispl.bin" image tree blob during A53 SPL build.
> Without that DM firmware U-Boot will not be functional. To support this,
> add a config option called BR2_TARGET_UBOOT_NEEDS_TI_K3_DM to enable
> this feature, and another option BR2_TARGET_UBOOT_TI_K3_DM_SOC to allow
> setting the name of the SOC which needs to match the corresponding
> folder name in the ti-linux-firmware Git repository.
>
> Signed-off-by: Andreas Dannenberg <dannenberg@ti.com>
I've also applied this patch to our next branch, with some changes. The
main one being that the U-Boot package is no longer responsible for
downloading the ti-dm firmware, it is now done by the separate
ti-k3-boot-firmware package.
> diff --git a/boot/uboot/Config.in b/boot/uboot/Config.in
> index 085397d03d..7e1dd44196 100644
> --- a/boot/uboot/Config.in
> +++ b/boot/uboot/Config.in
> @@ -240,6 +240,23 @@ config BR2_TARGET_UBOOT_NEEDS_OPTEE_TEE
> U-Boot, and that the TEE variable pointing to OPTEE's
> tee.elf, is passed during the Buildroot build.
>
> +config BR2_TARGET_UBOOT_NEEDS_TI_K3_DM
> + bool "U-Boot needs TI K3 Device Manager (DM)"
> + help
> + Some TI K3 devices need the Device Manager (DM) firmware
> + to be available for the U-Boot build. Currently supports FW
> + from Git tag 08.06.00.006 by default.
> +
> + https://git.ti.com/cgit/processor-firmware/ti-linux-firmware/tree/ti-dm?h=ti-linux-firmware
> +
> +config BR2_TARGET_UBOOT_TI_K3_DM_SOC
> + string "TI K3 Device Manager (DM) SOC Type"
> + depends on BR2_TARGET_UBOOT_NEEDS_TI_K3_DM
> + help
> + Name of the TI K3 Device Manager (DM) SOC. This needs to
> + match one of the SOC-specific folders in within the ti-dm
> + folder of the ti-linux-firmware Git repository.
Changed to:
+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
+ 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
Basically my idea here is to avoid replicating the selection of SoC,
which we have already defined in the ti-k3-image-gen configuration. So
we piggy-back on the options of this package to determine the SoC we're
working with.
> diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
> index 4eae8e95c3..48af69bd26 100644
> --- a/boot/uboot/uboot.mk
> +++ b/boot/uboot/uboot.mk
> @@ -184,6 +184,22 @@ UBOOT_DEPENDENCIES += optee-os
> UBOOT_MAKE_OPTS += TEE=$(BINARIES_DIR)/tee.elf
> endif
>
> +ifeq ($(BR2_TARGET_UBOOT_NEEDS_TI_K3_DM),y)
> +# Currently supports the FW from Git tag 08.06.00.006 by default
> +TI_K3_DM_VERSION = 340194800a581baf976360386dfc7b5acab8d948
> +TI_K3_DM_SITE = https://git.ti.com/processor-firmware/ti-linux-firmware/blobs/raw/$(TI_K3_DM_VERSION)/ti-dm/$(BR2_TARGET_UBOOT_TI_K3_DM_SOC)
> +TI_K3_DM_SOURCE = ipc_echo_testb_mcu1_0_release_strip.xer5f
> +# This is not really nice but disable the hash check for the DM FW file. Main
> +# reason is all those DM FW files for different SoCs have the same(!) name in
> +# the Git repository they reside in, so it would be more difficult to distinguish
> +# between them for hash checking purposes. To work around this let's just
> +# rely and trust the official Git repo at ti.com is known-good which is also
> +# accessed through a secure transport.
> +BR_NO_CHECK_HASH_FOR += $(TI_K3_DM_SOURCE)
> +UBOOT_EXTRA_DOWNLOADS = $(TI_K3_DM_SITE)/$(TI_K3_DM_SOURCE)
> +UBOOT_MAKE_OPTS += DM=$(UBOOT_DL_DIR)/$(TI_K3_DM_SOURCE)
> +endif
Simplified to:
+ifeq ($(BR2_TARGET_UBOOT_NEEDS_TI_K3_DM),y)
+UBOOT_TI_K3_DM_SOCNAME = $(call qstrip,$(BR2_TARGET_UBOOT_TI_K3_DM_SOCNAME))
+UBOOT_DEPENDENCIES += ti-k3-boot-firmware
+UBOOT_MAKE_OPTS += DM=$(BINARIES_DIR)/ti-dm/$(UBOOT_TI_K3_DM_SOCNAME)/ipc_echo_testb_mcu1_0_release_strip.xer5f
+endif
Best regards,
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next prev parent reply other threads:[~2023-08-22 10:31 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-16 0:23 [Buildroot] [PATCH v8 00/10] add support for TI's AM64x and AM62x boards Andreas Dannenberg via buildroot
2023-06-16 0:23 ` [Buildroot] [PATCH v8 01/10] boot/ti-k3-r5-loader: allow for full build source customization Andreas Dannenberg via buildroot
2023-06-16 1:39 ` Patrick Oppenlander
2023-06-16 2:25 ` Andreas Dannenberg via buildroot
2023-06-21 15:42 ` Andreas Dannenberg via buildroot
2023-06-21 23:35 ` Patrick Oppenlander
2023-08-22 10:16 ` Thomas Petazzoni via buildroot
2023-06-16 0:23 ` [Buildroot] [PATCH v8 02/10] boot/ti-k3-image-gen: new package Andreas Dannenberg via buildroot
2023-08-22 10:29 ` Thomas Petazzoni via buildroot
2023-12-12 13:14 ` Romain Naour
2023-12-13 4:31 ` Bryan Brattlof via buildroot
2023-06-16 0:23 ` [Buildroot] [PATCH v8 03/10] boot/uboot: add support for building the TI K3 DM into U-Boot Andreas Dannenberg via buildroot
2023-08-22 10:31 ` Thomas Petazzoni via buildroot [this message]
2023-06-16 0:23 ` [Buildroot] [PATCH v8 04/10] board/ti/am64x_sk: add new board Andreas Dannenberg via buildroot
2023-08-22 10:32 ` Thomas Petazzoni via buildroot
2023-06-16 0:23 ` [Buildroot] [PATCH v8 05/10] board/ti/am62x_sk: " Andreas Dannenberg via buildroot
2023-08-22 10:32 ` Thomas Petazzoni via buildroot
2023-06-16 0:23 ` [Buildroot] [PATCH v8 06/10] board/ti/am62x_sk|am64x_sk: switch to TI SDK v8.6 sources Andreas Dannenberg via buildroot
2023-06-16 0:23 ` [Buildroot] [PATCH v8 07/10] board/ti/am62x_sk|am64x_sk: switch to HS-FS device variants Andreas Dannenberg via buildroot
2023-06-16 11:15 ` François Perrad
2023-06-16 12:02 ` Andreas Dannenberg via buildroot
2023-06-16 16:40 ` François Perrad
2023-06-16 22:13 ` Andreas Dannenberg via buildroot
2023-06-17 9:37 ` François Perrad
2023-06-18 12:37 ` Andreas Dannenberg via buildroot
2023-06-18 12:27 ` Arnout Vandecappelle via buildroot
2023-06-18 13:43 ` Andreas Dannenberg via buildroot
2023-06-19 17:39 ` Julien Olivain
2023-06-21 15:32 ` Andreas Dannenberg via buildroot
2023-06-16 0:23 ` [Buildroot] [PATCH v8 08/10] package/ti-rogue-km: new package Andreas Dannenberg via buildroot
2023-06-16 0:23 ` [Buildroot] [PATCH v8 09/10] package/ti-rogue-um: " Andreas Dannenberg via buildroot
2023-06-16 0:23 ` [Buildroot] [PATCH v8 10/10] configs/am62x_sk_defconfig: enable IMG Rogue graphics driver Andreas Dannenberg via buildroot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230822123104.5a1c248e@windsurf \
--to=buildroot@buildroot.org \
--cc=dannenberg@ti.com \
--cc=thomas.petazzoni@bootlin.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.