Developer Portal Logo

Quick Links

  • Getting Started for Embedded Linux Engineers
  • Amarula Solutions Infrastructure

Solutions by Domain

  • Board Support Packages
  • Hardware Development
  • Embedded Linux Build Systems
  • CI/CD & Test Automation
  • Embedded Security
  • IoT Firmware & RTOS Development

Open Source & Products

  • Open Source Projects
  • Open Source Contributions
  • Amarula Products & Tools

Company & Community

  • About
  • Open Source Team
  • News
    • 2026
    • 2025
      • Update ChatGpt Gerrit plugin to version 3.1.0
      • Update ChatGpt Gerrit plugin to version 2.1.0
      • Amarula Launches meta-mend: Enhancing Yocto Security with Mend SCA Integration
      • Amarula Solutions: Smart Thermostat Demo
      • CuteKeyboard Now Part of the Yocto Project!
      • Enhancing RX/TX Statistics in Linux CAN Drivers
      • Warning-ng Jenkins plugin now can report Yocto vulnerabilities
      • Support the ip link set command for CAN interface in Busybox
    • 2024
    • 2023
    • 2021
    • 2020
    • Jobs
  • Articles
Developer Portal
  • Getting Started for Embedded Linux Engineers
  • News
  • Support the ip link set command for CAN interface in Busybox
  • View page source

Support the ip link set command for CAN interface in Busybox

Note

TL;DR - The last missing patch for full CAN interface support on MMU-less systems has been merged into BusyBox — enabling ip link set configuration alongside existing candump and cansend tools. - Culmination of a multi-project upstreaming effort spanning Linux kernel, can-utils, BusyBox, libmnl, and Buildroot.

With the addition of support for the ip link set command for the CAN interface in BusyBox, the last missing patch needed to fully interact with a CAN interface on MMU-less systems has finally been merged: https://www.mail-archive.com/busybox@busybox.net/msg29248.html

So, summarizing, even for MMU-less systems, we can now use the ip link command to configure and activate a CAN interface, and the candump and cansend commands to receive and transmit data:

  • ip link set can1 type can bitrate 125000 loopback on listen-only on

  • ip link set up can1

  • candump can1 -L &

  • cansend can1 300#AC.AB.AD.AE.75.49.AD.D1

At this point, I should therefore fix and update the slides of my presentation at FOSDEM 2024 following this latest news: https://fosdem.org/2024/events/attachments/fosdem-2024-2864-linux-can-upstreaming-on-mmu-less-systems/slides/22435/Linux_CAN_upstreaming_on_MMU_less_systems_N5WZk7u.pdf

Meanwhile, I am eager to update and extend my thanks to everyone who made it possible to review and merge all the patches necessary to interact with a CAN interface on MMU-less systems:

Marc Kleine-Budde, Krzysztof Kozłowski, Rob Herring, Vincent Mailhol, Lee Jones, Alexandre Torgue, Simon Horman, Stephen Rothwell, Jakub Kicinski, Paolo Abeni and the kernel test robot :) for Linux kernel, Marc Klein-Budde for can-utils, Nikolaus Voss, Bernhard Reutner-Fischer and Denys Vlasenko for busybox, Florian Westphal and Pablo Neira Ayuso for libmnl, Giulio Benetti, Yann E. Morin and Thomas Petazzoni for buildroot.

Long live open source!

Tip

Need CAN bus or MMU-less Linux support for your embedded product? Amarula Solutions specializes in Linux kernel upstreaming for industrial and automotive interfaces, including CAN, across MMU and MMU-less platforms. Contact our kernel team

Previous Next

© Copyright 2026, Amarula Solutions.

Built with Sphinx using a theme provided by Read the Docs.