Linux v7.3 was released on October 18, 2026. BayLibre contributed 158 authored commits: the tree-wide device-ID modernization, Allwinner A733 clock support, a new TI ADC driver, a Meson AIU audio rework, and fixes across serial, USB and DRM. The release also made Jerome Brunet a clk co-maintainer. Uwe Kleine-König ranked 12th by changesets with 115.
Device ID conversion and definitions
Device-id headers reach almost every driver, so v7.2’s per-subsystem split pays off through include cleanups — this cycle <linux/mdio.h> stopped pulling in <linux/mod_devicetable.h> for the roughly 925 object files that included it. Uwe Kleine-König dropped the same include from greybus, MIPS ip22-gio, and the Qualcomm and Samsung clock drivers.
The stated endpoint: Uwe is making .driver_data in every device-id struct an anonymous union of an integer and a pointer. His zorro series takes the pointer side with a new driver_data_ptr member, and a 12-patch series of definition improvements across drivers/misc and the eeprom drivers prepares the same ground.
The conversion also caught real bugs. In pch_phub, an earlier enum conversion had shifted the device-variant values by one while one code location still compared the old constants, which Uwe corrected.
Two drm/hyperv probing issues surfaced the same way. The PCI match array implicitly required subvendor and subdevice to be zero, so only hardware reporting those zeros auto-probed; Uwe made the requirement explicit. He also ensured a failed vmbus registration no longer leaves the PCI driver registered through module unload.
The bulk of the work is cleanup. Uwe unified device-ID arrays — named initializers, PCI_DEVICE macros, dropped zero entries and unused driver data — across IIO (12 patches), NFC (12), PWM (7), ASoC (6), and the zorro SCSI and ATA drivers (4), plus single patches from drm and serial to parport. The largest, for the media PCI drivers, touched 33 files. The changes are declarative — matching behavior unchanged — and the IIO sweep is net code deletion, dropping chip-info abstractions.
In the Thunderbolt service-driver API, Uwe dropped the matched device ID from .probe(), which no in-tree driver used. A service driver without a probe callback now fails at registration instead of NULL-dereferencing on first match. The signature change is the one driver-facing API break in the sweep.
Clocks
Jerome Brunet added Allwinner A733 support to the sun6i-RTC clock driver: a new allwinner,sun60i-a733-rtc compatible and four new gate clocks — HDMI, UFS, and two SerDes — fed from the DCXO crystal oscillator. The A733 auto-detects its crystal (19.2, 24, or 26 MHz) to derive the 32 kHz reference. He tested the series on the Radxa Cubie A7A; bindings followed for the A733’s NMI, MMC and SPI controllers.
Series review surfaced a probe bug: when a controller’s registered-clock count differed from its hw-clock array size, the error path could leave clocks registered or read the array out of bounds. Jerome fixed the bug, found by the sashiko AI reviewer. He also corrected rate propagation through pre-divided muxes, which could compute wrong rates.
Clock providers must not use the consumer API. Jerome switched four providers in this release — mvebu, Qualcomm, ST and Tegra — to their clk_hw equivalents. He also committed two Amlogic A9 clock-controller series and a meson clock fix — his first clk patches committed as co-maintainer.
Jerome became a clk co-maintainer this cycle, joining Stephen Boyd and Brian Masney after Michael Turquette stepped down; Uwe Kleine-König’s MAINTAINERS cleanup removed Turquette’s entry with his ack.
IIO
David Lechner wrote an IIO driver for the TI ADS112C14 and ADS122C14 I2C ADCs — 16- and 24-bit parts for resistive sensors: RTDs, thermocouples, Wheatstone bridges. Each Devicetree channel node describes the full conditions for one measurement: per-channel excitation current, reference source, and bipolar mode. When REFP/REFN sit across a resistor driven by the ADC’s own current outputs, the channel reports resistance instead of voltage.
The generic input-chopping property David Lechner added alternates input polarity every other conversion to cancel offset error. Labeled system-monitor channels expose internal temperature, both rails, the external reference, and an internal-short calibration channel; the PGA offers sixteen gains.
A follow-up series added buffered read support. David’s triggered-buffer scans collect multiple channels per sample — the chip has no hardware sequencer, so each channel converts single-shot. Direct reads verify a CRC8 on every I2C transaction, while buffered reads pass the CRC byte to userspace so it can check each sample itself. Raw register access via debugfs rounds out diagnostics.
Angelo Dureghello added a driver for the 12-bit DAC built into the NXP ColdFire mcf5441x SoCs, tested on the Sysam stmark2 board. It exposes the standard out_voltage_raw interface.
Francesco Lavra fixed the enable-mask bookkeeping in the st_lsm6dsx IMU’s sensor-fusion path: with fusion enabled, stale sensor counts split FIFO reads into multiple bus transactions and could read past the FIFO length. The fix is tagged for stable backport.
ASoC: Meson AIU
Valerio Setti restructured the Meson AIU I2S encoder on GX SoCs to the same formatter/interface split the newer AXG TDM path uses: a formatter prepares the I2S data descriptor, an interface owns the clocks and pins. The split prepares for the upcoming I2S capture support which is planned next.
A follow-up series makes incompatible stream configurations visible during parameter refinement instead of failing late. Valerio turned the BCLK quirk restriction into ALSA hw rules on channels and sample bits, as Jerome Brunet suggested, and moved rate symmetry to the core’s symmetric_rate flag. He also made the quirk check symmetric, so it rejects a conflicting stream in either direction.
Fixes and small changes
Carlo Caione fixed intermittent serial-console hangs on MediaTek boards. When a UART deferred probing while waiting for its clocks, another port could claim ttyS0 first, so console=ttyS0 pointed at the wrong UART and boot appeared to hang — seen on the Genio 700 EVK. All enabled UARTs are now aliased across 12 MediaTek Devicetree files, and the 8250_mtk driver honors those aliases, keeping ttyS numbering stable regardless of probe order.
After a USB host suspended a DWC2 gadget controller into partial power down, its registers became inaccessible and the disconnect write never took effect, so the host kept seeing the device as connected. Francesco Lavra made the pull-up callback exit partial power down first; the fix is tagged for stable backport. Julien Stephan corrected the VID_DOWNSAMPLE_CONFIG register offset in the MediaTek HDMI v2 driver: the header had defined it at 0x8d0, the offset of the VID_CSC_COEFF_0 color-conversion coefficient register, instead of 0x8f0.
Markus Schneider-Pargmann removed __packed from the fprobe function-graph header. The attribute forces unaligned accesses, which do not preserve CHERI pointer capability tags, while the layout is unchanged on every architecture that uses the header. David Lechner named the BeagleY-AI’s 40-pin-header GPIOs in the Devicetree (gpio-line-names), so userspace can request them by their documented names.
As PWM maintainer, Uwe Kleine-König committed external series including Tegra264 PWM support and a Rust binding cleanup. As TI/omap co-maintainer, Kevin Hilman committed 15 external patches: PRU-ICSS support on AM335x, AM437x and AM57xx, defconfig updates, and Devicetree and OMAP2+ code fixes.
Summary
| Type | Count |
|---|---|
| Authored | 158 |
| Signed-off-by | 5 |
| Acked-by | 9 |
| Reviewed-by | 43 |
| Tested-by | 1 |
| Suggested-by | 1 |
