Linux 5.6 was released last Sunday. As usual, LWN has the best coverage of the new features merged in this release: part 1 and part 2. Sadly, the corresponding KernelNewbies page has not yet been updated with the usual very interesting summary of the important changes.
Bootlin contributed a total of 95 patches to this release, which makes us the 27th contributing company by number of commits, according to the statistics. The main highlights of our contributions are:
- Our work on supporting hardware-offloading of MACsec encryption/decryption in the networking subsystem and support for this offloading for some Microchip/Vitesse PHYs has been merged. See our previous blog post for more details about this work done by Bootlin engineer Antoine Ténart
- As part of our work on the Rockchip PX30 system-on-chip, we contributed support for LVDS display on Rockchip PX30, and support for the Satoz SAT050AT40H12R2 panel. This work was done by Miquèl Raynal
- Alexandre Belloni as the RTC maintainer did his usual number of cleanup and improvements to existing RTC drivers
- We did a number of small contributions to the Microchip AT91/SAMA5 platform: support for the Smartkiz platform from Overkiz, phylink improvements in the macb driver, etc.
- Paul Kocialkowski improved the Intel GMA 500 DRM driver to support page flip.
- Paul Kocialkowski contributed support for the Xylon LogiCVC GPIO controller, which is a preliminary step to contributing the Xylon LogiCVC display controller support. See our blog post on this topic.
In addition to being contributors, a number of Bootlin engineers are also maintainers of various parts of the Linux kernel, and as such:
- Alexandre Belloni, as the RTC subsystem maintainer and Microchip platforms co-maintainer, has reviewed and merged 55 patches from other contributors
- Miquèl Raynal, as the MTD co-maintainer, has reviewed and merged 21 patches from other contributors
- Grégory Clement, as the Marvell EBU platform co-maintainer, has reviewed and merged 12 patches from other contributors
Here is the detail of all our contributions:
- Alexandre Belloni (52):
- mailmap: Update email address for Alexandre Belloni
- rtc: define RTC_VL_READ values
- rtc: Document RTC_VL_READ and RTC_VL_CLR ioctls
- rtc: abx80x: return meaningful value for RTC_VL_READ
- rtc: pcf2127: return meaningful value for RTC_VL_READ
- rtc: pcf8523: return meaningful value for RTC_VL_READ
- rtc: pcf8563: remove RTC_VL_CLR handling
- rtc: pcf8563: remove conditional compilation
- rtc: pcf8563: stop caching voltage_low
- rtc: pcf8563: return meaningful value for RTC_VL_READ
- rtc: pcf85063: remove RTC_VL_CLR handling
- rtc: pcf85063: return meaningful value for RTC_VL_READ
- rtc: rv3028: remove RTC_VL_CLR handling
- rtc: rv3028: return meaningful value for RTC_VL_READ
- rtc: rv8803: avoid clearing RV8803_FLAG_V2F in RTC_VL_CLR
- rtc: rv8803: return meaningful value for RTC_VL_READ
- rtc: rx8010: remove RTC_VL_CLR handling
- rtc: rx8010: return meaningful value for RTC_VL_READ
- rtc: rv3029: use proper name for the driver
- rtc: rv3029: let regmap validate the register ranges
- rtc: rv3029: remove open coded regmap_update_bits
- rtc: rv3029: remove race condition when update STATUS
- rtc: rv3029: avoid reading the status register uselessly
- rtc: rv3029: get rid of rv3029_get_sr
- rtc: rv3029: simplify rv3029_alarm_irq_enable
- rtc: rv3029: simplify rv3029_set_alarm
- rtc: rv3029: drop rv3029_read_regs and rv3029_write_regs
- rtc: rv3029: add RTC_VL_READ and RTC_VL_CLEAR support
- rtc: rv3029: correctly handle PON and VLOW2
- rtc: rv3029: convert to devm_rtc_allocate_device
- rtc: rv3029: let the core handle rtc range
- PM: sleep: Switch to rtc_time64_to_tm()/rtc_tm_to_time64()
- rtc: rv3029: add nvram support
- rtc: rv3029: drop deprecated compatbiles
- rtc: rv3029: annotate init and exit functions
- rtc: rv3029: remove useless error messages
- ARM: dts: at91: nattis 2: remove unnecessary include
- ARM: dts: at91: sama5d3: fix maximum peripheral clock rates
- ARM: dts: at91: sama5d3: define clock rate range for tcb1
- rtc: at91rm9200: remove procfs information
- dt-bindings: rtc: at91rm9200: convert bindings to json-schema
- rtc: at91rm9200: add sama5d4 and sama5d2 compatibles
- rtc: at91rm9200: move register definitions to C file
- rtc: at91rm9200: avoid time readout in at91_rtc_setalarm
- rtc: at91rm9200: use FIELD_PREP/FIELD_GET
- rtc: Kconfig: properly indent sd3078 entry
- rtc: Kconfig: select REGMAP_I2C when necessary
- dt-bindings: rtc: at91rm9200: document clocks property
- net: macb: ensure interface is not suspended on at91rm9200
- net: cnic: fix spelling mistake “reserverd” -> “reserved”
- PM / hibernate: fix typo “reserverd_size” -> “reserved_size”
- net: macb: Properly handle phylink on at91rm9200
- Antoine Tenart (11):
- net: macsec: move some definitions in a dedicated header
- net: macsec: introduce the macsec_context structure
- net: macsec: introduce MACsec ops
- net: phy: add MACsec ops in phy_device
- net: macsec: hardware offloading infrastructure
- net: macsec: add nla support for changing the offloading selection
- net: phy: mscc: macsec initialization
- net: phy: mscc: macsec support
- net: macsec: PN wrap callback
- net: phy: mscc: PN rollover support
- net: phy: mscc: fix firmware paths
- Kamel Bouhara (3):
- Miquel Raynal (19):
- regulator: rk808: Lower log level on optional GPIOs being not available
- dt-bindings: phy: Fix the PX30 DSI PHY compatible in the example
- dt-bindings: display: rockchip-lvds: Declare PX30 compatible
- dt-bindings: display: rockchip-lvds: Document PX30 PHY
- drm/rockchip: lvds: Fix indentation of a #define
- drm/rockchip: lvds: Harmonize function names
- drm/rockchip: lvds: Change platform data to hold helper_funcs pointer
- drm/rockchip: lvds: Create an RK3288 specific probe function
- drm/rockchip: lvds: improve error handling in helper functions
- drm/rockchip: lvds: move hardware-specific functions together
- drm/rockchip: lvds: Add PX30 support
- arm64: dts: rockchip: Add PX30 DSI DPHY
- arm64: dts: rockchip: Add PX30 LVDS
- dt-bindings: Add vendor prefix for Satoz
- dt-bindings: display: simple: Add Satoz panel
- drm/panel: simple: Add Satoz SAT050AT40H12R2 panel support
- mtd: onenand: Use a better name for samsung driver
- mtd: onenand: Rename omap2 driver to avoid a build warning
- mtd: concat: Fix a comment referring to an unknown symbol
- Paul Kocialkowski (10):
- drm/gma500: Add missing call to allow enabling vblank on psb/cdv
- drm/gma500: Add page flip support on psb/cdv
- drm/gma500: Fixup fbdev stolen size usage evaluation
- dt-bindings: Add Xylon vendor prefix
- dt-bindings: mfd: Document the Xylon LogiCVC multi-function device
- dt-bindings: gpio: Document the Xylon LogiCVC GPIO controller
- gpio: Add support for the Xylon LogiCVC GPIOs
- rtc: hym8563: Return -EINVAL if the time is known to be invalid
- rtc: hym8563: Read the valid flag directly instead of caching it
- dt-bindings: mfd: Document the Xylon LogiCVC multi-function device

Like most of us, due to the Covid-19 epidemic, you may be forced to work from home. To take advantage from this time confined at home, we are now proposing all our training courses as online seminars. You can then benefit from the contents and quality of Bootlin
This time around, we’re quite late to the party, but Linux 5.4 was indeed released a number of weeks ago, and once again, Bootlin contributed a number of patches to this Linux kernel release. As usual, the most useful source of information to learn about the major features brought by Linux 5.4 are the LWN articles (
At Bootlin, we owe a lot to the Free Software community, and we’re doing our best to give back
Back in August 2017, we wrote in a 