Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 13 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,16 @@ This `BR2_EXTERNAL` tree provides following Buildroot configurations:

1. `ti_release_am62x_sk_defconfig` for Linux
2. `ti_release_am62x_sk_rt_defconfig` for RT-Linux
3. `ti_release_am62lx_evm_defconfig` for Linux
4. `ti_release_am62lx_evm_rt_defconfig` for RT-Linux
3. `ti_release_am62p_sk_defconfig` for Linux
4. `ti_release_am62p_sk_rt_defconfig` for RT-Linux
5. `ti_release_am62lx_evm_defconfig` for Linux
6. `ti_release_am62lx_evm_rt_defconfig` for RT-Linux

It supports following variants of AM62x EVM and AM62Lx EVM:
- [SK-AM62](https://www.ti.com/tool/SK-AM62)
- [SK-AM62B](https://www.ti.com/tool/SK-AM62B)
- [SK-AM62B-P1](https://www.ti.com/tool/SK-AM62B-P1)
- [SK-AM62P-LP](https://www.ti.com/tool/SK-AM62P-LP)
- [AM62L-EVM](https://www.ti.com/tool/TMDS62LEVM)

It builds and packages following main components:
Expand Down Expand Up @@ -74,6 +77,7 @@ information refer
| Platform | Buildroot version tag | Buildroot External Tree Tag |
| ----------- | --------------------- |-----------------------------|
| SK-AM62B | 2026.02 | 12.00.00.07.04 |
| SK-AM62P | 2026.02 | 12.00.00.07.04 |
| AM62L-EVM | 2026.02 | 12.00.00.07.04 |

- Clone the Buildroot repository to local machine.
Expand Down Expand Up @@ -111,6 +115,12 @@ $ make BR2_EXTERNAL=../buildroot-external-TI ti_release_am62x_sk_defconfig
# For AM62X RT-Linux
$ make BR2_EXTERNAL=../buildroot-external-TI ti_release_am62x_sk_rt_defconfig

# For AM62P Linux
$ make BR2_EXTERNAL=../buildroot-external-TI ti_release_am62p_sk_defconfig

# For AM62P RT-Linux
$ make BR2_EXTERNAL=../buildroot-external-TI ti_release_am62p_sk_rt_defconfig

# For AM62LX Linux
$ make BR2_EXTERNAL=../buildroot-external-TI ti_release_am62lx_evm_defconfig

Expand Down Expand Up @@ -153,6 +163,7 @@ with the console on UART. You can log-in as `root` with no password.
# Going further

* [PROCESSOR-SDK-AM62X](https://www.ti.com/tool/PROCESSOR-SDK-AM62X#overview)
* [PROCESSOR-SDK-AM62P](https://www.ti.com/tool/PROCESSOR-SDK-AM62P)
* [AM62L-PROCESSOR-SDK](https://www.ti.com/tool/AM62L-PROCESSOR-SDK)

# References
Expand Down
36 changes: 36 additions & 0 deletions board/ti/am62p-sk/post-build-ti.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
#!/bin/sh -x

dtb_file=""

while [ $# -gt 0 ]; do
case "$1" in
-d)
# Check if the next argument exists and is not another flag
if [ -n "$2" ] && [ "${2#-}" = "$2" ]; then
dtb_file="$2"
shift
else
echo "Error: Missing or invalid filename after -d flag"
exit 1
fi
;;
*)
;;
esac
shift
done

if [ -n "$dtb_file" ]; then
echo "dtb file provided : $dtb_file"
else
echo "No dtb file provided with -d flag"
exit 1
fi

mkdir -p $TARGET_DIR/boot/dtb/ti
mkdir -p $TARGET_DIR/lib/firmware/ti-connectivity

cp $BINARIES_DIR/Image $TARGET_DIR/boot
cp $BINARIES_DIR/$dtb_file $TARGET_DIR/boot/dtb/ti
cp $BUILD_DIR/ti-k3-boot-firmware-*/ti-ipc/am62pxx/am62p-mcu-r5f0_0-fw $TARGET_DIR/lib/firmware/
cp $BUILD_DIR/ti-k3-boot-firmware-*/ti-connectivity/* $TARGET_DIR/lib/firmware/ti-connectivity/
43 changes: 43 additions & 0 deletions board/ti/am62p-sk/readme.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
Texas Instuments SK-AM62P Test and Development Board

Description
===========

This configuration will build a complete image for the TI SK-AM62P
board using TI sources: https://www.ti.com/tool/SK-AM62P-LP.

How to Build
============

Select the default configuration for the target:

For non-RT linux build
$ make ti_release_am62p_sk_defconfig

For RT linux build
$ make ti_release_am62p_sk_rt_defconfig

Optional: modify the configuration:

$ make menuconfig

IMPORTANT: make sure to use the tiboot3 firmware that match with the TI
K3 SoC boot ROM (tiboot3-am62px-{gp/hs-fs/hs}-*.bin) used on the board.

HS-FS should be the default for all TI AM6x devices.

Build:

$ make

To copy the resulting 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 SK-AM62P board, and power it up through the
USB Type-C connector. The system should come up. You can use a
micro-USB cable to connect to the connector labeled UART to
communicate with the board.
76 changes: 76 additions & 0 deletions configs/ti_release_am62p_sk_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
BR2_aarch64=y
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_18=y
BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_TI_PATH)/board/ti/common/patches"
BR2_DOWNLOAD_FORCE_CHECK_HASHES=y
BR2_TARGET_GENERIC_HOSTNAME="am62pxx-evm"
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_TI_PATH)/board/ti/am62p-sk/rootfs-overlay"
BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_TI_PATH)/board/ti/am62p-sk/post-build-ti.sh"
BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
BR2_ROOTFS_POST_BUILD_SCRIPT_ARGS="-d k3-am62p5-sk.dtb"
BR2_ROOTFS_POST_IMAGE_SCRIPT_ARGS="-c $(BR2_EXTERNAL_TI_PATH)/board/ti/common/am6xx/genimage_ti.cfg"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://git.ti.com/git/ti-linux-kernel/ti-linux-kernel.git"
BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="12.00.00.07"
BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_DL_DIR)/linux/git/kernel/configs/ti_arm64_prune.config"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="ti/k3-am62p5-sk"
BR2_PACKAGE_LINUX_TOOLS_PERF=y
BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
BR2_PACKAGE_ALSA_UTILS=y
BR2_PACKAGE_ALSA_UTILS_AMIXER=y
BR2_PACKAGE_ALSA_UTILS_APLAY=y
BR2_PACKAGE_GIT=y
BR2_PACKAGE_SDL2=y
BR2_PACKAGE_SDL2_IMAGE=y
BR2_PACKAGE_WESTON=y
BR2_PACKAGE_MEMTESTER=y
BR2_PACKAGE_DROPBEAR=y
BR2_PACKAGE_MOSQUITTO=y
BR2_PACKAGE_BASH=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_GIT=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL="https://github.com/ARM-software/arm-trusted-firmware.git"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="76500ceaeefcda967d8a1f4e30bb04f9fe0425a2"
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="K3_PM_SYSTEM_SUSPEND=1"
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="f2a7ad0638aeff5243593b33cc56ad064cae7615"
BR2_TARGET_OPTEE_OS_NEEDS_PYTHON_CRYPTOGRAPHY=y
BR2_TARGET_OPTEE_OS_PLATFORM="k3-am62px"
BR2_TARGET_OPTEE_OS_ADDITIONAL_VARIABLES="CFG_TEE_CORE_LOG_LEVEL=1"
BR2_TARGET_TI_K3_R5_LOADER=y
BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_GIT=y
BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_REPO_URL="https://git.ti.com/git/ti-u-boot/ti-u-boot.git"
BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_REPO_VERSION="12.00.00.07"
BR2_TARGET_TI_K3_R5_LOADER_BOARD_DEFCONFIG="am62px_evm_r5"
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_GIT=y
BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://git.ti.com/git/ti-u-boot/ti-u-boot.git"
BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="12.00.00.07"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="am62px_evm_a53"
BR2_TARGET_UBOOT_NEEDS_DTC=y
BR2_TARGET_UBOOT_NEEDS_OPENSSL=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"
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
BR2_PACKAGE_TI_LVGL_DEMO=n
BR2_PACKAGE_K3CONF=y
76 changes: 76 additions & 0 deletions configs/ti_release_am62p_sk_rt_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
BR2_aarch64=y
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_18=y
BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_TI_PATH)/board/ti/common/patches"
BR2_DOWNLOAD_FORCE_CHECK_HASHES=y
BR2_TARGET_GENERIC_HOSTNAME="am62pxx-evm"
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_TI_PATH)/board/ti/am62p-sk/rootfs-overlay"
BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_TI_PATH)/board/ti/am62p-sk/post-build-ti.sh"
BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
BR2_ROOTFS_POST_BUILD_SCRIPT_ARGS="-d k3-am62p5-sk.dtb"
BR2_ROOTFS_POST_IMAGE_SCRIPT_ARGS="-c $(BR2_EXTERNAL_TI_PATH)/board/ti/common/am6xx/genimage_ti.cfg"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://git.ti.com/git/ti-linux-kernel/ti-linux-kernel.git"
BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="12.00.00.07"
BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_DL_DIR)/linux/git/kernel/configs/ti_arm64_prune.config $(BR2_DL_DIR)/linux/git/kernel/configs/ti_rt.config"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="ti/k3-am62p5-sk"
BR2_PACKAGE_LINUX_TOOLS_PERF=y
BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
BR2_PACKAGE_ALSA_UTILS=y
BR2_PACKAGE_ALSA_UTILS_AMIXER=y
BR2_PACKAGE_ALSA_UTILS_APLAY=y
BR2_PACKAGE_GIT=y
BR2_PACKAGE_SDL2=y
BR2_PACKAGE_SDL2_IMAGE=y
BR2_PACKAGE_WESTON=y
BR2_PACKAGE_MEMTESTER=y
BR2_PACKAGE_DROPBEAR=y
BR2_PACKAGE_MOSQUITTO=y
BR2_PACKAGE_BASH=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_GIT=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL="https://github.com/ARM-software/arm-trusted-firmware.git"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="76500ceaeefcda967d8a1f4e30bb04f9fe0425a2"
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="K3_PM_SYSTEM_SUSPEND=1"
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="f2a7ad0638aeff5243593b33cc56ad064cae7615"
BR2_TARGET_OPTEE_OS_NEEDS_PYTHON_CRYPTOGRAPHY=y
BR2_TARGET_OPTEE_OS_PLATFORM="k3-am62px"
BR2_TARGET_OPTEE_OS_ADDITIONAL_VARIABLES="CFG_TEE_CORE_LOG_LEVEL=1"
BR2_TARGET_TI_K3_R5_LOADER=y
BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_GIT=y
BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_REPO_URL="https://git.ti.com/git/ti-u-boot/ti-u-boot.git"
BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_REPO_VERSION="12.00.00.07"
BR2_TARGET_TI_K3_R5_LOADER_BOARD_DEFCONFIG="am62px_evm_r5"
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_GIT=y
BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://git.ti.com/git/ti-u-boot/ti-u-boot.git"
BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="12.00.00.07"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="am62px_evm_a53"
BR2_TARGET_UBOOT_NEEDS_DTC=y
BR2_TARGET_UBOOT_NEEDS_OPENSSL=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"
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
BR2_PACKAGE_TI_LVGL_DEMO=n
BR2_PACKAGE_K3CONF=y