Linux 6.15 has been released last Sunday, and we as usual encourage our readers to look at the LWN summaries of the merge window (part 1, part 2) for a good summary. CNX-Software also has a summary more oriented towards hardware support for ARM and RISC-V platforms.
On our side, we have been quite active in this release cycle, with no less than 145 commits from Bootlin engineers merged. Also, our engineers who maintain various subsystems in the Linux kernel reviewed and merged a total of 104 patches from other contributors.
The highlights of our contributions for this 6.15 release are:
- Alexandre Belloni, as the RTC subsystem maintainer, again found a number of miscellaneous issues to fix and improvements to make in various RTC drivers
- Alexis Lothoré contributed on various topics: eBPF tests, fixes in the stmmac Ethernet MAC driver, fix in the handling of GPIO-based modem control lines for UARTs
- Antonin Godard made his first Linux kernel contributions ever, submitting support for the Variscite VAR-SOM-MX6UL system-on-module and its Variscite Concerto carrier board
- Bastien Curutchet was very active on converting eBPF tests to the test_progs infrastructure, an effort sponsored by the eBPF Foundation
- Grégory Clement contributed a small number of MIPS related changes, in relation to his work on enabling Linux kernel support for Mobileye EyeQ MIPS processors
- Hervé Codina contributed on a number of different and unrelated topics: support for error recovery in the TI SN65DSI83 display bridge, support for PWM nexus node that will allow decoupling PWM signals in the context of add-on boards that require using Device Tree overlays, support for creating missing Device Tree nodes in the PCI hierarchy when Device Tree is used on ACPI-based systems.
- Köry Maincent fixed a small netlink specification issue
- Louis Chauvet managed to get a small set of his VKMS improvements merged, mostly preparation commit improving the existing code base
- Luca Ceresoli contributed a number of changes to various DRM drivers to fix various issues, a work done in preparation for DRM bridge hotplugging that Luca is actively working on. Luca also fixed an issue in the perf build process and an issue in the opt3001 IIO driver
- Maxime Chevallier contributed improvements to the networking stack to be able to better represent the topology of Ethernet PHYs, which is useful in complex topologies involving parallel PHYs or chained PHYs. This work is an internal rework of the way the kernel handles the mapping between link modes,
phy_interface_t
, speed and duplex. That allows having a common set of helpers to get these details, instead of open-coding them as lookup tables in multiple places. On its own, this work is not yet fully useful, but it is a prerequisite for several other patch series that Maxime is working on. Maxime also contributed support for accessing SFP modules through SMBus controllers (instead of just I2C controllers) and also allowed to access them using single-byte SMBus operations which is needed for some SFP modules. - Miquèl Raynal added support for SPI flash chips from Winbond, and made a number of improvements in the Cadence QSPI driver
- Thomas Richard extended his driver for the Congatec board controller to also support the sensors that are available, using a dedicated hwmon driver, and he also enabled the Congatec board controller driver on the conga-sa8 platform
- Théo Lebrun contributed improvements to the USB XHCI support that allow proper suspend/resume support on recent Texas Instruments platforms such as DRA821, AM62, etc.
- Alexandre Belloni (8):
- rtc: ds1307: stop disabling alarms on probe
- rtc: pl031: document struct pl031_vendor_data members
- rtc: mpfs: switch to devm_device_init_wakeup
- rtc: pm8xxx: fix possible race condition
- rtc: pm8xxx: switch to devm_device_init_wakeup
- rtc: rv3032: fix EERD location
- rtc: rv3032: drop WADA
- rtc: mt6397: drop unused defines
- Alexis Lothore (1):
- Alexis Lothoré (2):
- Alexis Lothoré (eBPF Foundation) (2):
- Antonin Godard (3):
- Bastien Curutchet (eBPF Foundation) (36):
- selftests/bpf: helpers: Add append_tid()
- selftests/bpf: test_xdp_veth: Remove unused defines
- selftests/bpf: test_xdp_veth: Remove unecessarry check_ping()
- selftests/bpf: test_xdp_veth: Use int to describe next veth
- selftests/bpf: test_xdp_veth: Split network configuration
- selftests/bpf: test_xdp_veth: Rename config[]
- selftests/bpf: test_xdp_veth: Add prog_config[] table
- selftests/bpf: test_xdp_veth: Add XDP flags to prog_configuration
- selftests/bpf: test_xdp_veth: Use unique names
- selftests/bpf: test_xdp_veth: Add new test cases for XDP flags
- selftests/bpf: Remove with_addr.sh and with_tunnels.sh
- selftests/bpf: test_xdp_veth: Create struct net_configuration
- selftests/bpf: test_xdp_veth: Use a dedicated namespace
- selftests/bpf: Optionally select broadcasting flags
- selftests/bpf: test_xdp_veth: Add XDP broadcast redirection tests
- selftests/bpf: test_xdp_veth: Add XDP program on egress test
- selftests/bpf: Remove test_xdp_redirect_multi.sh
- selftests/bpf: ns_current_pid_tgid: Rename the test function
- selftests/bpf: Optionally open a dedicated namespace to run test in it
- selftests/bpf: tc_links/tc_opts: Unserialize tests
- selftests/bpf: ns_current_pid_tgid: Use test_progs’s ns_ feature
- selftests/bpf: test_tunnel: Add generic_attach* helpers
- selftests/bpf: test_tunnel: Add ping helpers
- selftests/bpf: test_tunnel: Move gre tunnel test to test_progs
- selftests/bpf: test_tunnel: Move ip6gre tunnel test to test_progs
- selftests/bpf: test_tunnel: Move erspan tunnel tests to test_progs
- selftests/bpf: test_tunnel: Move ip6erspan tunnel test to test_progs
- selftests/bpf: test_tunnel: Move geneve tunnel test to test_progs
- selftests/bpf: test_tunnel: Move ip6geneve tunnel test to test_progs
- selftests/bpf: test_tunnel: Move ip6tnl tunnel tests to test_progs
- selftests/bpf: test_tunnel: Remove test_tunnel.sh
- selftests/bpf: Move test_lwt_ip_encap to test_progs
- selftests/bpf: lwt_seg6local: Remove unused routes
- selftests/bpf: lwt_seg6local: Move test to test_progs
- selftests/bpf: test_xdp_vlan: Rename BPF sections
- selftests/bpf: Migrate test_xdp_vlan.sh into test_progs
- Gregory CLEMENT (5):
- Herve Codina (14):
- backlight: led_bl: Hold led_access lock when calling led_sysfs_disable()
- dt-bindings: pwm: Add support for PWM nexus node
- pwm: Add support for pwm nexus dt bindings
- dt-bindings: display: bridge: sn65dsi83: Add interrupt
- drm/atomic-helper: Introduce drm_atomic_helper_reset_crtc()
- drm/vc4: hdmi: Use drm_atomic_helper_reset_crtc()
- drm: bridge: ti-sn65dsi83: Add error recovery mechanism
- drm/atomic-helper: Add a note in drm_atomic_helper_reset_crtc() kernel-doc
- driver core: Introduce device_{add,remove}_of_node()
- PCI: of: Use device_{add,remove}_of_node() to attach of_node to existing device
- PCI: of_property: Add support for NULL pdev in of_pci_set_address()
- PCI: of_property: Constify parameter in of_pci_get_addr_flags()
- PCI: of: Create device tree PCI host bridge node
- ASoC: fsl: fsl_qmc_audio: Reset audio data pointers on TRIGGER_START event
- Kory Maincent (1):
- Louis Chauvet (12):
- drm/vkms: Switch to managed for connector
- drm/vkms: Switch to managed for encoder
- drm/managed: Add DRM-managed alloc_ordered_workqueue
- drm/vkms: Switch to managed for crtc
- drm: writeback: Create an helper for drm_writeback_connector initialization
- drm: writeback: Add missing cleanup in case of initialization failure
- drm: writeback: Create drmm variants for drm_writeback_connector initialization
- drm/vkms: Switch to managed for writeback connector
- drm/vkms: Switch to dynamic allocation for connector
- drm/vkms: Switch to dynamic allocation for encoder
- drm/vkms: Switch to dynamic allocation for CRTC
- drm: writeback: Fix kernel doc name
- Luca Ceresoli (17):
- drm/drm_mode_object: fix typo in kerneldoc
- drm/atomic-helper: improve CRTC enabled/connectors mismatch logging message
- drm/panel: remove unnecessary forward declaration
- drm/bridge: nxp-ptn3460: remove unused drm_panel.h include
- drm/bridge: parade-ps8622: remove unused drm_panel.h include
- drm/bridge: parade-ps8640: remove unused drm_panel.h include
- drm/bridge: tc358762: remove unused drm_panel.h include, add drm_bridge.h
- drm/bridge: tc358775: remove unused drm_panel.h include
- drm/bridge: ti-sn65dsi83: remove unused drm_panel.h include
- drm/bridge: ti-sn65dsi86: remove unused drm_panel.h include
- drm/debugfs: fix printk format for bridge index
- drm: of: drm_of_find_panel_or_bridge: move misplaced comment
- drm/bridge: panel: use drm_bridge_is_panel() instead of open code
- drm/bridge: panel: drm_panel_bridge_remove: warn when called on non-panel bridge
- drm/bridge: panel: forbid initializing a panel with unknown connector type
- perf build: Fix in-tree build due to symbolic link
- iio: light: opt3001: fix deadlock due to concurrent flag access
- Mathieu Dubois-Briand (1):
- Maxime Chevallier (19):
- net: ethtool: Export the link_mode_params definitions
- net: phy: Use an internal, searchable storage for the linkmodes
- net: phy: phy_caps: Move phy_speeds to phy_caps
- net: phy: phy_caps: Move __set_linkmode_max_speed to phy_caps
- net: phy: phy_caps: Introduce phy_caps_valid
- net: phy: phy_caps: Implement link_capabilities lookup by linkmode
- net: phy: phy_caps: Allow looking-up link caps based on speed and duplex
- net: phy: phy_device: Use link_capabilities lookup for PHY aneg config
- net: phylink: Use phy_caps_lookup for fixed-link configuration
- net: phy: drop phy_settings and the associated lookup helpers
- net: phylink: Add a mapping between MAC_CAPS and LINK_CAPS
- net: phylink: Convert capabilities to linkmodes using phy_caps
- net: phylink: Use phy_caps to get an interface’s capabilities and modes
- net: stmmac: Call xpcs_config_eee_mult_fact() only when xpcs is present
- net: phy: sfp: Add support for SMBus module access
- net: mdio: mdio-i2c: Add support for single-byte SMBus operations
- MAINTAINERS: Add dedicated entries for phy_link_topology
- net: ethtool: Don’t call .cleanup_data when prepare_data fails
- MAINTAINERS: Add entry for Socfpga DWMAC ethernet glue driver
- Miquel Raynal (12):
- mtd: spi-nor: winbond: Add support for w25q01jv
- mtd: spi-nor: winbond: Add support for w25q02jv
- spi: cadence-qspi: Fix probe on AM62A LP SK
- spi: cadence-qspi: Improve spi memory performance
- mtd: spinand: Improve spinand_info macros style
- mtd: nand: Fix a kdoc comment
- spi: dt-bindings: cdns,qspi-nor: Be more descriptive regarding what this controller is
- spi: dt-bindings: cdns,qspi-nor: Deprecate the Cadence compatible alone
- spi: dt-bindings: cdns,qspi-nor: Require some peripheral properties
- spi: spi-mem: Introduce a default ->exec_op() debug log
- spi: cadence-qspi: revert “Improve spi memory performance”
- mtd: spinand: Fix build with gcc < 7.5
- Thomas Richard (3):
- Théo Lebrun (9):
- usb: host: xhci-plat: mvebu: use ->quirks instead of ->init_quirk() func
- usb: xhci: tegra: rename `runtime` boolean to `is_auto_runtime`
- usb: cdns3: rename hibernated argument of role->resume() to lost_power
- usb: cdns3: call cdns_power_is_lost() only once in cdns_resume()
- usb: cdns3-ti: move reg writes to separate function
- usb: cdns3-ti: run HW init at resume() if HW was reset
- usb: xhci: change xhci_resume() parameters to explicit the desired info
- usb: host: xhci-plat: allow upper layers to signal power loss
- usb: host: cdns3: forward lost power information to xhci