Skip to main content

Yocto layer for Metis is all yours (meta-axelera)

  • January 30, 2026
  • 0 replies
  • 14 views

Spanner
Axelera Team
Forum|alt.badge.img+3

For anyone building custom embedded Linux images with Yocto, there's now an official BSP layer available for Metis hardware.

It’s pretty niche stuff, but if you're working on embedded systems where you need a stripped-down, customised Linux image (think industrial deployments, kiosks, dedicated edge boxes), this is for you.

What's in it:

The layer includes recipes for the Metis PCIe driver and the udev rules. Add it to your Yocto build, include the packages in your image, and your custom Linux will recognise and talk to Metis hardware out of the box.

Currently supports Yocto 5.0 (Scarthgap), with branches for Kirkstone and Dunfell if you're on older versions.

One important thing to note:

The VoyagerSDK itself still doesn't run natively on Yocto yet. You'll need to run it inside a Docker container on your target system. The kernel driver runs on the host and handles the hardware communication, but inference and SDK tools happen inside the container. Just FYI 👍.

Quick look at the setup:

  1. Clone the layer into your sources directory
  2. Run bitbake-layers add-layer ../sources/meta-axelera
  3. Add IMAGE_INSTALL:append = " axelera-driver axelera-udev-rules" to your local.conf
  4. Build your image
  5. Profit 🧙‍♂️

There's also a heads-up about DMA buffer support in the README. You'll need CONFIG_DMABUF_HEAPS and CONFIG_DMABUF_HEAPS_SYSTEM enabled in your kernel config, or the accelerator won't work properly. The repo has instructions for adding a kernel config fragment if you need it.

Anyone else doing Yocto-based deployments with Metis? Would be good to hear what platforms people are targeting!

The repo’s right here: https://github.com/axelera-ai-hub/meta-axelera