Linux 4.16 released, Bootlin contributions

Penguin from Mylène Josserand
Drawing from Mylène Josserand,
based on a picture from Samuel Blanc under CC-BY-SA

4.16 out for a week now, it shouldn’t come as a surprise that it’s time for our traditional article summing up our most recent contributions to the latest version of the Linux kernel.

LWN.net did again an interesting coverage of this release cycle merge window, highlighting the most important changes: the first half of the 4.16 merge window and the rest of the 4.16 merge window. For 4.16 only, we have a total of 183 patches merged.

According to LWN statistics, Bootlin stands at the 13th place in the company ranking in terms of number of lines changed and we even have one of our engineers, Miquèl Raynal, appearing in the top 20 contributors with regards to number of lines changed thanks to his complete rework of the Marvell NAND controller driver and his addition of the exec_op() API to the NAND framework.

The main highlights of our contributions are:

  • For Marvell platforms,
    • Antoine Ténart improved the inside-secure crypto accelerator driver to support the EIP97 variant of the hardware block, which is used on the Marvell Armada 3700. This driver was already supporting the EIP197 variant, used on Marvell Armada 7K/8K. This new EIP97 support allows to enable the use of the crypto accelerator on the popular EspressoBin platform, a $49 board based on the Marvell Armada 3700,
    • Antoine Ténart also contributed a number of fixes to the inside-secure crypto accelerator driver,
    • Antoine Ténart also contributed a few fixes to the mvpp2 network driver, used for the Ethernet controller on the Marvell Armada 7K/8K.
    • Gregory Clement contributed DVFS support for Armada 37xx CPUs,
    • Miquèl Raynal added support for thermal sensors in A7K/A8K SoC families,
    • Miquèl Raynal completely rewrote the Marvell NAND controller driver to use the exec_op() API he has contributed,
    • Thomas Petazzoni fixed a few errors in several Marvell DTS files,
  • In the PCI subsystem, Cyrille Pitchen contributed a driver for Cadence’s PCIe endpoint and host controllers,
  • In the MTD subsystem,
    • Both Boris Brezillon and Miquèl Raynal contributed numerous fixes,
    • Miquèl Raynal contributed the exec_op API to simplify how NAND controllers interact with the core with regards to sending NAND operations. For more details about Miquèl’s work, see the video and slides of his talk at the latest ELC,
  • For Microsemi Ocelot platforms:
    • Alexandre Belloni added support for Microsemi Ocelot SoC’s pinctrl. This is the very first piece of the support for the Microsemi VSC7513/7514 MIPS processors, with the rest of the basic platform support expected to appear in 4.17,
  • For Allwinner platforms:
  • Alexandre Belloni fixed a few race conditions in the AC100 RTC driver,
  • Maxime Ripard also contributed a fix for gpiolib failing to defer its probing until a GPIO controller is registered,

Bootlin engineers are not only contributors, but also maintainers of various subsystems in the Linux kernel, which means they are involved in the process of reviewing, discussing and merging patches contributed to those subsystems:

  • Maxime Ripard, as the Allwinner platform co-maintainer, merged 66 patches from other contributors
  • Boris Brezillon, as the MTD/NAND maintainer, merged 73 patches from other contributors
  • Alexandre Belloni, as the RTC maintainer and Atmel platform co-maintainer, merged 23 patches from other contributors
  • Grégory Clement, as the Marvell EBU co-maintainer, merged 16 patches from other contributors

Here is the commit by commit detail of our contributions to 4.16:

Author: Quentin Schulz

Quentin Schulz was an engineer at Bootlin between 2016 and 2018. See https://bootlin.com/company/staff/quentin-schulz/ for details.

Leave a Reply