From d2b57d4eea25aa36458a59f52c79aca57333c8b5 Mon Sep 17 00:00:00 2001 From: Max Krummenacher Date: Thu, 25 Apr 2024 09:35:12 +0200 Subject: machine: add aquila-am69 and aquila-am69-k3r5 machines Related-to: ELB-5482 Signed-off-by: Hiago De Franco Signed-off-by: Max Krummenacher --- conf/machine/aquila-am69-k3r5.conf | 30 ++++++++++++++ conf/machine/aquila-am69.conf | 81 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 111 insertions(+) create mode 100644 conf/machine/aquila-am69-k3r5.conf create mode 100644 conf/machine/aquila-am69.conf diff --git a/conf/machine/aquila-am69-k3r5.conf b/conf/machine/aquila-am69-k3r5.conf new file mode 100644 index 0000000..e4ea3dc --- /dev/null +++ b/conf/machine/aquila-am69-k3r5.conf @@ -0,0 +1,30 @@ +#@TYPE: Machine +#@NAME: Toradex Aquila AM69 (R5F) +#@DESCRIPTION: Machine configuration for Toradex Aquila AM69 SoM (R5F core) +#@MAINTAINER: Max Krummenacher + +MACHINE_NAME = "Aquila-AM69" + +require conf/machine/include/k3r5.inc + +PREFERRED_PROVIDER_virtual/bootloader = "u-boot-toradex-ti" +PREFERRED_PROVIDER_u-boot = "u-boot-toradex-ti" +PREFERRED_PROVIDER_virtual/bootloader:upstream = "u-boot-toradex" +PREFERRED_PROVIDER_u-boot:upstream = "u-boot-toradex" +PREFERRED_VERSION_u-boot-toradex:upstream = "mainline" + +SYSFW_SOC = "j784s4" +# TODO: +# - Update SYSFW_CONFIG to "aquila" once we have it available. +SYSFW_CONFIG = "evm" +SYSFW_SUFFIX = "hs-fs" + +UBOOT_DFU_CONFIG = "dfu" +# The DFU config does not (yet) exist in upstream. It is needed only +# if booting from DFU/USB. +UBOOT_DFU_CONFIG:upstream = "" +UBOOT_CONFIG ??= "${UBOOT_DFU_CONFIG} sd" +# TODO change to the 'aquila defconfigs' and actually add a dfu config +# rework the U-Boot recipe to deploy the dfu binary +UBOOT_CONFIG[dfu] = "j784s4_evm_r5_defconfig,dfu,spl/u-boot-spl.bin" +UBOOT_CONFIG[sd] = "j784s4_evm_r5_defconfig,sdcard,spl/u-boot-spl.bin" diff --git a/conf/machine/aquila-am69.conf b/conf/machine/aquila-am69.conf new file mode 100644 index 0000000..5022954 --- /dev/null +++ b/conf/machine/aquila-am69.conf @@ -0,0 +1,81 @@ +#@TYPE: Machine +#@NAME: Toradex Aquila AM69 +#@DESCRIPTION: Machine configuration for Toradex Aquila AM69 SoM +#@MAINTAINER: Max Krummenacher + +MACHINE_NAME = "Aquila-AM69" +MACHINE_FEATURES:remove = "efi" +MACHINE_FEATURES:append = " tpm2" + +require conf/machine/tdx-utilities.inc +require conf/machine/include/j784s4.inc + +TFA_K3_USART = "0x8" +OPTEE_K3_USART = "0x8" + +do_image[mcdepends] = "mc::k3r5:virtual/bootloader:do_deploy" + +# cope with our changed tiboot3 file names vs. the hardcoded TI AM69 SK-EVM ones +IMAGE_BOOT_FILES:remove = "\ + tiboot3-j784s4-gp-evm.bin \ + tiboot3-j784s4-hs-evm.bin \ + tiboot3-j784s4-hs-fs-evm.bin \ +" + +# Don't include kernels in standard images +RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = "" +# Install kernel modules by default +MACHINE_EXTRA_RRECOMMENDS:append:j784s4 = " kernel-modules" + +PREFERRED_PROVIDER_virtual/kernel = "linux-toradex-ti" +PREFERRED_PROVIDER_virtual/kernel:preempt-rt = "linux-toradex-ti" +PREFERRED_PROVIDER_virtual/dtb = "device-tree-overlays-ti" +PREFERRED_PROVIDER_virtual/bootloader = "u-boot-toradex-ti" +PREFERRED_PROVIDER_u-boot = "u-boot-toradex-ti" + +KERNEL_DTB_PREFIX = "ti/" +# TODO remove am69-sk dtb +KERNEL_DEVICETREE = " \ + ${KERNEL_DTB_PREFIX}k3-am69-aquila-dev.dtb \ + ${KERNEL_DTB_PREFIX}k3-am69-sk.dtb \ +" + +KERNEL_IMAGETYPE = "Image.gz" +KERNEL_IMAGETYPES = "fitImage Image Image.gz" + +# overlays applied by generated overlays.txt +TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = "" + +UBOOT_CONFIG ??= "sd" +UBOOT_CONFIG[sd] = "j784s4_evm_a72_defconfig,sdcard" +# UBOOT_CONFIG[sd] = "aquila-am69_a72_defconfig,sdcard" +UBOOT_ENTRYPOINT = "0x80200000" +UBOOT_LOADADDRESS = "0x80200000" + +IMAGE_BOOT_FILES = " \ + boot.scr-${MACHINE};boot.scr \ + ${KERNEL_IMAGETYPE} \ + ${@make_dtb_boot_files(d)} \ +" + +# meta-ti-bsp/conf/machine/include/k3.inc +# With "sdimage-2part-efi.wks" my builds do not boot, no serial output at +# all +WKS_FILE:k3 = "sdimage-2part.wks" +WKS_FILE_DEPENDS:append = " u-boot-distro-boot" +WIC_CREATE_EXTRA_ARGS:append = " --no-fstab-update" + +IMAGE_CLASSES:append = " image_type_tezi" +IMAGE_FSTYPES:append = " teziimg" +# The payload offsets are given in number of 512 byte blocks. +# tiboot3.bin +OFFSET_BOOTROM_PAYLOAD = "0" +# TODO change to aquila tiboot3 +FIRMWARE_BINARY[0088] = "tiboot3-j784s4-hs-fs-evm.bin" +# tispl.bin +OFFSET_FW_PAYLOAD = "2048" +# u-boot.img +OFFSET_SPL_PAYLOAD = "6144" +UBOOT_BINARY = "u-boot.img" + +TORADEX_PRODUCT_IDS = "0088" -- cgit v1.2.3