kumquat-buildroot/board
Romain Naour b29fe22257 configs/beagleboneai64_defconfig: new defconfig
Adds support for BeagleBone AI-64 board by introducing the
beagleboneai64_defconfig file and related support files.

The BeagleBone AI-64 uses the TI J721E SoC, also known as DRA829, also
known as TDA4VM.

Retrieve BSP settings from meta-ti (may be useful for other TI boards):

- This defconfig requires u-boot binman support added in u-boot since
  2023.10.
  See FOSDEM 2024 talk by TI folks about Binman and how it simplify
  the overall boot-loader build flow [1].

- Set BR2_TARGET_ARM_TRUSTED_FIRMWARE_TARGET_BOARD = "generic"
  meta-ti]$ git grep TFA_BOARD
  meta-ti-bsp/conf/machine/beagleplay.conf:TFA_BOARD = "lite"
  meta-ti-bsp/conf/machine/include/am62axx.inc:TFA_BOARD = "lite"
  meta-ti-bsp/conf/machine/include/am62pxx.inc:TFA_BOARD = "lite"
  meta-ti-bsp/conf/machine/include/am62xx.inc:TFA_BOARD = "lite"
  meta-ti-bsp/conf/machine/include/am64xx.inc:TFA_BOARD = "lite"
  meta-ti-bsp/conf/machine/include/am65xx.inc:TFA_BOARD = "generic"
  meta-ti-bsp/conf/machine/include/j7200.inc:TFA_BOARD = "generic"
  meta-ti-bsp/conf/machine/include/j721e.inc:TFA_BOARD = "generic"
  meta-ti-bsp/conf/machine/include/j721s2.inc:TFA_BOARD = "generic"
  meta-ti-bsp/conf/machine/include/j722s.inc:TFA_BOARD = "lite"
  meta-ti-bsp/conf/machine/include/j784s4.inc:TFA_BOARD = "j784s4"

- Set BR2_TARGET_UBOOT_NEEDS_ATF_BL31 to provide BL31 variable pointing
  to ATF bl31.bin to the U-Boot build process [2].

- Set BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_OPTEE to OP-TEE as BL32
  secure payload. meta-ti set "SPD=opteed" to build ATF [3].

- Set BR2_TARGET_OPTEE_OS_PLATFORM to "k3-j721e".
  meta-ti uses the OPTEEMACHINE to set optee-os platform [4].
  meta-ti]$ git grep OPTEEMACHINE
  meta-ti-bsp/conf/machine/am437x-hs-evm.conf:OPTEEMACHINE = "ti-am43xx"
  meta-ti-bsp/conf/machine/am57xx-hs-evm.conf:OPTEEMACHINE = "ti-am57xx"
  meta-ti-bsp/conf/machine/beagleplay.conf:OPTEEMACHINE = "k3-am62x"
  meta-ti-bsp/conf/machine/dra7xx-hs-evm.conf:OPTEEMACHINE = "ti-dra7xx"
  meta-ti-bsp/conf/machine/include/am62axx.inc:OPTEEMACHINE = "k3-am62x"
  meta-ti-bsp/conf/machine/include/am62pxx.inc:OPTEEMACHINE = "k3-am62x"
  meta-ti-bsp/conf/machine/include/am62xx.inc:OPTEEMACHINE = "k3-am62x"
  meta-ti-bsp/conf/machine/include/am64xx.inc:OPTEEMACHINE = "k3-am64x"
  meta-ti-bsp/conf/machine/include/am65xx.inc:OPTEEMACHINE = "k3-am65x"
  meta-ti-bsp/conf/machine/include/j7200.inc:OPTEEMACHINE = "k3-j721e"
  meta-ti-bsp/conf/machine/include/j721e.inc:OPTEEMACHINE = "k3-j721e"
  meta-ti-bsp/conf/machine/include/j721s2.inc:OPTEEMACHINE = "k3-j784s4"
  meta-ti-bsp/conf/machine/include/j722s.inc:OPTEEMACHINE = "k3-am62x"
  meta-ti-bsp/conf/machine/include/j784s4.inc:OPTEEMACHINE = "k3-j784s4"

- Use j721e_beagleboneai64_a72 and j721e_beagleboneai64_r5 u-boot
  defconfigs introduced in u-boot v2024.04.

- u-boot distroboot (bootflow) detect extlinux.conf file from the first
  SDcard partition, se we have to install the kernel and its dtb file.
  Use devicetreedir instead of devicetree in extlinux.conf file to
  avoid hardcoding the devicetree file name. TI boards are able to
  retrieve dtb file name from an EEPROM (see TI_I2C_BOARD_DETECT in
  uboot).

- Provide a hash file for all custom package version
  (arm-trusted-firmware, linux, ti-k3-r5-loader, uboot) to enable
  BR2_DOWNLOAD_FORCE_CHECK_HASHES.

[1] https://fosdem.org/2024/schedule/event/fosdem-2024-3067-standardizing-the-generation-and-signing-of-boot-images/
[2] https://git.yoctoproject.org/meta-ti/commit/?id=e74b9a1746d4d04757c87c1920a0f743e55ff096
[3] https://git.yoctoproject.org/meta-ti/tree/meta-ti-bsp/recipes-bsp/trusted-firmware-a/trusted-firmware-a-ti.inc?h=09.02.00.004#n7
[4] https://git.yoctoproject.org/meta-arm/tree/meta-arm/recipes-security/optee/optee-os.inc?h=4.0.3#n23

More information about the board can be found at:
https://www.beagleboard.org/boards/beaglebone-ai-64

Signed-off-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-05-09 22:08:14 +02:00
..
aarch64-efi board/*/genimage.cfg: use partition-type-uuid U where relevant 2022-07-23 15:36:22 +02:00
acmesystems configs/acmesystems_acqua_a5_*: bump to Linux 6.6.30 2024-05-06 20:58:41 +02:00
altera/socrates_cyclone5
amarula/vyasa configs/amarula_a64_relic: remove defconfig 2022-11-07 22:17:14 +01:00
andes/ae350 configs/andes_ae350_45: bump OpenSBI, U-Boot and Linux 2022-11-24 22:56:39 +01:00
arcturus board/arcturus/aarch64-ucls1012a: bump u-boot and kernel version 2022-03-10 21:39:07 +01:00
arm/foundation-v8 configs/arm_foundationv8: bump to Linux 6.1.13 2023-02-23 23:43:46 +01:00
armadeus configs/armadeus_apf27: add hashes for Linux/U-Boot 2024-05-05 10:34:39 +02:00
arrow/avenger96 configs/avenger96_defconfig: bump ATF version to v2.8 LTS 2024-03-24 17:18:35 +01:00
aspeed configs/aspeed_ast2500evb: new defconfig 2022-06-27 22:59:51 +02:00
asus configs/asus_tinker_rk3288_defconfig: switch to zImage and bump Linux to 6.1.44, U-Boot to 2023.07 2024-02-07 00:01:20 +01:00
atmel
avnet configs/avnet_rzboard_v2l: new defconfig 2024-02-07 20:46:53 +01:00
bananapi configs/bananapi_m2_zero: bump Linux to 6.8.4 and U-Boot to 2024.04 2024-04-07 09:47:16 +02:00
beagleboard/beagleboneai64 configs/beagleboneai64_defconfig: new defconfig 2024-05-09 22:08:14 +02:00
beagleboardx15
beaglebone configs/beaglebone: bump U-Boot version to 2022.10 2023-02-07 10:05:19 +01:00
beagleboneai
beaglev configs/beaglev_defconfig: fix build with binutils >= 2.38 2023-09-02 09:40:27 +02:00
beelink/gs1
boundarydevices/common
broadcom/northstar board/broadcom/northstar: fix building custom images 2024-01-13 22:02:06 +01:00
bsh board/bsh/imx8mn-bsh-smm-s2/readme.txt: fix typo 2023-07-30 12:36:09 +02:00
canaan configs/sipeed_maix_{bit, dock}_sdcard_defconfig: fix build with binutils >= 2.38 2023-08-20 23:38:39 +02:00
chromebook
ci20 configs/ci20_defconfig: configure eth0 through BR2_SYSTEM_DHCP rather than kernel cmdline 2024-03-14 19:38:03 +01:00
cubietech/cubieboard2
embest/riotboard
engicam
firefly/roc-rk3399-pc configs/roc_rk3399_pc: new defconfig 2023-08-12 21:57:16 +02:00
freescale configs/warpboard: remove defconfig 2024-04-28 20:07:32 +02:00
friendlyarm/nanopi-r2s configs/friendlyarm_nanopi_r1: remove defconfig 2022-11-07 22:17:46 +01:00
globalscale/espressobin
grinn
hardkernel
in-circuit/icnova-a20-adb4006 configs/icnova-a20-adb4006: bump Linux and U-Boot version 2024-02-05 11:38:10 +01:00
intel/galileo board/intel/galileo: enable Linux kernel root file system on NFS 2023-08-10 23:01:49 +02:00
khadas/vim3 board/khadas/vim3: add the path of the devicetree in extlinux.conf 2023-11-18 16:14:45 +01:00
kontron configs/kontron_smarc_sal28: use U-Boot 2022.10 2022-11-01 23:24:53 +01:00
lego/ev3
lemaker/bananapro
librecomputer/lafrite configs/lafrite_defconfig: bump kernel to 6.6.22 2024-03-27 15:02:42 +01:00
linksprite/pcduino board/linksprite/pcduino: switch to extlinux 2022-03-10 21:39:45 +01:00
mangopi/mq1rdw2 configs/mangopi_mq1rdw1_defconfig: new defconfig 2024-02-11 23:13:12 +01:00
mender/x86_64 package/mender-grubenv: bump version to 2ac898f5924d5870f8394ad8ecd3ef1ab1422e3b 2022-10-06 21:45:39 +02:00
microchip board/microchip/mpfs_icicle/genimage.cfg: drop legacy gpt = true 2024-01-26 17:02:12 +01:00
minnowboard configs/minnowboard_max-graphical: remove defconfig 2022-07-23 22:30:14 +02:00
nexbox/a95x
nezha configs/nezha_defconfig: add hashes for Linux/opensbi/u-boot 2024-04-10 21:55:15 +02:00
octavo configs/octavo_osd32mp1_brk: update BSP components 2022-10-06 22:02:26 +02:00
olimex configs/olimex_imx233_olinuxino: add hashes for Linux & U-Boot 2024-05-06 22:12:50 +02:00
olpc
openblocks/a6
orangepi configs/orangepi_zero2w: new board 2024-05-06 21:58:18 +02:00
pandaboard
pc board/pc/linux.config: Add framebuffer and pci support 2023-04-14 20:28:26 +02:00
pcengines/apu2
pine64 configs/pine64_star64: new defconfig 2024-05-01 20:51:57 +02:00
qemu configs/qemu_sparc_ss10: re-introduce defconfig 2024-05-07 09:10:18 +02:00
radxa board/radxa/rock5b: Disable FIQ debug interface 2024-02-06 18:46:01 +01:00
raspberrypi Merge branch 'next' 2023-12-04 21:11:12 +01:00
roseapplepi
seeed/stm32mp157c-odyssey board/*/genimage.cfg: use partition-table-type = "gpt" 2022-07-23 15:36:21 +02:00
sheevaplug configs/sheevaplug_defconfig: add hashes for u-boot and Linux 2024-05-06 21:30:33 +02:00
sifive/hifive-unleashed board/sifive/hifive-unleashed: include QEMU instructions in readme.txt 2023-08-12 23:12:32 +02:00
sipeed configs/sipeed_licheepi_nano: new board 2023-10-29 19:43:29 +01:00
solidrun board/solidrun/macchiatobin: update BSP components version in documentation 2022-09-24 10:37:04 +02:00
spike/riscv64 configs/spike_riscv64: bump kernel to 6.1.14 2023-03-12 18:45:08 +01:00
stmicroelectronics configs/stm32mp157*: bump ATF to v2.6 2024-02-06 14:19:42 +01:00
synopsys configs/snps_arc700_nsim_defconfig: add ARC700 target for nSIM 2023-08-06 22:47:32 +02:00
technexion configs/imx8mpico: bump bsp components to version tn-kirkstone_5.15.71-2.2.0 2024-01-10 21:36:59 +01:00
technologic fix links to Technologic Systems web resources 2022-03-09 21:47:48 +01:00
terasic/de10nano_cyclone5
ti configs/ti_am64x_sk_defconfig: update kernel to v6.8.8 2024-05-06 22:06:19 +02:00
toradex/apalis-imx6 toradx_apalis_imx6_defconfig: add download hashes for linux/uboot 2023-12-03 17:38:22 +01:00
udoo configs/mx6sx_udoo: bump U-Boot and kernel 2022-01-11 22:15:11 +01:00
uevm5432
versal configs/versal_vck190_defconfig: bump to xilinx-v2023.1 2023-08-08 00:07:09 +02:00
visionfive configs/visionfive_defconfig: new defconfig 2022-10-14 15:47:21 +02:00
visionfive2 configs/visionfive2_defconfig: add hashes for linux/opensbi/u-boot 2024-05-02 00:01:06 +02:00
wandboard
warp7
zynq board/zynq/readme.txt: update doc for zc702 2023-12-09 18:35:21 +01:00
zynqmp configs/zynqmp_kria_kd240_defconfig: new defconfig 2023-12-16 10:48:23 +01:00
raspberrypi0
raspberrypi0w
raspberrypi2
raspberrypi3
raspberrypi3-64
raspberrypi4
raspberrypi4-64
raspberrypicm4io
raspberrypicm4io-64
raspberrypizero2w