SPRADD1B August 2023 – September 2026 AM620-Q1 , AM623 , AM625 , AM625-Q1 , AM625SIP , AM62A1-Q1 , AM62A3 , AM62A3-Q1 , AM62A7 , AM62A7-Q1 , AM62P , AM62P-Q1
Early in the board bring-up process, diagnosing a catastrophic failure that occurs before the Linux kernel initializes the serial console is highly challenging. Furthermore, raw kernel boot logs can be difficult to interpret without context. Compiling debugging features into the kernel image via the menuconfig tool can significantly help isolate the root cause of early boot failures.
Enabling additional debug features requires building a custom kernel image. These steps come from the AM62x Processor SDK: Linux Users Guide and the commands should be executed from the root of the Linux kernel repository.
$ sudo apt install git xz-utils build-essential flex bison bc libssl-dev libncurses-dev$ make ARCH=arm64 CROSS_COMPILE="$CROSS_COMPILE_64" distcleanThe next command loads the default ARM64 kernel configuration, applies the ti_arm64_prune.config fragment for cleanup, and opens the interactive menuconfig tool to manually configure additional kernel options.
$ make ARCH=arm64 CROSS_COMPILE="$CROSS_COMPILE_64" defconfig ti_arm64_prune.config menuconfigNavigate to the "Kernel hacking" menu to access the available debugging options. More information of these debug configuration options can be found at $TI_LINUX/lib/Kconfig.debug. After enabling the debug features, exit the interactive menuconfig tool, save the configuration, and build the kernel image using the following commands:
$ make ARCH=arm64 CROSS_COMPILE="$CROSS_COMPILE_64" savedefconfig
$ make ARCH=arm64 CROSS_COMPILE="$CROSS_COMPILE_64"The resulting kernel binary is located at $TI_LINUX/arch/arm64/boot/Image. Deploy this debug-enabled kernel image during the board porting process to help diagnose and resolve issues with newly enabled peripherals.