Demystifying the Kernel Boot Sequence: From ‘Starting Kernel…’ to Userspace”

Board booting

As kernel developers, we often find ourselves writing device drivers—pieces of code that are typically registered using module_init() in the Linux kernel. But have you ever paused to wonder: just how late in the boot process does this happen? What exactly takes place between the moment we see the famous "Starting kernel..." message and the point where drivers are finally registered and devices probed?

If you’re curious about the intricate steps that occur before the system even reaches a working init process, you’re in the right place. Join us as we explore the fascinating journey of the Linux kernel boot sequence—step by step.

Throughout this article, you’ll find clickable links to our Elixir source code browser. We encourage you to dive in and follow along!

Continue reading “Demystifying the Kernel Boot Sequence: From ‘Starting Kernel…’ to Userspace””

Zephyr: making a driver for the Nunchuk joystick

ZephyrThis post is the fifth blog post in our series of blog posts 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

In this 5th blog post, we are going to implement a driver for the Nunchuk joystick from Nintendo. The Nunchuk is a simple joystick, which has the advantage of having a very simple interface that relies on the I²C bus.

Continue reading “Zephyr: making a driver for the Nunchuk joystick”

Back from Netdev 0x19

Netdev 0x19Around mid-March, Bootlin engineers Köry Maincent and Romain Gantois had the chance to attend edition 0x19 of the Netdev conference, where developers from the Linux kernel networking community assemble for four days of technical presentations and discussions.

They were generally very much impressed by the quality and detail of the talks given during this conference, and they have selected two of the talks that they found the most interesting, which they summarized below. We expect the slides and videos to be published at some point in the future, but they don’t seem to be available at the moment.

Continue reading “Back from Netdev 0x19”

Call for papers for OSS Europe, ELC Europe, Zephyr Developer Summit: until April 14

Open Source Summit Europe 2025Aside from the upcoming Embedded Recipes conference in Nice on May 14-16, one of the most significant events for the open-source embedded community in Europe will be the Open Source Summit Europe. In particular, its key sub-conferences—the Embedded Linux Conference (ELC) and the Zephyr Developer Summit—will bring together experts, developers, and enthusiasts. This conference will take place on August 25-27, 2025, in Amsterdam.

These events thrive on high-quality technical talks, making the selection of topics crucial. To shape a great program, the Call For Papers is open until April 14, 2025. If you’re working on an exciting project related to Embedded Linux or Zephyr, we strongly encourage you to submit a proposal! Keep in mind that this is an open-source conference, so commercial talks and sales pitches are not suitable—the focus is purely on technical content.

Presenting at the conference is an excellent opportunity to share your expertise with a global audience. All talks are recorded and made freely available online, ensuring that your contributions reach a wider community even beyond the event.

At Bootlin, we have a long history of engagement with the Embedded Linux Conference—our engineers have delivered numerous talks, and we have actively contributed to the program selection process. For 2025, Bootlin CEO Thomas Petazzoni is once again part of the Program Committee for the Embedded Linux Conference Europe, helping to curate an outstanding lineup of talks.

Don’t miss this opportunity—submit your talk and be part of the conversation shaping the future of embedded systems!

Linux 6.14 released, Bootlin contributions inside

Penguin coding, AI generatedLinux 6.14 was released last week, and as usual, we recommend checking out the LWN articles covering the 6.14 merge window (part 1, part 2) to get a good sense of the main new features and updates in this release.

Bootlin engineers have once again been busy contributing to this kernel release, with 125 commits authored by Bootlin engineers, and 60 patches reviewed and merged by Bootlin engineers who are maintainers of specific parts of the Linux kernel.

Continue reading “Linux 6.14 released, Bootlin contributions inside”

Bootlin at Embedded Recipes 2025

Embedded RecipesAfter a break in 2024, the Embedded Recipes conference is back in 2025! It will take place in Nice, France from May 14 to May 16.

Bootlin is a Chef Sponsor of the event, and we will have a strong participation, with numerous engineers from our team attending the conference. Indeed no less than 15 engineers from our team will participate: Alexandre Belloni, Alexis Lothoré, Antonin Godard, Bastien Curutchet, Hervé Codina, Jérémie Dautheribes, João Marcos Costa, Köry Maincent, Mathieu Dubois-Briand, Miquèl Raynal, Richard Genoud, Théo Lebrun, Thomas Petazzoni, Thomas Perrot and Thomas Richard.

Even if the schedule is yet to be published, the Embedded Recipes organizers have always managed to put together an excellent line-up of talks and speakers, so we definitely recommend to anyone working on embedded Linux topics to join us and attend Embedded Recipes!

Improving the eBPF tests in the kernel

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 !

Continue reading “Improving the eBPF tests in the kernel”

Bootlin at Netdev 0x19, THE Technical Conference on Linux Networking

Netdev 0x19The Netdev conference is THE annual event dedicated to Linux networking, featuring numerous talks, presentations, and discussions on all aspects of network support in the Linux kernel and ecosystem. It takes place this year on March 10-13 in Zagreb, Croatia.

Given the importance of these topics to Bootlin, our engineers Köry Maincent and Romain Gantois are attending in person. Köry has contributed to Linux’s new Power over Ethernet support and improvements in PTP timestamping flexibility, while Romain is actively working on SFP support. Additionally, Bootlin networking expert Maxime Chevallier will be following the conference remotely.

Attending Netdev is essential for Bootlin, enabling our engineers to stay at the forefront of Linux networking advancements, collaborate with key contributors, and take part in discussions shaping the future of networking in the Linux kernel. By actively participating, we ensure that Bootlin continues to make meaningful contributions to the ecosystem while strengthening our expertise to better support our customers and open-source initiatives.

The NIST’s new plan for digital signatures: impact on secure boot

NIST Special Publication 800 – 131AIn 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”

Welcome to Miguel Gazquez

Miguel GazquezWe’re delighted to welcome Miguel Gazquez to our team!

In fact, Miguel has been part of Bootlin for quite some time already. He completed his final-year internship with us from March to August 2024, working on the Zephyr open-source real-time operating system. This project contributed to his successful graduation from Sorbonne University. In December 2024, he officially joined Bootlin as a full-time engineer, expanding his focus beyond Zephyr to include embedded Linux projects.

Miguel has already made significant upstream contributions to Zephyr, including a sensor driver, a MIPI DBI driver enabling display support, and an input driver. He has earned the Zephyr Technical Contributor badge, granted by the Linux Foundation. Additionally, he has shared valuable insights on Zephyr and driver development in a series of blog posts on our blog.

For more details, visit Miguel’s page on our website. Once again, a warm welcome to Miguel!