As part of a partnership with the eBPF Foundation, Bootlin engineers Bastien Curutchet and Alexis Lothoré are working with the kernel community in order to improve eBPF support in the kernel on different aspects. This post is the first one of a series highlighting this effort. For those who need to catch up with the eBPF technology, you can take a look at our “Linux Debugging, tracing and profiling” training course which has been recently updated with eBPF basics !
Category: Technical
The NIST’s new plan for digital signatures: impact on secure boot
In October 2024, the National Institute of Standards and Technology (NIST) published an initial public draft of Special Publication 800 – 131A, with the title “Transitioning the Use of Cryptographic Algorithms and Key Lengths”.
It details how the NIST expects the requirements for use of cryptography to protect non-classified information to evolve.
There are several key points, such as abandoning ECB and SHA-1, but the main one this post will investigate is digital signatures.
Continue reading “The NIST’s new plan for digital signatures: impact on secure boot”
Integrating ST7789H2 Display Support on STM32L562E-DK with Zephyr: A Step-by-Step Guide
This blog post is a continuation of our series of blog posts on Zephyr, in which we already discussed Getting started with Zephyr, Understanding Zephyr’s Blinky Sample, and Zephyr: implementing a device driver for a sensor.
In this fourth blog post in our series, we will see how to add support in Zephyr for the display panel available on the STM32L562E-DK board.
Linux 6.13 released, Bootlin contributions inside
Linux 6.13 has been released last Sunday and a few lucky kernel developers won some guitar pedals assembled by Linus Torvalds himself! As usual, we recommend looking at the excellent coverage from LWN.net of the 6.13 merge window to get a high-level overview of the main changes and new features: part 1 and part 2. KernelNewbies also has a nice thoroughly documented page about the Linux 6.13 updates.
On our side, we contributed a total of 96 patches to this release, making Bootlin the 22nd contributing company by number of commits. In addition to those direct contributions, Bootlin engineers also reviewed/merged 77 patches from other contributors, as part of their role of being kernel maintainers. Most notably, Alexandre Belloni reviewed/merged 53 patches from other contributors as the RTC and I3C subsystems maintainer, while Miquèl Raynal merged 17 patches from other contributors as an MTD subsystem co-maintainer.
Continue reading “Linux 6.13 released, Bootlin contributions inside”
Updated Buildroot support for STM32MP1 and STM32MP2 platforms, ST BSP v6.0
The buildroot-external-st project is an extension of the Buildroot build system with ready-to-use configurations for the STMicroelectronics STM32MP1 and STM32MP2 platforms.
More specifically, this project is a BR2_EXTERNAL
repository for Buildroot, with a number of defconfigs that allow to quickly build embedded Linux systems for the STM32MPU Discovery Kit platforms and Evaluation board. It’s a great way to get started with Buildroot on those platforms.
Today, we are happy to announce an updated version of this project, published under the branch st/2024.02.9
at https://github.com/bootlin/buildroot-external-st.
Continue reading “Updated Buildroot support for STM32MP1 and STM32MP2 platforms, ST BSP v6.0”
Cyber Resilience Act (CRA) – overview
The Cyber Resilience Act (CRA) was adopted by the European Council on October 10, 2024. It was then published in the Official journal of the EU on November 20, 2024 and enters into force today, December 10, 2024. Most of the law will start applying in 3 years, on December 11, 2027.
However, the obligation for manufacturers to report any actively exploited vulnerability or any security incident impacting the security of their product to ENISA will apply from September 11, 2026.
The other parts of the law that will start applying from June 11, 2026 apply to the member states and specify the details of setting up the administrative entities that will assess conformity with the CRA.
At Bootlin, we have been paying close attention to this topic for several reasons. First, the CRA will affect a large number of our clients, as almost every embedded device sold in the EU will need to comply with it. Second, the CRA also affects us directly, for instance as the maintainer of Snagboot.
This post is therefore the first in a series that will present our understanding of the CRA, and clearly lay out what one needs to have in mind in order to be confident of one’s compliance on time.
OpenWrt support for STM32MP updated and STM32MP2 added
Bootlin is happy to announce a new release of our OpenWrt feed openwrt-feed-st, which provides integration of ST’s STM32MP platforms with the OpenWrt build system. This new release openstlinux-6.1-openwrt-master-mpu-v24.06.26 updates the BSP software components and adds support for the new STM32MP2 platform.
Continue reading “OpenWrt support for STM32MP updated and STM32MP2 added”
Upgrading Snagboot to a fully-fledged factory flashing tool
Snagboot is a fully open-source and vendor-agnostic recovery and flashing tool released by Bootlin in 2023. It is composed of snagrecover
and snagflash
, which respectively run U-Boot on a target platform using USB recovery mode and flash non-volatile storage devices using USB gadgets exposed by U-Boot.
While the combination of snagrecover
and snagflash
allows to reflash a board during development, it doesn’t fully address the needs of factory flashing: fast processing of multiple boards in parallel, monitoring of individual board statuses during the flashing process, and compatibility with Windows, which is the most often used operating system on factory floors.
Back in March 2024, Texas Instruments contacted Bootlin with a project request: to grow Snagboot into an efficient factory flashing tool. The goal was for factory operators to have a way of efficiently flashing groups of devices using a single user-friendly interface.
While this project could have been executed internally by engineers at Texas Instruments, the team at TI realized the importance of keeping this work agnostic to TI and driving this truly as an Open Source project. We thank TI for partnering with us and sponsoring us to deliver this tool that will cater to the flash writing needs of a variety of small and medium sized manufacturing houses & industry in general.
Consequently, Bootlin is proud to release the 2.0 version of Snagboot, which includes a factory flashing tool that runs on both Windows and Linux!
This tool supports a wide range of platforms from different vendors. All boards using supported SoCs are themselves supported without any extra effort, provided proper U-Boot support exists and USB recovery ports are routed in hardware.
Continue reading “Upgrading Snagboot to a fully-fledged factory flashing tool”
Linux 6.12 released, Bootlin contributions inside
Linux 6.12 has been released during the past week-end, pretty much as expected after 7 release candidates. As usual, we recommend our readers to go through the amazing LWN.net articles covering the 6.12 merge window (part 1, part 2) to get a high-level overview of the major new features and improvements in this 6.12 release. One of the prominent improvement in this release, as far as the embeded industry is concerned, is obviously the merge of the final bits enabling PREEMPT_RT… which already caused our Real-Time Linux with PREEMPT_RT training course to be updated.
As usual, Bootlin again contributed to this release: with 118 commits merged, we are again in the top 20 contributing companies! Also, in addition to contributing our own code, several of our engineers are also maintainers, and as part of this work those engineers review and merge patches from other contributors. As part of this effort, for this 6.12 release:
- Alexandre Belloni, as the RTC and I3C subsystems maintainer, merged 29 patches from other contributors
- Miquèl Raynal, as the MTD subsystem co-maintainer, merged 24 patches from other contributors
- Grégory Clement, as the Marvell platform maintainer, merged 4 patches from other contributors
Overall, 13 active Bootlin engineers made contributions to this release, which on a total staff of 24 people, means that more than half of our team has contributed to the Linux kernel for 6.12, a good indication of our strong focus on Linux kernel development and upstreaming!
Continue reading “Linux 6.12 released, Bootlin contributions inside”
2025 internships at Bootlin
We have just published our 2025 internships booklet, documenting the internship topics we are offering to students in engineering who are completing their studies by a final internship.
Since this is mainly targeted at students based in France, who can join our offices in Lyon (France) or Toulouse (France), the internship descriptions are in French.
The topics we are proposing this year are:
- exploration of Machine Learning solutions for embedded Linux
- improvement of Snagboot, the universal embedded flashing tool
- drivers and hardware support in Linux or U-Boot
- enhancement of Device Tree support in the Linux kernel
- porting Bootlin training to Qemu
- evaluation and porting of Bootlin training to a new hardware platform
- contributions to the Yocto ecosystem
- contribution to the Buildroot project
- monitoring the security of Linux BSPs
- reference implementation of a secure embedded Linux OS
- Ultra Wide Band (UWB) support in the Linux kernel
- open topic on embedded Linux or Zephyr