Linus released Linux 6.14 on March 24, 2025. Once more, BayLibre was a significant contributor to the Linux kernel. Here are some of the areas we worked on.
Table of Contents
PM Domains
Kevin Hilman introduced new features to the TI SCI PM domains driver to handle low power constraints. Any drivers which have set PM QoS constraints will have these constraints communicated to the low-power firmware such that the firmware can make an informed decision about the low-power state chosen. This enhancement includes handling wake IRQs for IO daisy chain wakeups, adding wakeup constraint management, and implementing per-device latency constraint management.
Kevin also continues to maintain legacy OMAP SoCs where various cleanups and new features keep coming in. As the maintainer, he reviewed, applied, and committed several important patches from the community addressing DTS issues for TI platforms, fixing PM issues caused by SPI modules, correcting IRQ configuration on Nokia 770, and improving bus and interrupt-related functionality.
IIO
Uwe Kleine-König made significant improvements to the AD7124 driver and the supporting sigma-delta framework. He implemented temperature measurement in the AD7124 driver, improved error reporting during probe, fixed multiple race conditions in the ad_sigma_delta framework, added support for reading IRQ status using a GPIO, and implemented better device tree validation.
David Lechner continued the initiative to use the new devm_regulator_get_enable_read_voltage()
helper function across multiple DAC drivers. He converted the max5821, ltc2688, ltc2632, ad8801, and ad5686 drivers to use this function. Additionally, David fixed struct names in documentation comments, removed unused fields, and improved ABI documentation.
Angelo Dureghello worked on bug fixes for the AD3552R DAC and AD7606 ADC drivers. He corrected the wrong scale value in the AD7606 driver, fixed PWM names in ADI AXI ADC device tree bindings, addressed the reset status flag issue in the AD3552R driver, and fixed the ad3541/2r DAC ranges. These fixes were necessary groundwork for upcoming features in the next kernel release.
David Lechner also improved the IIO framework by combining current input sections in the IIO ABI, using channel number ‘Y’ consistently, converting DMA bindings to YAML schema, and improving documentation.
PWM
Working on the PWM framework, Uwe Kleine-König made several improvements including ensuring callbacks exist before calling them and converting PWM device tree bindings from text to YAML format. He handled the PWM subsystem’s review and maintenance as usual.
Kernel Infrastructure
Uwe Kleine-König worked on improving module symbol namespaces by fixing actual usage of I2C_DW_COMMON and I2C_DW symbol namespaces in the Designware I2C driver, improving usage of the HWMON_NCT6775 symbol namespace, and updating documentation for DEFAULT_SYMBOL_NAMESPACE.
Additionally, Uwe addressed GPL compliance issues, which was covered by LWN. By creating a patch to add a potential GPL offender to the block list, the company was incentivized to fix their issues quickly, avoiding being added to the mainline block list.
IRQ Chip Support
Guillaume La Roque added module build support for ti-sci-inta and ti-sci-intr. This work was done for Android context, where GKI (Generic Kernel Image) support requires SoC drivers to be modular instead of built-in.
Summary
Type | Count |
---|---|
Authored | 68 |
Signed-off-by | 3 |
Acked-by | 4 |
Reviewed-by | 17 |
Tested-by | 3 |
Suggested-by | 3 |
List of contributions
Hash | Subject | Role | Person |
---|---|---|---|
45d5fe1c53ba | ARM: davinci: da850: fix selecting ARCH_DAVINCI_DA8XX | Author | David Lechner |
5d702aa2a47b | iio: proximity: Fix use-after-free in hx9023s_send_cfg() | reviewed-by | David Lechner |
012b8276f08a | iio: dac: ad3552r-hs: clear reset status flag | reviewed-by | David Lechner |
1e758b613212 | iio: dac: ad3552r-common: fix ad3541/2r ranges | reviewed-by | David Lechner |
577a66e2e634 | iio: iio-mux: kzalloc instead of devm_kzalloc to ensure page alignment | reviewed-by | David Lechner |
bed883e4f040 | iio: adc: ad7944: Fix sign and use aligned_s64 for timestamp. | reviewed-by | David Lechner |
b5fd1849c684 | iio: ABI: combine current input sections | Author | David Lechner |
84b6b55584d2 | iio: dac: ad7293: enable power before reset | Author | David Lechner |
6ade82946f4c | iio: ABI: use Y consistently as channel number | Author | David Lechner |
06d5363296db | dt-bindings: dma: adi,axi-dmac: deprecate adi,channels node | Author | David Lechner |
788726fcea1f | dt-bindings: dma: adi,axi-dmac: convert to yaml schema | Author | David Lechner |
c3948d090080 | iio: adc: ad4000: Add support for PulSAR devices | reviewed-by | David Lechner |
fc8f63009549 | iio: adc: ad4000: Use device specific timing for SPI transfers | reviewed-by | David Lechner |
646acd46fc90 | iio: adc: ad4000: Add timestamp channel | suggested-by reviewed-by | David Lechner |
c437190ceaaa | iio: trigger: stm32-timer-trigger: Add check for clk_enable() | reviewed-by | David Lechner |
cb3e9a446763 | iio: adc: ad_sigma_delta: add tab to align irq_line | Author | David Lechner |
a05dc8b4d4aa | iio: buffer-dmaengine: document iio_dmaengine_buffer_setup_ext | Author | David Lechner |
2d6941932974 | dt-bindings: iio: adc: adi,ad4695: change include path | Author | David Lechner |
435004291c9a | iio: adc: ad4695: move dt-bindings header | Author | David Lechner |
9598866317fc | iio: dac: max5821: use devm_regulator_get_enable_read_voltage() | Author | David Lechner |
6f0588607864 | iio: dac: ltc2688: use devm_regulator_get_enable_read_voltage() | Author | David Lechner |
3ebb535f4f92 | iio: dac ltc2632: drop driver remove function | Author | David Lechner |
c15031ef6ef3 | iio: dac: ltc2632: use devm_regulator_get_enable_read_voltage() | Author | David Lechner |
276821d1e04c | iio: dac ad8801: drop driver remove function | Author | David Lechner |
451bdc1dc9cb | iio: dac: ad8801: use devm_regulator_get_enable_read_voltage() | Author | David Lechner |
6c009e55924a | iio: dac: ad5686: use devm_regulator_get_enable_read_voltage() | Author | David Lechner |
f596651dd6be | iio: dac: ad5686: fix struct name in doc comment | Author | David Lechner |
d6d9c45c90ef | iio: dac: ad5624r: fix struct name in doc comment | Author | David Lechner |
83f616a38427 | iio: adc: ad7173: remove unused field | Author | David Lechner |
b28fb1f2ef45 | modpost: Fix a few typos in a comment | Author | Uwe Kleine-König |
c8e0bd579ed3 | module: Put known GPL offenders in an array | Author | Uwe Kleine-König |
da6b35378699 | pwm: Ensure callbacks exist before calling them | Author | Uwe Kleine-König |
752b6e3af374 | pwm: microchip-core: fix incorrect comparison with max period | Committer | Uwe Kleine-König |
e8c59791ebb6 | pwm: stm32: Add check for clk_enable() | Committer | Uwe Kleine-König |
f0a4e9fa656c | i2c: designware: Actually make use of the I2C_DW_COMMON and I2C_DW symbol namespaces | Author | Uwe Kleine-König |
3c838184407f | gpio: altera: Drop .mapped_irq from driver data | Author | Uwe Kleine-König |
fcf22a957ff8 | doc: module: DEFAULT_SYMBOL_NAMESPACE must be defined before #includes | Author | Uwe Kleine-König |
3008178ef371 | doc: module: Fix documented type of namespace | Author | Uwe Kleine-König |
78dcad6daa40 | dt-bindings: pwm: Correct indentation and style in DTS example | Committer | Uwe Kleine-König |
f5ab868af55f | iio: adc: ad7625: Add ending newlines to error messages | Author | Uwe Kleine-König |
e439c72499a0 | iio: adc: ad_sigma_delta: Use unsigned int instead of plain unsigned |
Author | Uwe Kleine-König |
cce16e7f6216 | pwm: stm32-lp: Add check for clk_enable() | Committer | Uwe Kleine-König |
4ccf7e3553fe | dt-bindings: pwm: marvell,berlin-pwm: Convert from txt to yaml | Author | Uwe Kleine-König |
a0b67429fc41 | dt-bindings: pwm: sprd,ums512-pwm: convert to YAML | Committer | Uwe Kleine-König |
10435e0d2377 | pwm: Replace deprecated PCI functions | Committer | Uwe Kleine-König |
e490ceff433f | spi: spidev: Align ordering of spidev_spi_ids[] and spidev_dt_ids[] | Author | Uwe Kleine-König |
d5f9e83ca631 | ARM: dts: socfpga_cyclone5_mcvevk: Drop unused #address-cells/#size-cells | Author | Uwe Kleine-König |
a4ea3e41befd | hwmon: (isl28022) Drop explicit initialization of struct i2c_device_id::driver_data to 0 | Author | Uwe Kleine-König |
2505f87eb3af | hwmon: (nct6775): Actually make use of the HWMON_NCT6775 symbol namespace | Author | Uwe Kleine-König |
b690f5d955e0 | drm: Drop explicit initialization of struct i2c_device_id::driver_data to 0 | Author | Uwe Kleine-König |
6eaf3f60ab45 | iio: adc: ad7124: Implement temperature measurement | Author | Uwe Kleine-König |
abc61acde13c | iio: adc: ad7124: Add error reporting during probe | Author | Uwe Kleine-König |
132d44dc6966 | iio: adc: ad_sigma_delta: Check for previous ready signals | Author | Uwe Kleine-König |
07a28874bb49 | iio: adc: ad_sigma_delta: Store information about reset sequence length | Author | Uwe Kleine-König |
f522589c139d | iio: adc: ad_sigma_delta: Fix a race condition | Author | Uwe Kleine-König |
90b8b2fe60eb | iio: adc: ad_sigma_delta: Handle CS assertion as intended in ad_sd_read_reg_raw() | Author | Uwe Kleine-König |
a87ef09b1fdf | iio: adc: ad_sigma_delta: Add support for reading irq status using a GPIO | Author | Uwe Kleine-König |
fa6068fb7828 | dt-bindings: iio: adc: adi,ad7{124,173,192,780}: Allow specifications of a gpio for irq line | Author | Uwe Kleine-König |
9ecad7f404b5 | iio: adc: ad7124: Refuse invalid input specifiers | Author | Uwe Kleine-König |
cc597af18092 | iio: adc: ad7124: Don’t create more channels than the driver can handle | Author | Uwe Kleine-König |
7041ed0dde83 | extcon: Drop explicit initialization of struct i2c_device_id::driver_data to 0 | Author | Uwe Kleine-König |
b32913a5609a | ptp: Switch back to struct platform_driver::remove() | Author | Uwe Kleine-König |
8359ea9c1195 | ASoC: Drop explicit initialization of struct i2c_device_id::driver_data to 0 | Author | Uwe Kleine-König |
35e21de48e69 | regulator: core: let dt properties override driver init_data | Author | Jerome Brunet |
72bb8275a3b0 | reset: amlogic: aux: drop aux registration helper | Author | Jerome Brunet |
ccfba09ceecc | reset: amlogic: aux: get regmap through parent device | Author | Jerome Brunet |
e436d4355176 | ASoC: dapm: add support for preparing streams | suggested-by reviewed-by | Jerome Brunet |
d4e91adfc261 | ASoC: soc-dai: add snd_soc_dai_prepare() and use it internally | suggested-by reviewed-by | Jerome Brunet |
339bca4ffdaa | hwmon: (pmbus/tps25990) Add initial support | Author | Jerome Brunet |
83bed3c159f4 | hwmon: (pmbus/core) add wp module param | Author | Jerome Brunet |
f40452577557 | hwmon: (pmbus/core) improve handling of write protected regulators | Author | Jerome Brunet |
bead181694df | iio: adc: ad7606: fix wrong scale available | Author | Angelo Dureghello |
02ccd7e5d81a | dt-bindings: iio: dac: adi-axi-adc: fix ad7606 pwm-names | Author | Angelo Dureghello |
e17b9f20da7d | iio: dac: ad3552r: clear reset status flag | Author | Angelo Dureghello |
012b8276f08a | iio: dac: ad3552r-hs: clear reset status flag | Author | Angelo Dureghello |
1e758b613212 | iio: dac: ad3552r-common: fix ad3541/2r ranges | Author | Angelo Dureghello |
90b8b2fe60eb | iio: adc: ad_sigma_delta: Handle CS assertion as intended in ad_sd_read_reg_raw() | reviewed-by | Trevor Gamblin |
b8b26ae398c4 | irqchip/ti-sci-inta : Add module build support | Author | Nicolas Frayer |
2d95ffaecbc2 | irqchip/ti-sci-intr: Add module build support | Author | Nicolas Frayer |
b5fc9453651d | pmdomain: ti_sci: add per-device latency constraint management | reviewed-by | Markus Schneider-Pargmann |
dd504db5cd4a | ARM: dts: ti/omap: omap3-gta04: use proper touchscreen properties | Committer | Kevin Hilman |
3623e1024efc | ARM: dts: ti: am437x-l4: remove autoidle for UART | Committer | Kevin Hilman |
0cfbd7805fe1 | ARM: dts: ti/omap: gta04: fix pm issues caused by spi module | Committer | Kevin Hilman |
ad455e48bba7 | ARM: omap1: Fix up the Retu IRQ on Nokia 770 | Committer | Kevin Hilman |
643cc5ca01ce | ARM: omap2plus_defconfig: enable charger of TWL603X | Committer | Kevin Hilman |
b06bc4727991 | pmdomain: ti_sci: handle wake IRQs for IO daisy chain wakeups | Author | Kevin Hilman |
9d8aa0dd3be4 | pmdomain: ti_sci: add wakeup constraint management | Author | Kevin Hilman |
b5fc9453651d | pmdomain: ti_sci: add per-device latency constraint management | Author | Kevin Hilman |
c1472ec1dc44 | ARM: dts: dra7: Add bus_dma_limit for l4 cfg bus | Committer | Kevin Hilman |
19ee9e4cded4 | ARM: OMAP2+: Fix a typo | Committer | Kevin Hilman |
3623e1024efc | ARM: dts: ti: am437x-l4: remove autoidle for UART | reviewed-by | Sukrut Bellary |
0fb0d3602181 | arm64: dts: mediatek: mt8516: add keypad node | reviewed-by | Mattijs Korpershoek |
6139d9e9e397 | arm64: dts: mediatek: add per-SoC compatibles for keypad nodes | reviewed-by | Mattijs Korpershoek |
3b19239ad420 | dt-bindings: mediatek,mt6779-keypad: add more compatibles | reviewed-by | Mattijs Korpershoek |
c969c1e56264 | dt-bindings: iio: dac: ad5791: ldac gpio is active low | Author | Axel Haslam |
954c06ddabb0 | iio: adc: ad7606: Fix hardcoded offset in the ADC channels | Author | Guillaume Stols |
4d112ebd02d1 | iio: adc: ad-sigma-delta: Document ABI for sigma delta adc | Author | Guillaume Ranquet |
031bdc8aee01 | iio: adc: ad7173: add calibration support | Author | Guillaume Ranquet |