BayLibre contributions to Linux v7.0
Linux v7.0 was released on April 12, 2026. BayLibre contributed 127 authored commits across multiple subsystems.
Driver Core: Bus Method Migration
Uwe Kleine-König continued a cross-subsystem effort to migrate bus drivers away from the generic struct device_driver callbacks to bus-specific equivalents. For FSI, the migration included centralizing bus assignment in fsi_driver_register() and making fsi_bus_type private. For TEE, registration helpers including module_tee_client_driver() were added to reduce boilerplate. For SCSI, scsi_{,un}register_driver() was changed to take a struct scsi_driver directly. For PCI/portdrv, the migration also fixed a potential resource leak. Beyond these, the same pattern was applied to TEE client drivers, SDIO, serdev, SoundWire, ALSA seq, greybus, host1x, MHI, fsl-mc, and gpio stub, with all in-tree drivers in each subsystem converted.
In the au1100fb framebuffer driver, Uwe replaced the license boilerplate with an SPDX header, folded au1100fb.h into its only user, replaced custom printk wrappers with pr_* macros, made the driver compilable on non-MIPS platforms, and moved device-specific data out of global variables.
As PWM maintainer, Uwe emitted native waveform configuration in /sys/kernel/debug/pwm for drivers that support the waveform API. He committed external contributions including Rust PWM abstractions, Devicetree binding fixes, and PWM driver improvements.
IIO
ADXL380
Francesco Lavra optimized FIFO reads in the ADXL380 interrupt handler to use a single regmap_noinc_read() call, enabling 16 kHz sampling on all three axes over a 1 MHz I2C bus. He fixed a FIFO overread by rounding down the entry count to a multiple of the number of enabled scan elements, since the sensor writes one channel sample at a time regardless of how many channels are active. He also added 1 kHz sampling frequency support via the SAR signal path in VLP mode.
ST_LSM6DSX
Francesco fixed st_lsm6dsx_set_fifo_odr() to apply only to the internal accelerometer and gyroscope sensors, preventing incorrect register writes for external sensors accessed via the sensor hub. He removed the buffer sampling frequency sysfs attribute from non-accelerometer sensors to prevent out-of-bounds access to the two-entry odr_table array. He refactored the event management infrastructure to support multiple event types per axis and used it to add tap event detection for the LSM6DSV chip family.
David Lechner fixed big-endian scan buffer issues in vcnl4035 and ti-adc161s626, and added a DMA-safe buffer for spi_read() in the latter. He added an IIO_DECLARE_QUATERNION() macro to enforce 16-byte alignment for quaternion buffer fields and used it to fix hid-sensor-rotation. That same driver also needed a timestamp hack to write timestamps to both the old and new offset, since both locations potentially accumulated years of userspace dependence.
SPI: Multi-Lane Support
David Lechner added multi-lane SPI support to the kernel. He added ctlr->num_data_lanes to indicate multiple physical serializers and a multi_lane_mode field to struct spi_transfer for peripherals that require coordinated access across lanes. The Devicetree bindings were extended: spi-{rx,tx}-bus-width changed from scalar uint32 to arrays where the array length indicates the number of data lanes, and new spi-{tx,rx}-lane-map properties were added for mapping peripheral lanes to controller lanes when lanes are skipped. The AXI SPI Engine driver gained support for SPI_MULTI_LANE_MODE_STRIPE, enabling simultaneous reads from multiple ADC channels with separate SDO lines on the v2.0.0 IP core. Corresponding dt-bindings for the ADI AXI SPI engine and a documentation page for multi-lane support were added.
ARM64: Amlogic Devicetree
Jerome Brunet fixed critical MMC clock issues on Amlogic SoCs, where incorrect settings broke low-speed initialization.
As Amlogic clock maintainer, Jerome Brunet committed clock support for the T7 SoC family (PLL, peripheral, and SCMI clock controllers), video encoder and demodulator clocks for S4, and HDMI PLL output divider constraints for GXL/GXM and G12A/G12B/SM1 SoCs.
ARM: OMAP
As ARM OMAP maintainer, Kevin Hilman committed Devicetree fixes, reference count and error handling corrections, and removal of unused symbols and drivers for the OMAP platform. He also acked the removal of the legacy OMAP cpufreq driver.
DRM
David Lechner fixed bad pixel data in the ST7586 display driver caused by incorrect dbi->write_memory_bpw configuration, which produced a three-column byte swap visible as display corruption.
Francesco Lavra fixed the page start calculation in the Solomon SSD130x display controller for dirty rectangle updates in page addressing mode. The start page value was incorrectly set without taking into account the top-left Y coordinate.
VT
Nicolas Pitre fixed alternate screen support in the virtual terminal: alternate screen switching saved vc_origin but not vc_uni_lines, causing garbled display when returning from the alternate screen. The fix adds vc_saved_uni_lines to mirror the existing save/restore of vc_origin, fixing a regression from commit 23743ba64709.
Summary
| Type | Count |
|---|---|
| Authored | 127 |
| Signed-off-by | 2 |
| Acked-by | 4 |
| Reviewed-by | 15 |
| Suggested-by | 1 |
