From 35eb74c6343a9ec1407fb473271dda0516792391 Mon Sep 17 00:00:00 2001 From: Romain Naour Date: Wed, 31 Jan 2024 18:38:27 +0100 Subject: [PATCH] configs/am574x_idk_defconfig: new defconfig This patch adds a basic support for AM574x Industrial Development Kit [1]. Use multi_v7_defconfig as kernel configuration file instead of the deprecated omap2plus_defconfig [2]. The main differences between upstream kernels and the TI vendor tree (5.10.x based) are: - pru based 100M ethernet ports will not work with upstream kernels since the prueth driver for AM57 is not upstream yet (as of 6.8-rc2) [3]. - The ARM/DSP examples provided by TI [4] will not work either since they requires an experimental patch [5] adding "remote-processor messaging sockets". - There is no support for the POWERVR GPU SGX544 that requires additional userpace vendor (closed source) libraries. [1] https://www.ti.com/tool/TMDSIDK574 [2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=cca9f6838bac3441a42fa906314bf5e3bff50ac5 [3] https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/commit/?id=792b57aac224416f66175c15d60379a4cf581d0f [4] https://git.ti.com/cgit/processor-sdk/big-data-ipc-examples [5] https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/commit/?id=f4b978a978c38149f712ddd137f12ed5fb914161 Signed-off-by: Romain Naour Reviewed-by: Giulio Benetti Tested-by: Giulio Benetti Signed-off-by: Romain Naour --- board/ti/am574x-idk/extlinux.conf | 4 +++ board/ti/am574x-idk/genimage.cfg | 30 +++++++++++++++++++++ board/ti/am574x-idk/post-build.sh | 4 +++ board/ti/am574x-idk/readme.txt | 28 +++++++++++++++++++ configs/am574x_idk_defconfig | 45 +++++++++++++++++++++++++++++++ 5 files changed, 111 insertions(+) create mode 100644 board/ti/am574x-idk/extlinux.conf create mode 100644 board/ti/am574x-idk/genimage.cfg create mode 100755 board/ti/am574x-idk/post-build.sh create mode 100644 board/ti/am574x-idk/readme.txt create mode 100644 configs/am574x_idk_defconfig diff --git a/board/ti/am574x-idk/extlinux.conf b/board/ti/am574x-idk/extlinux.conf new file mode 100644 index 0000000000..29e0ecfa14 --- /dev/null +++ b/board/ti/am574x-idk/extlinux.conf @@ -0,0 +1,4 @@ +label am5749-idk-buildroot + kernel /zImage + fdtdir / + append console=ttyS0,115200n8 root=/dev/mmcblk0p2 rw rootfstype=ext4 rootwait diff --git a/board/ti/am574x-idk/genimage.cfg b/board/ti/am574x-idk/genimage.cfg new file mode 100644 index 0000000000..02a9ffe013 --- /dev/null +++ b/board/ti/am574x-idk/genimage.cfg @@ -0,0 +1,30 @@ +image boot.vfat { + vfat { + files = { + "MLO", + "u-boot.img", + "zImage", + "am574x-idk.dtb", + "extlinux" + } + } + + 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" + size = 1G + } +} diff --git a/board/ti/am574x-idk/post-build.sh b/board/ti/am574x-idk/post-build.sh new file mode 100755 index 0000000000..5dcdb352eb --- /dev/null +++ b/board/ti/am574x-idk/post-build.sh @@ -0,0 +1,4 @@ +#!/bin/sh +BOARD_DIR="$(dirname "$0")" + +install -m 0644 -D "${BOARD_DIR}"/extlinux.conf "${BINARIES_DIR}"/extlinux/extlinux.conf diff --git a/board/ti/am574x-idk/readme.txt b/board/ti/am574x-idk/readme.txt new file mode 100644 index 0000000000..4869984cf1 --- /dev/null +++ b/board/ti/am574x-idk/readme.txt @@ -0,0 +1,28 @@ +Texas Instuments AM574x IDK Test and Development Board + +Description +=========== + +This configuration will build a basic image for the TI AM574x IDK +board: https://www.ti.com/tool/TMDSIDK574 + +How to build it +=============== + +Configure Buildroot: + + $ make am574x_idk_defconfig + +Compile everything and build the USB flash drive image: + + $ make + +How to write the SD card +======================== + +Once the build process is finished you will have an image called "sdcard.img" +in the output/images/ directory. + +Copy the bootable "sdcard.img" onto an SD card with "dd": + + $ sudo dd if=output/images/sdcard.img of=/dev/sdX diff --git a/configs/am574x_idk_defconfig b/configs/am574x_idk_defconfig new file mode 100644 index 0000000000..bbae73dff4 --- /dev/null +++ b/configs/am574x_idk_defconfig @@ -0,0 +1,45 @@ +# Architecture +BR2_arm=y +BR2_cortex_a15=y + +# System +BR2_SYSTEM_DHCP="eth0" + +# Linux headers same as kernel, a 6.6 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_6=y + +# Kernel +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.14" +BR2_LINUX_KERNEL_DEFCONFIG="multi_v7" +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="ti/omap/am574x-idk" +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y + +# Filesystem +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y + +# Image +BR2_ROOTFS_POST_BUILD_SCRIPT="board/ti/am574x-idk/post-build.sh" +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/ti/am574x-idk/genimage.cfg" + +# Bootloader +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2024.01" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="am57xx_evm" +BR2_TARGET_UBOOT_NEEDS_DTC=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="MLO" +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y + +# Required tools to create the SD image +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_MTOOLS=y