The Linux 6.8 kernel has been released on March 10 by Linus Torvalds. As usual, we definitely recommend the coverage by LWN of the merge window for this release cycle to get a good grasp on the most important new features: first half and second half. Some work from Bootlin is briefly mentioned in those articles, such as the support for Lantiq PEF2256 (FALC56) framers, Lantiq PEF2256 (FALC56) pin controllers, and Techwell TW9900 video decoders.
With a total of 135 commits contributed by Bootlin engineers during this release cycle, we have been much more active than for the previous 6.7 release. This allows Bootlin to show in the recently published Development statistics for 6.8, as the 17th contributing company by number of commits, and 13th contributing company by number of changed lines.
Here is a high-level overview of our contributions to Linux 6.8:
- Alexandre Belloni, RTC subsystem maintainer made a few small changes to various RTC drivers, and as the I3C subsystem maintainer, did a small update to the documentation regarding the
hotjoin
sysfs entry - Grégory Clement fixed an issue in the Marvell Armada 8K cpufreq driver, as well as an issue in the MIPS early decompression code. We will have more patches coming in Linux 6.9, with the enabling of a new MIPS64 platform.
- Hervé Codina contributed a brand new subsystem called the framer subsystem, which is part of the networking stack and allows to support framers, which are components typically connected to a TDM bus, and that convert TDM frames to/from E1/T1
frames. Together with this, he contributed a driver for the Lantic/Infineon PEF2256. The driver has a pinctrl part and a part that fits within the new framer subsystem. Hervé also contributed some improvements to the previously contributed drivers/soc/fsl/qe/qmc.c driver, to prepare the addition of HDLC support using the Freescale QMC IP block found in PowerPC 32-bit processors. - Köry Maincent contributed an improvement to the Linux kernel networking stack that allows to select which part of the hardware does PTP timestamping. So far, when the PTP timestamping was offloaded to hardware, it was always the Ethernet MAC that was doing it if available, or the Ethernet PHY otherwise, but it wasn’t selectable at run-time. Köry’s work makes this more flexible by offering an ethtool interface to enumerate available PTP clocks and select the one to use for timestamping. However, after being merged, a part of the series got reverted, not because it introduced regressions, but because some maintainers raised some concern that they wanted a more flexible way of selecting which hardware component does the timestamping. Köry is already working on these comments and will be sending a new iteration soon.
- Köry Maincent also submitted a number of fixes for the dw-edma driver, which were discovered as part of the development of a driver for a custom FPGA IP, accessed over PCIe, which integrates the dw-edma.
- Luca Ceresoli contributed some documentation fixes, as well as a small fix for the lm75 hwmon driver.
- Maxime Chevallier saw his patch series adding support for PHY topologies and enumeration merged by networking maintainer Dave Miller, but it was later reverted, also not because it caused regressions, but because other networking maintainers wanted more time to review it in more details. So in fact, this code is not in the final Linux 6.8, but we hope to see it merged soon.
- Mehdi Djait contributed a driver for the TW9900 PAL/NTSC video decoder, which fits in the Video4Linux subsystem. This was based on earlier work from Maxime Chevallier, and finally pushed upstream.
- Miquèl Raynal contributed many changes to the 802.15.4 Linux stack, mainly to add support for device association
- Miquèl also contributed a sysfs interface to the NVMEM subsystem, which allows to access the contents of NVMEM cells from sysfs
- Miquèl contributed some fixes to the xdma dmaengine driver, to which he added support for cyclic DMA transfers
- Miquèl also contributed some fixes in the MTD subsystem to address some issues after he introduced support for continuous reads for parallel NAND flash memories
- Paul Kocialkowksi contributed a few fixes in various Video4Linux drivers
- Romain Gantois contributed a fix in the stmmac driver
- As part of his work on the power management support for the TI J7200 processor, Thomas Richard contributed a small change to the pinctrl-single driver, so that it behaves properly upon suspend/resume for the J7200 processor
- As part of his work to support Mobileye SoCs in Linux, Théo Lebrun contributed improvements to the AMBA PL011 UART driver, and to the Cadence QSPI driver.
- Théo also fixed an issue in one of the numerous macros offered by the Linux kernel clock subsystem
In addition to those contributions authored by us, several of our engineers are also maintainers in the Linux kernel, and therefore review and merged contributions from others. For this release cycle:
- Alexandre Belloni, maintainer of the RTC and I3C subsystems, reviewed and merged 36 patches from other contributors
- Grégory Clement, maintainer of the Marvell EBU platforms, reviewed and merged 11 patches from other contributors
- Miquèl Raynal, co-maintainer of the MTD subsystem and IEEE 802.15.4 subsystem, reviewed and merged 19 patches from other contributors
Here are the full details of our contributions to Linux 6.8:
- Alexandre Belloni (5):
- Gregory CLEMENT (2):
- Herve Codina (22):
- soc: fsl: cpm1: tsa: Fix __iomem addresses declaration
- soc: fsl: cpm1: qmc: Fix __iomem addresses declaration
- soc: fsl: cpm1: qmc: Fix rx channel reset
- soc: fsl: cpm1: qmc: Extend the API to provide Rx status
- soc: fsl: cpm1: qmc: Remove inline function specifiers
- soc: fsl: cpm1: qmc: Add support for child devices
- soc: fsl: cpm1: qmc: Introduce available timeslots masks
- soc: fsl: cpm1: qmc: Rename qmc_setup_tsa* to qmc_init_tsa*
- soc: fsl: cpm1: qmc: Introduce qmc_chan_setup_tsa*
- soc: fsl: cpm1: qmc: Remove no more needed checks from qmc_check_chans()
- soc: fsl: cpm1: qmc: Check available timeslots in qmc_check_chans()
- soc: fsl: cpm1: qmc: Add support for disabling channel TSA entries
- soc: fsl: cpm1: qmc: Split Tx and Rx TSA entries setup
- soc: fsl: cpm1: qmc: Introduce is_tsa_64rxtx flag
- soc: fsl: cpm1: qmc: Handle timeslot entries at channel start() and stop()
- soc: fsl: cpm1: qmc: Remove timeslots handling from setup_chan()
- soc: fsl: cpm1: qmc: Introduce functions to change timeslots at runtime
- net: wan: Add framer framework support
- dt-bindings: net: Add the Lantiq PEF2256 E1/T1/J1 framer
- net: wan: framer: Add support for the Lantiq PEF2256 framer
- pinctrl: Add support for the Lantic PEF2256 pinmux
- MAINTAINERS: Add the Lantiq PEF2256 driver entry
- Kory Maincent (22):
- net: Convert PHYs hwtstamp callback to use kernel_hwtstamp_config
- net: phy: Remove the call to phy_mii_ioctl in phy_hwstamp_get/set
- net: macb: Convert to ndo_hwtstamp_get() and ndo_hwtstamp_set()
- net: Make dev_set_hwtstamp_phylib accessible
- net: phy: micrel: fix ts_info value in case of no phc
- net_tstamp: Add TIMESTAMPING SOFTWARE and HARDWARE mask
- net: ethtool: Add a command to expose current time stamping layer
- netlink: specs: Introduce new netlink command to get current timestamp
- net: ethtool: Add a command to list available time stamping layers
- netlink: specs: Introduce new netlink command to list available time stamping layers
- net: Replace hwtstamp_source by timestamping layer
- net: Change the API of PHY default timestamp to MAC
- net: ethtool: ts: Update GET_TS to reply the current selected timestamp
- net: ethtool: ts: Let the active time stamping layer be selectable
- netlink: specs: Introduce time stamping set command
- firmware_loader: Expand Firmware upload error codes with firmware invalid error
- dmaengine: dw-edma: Fix the ch_count hdma callback
- dmaengine: dw-edma: Fix wrong interrupt bit set for HDMA
- dmaengine: dw-edma: HDMA_V0_REMOTEL_STOP_INT_EN typo fix
- dmaengine: dw-edma: Add HDMA remote interrupt configuration
- dmaengine: dw-edma: HDMA: Add sync read before starting the DMA transfer in remote setup
- dmaengine: dw-edma: eDMA: Add sync read before starting the DMA transfer in remote setup
- Luca Ceresoli (4):
- Maxime Chevallier (14):
- Documentation: networking: add missing PLCA messages from the message list
- net: phy: Introduce ethernet link topology representation
- net: sfp: pass the phy_device when disconnecting an sfp module’s PHY
- net: phy: add helpers to handle sfp phy connect/disconnect
- net: sfp: Add helper to return the SFP bus name
- net: ethtool: Allow passing a phy index for some commands
- netlink: specs: add phy-index as a header parameter
- net: ethtool: Introduce a command to list PHYs on an interface
- netlink: specs: add ethnl PHY_GET command set
- net: ethtool: plca: Target the command to the requested PHY
- net: ethtool: pse-pd: Target the command to the requested PHY
- net: ethtool: cable-test: Target the command to the requested PHY
- net: ethtool: strset: Allow querying phy stats by index
- Documentation: networking: document phy_link_topology
- Mehdi Djait (4):
- Miquel Raynal (38):
- ieee802154: Let PAN IDs be reset
- ieee802154: Internal PAN management
- ieee802154: Add support for user association requests
- mac802154: Handle associating
- ieee802154: Add support for user disassociation requests
- mac802154: Handle disassociations
- mac802154: Handle association requests from peers
- ieee802154: Add support for limiting the number of associated devices
- mac802154: Follow the number of associated devices
- mac802154: Handle disassociation notifications from peers
- ieee802154: Give the user the association list
- mtd: rawnand: pl353: Fix kernel doc
- mtd: rawnand: rockchip: Rename a structure
- mtd: rawnand: rockchip: Add missing title to a kernel doc comment
- mtd: ssfdc: Remove an unused variable
- mtd: maps: vmu-flash: Fix the (mtd core) switch to ref counters
- mac80254: Provide real PAN coordinator info in beacons
- mac802154: Use the PAN coordinator parameter when stamping packets
- mac802154: Only allow PAN controllers to process association requests
- ieee802154: Avoid confusing changes after associating
- mac802154: Avoid new associations while disassociating
- of: device: Export of_device_make_bus_id()
- nvmem: Move of_nvmem_layout_get_container() in another header
- nvmem: Create a header for internal sharing
- nvmem: Simplify the ->add_cells() hook
- nvmem: Move and rename ->fixup_cell_info()
- nvmem: core: Rework layouts to become regular devices
- ABI: sysfs-nvmem-cells: Expose cells through sysfs
- nvmem: core: Expose cells through sysfs
- dmaengine: xilinx: xdma: Fix the count of elapsed periods in cyclic mode
- dmaengine: xilinx: xdma: Clarify the logic between cyclic/sg modes
- dmaengine: xilinx: xdma: Better handling of the busy variable
- dmaengine: xilinx: xdma: Add terminate_all/synchronize callbacks
- mtd: rawnand: Prevent crossing LUN boundaries during sequential reads
- mtd: rawnand: Fix core interference with sequential reads
- mtd: rawnand: Prevent sequential reads with on-die ECC engines
- mtd: rawnand: Clarify conditions to enable continuous reads
- mtd: Fix possible refcounting issue when going through partition nodes
- Paul Kocialkowski (6):
- media: v4l2-dev: Check that g/s_selection are valid before selecting crop
- media: cedrus: Update TODO with future rework plans
- media: vicodec: Disable (TRY_)DECODER_CMD for the stateless case
- media: visl: Hook the (TRY_)DECODER_CMD stateless ioctls
- media: verisilicon: Hook the (TRY_)DECODER_CMD stateless ioctls
- media: rkvdec: Hook the (TRY_)DECODER_CMD stateless ioctls
- Romain Gantois (1):
- Thomas Perrot (1):
- Thomas Richard (2):
- Théo Lebrun (14):
- tty: serial: amba: cleanup whitespace
- tty: serial: amba: Use linux/{bits,bitfield}.h macros
- tty: serial: amba-pl011: fix whitespace formatting
- tty: serial: amba-pl011: replace TIOCMBIT macros by static functions
- tty: serial: amba-pl011: avoid quoted string split across lines
- tty: serial: amba-pl011: fix formatting of conditions
- tty: serial: amba-pl011: fix miscellaneous checkpatch warnings
- tty: serial: amba-pl011: unindent pl011_console_get_options function body
- tty: serial: amba-pl011: factor QDF2400 SoC erratum 44 out of probe
- clk: fixed-rate: fix clk_hw_register_fixed_rate_with_accuracy_parent_hw
- spi: cadence-qspi: fix pointer reference in runtime PM hooks
- spi: cadence-qspi: remove system-wide suspend helper calls from runtime PM hooks
- spi: cadence-qspi: put runtime in runtime PM hooks names
- spi: cadence-qspi: add system-wide suspend and resume callbacks