diff --git a/DEVELOPERS b/DEVELOPERS index ce0c7d62de..10f93d61aa 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -2705,10 +2705,12 @@ F: package/irssi/ F: package/vnstat/ N: Romain Naour +F: board/beagleboard/beagleboneai64/ F: board/qemu/ F: board/ti/am574x-idk/ F: configs/qemu_* F: configs/am574x_idk_defconfig +F: configs/beagleboneai64_defconfig F: package/alure/ F: package/aubio/ F: package/bcc/ diff --git a/board/beagleboard/beagleboneai64/extlinux.conf b/board/beagleboard/beagleboneai64/extlinux.conf new file mode 100644 index 0000000000..582d510b5d --- /dev/null +++ b/board/beagleboard/beagleboneai64/extlinux.conf @@ -0,0 +1,5 @@ +default buildroot +label buildroot + kernel /Image + devicetreedir / +append root=/dev/mmcblk1p2 rootwait rw console=ttyS2,115200n8 diff --git a/board/beagleboard/beagleboneai64/genimage.cfg b/board/beagleboard/beagleboneai64/genimage.cfg new file mode 100644 index 0000000000..b5ba2d21db --- /dev/null +++ b/board/beagleboard/beagleboneai64/genimage.cfg @@ -0,0 +1,33 @@ +image boot.vfat { + vfat { + files = { + "sysfw.itb", + "tiboot3.bin", + "tispl.bin", + "u-boot.img", + "Image", + "ti", + "extlinux", + } + + label = "boot" + } + + size = 64M +} + +image sdcard.img { + hdimage { + } + + partition u-boot { + partition-type = 0xC + bootable = "true" + image = "boot.vfat" + } + + partition rootfs { + partition-type = 0x83 + image = "rootfs.ext4" + } +} diff --git a/board/beagleboard/beagleboneai64/patches/arm-trusted-firmware/arm-trusted-firmware.hash b/board/beagleboard/beagleboneai64/patches/arm-trusted-firmware/arm-trusted-firmware.hash new file mode 100644 index 0000000000..02714d06a0 --- /dev/null +++ b/board/beagleboard/beagleboneai64/patches/arm-trusted-firmware/arm-trusted-firmware.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 2e18b881ada9198173238cca80086c787b1fa3f698944bde1743142823fc511c arm-trusted-firmware-v2.10.tar.gz diff --git a/board/beagleboard/beagleboneai64/patches/linux-headers/linux-headers.hash b/board/beagleboard/beagleboneai64/patches/linux-headers/linux-headers.hash new file mode 120000 index 0000000000..5808d92afe --- /dev/null +++ b/board/beagleboard/beagleboneai64/patches/linux-headers/linux-headers.hash @@ -0,0 +1 @@ +../linux/linux.hash \ No newline at end of file diff --git a/board/beagleboard/beagleboneai64/patches/linux/linux.hash b/board/beagleboard/beagleboneai64/patches/linux/linux.hash new file mode 100644 index 0000000000..4b20a009a7 --- /dev/null +++ b/board/beagleboard/beagleboneai64/patches/linux/linux.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 b66a5b863b0f8669448b74ca83bd641a856f164b29956e539bbcb5fdeeab9cc6 linux-6.6.30.tar.xz diff --git a/board/beagleboard/beagleboneai64/patches/ti-k3-r5-loader/ti-k3-r5-loader.hash b/board/beagleboard/beagleboneai64/patches/ti-k3-r5-loader/ti-k3-r5-loader.hash new file mode 100644 index 0000000000..97a2b4eaf9 --- /dev/null +++ b/board/beagleboard/beagleboneai64/patches/ti-k3-r5-loader/ti-k3-r5-loader.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 18a853fe39fad7ad03a90cc2d4275aeaed6da69735defac3492b80508843dd4a u-boot-2024.04.tar.bz2 diff --git a/board/beagleboard/beagleboneai64/patches/uboot/uboot.hash b/board/beagleboard/beagleboneai64/patches/uboot/uboot.hash new file mode 100644 index 0000000000..97a2b4eaf9 --- /dev/null +++ b/board/beagleboard/beagleboneai64/patches/uboot/uboot.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 18a853fe39fad7ad03a90cc2d4275aeaed6da69735defac3492b80508843dd4a u-boot-2024.04.tar.bz2 diff --git a/board/beagleboard/beagleboneai64/post-build.sh b/board/beagleboard/beagleboneai64/post-build.sh new file mode 100755 index 0000000000..2315ff393a --- /dev/null +++ b/board/beagleboard/beagleboneai64/post-build.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +BOARD_DIR="$(dirname "$0")" + +ln -sf tispl.bin_unsigned "$BINARIES_DIR"/tispl.bin + +install -m 0644 -D "$BOARD_DIR"/extlinux.conf "$BINARIES_DIR"/extlinux/extlinux.conf diff --git a/board/beagleboard/beagleboneai64/readme.txt b/board/beagleboard/beagleboneai64/readme.txt new file mode 100644 index 0000000000..fa4e189c44 --- /dev/null +++ b/board/beagleboard/beagleboneai64/readme.txt @@ -0,0 +1,39 @@ +BeagleBoard.org BeagleBone AI-64 Development Board + +Description +=========== + +This configuration will build a basic image for the BeagleBoard.org +BeagleBone AI-64. For more details about the board, visit: + +https://www.beagleboard.org/boards/beaglebone-ai-64 + +How to Build +============ + +Select the default configuration for the target: + +$ make beagleboneai64_defconfig + +Optional: modify the configuration: + +$ make menuconfig + +Build: + +$ make + +To copy the resultimg output image file to an SD card use dd: + +$ dd if=output/images/sdcard.img of=/dev/sdX bs=1M + +How to Run +========== + +Insert the SD card into the BeagleBone AI-64 board, and power it up +through the USB Type-C connector. The system should come up (make sure +to boot from the SD card not from the eMMC). You can use a USB to +serial adapter to connect to the connector labeled UART0 (J3) to +communicate with the board. + +https://docs.beagleboard.org/latest/boards/beaglebone/ai-64/02-quick-start.html diff --git a/configs/beagleboneai64_defconfig b/configs/beagleboneai64_defconfig new file mode 100644 index 0000000000..d4ba61cfab --- /dev/null +++ b/configs/beagleboneai64_defconfig @@ -0,0 +1,50 @@ +BR2_aarch64=y +BR2_cortex_a72=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_6=y +BR2_GLOBAL_PATCH_DIR="board/beagleboard/beagleboneai64/patches" +BR2_DOWNLOAD_FORCE_CHECK_HASHES=y +BR2_ROOTFS_POST_BUILD_SCRIPT="board/beagleboard/beagleboneai64/post-build.sh" +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/beagleboard/beagleboneai64/genimage.cfg" +BR2_SYSTEM_DHCP="eth0" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.30" +BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="ti/k3-j721e-beagleboneai64" +BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME=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.10" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="k3" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_TARGET_BOARD="generic" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_OPTEE=y +BR2_TARGET_OPTEE_OS=y +BR2_TARGET_OPTEE_OS_PLATFORM="k3-j721e" +BR2_TARGET_TI_K3_BOOT_FIRMWARE=y +BR2_TARGET_TI_K3_R5_LOADER=y +BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_VERSION=y +BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_VERSION_VALUE="2024.04" +BR2_TARGET_TI_K3_R5_LOADER_BOARD_DEFCONFIG="j721e_beagleboneai64_r5" +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2024.04" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="j721e_beagleboneai64_a72" +BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y +BR2_TARGET_UBOOT_USE_BINMAN=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_unsigned" +BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="TEE=$(BINARIES_DIR)/tee-pager_v2.bin" +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_MTOOLS=y