Bootlin’s Yocto training course updated to Wrynose

Yocto ProjectThe latest Long Term Support release of the Yocto Project, Yocto Project 6.0 (Wrynose), was released a few months ago, so it was time to update our Yocto Project training materials. This update is now complete.

As with every new Yocto Project release, Wrynose brings a number of changes and new features. Some of them affect the way developers work with Yocto, so we have updated our slides and labs accordingly. In particular:

  • The bitbake-setup tool was introduced as the Yocto Project-supported way to fetch layers and set up a build configuration. This has been a long-requested feature, and it is now covered in our training.
  • As part of this change, the Poky Git repository has been deprecated and is no longer maintained. Users now fetch the base components through a bitbake-setup configuration file or by using an external tool.
  • Support for configuration fragments was added, making it possible to group related and consistent configuration settings together. This is intended to simplify configuration management, whether or not bitbake-setup is being used. The new bitbake-config-build command can be used to enable these fragments from the command line.
  • There are also internal changes that affect how recipes should be written. These changes are reflected in our training materials. For example, the introduction of UNPACKDIR changes how the S and WORKDIR variables can be used.

Updated labs

We continue to support four different boards in our practical labs:

  • STM32MP157A-DK1
  • i.MX93 FRDM
  • BeaglePlay
  • BeagleBone Black

For each of these platforms, we use either vendor-provided or community-supported layers, each approach has its own advantages and limitations.

The labs have therefore been updated alongside the training slides to ensure that they remain aligned with the latest Yocto Project release.

Join our Yocto Project training

As with all Bootlin training courses, the Yocto Project training materials are freely available on our website.

If you would like to attend the training with an instructor, we offer public online sessions scheduled by Bootlin. We can also organize private online or private on-site sessions on demand.

Our next public sessions with available seats are:

Whether you are new to the Yocto Project or want to update your existing knowledge, our training provides both the concepts and hands-on experience needed to build and maintain embedded Linux systems with Yocto.

meta-kiss: updates to our simple Yocto layer

meta-kissYocto is often seen as fairly complex, and at Bootlin we believe one reason for this perception is the unnecessary complexity of the BSP layers provided by silicon or board vendors, each of which often includes highly custom logic that isn’t needed. That’s why, back in 2023, we released meta-kiss, an example layer demonstrating how simple it can be to support various hardware platforms with Yocto, without relying on any vendor-provided BSP layer.

Since then, we’ve kept this layer up-to-date and added several new features. In this blog post, we’d like to highlight recent significant updates: an upgrade to Yocto Scarthgap, support for the i.MX93 FRDM platform, and the ability to build OP-TEE for the previously supported STM32MP1 platform.

Continue reading “meta-kiss: updates to our simple Yocto layer”

Adding support for the MAX7360 keypad controller in the Linux kernel

MAX7360Among all activities I’ve been doing at Bootlin during the past few months, one has been to add support for the Maxim MAX7360 Key-Switch Controller and LED Driver/GPIOs chip to the Linux kernel. Together with my colleague Kamel Bouhara, we developed Linux kernel device drivers to support it and upstreamed them to the mainline kernel. The full set of drivers have been merged in the upstream Linux kernel, and will be available in the upcoming Linux 6.18 release.

In this blog post, we will share some details on how this hardware works, and how it is now supported by the Linux kernel.

Continue reading “Adding support for the MAX7360 keypad controller in the Linux kernel”