How to enable SPI on the BeagleY-AI

Hardware and Software Requirements

This article documents how to enable hardware SPI on the BeagleY-AI.

By default, the board ships with a bit-banged SPI implementation, and the spidev device is not exposed under /dev/spidevX.Y, preventing user-space applications from accessing the SPI controller.

Considering how new the BeagleY-AI platform is, documentation is still limited. During research, the following references were particularly helpful:

Kernel and Boot Context

Clone DTS File from Source

Clone the repository containing the DTS file required to enable SPI:

Compile DTS File to DTBO

NB: Ensure the following include paths are available to the device tree compiler:

Once inside the kernel source tree, compile the DTBO using:

If successful, the output file k3-am67a-beagley-ai-spidev0-mcu.dtbo will be generated and ready for deployment.

Deploy to the Board

Copy the compiled DTBO to the SD card and update the boot configuration:

Test the Driver

After reinserting the SD card and booting the BeagleY-AI, observe the UART console for SPI initialization messages.

UART console output showing SPI driver initialization
UART console output during SPI driver initialization

Once the system has booted, verify that the SPI device node is present:

spidev device visible under /dev
SPI device exposed under /dev as spidev

This article is shared freely to assist others working with the BeagleY-AI platform.