Welcome to Benoît Monin and Benjamin Robin!

We’re very happy to welcome in our team Benoît Monin and Benjamin Robin.

Benoît MoninIt’s been a few months already that Benoît Monin joined our team, as he started in May, just in time to participate to our yearly company-wide team week event in June. Benoît graduated from CPE Lyon in 2002, and then spent no less than 21 years at Centum Adeneo, where he worked on a large number of embedded projects, mostly Linux-based. He supported Alstom Transport on embedded systems used in train communication and signaling, including Linux porting, hardware integration on ARM platforms, and R&D on 5G train-to-ground communication. His past experience also includes work for Airbus on measurement and noise analysis systems, and for JDSU on high-speed communication test equipment using PowerPC. Benoît is also a contributor to open-source, as he contributes to OpenStreetMap and the openSUSE project. Since his arrival at Bootlin, Benoît has been mostly focused on Linux kernel upstream work, mainly around the Mobileye platforms. Check out Benoît’s page on bootlin.com for more details.

Benjamin RobinMore recently, in late August, Benjamin Robin also joined our team. This time, he joined just in time to participate to the recent Open Source Summit Europe in Amsterdam, a great opportunity to meet almost the entire Bootlin’s team, and also the embedded Linux community. Benjamin also graduated from CPE Lyon, but in 2011. Prior to joining Bootlin, Benjamin spent 14 years at Centum T&S, where he held roles as both an embedded software engineer and an embedded Linux engineer. Benjamin has primarily worked on ARM platforms for industrial customers, always with a strong focus on low-level development close to the hardware. His expertise spans from embedded Linux system development to critical bare-metal software on constrained platforms such as ARM Cortex-M. He has developed significant expertise in building custom BSP layers using Yocto for projects involving various frameworks, including Qt. Benjamin also has experience developing Linux drivers for customer-specific hardware. His platform experience covers a wide spectrum, from Xilinx Zynq 7000, OMAP, and TI Sitara processors, to i.MX SoCs, Marvell OCTEON SoCs, and even some experience with x86-based SoCs. Beyond his professional work, Benjamin contributes to various open source projects, fixing bugs and implementing enhancements to improve functionality. He for example actively supports the French-speaking Arch Linux community. Check out Benjamin’s page on bootlin.com for more details.

We are pleased to welcome Benoît and Benjamin to our Oullins office near Lyon. Their arrival brings the Lyon team to 12 members, now equaling the headcount of our Toulouse office.

Back from Open Source Summit Europe 2025: talks from Bootlin

Open Source Summit Europe 2025Bootlin had a very strong presence at the recent Open Source Summit Europe, with 26 members of our team attending the event, 8 talks given by our engineers, and a booth at the technical showcase.

As the Linux Foundation just posted the videos of all talks from the event, now is a good time to publish the slides of our talks, alongside with the videos.

Continue reading “Back from Open Source Summit Europe 2025: talks from Bootlin”

Bootlin toolchains 2025.08 released

Bootlin toolchains 2025.08We are excited to announce the release of a new version of our freely available, pre-compiled cross-compilation toolchains, hosted at toolchains.bootlin.com.

This update covers a range of 43 CPU architecture variants, including: aarch64, aarch64be, arcle-750d, arcle-hs38, armv5-eabi, armv6-eabihf, armv7-eabihf, armebv7-eabihf, armv7m, m68k-68xxx, m68k-coldfire, microblazebe, microblazeel, mips32, mips32el, mips32r5el, mips32r6el, mips64-n32, mips64el-n32, mips64r6el-n32, openrisc, powerpc-440fp, powerpc-e300c3, powerpc-e500mc, powerpc64-e5500, powerpc64-e6500, powerpc64-power8, powerpc64le-power8, riscv32-ilp32d, riscv64-lp64d, s390x-z13, sh-sh4, sh-sh4aeb, sparc64, sparcv8, x86-64, x86-64-v2, x86-64-v3, x86-64-v4, x86-64-core-i7, x86-core2, x86-i686, xtensa-lx60.

As with previous releases, we provide two editions of each toolchain: a stable version based on the N-1 releases of GCC, binutils, GDB, and slightly older kernel headers, and a bleeding edge version featuring the latest available components. For the 2025.08 release, the versions are:

  • Stable version: GCC 14.3, Binutils 2.43.1, GDB 15.2, Linux headers 5.4, glibc 2.41, musl 1.2.5, uclibc-ng 1.0.45
  • Bleeding edge version: GCC 15.1, Binutils 2.44, GDB 16.3, Linux headers 5.15, glibc 2.41, musl 1.2.5, uclibc-ng 1.0.45

All toolchains are built for x86-64 Linux hosts and are compatible even with relatively old Linux distributions. We welcome bug reports and feedback through our project issue tracker.

Congatec Board Controller support into the upstream Linux Kernel

Introduction

Congatec’s x86 System-on-Modules (SoM) include a Board Controller component connected to the processor via an eSPI bus, and providing various features such as I²C buses, GPIOs, a watchdog timer, and various sensors for monitoring voltage, fan speed, and more.

Conga-SA7 datasheet extract

For their x86 System-on-Modules (SoMs), Congatec provides a Yocto meta-layer: meta-congatec-x86. This meta-layer includes, among other components, a driver, a library, and tools for interfacing with the Board Controller.

The primary issue with the provided driver is its deviation from standard Linux APIs. It exposes a custom character device and relies on custom ioctl() for communication with userspace. This non-standard approach leads to compatibility and portability challenges. For example, an application using the standard Linux GPIO API would need to be adapted to access the GPIOs from Congatec’s Board Controller. Similarly, software designed specifically for the Board Controller’s GPIOs would require changes to work with GPIOs on other platforms.

Additionally, because the driver is out-of-tree, it raises concerns about long-term support and maintainability. Questions naturally arise—will the driver be regularly updated to remain compatible with future Linux kernel versions, given the instability of internal APIs? Will bugs and security vulnerabilities be addressed in a timely manner?

One of our customers, planning to use the Conga-SA7 board in a commercial product, recognized these challenges early on. As a result, they asked us to integrate support for the Congatec Board Controller directly into the mainline Linux kernel. Upstreaming the driver into the kernel would eliminate these issues by ensuring better portability, long-term maintenance, and community support.

Continue reading “Congatec Board Controller support into the upstream Linux Kernel”

Bouncing on trampolines to run eBPF programs

This blog post is the second installment in our eBPF blog post series, following our blog post about eBPF selftests.

As eBPF is more and more used in the industry, eBPF kernel developers give considerable attention to eBPF performance: some standard use cases like system monitoring involve hundreds of eBPF programs attached to events triggered at high frequencies. It is then paramount to keep eBPF programs execution overhead as low as possible. This blog post aims to shed some light on an internal eBPF mechanism perfectly showcasing those efforts: the eBPF trampoline.

Continue reading “Bouncing on trampolines to run eBPF programs”

Back from Display Next Hackfest 2025

This year, the Linux Display Next Hackfest was hosted by AMD in Toronto. The event brought together a diverse group of contributors from a wide range of projects and companies, all united by a shared interest in advancing Linux Graphics. Participants included kernel developers, compositor maintainers, hardware vendors, and others deeply involved in the graphics stack. For the second year in a row, I had the opportunity to attend in person—an important step for Bootlin, as staying closely engaged with the latest developments in the Linux Graphics Stack is key to delivering upstream-friendly, cutting-edge support for our customers.

As usual, a wide range of topics were discussed: commit failure feedback, backlight API, adaptive backlight management, testing, pageflip, scheduling, variable refresh rate (VRR), atomic commits, and others. What made this edition especially noteworthy was the presence of two color experts: a full day was dedicated to exploring HDR—what it is, how it works, and how we can support it properly in Linux.

Display Next Hackfest 2025

You can read the notes for this event on Harry’s blog, or from Xaver Hugl, more will probably be posted later by other participants.

Continue reading “Back from Display Next Hackfest 2025”

Linux 6.16 released, Bootlin contributions

Penguin coding, AI generatedLinux 6.16 was released last Sunday, and as usual LWN provides the best coverage of what’s new: part 1 and part 2, as well as the KernelNewbies.org page for this release.

This time around, the engineers at Bootlin contributed 89 patches to the 6.16 release, but also as maintainers, they reviewed/merged 117 patches from other contributors!

Continue reading “Linux 6.16 released, Bootlin contributions”

Snagboot 2.4 release overview

Snagboot 2.4Snagboot is an open-source and vendor-neutral tool to recover and reflash a wide variety of embedded platforms, leveraging the communication protocols offered by the boot ROMs of most modern system-on-chips. It replaces unpractical, vendor-specific and often closed-source tools provided by silicon vendors.

Spring 2025 has been especially rich in Snagboot contributions. Various bug fixes, feature requests and even support for additional SoC families have been submitted to the official  repository. Version 2.4 of Snagboot was released last Monday, which gives us a good opportunity to take a closer look at some of these improvements.

Continue reading “Snagboot 2.4 release overview”

Bootlin Gears Up for ELCE 2025 with 25 Engineers and 8 Talks

This year’s edition of the Embedded Linux Conference Europe will take place as part of the broader Open Source Summit Europe, on August 25–27 in Amsterdam, Netherlands.

Open Source Summit Europe 2025

As usual, Bootlin will have a strong presence at this major event in the Embedded Linux ecosystem. This year, however, our presence will be especially significant, with no fewer than 25 of our engineers attending and 8 talks given by our team. We’ll also be taking part in several co-located events.

Continue reading “Bootlin Gears Up for ELCE 2025 with 25 Engineers and 8 Talks”

Step-by-Step Guide to Adding SoC and Board Support to Zephyr with CH32V303

ZephyrThis post is the sixth in our series about Zephyr. You can find the previous episodes below:

  1. Getting started with Zephyr
  2. Understanding Zephyr’s Blinky example
  3. Zephyr: Implementing a Device Driver for a sensor
  4. Integrating ST7789H2 Display Support on STM32L562E-DK with Zephyr: A Step-by-Step Guide
  5. Zephyr: making a driver for the Nunchuk joystick

In this sixth post, we will explore how to add support for a new System-on-Chip (SoC) and a new board in the Zephyr operating system.

Continue reading “Step-by-Step Guide to Adding SoC and Board Support to Zephyr with CH32V303”