Skip to contentSkip to conversation

add support for TI's AM6X boards

PATCH Applied Xuanhao Shi via buildroot 2 participants 18 messages Jul 28, 2022 – Aug 2, 2022

v2 of 9 Applied Latest is v9 →

lore
Share & tools
lore
#0 lore raw

v2 cover add support for TI's AM6X boards

The series applied the changes requested by Thomas Petazzoni and Arnout Vandecappelle to the previous patch for adding support to TI's AM6X boards ([1]). Specifically, it currently added support for the AM64x_sk board and the AM62x_sk board.

[1] http://lists.busybox.net/pipermail/buildroot/2022-July/647460.html

Changes in v2:
- Revert arm-gnu-toolchain back to version 10.x due to a bug. When the pre-packaged GCC was built, it could be targeting a newer x86_64 architecture than the processor being used.
- Add boot/ti-k3-r5-loader package that builds a separate U-Boot for the R5 cores on TI's K3 devices.
- Add boot/ti-k3-image-gen package that builds the full boot binary tiboot3.bin from the spl built from ti-k3-r5-loader.
- Add board/ti directory to include sdcard config and board information for AM64x_sk and AM62x_sk boards.
- Add the Buildroot defconfigs for AM64x_sk and AM62x_sk.
- Add to DEVELOPERS list.

Xuanhao Shi (4):
package/arm-gnu-toolchain: revert to version 10
boot/ti-k3-r5-loader: add new package
boot/ti-k3-image-gen: add new package
board/ti: add new boards

 DEVELOPERS                                    | 16 +++++++
 board/ti/am62x_sk/genimage.cfg                | 27 +++++++++++
 board/ti/am62x_sk/readme.txt                  | 46 +++++++++++++++++++
 board/ti/am64x_sk/genimage.cfg                | 27 +++++++++++
 board/ti/am64x_sk/readme.txt                  | 46 +++++++++++++++++++
 boot/Config.in                                |  2 +
 boot/ti-k3-image-gen/Config.in                | 24 ++++++++++
 boot/ti-k3-image-gen/ti-k3-image-gen.hash     |  2 +
 boot/ti-k3-image-gen/ti-k3-image-gen.mk       | 33 +++++++++++++
 boot/ti-k3-r5-loader/Config.in                | 13 ++++++
 boot/ti-k3-r5-loader/ti-k3-r5-loader.hash     |  2 +
 boot/ti-k3-r5-loader/ti-k3-r5-loader.mk       | 42 +++++++++++++++++
 configs/am62x_sk_defconfig                    | 45 ++++++++++++++++++
 configs/am64x_sk_defconfig                    | 45 ++++++++++++++++++
 .../arm-gnu-toolchain/arm-gnu-toolchain.hash  |  2 +-
 .../arm-gnu-toolchain/arm-gnu-toolchain.mk    |  6 +--
 16 files changed, 374 insertions(+), 4 deletions(-)
 create mode 100644 board/ti/am62x_sk/genimage.cfg
 create mode 100644 board/ti/am62x_sk/readme.txt
 create mode 100644 board/ti/am64x_sk/genimage.cfg
 create mode 100644 board/ti/am64x_sk/readme.txt
 create mode 100644 boot/ti-k3-image-gen/Config.in
 create mode 100644 boot/ti-k3-image-gen/ti-k3-image-gen.hash
 create mode 100644 boot/ti-k3-image-gen/ti-k3-image-gen.mk
 create mode 100644 boot/ti-k3-r5-loader/Config.in
 create mode 100644 boot/ti-k3-r5-loader/ti-k3-r5-loader.hash
 create mode 100644 boot/ti-k3-r5-loader/ti-k3-r5-loader.mk
 create mode 100644 configs/am62x_sk_defconfig
 create mode 100644 configs/am64x_sk_defconfig
Signature · 6 lines
2.17.1

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#1 lore raw

PATCH v2 1/4 package/arm-gnu-toolchain: revert to version 10

Revert the toolchain to version 10.x because of bug in 11.x:
when the pre-packaged GCC was built, it could be targeting a newer x86_64 architecture than the processor being used. Confirmed fix will be implemented in the next release:

https://bugs.linaro.org/show_bug.cgi?id=5825#c19

---
 package/arm-gnu-toolchain/arm-gnu-toolchain.hash | 2 +-
 package/arm-gnu-toolchain/arm-gnu-toolchain.mk   | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)
package/arm-gnu-toolchain/arm-gnu-toolchain.hash +1 -1
index 48b1b55c73..168d99cd45 100644
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256 8c5acd5ae567c0100245b0556941c237369f210bceb196edfe5a2e7532c60326  gcc-arm-11.2-2022.02-x86_64-arm-none-eabi.tar.xz
+sha256 97dbb4f019ad1650b732faffcc881689cedc14e2b7ee863d390e0a41ef16c9a3  gcc-arm-none-eabi-10.3-2021.10-x86_64-linux.tar.bz2
package/arm-gnu-toolchain/arm-gnu-toolchain.mk +3 -3
index 3bfd516751..87e12874ea 100644
@@ -4,9 +4,9 @@
 #
 ################################################################################
 
-ARM_GNU_TOOLCHAIN_VERSION = 11.2-2022.02
-ARM_GNU_TOOLCHAIN_SITE = https://developer.arm.com/-/media/Files/downloads/gnu/$(ARM_GNU_TOOLCHAIN_VERSION)/binrel/
-ARM_GNU_TOOLCHAIN_SOURCE = gcc-arm-$(ARM_GNU_TOOLCHAIN_VERSION)-x86_64-arm-none-eabi.tar.xz
+ARM_GNU_TOOLCHAIN_VERSION = 10.3-2021.10
+ARM_GNU_TOOLCHAIN_SITE = https://developer.arm.com/-/media/Files/downloads/gnu-rm/$(ARM_GNU_TOOLCHAIN_VERSION)
+ARM_GNU_TOOLCHAIN_SOURCE = gcc-arm-none-eabi-$(ARM_GNU_TOOLCHAIN_VERSION)-x86_64-linux.tar.bz2
 ARM_GNU_TOOLCHAIN_LICENSE = GPL-3.0+
 
 HOST_ARM_GNU_TOOLCHAIN_INSTALL_DIR = $(HOST_DIR)/opt/gcc-arm-none-eabi
Signature · 6 lines
2.17.1

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#2 lore raw

Re: [Buildroot] [PATCH v2 1/4] package/arm-gnu-toolchain: revert to version 10

Hi Xuanhao,

Quoted 5 lines · Xuanhao Shi

Revert the toolchain to version 10.x because of bug in 11.x:
when the pre-packaged GCC was built, it could be targeting a newer x86_64 architecture than the processor being used. Confirmed fix will be implemented in the next release: >
https://bugs.linaro.org/show_bug.cgi?id=5825#c19

have you tried any possible work-around for this ^^^ bug? At the moment I don't see any other build failure using gcc-arm-11.2-2022.02-x86_64-arm-none-eabi, probably because every package that is built with it doesn't have float type in the code(I presume).

Does the gcc bug show up while building ti-k3-image-gen or ti-k3-r5-loader?

I'd prefer to find a work-around if possible rather than downgrading host-arm-gnu-toolchain, also because this would impact another package that depends on it:
arm-trusted-firmware

Please let me know, maybe I can help finding a work-around for that float ICE.

Best regards

Signature · 2 lines
Giulio Benetti
Benetti Engineering sas
Quoted 21 lines
---
  package/arm-gnu-toolchain/arm-gnu-toolchain.hash | 2 +-
  package/arm-gnu-toolchain/arm-gnu-toolchain.mk   | 6 +++---
  2 files changed, 4 insertions(+), 4 deletions(-)
package/arm-gnu-toolchain/arm-gnu-toolchain.hash +1 -1
index 48b1b55c73..168d99cd45 100644
@@ -1,2 +1,2 @@
  # Locally calculated
-sha256 8c5acd5ae567c0100245b0556941c237369f210bceb196edfe5a2e7532c60326  gcc-arm-11.2-2022.02-x86_64-arm-none-eabi.tar.xz
+sha256 97dbb4f019ad1650b732faffcc881689cedc14e2b7ee863d390e0a41ef16c9a3  gcc-arm-none-eabi-10.3-2021.10-x86_64-linux.tar.bz2
package/arm-gnu-toolchain/arm-gnu-toolchain.mk +0 -0
index 3bfd516751..87e12874ea 100644
@@ -4,9 +4,9 @@
  #
  ################################################################################

package/arm-gnu-toolchain/arm-gnu-toolchain.mk line 12

Quoted 10 lines
package/arm-gnu-toolchain/arm-gnu-toolchain.mk +3 -3
 
-ARM_GNU_TOOLCHAIN_VERSION = 11.2-2022.02
-ARM_GNU_TOOLCHAIN_SITE = https://developer.arm.com/-/media/Files/downloads/gnu/$(ARM_GNU_TOOLCHAIN_VERSION)/binrel/
-ARM_GNU_TOOLCHAIN_SOURCE = gcc-arm-$(ARM_GNU_TOOLCHAIN_VERSION)-x86_64-arm-none-eabi.tar.xz
+ARM_GNU_TOOLCHAIN_VERSION = 10.3-2021.10
+ARM_GNU_TOOLCHAIN_SITE = https://developer.arm.com/-/media/Files/downloads/gnu-rm/$(ARM_GNU_TOOLCHAIN_VERSION)
+ARM_GNU_TOOLCHAIN_SOURCE = gcc-arm-none-eabi-$(ARM_GNU_TOOLCHAIN_VERSION)-x86_64-linux.tar.bz2
  ARM_GNU_TOOLCHAIN_LICENSE = GPL-3.0+
 
  HOST_ARM_GNU_TOOLCHAIN_INSTALL_DIR = $(HOST_DIR)/opt/gcc-arm-none-eabi

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot

#3 lore raw

Re: [Buildroot] [PATCH v2 1/4] package/arm-gnu-toolchain: revert to version 10

Hello,

Quoted 5 lines · On Sun, 31 Jul 2022 02:28:49 +0200 Giulio Benetti…

have you tried any possible work-around for this ^^^ bug? At the moment I don't see any other build failure using gcc-arm-11.2-2022.02-x86_64-arm-none-eabi, probably because every package that is built with it doesn't have float type in the code(I presume).

The arm-gnu-toolchain package is not widely used. It's only a few specific ARM Trusted Firmware configurations that use it for the moment, therefore this package is never exercised in the autobuilders, and only by a few defconfigs.

Quoted 9 lines

Does the gcc bug show up while building ti-k3-image-gen or ti-k3-r5-loader?

I'd prefer to find a work-around if possible rather than downgrading host-arm-gnu-toolchain, also because this would impact another package that depends on it:
arm-trusted-firmware

Please let me know, maybe I can help finding a work-around for that float ICE.

It's not an ICE. What happens is that this gcc toolchain has been compiled for a too recent x86-64 CPU core (the host binary of gcc). Therefore if you use this toolchain on a slightly too old x86-64 machine, it will break.

Reverting to 10.x is fine here: Linaro (who produces the toolchain) has acknowledged the problem, and will generate an updated 11.x toolchain at some point in the future.

Best regards,

Thomas

Signature · 7 lines
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#4 lore raw

Re: [Buildroot] [PATCH v2 1/4] package/arm-gnu-toolchain: revert to version 10

In reply to Xuanhao Shi via buildroot
Quoted 11 lines · On Thu, 28 Jul 2022 11:40:03 -0500 Xuanhao Shi via buildroot…

Revert the toolchain to version 10.x because of bug in 11.x:
when the pre-packaged GCC was built, it could be targeting a newer x86_64 architecture than the processor being used. Confirmed fix will be implemented in the next release:

https://bugs.linaro.org/show_bug.cgi?id=5825#c19

---
 package/arm-gnu-toolchain/arm-gnu-toolchain.hash | 2 +-
 package/arm-gnu-toolchain/arm-gnu-toolchain.mk   | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

Applied to master, thanks.

Thomas

Signature · 7 lines
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#5 lore raw

PATCH v2 2/4 boot/ti-k3-r5-loader: add new package

In reply to Xuanhao Shi via buildroot

This is a separate U-Boot package that would build the intermediate spl binary for the R5 core on TI's k3 boards. Usually, the resulting spl will be used for k3-image-gen to build the full R5 boot binary tiboot3.bin.

---
 boot/Config.in                            |  1 +
 boot/ti-k3-r5-loader/Config.in            | 13 +++++++
 boot/ti-k3-r5-loader/ti-k3-r5-loader.hash |  2 ++
 boot/ti-k3-r5-loader/ti-k3-r5-loader.mk   | 42 +++++++++++++++++++++++
 4 files changed, 58 insertions(+)
 create mode 100644 boot/ti-k3-r5-loader/Config.in
 create mode 100644 boot/ti-k3-r5-loader/ti-k3-r5-loader.hash
 create mode 100644 boot/ti-k3-r5-loader/ti-k3-r5-loader.mk
boot/Config.in +1 -0
index 40472ae07d..ce17b2df6b 100644
@@ -22,6 +22,7 @@ source "boot/s500-bootloader/Config.in"
 source "boot/shim/Config.in"
 source "boot/sun20i-d1-spl/Config.in"
 source "boot/syslinux/Config.in"
+source "boot/ti-k3-r5-loader/Config.in"
 source "boot/uboot/Config.in"
 source "boot/vexpress-firmware/Config.in"
 
boot/ti-k3-r5-loader/Config.in new file +13 -0
new file mode 100644
index 0000000000..7f5fa0b4c8
@@ -0,0 +1,13 @@
+config BR2_TARGET_TI_K3_R5_LOADER
+	bool "ti-k3-r5-loader"
+	help
+	  Separate U-Boot build for R5 cores on TI's k3 boards.
+	  Usually used to build tiboot3.bin with k3-image-gen.
+
+config BR2_TARGET_TI_K3_R5_LOADER_BOARD
+	string "Board to configure for"
+	depends on BR2_TARGET_TI_K3_R5_LOADER
+	help
+	  Specify the board to configure the bootloader for.
+	  This should be the name of a board under board/ti
+	  For example, "am64x_evm".
boot/ti-k3-r5-loader/ti-k3-r5-loader.hash new file +2 -0
new file mode 100644
index 0000000000..fb6ce7c2a6
@@ -0,0 +1,2 @@
+# Locally computed:
+sha256  6d69d5e4635cb3fa7852bf15f88ca342ef7740196e71961d3572deb58ba44bea  u-boot-2022.10-rc1.tar.bz2
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +42 -0

42 lines not on this page · raw message

Signature · 6 lines
2.17.1

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#6 lore raw

Re: [Buildroot] [PATCH v2 2/4] boot/ti-k3-r5-loader: add new package

Hi Xuanhao,

Quoted 3 lines · Xuanhao Shi

This is a separate U-Boot package that would build the intermediate spl binary for the R5 core on TI's k3 boards. Usually, the resulting spl will be used for k3-image-gen

			...will be used by k3-image-gen ^^^
Quoted 34 lines

to build the full R5 boot binary tiboot3.bin.

---
  boot/Config.in                            |  1 +
  boot/ti-k3-r5-loader/Config.in            | 13 +++++++
  boot/ti-k3-r5-loader/ti-k3-r5-loader.hash |  2 ++
  boot/ti-k3-r5-loader/ti-k3-r5-loader.mk   | 42 +++++++++++++++++++++++
  4 files changed, 58 insertions(+)

create mode 100644 boot/ti-k3-r5-loader/Config.in create mode 100644 boot/ti-k3-r5-loader/ti-k3-r5-loader.hash create mode 100644 boot/ti-k3-r5-loader/ti-k3-r5-loader.mk

boot/Config.in +1 -0
index 40472ae07d..ce17b2df6b 100644
@@ -22,6 +22,7 @@ source "boot/s500-bootloader/Config.in"
  source "boot/shim/Config.in"
  source "boot/sun20i-d1-spl/Config.in"
  source "boot/syslinux/Config.in"
+source "boot/ti-k3-r5-loader/Config.in"
  source "boot/uboot/Config.in"
  source "boot/vexpress-firmware/Config.in"
 
boot/ti-k3-r5-loader/Config.in new file +3 -0
new file mode 100644
index 0000000000..7f5fa0b4c8
@@ -0,0 +1,13 @@
+config BR2_TARGET_TI_K3_R5_LOADER
+	bool "ti-k3-r5-loader"
+	help

boot/ti-k3-r5-loader/Config.in line 13

Quoted 10 lines
boot/ti-k3-r5-loader/Config.in new file +10 -0
+	  Separate U-Boot build for R5 cores on TI's k3 boards.
+	  Usually used to build tiboot3.bin with k3-image-gen.
+
+config BR2_TARGET_TI_K3_R5_LOADER_BOARD
+	string "Board to configure for"
+	depends on BR2_TARGET_TI_K3_R5_LOADER
+	help
+	  Specify the board to configure the bootloader for.
+	  This should be the name of a board under board/ti
+	  For example, "am64x_evm".

Here ^^^ I would substitute "config" with "choice", this way everything is easier from the user point of view. On patch 4/4 you're adding 2 boards, so I think it makes sense to add every possible choice(2 for the moment).

Quoted 14 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.hash new file +2 -0
new file mode 100644
index 0000000000..fb6ce7c2a6
@@ -0,0 +1,2 @@
+# Locally computed:
+sha256  6d69d5e4635cb3fa7852bf15f88ca342ef7740196e71961d3572deb58ba44bea  u-boot-2022.10-rc1.tar.bz2
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +0 -0
new file mode 100644
index 0000000000..ee88053392

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 7

Quoted 7 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +7 -0
@@ -0,0 +1,42 @@
+################################################################################
+#
+# ti-k3-r5-loader.mk
+#
+################################################################################
+
+TI_K3_R5_LOADER_VERSION = 2022.10-rc1

-rc1 version is the possibly buggiest version you can pick. There are other 2 possible solutions:
1. use 2022.07 and backport all needed patches on a dedicated repository instead of using official u-boot repository
2. wait a bit for at least rc2/3(soon) and later when 2022.10 is released, bump it

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 17

Quoted 10 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +10 -0
+TI_K3_R5_LOADER_SITE = https://ftp.denx.de/pub/u-boot
+TI_K3_R5_LOADER_SOURCE = u-boot-$(TI_K3_R5_LOADER_VERSION).tar.bz2
+TI_K3_R5_LOADER_LICENSE = GPL-2.0+
+TI_K3_R5_LOADER_LICENSE_FILES = Licenses/gpl-2.0.txt
+TI_K3_R5_LOADER_CPE_ID_VENDOR = denx
+TI_K3_R5_LOADER_CPE_ID_PRODUCT = u-boot
+TI_K3_R5_LOADER_INSTALL_IMAGES = YES
+TI_K3_R5_LOADER_DEPENDENCIES = \
+	host-pkgconf \
+	$(BR2_MAKE_HOST_DEPENDENCY) \

What is this ^^^ needed for?

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 20

Quoted 3 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +3 -0
+	host-arm-gnu-toolchain
+
+TI_K3_R5_LOADER_MAKE = $(BR2_MAKE)

This ^^^ looks superflous, you can directly use $(BR2_MAKE) below

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 21

Quoted 1 line
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +1 -0
+TI_K3_R5_LOADER_MAKE_ENV = $(TARGET_MAKE_ENV)

Same here ^^^
In general you'd need this only if you modify it later depending on other variables like:
TI_K3_R5_LOADER_MAKE_ENV += blah blah
and so on

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 26

Quoted 5 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +5 -0
+TI_K3_R5_LOADER_KCONFIG_DEPENDENCIES = \
+	toolchain \
+	$(BR2_MAKE_HOST_DEPENDENCY) \
+	$(BR2_BISON_HOST_DEPENDENCY) \
+	$(BR2_FLEX_HOST_DEPENDENCY)

"toolchain" should imply all above _HOST_DEPENDENCY. But here you're using host-arm-gnu-toolchain, so toolchain shouldn't be needed, or yes?

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 28

Quoted 2 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +2 -0
+
+TI_K3_R5_LOADER_BOARD = $(call qstrip,$(BR2_TARGET_TI_K3_R5_LOADER_BOARD))

This ^^^ can be avoided too since you use it one line below with a suffix only

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 32

Quoted 4 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +4 -0
+TI_K3_R5_LOADER_KCONFIG_DEFCONFIG = $(TI_K3_R5_LOADER_BOARD)_r5_defconfig
+TI_K3_R5_LOADER_MAKE_OPTS += \
+	CROSS_COMPILE=$(HOST_ARM_GNU_TOOLCHAIN_INSTALL_DIR)/bin/arm-none-eabi- \
+	ARCH=arm

What is the reason why you need to use arm-gnu-toolchain to build u-boot SPL? Can you please explain it in commit log?

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 42

Quoted 10 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +10 -0
+
+define TI_K3_R5_LOADER_BUILD_CMDS
+	$(TI_K3_R5_LOADER_MAKE) -C $(@D) $(TI_K3_R5_LOADER_MAKE_OPTS)
+endef
+
+define TI_K3_R5_LOADER_INSTALL_IMAGES_CMDS
+	cp $(@D)/spl/u-boot-spl.bin $(BINARIES_DIR)/r5-u-boot-spl.bin
+endef
+
+$(eval $(kconfig-package))

Why do you use kconfig-package? You reimplement anyway BUILD_CMDS and INSTALL_IMAGES_CMDS, so generic-package should be fine.

Thanks for contributing!

Best regards

Signature · 6 lines
Giulio Benetti
Benetti Engineering sas
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#7 lore raw

Re: [Buildroot] [PATCH v2 2/4] boot/ti-k3-r5-loader: add new package

Hello,

Quoted 4 lines · On Sun, 31 Jul 2022 02:54:09 +0200 Giulio Benetti…
Quoted 4 lines
boot/ti-k3-r5-loader/Config.in new file +4 -0
+config BR2_TARGET_TI_K3_R5_LOADER_BOARD
+	string "Board to configure for"
+	depends on BR2_TARGET_TI_K3_R5_LOADER
+	help
Quoted 8 lines

boot/ti-k3-r5-loader/Config.in line 13

Quoted 3 lines
boot/ti-k3-r5-loader/Config.in new file +3 -0
+	  Specify the board to configure the bootloader for.
+	  This should be the name of a board under board/ti
+	  For example, "am64x_evm".  

Here ^^^ I would substitute "config" with "choice", this way everything is easier from the user point of view. On patch 4/4 you're adding 2 boards, so I think it makes sense to add every possible choice(2 for the moment).

I am afraid I will disagree here. For this type of option, we definitely prefer to have a free-form string rather than an exhaustive list of possible options. See U-Boot/Linux/Barebox and other packages that have configurable defconfigs.

So please keep the string option.

Quoted 8 lines
Quoted 1 line

+TI_K3_R5_LOADER_VERSION = 2022.10-rc1

-rc1 version is the possibly buggiest version you can pick. There are other 2 possible solutions:
1. use 2022.07 and backport all needed patches on a dedicated repository instead of using official u-boot repository
2. wait a bit for at least rc2/3(soon) and later when 2022.10 is released, bump it

I'd say it's fine for the time being to have -rc1, with the assumption that as soon as 2022.10 is out, we bump to it. After all, this package is very specific to TI boards, so if this -rc1 has been tested as working in this particular context, that's fine.

Quoted 4 lines
Quoted 4 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +4 -0
+TI_K3_R5_LOADER_SITE = https://ftp.denx.de/pub/u-boot
+TI_K3_R5_LOADER_SOURCE = u-boot-$(TI_K3_R5_LOADER_VERSION).tar.bz2
+TI_K3_R5_LOADER_LICENSE = GPL-2.0+
+TI_K3_R5_LOADER_LICENSE_FILES = Licenses/gpl-2.0.txt
Quoted 8 lines

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 17

Quoted 6 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +6 -0
+TI_K3_R5_LOADER_CPE_ID_VENDOR = denx
+TI_K3_R5_LOADER_CPE_ID_PRODUCT = u-boot
+TI_K3_R5_LOADER_INSTALL_IMAGES = YES
+TI_K3_R5_LOADER_DEPENDENCIES = \
+	host-pkgconf \
+	$(BR2_MAKE_HOST_DEPENDENCY) \  

What is this ^^^ needed for?

I guess this is mainly because it's copy/pasted from uboot.mk, and the explanation is:

# u-boot 2020.01+ needs make 4.0+
Quoted 5 lines

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 20

Quoted 3 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +3 -0
+	host-arm-gnu-toolchain
+
+TI_K3_R5_LOADER_MAKE = $(BR2_MAKE)  

This ^^^ looks superflous, you can directly use $(BR2_MAKE) below

This is also modeled after uboot.mk, though I would agree with you.

Quoted 8 lines

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 26

Quoted 5 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +5 -0
+TI_K3_R5_LOADER_KCONFIG_DEPENDENCIES = \
+	toolchain \
+	$(BR2_MAKE_HOST_DEPENDENCY) \
+	$(BR2_BISON_HOST_DEPENDENCY) \
+	$(BR2_FLEX_HOST_DEPENDENCY)  

"toolchain" should imply all above _HOST_DEPENDENCY. But here you're using host-arm-gnu-toolchain, so toolchain shouldn't be needed, or yes?

Again, this is modeled after uboot.mk. But indeed, here the toolchain dependency does not make sense, since CROSS_COMPILE points to the toolchain installed by host-arm-gnu-toolchain. So here, we should replace "toolchain" by "host-arm-gnu-toolchain".

Quoted 4 lines
Quoted 1 line

+TI_K3_R5_LOADER_BOARD = $(call qstrip,$(BR2_TARGET_TI_K3_R5_LOADER_BOARD))

This ^^^ can be avoided too since you use it one line below with a suffix only

I think it's fine, as it makes the following line more readable.

Quoted 7 lines

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 32

Quoted 4 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +4 -0
+TI_K3_R5_LOADER_KCONFIG_DEFCONFIG = $(TI_K3_R5_LOADER_BOARD)_r5_defconfig
+TI_K3_R5_LOADER_MAKE_OPTS += \
+	CROSS_COMPILE=$(HOST_ARM_GNU_TOOLCHAIN_INSTALL_DIR)/bin/arm-none-eabi- \
+	ARCH=arm  

What is the reason why you need to use arm-gnu-toolchain to build u-boot SPL? Can you please explain it in commit log?

This has been explained already in previous iterations of the patch series.

This package is about building a special U-Boot, which targets a Cortex-R5 core, that acts as a kind of "co-processor". Since the main processor is an ARM64 core, and an ARM64 toolchain can only be 64-bit code, we need a separate toolchain to be able to build ARM 32-bit code for the Cortex-R5 core.

Quoted 4 lines
Quoted 4 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +4 -0
+define TI_K3_R5_LOADER_BUILD_CMDS
+	$(TI_K3_R5_LOADER_MAKE) -C $(@D) $(TI_K3_R5_LOADER_MAKE_OPTS)
+endef
+
Quoted 8 lines

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 42

Quoted 5 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +5 -0
+define TI_K3_R5_LOADER_INSTALL_IMAGES_CMDS
+	cp $(@D)/spl/u-boot-spl.bin $(BINARIES_DIR)/r5-u-boot-spl.bin
+endef
+
+$(eval $(kconfig-package))  

Why do you use kconfig-package? You reimplement anyway BUILD_CMDS and INSTALL_IMAGES_CMDS, so generic-package should be fine.

kconfig-package is special, it does not implement BUILD_CMDS, INSTALL_TARGET_CMDS or INSTALL_IMAGES_CMDS. Look at uboot.mk, linux.mk, busybox.mk and others that use kconfig-package. kconfig-package only provides logic for the configuration step, with xxx-menuconfig, xxx-xconfig, xxx-savedefconfig targets and all, but implementing the BUILD_CMDS and others CMDS variables is left to the package .mk file.

Best regards,

Thomas

Signature · 7 lines
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#8 lore raw

Re: [Buildroot] [PATCH v2 2/4] boot/ti-k3-r5-loader: add new package

Hi Thomas,

Quoted 96 lines · Thomas Petazzoni via buildroot

Hello,

Quoted 4 lines · On Sun, 31 Jul 2022 02:54:09 +0200 Giulio Benetti…
Quoted 4 lines
boot/ti-k3-r5-loader/Config.in new file +4 -0
+config BR2_TARGET_TI_K3_R5_LOADER_BOARD
+	string "Board to configure for"
+	depends on BR2_TARGET_TI_K3_R5_LOADER
+	help
Quoted 8 lines

boot/ti-k3-r5-loader/Config.in line 13

Quoted 3 lines
boot/ti-k3-r5-loader/Config.in new file +3 -0
+	  Specify the board to configure the bootloader for.
+	  This should be the name of a board under board/ti
+	  For example, "am64x_evm".

Here ^^^ I would substitute "config" with "choice", this way everything is easier from the user point of view. On patch 4/4 you're adding 2 boards, so I think it makes sense to add every possible choice(2 for the moment).

I am afraid I will disagree here. For this type of option, we definitely prefer to have a free-form string rather than an exhaustive list of possible options. See U-Boot/Linux/Barebox and other packages that have configurable defconfigs.

So please keep the string option.

Quoted 8 lines
Quoted 1 line

+TI_K3_R5_LOADER_VERSION = 2022.10-rc1

-rc1 version is the possibly buggiest version you can pick. There are other 2 possible solutions:
1. use 2022.07 and backport all needed patches on a dedicated repository instead of using official u-boot repository
2. wait a bit for at least rc2/3(soon) and later when 2022.10 is released, bump it

I'd say it's fine for the time being to have -rc1, with the assumption that as soon as 2022.10 is out, we bump to it. After all, this package is very specific to TI boards, so if this -rc1 has been tested as working in this particular context, that's fine.

Quoted 4 lines
Quoted 4 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +4 -0
+TI_K3_R5_LOADER_SITE = https://ftp.denx.de/pub/u-boot
+TI_K3_R5_LOADER_SOURCE = u-boot-$(TI_K3_R5_LOADER_VERSION).tar.bz2
+TI_K3_R5_LOADER_LICENSE = GPL-2.0+
+TI_K3_R5_LOADER_LICENSE_FILES = Licenses/gpl-2.0.txt
Quoted 8 lines

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 17

Quoted 6 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +6 -0
+TI_K3_R5_LOADER_CPE_ID_VENDOR = denx
+TI_K3_R5_LOADER_CPE_ID_PRODUCT = u-boot
+TI_K3_R5_LOADER_INSTALL_IMAGES = YES
+TI_K3_R5_LOADER_DEPENDENCIES = \
+	host-pkgconf \
+	$(BR2_MAKE_HOST_DEPENDENCY) \

What is this ^^^ needed for?

I guess this is mainly because it's copy/pasted from uboot.mk, and the explanation is:

# u-boot 2020.01+ needs make 4.0+
Quoted 5 lines

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 20

Quoted 3 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +3 -0
+	host-arm-gnu-toolchain
+
+TI_K3_R5_LOADER_MAKE = $(BR2_MAKE)

This ^^^ looks superflous, you can directly use $(BR2_MAKE) below

This is also modeled after uboot.mk, though I would agree with you.

Quoted 8 lines

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 26

Quoted 5 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +5 -0
+TI_K3_R5_LOADER_KCONFIG_DEPENDENCIES = \
+	toolchain \
+	$(BR2_MAKE_HOST_DEPENDENCY) \
+	$(BR2_BISON_HOST_DEPENDENCY) \
+	$(BR2_FLEX_HOST_DEPENDENCY)

"toolchain" should imply all above _HOST_DEPENDENCY. But here you're using host-arm-gnu-toolchain, so toolchain shouldn't be needed, or yes?

Again, this is modeled after uboot.mk. But indeed, here the toolchain dependency does not make sense, since CROSS_COMPILE points to the toolchain installed by host-arm-gnu-toolchain. So here, we should replace "toolchain" by "host-arm-gnu-toolchain".

Quoted 4 lines
Quoted 1 line

+TI_K3_R5_LOADER_BOARD = $(call qstrip,$(BR2_TARGET_TI_K3_R5_LOADER_BOARD))

This ^^^ can be avoided too since you use it one line below with a suffix only

I think it's fine, as it makes the following line more readable.

Quoted 7 lines

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 32

Quoted 4 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +4 -0
+TI_K3_R5_LOADER_KCONFIG_DEFCONFIG = $(TI_K3_R5_LOADER_BOARD)_r5_defconfig
+TI_K3_R5_LOADER_MAKE_OPTS += \
+	CROSS_COMPILE=$(HOST_ARM_GNU_TOOLCHAIN_INSTALL_DIR)/bin/arm-none-eabi- \
+	ARCH=arm

What is the reason why you need to use arm-gnu-toolchain to build u-boot SPL? Can you please explain it in commit log?

Quoted 8 lines

This has been explained already in previous iterations of the patch series.

This package is about building a special U-Boot, which targets a Cortex-R5 core, that acts as a kind of "co-processor". Since the main processor is an ARM64 core, and an ARM64 toolchain can only be 64-bit code, we need a separate toolchain to be able to build ARM 32-bit code for the Cortex-R5 core.

Oh, thank you for the explanation, I didn't go so in depth, now the entire situation changes. I had to go more in depth before reviewing.

Quoted 13 lines
Quoted 4 lines
Quoted 4 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +4 -0
+define TI_K3_R5_LOADER_BUILD_CMDS
+	$(TI_K3_R5_LOADER_MAKE) -C $(@D) $(TI_K3_R5_LOADER_MAKE_OPTS)
+endef
+
Quoted 8 lines

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 42

Quoted 5 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +5 -0
+define TI_K3_R5_LOADER_INSTALL_IMAGES_CMDS
+	cp $(@D)/spl/u-boot-spl.bin $(BINARIES_DIR)/r5-u-boot-spl.bin
+endef
+
+$(eval $(kconfig-package))

Why do you use kconfig-package? You reimplement anyway BUILD_CMDS and INSTALL_IMAGES_CMDS, so generic-package should be fine.

Quoted 6 lines

kconfig-package is special, it does not implement BUILD_CMDS, INSTALL_TARGET_CMDS or INSTALL_IMAGES_CMDS. Look at uboot.mk, linux.mk, busybox.mk and others that use kconfig-package. kconfig-package only provides logic for the configuration step, with xxx-menuconfig, xxx-xconfig, xxx-savedefconfig targets and all, but implementing the BUILD_CMDS and others CMDS variables is left to the package .mk file.

Ah, so it fits perfectly for this case.

Thank you Thomas for explaining. I went too fast on reviewing.

Kind regards

Signature · 6 lines
Giulio Benetti
CEO/CTO@Benetti Engineering sas
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#9 lore raw

Re: [Buildroot] [PATCH v2 2/4] boot/ti-k3-r5-loader: add new package

In reply to Xuanhao Shi via buildroot

Hi Xuanhao, Anand, Thomas, All,

I've built with buildroot/utils/docker-run the 2 defconfigs with this package enabled and there is something missing, see below

Quoted 69 lines · Xuanhao Shi

This is a separate U-Boot package that would build the intermediate spl binary for the R5 core on TI's k3 boards. Usually, the resulting spl will be used for k3-image-gen to build the full R5 boot binary tiboot3.bin.

---
  boot/Config.in                            |  1 +
  boot/ti-k3-r5-loader/Config.in            | 13 +++++++
  boot/ti-k3-r5-loader/ti-k3-r5-loader.hash |  2 ++
  boot/ti-k3-r5-loader/ti-k3-r5-loader.mk   | 42 +++++++++++++++++++++++
  4 files changed, 58 insertions(+)

create mode 100644 boot/ti-k3-r5-loader/Config.in create mode 100644 boot/ti-k3-r5-loader/ti-k3-r5-loader.hash create mode 100644 boot/ti-k3-r5-loader/ti-k3-r5-loader.mk

boot/Config.in +1 -0
index 40472ae07d..ce17b2df6b 100644
@@ -22,6 +22,7 @@ source "boot/s500-bootloader/Config.in"
  source "boot/shim/Config.in"
  source "boot/sun20i-d1-spl/Config.in"
  source "boot/syslinux/Config.in"
+source "boot/ti-k3-r5-loader/Config.in"
  source "boot/uboot/Config.in"
  source "boot/vexpress-firmware/Config.in"
 
boot/ti-k3-r5-loader/Config.in new file +13 -0
new file mode 100644
index 0000000000..7f5fa0b4c8
@@ -0,0 +1,13 @@
+config BR2_TARGET_TI_K3_R5_LOADER
+	bool "ti-k3-r5-loader"
+	help
+	  Separate U-Boot build for R5 cores on TI's k3 boards.
+	  Usually used to build tiboot3.bin with k3-image-gen.
+
+config BR2_TARGET_TI_K3_R5_LOADER_BOARD
+	string "Board to configure for"
+	depends on BR2_TARGET_TI_K3_R5_LOADER
+	help
+	  Specify the board to configure the bootloader for.
+	  This should be the name of a board under board/ti
+	  For example, "am64x_evm".
boot/ti-k3-r5-loader/ti-k3-r5-loader.hash new file +2 -0
new file mode 100644
index 0000000000..fb6ce7c2a6
@@ -0,0 +1,2 @@
+# Locally computed:
+sha256  6d69d5e4635cb3fa7852bf15f88ca342ef7740196e71961d3572deb58ba44bea  u-boot-2022.10-rc1.tar.bz2
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +8 -0
new file mode 100644
index 0000000000..ee88053392
@@ -0,0 +1,42 @@
+################################################################################
+#
+# ti-k3-r5-loader.mk
+#
+################################################################################
+
+TI_K3_R5_LOADER_VERSION = 2022.10-rc1
+TI_K3_R5_LOADER_SITE = https://ftp.denx.de/pub/u-boot

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 18

Quoted 10 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +10 -0
+TI_K3_R5_LOADER_SOURCE = u-boot-$(TI_K3_R5_LOADER_VERSION).tar.bz2
+TI_K3_R5_LOADER_LICENSE = GPL-2.0+
+TI_K3_R5_LOADER_LICENSE_FILES = Licenses/gpl-2.0.txt
+TI_K3_R5_LOADER_CPE_ID_VENDOR = denx
+TI_K3_R5_LOADER_CPE_ID_PRODUCT = u-boot
+TI_K3_R5_LOADER_INSTALL_IMAGES = YES
+TI_K3_R5_LOADER_DEPENDENCIES = \
+	host-pkgconf \
+	$(BR2_MAKE_HOST_DEPENDENCY) \
+	host-arm-gnu-toolchain

host-openssl is required on this uboot version so please add it here ^^^

Quoted 4 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +4 -0
+
+TI_K3_R5_LOADER_MAKE = $(BR2_MAKE)
+TI_K3_R5_LOADER_MAKE_ENV = $(TARGET_MAKE_ENV)
+TI_K3_R5_LOADER_KCONFIG_DEPENDENCIES = \

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 32

Quoted 10 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +10 -0
+	toolchain \
+	$(BR2_MAKE_HOST_DEPENDENCY) \
+	$(BR2_BISON_HOST_DEPENDENCY) \
+	$(BR2_FLEX_HOST_DEPENDENCY)
+
+TI_K3_R5_LOADER_BOARD = $(call qstrip,$(BR2_TARGET_TI_K3_R5_LOADER_BOARD))
+TI_K3_R5_LOADER_KCONFIG_DEFCONFIG = $(TI_K3_R5_LOADER_BOARD)_r5_defconfig
+TI_K3_R5_LOADER_MAKE_OPTS += \
+	CROSS_COMPILE=$(HOST_ARM_GNU_TOOLCHAIN_INSTALL_DIR)/bin/arm-none-eabi- \
+	ARCH=arm

host-openssl is used to build host tools so here you need to pass to TI_K3_R5_LOADER_MAKE_OPTS also:
HOSTCC="$(HOSTCC) $(subst -I/,-isystem /,$(subst -I /,-isystem /,$(HOST_CFLAGS)))" \
HOSTLDFLAGS="$(HOST_LDFLAGS)"
the same way u-boot already does

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 34

Quoted 2 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +2 -0
+
+define TI_K3_R5_LOADER_BUILD_CMDS

Here you need:
$(TARGET_CONFIGURE_OPTS) \
while calling make, otherwise host bison and flex won't be found.

You have encountered these problems because you had bison, flex and openssl installed into your pc, but we need to test the worst case where hosts don't provide such utility, so Buildroot can build them.
This to reduce the initial dependencies for Buildroot.

boot/ti-k3-r5-loader/ti-k3-r5-loader.mk line 42

Quoted 8 lines
boot/ti-k3-r5-loader/ti-k3-r5-loader.mk new file +8 -0
+	$(TI_K3_R5_LOADER_MAKE) -C $(@D) $(TI_K3_R5_LOADER_MAKE_OPTS)
+endef
+
+define TI_K3_R5_LOADER_INSTALL_IMAGES_CMDS
+	cp $(@D)/spl/u-boot-spl.bin $(BINARIES_DIR)/r5-u-boot-spl.bin
+endef
+
+$(eval $(kconfig-package))

Wait for V2 with the rest of things I've listed except what Thomas pointed.

Thank you!

Best regards

Signature · 6 lines
Giulio Benetti
Benetti Engineering sas
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#10 lore raw

PATCH v2 3/4 boot/ti-k3-image-gen: add new package

In reply to Xuanhao Shi via buildroot

This is the image generator that builds the full boot binary, tiboot3.bin, for the R5 core on TI's k3 devices.
This requires the R5 spl output from the ti-k3-r5-loader package.

https://git.ti.com/cgit/k3-image-gen/k3-image-gen

---
 boot/Config.in                            |  1 +
 boot/ti-k3-image-gen/Config.in            | 24 +++++++++++++++++
 boot/ti-k3-image-gen/ti-k3-image-gen.hash |  2 ++
 boot/ti-k3-image-gen/ti-k3-image-gen.mk   | 33 +++++++++++++++++++++++
 4 files changed, 60 insertions(+)
 create mode 100644 boot/ti-k3-image-gen/Config.in
 create mode 100644 boot/ti-k3-image-gen/ti-k3-image-gen.hash
 create mode 100644 boot/ti-k3-image-gen/ti-k3-image-gen.mk
boot/Config.in +1 -0
index ce17b2df6b..1b25bacfee 100644
@@ -22,6 +22,7 @@ source "boot/s500-bootloader/Config.in"
 source "boot/shim/Config.in"
 source "boot/sun20i-d1-spl/Config.in"
 source "boot/syslinux/Config.in"
+source "boot/ti-k3-image-gen/Config.in"
 source "boot/ti-k3-r5-loader/Config.in"
 source "boot/uboot/Config.in"
 source "boot/vexpress-firmware/Config.in"
boot/ti-k3-image-gen/Config.in new file +24 -0
new file mode 100644
index 0000000000..0b66e1c8a5
@@ -0,0 +1,24 @@
+config BR2_TARGET_TI_K3_IMAGE_GEN
+	bool "ti-k3-image-gen"
+	select BR2_TARGET_TI_K3_R5_LOADER
+	help
+	  Using TI's k3-image-gen to build a separate bare metal
+	  boot binary from a separate spl. Currently supports
+	  version 08.04.00.005 as default.
+
+	  https://git.ti.com/cgit/k3-image-gen/k3-image-gen/
+
+config BR2_TARGET_TI_K3_IMAGE_GEN_SOC
+	string "SOC type for image gen"
+	depends on BR2_TARGET_TI_K3_IMAGE_GEN
+	help
+	  The target SoC option for image gen.
+	  For example, "am64x" for AM64X boards.
+
+config BR2_TARGET_TI_K3_IMAGE_GEN_CONFIG
+	string "CONFIG type for image gen"
+	depends on BR2_TARGET_TI_K3_IMAGE_GEN
+	help
+	  The board config option for image gen.
+	  Usually "sk" or "evm".
+
boot/ti-k3-image-gen/ti-k3-image-gen.hash new file +2 -0
new file mode 100644
index 0000000000..e307a02a67
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256  e585dc868ada21ef3389159541d669b88bc406b453470e92da85d9222d271c96  k3-image-gen-08.04.00.005.tar.gz
boot/ti-k3-image-gen/ti-k3-image-gen.mk new file +33 -0
new file mode 100644
index 0000000000..4892016fe1
@@ -0,0 +1,33 @@
+################################################################################
+#
+# ti-k3-image-gen
+#
+################################################################################
+
+TI_K3_IMAGE_GEN_VERSION = 08.04.00.005
+TI_K3_IMAGE_GEN_SITE = https://git.ti.com/cgit/k3-image-gen/k3-image-gen/snapshot
+TI_K3_IMAGE_GEN_SOURCE = k3-image-gen-$(TI_K3_IMAGE_GEN_VERSION).tar.gz
+TI_K3_IMAGE_GEN_LICENSE = BSD-3-Clause
+TI_K3_IMAGE_GEN_LICENSE_FILES = system-firmware-image-gen-1.0-manifest.html
+TI_K3_IMAGE_GEN_INSTALL_IMAGES = YES
+TI_K3_IMAGE_GEN_DEPENDENCIES = host-arm-gnu-toolchain ti-k3-r5-loader
+TI_K3_IMAGE_GEN_MAKE = $(BR2_MAKE)
+TI_K3_IMAGE_GEN_SOC = $(call qstrip,$(BR2_TARGET_TI_K3_IMAGE_GEN_SOC))
+TI_K3_IMAGE_GEN_CONFIG = $(call qstrip,$(BR2_TARGET_TI_K3_IMAGE_GEN_CONFIG))
+TI_K3_IMAGE_GEN_MAKE_OPTS = \
+	SOC=$(TI_K3_IMAGE_GEN_SOC) \
+	CONFIG=$(TI_K3_IMAGE_GEN_CONFIG) \
+	CROSS_COMPILE=$(HOST_ARM_GNU_TOOLCHAIN_INSTALL_DIR)/bin/arm-none-eabi- \
+	SBL=$(BINARIES_DIR)/r5-u-boot-spl.bin \
+	O=$(BINARIES_DIR) \
+	BIN_DIR=$(BINARIES_DIR) 
+
+define TI_K3_IMAGE_GEN_BUILD_CMDS
+	$(TI_K3_IMAGE_GEN_MAKE) -C $(@D) $(TI_K3_IMAGE_GEN_MAKE_OPTS)
+endef
+
+define TI_K3_IMAGE_GEN_INSTALL_IMAGES_CMDS
+	cp $(@D)/tiboot3.bin $(BINARIES_DIR)
+endef
+
+$(eval $(generic-package))
Signature · 6 lines
2.17.1

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#11 lore raw

Re: [Buildroot] [PATCH v2 3/4] boot/ti-k3-image-gen: add new package

Hi Xuanhao,

Quoted 34 lines · Xuanhao Shi

This is the image generator that builds the full boot binary, tiboot3.bin, for the R5 core on TI's k3 devices.
This requires the R5 spl output from the ti-k3-r5-loader package.

https://git.ti.com/cgit/k3-image-gen/k3-image-gen

---
  boot/Config.in                            |  1 +
  boot/ti-k3-image-gen/Config.in            | 24 +++++++++++++++++
  boot/ti-k3-image-gen/ti-k3-image-gen.hash |  2 ++
  boot/ti-k3-image-gen/ti-k3-image-gen.mk   | 33 +++++++++++++++++++++++
  4 files changed, 60 insertions(+)

create mode 100644 boot/ti-k3-image-gen/Config.in create mode 100644 boot/ti-k3-image-gen/ti-k3-image-gen.hash create mode 100644 boot/ti-k3-image-gen/ti-k3-image-gen.mk

boot/Config.in +1 -0
index ce17b2df6b..1b25bacfee 100644
@@ -22,6 +22,7 @@ source "boot/s500-bootloader/Config.in"
  source "boot/shim/Config.in"
  source "boot/sun20i-d1-spl/Config.in"
  source "boot/syslinux/Config.in"
+source "boot/ti-k3-image-gen/Config.in"
  source "boot/ti-k3-r5-loader/Config.in"
  source "boot/uboot/Config.in"
  source "boot/vexpress-firmware/Config.in"
boot/ti-k3-image-gen/Config.in new file +0 -0
new file mode 100644
index 0000000000..0b66e1c8a5

boot/ti-k3-image-gen/Config.in line 5

Quoted 5 lines
boot/ti-k3-image-gen/Config.in new file +5 -0
@@ -0,0 +1,24 @@
+config BR2_TARGET_TI_K3_IMAGE_GEN
+	bool "ti-k3-image-gen"
+	select BR2_TARGET_TI_K3_R5_LOADER
+	help
+	  Using TI's k3-image-gen to build a separate bare metal

s/Using/Use

boot/ti-k3-image-gen/Config.in line 16

Quoted 11 lines
boot/ti-k3-image-gen/Config.in new file +11 -0
+	  boot binary from a separate spl. Currently supports
+	  version 08.04.00.005 as default.
+
+	  https://git.ti.com/cgit/k3-image-gen/k3-image-gen/
+
+config BR2_TARGET_TI_K3_IMAGE_GEN_SOC
+	string "SOC type for image gen"
+	depends on BR2_TARGET_TI_K3_IMAGE_GEN
+	help
+	  The target SoC option for image gen.
+	  For example, "am64x" for AM64X boards.

As in previous patch I would add a "choice" instead of a "config"

boot/ti-k3-image-gen/Config.in line 23

Quoted 7 lines
boot/ti-k3-image-gen/Config.in new file +7 -0
+
+config BR2_TARGET_TI_K3_IMAGE_GEN_CONFIG
+	string "CONFIG type for image gen"
+	depends on BR2_TARGET_TI_K3_IMAGE_GEN
+	help
+	  The board config option for image gen.
+	  Usually "sk" or "evm".

Ditto

Quoted 18 lines
boot/ti-k3-image-gen/Config.in new file +1 -0
+
boot/ti-k3-image-gen/ti-k3-image-gen.hash new file +2 -0
new file mode 100644
index 0000000000..e307a02a67
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256  e585dc868ada21ef3389159541d669b88bc406b453470e92da85d9222d271c96  k3-image-gen-08.04.00.005.tar.gz
boot/ti-k3-image-gen/ti-k3-image-gen.mk new file +3 -0
new file mode 100644
index 0000000000..4892016fe1
@@ -0,0 +1,33 @@
+################################################################################
+#
+# ti-k3-image-gen

boot/ti-k3-image-gen/ti-k3-image-gen.mk line 13

Quoted 10 lines
boot/ti-k3-image-gen/ti-k3-image-gen.mk new file +10 -0
+#
+################################################################################
+
+TI_K3_IMAGE_GEN_VERSION = 08.04.00.005
+TI_K3_IMAGE_GEN_SITE = https://git.ti.com/cgit/k3-image-gen/k3-image-gen/snapshot
+TI_K3_IMAGE_GEN_SOURCE = k3-image-gen-$(TI_K3_IMAGE_GEN_VERSION).tar.gz
+TI_K3_IMAGE_GEN_LICENSE = BSD-3-Clause
+TI_K3_IMAGE_GEN_LICENSE_FILES = system-firmware-image-gen-1.0-manifest.html
+TI_K3_IMAGE_GEN_INSTALL_IMAGES = YES
+TI_K3_IMAGE_GEN_DEPENDENCIES = host-arm-gnu-toolchain ti-k3-r5-loader

host-arm-gnu-toolchain is already a dependency of ti-k3-r5-loader so it should be already built a this point

boot/ti-k3-image-gen/ti-k3-image-gen.mk line 14

Quoted 1 line
boot/ti-k3-image-gen/ti-k3-image-gen.mk new file +1 -0
+TI_K3_IMAGE_GEN_MAKE = $(BR2_MAKE)

Use $(BR2_MAKE) directly

Quoted 9 lines
boot/ti-k3-image-gen/ti-k3-image-gen.mk new file +9 -0
+TI_K3_IMAGE_GEN_SOC = $(call qstrip,$(BR2_TARGET_TI_K3_IMAGE_GEN_SOC))
+TI_K3_IMAGE_GEN_CONFIG = $(call qstrip,$(BR2_TARGET_TI_K3_IMAGE_GEN_CONFIG))
+TI_K3_IMAGE_GEN_MAKE_OPTS = \
+	SOC=$(TI_K3_IMAGE_GEN_SOC) \
+	CONFIG=$(TI_K3_IMAGE_GEN_CONFIG) \
+	CROSS_COMPILE=$(HOST_ARM_GNU_TOOLCHAIN_INSTALL_DIR)/bin/arm-none-eabi- \
+	SBL=$(BINARIES_DIR)/r5-u-boot-spl.bin \
+	O=$(BINARIES_DIR) \
+	BIN_DIR=$(BINARIES_DIR)

boot/ti-k3-image-gen/ti-k3-image-gen.mk line 33

Quoted 10 lines
boot/ti-k3-image-gen/ti-k3-image-gen.mk new file +10 -0
+
+define TI_K3_IMAGE_GEN_BUILD_CMDS
+	$(TI_K3_IMAGE_GEN_MAKE) -C $(@D) $(TI_K3_IMAGE_GEN_MAKE_OPTS)
+endef
+
+define TI_K3_IMAGE_GEN_INSTALL_IMAGES_CMDS
+	cp $(@D)/tiboot3.bin $(BINARIES_DIR)
+endef
+
+$(eval $(generic-package))

I didn't give a build to these patches so I'll give you more feedback but it would be very helpful if you already answer me to my various questions.

Thank you!

Best regards

Signature · 6 lines
Giulio Benetti
Benetti Engineering sas
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#12 lore raw

Re: [Buildroot] [PATCH v2 3/4] boot/ti-k3-image-gen: add new package

Hello,

Quoted 8 lines · On Sun, 31 Jul 2022 03:04:28 +0200 Giulio Benetti…

boot/ti-k3-image-gen/Config.in line 16

Quoted 6 lines
boot/ti-k3-image-gen/Config.in new file +6 -0
+config BR2_TARGET_TI_K3_IMAGE_GEN_SOC
+	string "SOC type for image gen"
+	depends on BR2_TARGET_TI_K3_IMAGE_GEN
+	help
+	  The target SoC option for image gen.
+	  For example, "am64x" for AM64X boards.  

As in previous patch I would add a "choice" instead of a "config"

As explained on a previous patch, it's fine to keep a free-form string here.

Quoted 8 lines

boot/ti-k3-image-gen/Config.in line 23

Quoted 6 lines
boot/ti-k3-image-gen/Config.in new file +6 -0
+config BR2_TARGET_TI_K3_IMAGE_GEN_CONFIG
+	string "CONFIG type for image gen"
+	depends on BR2_TARGET_TI_K3_IMAGE_GEN
+	help
+	  The board config option for image gen.
+	  Usually "sk" or "evm".  

Ditto

And here (and especially here actually, we clearly don't want to have an explicit list of all boards in Buildroot, it means that people creating their own boards wouldn't be able to use this package, as their board would not be listed here).

Quoted 10 lines

boot/ti-k3-image-gen/ti-k3-image-gen.mk line 13

Quoted 7 lines
boot/ti-k3-image-gen/ti-k3-image-gen.mk new file +7 -0
+TI_K3_IMAGE_GEN_VERSION = 08.04.00.005
+TI_K3_IMAGE_GEN_SITE = https://git.ti.com/cgit/k3-image-gen/k3-image-gen/snapshot
+TI_K3_IMAGE_GEN_SOURCE = k3-image-gen-$(TI_K3_IMAGE_GEN_VERSION).tar.gz
+TI_K3_IMAGE_GEN_LICENSE = BSD-3-Clause
+TI_K3_IMAGE_GEN_LICENSE_FILES = system-firmware-image-gen-1.0-manifest.html
+TI_K3_IMAGE_GEN_INSTALL_IMAGES = YES
+TI_K3_IMAGE_GEN_DEPENDENCIES = host-arm-gnu-toolchain ti-k3-r5-loader  

host-arm-gnu-toolchain is already a dependency of ti-k3-r5-loader so it should be already built a this point

It seems that ti-k3-image-gen also uses this bare-metal toolchain directly, so it's fine and correct to have this dependency.

Best regards,

Thomas

Signature · 7 lines
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#13 lore raw

PATCH v2 4/4 board/ti: add new boards

In reply to Xuanhao Shi via buildroot

Adds support for ti's am62x_sk board and am64x_sk board. Adds the configs for generating output sdcard image. Adds the defconfigs for am62x_sk and am64x_sk. Adds to DEVELOPERS.

---
 DEVELOPERS                     | 16 ++++++++++++
 board/ti/am62x_sk/genimage.cfg | 27 ++++++++++++++++++++
 board/ti/am62x_sk/readme.txt   | 46 ++++++++++++++++++++++++++++++++++
 board/ti/am64x_sk/genimage.cfg | 27 ++++++++++++++++++++
 board/ti/am64x_sk/readme.txt   | 46 ++++++++++++++++++++++++++++++++++
 configs/am62x_sk_defconfig     | 45 +++++++++++++++++++++++++++++++++
 configs/am64x_sk_defconfig     | 45 +++++++++++++++++++++++++++++++++
 7 files changed, 252 insertions(+)
 create mode 100644 board/ti/am62x_sk/genimage.cfg
 create mode 100644 board/ti/am62x_sk/readme.txt
 create mode 100644 board/ti/am64x_sk/genimage.cfg
 create mode 100644 board/ti/am64x_sk/readme.txt
 create mode 100644 configs/am62x_sk_defconfig
 create mode 100644 configs/am64x_sk_defconfig
DEVELOPERS +16 -0
index cb98c3883d..63689f54a0 100644
@@ -127,6 +127,14 @@ F:	package/dcron/
 F:	package/libxmlrpc/
 F:	package/python-docopt/
 
+N:	Anand Gadiyar <[email protected]>
+F:	board/ti/am62x_sk/
+F:	board/ti/am64x_sk/
+F:	boot/ti-k3-image-gen/
+F:	boot/ti-k3-r5-loader/
+F:	configs/am62x_sk_defconfig
+F:	configs/am64x_sk_defconfig
+
 N:	André Zwing <[email protected]>
 F:	package/libkrb5/
 F:	package/openal/
@@ -3004,6 +3012,14 @@ F:	package/python-pyusb/
 N:	Wojciech Niziński <[email protected]>
 F:	package/fwup/
 
+N:	Xuanhao Shi <[email protected]>
+F:	board/ti/am62x_sk/
+F:	board/ti/am64x_sk/
+F:	boot/ti-k3-image-gen/
+F:	boot/ti-k3-r5-loader/
+F:	configs/am62x_sk_defconfig
+F:	configs/am64x_sk_defconfig
+
 N:	Yair Ben Avraham <[email protected]>
 F:	package/casync/
 F:	package/gloox/
board/ti/am62x_sk/genimage.cfg new file +27 -0
new file mode 100644
index 0000000000..26304fe98f
@@ -0,0 +1,27 @@
+image boot.vfat {
+	vfat {
+		files = {
+			"tiboot3.bin",
+			"tispl.bin",
+			"u-boot.img",
+		}
+	}
+
+	size = 16M
+}
+
+image sdcard.img {
+	hdimage {
+	}
+
+	partition u-boot {
+		partition-type = 0xC
+		bootable = "true"
+		image = "boot.vfat"
+	}
+
+	partition rootfs {
+		partition-type = 0x83
+		image = "rootfs.ext4"
+	}
+}
board/ti/am62x_sk/readme.txt new file +46 -0

46 lines not on this page · raw message

board/ti/am64x_sk/genimage.cfg new file +27 -0
new file mode 100644
index 0000000000..26304fe98f
@@ -0,0 +1,27 @@
+image boot.vfat {
+	vfat {
+		files = {
+			"tiboot3.bin",
+			"tispl.bin",
+			"u-boot.img",
+		}
+	}
+
+	size = 16M
+}
+
+image sdcard.img {
+	hdimage {
+	}
+
+	partition u-boot {
+		partition-type = 0xC
+		bootable = "true"
+		image = "boot.vfat"
+	}
+
+	partition rootfs {
+		partition-type = 0x83
+		image = "rootfs.ext4"
+	}
+}
board/ti/am64x_sk/readme.txt new file +46 -0

46 lines not on this page · raw message

configs/am62x_sk_defconfig new file +45 -0

45 lines not on this page · raw message

configs/am64x_sk_defconfig new file +45 -0

45 lines not on this page · raw message

Signature · 6 lines
2.17.1

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#14 lore raw

Re: [Buildroot] [PATCH v2 4/4] board/ti: add new boards

Hi Xuanhao, Anand(sorry I didn't mention you before),

Quoted 1 line · Xuanhao Shi

Adds support for ti's am62x_sk board and am64x_sk board.

Please split this patch into 2 patches, one for each board

Quoted 3 lines

Adds the configs for generating output sdcard image. Adds the defconfigs for am62x_sk and am64x_sk. Adds to DEVELOPERS.

Can you please add for the 2 upcoming board patches a description of the boards, which IOs they have, what they are meant for and an URL to the product? You can look at a git log of any other recent board commit.

Quoted 22 lines
---
  DEVELOPERS                     | 16 ++++++++++++
  board/ti/am62x_sk/genimage.cfg | 27 ++++++++++++++++++++
  board/ti/am62x_sk/readme.txt   | 46 ++++++++++++++++++++++++++++++++++
  board/ti/am64x_sk/genimage.cfg | 27 ++++++++++++++++++++
  board/ti/am64x_sk/readme.txt   | 46 ++++++++++++++++++++++++++++++++++
  configs/am62x_sk_defconfig     | 45 +++++++++++++++++++++++++++++++++
  configs/am64x_sk_defconfig     | 45 +++++++++++++++++++++++++++++++++
  7 files changed, 252 insertions(+)

create mode 100644 board/ti/am62x_sk/genimage.cfg create mode 100644 board/ti/am62x_sk/readme.txt create mode 100644 board/ti/am64x_sk/genimage.cfg create mode 100644 board/ti/am64x_sk/readme.txt create mode 100644 configs/am62x_sk_defconfig create mode 100644 configs/am64x_sk_defconfig

DEVELOPERS +0 -0
index cb98c3883d..63689f54a0 100644

DEVELOPERS F: package/dcron/ · line 134

Quoted 8 lines
DEVELOPERS +5 -0
@@ -127,6 +127,14 @@ F:	package/dcron/
  F:	package/libxmlrpc/
  F:	package/python-docopt/
 
+N:	Anand Gadiyar <[email protected]>
+F:	board/ti/am62x_sk/
+F:	board/ti/am64x_sk/
+F:	boot/ti-k3-image-gen/
+F:	boot/ti-k3-r5-loader/

The 2 lines above should be part of the previous patches for the 2 packages

Quoted 7 lines
DEVELOPERS +3 -0
+F:	configs/am62x_sk_defconfig
+F:	configs/am64x_sk_defconfig
+
  N:	André Zwing <[email protected]>
  F:	package/libkrb5/
  F:	package/openal/

DEVELOPERS F: package/python-pyusb/ · line 3019

Quoted 8 lines
DEVELOPERS +5 -0
@@ -3004,6 +3012,14 @@ F:	package/python-pyusb/
  N:	Wojciech Niziński <[email protected]>
  F:	package/fwup/
 
+N:	Xuanhao Shi <[email protected]>
+F:	board/ti/am62x_sk/
+F:	board/ti/am64x_sk/
+F:	boot/ti-k3-image-gen/
+F:	boot/ti-k3-r5-loader/

Ditto

Quoted 79 lines
DEVELOPERS +3 -0
+F:	configs/am62x_sk_defconfig
+F:	configs/am64x_sk_defconfig
+
  N:	Yair Ben Avraham <[email protected]>
  F:	package/casync/
  F:	package/gloox/
board/ti/am62x_sk/genimage.cfg new file +27 -0
new file mode 100644
index 0000000000..26304fe98f
@@ -0,0 +1,27 @@
+image boot.vfat {
+	vfat {
+		files = {
+			"tiboot3.bin",
+			"tispl.bin",
+			"u-boot.img",
+		}
+	}
+
+	size = 16M
+}
+
+image sdcard.img {
+	hdimage {
+	}
+
+	partition u-boot {
+		partition-type = 0xC
+		bootable = "true"
+		image = "boot.vfat"
+	}
+
+	partition rootfs {
+		partition-type = 0x83
+		image = "rootfs.ext4"
+	}
+}
board/ti/am62x_sk/readme.txt new file +34 -0
new file mode 100644
index 0000000000..aa66aa79b3
@@ -0,0 +1,46 @@
+Texas Instuments AM62x Evaluation Modules
+
+Description
+===========
+
+These configurations will build a complete image and
+device tree blobs for the the TI AM62x_sk board.
+
+How to build it
+===============
+
+Select the default configuration for the target:
+$ make am62x_sk_defconfig
+
+Optional: modify the configuration:
+$ make menuconfig
+
+Build:
+$ make
+
+Result of the build:
+===================
+output/images/
++-- soc
++-- ti-connectivity
++-- bl31.bin
++-- boot.vfat
++-- Image
++-- k3-am625-sk.dtb
++-- r5-u-boot-spl.bin
++-- rootfs.ext2
++-- rootfs.ext4
++-- rootfs.tar
++-- sdcard.img

board/ti/am62x_sk/readme.txt line 44

Quoted 10 lines
board/ti/am62x_sk/readme.txt new file +10 -0
++-- tee.bin
++-- tee-header_v2.bin
++-- tee-pageable_v2.bin
++-- tee-pager_v2.bin
++-- tiboot3.bin
++-- tispl.bin
++-- u-boot.img
+
+To copy the image file to the sdcard use dd:
+$ dd if=output/images/sdcard.img of=/dev/XXX

s/XXX/sdX

board/ti/am62x_sk/readme.txt line 46

Quoted 2 lines
board/ti/am62x_sk/readme.txt new file +2 -0
+
+

Do we need any special cable connection like USB or uart?

Quoted 75 lines
board/ti/am64x_sk/genimage.cfg new file +27 -0
new file mode 100644
index 0000000000..26304fe98f
@@ -0,0 +1,27 @@
+image boot.vfat {
+	vfat {
+		files = {
+			"tiboot3.bin",
+			"tispl.bin",
+			"u-boot.img",
+		}
+	}
+
+	size = 16M
+}
+
+image sdcard.img {
+	hdimage {
+	}
+
+	partition u-boot {
+		partition-type = 0xC
+		bootable = "true"
+		image = "boot.vfat"
+	}
+
+	partition rootfs {
+		partition-type = 0x83
+		image = "rootfs.ext4"
+	}
+}
board/ti/am64x_sk/readme.txt new file +36 -0
new file mode 100644
index 0000000000..a0b4929dc6
@@ -0,0 +1,46 @@
+Texas Instuments AM64x Evaluation Modules
+
+Description
+===========
+
+These configurations will build a complete image and
+device tree blobs for the the TI AM64x_sk board.
+
+How to build it
+===============
+
+Select the default configuration for the target:
+$ make am64x_sk_defconfig
+
+Optional: modify the configuration:
+$ make menuconfig
+
+Build:
+$ make
+
+Result of the build:
+===================
+output/images/
++-- soc
++-- ti-connectivity
++-- bl31.bin
++-- boot.vfat
++-- Image
++-- k3-am642-sk.dtb
++-- r5-u-boot-spl.bin
++-- rootfs.ext2
++-- rootfs.ext4
++-- rootfs.tar
++-- sdcard.img
++-- tee.bin
++-- tee-header_v2.bin

board/ti/am64x_sk/readme.txt line 46

Quoted 10 lines
board/ti/am64x_sk/readme.txt new file +10 -0
++-- tee-pageable_v2.bin
++-- tee-pager_v2.bin
++-- tiboot3.bin
++-- tispl.bin
++-- u-boot.img
+
+To copy the image file to the sdcard use dd:
+$ dd if=output/images/sdcard.img of=/dev/XXX
+
+

Ditto

configs/am62x_sk_defconfig line 2

Quoted 8 lines
configs/am62x_sk_defconfig new file +2 -0
new file mode 100644
index 0000000000..752feb8634
@@ -0,0 +1,45 @@
+BR2_aarch64=y
+BR2_TOOLCHAIN_BUILDROOT_GLIBC=y

Is this mandatory ^^^? Or can we let the user to choose the libc?

configs/am62x_sk_defconfig line 7

Quoted 5 lines
configs/am62x_sk_defconfig new file +5 -0
+BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/ti/am64x_sk/genimage.cfg"
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.19-rc8"

We're very close to 5.19 release, so I ask you to send the final patches with 5.19

configs/am62x_sk_defconfig line 16

Quoted 9 lines
configs/am62x_sk_defconfig new file +9 -0
+BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+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_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
+BR2_TARGET_ROOTFS_EXT2_SIZE="256M"

Do we need such big rootfs? Usually 120M is the used default.

Quoted 18 lines
configs/am62x_sk_defconfig new file +18 -0
+BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.7.0"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="k3"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_TARGET_BOARD="lite"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_OPTEE=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="SPD=opteed"
+BR2_TARGET_OPTEE_OS=y
+BR2_TARGET_OPTEE_OS_CUSTOM_GIT=y
+BR2_TARGET_OPTEE_OS_CUSTOM_REPO_URL="https://github.com/OP-TEE/optee_os.git"
+BR2_TARGET_OPTEE_OS_CUSTOM_REPO_VERSION="3.18.0"
+BR2_TARGET_OPTEE_OS_NEEDS_PYTHON_CRYPTOGRAPHY=y
+BR2_TARGET_OPTEE_OS_PLATFORM="k3"
+BR2_TARGET_TI_K3_IMAGE_GEN=y
+BR2_TARGET_TI_K3_IMAGE_GEN_SOC="am62x"
+BR2_TARGET_TI_K3_IMAGE_GEN_CONFIG="evm"
+BR2_TARGET_TI_K3_R5_LOADER_BOARD="am62x_evm"
+BR2_TARGET_UBOOT=y

configs/am62x_sk_defconfig line 44

Quoted 10 lines
configs/am62x_sk_defconfig new file +10 -0
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.10-rc1"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="am62x_evm_a53"
+BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
+# BR2_TARGET_UBOOT_FORMAT_BIN is not set
+BR2_TARGET_UBOOT_FORMAT_IMG=y
+BR2_TARGET_UBOOT_SPL=y
+BR2_TARGET_UBOOT_SPL_NAME="tispl.bin"
+BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="TEE=$(BINARIES_DIR)/tee-pager_v2.bin"

I don't know the boot-flow of this processor, so you need the SPL and then again another SPL and u-boot too?

Quoted 42 lines
configs/am62x_sk_defconfig new file +1 -0
+BR2_PACKAGE_HOST_GENIMAGE=y
configs/am64x_sk_defconfig new file +35 -0
new file mode 100644
index 0000000000..22d49288cb
@@ -0,0 +1,45 @@
+BR2_aarch64=y
+BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
+BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/ti/am64x_sk/genimage.cfg"
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.19-rc8"
+BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+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_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
+BR2_TARGET_ROOTFS_EXT2_SIZE="256M"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.7.0"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="k3"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_TARGET_BOARD="lite"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_OPTEE=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="SPD=opteed"
+BR2_TARGET_OPTEE_OS=y
+BR2_TARGET_OPTEE_OS_CUSTOM_GIT=y
+BR2_TARGET_OPTEE_OS_CUSTOM_REPO_URL="https://github.com/OP-TEE/optee_os.git"
+BR2_TARGET_OPTEE_OS_CUSTOM_REPO_VERSION="3.18.0"
+BR2_TARGET_OPTEE_OS_NEEDS_PYTHON_CRYPTOGRAPHY=y
+BR2_TARGET_OPTEE_OS_PLATFORM="k3"
+BR2_TARGET_TI_K3_IMAGE_GEN=y
+BR2_TARGET_TI_K3_IMAGE_GEN_SOC="am64x"
+BR2_TARGET_TI_K3_IMAGE_GEN_CONFIG="evm"
+BR2_TARGET_TI_K3_R5_LOADER_BOARD="am64x_evm"
+BR2_TARGET_UBOOT=y
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y

configs/am64x_sk_defconfig line 45

Quoted 10 lines
configs/am64x_sk_defconfig new file +10 -0
+BR2_TARGET_UBOOT_CUSTOM_VERSION=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.10-rc1"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="am64x_evm_a53"
+BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
+# BR2_TARGET_UBOOT_FORMAT_BIN is not set
+BR2_TARGET_UBOOT_FORMAT_IMG=y
+BR2_TARGET_UBOOT_SPL=y
+BR2_TARGET_UBOOT_SPL_NAME="tispl.bin"
+BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="TEE=$(BINARIES_DIR)/tee-pager_v2.bin"
+BR2_PACKAGE_HOST_GENIMAGE=y

For all this defconfig see above.

Thank you!

Best regards

Signature · 6 lines
Giulio Benetti
Benetti Engineering sas
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#15 lore raw

Re: [Buildroot] [PATCH v2 4/4] board/ti: add new boards

Hello Giulio

Quoted 2 lines · On Sun, 31 Jul 2022 03:15:17 +0200 Giulio Benetti…

I don't know the boot-flow of this processor, so you need the SPL and then again another SPL and u-boot too?

This was explained in previous iterations of the patch series, and to some extent in the commit log of PATCH 2/4 (though perhaps not very clearly).

This SoC is kind of special. It needs a U-Boot that runs on the Cortex-A cores, built ARM64. But it also needs a firmware running on a separate Cortex-R5 core, and it turns out that this firmware is also... U-Boot.

So indeed, we need to build two U-Boots: one for the ARM64 cores, one for the Cortex-R5 core. The U-Boot for the ARM64 cores is built using boot/uboot/, like for all platforms. The special U-Boot for Cortex-R5 is built using the boot/ti-k3-r5-loader package.

Best regards,

Thomas

Signature · 7 lines
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#16 lore raw

Re: [Buildroot] [PATCH v2 4/4] board/ti: add new boards

In reply to Xuanhao Shi via buildroot

Hi Xuanhao, Anand, Thomas, All,

Quoted 266 lines · Xuanhao Shi

Adds support for ti's am62x_sk board and am64x_sk board. Adds the configs for generating output sdcard image. Adds the defconfigs for am62x_sk and am64x_sk. Adds to DEVELOPERS.

---
  DEVELOPERS                     | 16 ++++++++++++
  board/ti/am62x_sk/genimage.cfg | 27 ++++++++++++++++++++
  board/ti/am62x_sk/readme.txt   | 46 ++++++++++++++++++++++++++++++++++
  board/ti/am64x_sk/genimage.cfg | 27 ++++++++++++++++++++
  board/ti/am64x_sk/readme.txt   | 46 ++++++++++++++++++++++++++++++++++
  configs/am62x_sk_defconfig     | 45 +++++++++++++++++++++++++++++++++
  configs/am64x_sk_defconfig     | 45 +++++++++++++++++++++++++++++++++
  7 files changed, 252 insertions(+)

create mode 100644 board/ti/am62x_sk/genimage.cfg create mode 100644 board/ti/am62x_sk/readme.txt create mode 100644 board/ti/am64x_sk/genimage.cfg create mode 100644 board/ti/am64x_sk/readme.txt create mode 100644 configs/am62x_sk_defconfig create mode 100644 configs/am64x_sk_defconfig

DEVELOPERS +16 -0
index cb98c3883d..63689f54a0 100644
@@ -127,6 +127,14 @@ F:	package/dcron/
  F:	package/libxmlrpc/
  F:	package/python-docopt/
 
+N:	Anand Gadiyar <[email protected]>
+F:	board/ti/am62x_sk/
+F:	board/ti/am64x_sk/
+F:	boot/ti-k3-image-gen/
+F:	boot/ti-k3-r5-loader/
+F:	configs/am62x_sk_defconfig
+F:	configs/am64x_sk_defconfig
+
  N:	André Zwing <[email protected]>
  F:	package/libkrb5/
  F:	package/openal/
@@ -3004,6 +3012,14 @@ F:	package/python-pyusb/
  N:	Wojciech Niziński <[email protected]>
  F:	package/fwup/
 
+N:	Xuanhao Shi <[email protected]>
+F:	board/ti/am62x_sk/
+F:	board/ti/am64x_sk/
+F:	boot/ti-k3-image-gen/
+F:	boot/ti-k3-r5-loader/
+F:	configs/am62x_sk_defconfig
+F:	configs/am64x_sk_defconfig
+
  N:	Yair Ben Avraham <[email protected]>
  F:	package/casync/
  F:	package/gloox/
board/ti/am62x_sk/genimage.cfg new file +27 -0
new file mode 100644
index 0000000000..26304fe98f
@@ -0,0 +1,27 @@
+image boot.vfat {
+	vfat {
+		files = {
+			"tiboot3.bin",
+			"tispl.bin",
+			"u-boot.img",
+		}
+	}
+
+	size = 16M
+}
+
+image sdcard.img {
+	hdimage {
+	}
+
+	partition u-boot {
+		partition-type = 0xC
+		bootable = "true"
+		image = "boot.vfat"
+	}
+
+	partition rootfs {
+		partition-type = 0x83
+		image = "rootfs.ext4"
+	}
+}
board/ti/am62x_sk/readme.txt new file +46 -0
new file mode 100644
index 0000000000..aa66aa79b3
@@ -0,0 +1,46 @@
+Texas Instuments AM62x Evaluation Modules
+
+Description
+===========
+
+These configurations will build a complete image and
+device tree blobs for the the TI AM62x_sk board.
+
+How to build it
+===============
+
+Select the default configuration for the target:
+$ make am62x_sk_defconfig
+
+Optional: modify the configuration:
+$ make menuconfig
+
+Build:
+$ make
+
+Result of the build:
+===================
+output/images/
++-- soc
++-- ti-connectivity
++-- bl31.bin
++-- boot.vfat
++-- Image
++-- k3-am625-sk.dtb
++-- r5-u-boot-spl.bin
++-- rootfs.ext2
++-- rootfs.ext4
++-- rootfs.tar
++-- sdcard.img
++-- tee.bin
++-- tee-header_v2.bin
++-- tee-pageable_v2.bin
++-- tee-pager_v2.bin
++-- tiboot3.bin
++-- tispl.bin
++-- u-boot.img
+
+To copy the image file to the sdcard use dd:
+$ dd if=output/images/sdcard.img of=/dev/XXX
+
+
board/ti/am64x_sk/genimage.cfg new file +27 -0
new file mode 100644
index 0000000000..26304fe98f
@@ -0,0 +1,27 @@
+image boot.vfat {
+	vfat {
+		files = {
+			"tiboot3.bin",
+			"tispl.bin",
+			"u-boot.img",
+		}
+	}
+
+	size = 16M
+}
+
+image sdcard.img {
+	hdimage {
+	}
+
+	partition u-boot {
+		partition-type = 0xC
+		bootable = "true"
+		image = "boot.vfat"
+	}
+
+	partition rootfs {
+		partition-type = 0x83
+		image = "rootfs.ext4"
+	}
+}
board/ti/am64x_sk/readme.txt new file +46 -0
new file mode 100644
index 0000000000..a0b4929dc6
@@ -0,0 +1,46 @@
+Texas Instuments AM64x Evaluation Modules
+
+Description
+===========
+
+These configurations will build a complete image and
+device tree blobs for the the TI AM64x_sk board.
+
+How to build it
+===============
+
+Select the default configuration for the target:
+$ make am64x_sk_defconfig
+
+Optional: modify the configuration:
+$ make menuconfig
+
+Build:
+$ make
+
+Result of the build:
+===================
+output/images/
++-- soc
++-- ti-connectivity
++-- bl31.bin
++-- boot.vfat
++-- Image
++-- k3-am642-sk.dtb
++-- r5-u-boot-spl.bin
++-- rootfs.ext2
++-- rootfs.ext4
++-- rootfs.tar
++-- sdcard.img
++-- tee.bin
++-- tee-header_v2.bin
++-- tee-pageable_v2.bin
++-- tee-pager_v2.bin
++-- tiboot3.bin
++-- tispl.bin
++-- u-boot.img
+
+To copy the image file to the sdcard use dd:
+$ dd if=output/images/sdcard.img of=/dev/XXX
+
+
configs/am62x_sk_defconfig new file +34 -0
new file mode 100644
index 0000000000..752feb8634
@@ -0,0 +1,45 @@
+BR2_aarch64=y
+BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
+BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/ti/am64x_sk/genimage.cfg"
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.19-rc8"
+BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+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_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
+BR2_TARGET_ROOTFS_EXT2_SIZE="256M"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.7.0"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="k3"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_TARGET_BOARD="lite"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_OPTEE=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="SPD=opteed"
+BR2_TARGET_OPTEE_OS=y
+BR2_TARGET_OPTEE_OS_CUSTOM_GIT=y
+BR2_TARGET_OPTEE_OS_CUSTOM_REPO_URL="https://github.com/OP-TEE/optee_os.git"
+BR2_TARGET_OPTEE_OS_CUSTOM_REPO_VERSION="3.18.0"
+BR2_TARGET_OPTEE_OS_NEEDS_PYTHON_CRYPTOGRAPHY=y
+BR2_TARGET_OPTEE_OS_PLATFORM="k3"
+BR2_TARGET_TI_K3_IMAGE_GEN=y
+BR2_TARGET_TI_K3_IMAGE_GEN_SOC="am62x"
+BR2_TARGET_TI_K3_IMAGE_GEN_CONFIG="evm"
+BR2_TARGET_TI_K3_R5_LOADER_BOARD="am62x_evm"
+BR2_TARGET_UBOOT=y

configs/am62x_sk_defconfig line 44

Quoted 10 lines
configs/am62x_sk_defconfig new file +10 -0
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.10-rc1"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="am62x_evm_a53"
+BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
+# BR2_TARGET_UBOOT_FORMAT_BIN is not set
+BR2_TARGET_UBOOT_FORMAT_IMG=y
+BR2_TARGET_UBOOT_SPL=y
+BR2_TARGET_UBOOT_SPL_NAME="tispl.bin"
+BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="TEE=$(BINARIES_DIR)/tee-pager_v2.bin"

Again using buildroot/utils/docker-run I've found you also need:
BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y

The last one is not really needed if BR2_TARGET_TI_K3_IMAGE_GEN=y because it will install host-openssl, but if someone will disable it then host-openssl is required, so to be precise I would add it.

configs/am62x_sk_defconfig line 45

Quoted 1 line
configs/am62x_sk_defconfig new file +1 -0
+BR2_PACKAGE_HOST_GENIMAGE=y

You also need:
BR2_PACKAGE_HOST_DOSFSTOOLS=y
for creating the vfat
and:
BR2_PACKAGE_HOST_MTOOLS=y
for mcopy

This way the image can be created correctly, indeed now I have the resulting images/sdcard.img

Quoted 40 lines
configs/am64x_sk_defconfig new file +34 -0
new file mode 100644
index 0000000000..22d49288cb
@@ -0,0 +1,45 @@
+BR2_aarch64=y
+BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
+BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/ti/am64x_sk/genimage.cfg"
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.19-rc8"
+BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+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_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
+BR2_TARGET_ROOTFS_EXT2_SIZE="256M"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.7.0"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="k3"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_TARGET_BOARD="lite"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_OPTEE=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="SPD=opteed"
+BR2_TARGET_OPTEE_OS=y
+BR2_TARGET_OPTEE_OS_CUSTOM_GIT=y
+BR2_TARGET_OPTEE_OS_CUSTOM_REPO_URL="https://github.com/OP-TEE/optee_os.git"
+BR2_TARGET_OPTEE_OS_CUSTOM_REPO_VERSION="3.18.0"
+BR2_TARGET_OPTEE_OS_NEEDS_PYTHON_CRYPTOGRAPHY=y
+BR2_TARGET_OPTEE_OS_PLATFORM="k3"
+BR2_TARGET_TI_K3_IMAGE_GEN=y
+BR2_TARGET_TI_K3_IMAGE_GEN_SOC="am64x"
+BR2_TARGET_TI_K3_IMAGE_GEN_CONFIG="evm"
+BR2_TARGET_TI_K3_R5_LOADER_BOARD="am64x_evm"
+BR2_TARGET_UBOOT=y

configs/am64x_sk_defconfig line 44

Quoted 10 lines
configs/am64x_sk_defconfig new file +10 -0
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.10-rc1"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="am64x_evm_a53"
+BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
+# BR2_TARGET_UBOOT_FORMAT_BIN is not set
+BR2_TARGET_UBOOT_FORMAT_IMG=y
+BR2_TARGET_UBOOT_SPL=y
+BR2_TARGET_UBOOT_SPL_NAME="tispl.bin"
+BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="TEE=$(BINARIES_DIR)/tee-pager_v2.bin"

Same as previous defconfig, of course splitted into 2 patches 1 per board.

Also, please list the 2 options above in the order they are listed in uboot Config.in

configs/am64x_sk_defconfig line 45

Quoted 1 line
configs/am64x_sk_defconfig new file +1 -0
+BR2_PACKAGE_HOST_GENIMAGE=y

Waiting for V2 with my previous comments and Thomas comments too of course

Thank you!

Best regards

Signature · 6 lines
Giulio Benetti
Benetti Engineering sas
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#17 lore raw

Re: [Buildroot] [PATCH v2 4/4] board/ti: add new boards

Pardon

On 02/08/22 18:40, Giulio Benetti wrote:

[ SNIP ]

Quoted 3 lines

Waiting for V2 with my previous comments and Thomas comments too of course

s/V2/V3 for both patches.

Thank you
Best regards

Signature · 6 lines
Giulio Benetti
CEO/CTO@Benetti Engineering sas
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot