Linux 5.10 was released a few weeks ago, and while 5.11-rc2 is already out, it’s still time to look at what Bootlin contributed to the 5.10 kernel. As usual, for a broad overview of the major changes in 5.10, we recommend reading the LWN articles: 5.10 merge window part 1, the rest of the 5.10 merge window, or the 5.10 KernelNewbies page.
Overall, Bootlin contributed 78 patches to this kernel release, in the following areas:
- Alexandre Belloni did a number of improvements in the support of Microchip ARM platforms: device tree updates, code cleanups, etc.
- Alexandre Belloni added a new rv3032 RTC driver and did some improvements to the r9701 RTC driver.
- Miquèl Raynal implemented a significant rework of how ECC engines are handled in the MTD subsystems, so that ECC engines can be used not just for parallel NANDs but also for SPI NANDs. See also the talk that Miquèl gave at the Embedded Linux Conference Europe on this topic: slides and video.
- Miquèl Raynal contributed a few improvements to the tlv320aic32x4 audio codec driver.
- Paul Kocialkowski made some small improvements, one in the OV5640 camera sensor driver, and one in the Rockchip DRM driver.
- Thomas Petazzoni implemented a performance improvement in the max310x driver, used for SPI-connected UART controllers.
In addition to these code contributions, we also contribute by having several of our engineers be maintainers of a few subsystems of the Linux kernel. As part of this:
- Miquèl Raynal reviewed and merged 47 patches touching the MTD subsystem he co-maintains with other kernel developers.
- Alexandre Belloni reviewed and merged 42 patches touching either the Microchip ARM or MIPS platforms, or the RTC subsystem.
- Grégory Clement reviewed and merged 2 patches touching the Marvell ARM/ARM64 platform support.
Here is the complete list of our commits to 5.10.
- Alexandre Belloni (23):
- ARM: at91: pm: remove unnecessary at91sam9x60_idle
- ARM: dts: at91: fix cpu node
- ARM: dts: at91: fix sram nodes
- ARM: dts: at91: move mmc pinctrl-names property to board dts
- ARM: dts: at91: add unit-address to memory node
- ARM: dts: at91: sama5d2: add missing flexcom spi node properties
- can: flexcan: fix spelling mistake “reserverd” -> “reserved”
- spi: atmel: remove unnecessary include
- ASoC: atmel-pcm: remove unnecessary include
- net: macb: move pdata to private header
- rtc: rv3028: fix clock output support
- rtc: rv3028: fix trickle resistor values
- rtc: rv3028: factorize EERD bit handling
- rtc: rv3028: ensure ram configuration registers are saved
- dt-bindings: rtc: add trickle-voltage-millivolt
- dt-bindings: rtc: rv3032: add RV-3032 bindings
- rtc: rv3032: Add a driver for Microcrystal RV-3032
- rtc: r9701: remove leftover comment
- rtc: r9701: stop setting a default time
- rtc: r9701: remove useless memset
- rtc: r9701: stop setting RWKCNT
- rtc: r9701: convert to devm_rtc_allocate_device
- rtc: r9701: set range
- Miquel Raynal (52):
- mtd: rawnand: Add a kernel doc to the ECC algorithm enumeration
- mtd: rawnand: Rename the ECC algorithm enumeration items
- mtd: rawnand: Move the nand_ecc_algo enum to the generic NAND layer
- mtd: nand: Add a NAND page I/O request type
- dt-bindings: mtd: Document nand-ecc-placement
- dt-bindings: mtd: Document nand-ecc-engine
- dt-bindings: mtd: Document boolean NAND ECC properties
- mtd: nand: Introduce the ECC engine framework
- ASoC: tlv320aic32x4: Ensure a minimum delay before clock stabilization
- ASoC: tlv320aic32x4: Fix bdiv clock rate derivation
- ASoC: tlv320aic32x4: Enable fast charge
- mtd: rawnand: Separate the ECC engine type and the ECC byte placement
- mtd: rawnand: Use the new ECC engine type enumeration
- mtd: nand: Create a helper to extract the ECC configuration
- mtd: spinand: Use nanddev_get_ecc_conf() when relevant
- mtd: nand: Create helpers to set/extract the ECC requirements
- mtd: rawnand: Use nanddev_get/set_ecc_requirements() when relevant
- mtd: nand: Use the new generic ECC object
- mtd: rawnand: Make use of the ECC framework
- mtd: rawnand: Use the ECC framework OOB layouts
- mtd: rawnand: Use the ECC framework nand_ecc_is_strong_enough() helper
- mtd: rawnand: Use the ECC framework user input parsing bits
- mtd: rawnand: Use the NAND framework user_conf object for ECC flags
- mtd: spear_smi: Enable compile testing
- mtd: rawnand: gpio: Move the ECC initialization to ->attach_chip()
- mtd: rawnand: xway: Move the ECC initialization to ->attach_chip()
- mtd: rawnand: ams-delta: Move the ECC initialization to ->attach_chip()
- mtd: rawnand: au1550: Move the ECC initialization to ->attach_chip()
- mtd: rawnand: cs553x: Move the ECC initialization to ->attach_chip()
- mtd: rawnand: davinci: Move the ECC initialization to ->attach_chip()
- mtd: rawnand: diskonchip: Move the ECC initialization to ->attach_chip()
- mtd: rawnand: fsmc: Move the ECC initialization to ->attach_chip()
- mtd: rawnand: lpc32xx_mlc: Move the ECC initialization to ->attach_chip()
- mtd: rawnand: lpc32xx_slc: Move the ECC initialization to ->attach_chip()
- mtd: rawnand: mpc5121: Move the ECC initialization to ->attach_chip()
- mtd: rawnand: orion: Move the ECC initialization to ->attach_chip()
- mtd: rawnand: txx9ndfmc: Move the ECC initialization to ->attach_chip()
- mtd: rawnand: tmio: Move the ECC initialization to ->attach_chip()
- mtd: rawnand: pasemi: Move the ECC initialization to ->attach_chip()
- mtd: rawnand: plat_nand: Move the ECC initialization to ->attach_chip()
- mtd: rawnand: r852: Move the ECC initialization to ->attach_chip()
- mtd: rawnand: sharpsl: Move the ECC initialization to ->attach_chip()
- mtd: rawnand: socrates: Move the ECC initialization to ->attach_chip()
- mtd: rawnand: ams-delta: Do not force a particular software ECC engine
- mtd: rawnand: au1550: Do not force a particular software ECC engine
- mtd: rawnand: gpio: Do not force a particular software ECC engine
- mtd: rawnand: mpc5121: Do not force a particular software ECC engine
- mtd: rawnand: orion: Do not force a particular software ECC engine
- mtd: rawnand: pasemi: Do not force a particular software ECC engine
- mtd: rawnand: plat_nand: Do not force a particular software ECC engine
- mtd: rawnand: socrates: Do not force a particular software ECC engine
- mtd: rawnand: xway: Do not force a particular software ECC engine
- Paul Kocialkowski (2):
- Thomas Petazzoni (1):