Latest Linux kernel releases

  02.10 6.16.10, 6.12.50, 6.6.109, 6.1.155, 5.15.194, 5.10.245, 5.4.300
  28.09 6.17 (merge, pull)

Significant pull requests for mainline kernel

 
3 Oct 2025: probes: Update for v6.18 [+ + +]
Probes for v6.18:

- fprobe: Performance enhancement of the fprobe using rhltable
  . fprobe: use rhltable for fprobe_ip_table. The fprobe IP table has
    been converted to use an rhltable for improved performance when
    dealing with a large number of probed functions.
  . Fix a suspicious RCU usage warning of the above change in the
    fprobe entry handler.
  . Remove an unused local variable of the above change.
  . Fix to initialize fprobe_ip_table in core_initcall().

- wprobe: Introduce a watchpoint probe event based on hw_breakpoint.
  . Add a new watchpoint probe that uses hardware breakpoints to
    monitor memory accesses. This allows for tracing memory reads
    and writes at specified addresses.
  . Add a basic add/remove test case for wprobe.
  . Add a syntax test case for wprobe.

- probes: Cleanup probe event subsystems.
  . uprobe/eprobe: Allocate traceprobe_parse_context per probe instead
    of each probe argument parsing. This reduce memory allocation/free
    of temporary working memory.
  . uprobes: Cleanup code using __free().
  . eprobes: Cleanup code using __free().
  . probes: Cleanup code using __free(trace_probe_log_clear) to clear
    error log automatically.
  . probes: Replace strcpy() with memcpy() in __trace_probe_log_err().




probes-v6.18-2

 
2 Oct 2025: non-MM updates for 6.18-rc1 [+ + +]
development cycle.

No merge conflicts are present and none are anticipated.

Thanks.


Patch series in this pull request:

- The 3 patch series "ida: Remove the ida_simple_xxx() API" from
  Christophe Jaillet completes the removal of this legacy IDR API.

- The 9 patch series "panic: introduce panic status function family"
  from Jinchao Wang provides a number of cleanups to the panic code and
  its various helpers, which were rather ad-hoc and scattered all over the
  place.

- The 5 patch series "tools/delaytop: implement real-time keyboard
  interaction support" from Fan Yu adds a few nice user-facing usability
  changes to the delaytop monitoring tool.

- The 3 patch series "efi: Fix EFI boot with kexec handover (KHO)" from
  Evangelos Petrongonas fixes a panic which was happening with the
  combination of EFI and KHO.

- The 2 patch series "Squashfs: performance improvement and a sanity
  check" from Phillip Lougher teaches squashfs's lseek() about
  SEEK_DATA/SEEK_HOLE.  A mere 150x speedup was measured for a well-chosen
  microbenchmark.

- Plus another 50-odd singleton patches all over the place.

2 Oct 2025: RCU changes for v6.18 [+ + +]


RCU pull request for v6.18

This pull request contains the following branches, non-octopus merged:

Documentation updates:

  - Update whatisRCU.rst and checklist.rst for recent RCU API additions.

  - Fix RCU documentation formatting and typos.

  - Replace dead Ottawa Linux Symposium links in RTFP.txt.

Miscellaneous RCU updates:

  - Document that rcu_barrier() hurries RCU_LAZY callbacks.

  - Remove redundant interrupt disabling from
    rcu_preempt_deferred_qs_handler().

  - Move list_for_each_rcu from list.h to rculist.h, and adjust the
    include directive in kernel/cgroup/dmem.c accordingly.

  - Make initial set of changes to accommodate upcoming system_percpu_wq
    changes.

SRCU updates:

  - Create an srcu_read_lock_fast_notrace() for eventual use in tracing,
    including adding guards.

  - Document the reliance on per-CPU operations as implicit RCU readers
    in __srcu_read_{,un}lock_fast().

  - Document the srcu_flip() function's memory-barrier D's relationship
    to SRCU-fast readers.

  - Remove a redundant preempt_disable() and preempt_enable() pair from
    srcu_gp_start_if_needed().

Torture-test updates:

  - Fix jitter.sh spin time so that it actually varies as advertised.
    It is still quite coarse-grained, but at least it does now vary.

  - Update torture.sh help text to include the not-so-new --do-normal
    parameter, which permits (for example) testing KCSAN kernels without
    doing non-debug kernels.

  - Fix a number of false-positive diagnostics that were being triggered
    by rcutorture starting before boot completed.  Running multiple
    near-CPU-bound rcutorture processes when there is only the boot CPU
    is after all a bit excessive.

  - Substitute kcalloc() for kzalloc().

  - Remove a redundant kfree() and NULL out kfree()ed objects.

2 Oct 2025: rpmsg updates for v6.18 [+ + +]
rpmsg updates for v6.18

Clean up the dev_pm_domain integration in rpmsg core. Correct module
aliases for the rpmsg char driver.

Transition Qualcomm SMD and GLINK drivers to strscpy() and fix the
regression in legacy code for acquiring outgoing interrupts using the
non-mailbox based mechanism.

2 Oct 2025: remoteproc updates for v6.18 [+ + +]
remoteproc updates for v6.18

Enable coredump support for the i.MX HiFi core remoteproc, and clean up
the i.MX remoteproc driver.

Introduce remoteprocs on the Qualcomm Milos platform. Gracefully shut own
the ADSP remoteproc when bootloader has loaded the "Lite" firmware on X
Elite. Improve the resource handover procedure to avoid possibly duplicate
handling.

Transition the TI DA8xx, TI Keystone, and TI Wakeup M3 remoteproc
drivers to handle resources using devres.

2 Oct 2025: printk for 6.18 [+ + +]
please pull the latest printk changes from



- Add KUnit test for the printk ring buffer.

- Fix the check of the maximal record size which is allowed to be stored
  into the printk ring buffer. It prevents corruptions of the ring buffer.

  Note that printk() is on the safe side. The messages are limited by 1kB
  buffer and are always small enough for the minimal log buffer size 4kB,
  see CONFIG_LOG_BUF_SHIFT definition.

2 Oct 2025: IOMMU Updates for Linux v6.18 [+ + +]
IOMMU Updates for Linux v6.18:

Including:

- Inte VT-d:
 - IOMMU driver updated to the latest VT-d specification.
 - Don't enable PRS if PDS isn't supported.
 - Replace snprintf with scnprintf.
 - Fix legacy mode page table dump through debugfs.
 - Miscellaneous cleanups.

- AMD-Vi:
  - Support kdump boot when SNP is enabled.

- Apple-DART:
  - 4-level page-table support.

- RISC-V IOMMU:
  - ACPI support.

- Small number of miscellaneous cleanups and fixes.

 
1 Oct 2025: MM updates for 6.18-rc1 [+ + +]
cycle, thanks.


Conflicts which I am seeing at this time are:

arch/riscv/include/asm/pgtable.h, vs mainline:
https://lkml.kernel.org/r/aNU8moQVmqvduSPU@sirena.org.uk
Please just drop the mm.git change and use Paul's version.  There was some
wire-crossing here.

fs/bcachefs/darray.c, vs mainline:
fs/bcachefs/util.h, vs mainline:
Please drop the attempted bcachefs changes.

rust/kernel/alloc.rs, vs mainline:
https://lkml.kernel.org/r/20250818122053.355aab17@canb.auug.org.au



Possible upcoming conflicts and their linux-next resolutions are:

rust/kernel/alloc/allocator.rs, vs drm tree:
https://lkml.kernel.org/r/20250813111151.6a261ca1@canb.auug.org.au

rust/kernel/alloc/allocator_test.rs, vs rust-alloc tree:
https://lkml.kernel.org/r/20250826173041.3140da7b@canb.auug.org.au

rust/kernel/alloc/kbox.rs, vs drm-rust tree:
https://lkml.kernel.org/r/20250905124634.68da9a1e@canb.auug.org.au

rust/kernel/alloc/allocator.rs, vs drm-rust tree:
https://lkml.kernel.org/r/20250905125139.109081b2@canb.auug.org.au

Documentation/filesystems/porting.rst, vs fs-next tree:
https://lkml.kernel.org/r/aMhQ6Po0hAIyB0dM@sirena.org.uk

Documentation/filesystems/porting.rst, vs fs-next tree:
https://lkml.kernel.org/r/aNPGHEYMk-6vFJlW@finisterre.sirena.org.uk



Summary of significant series in this pull request:

- The 3 patch series "mm, swap: improve cluster scan strategy" from
  Kairui Song improves performance and reduces the failure rate of swap
  cluster allocation.

- The 4 patch series "support large align and nid in Rust allocators"
  from Vitaly Wool permits Rust allocators to set NUMA node and large
  alignment when perforning slub and vmalloc reallocs.

- The 2 patch series "mm/damon/vaddr: support stat-purpose DAMOS" from
  Yueyang Pan extend DAMOS_STAT's handling of the DAMON operations sets
  for virtual address spaces for ops-level DAMOS filters.

- The 3 patch series "execute PROCMAP_QUERY ioctl under per-vma lock"
  from Suren Baghdasaryan reduces mmap_lock contention during reads of
  /proc/pid/maps.

- The 2 patch series "mm/mincore: minor clean up for swap cache
  checking" from Kairui Song performs some cleanup in the swap code.

- The 11 patch series "mm: vm_normal_page*() improvements" from David
  Hildenbrand provides code cleanup in the pagemap code.

- The 5 patch series "add persistent huge zero folio support" from
  Pankaj Raghav provides a block layer speedup by optionalls making the
  huge_zero_pagepersistent, instead of releasing it when its refcount
  falls to zero.

- The 3 patch series "kho: fixes and cleanups" from Mike Rapoport adds a
  few touchups to the recently added Kexec Handover feature.

- The 10 patch series "mm: make mm->flags a bitmap and 64-bit on all
  arches" from Lorenzo Stoakes turns mm_struct.flags into a bitmap.  To
  end the constant struggle with space shortage on 32-bit conflicting with
  64-bit's needs.

- The 2 patch series "mm/swapfile.c and swap.h cleanup" from Chris Li
  cleans up some swap code.

- The 7 patch series "selftests/mm: Fix false positives and skip
  unsupported tests" from Donet Tom fixes a few things in our selftests
  code.

- The 7 patch series "prctl: extend PR_SET_THP_DISABLE to only provide
  THPs when advised" from David Hildenbrand "allows individual processes
  to opt-out of THP=always into THP=madvise, without affecting other
  workloads on the system".

  It's a long story - the [1/N] changelog spells out the considerations.

- The 11 patch series "Add and use memdesc_flags_t" from Matthew Wilcox
  gets us started on the memdesc project.  Please see
  https://kernelnewbies.org/MatthewWilcox/Memdescs and
  https://blogs.oracle.com/linux/post/introducing-memdesc.

- The 3 patch series "Tiny optimization for large read operations" from
  Chi Zhiling improves the efficiency of the pagecache read path.

- The 5 patch series "Better split_huge_page_test result check" from Zi
  Yan improves our folio splitting selftest code.

- The 2 patch series "test that rmap behaves as expected" from Wei Yang
  adds some rmap selftests.

- The 3 patch series "remove write_cache_pages()" from Christoph Hellwig
  removes that function and converts its two remaining callers.

- The 2 patch series "selftests/mm: uffd-stress fixes" from Dev Jain
  fixes some UFFD selftests issues.

- The 3 patch series "introduce kernel file mapped folios" from Boris
  Burkov introduces the concept of "kernel file pages".  Using these
  permits btrfs to account its metadata pages to the root cgroup, rather
  than to the cgroups of random inappropriate tasks.

- The 2 patch series "mm/pageblock: improve readability of some
  pageblock handling" from Wei Yang provides some readability improvements
  to the page allocator code.

- The 11 patch series "mm/damon: support ARM32 with LPAE" from SeongJae
  Park teaches DAMON to understand arm32 highmem.

- The 4 patch series "tools: testing: Use existing atomic.h for
  vma/maple tests" from Brendan Jackman performs some code cleanups and
  deduplication under tools/testing/.

- The 2 patch series "maple_tree: Fix testing for 32bit compiles" from
  Liam Howlett fixes a couple of 32-bit issues in
  tools/testing/radix-tree.c.

- The 2 patch series "kasan: unify kasan_enabled() and remove
  arch-specific implementations" from Sabyrzhan Tasbolatov moves KASAN
  arch-specific initialization code into a common arch-neutral
  implementation.

- The 3 patch series "mm: remove zpool" from Johannes Weiner removes
  zspool - an indirection layer which now only redirects to a single thing
  (zsmalloc).

- The 2 patch series "mm: task_stack: Stack handling cleanups" from
  Pasha Tatashin makes a couple of cleanups in the fork code.

- The 37 patch series "mm: remove nth_page()" from David Hildenbrand
  makes rather a lot of adjustments at various nth_page() callsites,
  eventually permitting the removal of that undesirable helper function.

- The 2 patch series "introduce kasan.write_only option in hw-tags" from
  Yeoreum Yun creates a KASAN read-only mode for ARM, using that
  architecture's memory tagging feature.  It is felt that a read-only mode
  KASAN is suitable for use in production systems rather than debug-only.

- The 3 patch series "mm: hugetlb: cleanup hugetlb folio allocation"
  from Kefeng Wang does some tidying in the hugetlb folio allocation code.

- The 12 patch series "mm: establish const-correctness for pointer
  parameters" from Max Kellermann makes quite a number of the MM API
  functions more accurate about the constness of their arguments.  This
  was getting in the way of subsystems (in this case CEPH) when they
  attempt to improving their own const/non-const accuracy.

- The 7 patch series "Cleanup free_pages() misuse" from Vishal Moola
  fixes a number of code sites which were confused over when to use
  free_pages() vs __free_pages().

- The 3 patch series "Add Rust abstraction for Maple Trees" from Alice
  Ryhl makes the mapletree code accessible to Rust.  Required by nouveau
  and by its forthcoming successor: the new Rust Nova driver.

- The 2 patch series "selftests/mm: split_huge_page_test:
  split_pte_mapped_thp improvements" from David Hildenbrand adds a fix and
  some cleanups to the thp selftesting code.

- The 14 patch series "mm, swap: introduce swap table as swap cache
  (phase I)" from Chris Li and Kairui Song is the first step along the
  path to implementing "swap tables" - a new approach to swap allocation
  and state tracking which is expected to yield speed and space
  improvements.  This patchset itself yields a 5-20% performance benefit
  in some situations.

- The 3 patch series "Some ptdesc cleanups" from Matthew Wilcox utilizes
  the new memdesc layer to clean up the ptdesc code a little.

- The 3 patch series "Fix va_high_addr_switch.sh test failure" from
  Chunyu Hu fixes some issues in our 5-level pagetable selftesting code.

- The 2 patch series "Minor fixes for memory allocation profiling" from
  Suren Baghdasaryan addresses a couple of minor issues in relatively new
  memory allocation profiling feature.

- The 3 patch series "Small cleanups" from Matthew Wilcox has a few
  cleanups in preparation for more memdesc work.

- The 2 patch series "mm/damon: add addr_unit for DAMON_LRU_SORT and
  DAMON_RECLAIM" from Quanmin Yan makes some changes to DAMON in
  furtherance of supporting arm highmem.

- The 2 patch series "selftests/mm: Add -Wunreachable-code and fix
  warnings" from Muhammad Anjum adds that compiler check to selftests code
  and fixes the fallout, by removing dead code.

- The 10 patch series "Improvements to Victim Process Thawing and OOM
  Reaper Traversal Order" from zhongjinji makes a number of improvements
  in the OOM killer: mainly thawing a more appropriate group of victim
  threads so they can release resources.

- The 5 patch series "mm/damon: misc fixups and improvements for 6.18"
  from SeongJae Park is a bunch of small and unrelated fixups for DAMON.

- The 7 patch series "mm/damon: define and use DAMON initialization
  check function" from SeongJae Park implement reliability and
  maintainability improvements to a recently-added bug fix.

- The 2 patch series "mm/damon/stat: expose auto-tuned intervals and
  non-idle ages" from SeongJae Park provides additional transparency to
  userspace clients of the DAMON_STAT information.

- The 2 patch series "Expand scope of khugepaged anonymous collapse"
  from Dev Jain removes some constraints on khubepaged's collapsing of
  anon VMAs.  It also increases the success rate of MADV_COLLAPSE against
  an anon vma.

- The 2 patch series "mm: do not assume file == vma->vm_file in
  compat_vma_mmap_prepare()" from Lorenzo Stoakes moves us further towards
  removal of file_operations.mmap().  This patchset concentrates upon
  clearing up the treatment of stacked filesystems.

- The 6 patch series "mm: Improve mlock tracking for large folios" from
  Kiryl Shutsemau provides some fixes and improvements to mlock's tracking
  of large folios.  /proc/meminfo's "Mlocked" field became more accurate.

- The 2 patch series "mm/ksm: Fix incorrect accounting of KSM counters
  during fork" from Donet Tom fixes several user-visible KSM stats
  inaccuracies across forks and adds selftest code to verify these
  counters.

- The 2 patch series "mm_slot: fix the usage of mm_slot_entry" from Wei
  Yang addresses some potential but presently benign issues in KSM's
  mm_slot handling.

 
02 Oct 2025: asm-generic: updates for 6.18 [+ + +]
asm-generic: updates for 6.18

Two small patches for the asm-generic header files: Varad Gautam improves
the MMIO tracing to be faster when the tracepoints are built into the
kernel but disabled, while Qi Xi updates the DO_ONCE logic so that
clearing the WARN_ONCE() flags does not change the other DO_ONCE users.

02 Oct 2025: soc: updates for 6.18 [+ + +]
These are the SoC updates for the 6.18 release on Arm and RISC-V
platforms. With about 1150 non-merge changesets and 70000 lines
added,  this is one of the larger sets recently, and a lot of
that comes from updates for the Qualcomm, NXP/Freescale and Apple
platforms, which have both a significant number of new machines
and other updates.

There is one new RISC-V chip family in a separate branch, plus
new SoCs in five existing families.

We had 291 contributers in total, the ones with the most
changesets are:

     76 Krzysztof Kozlowski
     35 Frank Li
     35 Beleswar Padhi
     29 Stephan Gerhold
     29 Janne Grunau
     27 Lad Prabhakar
     21 Dmitry Baryshkov
     21 AngeloGioacchino Del Regno
     20 Nick Chan
     18 Chen-Yu Tsai
     18 Alexander Stein
     17 Peng Fan
     15 Rob Herring (Arm)
     15 Neil Armstrong
     13 Tao Ren
     11 Mohammad Rafi Shaik
     11 E Shattow
     11 Anand Moon
     11 Amirreza Zarrabi

Overall dirstat:

   0.6% Documentation/devicetree/bindings/arm/
   0.1% Documentation/devicetree/bindings/clock/
   0.2% Documentation/devicetree/bindings/pinctrl/
   0.1% Documentation/devicetree/bindings/soc/xilinx/
   0.5% Documentation/devicetree/bindings/
   0.2% Documentation/tee/
   0.5% arch/arm/boot/dts/allwinner/
   4.1% arch/arm/boot/dts/aspeed/
   0.1% arch/arm/boot/dts/broadcom/
   0.3% arch/arm/boot/dts/intel/ixp/
   0.1% arch/arm/boot/dts/microchip/
   2.7% arch/arm/boot/dts/nvidia/
   0.7% arch/arm/boot/dts/nxp/imx/
   0.2% arch/arm/boot/dts/nxp/
   0.6% arch/arm/boot/dts/qcom/
   0.7% arch/arm/boot/dts/st/
   0.1% arch/arm/boot/dts/ti/omap/
   0.1% arch/arm/boot/dts/
   0.1% arch/arm/mach-omap2/
   0.7% arch/arm/
   0.3% arch/arm64/boot/dts/allwinner/
   0.4% arch/arm64/boot/dts/amlogic/
   0.1% arch/arm64/boot/dts/apm/
   6.5% arch/arm64/boot/dts/apple/
   0.2% arch/arm64/boot/dts/broadcom/
   0.1% arch/arm64/boot/dts/cix/
   0.4% arch/arm64/boot/dts/exynos/axis/
   2.2% arch/arm64/boot/dts/exynos/
  15.4% arch/arm64/boot/dts/freescale/
   0.3% arch/arm64/boot/dts/intel/
   0.1% arch/arm64/boot/dts/marvell/
   1.2% arch/arm64/boot/dts/mediatek/
   0.5% arch/arm64/boot/dts/nuvoton/
   0.3% arch/arm64/boot/dts/nvidia/
  24.0% arch/arm64/boot/dts/qcom/
   3.1% arch/arm64/boot/dts/renesas/
   4.6% arch/arm64/boot/dts/rockchip/
   0.5% arch/arm64/boot/dts/st/
   8.5% arch/arm64/boot/dts/ti/
   2.0% arch/arm64/boot/dts/xilinx/
   0.4% arch/riscv/boot/dts/eswin/
   0.6% arch/riscv/boot/dts/microchip/
   0.1% arch/riscv/boot/dts/starfive/
   0.2% arch/riscv/boot/dts/
   1.1% drivers/clk/
   0.1% drivers/firmware/arm_scmi/vendors/imx/
   0.2% drivers/firmware/qcom/
   0.2% drivers/firmware/
   0.1% drivers/memory/tegra/
   0.3% drivers/nvme/host/
   0.5% drivers/reset/
   0.1% drivers/soc/apple/
   0.1% drivers/soc/fsl/qe/
   0.8% drivers/soc/qcom/
   0.3% drivers/soc/samsung/
   0.1% drivers/soc/tegra/fuse/
   0.1% drivers/soc/
   1.0% drivers/tee/optee/
   5.1% drivers/tee/qcomtee/
   1.1% drivers/tee/
   0.1% drivers/
   0.1% include/dt-bindings/memory/
   0.2% include/dt-bindings/
   0.3% include/linux/
   0.1% include/uapi/linux/
 1074 files changed, 70723 insertions(+), 17334 deletions(-)
 
1 Oct 2025: I3C changes for 6.18 [+ + +]
Here is the i3c subsystem pull request for 6.18. Another controller
driver has been added this cycle. We also have many improvements for the
mipi-i3c-hci driver.

I3C for 6.18

New driver:
 - Analog Devices I3C Controller

Subsystem:
 - fix big-endian FIFO transfers
 - fix default I2C adapter timeout value

Drivers:
 - dw: shutdown support
 - mipi-i3c-hci: Intel Wildcat Lake-U support, IOMMU support
 - renesas: RZ/V2H(P) and RZ/V2N support

1 Oct 2025: x86/entry for 6.18-rc1 [+ + +]
Please a pair of x86/entry changes for 6.18-rc1. The FRED one adjusts
the kernel to the latest spec. The spec change prevents attackers from
abusing kernel entry points.

The second one came about because of the LASS work[1]. It moves the
vsyscall emulation code away from depending on X86_PF_INSTR which is
not available on some CPUs. Those CPUs are pretty obscure these days,
but this still seems like the right thing to do. It also makes this
code consistent with some things that the LASS code is going to do.

1. https://lore.kernel.org/lkml/20250620135325.3300848-1-kirill.shutemov@linux.intel.com/

--

 - Use RIP instead of X86_PF_INSTR for vsyscall emulation
 - Remove ENDBR64 from FRED entry points

1 Oct 2025: x86/tdx for 6.18-rc1 [+ + +]
is making TDX and kexec play nicely together. Before this, the memory
encryption hardware (which doesn't respect cache coherency) could
write back old cachelines on top of data in the new kernel, so kexec
and TDX were made mutually exclusive. This removes the limitation.

There is also some work to tighten up a hardware bug workaround and
some MAINTAINERS updates.

--

 - Make TDX and kexec work together
 - Skip TDX bug workaround when the bug is not present
 - Update maintainers entries

1 Oct 2025: x86/mm for 6.18-rc1 [+ + +]
Riel's work to get the INVLPGB instruction working. It just removes an
open-coded TLB flush operation by using an existing helper.

--

Change cpa_flush() to call flush_kernel_range() directly

1 Oct 2025: jfs updates for v6.18 [+ + +]
A few fixes and cleanups for JFS.

1 Oct 2025: media updates [+ + +]

a/v6.18-1

For:

- Added a new V4L2 clock helper;
- iris: Enable H.264/H.265 encoder support and fixes in iris driver common =
code;
- camss: add support for new SoC flavors;
- New camera sensor drivers;
- venus: add new SoC support;
- tc358743: support more infoframe types;
- Various fixes, driver improvements and cleanups;
=20
Regards,
Mauro

---

[GIT PULL for v6.18] media updates

1 Oct 2025: Backlight for v6.18 [+ + +]
Backlight for v6.18

This set is comprised of a couple of small but important fixes and a number of clean-up and
refactoring patches.  The fixes correct an EPROM address for the LP8556 and improve memory
allocation safety in the LED backlight driver.

The remainder of the set is made up of refactoring work to the mp3309c driver and a series of
patches to make a number of drivers more self-contained by including their own dependencies.

Improvements & Fixes
- Correct the EPROM start address for the LP8556 to align with the device's datasheet.
- Use devm_kcalloc() in the LED backlight driver for safer array allocation with overflow
  protection.

Cleanups & Refactoring
- Drop an unnecessary call to pwm_apply_args() in the mp3309c driver.
- Modernize struct initialization in the mp3309c driver by using a compound literal instead of
  memset.
- Make numerous drivers self-contained by including necessary headers directly rather than
  relying on transitive includes from the core backlight header.

1 Oct 2025: LEDs for v6.18 [+ + +]
LEDs for v6.18

This submission is a mix of new features, a number of fixes, some clean-up/refactoring and a
few Device Tree binding updates.  The most significant changes include new device support for
the IS31FL3236A and QNAP's status LEDs, a number of fixes for the Qualcomm flash, LP55xx,
MAX77705 and QNAP MCU drivers, along with some generic LED consumer binding documentation and
unification.

New Support & Features
- Add support for the IS31FL3236A LED driver, including an optional 22kHz PWM frequency setting.
- Add support for the red and green status LEDs on QNAP MCU devices.

Improvements & Fixes
- Fix an issue in the MAX77705 driver where an error value was assigned but not returned.
- Correctly update the torch current clamp setting in the Qualcomm flash LED driver to prevent
  unexpected clamping.
- Add a separate register map for the PMI8998 to the Qualcomm flash LED driver to handle its
  unique register layout.
- Fix the state numbering for the USB LED in the QNAP MCU driver to avoid command conflicts.
- Correct the memory programming address calculation for non-paged devices like the LP5562 in
  the LP55xx driver.
- Add Device Tree support to the generic led_get() function, allowing LEDs to be looked up by
  name.

Cleanups & Refactoring
- Fix a spelling mistake in the Kconfig help text for the BD2606MVV driver.
- Use devm_mutex_init() in the IS31FL319x driver to simplify code.

Device Tree Bindings Updates
- Drop the redundant '-db' suffix from the IS31FL319x binding.
- Introduce generic LED consumer bindings for referencing LEDs via phandles.
- Unify the 'leds' property across several bindings to use the new generic consumer binding.
- Convert the AMS AS3645A LED controller binding to the DT schema format.

1 Oct 2025: MFD for v6.18 [+ + +]
MFD for v6.18

This round of updates contains a fair amount of new device support, a couple of fixes and
some refactoring.  The most notable additions include new drivers for Loongson's Security
Engine, RNG and TPM, new drivers for TI's TPS6594 Power Button and BQ257xx Charger ICs.

The rest of the set provides a return value check fix and a refactoring to use a more modern
GPIO API for the VEXPRESS sysreg driver, the removal of a deprecated IRQ ACK function from the
MC13xxx RTC driver and a new DT binding for the aforementioned TI BQ257xx charger.

New Support & Features
- Add a suite of drivers for the Loongson Security Engine, including the core controller, a
  Random Number Generator (RNG) and Trusted Platform Module (TPM) support.
- Introduce support for the TI TPS6594 PMIC's power button, including the input driver, MFD
  cell registration, and a system power-off handler.
- Add comprehensive support for the TI BQ257xx series of charger ICs, including the core MFD
  driver and a power supply driver for the charger functionality.

Improvements & Fixes
- Check the return value of devm_gpiochip_add_data() in the VEXPRESS sysreg driver to prevent
  potential silent failures.

Cleanups & Refactoring
- Add a MAINTAINERS entry for the new Loongson Security Engine drivers.
- Convert the VEXPRESS sysreg driver to use the modern generic GPIO chip API.

Removals
- Remove the deprecated and unused mc13xxx_irq_ack() function from the MC13xxx RTC, input and
  touchscreen drivers.

Device Tree Bindings Updates
- Add device tree bindings for the TI BQ25703A charger.

1 Oct 2025: Networking for v6.18 [+ + +]
We have a bunch of trivial/adjacent changes conflicts to be solved
accepting the chunks for both trees:

Vs your tree in arch/s390/configs/debug_defconfig and arch/s390/configs/defconfig.

Vs the v4l-dvb tree in .mailmap:

Vs the rdma tree in drivers/net/ethernet/broadcom/bnxt/bnxt.c and in
Documentation/networking/device_drivers/ethernet/index.rst.

Vs the regulator tree in MAINTAINERS.

Vs the bpf-next tree in include/net/xdp.h

Also a couple of a bit less trivial conflicts:

Vs the spacemit tree in arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts
and in arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts, resolutios:
  https://lore.kernel.org/linux-next/aMqby4Cz8hn6lZgv@sirena.org.uk/

Vs the tip tree in drivers/net/ethernet/amd/xgbe/xgbe-ptp.c, resolution:
  https://lore.kernel.org/linux-next/20250722114246.2c683a44@canb.auug.org.au/

Finally a duplicate commit (different hash, same contents) with the vhost
tree:
  4e9510f162188 ("ptr_ring: drop duplicated tail zeroing code")
  4a37c69fc60bf ("ptr_ring: drop duplicated tail zeroing code")
both touching include/linux/ptr_ring.h the same way.

There is a very recent build failure for arm64 with oldish compiler currently
under investigation, I hope it should not block this PR.

Networking changes for 6.18.

Core & protocols
 
01 Oct 2025: configfs for v6.18 [+ + +]
Here are the changes for configfs for v6.18. This time it is just a very
small refactoring to use PTR_ERR_OR_ZERO().


Best regards,
Andreas Hindborg

configfs changes for v6.18

 
1 Oct 2025: drm for 6.18-rc1 [+ + +]
This is the main drm pull request for the 6.18 merge window.

Compared to last time there are only 2 xe merge conflicts when I
merged this into your tree this morning. One of them is simple, the
other a bit tricky, as all the goto cleanup should be return ret, not
sure where they get lost. Let me know if you have any problems, but
taking what is in next should be fine.

Outside the drm tree, there are i2c-hid changes and an MEI driver addition.

The other big thing here is rust stuff. There is a pin-init rework
which may also be merged in other trees (I can't remember). Then dma,
device and drm stuff. This also has updates to the nova-core, nova-drm
drivers and introduces a skeleton driver Tyr for ARM Mali, which will
be constructed upstream as the rust pieces are merged.

Other highlights:
- rocket accel driver for Rockchip NPUs
- habanalabs upstreaming has restarted
- xe support for madvise in gpusvm
- amdgpu CRIU support for gem objects

Then there is the usual insane number of patches to everything across the b=
oard.

As usual, let me know if there are any problems.

Dave.


drm-next-2025-10-01:
drm next for 6.18-rc1

cross-subsystem:
- i2c-hid: Make elan touch controllers power on after panel is enabled
- dt bindings for STM32MP25 SoC
- pci vgaarb: use screen_info helpers
- rust pin-init updates
- add MEI driver for late binding firmware update/load

uapi:
- add ioctl for reassigning GEM handles
- provide boot_display attribute on boot-up devices

core:
- document DRM_MODE_PAGE_FLIP_EVENT
- add vendor specific recovery method to drm device wedged uevent

gem:
- Simplify gpuvm locking

ttm:
- add interface to populate buffers

sched:
- Fix race condition in trace code

atomic:
- Reallow no-op async page flips

display:
- dp: Fix command length

video:
- Improve pixel-format handling for struct screen_info

rust:
- drop Opaque<> from ioctl args
- Alloc:
- BorrowedPage type and AsPageIter traits
- Implement Vmalloc::to_page() and VmallocPageIter
- DMA/Scatterlist:
- Add dma::DataDirection and type alias for dma_addr_t
- Abstraction for struct scatterlist and sg_table
- DRM:
- simplify use of generics
- add DriverFile type alias
- drop Object::SIZE
- Rust:
- pin-init tree merge
- Various methods for AsBytes and FromBytes traits

gpuvm:
- Support madvice in Xe driver

gpusvm:
- fix hmm_pfn_to_map_order usage in gpusvm

bridge:
- Improve and fix ref counting on bridge management
- cdns-dsi: Various improvements to mode setting
- Support Solomon SSD2825 plus DT bindings
- Support Waveshare DSI2DPI plus DT bindings
- Support Content Protection property
- display-connector: Improve DP display detection
- Add support for Radxa Ra620 plus DT bindings
- adv7511: Provide SPD and HDMI infoframes
- it6505: Replace crypto_shash with sha()
- synopsys: Add support for DW DPTX Controller plus DT bindings
- adv7511: Write full Audio infoframe
- ite6263: Support vendor-specific infoframes
- simple: Add support for Realtek RTD2171 DP-to-HDMI plus DT bindings

panel:
- panel-edp: Support mt8189 Chromebooks; Support BOE NV140WUM-N64;
  Support SHP LQ134Z1; Fixes
- panel-simple: Support Olimex LCD-OLinuXino-5CTS plus DT bindings
- Support Samsung AMS561RA01
- Support Hydis HV101HD1 plus DT bindings
- ilitek-ili9881c: Refactor mode setting; Add support for Bestar
  BSD1218-A101KL68 LCD plus DT bindings
- lvds: Add support for Ampire AMP19201200B5TZQW-T03 to DT bindings
- edp: Add support for additonal mt8189 Chromebook panels
- lvds: Add DT bindings for EDT ETML0700Z8DHA

amdgpu:
- add CRIU support for gem objects
- RAS updates
- VCN SRAM load fixes
- EDID read fixes
- eDP ALPM support
- Documentation updates
- Rework PTE flag generation
- DCE6 fixes
- VCN devcoredump cleanup
- MMHUB client id fixes
- VCN 5.0.1 RAS support
- SMU 13.0.x updates
- Expanded PCIe DPC support
- Expanded VCN reset support
- VPE per queue reset support
- give kernel jobs unique id for tracing
- pre-populate exported buffers
- cyan skillfish updates
- make vbios build number available in sysfs
- userq updates
- HDCP updates
- support MMIO remap page as ttm pool
- JPEG parser updates
- DCE6 DC updates
- use devm for i2c buses
- GPUVM locking updates
- Drop non-DC DCE11 code
- improve fallback handling for pixel encoding

amdkfd:
- SVM/page migration fixes
- debugfs fixes
- add CRIO support for gem objects
- SVM updates

radeon:
- use dev_warn_once in CS parsers

xe:
- add madvise interface
- add DRM_IOCTL_XE_VM_QUERY_MEMORY_RANGE_ATTRS to query VMA count
  and memory attributes
- drop L# bank mask reporting from media GT3 on Xe3+.
- add SLPC power_profile sysfs interface
- add configs attribs to add post/mid context-switch commands
- handle firmware reported hardware errors notifying userspace with
  device wedged uevent
- use same dir structure across sysfs/debugfs
- cleanup and future proof vram region init
- add G-states and PCI link states to debugfs
- Add SRIOV support for CCS surfaces on Xe2+
- Enable SRIOV PF mode by default on supported platforms
- move flush to common code
- extended core workarounds for Xe2/3
- use DRM scheduler for delayed GT TLB invalidations
- configs improvements and allow VF device enablement
- prep work to expose mmio regions to userspace
- VF migration support added
- prepare GPU SVM for THP migration
- start fixing XE_PAGE_SIZE vs PAGE_SIZE
- add PSMI support for hw validation
- resize VF bars to max possible size according to number of VFs
- Ensure GT is in C0 during resume
- pre-populate exported buffers
- replace xe_hmm with gpusvm
- add more SVM GT stats to debugfs
- improve fake pci and WA kunnit handle for new platform testing
- Test GuC to GuC comms to add debugging
- use attribute groups to simplify sysfs registration
- add Late Binding firmware code to interact with MEI

i915:
- apply multiple JSL/EHL/Gen7/Gen6 workarounds properly
- protect against overflow in active_engine()
- Use try_cmpxchg64() in __active_lookup()
- include GuC registers in error state
- get rid of dev->struct_mutex
- iopoll: generalize read_poll_timout
- lots more display refactoring
- Reject HBR3 in any eDP Panel
- Prune modes for YUV420
- Display Wa fix, additions, and updates
- DP: Fix 2.7 Gbps link training on g4x
- DP: Adjust the idle pattern handling
- DP: Shuffle the link training code a bit
- Don't set/read the DSI C clock divider on GLK
- Enable_psr kernel parameter changes
- Type-C enabled/disconnected dp-alt sink
- Wildcat Lake enabling
- DP HDR updates
- DRAM detection
- wait PSR idle on dsb commit
- Remove FBC modulo 4 restriction for ADL-P+
- panic: refactor framebuffer allocation

habanalabs:
- debug/visibility improvements
- vmalloc-backed coherent mmap support
- HLDIO infrastructure

nova-core:
- various register!() macro improvements
- minor vbios/firmware fixes/refactoring
- advance firmware boot stages; process Booter and patch signatures
- process GSP and GSP bootloader
- Add r570.144 firmware bindings and update to it
- Move GSP boot code to own module
- Use new pin-init features to store driver's private data in a single
 allocation
- Update ARef import from sync::aref

nova-drm:
- Update ARef import from sync::aref

tyr:
- initial driver skeleton for a rust driver for ARM Mali GPUs
- capable of powering up, query metadata and provide it to userspace.

msm:
- GPU and Core:
- in DT bindings describe clocks per GPU type
- GMU bandwidth voting for x1-85
- a623/a663 speedbins
- cleanup some remaining no-iommu leftovers after VM_BIND conversion
- fix GEM obj 32b size truncation
- add missing VM_BIND param validation
- IFPC for x1-85 and a750
- register xml and gen_header.py sync from mesa
- Display:
- add missing bindings for display on SC8180X
- added DisplayPort MST bindings
- conversion from round_rate() to determine_rate()

amdxdna:
- add IOCTL_AMDXDNA_GET_ARRAY
- support user space allocated buffers
- streamline PM interfaces
- Refactoring wrt. hardware contexts
- improve error reporting

nouveau:
- use GSP firmware by default
- improve error reporting
- Pre-populate exported buffers

ast:
- Clean up detection of DRAM config

exynos:
- add DSIM bridge driver support for Exynos7870
- Document Exynos7870 DSIM compatible in dt-binding

panthor:
- Print task/pid on errors
- Add support for Mali G710, G510, G310, Gx15, Gx20, Gx25
- Improve cache flushing
- Fail VM bind if BO has offset

renesas:
- convert to RUNTIME_PM_OPS

rcar-du:
- Make number of lanes configurable
- Use RUNTIME_PM_OPS
- Add support for DSI commands

rocket:
- Add driver for Rockchip NPU plus DT bindings
- Use kfree() and sizeof() correctly
- Test DMA status

rockchip:
- dsi2: Add support for RK3576 plus DT bindings
- Add support for RK3588 DPTX output

tidss:
- Use crtc_ fields for programming display mode
- Remove other drivers from aperture

pixpaper:
- Add support for Mayqueen Pixpaper plus DT bindings

v3d:
- Support querying nubmer of GPU resets for KHR_robustness

stm:
- Clean up logging
- ltdc: Add support support for STM32MP257F-EV1 plus DT bindings

sitronix:
- st7571-i2c: Add support for inverted displays and 2-bit grayscale

tidss:
- Convert to kernel's FIELD_ macros

vesadrm:
- Support 8-bit palette mode

imagination:
- Improve power management
- Add support for TH1520 GPU
- Support Risc-V architectures

v3d:
- Improve job management and locking

vkms:
- Support variants of ARGB8888, ARGB16161616, RGB565, RGB888 and P01x
- Spport YUV with 16-bit components
drm next for 6.18-rc1

cross-subsystem:
- i2c-hid: Make elan touch controllers power on after panel is enabled
- dt bindings for STM32MP25 SoC
- pci vgaarb: use screen_info helpers
- rust pin-init updates
- add MEI driver for late binding firmware update/load

uapi:
- add ioctl for reassigning GEM handles
- provide boot_display attribute on boot-up devices

core:
- document DRM_MODE_PAGE_FLIP_EVENT
- add vendor specific recovery method to drm device wedged uevent

gem:
- Simplify gpuvm locking

ttm:
- add interface to populate buffers

sched:
- Fix race condition in trace code

atomic:
- Reallow no-op async page flips

display:
- dp: Fix command length

video:
- Improve pixel-format handling for struct screen_info

rust:
- drop Opaque<> from ioctl args
- Alloc:
- BorrowedPage type and AsPageIter traits
- Implement Vmalloc::to_page() and VmallocPageIter
- DMA/Scatterlist:
- Add dma::DataDirection and type alias for dma_addr_t
- Abstraction for struct scatterlist and sg_table
- DRM:
- simplify use of generics
- add DriverFile type alias
- drop Object::SIZE
- Rust:
- pin-init tree merge
- Various methods for AsBytes and FromBytes traits

gpuvm:
- Support madvice in Xe driver

gpusvm:
- fix hmm_pfn_to_map_order usage in gpusvm

bridge:
- Improve and fix ref counting on bridge management
- cdns-dsi: Various improvements to mode setting
- Support Solomon SSD2825 plus DT bindings
- Support Waveshare DSI2DPI plus DT bindings
- Support Content Protection property
- display-connector: Improve DP display detection
- Add support for Radxa Ra620 plus DT bindings
- adv7511: Provide SPD and HDMI infoframes
- it6505: Replace crypto_shash with sha()
- synopsys: Add support for DW DPTX Controller plus DT bindings
- adv7511: Write full Audio infoframe
- ite6263: Support vendor-specific infoframes
- simple: Add support for Realtek RTD2171 DP-to-HDMI plus DT bindings

panel:
- panel-edp: Support mt8189 Chromebooks; Support BOE NV140WUM-N64;
  Support SHP LQ134Z1; Fixes
- panel-simple: Support Olimex LCD-OLinuXino-5CTS plus DT bindings
- Support Samsung AMS561RA01
- Support Hydis HV101HD1 plus DT bindings
- ilitek-ili9881c: Refactor mode setting; Add support for Bestar
  BSD1218-A101KL68 LCD plus DT bindings
- lvds: Add support for Ampire AMP19201200B5TZQW-T03 to DT bindings
- edp: Add support for additonal mt8189 Chromebook panels
- lvds: Add DT bindings for EDT ETML0700Z8DHA

amdgpu:
- add CRIU support for gem objects
- RAS updates
- VCN SRAM load fixes
- EDID read fixes
- eDP ALPM support
- Documentation updates
- Rework PTE flag generation
- DCE6 fixes
- VCN devcoredump cleanup
- MMHUB client id fixes
- VCN 5.0.1 RAS support
- SMU 13.0.x updates
- Expanded PCIe DPC support
- Expanded VCN reset support
- VPE per queue reset support
- give kernel jobs unique id for tracing
- pre-populate exported buffers
- cyan skillfish updates
- make vbios build number available in sysfs
- userq updates
- HDCP updates
- support MMIO remap page as ttm pool
- JPEG parser updates
- DCE6 DC updates
- use devm for i2c buses
- GPUVM locking updates
- Drop non-DC DCE11 code
- improve fallback handling for pixel encoding

amdkfd:
- SVM/page migration fixes
- debugfs fixes
- add CRIO support for gem objects
- SVM updates

radeon:
- use dev_warn_once in CS parsers

xe:
- add madvise interface
- add DRM_IOCTL_XE_VM_QUERY_MEMORY_RANGE_ATTRS to query VMA count
  and memory attributes
- drop L# bank mask reporting from media GT3 on Xe3+.
- add SLPC power_profile sysfs interface
- add configs attribs to add post/mid context-switch commands
- handle firmware reported hardware errors notifying userspace with
  device wedged uevent
- use same dir structure across sysfs/debugfs
- cleanup and future proof vram region init
- add G-states and PCI link states to debugfs
- Add SRIOV support for CCS surfaces on Xe2+
- Enable SRIOV PF mode by default on supported platforms
- move flush to common code
- extended core workarounds for Xe2/3
- use DRM scheduler for delayed GT TLB invalidations
- configs improvements and allow VF device enablement
- prep work to expose mmio regions to userspace
- VF migration support added
- prepare GPU SVM for THP migration
- start fixing XE_PAGE_SIZE vs PAGE_SIZE
- add PSMI support for hw validation
- resize VF bars to max possible size according to number of VFs
- Ensure GT is in C0 during resume
- pre-populate exported buffers
- replace xe_hmm with gpusvm
- add more SVM GT stats to debugfs
- improve fake pci and WA kunnit handle for new platform testing
- Test GuC to GuC comms to add debugging
- use attribute groups to simplify sysfs registration
- add Late Binding firmware code to interact with MEI

i915:
- apply multiple JSL/EHL/Gen7/Gen6 workarounds properly
- protect against overflow in active_engine()
- Use try_cmpxchg64() in __active_lookup()
- include GuC registers in error state
- get rid of dev->struct_mutex
- iopoll: generalize read_poll_timout
- lots more display refactoring
- Reject HBR3 in any eDP Panel
- Prune modes for YUV420
- Display Wa fix, additions, and updates
- DP: Fix 2.7 Gbps link training on g4x
- DP: Adjust the idle pattern handling
- DP: Shuffle the link training code a bit
- Don't set/read the DSI C clock divider on GLK
- Enable_psr kernel parameter changes
- Type-C enabled/disconnected dp-alt sink
- Wildcat Lake enabling
- DP HDR updates
- DRAM detection
- wait PSR idle on dsb commit
- Remove FBC modulo 4 restriction for ADL-P+
- panic: refactor framebuffer allocation

habanalabs:
- debug/visibility improvements
- vmalloc-backed coherent mmap support
- HLDIO infrastructure

nova-core:
- various register!() macro improvements
- minor vbios/firmware fixes/refactoring
- advance firmware boot stages; process Booter and patch signatures
- process GSP and GSP bootloader
- Add r570.144 firmware bindings and update to it
- Move GSP boot code to own module
- Use new pin-init features to store driver's private data in a single
 allocation
- Update ARef import from sync::aref

nova-drm:
- Update ARef import from sync::aref

tyr:
- initial driver skeleton for a rust driver for ARM Mali GPUs
- capable of powering up, query metadata and provide it to userspace.

msm:
- GPU and Core:
- in DT bindings describe clocks per GPU type
- GMU bandwidth voting for x1-85
- a623/a663 speedbins
- cleanup some remaining no-iommu leftovers after VM_BIND conversion
- fix GEM obj 32b size truncation
- add missing VM_BIND param validation
- IFPC for x1-85 and a750
- register xml and gen_header.py sync from mesa
- Display:
- add missing bindings for display on SC8180X
- added DisplayPort MST bindings
- conversion from round_rate() to determine_rate()

amdxdna:
- add IOCTL_AMDXDNA_GET_ARRAY
- support user space allocated buffers
- streamline PM interfaces
- Refactoring wrt. hardware contexts
- improve error reporting

nouveau:
- use GSP firmware by default
- improve error reporting
- Pre-populate exported buffers

ast:
- Clean up detection of DRAM config

exynos:
- add DSIM bridge driver support for Exynos7870
- Document Exynos7870 DSIM compatible in dt-binding

panthor:
- Print task/pid on errors
- Add support for Mali G710, G510, G310, Gx15, Gx20, Gx25
- Improve cache flushing
- Fail VM bind if BO has offset

renesas:
- convert to RUNTIME_PM_OPS

rcar-du:
- Make number of lanes configurable
- Use RUNTIME_PM_OPS
- Add support for DSI commands

rocket:
- Add driver for Rockchip NPU plus DT bindings
- Use kfree() and sizeof() correctly
- Test DMA status

rockchip:
- dsi2: Add support for RK3576 plus DT bindings
- Add support for RK3588 DPTX output

tidss:
- Use crtc_ fields for programming display mode
- Remove other drivers from aperture

pixpaper:
- Add support for Mayqueen Pixpaper plus DT bindings

v3d:
- Support querying nubmer of GPU resets for KHR_robustness

stm:
- Clean up logging
- ltdc: Add support support for STM32MP257F-EV1 plus DT bindings

sitronix:
- st7571-i2c: Add support for inverted displays and 2-bit grayscale

tidss:
- Convert to kernel's FIELD_ macros

vesadrm:
- Support 8-bit palette mode

imagination:
- Improve power management
- Add support for TH1520 GPU
- Support Risc-V architectures

v3d:
- Improve job management and locking

vkms:
- Support variants of ARGB8888, ARGB16161616, RGB565, RGB888 and P01x
- Spport YUV with 16-bit components

 
30 Sep 2025: ext4 updates for 6.18-rc1 [+ + +]
New ext4 features:

  * Add support so tune2fs can modify/update the superblock using an
    ioctl, without needing write access to the block device.
  * Add support for 32-bit reserved uid's and gid's.

Bug fixes:

  * Fix potential warnings and other failures caused by corrupted / fuzzed
    file systems.
  * Fail unaligned direct I/O write with EINVAL instead of silently
    falling back to buffered I/O
  * Correectly handle fsmap queries for metadata mappings
  * Avoid journal stalls caused by writeback throttling
  * Add some missing GFP_NOFAIL flags to avoid potential deadlocks
    under extremem memory pressure

Cleanups:

  * Remove obsolete EXT3 Kconfigs

 
1 Oct 2025: power-supply changes for 6.18 [+ + +]
Subject: [GIT PULL] power-supply changes for 6.18
MIME-Version: 1.0

Hi Linus,

power supply and reset changes for the 6.18 series

 * power-supply core
  - introduce adc-battery-helper for capacity estimation based on
    simple ADC readings of battery voltage and current
  - add new property for battery internal resistance
  - add new property for battery state of health
 * power-supply drivers
  - ug3105_battery: convert to adc-battery-helper
  - intel_dc_ti_battery: New driver for Intel Dollar Cove TI batteries
  - rt9467-charger: add voltage and current ADC support
  - sbs-charger: support multiple instances
  - qcom_battmgr: add charge control support
  - qcom_battmgr: add support for state of health and internal resistance
  - max77705_charger: big driver cleanup
  - max77705_charger: add support for setting charge current
  - misc. minor fixes and cleanups

 
30 Sep 2025: pin control bulk changes for v6.18 [+ + +]
this is the big pull request with v6.18 pin control changes.

Most of the details are in the signed tag, we have GPIO
awareness in the pin control core and an interesting AAEON
driver.

At rc6 you expressed strongly that you don't want to see
unsolicited Link: tags unless these provide some additional
information that is actually useful for regressions and
debugging, so at this point I dropped the automated addition
of Link: tags. They are still present on prior commits, I
hope that is OK for now. They will not be in future pull
requests.

Some GPIO and Renesas cross-tree changes are coming
into the diffstat through immutable branches that I pulled
in, including some string helper lib functions and what not.


Yours,
Linus Walleij

Pin control changes for the v6.18 kernel cycle:

Core changes:

- Allow pins to be identified/marked as GPIO mode with
  a special callback. The pin controller core is now
  "aware" if a pin is in GPIO mode if the callback is
  implemented in the driver, and can thus be marked
  as "strict", i.e. disallowing simultaneous use of a
  line as GPIO and another function such as I2C. This
  is enabled in the Qualcomm TLMM driver and also
  implemeted from day 1 in the new Broadcom STB driver.

- Rename the pin config option PIN_CONFIG_OUTPUT to
  PIN_CONFIG_LEVEL to better describe what the config is
  doing, as well as making it more intuitive what shall
  be returned when reading this property.

New drivers:

- Qualcomm SDM660 LPASS LPI TLMM pin controller subdriver.

- Qualcomm Glymur family pin controller driver.

- Broadcom STB family pin controller driver.

- Tegra186 pin controller driver.

- AAEON UP pin controller support. This is some special
  pin controller that works as an external advanced line
  MUX and amplifier for signals from an Intel SoC.
  A cooperative effort with the GPIO maintainer was
  needed to reach a solution where we reuse code from
  the GPIO aggregator/forwarder driver.

- Renesas RZ/T2H and RZ/N2H pin controller support.

- Axis ARTPEC-8 subdriver for the Samsung pin controller
  driver.

Improvements:

- Output enable (OEN) support in the Renesas RZG2L driver.

- Properly support bias pull up/down in the pinctrl-single
  driver.

- Move over all GPIO portions using generic MMIO GPIO to
  the new generic GPIO chip management which has a nice and
  separate API.

- Proper DT bindings for some older Broadcom SoCs.

- External GPIO (EGPIO) support in the Qualcomm SM8250.

Deleted code:

- Dropped the now unused Samsung S3C24xx drivers.

30 Sep 2025: VFIO updates for v6.18-rc1 [+ + +]
VFIO updates for v6.18-rc1

 - Use fdinfo to expose the sysfs path of a device represented by a
   vfio device file. (Alex Mastro)

 - Mark vfio-fsl-mc, vfio-amba, and the reset functions for
   vfio-platform for removal as these are either orphaned or believed
   to be unused. (Alex Williamson)

 - Add reviewers for vfio-platform to save it from also being marked
   for removal. (Mostafa Saleh, Pranjal Shrivastava)

 - VFIO selftests, including basic sanity testing and minimal userspace
   drivers for testing against real hardware.  This is also expected to
   provide integration with KVM selftests for KVM-VFIO interfaces.
   (David Matlack, Josh Hilke)

 - Fix drivers/cdx and vfio/cdx to build without CONFIG_GENERIC_MSI_IRQ.
   (Nipun Gupta)

 - Fix reference leak in hisi_acc. (Miaoqian Lin)

 - Use consistent return for unsupported device feature. (Alex Mastro)

 - Unwind using the correct memory free callback in vfio/pds.
   (Zilin Guan)

 - Use IRQ_DISABLE_LAZY flag to improve handling of pre-PCI2.3 INTx
   and resolve stalled interrupt on ppc64. (Timothy Pearson)

 - Enable GB300 in nvgrace-gpu vfio-pci variant driver. (Tushar Dave)

 - Misc:
   - Drop unnecessary ternary conversion in vfio/pci. (Xichao Zhao)
   - Grammatical fix in nvgrace-gpu. (Morduan Zang)
   - Update Shameer's email address. (Shameer Kolothum)
   - Fix document build warning. (Alex Williamson)

30 Sep 2025: HID for 6.18 merge window [+ + +]
please pull from


to receive HID subsystem queue for 6.17 merge window, namely:

=====
- implementation of haptic touchpad support (Angela Czubak and Jonathan
  Denose)

- add support for audio jack handling on DualSense Playstation
  controllers (Cristian Ciocaltea)

- allow HID-BPF to rebind a driver to hid-multitouch (Benjamin
  Tissoires)

- rework hidraw ioctls to make them safer (and tested) (Benjamin
  Tissoires)

- various PIDFF and universal-PIDFF fixes/improvements (Tomasz Pakuła)

- better configuration of Intel QuickI2C through ACPI (Xinpeng Sun)

- other assorted cleanups and fixes
=====

Thanks.

30 Sep 2025: fuse update for 6.18 [+ + +]

tags/fuse-update-6.18

- Extend copy_file_range interface to be fully 64bit capable (Miklos)

- Add selftest for fusectl (Chen Linxuan)

- Move fuse docs into a separate directory (Bagas Sanjaya)

- Allow fuse to enter freezable state in some cases (Sergey Senozhatsky)

- Clean up writeback accounting after removing tmp page copies (Joanne)

- Optimize virtiofs request handling (Li RongQing)

- Add synchronous FUSE_INIT support (Miklos)

- Allow server to request prune of unused inodes (Miklos)

- Fix deadlock with AIO/sync release (Darrick)

- Add some prep patches for block/iomap support (Darrick)

- Misc fixes and cleanups

Thanks,
Miklos


Thanks,
Miklos
---

30 Sep 2025: sound updates for 6.18-rc1 [+ + +]
please pull sound updates for v6.18-rc1 from:


The topmost commit is f65dc3b1ab145c9b8b36301256d703c1dd153f71


sound updates for 6.18-rc1

It's been relatively calm in this cycle from the feature POV, but
there were lots of cleanup works in the wide-range of code for
converting with the auto-cleanup macros like guard().
The mostly user-visible changes are the support of a couple of new
compress-offload API extensions, and the support of new ASoC codec /
platform drivers as well as USB-audio quirks.

Here we go with some highlights:

Core:
 - Compress-offload API extension for 64bit timestamp support
 - Compress-offload API extension for OPUS codec support
 - Workaround for PCM locking issue with PREEMPT_RT and softirq
 - KCSAN warning fix for ALSA sequencer core

ASoC:
 - Continued cleanup works for ASoC core APIs
 - Lots of cleanups and conversions of DT bindings
 - Substantial maintainance work on the Intel AVS drivers
 - Support for Qualcomm Glymur and PM4125, Realtek RT1321, Shanghai
   FourSemi FS2104/5S, Texas Instruments PCM1754 and TAS2783A
 - Remove support for TI WL1273 for old Nokia systems

USB-audio:
 - Support for Tascam US-144mkII, Presonus S1824c support
 - More flexible quirk option handling
 - Fix for USB MIDI timer bug triggered by fuzzer

Others:
 - A large series of cleanups with guard() & co macros over (non-ASoC)
   sound drivers (PCI, ISA, HD-audio, USB-audio, drivers, etc)
 - TAS5825 HD-audio side-codec support


30 Sep 2025: Documentation for 6.18 [+ + +]
It has been a relatively busy cycle in docsland, with changes all over:

- Bring the kernel memory-model docs into the Sphinx build in the "literal
  include" mode.

- Lots of build-infrastructure work, further cleaning up long-term
  kernel-doc technical debt.  The sphinx-pre-install tool has been
  converted to Python and updated for current systems.

- A new tool to detect when documents have been moved and generate HTML
  redirects; this can be used on kernel.org (or any other site hosting the
  rendered docs) to avoid breaking links.

- Automated processing of the YAML files describing the netlink protocol.

- A significant update of the maintainer's PGP guide.

...and a seemingly endless series of typo fixes, build-problem fixes, etc.

30 Sep 2025: platform-drivers-x86 for v6.18-1 [+ + +]
Here is the main PDx86 PR for v6.18.

There's one-liner change into sound/ due to x86-android-tables moving away
from using GPIO legacy APIs which changes the name of a SPI/codec device.

Highlights

- amd/pmf:

  - Add support for adjusting PMF PPT and PPT APU thresholds

  - Extend custom BIOS inputs for more policies

  - Update ta_pmf_action structure to the latest PMF TA

- arm64: thinkpad-t14s-ec: Add EC driver for ThinkPad T14s Gen6 Snapdragon

- int3472: Increase handshake GPIO delay

- intel/pmc:

  - SSRAM support for Lunar Lake and Panther Lake

  - Support reading substate requirements data from S0ix blockers
    (for platforms starting from Panther Lake)

  - Wildcat Lake support

- intel-uncore-freq:

  - Solve duplicate sysfs entry warnings

  - Present unique domain ID per package

- portwell-ec:

  - Support suspend/resume

  - Add hwmon support for voltage and temperature

- redmi-wmi: Add WMI driver for Redmibook keyboard

- think-lmi Certificate support for ThinkCenter

- x86-android-tables + others: Convert away from legacy GPIO APIs

- x86-android-tables:

  - Add support for Acer A1-840 tablet

  - Fix modules list for Lenovo devices

  - Stop using EPROBE_DEFER

- Miscellaneous cleanups / refactoring / improvements

Regards, i.


platform-drivers-x86 for v6.18-1

Highlights

- amd/pmf:

  - Add support for adjusting PMF PPT and PPT APU thresholds

  - Extend custom BIOS inputs for more policies

  - Update ta_pmf_action structure to the latest PMF TA

- arm64: thinkpad-t14s-ec: Add EC driver for ThinkPad T14s Gen6 Snapdragon

- int3472: Increase handshake GPIO delay

- intel/pmc:

  - SSRAM support for Lunar Lake and Panther Lake

  - Support reading substate requirements data from S0ix blockers
    (for platforms starting from Panther Lake)

  - Wildcat Lake support

- intel-uncore-freq:

  - Solve duplicate sysfs entry warnings

  - Present unique domain ID per package

- portwell-ec:

  - Support suspend/resume

  - Add hwmon support for voltage and temperature

- redmi-wmi: Add WMI driver for Redmibook keyboard

- think-lmi Certificate support for ThinkCenter

- x86-android-tables + others: Convert away from legacy GPIO APIs

- x86-android-tables:

  - Add support for Acer A1-840 tablet

  - Fix modules list for Lenovo devices

  - Stop using EPROBE_DEFER

- Miscellaneous cleanups / refactoring / improvements

The following is an automated shortlog grouped by driver:

Add WMI driver for Redmibook keyboard:
 - Add WMI driver for Redmibook keyboard

amd/hsmp:
 -  Replace dev_err() with dev_info() for non-fatal errors

amd/pmf:
 -  Add custom BIOS input support for AMD_CPU_ID_PS
 -  Add debug logs for pending requests and custom BIOS inputs
 -  Add helper to verify BIOS input notifications are enable/disable
 -  Add support for adjusting PMF PPT and PPT APU thresholds
 -  Call enact function sooner to process early pending requests
 -  Extend custom BIOS inputs for more policies
 -  Fix the custom bios input handling mechanism
 -  Preserve custom BIOS inputs for evaluating the policies
 -  Remove redundant ternary operators
 -  Update ta_pmf_action structure member

arm64: dts: qcom: x1e80100-t14s:
 -  add EC

arm64: thinkpad-t14s-ec:
 -  new driver

barco-p50-gpio:
 -  use software nodes for gpio-leds/keys

dell_rbu:
 -  fix assignment in if condition warning

dt-bindings: embedded-controller:
 -  Add Lenovo Thinkpad T14s EC

int3472:
 -  Convert int3472_gpio_map to use C99 initializers
 -  Increase ov08x40 handshake GPIO delay to 45 ms
 -  Rework regulator enable-time handling

intel/pmc:
 -  Add Wildcat Lake support to intel_pmc_core
 -  Add Wildcat Lake support to Intel PMC SSRAM Telemetry
 -  Enable SSRAM support for Lunar Lake
 -  Enable SSRAM support for Panther Lake
 -  Improve function to show substate header
 -  Move telemetry endpoint register handling
 -  Replace dev_warn() with dev_dbg()
 -  Show substate requirement for S0ix blockers
 -  use kcalloc() instead of kzalloc()

intel-uncore-freq:
 -  Fix warning in partitioned system
 -  Present unique domain ID per package

meraki-mx100:
 -  Use static device properties

pcengines-apuv2:
 -  Use static device properties

portwell-ec:
 -  Add hwmon support for voltage and temperature
 -  Add suspend/resume support for watchdog
 -  don't print superfluous errors

quickstart:
 -  Use devm_mutex_init()

think-lmi:
 -  Add certificate GUID structure
 -  Add extra TC BIOS error messages
 -  Certificate support for ThinkCenter

wmi-capdata01:
 -  Remove unneeded semicolon

x86-android-tablets:
 -  Add support for Acer A1-840 tablet
 -  convert EDT devices to GPIO references
 -  convert Goodix devices to GPIO references
 -  convert gpio_keys devices to GPIO references
 -  convert HiDeep devices to GPIO references
 -  convert HID-I2C devices to GPIO references
 -  convert int3496 devices to GPIO references
 -  convert Novatek devices to GPIO references
 -  convert Wacom devices to GPIO references
 -  convert wm1502 devices to GPIO references
 -  convert Yoga Tab2 fast charger to GPIO references
 -  Fix modules lists for Lenovo devices
 -  Move Acer info to its own file
 -  remove support for GPIO lookup tables
 -  Remove the use of dev_err_probe()
 -  replace bat_swnode with swnode_group
 -  Simplify lenovo_yoga_tab2_830_1050_exit()
 -  Simplify node-group [un]registration
 -  Stop using EPROBE_DEFER
 -  Update my email address
 -  use swnode_group instead of manual registering

xiaomi-wmi:
 -  Use devm_mutex_init()

30 Sep 2025: dma-mapping updates for Linux 6.18 [+ + +]
dma-mapping updates for Linux 6.18:

- refactoring of DMA mapping API to physical addresses as the primary
interface instead of page+offset parameters; this gets much closer to
Matthew Wilcox's long term wish for struct-pageless IO to cacheable DRAM and is
supporting memdesc project which seeks to substantially transform how
struct page works; an advantage of this approach is the possibility of
introducing DMA_ATTR_MMIO, which covers existing 'dma_map_resource' flow
in the common paths, what in turn lets to use recently introduced
dma_iova_link() API to map PCI P2P MMIO without creating struct page;
developped by Leon Romanovsky and Jason Gunthorpe
- minor clean-up by Petr Tesarik and Qianfeng Rong

30 Sep 2025: Crypto Update for 6.18 [+ + +]
This update includes the following changes:

Drivers:

- Add ciphertext hiding support to ccp.
- Add hashjoin, gather and UDMA data move features to hisilicon.
- Add lz4 and lz77_only to hisilicon.
- Add xilinx hwrng driver.
- Add ti driver with ecb/cbc aes support.
- Add ring buffer idle and command queue telemetry for GEN6 in qat.

Others:

- Use rcu_dereference_all to stop false alarms in rhashtable.
- Fix CPU number wraparound in padata.
30 Sep 2025: overlayfs updates for 6.18 [+ + +]

This branch has been sitting in linux-next for a few weeks,
but I added some RVB last week.

It has gone through the usual overlayfs test routines.

The branch merges cleanly with master branch of the moment.

Note that there is a small change to fs.h in this PR for the
sb encoding helpers.

This change is reviewed by Gabriel and Christian has agreed that I will
merge it through the ovl tree.

Thanks,
Amir.

overlayfs updates for 6.18

- Work by André Almeida to support case-insensitive overlayfs

  Underlying case-insensitive filesystems casefolding is per directory,
  but for overlayfs it is all-or-nothing.  It supports layers where
  all directories are casefolded (with same encoding) or layers where
  no directories are casefolded.

- A fix for a "bug" in Neil's ovl directory lock changes,
  which only manifested itself with casefold enabled layers
  which may return an unhashed negative dentry from lookup.

30 Sep 2025: slab updates for 6.18 [+ + +]
please pull the latest slab updates from:


This time we have two rather large features - a new percpu caching scheme and
re-entrant kmalloc_nolock(), along with the usual fixes and cleanups.

To avoid conflicts with mm tree, the patches from Lorenzo and Qianfeng are part
of this pull although normally they would be in mm tree. There should be no
conflicts.

Thanks,
Vlastimil


* A new layer for caching objects for allocation and free via percpu arrays
  called sheaves. The aim is to combine the good parts of SLAB (lower-overhead
  and simpler percpu caching, compared to SLUB) without the past issues with
  arrays for freeing remote NUMA node objects and their flushing. It also
  allows more efficient kfree_rcu(), and cheaper object preallocations for
  cases where the exact number of objects is unknown, but an upper bound is.

  Currently VMAs and maple nodes are using this new caching, with a plan to
  enable it for all caches and remove the complex SLUB fastpath based on cpu
  (partial) slabs and this_cpu_cmpxchg_double(). (Vlastimil Babka, with Liam
  Howlett and Pedro Falcato for the maple tree changes)

* Re-entrant kmalloc_nolock(), which allows opportunistic allocations from NMI
  and tracing/kprobe contexts. Building on prior page allocator and memcg
  changes, it will result in removing BPF-specific caches on top of slab.
  (Alexei Starovoitov)

* Various fixes and cleanups. (Kuan-Wei Chiu, Matthew Wilcox, Suren
  Baghdasaryan, Ye Liu)

 
29 Sep 2025: Kbuild updates for 6.18 [+ + +]
request, so if I have done something incorrect or unsatisfactory to
your standards, please let me know so I (and Nicolas) can avoid
repeating mistakes in the future.

The majority of these changes have been in -next for several cycles
with no reported problems. I am only aware of one conflict with the
arm64 tree around CONFIG_CPU_BIG_ENDIAN, Mark's resolution looks
correct to me.

  https://lore.kernel.org/aNU-sG84vqPj7p7G@sirena.org.uk/

There are several changes from other areas (mostly architectures) that
should have their appropriate acks and such.

There is a back merge of 6.17-rc6, which should have sufficient
justification but I know back merges can be contentious so I figured
I would be open with it up front anyways. Looking back on it, I probably
should have only merged up to 6.17-rc4 for commit bd7c2312128e ("pinctrl:
meson: Fix typo in device table macro") but I went with -rc6 to try and
head off a simple conflict from commit 41f9049cff32 ("riscv: Only allow
LTO with CMODEL_MEDANY") in -rc5. In the end, it didn't matter because
of the arm64 conflict so I will be more careful in the future.

Cheers,
Nathan


Kbuild updates for 6.18

- Extend modules.builtin.modinfo to include module aliases from
  MODULE_DEVICE_TABLE for builtin modules so that userspace tools (such
  as kmod) can verify that a particular module alias will be handled by
  a builtin module.

- Bump the minimum version of LLVM for building the kernel to 15.0.0.

- Upgrade several userspace API checks in headers_check.pl to errors.

- Unify and consolidate CONFIG_WERROR / W=e handling.

- Turn assembler and linker warnings into errors with CONFIG_WERROR /
  W=e.

- Respect CONFIG_WERROR / W=e when building userspace programs
  (userprogs).

- Enable -Werror unconditionally when building host programs
  (hostprogs).

- Support copy_file_range() and data segment alignment in gen_init_cpio
  to improve performance on filesystems that support reflinks such as
  btrfs and XFS.

- Miscellaneous small changes to scripts and configuration files.

Signed-off-by: Nathan Chancellor <nathan@kernel.org>

29 Sep 2025: kselftest next update for Linux 6.18-rc1 [+ + +]
Hi Linus,


- Fixes watchdog test to exit when device doesn't support keep alive
- Fix missing header build complaints during out of tree build
- A few minor fixes to git ignore
- MAINTAINERS file change to update dma_map_benchmark

diff is attached.

thanks,
-- Shuah

linux_kselftest-next-6.18-rc1

- Fixes watchdog test to exit when device doesn't support keep alive
- Fix missing header build complaints during out of tree build
- A few minor fixes to git ignore
- MAINTAINERS file change to update dma_map_benchmark

29 Sep 2025: kunit next update for Linux 6.18-rc1 [+ + +]
Hi Linus,


A seven patch series adds a new parameterized test features
   KUnit parameterized tests currently support two primary methods for
   getting parameters:
     1.  Defining custom logic within a generate_params() function.
     2.  Using the KUNIT_ARRAY_PARAM() and KUNIT_ARRAY_PARAM_DESC()
         macros with a pre-defined static array and passing
         the created *_gen_params() to KUNIT_CASE_PARAM().

     These methods present limitations when dealing with dynamically
     generated parameter arrays, or in scenarios where populating parameters
     sequentially via generate_params() is inefficient or overly complex.

     These limitations are fixed with a parameterized test method.

- Fixes issues in kunit build artifacts cleanup,
- Fixes parsing skipped test problem in kselftest framework,
- Enables PCI on UML without triggering WARN()
- a few other fixes and adds support for new configs such as MIPS

diff is attached.

thanks,
-- Shuah

linux_kselftest-kunit-6.18-rc1

- A seven patch series adds a new parameterized test features
   KUnit parameterized tests currently support two primary methods for
   getting parameters:
     1.  Defining custom logic within a generate_params() function.
     2.  Using the KUNIT_ARRAY_PARAM() and KUNIT_ARRAY_PARAM_DESC()
         macros with a pre-defined static array and passing
         the created *_gen_params() to KUNIT_CASE_PARAM().

     These methods present limitations when dealing with dynamically
     generated parameter arrays, or in scenarios where populating parameters
     sequentially via generate_params() is inefficient or overly complex.

     These limitations are fixed with a parameterized test method.

- Fixes issues in kunit build artifacts cleanup,
- Fixes parsing skipped test problem in kselftest framework,
- Enables PCI on UML without triggering WARN()
- a few other fixes and adds support for new configs such as MIPS

29 Sep 2025: bitmap for 6.18 [+ + +]
 - almost complete consolidation for HIWORD_UPDATE()-like macros from Nicolas;
 - bitmaps wrapper for Rust from Burak together with dynamic ID pool based on
   it and  tests;
 - __fls() fix for arc from Kees.

The patches spent for over 2 weeks in -next with no issues.

Thanks,
Yury

bitmap-for-6.18

Bits-related paches for 6.17:
 - FIELD_PREP_WM16() consolidation (Nicolas);
 - bitmaps for Rust (Burak);
 - __fls() fix for arc (Kees).

29 Sep 2025: hardening updates for v6.18-rc1 [+ + +]
is the creation of the "transitional" keyword for kconfig so CONFIG
renaming can go more smoothly. This has been a long-standing deficiency,
and with the renaming of CONFIG_CFI_CLANG to CONFIG_CFI (since GCC will
soon have KCFI support), this came up again. The breadth of the diffstat
is mainly this renaming.

Thanks!

-Kees

hardening updates for v6.18-rc1

- Clean up usage of TRAILING_OVERLAP() (Gustavo A. R. Silva)

- lkdtm: fortify: Fix potential NULL dereference on kmalloc failure
  (Junjie Cao)

- Add str_assert_deassert() helper (Lad Prabhakar)

- gcc-plugins: Remove TODO_verify_il for GCC >= 16

- kconfig: Fix BrokenPipeError warnings in selftests

- kconfig: Add transitional symbol attribute for migration support

- kcfi: Rename CONFIG_CFI_CLANG to CONFIG_CFI

29 Sep 2025: pstore update for v6.18-rc1 [+ + +]

Thanks!

-Kees

pstore update for v6.18-rc1

- Clarify various comments for better understanding (Eugen Hristev)

29 Sep 2025: seccomp updates for v6.18-rc1 [+ + +]

Thanks!

-Kees

seccomp updates for v6.18-rc1

- Fix race with WAIT_KILLABLE_RECV (Johannes Nixdorf)

29 Sep 2025: ffs-const update for v6.18-rc1 [+ + +]
working on various hardening refactoring a while back we encountered
inconsistencies in the application of __attribute_const__ on the ffs()
family of functions. This series fixes this across all archs and adds
KUnit tests. Notably, this found a theoretical underflow in PCI (also
fixed here) and uncovered an inefficiency in ARC (fixed in the ARC
arch PR). I kept the series separate from the general hardening PR since
it is a stand-alone "topic".

Thanks!

-Kees

ffs-const update for v6.18-rc1

- PCI: Fix theoretical underflow in use of ffs().

- Universally apply __attribute_const__ to all architecture's ffs()-family
  of functions.

- Add KUnit tests for ffs() behavior and const-ness.

29 Sep 2025: execve updates for v6.18-rc1 [+ + +]

Thanks!

-Kees

execve updates for v6.18-rc1

- binfmt_elf: preserve original ELF e_flags for core dumps (Svetlana
  Parfenova)

- exec: Fix incorrect type for ret (Xichao Zhao)

- binfmt_elf: Replace offsetof() with struct_size() in fill_note_info()
  (Xichao Zhao)

29 Sep 2025: Devicetree updates for v6.18 [+ + +]

There's a few more touches to vendor-prefixes.yaml this cycle than 
normal, so expect a couple of conflicts. It's all just trivial context 
conflicts.

Rob

Devicetree updates for v6.18:

DT core:
- Update dtc to upstream version v1.7.2-35-g52f07dcca47c

- Add stub for of_get_next_child_with_prefix()

- Convert of_msi_map_id() callers to of_msi_xlate()

DT bindings:
- Convert Megachips stdpxxxx-ge-b850v3-fw DP bridges, NVIDIA Tegra GPUs,
  SUN Sparc RNG, aspeed,ast2400-sdram-edac, Marvell arm32 SoCs, Marvell
  Berlin SoCs, apm,xgene-edac, marvell,armada-ap806-thermal,
  marvell,armada370-thermal, marvell,armada-3700-wdt, nuvoton,npcm-wdt,
  brcm,iproc-flexrm-mbox, brcm,iproc-pdc-mbox,
  marvell,armada-3700-rwtm-mailbox, rockchip,rk3368-mailbox,
  eckelmann,siox-gpio, aspeed,ast2400-gfx, apm,xgene-pmu,
  hisilicon,mbigen-v2, cavium,thunder-88xx,
  aspeed,ast2400-cf-fsi-master,
  fsi-master-gpio, and mediatek,mt8173-vpu bindings to DT schema format

- Add bindings for synaptics,synaptics_i2c touchscreen controller,
  innolux,n133hse-ea1 and nlt,nl12880bc20-spwg-24 displays, and NXP
  vf610 reboot controller

- Add new Arm Cortex-A320/A520AE/A720AE and
  C1-Nano/Pro/Premium/Ultra CPUs. Add missing Applied Micro CPU
  compatibles. Add pu-supply and fsl,soc-operating-points properties for
  CPU nodes.

- Add QCom Glymur PDC and tegra264-agic interrupt controllers

- Add samsung,exynos8890-mali GPU to Arm Mali Midgard

- Drop Samsung S3C2410 display related bindings

- Allow separate DP lane and AUX connections in dp-connector

- Add some missing, undocumented vendor prefixes

- Add missing '#address-cells' properties in interrupt controller
  bindings which dtc now warns about

- Drop duplicate socfpga-sdram-edac.txt, moxa,moxart-watchdog.txt,
  fsl/mpic.txt, ti,opa362.txt, and cavium-thunder2.txt legacy text
  bindings which are already covered by existing schemas.

- Various binding fixes for Mediatek platforms in mailbox, regulator,
  pinctrl, timer, and display

- Drop work-around for yamllint quoting of values containing ','

- Various spelling, typo, grammar, and duplicated words fixes in DT
  bindings and docs

- Add binding guidelines for defining properties at top level of
  schemas, lack of node name ABI, and usage of simple-mfd

29 Sep 2025: ACPI support updates for v6.18-rc1 [+ + +]

 acpi-6.18-rc1




 Linux 6.17-rc7

to receive ACPI updates for 6.18-rc1.

These include an ACPICA update (upstream revision 20250807 with a few
fixes on top), fixes and cleanups of the ACPI processor driver, fixes
and cleanups of the ACPI properties management code, one more ACPI IRQ
resource management quirk, one more ACPI backlight quirk, an ACPI
device enumeration quirk related to _DEP, a power resource quirk
related to WWAN modem for HP EliteBook 855 G7, ACPI SPCR table parser
extensions, an ACPI APEI EINJ driver update allowing it to handle
more address types, and several assorted cleanups of ACPI drivers and
PNP code.

Specifics:

 - Add SoundWire File Table (SWFT) signature to ACPICA (Maciej Strozek)

 - Rearrange local variable definition involving #ifdef in ACPICA to
   avoid using uninitialized variables (Zhe Qiao)

 - Allow ACPICA to skip Global Lock initialization (Huacai Chen)

 - Apply ACPI_NONSTRING in more places in ACPICA and fix two regressions
   related to incorrect ACPI_NONSTRING usage (Ahmed Salem)

 - Fix printing CDAT table header when disassembling CDAT AML (Ahmed
   Salem)

 - Use acpi_ds_clear_operands() in acpi_ds_call_control_method() in
   ACPICA (Hans de Goede)

 - Update dsmethod.c in ACPICA to address unused variable warning (Saket
   Dumbre)

 - Print error messages in ACPICA for too few or too many control method
   arguments (Saket Dumbre)

 - Update ACPICA version to 20250807 (Saket Dumbre)

 - Fix largest possible resource descriptor index in ACPICA (Dmitry
   Antipov)

 - Add Back-Invalidate restriction to CXL Window for CEDT in ACPICA
   (Davidlohr Bueso).

 - Add the package type to acceptable Arg3 types for _DSM in ACPICA
   because ACPI_TYPE_ANY does not cover it (Saket Dumbre)

 - Fix return values in ap_is_valid_checksum() in the acpidump utility
   in ACPICA (Kaushlendra Kumar)

 - Add Intel CVS ACPI HIDs to acpi_ignore_dep_ids[] so it is not
   regarded as real dependency (Hans de Goede)

 - Use ACPI_FREE() for freeing an ACPI object in description_show() in
   the ACPI sysfs-related code (Kaushlendra Kumar)

 - Fix memory leak in the ACPI processor idle driver registration error
   code path and optimize ACPI idle driver registration (Huisong Li,
   Rafael Wysocki)

 - Add module import namespace to the ACPI processor idle driver (Rafael
   Wysocki)

 - Eliminate static variable flat_state_cnt from the ACPI processor idle
   driver (Rafael Wysocki)

 - Release cpufreq policy references using __free() in the ACPI
   processor thermal driver (Zihuan Zhang)

 - Remove unused empty stubs of some functions and rearrange function
   declarations in a header file in the ACPI processor driver (Huisong
   Li)

 - Redefine two functions as void in the ACPI processor driver (Rafael
   Wysocki)

 - Stop exposing global variable acpi_idle_driver in the ACPI processor
   driver (Huisong Li)

 - Fix ACPI buffer properties extraction for data-only subnodes
   represented as _DSD-equivalent packages (Rafael Wysocki)

 - Fix handling of ACPI data-only subnodes represented as _DSD-equivalent
   packages in the case when they are embedded in larger _DSD-equivalent
   packages and clean up acpi_nondev_subnode_extract() (Rafael Wysocki)

 - Skip ACPI IRQ override on ASUS Vivobook Pro N6506CU (Sam van Kampen)

 - Add power resource init function and use it for introducing an HP
   EliteBook 855 G7 WWAN modem power resource quirk (Maciej Szmigiero)

 - Add support for DBG2 RISC-V SBI port subtype and Precise Baud Rate
   field to the ACPI SPCR table parser (Chen Pei)

 - Eliminate a dummy local variable from the ACPI thermal driver (Rafael
   Wysocki)

 - Fold two simple functions into their only caller in the ACPI fan
   driver (Rafael Wysocki)

 - Force native backlight on Lenovo 82K8 in the ACPI backlight (video)
   driver (Mario Limonciello)

 - Add missing sysfs_remove_group() for ACPI_TAD_RT (Daniel Tang)

 - Skip PRM handlers with NULL handler_address or NULL VA in the ACPI
   PRM driver (Shang song)

 - Remove redundant assignments in erst_dbg_{ioctl|write}() in the ACPI
   APEI driver (Thorsten Blum)

 - Allow the ACPI APEI EINJ to handle more types of addresses than just
   MMIO (Jiaqi Yan)

 - Use str_low_high() helper in two places in the ACPI code (Chelsy
   Ratnawat)

 - Use str_plural() to simplify the PNP code (Xichao Zhao)

 - Fix signedness issues in read/write helpers in the ACPI AML debugger
   interface (Amir Mohammad)

Thanks!



29 Sep 2025: Thermal control updates for v6.18-rc1 [+ + +]

 thermal-6.18-rc1


 Merge tag 'thermal-v6.18-rc1-2' of
ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/thermal/linux


 Linux 6.17-rc4

to receive thermal control updates for 6.18-rc1.

These are mostly thermal driver updates, including new thermal drivers
for Renesas RZ/G3S and Renesas RZ/G3E SoCs, a new power slider platform
feature support in the Intel int340x thermal driver, a new Tegra114-
specific SOCTHERM driver and more.

There is also a Step-wise thermal governor update allowing it to start
reducing cooling somewhat earlier if the temperature of the given
thermal zone is falling down and a thermal testing code cleanup.

Specifics:

 - Add new thermal driver for the Renesas RZ/G3S SoC (Claudiu Beznea)

 - Add new thermal driver for the Renesas RZ/G3E SoC (John Madieu)

 - Add support for new platform power slider feature to the Intel
   int340x driver (Srinivas Pandruvada).

 - Add new Tegra114-specific SOCTHERM driver and document Tegra114
   SOCTHERM Thermal Management System in DT bindings (Svyatoslav Ryhel)

 - Add temperature sensor channel to thermal-generic-adc (Svyatoslav
   Ryhel)

 - Add support for per-SoC default trim values to the Renesas rcar_gen3
   thermal driver, use it for adding R-Car V4H default trim values, fix
   a comment typo in that driver and document Gen4 support in its
   Kconfig entry (Marek Vasut)

 - Fix mapping SoCs to generic Gen4 entry in the Renesas rcar_gen3
   thermal driver (Wolfram Sang)

 - Document the TSU unit in the r9a08g045-tsu and r9a09g047-tsu DT
   bindings (Claudiu Beznea, John Madieu)

 - Make LMH select QCOM_SCM and add missing IRQ includes to the
   qcom/lmh thermal driver (Dmitry Baryshkov)

 - Fix incorrect error message in the qcom/lmh thermal driver (Sumeet
   Pawnikar)

 - Add QCS615 compatible to tsens thermal DT bindings (Gaurav Kohli)

 - Document the Glymur temperature sensor in qcom-tsens thermal DT
   bindings (Manaf Meethalavalappu Pallikunhi)

 - Make k3_j72xx_bandgap thermal driver register the thermal sensor
   with hwmon (Michael Walle)

 - Tighten GRF requirements in the rockchip thermal DT bindings,
   silence a GRF warning in the rockchip thermal driver and unify
   struct rockchip_tsadc_chip format in it (Sebastian Reichel)

 - Update the Step-wise thermal governor to allow it to reduce the
   cooling level earlier if thermal zone temperature is dropping
   and clean it up (Rafael Wysocki)

 - Clean up the thermal testing code (Rafael Wysocki)

 - Assorted cleanups of thermal drivers (Jiapeng Chong, Salah Triki,
   Osama Abdelkader)

Thanks!



29 Sep 2025: Power management updates for v6.18-rc1 [+ + +]

 pm-6.18-rc1


 Merge branch 'pm-tools'


 Merge tag 'pm-6.17-rc8' of

to receive power management updates for 6.18-rc1.

The majority of these are cpufreq changes, which has been a recurring
pattern for a few recent cycles.  Those changes include new hardware
support (AN7583 SoC support in the airoha cpufreq driver, ipq5424
support in the qcom-nvmem cpufreq driver, MT8196 support in the
mediatek cpufreq driver, AM62D2 support in the ti cpufreq driver),
DT bindings and Rust code updates, cleanups of the core and governors,
and multiple driver fixes and cleanups.

Beyond that, there are hibernation fixes (some remaining 6.16 cycle
fallout and an issue related to hybrid suspend in the amdgpu driver),
cleanups of the PM core code, runtime PM documentation update, cpuidle
and power capping cleanups, and tooling updates.

Specifics:

 - Rearrange variable declarations involving __free() in the cpufreq
   core and intel_pstate driver to follow common coding style (Rafael
   Wysocki)

 - Fix object lifecycle issue in update_qos_request(), rearrange
   freq QoS updates using __free(), and adjust frequency percentage
   computations in the intel_pstate driver (Rafael Wysocki)

 - Update intel_pstate to allow it to enable HWP without EPP if the
   new DEC (Dynamic Efficiency Control) HW feature is enabled (Rafael
   Wysocki)

 - Use on_each_cpu_mask() in drv_write() in the ACPI cpufreq driver
   to simplify the code (Rafael Wysocki)

 - Use likely() optimization in intel_pstate_sample() (Yaxiong Tian)

 - Remove dead EPB-related code from intel_pstate (Srinivas Pandruvada)

 - Use scope-based cleanup for cpufreq policy references in multiple
   cpufreq drivers (Zihuan Zhang)

 - Avoid calling get_governor() for the first policy in the cpufreq core
   to simplify the initial policy path (Zihuan Zhang)

 - Clean up the cpufreq core in multiple places (Zihuan Zhang)

 - Use int type to store negative error codes in the cpufreq core and
   update the speedstep-lib to use int for error codes (Qianfeng Rong)

 - Update the efficient idle check for Intel extended Families in the
   ondemand cpufreq governor (Sohil Mehta)

 - Replace sscanf() with kstrtouint() in the conservative cpufreq
   governor (Kaushlendra Kumar)

 - Rename CpumaskVar::as[_mut]_ref to from_raw[_mut] in the cpumask
   Rust code and mark CpumaskVar as transparent (Alice Ryhl, Baptiste
   Lepers)

 - Update ARef and AlwaysRefCounted imports from sync::aref in the OPP
   Rust code (Shankari Anand)

 - Add support for AN7583 SoC to the airoha cpufreq driver (Christian
   Marangi)

 - Enable cpufreq for ipq5424 in the qcom-nvmem cpufreq driver (Md Sadre
   Alam)

 - Add support for MT8196 to the mediatek-hw cpufreq driver, refactor
   that driver and add mediatek,mt8196-cpufreq-hw DT binding (Nicolas
   Frattaroli)

 - Avoid redundant conditions in the mediatek cpufreq driver (Liao
   Yuanhong)

 - Add support for AM62D2 to the ti cpufreq driver and blocklist
   ti,am62d2 SoC in dt-platdev (Paresh Bhagat)

 - Support more speed grades on AM62Px SoC in the ti cpufreq driver,
   allow all silicon revisions to support OPPs in it, and fix supported
   hardware for 1GHz OPP (Judith Mendez)

 - Add QCS615 compatible to DT bindings for cpufreq-qcom-hw (Taniya Das)

 - Minor assorted updates of the scmi, longhaul, CPPC, and armada-37xx
   cpufreq drivers (Akhilesh Patil, BowenYu, Dennis Beier, and Florian
   Fainelli)

 - Remove outdated cpufreq-dt.txt (Frank Li)

 - Fix python gnuplot package names in the amd_pstate_tracer utility
   (Kuan-Wei Chiu)

 - Saravana Kannan will maintain the virtual-cpufreq driver (Saravana
   Kannan)

 - Prevent CPU capacity updates after registering a perf domain from
   failing on a first CPU that is not present (Christian Loehle)

 - Add support for the cases in which frequency alone is not sufficient
   to uniquely identify an OPP (Krishna Chaitanya Chundru)

 - Use to_result() for OPP error handling in Rust (Onur =C3=96zkan)

 - Add support for LPDDR5 on Rockhip RK3588 SoC to rockchip-dfi devfreq
   driver (Nicolas Frattaroli)

 - Fix an issue where DDR cycle counts on RK3588/RK3528 with LPDDR4(X)
   are reported as half by adding a cycle multiplier to the DFI driver
   in rockchip-dfi devfreq-event driver (Nicolas Frattaroli)

 - Fix missing error pointer dereference check of regulator instance in
   the mtk-cci devfreq driver probe and remove a redundant condition from
   an if () statement in that driver (Dan Carpenter, Liao Yuanhong)

 - Fail cpuidle device registration if there is one already to avoid
   sysfs-related issues (Rafael Wysocki)

 - Use sysfs_emit()/sysfs_emit_at() instead of sprintf()/scnprintf() in
   cpuidle (Vivek Yadav)

 - Fix device and OF node leaks at probe in the qcom-spm cpuidle driver
   and drop unnecessary initialisations from it (Johan Hovold)

 - Remove unnecessary address-of operators from the intel_idle cpuidle
   driver (Kaushlendra Kumar)

 - Rearrange main loop in menu_select() to make the code in that function
   easier to follow (Rafael Wysocki)

 - Convert values in microseconds to ktime using us_to_ktime() where
   applicable in the intel_idle power capping driver (Xichao Zhao)

 - Annotate loops walking device links in the power management core
   code as _srcu and add macros for walking device links to reduce the
   likelihood of coding mistakes related to them (Rafael Wysocki)

 - Document time units for *_time functions in the runtime PM API (Brian
   Norris)

 - Clear power.must_resume in noirq suspend error path to avoid resuming
   a dependant device under a suspended parent or supplier (Rafael
   Wysocki)

 - Fix GFP mask handling during hybrid suspend and make the amdgpu
   driver handle hybrid suspend correctly (Mario Limonciello, Rafael
   Wysocki)

 - Fix GFP mask handling after aborted hibernation in platform mode and
   combine exit paths in power_down() to avoid code duplication (Rafael
   Wysocki)

 - Use vmalloc_array() and vcalloc() in the hibernation core to avoid
   open-coded size computations (Qianfeng Rong)

 - Fix typo in hibernation core code comment (Li Jun)

 - Call pm_wakeup_clear() in the same place where other functions that do
   bookkeeping prior to suspend_prepare() are called (Samuel Wu)

 - Fix and clean up the x86_energy_perf_policy utility and update its
   documentation (Len Brown, Kaushlendra Kumar)

 - Fix incorrect sorting of PMT telemetry in turbostat (Kaushlendra
   Kumar)

 - Fix incorrect size in cpuidle_state_disable() and the error return
   value of cpupower_write_sysfs() in cpupower (Kaushlendra Kumar)

Thanks!



29 Sep 2025: dlm updates for 6.18 [+ + +]


This set of patches add a dlm_release_lockspace() flag to request that
node-failure recovery be performed for the node leaving the lockspace.
The implementation of this flag requires coordination with userland
clustering components.  It's been requested for use by GFS2.

Thanks,
Dave

29 Sep 2025: erofs updates for 6.18-rc1 [+ + +]
Could you consider this pull request for 6.18-rc1?

There is no outstanding feature for this cycle.  One change adds
support for FS_IOC_GETFSLABEL, and the others are fixes and cleanups.

All commits have been in -next for a while and no potential merge
conflict is observed.

Thanks,
Gao Xiang

Changes since last update:

 - Support FS_IOC_GETFSLABEL ioctl;

 - Stop meaningless read-more policy on fragment extents;

 - Remove a duplicate check for ztailpacking inline.

29 Sep 2025: firewire updates for v6.18 kernel [+ + +]
Please accept the changes for FireWire subsystem to your tree.

This update may appear to include many changes, but most of them are
code refactoring. Except for the removal of firewire-ohci module
parameter, there are only a few notable changes.


firewire updates for v6.18

This update includes the following changes:

- Removal of the deprecated debug parameter from firewire-ohci module
- Replacement of the module-local workqueue in 1394 OHCI PCI driver with
  a companion IRQ thread
- Refactoring of bus management code
- Additional minor code cleanup

The existing tracepoints serve as an alternative to the removed debug
parameter. The use of IRQ thread is experimental, as it handles 1394 OHCI
SelfIDComplete event only. It may be replaced in the future releases with
another approach; e.g. by providing workqueue from core functionality

29 Sep 2025: MMC/MEMSTICK updates for v6.18 [+ + +]
Here's the pull-request with the updates for MMC and MEMSTICK for v6.18.
Details about the highlights are as usual found in the signed tag.


Kind regards
Ulf Hansson


MMC core:
 - Improve RPMB frame handling code
 - Add support for a new max-sd-hs-hz DT property to limit frequency
 - Add support to manage regulator-under-voltage events
 - Support regulator-under-voltage for eMMC to mitigate data corruptions
 - Add mmc_read_tuning() to allow a host to validate its tuning sequence
 - Add some helpers to align checks for CMD23 support
 - Read the CCCR register for SDIO over SPI rather than the unsupported CMD7

MMC host:
 - Add COMPILE_TEST option for a couple of drivers
 - Convert drivers to use the modern PM macros
 - dw_mmc-exynos: Enable support for the Exynos8890 variant
 - mmc_spi: Don't use crc ack during multiple block read
 - renesas_sdhi: Enable 64-bit polling mode for R-Car gen3 and RZ/G2L SoCs
 - rtsx_usb: Add support for over-current-protection
 - sdhci-cadence: Add support for multi-block read gap tuning
 - sdhci-msm: Add support for tuning for SDR50 mode for SD cards
 - sdhci-msm: Enable support for the Lemans variant
 - sdhci-pci: Disable SD card clock before update for a few Intel platforms
 - sdhci-pxav3: Add support for UHS pinctrl settings
 - tmio: Add 64-bit read/write support in polling mode

MEMSTICK:
 - Convert to use timeouts to prevent indefinite waiting
 - rtsx_usb: Add support for over-current-protection

29 Sep 2025: pmdomain updates for v6.18 [+ + +]
Here's the pull-request with pmdomain updates for v6.18.
More details about the highlights are as usual found in the signed tag.


Kind regards
Ulf Hansson


pmdomain providers:
 - amlogic: Add support for S6/S7/S7D power-domains controller
 - imx: Add support for i.MX91 power-domains
 - marvell: Add support for PXA1908 power-domains
 - mediatek: Add support for modem power sequence
 - mediatek: Add support for RTFF Hardware in MT8196/MT6991
 - qcom: Align power-domain definitions for rpmpd
 - rockchip: Default to use power-domain support
 - thead: Create auxiliary device along with a corresponding reset driver
 - ti: Synchronize on/off state with HW-state for ti-sci power-domains

29 Sep 2025: SPI updates for v6.18 [+ + +]
spi: Updates for v6.18

There's one big core change in this release, Jonas Gorski has addressed
the issues with multiple chip selects which makes things more robust and
stable.  Otherwise there's quite a bit of driver work, as well as some
new drivers several existing drivers have had quite a bit of work done
on them.

Possibly the most interesting thing is the VirtIO driver, this is
apparently useful for some automotive applications which want to keep as
small and robust a host system as they can, moving less critical
functionality into guests.

 - James Clark has done some substantial updates on the Freescale DSPI
   driver, porting in code from the BSP and building onm top of that to
   fix some bugs and increase performance.
 - Jonas Gorski has fixed the issues with handling multple chip selects,
   making things more robust and scalable.
 - Support for higher performance modes in the NXP FSPI driver from
   Haibo Chen.
 - Removal of the obsolete S3C2443 driver, the underlying SoC support
   has been removed from the kernel.
 - Support for Amlogic AL113L2, Atmel SAMA7D65 and SAM9x7 and for VirtIO
   controllers.

29 Sep 2025: regulator updates for v6.18 [+ + +]
regulator: Updates for v6.18

This is a very quiet release for regulator, almost all the changes are
new drivers but we do also have some improvements for the Rust bindings.

 - Additional APIs added to the Rust bindings.
 - Support for Maxim MAX77838, NXP PF0900 and PF5300, Richtek RT5133 and
   SpacemiT P1.

29 Sep 2025: regmap updates for v6.18 [+ + +]
regmap: Updates for v6.18

This just contains a few small fixes, there's been no substantial
development on regmap this release cycle.

29 Sep 2025: KCSAN updates for v6.18 [+ + +]

Many thanks,
-- Marco

------ >8 ------

Kernel Concurrency Sanitizer (KCSAN) updates for v6.18

- Replace deprecated strcpy() with strscpy()

This change has had 6 weeks of linux-next exposure.

29 Sep 2025: gpio updates for v6.18-rc1 [+ + +]
From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>


Here's the PR containing the GPIO updates for this merge window. There are
two new drivers and support for more models in existing ones. 

The generic GPIO API has been reworked and all users converted which
allowed us to move the fields specific to the generic GPIO implementation
out of the high-level struct gpio_chip into its own structure that wraps
the gpio_chip.

Other than that, there's nothing too exciting. Mostly minor tweaks and
fixes all over the place, some refactoring and some small new features
in helper modules. Details are in the signed tag.

The merges you see here are either me pulling in MFD changes with GPIO
drivers that depend on MFD changes or my own immutable branches provided
for other trees.

Thanks,
Bartosz

gpio updates for v6.18-rc1

GPIO core:
- add support for sparse pin ranges to the glue between GPIO and pinctrl
- use a common prefix across all GPIO descriptor flags for improved
  namespacing

New drivers:
- add new GPIO driver for the Nuvoton NCT6694
- add new GPIO driver for MAX7360

Driver improvements:
- add support for Tegra 256 to the gpio-tegra186 driver
- add support for Loongson-2K0300 to the gpio-loongson-64bit driver
- refactor the gpio-aggregator module to expose its GPIO forwarder API
  to other in-kernel users (to enable merging of a new pinctrl driver
  that uses it)
- convert all remaining drivers to using the modernized generic GPIO chip
  API and remove the old interface
- stop displaying global GPIO numbers in debugfs output of controller
  drivers
- extend the gpio-regmap helper with a new config option and improve its
  support for GPIO interrupts
- remove redundant fast_io parameter from regmap configs in GPIO drivers
  that already use MMIO regmaps which imply it
- add support for a new model in gpio-mmio: ixp4xx expansion bus
- order includes alphabetically in a few drivers for better readability
- use generic device properties where applicable
- use devm_mutex_init() where applicable
- extend build coverage of drivers by enabling more to be compiled with
  COMPILE_TEST enabled
- allow building gpio-stmpe as a module
- use dev_err_probe() where it makes sense in drivers

Late driver fixes:
- fix setting GPIO direction to output in gpio-mpfs

Documentation:
- document the usage of software nodes with GPIO chips

Device-tree bindings:
- Add DT bindings documents for new hardware: Tegra256, MAX7360
- Document a new model in Loongson bindings: LS2K0300
- Document a new model using the generic GPIO binding: IXP4xx
- Convert the DT binding for fsl,mxs-pinctrl to YAML
- fix the schema ID in the "trivial" GPIO schema
- describe GPIO hogs in the generic GPIO binding

29 Sep 2025: s390 updates for 6.18 merge window [+ + +]
please pull s390 updates for the 6.18 merge window.

There are two merge conflicts:

With the net-next tree resolved in linux-next:
https://lore.kernel.org/linux-next/aNKbgf7GyU5JP3Zh@finisterre.sirena.org.uk/
---
s390 updates for 6.18 merge window

- Refactor SCLP memory hotplug code

- Introduce common boot_panic() decompressor helper macro and
  use it to get rid of nearly few identical implementations

- Take into account additional key generation flags and forward
  it to the ep11 implementation. With that allow users to modify
  the key generation process, e.g. provide valid combinations of
  XCP_BLOB_* flags

- Replace kmalloc() + copy_from_user() with memdup_user_nul()
  in s390 debug facility and HMC driver

- Add DAX support for DCSS memory block devices

- Make the compiler statement attribute "assume" available with
  a new __assume macro

- Rework ffs() and fls() family bitops functions, including
  source code improvements and generated code optimizations.
  Use the newly introduced __assume macro for that

- Enable additional network features in default configurations

- Use __GFP_ACCOUNT flag for user page table allocations to add
  missing kmemcg accounting

- Add WQ_PERCPU flag to explicitly request the use of the per-CPU
  workqueue for 3590 tape driver

- Switch power reading to the per-CPU and the Hiperdispatch to the
  default workqueue

- Add memory allocation profiling hooks to allow better profiling
  data and the /proc/allocinfo output similar to other architectures

29 Sep 2025: timers/clocksource for v6.18-rc1 [+ + +]
please pull the latest timers/clocksource branch from:

ce-2025-09-29

b/scm/linux/kernel/git/daniel.lezcano/linux into timers/clocksource

Updates for the clocksource/clockevents drivers subsystem:

  - Further preparations for modular clocksource/event drivers

  - The usual device tree updates to support new chip variants and the
    related changes to thise drivers

  - Avoid a 64-bit division in the TEGRA186 driver, which caused a build
    fail on 32-bit machines.

  - Small fixes, improvements and cleanups all over the place

Thanks,

tglx

29 Sep 2025: locking/futex for v6.18-rc1 [+ + +]
please pull the latest locking/futex branch from:

25-09-29

undary"

A set of updates for futexes and related selftests:

  - Plug the ptrace_may_access() race against a concurrent exec() which
    allows to pass the check before the target's process transition in
    exec() by taking a read lock on signal->ext_update_lock.

  - A large set of cleanups and enhancement to the futex selftests. The
    bulk of changes is the conversion to the kselftest harness.

Thanks,

tglx

29 Sep 2025: timers/vdso for v6.18-rc1 [+ + +]
please pull the latest timers/vdso branch from:

-09-29


Updates for the VDSO subsystem:

  - Further consolidation of the VDSO infrastructure and the common data
    store.

  - Simplification of the related Kconfig logic

  - Improve the VDSO selftest suite

Thanks,

tglx

29 Sep 2025: irq/drivers for v6.18-rc1 [+ + +]
please pull the latest irq/drivers branch from:

-09-29

 IRQ controller

Updates for interrupt chip drivers:

  - Use the startup/shutdown callbacks for the PCI/MSI per device interrupt
    domains.

    This allows to initialize the RISCV PLIC interrupt hierarchy correctly
    and provides a mechanism to decouple the masking and unmasking during
    run-time from the expensive PCI mask and unmask when the underlying MSI
    provider implementation allows the interrupt to be masked.

  - Initialize the RISCV PLIC MSI interrupt hierarchy correctly so that the
    affinity assignment works correctly by switching it over to the
    startup/shutdown scheme

  - Allow MSI providers to opt out from masking a PCI/MSI interrupt at the
    PCI device during operation when the provider can mask the interrupt at
    the underlying interrupt chip. This reduces the overhead in scenarios
    where disable_irq()/enable_irq() is utilized frequently by a driver.

    The PCI/MSI device level [un]masking is only required on startup and
    shutdown in this case.

  - Remove the conditional mask/unmask logic in the PCI/MSI layer as this
    is now handled unconditionally.

  - Replace the hardcoded interrupt routing in the Loongson EIOINTC
    interrupt driver to respect the firmware settings and spread them out
    to different CPU interrupt inputs so that the demultiplexing handler
    only needs to read only a single 64-bit status register instead of
    four, which significantly reduces the overhead in VMs as the status
    register access causes a VM exit.

  - Add support for the new AST2700 SCU interrupt controllers

  - Use the legacy interrupt domain setup for the Loongson PCH-LPC
    interrupt controller, which resembles the x86 legacy PIC setup and has
    the same hardcoded legacy requirements.

  - The usual set of cleanups, fixes and improvements all over the place

Thanks,

tglx

29 Sep 2025: timers/core for v6.18-rc1 [+ + +]
please pull the latest timers/core branch from:

-09-29


Updates for the time(rs) core subsystem:

  - Address the inconsistent shutdown sequence of per CPU clockevents on
    CPU hotplug, which onoly removed it from the core but failed to invoke
    the actual device driver shutdown callback. This keeps the timer
    active, which prevents power savings and causes pointless noise in
    virtualization.

  - Encapsulate the open coded access to the hrtimer clock base, which is a
    private implementation detail, so that the implementation can be
    changed without breaking a lot of usage sites.

  - Enhance the debug output of the clocksource watchdog to provide better
    information for analysis.

  - The usual set of cleanups and enhancements all over the place

Thanks,

tglx

29 Sep 2025: irq/core for v6.18-rc1 [+ + +]
please pull the latest irq/core branch from:

-29

RT

A set of updates for the interrupt core subsystem:

  - Introduce irq_chip_[startup|shutdown]_parent() to prepare for
    addressing a few short comings in the PCI/MSI interrupt subsystem.

    It allows to utilize the interrupt chip startup/shutdown callbacks for
    initializing the interrupt chip hierarchy properly on certain RISCV
    implementations and provides a mechanism to reduce the overhead of
    masking and unmasking PCI/MSI interrupts during operation when the
    underlying MSI provider can mask the interrupt.

    The actual usage comes with the interrupt driver pull request.

  - Add generic error handling for devm_request_*_irq()

    This allows to remove the zoo of random error printk's all over the
    usage sites.

  - Add a mechanism to warn about long-running interrupt handlers

    Long running interrupt handlers can introduce latencies and tracking
    them down is a tedious task. The tracking has to be enabled with a
    threshold on the kernel command line and utilizes a static branch to
    remove the overhead when disabled.

  - Update and extend the selftests which validate the CPU hotplug
    interrupt migration logic

  - Allow dropping the per CPU softirq lock on PREEMPT_RT kernels, which
    causes contention and latencies all over the place.

    The serialization requirements have been pushed down into the actual
    affected usage sites already.

  - The usual small cleanups and improvements

Thanks,

tglx

29 Sep 2025: core/rseq for v6.18-rc1 [+ + +]
please pull the latest core/rseq branch from:

9-29

on, to link with glibc

Two fixes for RSEQ:

  1) Protect the event mask modification against the membarrier() IPI as
     otherwise the RmW operation is unprotected and events might be lost.

  2) Fix the weak symbol reference in rseq selftests

     The current weak RSEQ symbols definitions which were added to allow
     static linkage are not working correctly as the effectively re-define
     the glibc symbols leading to multiple versions of the symbols when
     compiled with -fno-common. Mark them as 'extern' to convert them from
     weak symbol definitions to weak symbol references. That works with
     static and dynamic linkage independent of -fcommon and -fno-common.

Thanks,

tglx

29 Sep 2025: smp/core for v6.18-rc1 [+ + +]
please pull the latest smp/core branch from:

-29

neldoc

An update of the stale smp_call_function_many() documentation to bring it
back in sync with the actual implementation.

Thanks,

tglx

29 Sep 2025: core/core for v6.18-rc1 [+ + +]
please pull the latest core/core branch from:

9-29


A set of changes to consolidate the generic TIF bits accross architectures

All architectures define the same set of generic TIF bits. This makes it
pointlessly hard to add a new generic TIF bit or to change an existing one.

Provide a generic variant and convert the architectures which utilize the
generic entry code over to use it. The TIF space is divided into 16 generic
bits and 16 architecture specific bits, which turned out to provide enough
space on both sides.

Thanks,

tglx

29 Sep 2025: m68k updates for v6.18 [+ + +]
m68k updates for v6.18

  - Fix whitespace in Zorro name macros,
  - Fix find_*_bit() signatures,
  - Defconfig updates.

Thanks for pulling!

29 Sep 2025: RISC-V updates for v6.18-rc1 [+ + +]
  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.


Linus,

RISC-V updates for the v6.18 merge window (part one)

First set of RISC-V updates for the v6.18 merge window, including:

- Replacement of __ASSEMBLY__ with __ASSEMBLER__ in header files (other
  architectures have already merged this type of cleanup)

- The introduction of ioremap_wc() for RISC-V

- Cleanup of the RISC-V kprobes code to use mostly-extant macros rather than
  open code

- A RISC-V kprobes unit test

- An architecture-specific endianness swap macro set implementation,
  leveraging some dedicated RISC-V instructions for this purpose if they
  are available

- The ability to identity and communicate to userspace the presence of a
  MIPS P8700-specific ISA extension, and to leverage its MIPS-specific PAUSE
  implementation in cpu_relax()

- Several other miscellaneous cleanups

29 Sep 2025: pwm: Changes for v6.18-rc1 [+ + +]
Subject: [GIT PULL] pwm: Changes for v6.18-rc1
MIME-Version: 1.0

Hello Linus,

the following changes since commit 8f5ae30d69d7543eee0d70083daf4de8fe15d585:

  Linux 6.17-rc1 (2025-08-10 19:41:16 +0300)

are available in the Git repository at:

wm/for-6.18-rc1

for you to fetch changes up to 8f2689f194b8d1bff41150ae316abdfccf191309:

  pwm: cros-ec: Avoid -Wflex-array-member-not-at-end warnings (2025-09-15 1=
1:39:47 +0200)

pwm: Changes for v6.18-rc1

The core highlights for this cycle are:

 - The pca9586 driver was converted to the waveform API.
 - Waveform drivers automatically provide a gpio chip to make PWMs
   usable as GPIOs. (The pca9586 driver did that in a driver specific
   implementation before.)

Otherwise it's the usual mix of fixes and device tree and driver changes
to support new hardware variants.


There is an immutable branch pending for this merge window that was
created by Lee at

t-pinctrl-pwm-v6.18

=2E I didn't add it here because it merges cleanly into my tree; you'll get
it via Lee's PR and probably others, too. (For the next time such a
situation arises: Would you prefer me including such a merge anyhow?)

Otherwise this PR should be boring for you
(https://www.youtube.com/watch?v=3DV_ioxeU7Kpw). Diffstat below as usual.

Thanks to all contributors!

Best regards
Uwe

29 Sep 2025: chrome-platform updates for v6.18 [+ + +]

Hi Linus,


Thanks,
Tzung-Bi
------

chrome-platform: Updates for v6.18

* New

  - Add a new API cros_ec_device_registered() for checking if the
    cros_ec_deivce is ready.

* Improvements

  - Use TRAILING_OVERLAP() to fix -Wflex-array-member-not-at-end
    warning.
  - Defer probe until parent EC device is ready in cros_ec_keyb.

* Cleanups

  - Remove redundant and simplify code in cros_ec_chardev.
  - Centralize cros_ec_device allocation and initialization to remove
    duplicate code.

 
28 Sep 2025: hwmon updates for v6.18-rc1 [+ + +]


Thanks,
Guenter
------

hwmon updates for v6.18-rc1

* New drivers

  - Driver for Kontron SMARC-sAM67

  - Driver for GPD device sensors

  - Driver for MP29502

  - Driver for MP2869, MP29608, MP29612 and MP29816 series

* Added chip support to existing drivers

  - asus-ec-sensors:
Add B650E-I
Add PRIME Z270-A
Add Pro WS WRX90E-SAGE SE
Add ROG STRIX X670E-E GAMING WIFI
Add ROG STRIX X870-I GAMING WIFI
Add ROG STRIX X870E-E GAMING WIFI
Add ROG STRIX Z690-E GAMING WIFI
Add ROG STRIX Z790E GAMING WIFI II
Add STRIX B850-I GAMING WIFI
Add TUF GAMING X670E PLUS WIFI
Add X670E-I GAMING WIFI
Add Z790-I GAMING WIFI

  - dell-smm: Add support for Dell OptiPlex 7040

  - ina238: Major cleanup, and
  Add support for INA700
Add support for INA780

  - k10temp:
  Add device ID for Strix Halo
Add support for AMD Family 1Ah-based models

  - lenovo-ec-sensors: Update P8 supprt

  - lm75: Add NXP P3T1750 support

  - pmbus/adm1275: Add sq24905c support

  - pmbus/isl68137: Add support for Renesas RAA228244 and RAA228246

  - pmbus/mp5990: Add support for MP5998

  - sht21: Add support for SHT20, SHT25

  - sl28cpld: Add sa67mcu compatible

* Other notable changes

  - core:
Handle locking internally
Introduce 64-bit energy attribute support

  - cros_ec: Register into thermal framework, improve PWM control

  - lm75: allow interrupt for ti,tmp75

  - mlxreg-fan: Add support for new flavour of capability register

  - sbtsi_temp: AMD CPU extended temperature range support

  - sht21: Add devicetree support

* Various other minor improvements and fixes

28 Sep 2025: hfs/hfsplus changes for 6.18-rc1 [+ + +]
This pull request contains several fixes of syzbot reported
issues, HFS/HFS+ fixes of xfstests failures, and rework of
HFS/HFS+ debug output subsystem.

Kang Chen has fixed a slab-out-of-bounds issue in hfsplus_uni2asc()
when hfsplus_uni2asc() is called from hfsplus_listxattr().
Yang Chenzhi has fixed a crash in hfsplus_bmap_alloc() if record
offset or length is larger than node_size.
Yangtao Li made correction of returning error code from
hfsplus_fill_super() if Catalog File contains corrupted record
for the case of hidden directory's type.

The KMSAN uninit-value issue has been fixed in hfs_find_set_zero_bits()
by exchanging the kmalloc() on kzalloc() call. The KMSAN uninit-value
issue in hfsplus_delete_cat() has been fixed by proper initialization
of struct hfsplus_inode_info in the hfsplus_iget() logic. The KMSAN
uninit-value issue in __hfsplus_ext_cache_extent() has been fixed by
exchanging the kmalloc() on kzalloc() in hfs_find_init().

The slab-out-of-bounds issue could happen in hfsplus_strcasecmp()
if the length field of struct hfsplus_unistr is bigger than
HFSPLUS_MAX_STRLEN. The issue has been fixed by checking
the length of comparing strings. And if the strings' length
is bigger than HFSPLUS_MAX_STRLEN, then the length is corrected
to this value.

The generic/736 xfstest fails for HFS case because HFS volume
becomes corrupted after the test run. The main reason of
the issue is the absence of logic that corrects
mdb->drNxtCNID/HFS_SB(sb)->next_id (next unused CNID) after
deleting a record in Catalog File. It was introduced
a hfs_correct_next_unused_CNID() method that implements
the necessary logic.

hfs updates for v6.18

- hfs/hfsplus: rework debug output subsystem
- hfsplus: fix slab-out-of-bounds read in hfsplus_strcasecmp()
- hfsplus: fix slab-out-of-bounds read in hfsplus_uni2asc()
- hfs: clear offset and space out of valid records in b-tree node
- hfs: add logic of correcting a next unused CNID
- hfsplus: fix KMSAN uninit-value issue in hfsplus_delete_cat()
- hfs: fix KMSAN uninit-value issue in hfs_find_set_zero_bits()
- hfs: make proper initalization of struct hfs_find_data
- hfsplus: fix KMSAN uninit-value issue in __hfsplus_ext_cache_extent()
- hfs: validate record offset in hfsplus_bmap_alloc
- hfsplus: return EIO when type of hidden directory mismatch in
hfsplus_fill_super()
- MAINTAINERS: update location of hfs&hfsplus trees

28 Sep 2025: cpupower update for Linux 6.18-rc1 [+ + +]
Hi Rafael,


Fixes incorrect return vale in cpupower_write_sysfs() error path
and passing incorrect size to cpuidle_state_write_file() while
writing status to disable file in cpuidle_state_disable().

diff is attached.

thanks,
-- Shuah

linux-cpupower-6.18-rc1

Fixes incorrect return vale in cpupower_write_sysfs() error path
and passing incorrect size to cpuidle_state_write_file() while
writing status to disable file in cpuidle_state_disable().

28 Sep 2025: Driver core changes for 6.18-rc1 [+ + +]

I did a test merge pulling in Miguel's Rust tree and found two trivial incl=
ude
conflicts -- otherwise no conflicts expected.

All changes have been in linux-next for at least six rounds (except for two
minor patches that change the Display implementation of pci::Vendor and
pci::Class to print the actual vendor and class name).

- Danilo

Driver core changes for 6.18-rc1

- Auxiliary:
   - Drop call to dev_pm_domain_detach() in auxiliary_bus_probe()
   - Optimize logic of auxiliary_match_id()

- Rust:
  - Auxiliary:
    - Use primitive C types from prelude

  - DebugFs:
    - Add debugfs support for simple read/write files and custom callbacks
      through a File-type-based and directory-scope-based API
    - Sample driver code for the File-type-based API
    - Sample module code for the directory-scope-based API

  - I/O:
    - Add io::poll module and implement Rust specific read_poll_timeout()
      helper

  - IRQ:
    - Implement support for threaded and non-threaded device IRQs based on
      (&Device<Bound>, IRQ number) tuples (IrqRequest)
    - Provide &Device<Bound> cookie in IRQ handlers

  - PCI:
    - Support IRQ requests from IRQ vectors for a specific pci::Device<Boun=
d>
    - Implement accessors for subsystem IDs, revision, devid and resource s=
tart
    - Provide dedicated pci::Vendor and pci::Class types for vendor and cla=
ss
      ID numbers
    - Implement Display to print actual vendor and class names; Debug to pr=
int
      the raw ID numbers
    - Add pci::DeviceId::from_class_and_vendor() helper
    - Use primitive C types from prelude
    - Various minor inline and (safety) comment improvements

  - Platform:
    - Support IRQ requests from IRQ vectors for a specific
      platform::Device<Bound>

  - Nova:
    - Use pci::DeviceId::from_class_and_vendor() to avoid probing
      non-display/compute PCI functions

  - Misc:
    - Add helper for cpu_relax()
    - Update ARef import from sync::aref

- sysfs:
  - Remove bin_attrs_new field from struct attribute_group
  - Remove read_new() and write_new() from struct bin_attribute

- Misc:
  - Document potential race condition in get_dev_from_fwnode()
  - Constify node_group argument in software node registration functions
  - Fix order of kernel-doc parameters in various functions
  - Set power.no_pm flag for faux devices
  - Set power.no_callbacks flag along with the power.no_pm flag
  - Constify the pmu_bus bus type
  - Minor spelling fixes

28 Sep 2025: Rust for 6.18 [+ + +]
This is the next round of the Rust support.

A small one this time. One of the trees I merge (pin-init) is going this
cycle through DRM for convenience.

No conflicts expected at this time. Nevertheless, I did a test merge and
tested it a bit and it seems fine.

When you merge other trees, you will have some. The resolutions in -next
should be fine, except for a `rustfmt` issue in one, so please remember
to double-check that on your merges (it may be solved by the time you
get to it).

All commits have been in linux-next for at least four rounds, most for
two weeks or more.


Cheers,
Miguel

Rust changes for v6.18

Toolchain and infrastructure:

 - Derive 'Zeroable' for all structs and unions generated by 'bindgen'
   where possible and corresponding cleanups. To do so, add the
   'pin-init' crate as a dependency to 'bindings' and 'uapi'.

   It also includes its first use in the 'cpufreq' module, with more to
   come in the next cycle.

 - Add warning to the 'rustdoc' target to detect broken 'srctree/' links
   and fix existing cases.

 - Remove support for unused (since v6.16) host '#[test]'s, simplifying
   the 'rusttest' target. Tests should generally run within KUnit.

'kernel' crate:

 - Add 'ptr' module with a new 'Alignment' type, which is always a power
   of two and is used to validate that a given value is a valid
   alignment and to perform masking and alignment operations:

       // Checked at build time.
       assert_eq!(Alignment::new::<16>().as_usize(), 16);

       // Checked at runtime.
       assert_eq!(Alignment::new_checked(15), None);

       assert_eq!(Alignment::of::<u8>().log2(), 0);

       assert_eq!(0x25u8.align_down(Alignment::new::<0x10>()), 0x20);
       assert_eq!(0x5u8.align_up(Alignment::new::<0x10>()), Some(0x10));
       assert_eq!(u8::MAX.align_up(Alignment::new::<0x10>()), None);

   It also includes its first use in Nova.

 - Add 'core::mem::{align,size}_of{,_val}' to the prelude, matching
   Rust 1.80.0.

 - Keep going with the steps on our migration to the standard library
   'core::ffi::CStr' type (use 'kernel::{fmt, prelude::fmt!}' and use
   upstream method names).

 - 'error' module: improve 'Error::from_errno' and 'to_result'
   documentation, including examples/tests.

 - 'sync' module: extend 'aref' submodule documentation now that it
   exists, and more updates to complete the ongoing move of 'ARef' and
   'AlwaysRefCounted' to 'sync::aref'.

 - 'list' module: add an example/test for 'ListLinksSelfPtr' usage.

 - 'alloc' module:

   - Implement 'Box::pin_slice()', which constructs a pinned slice of
     elements.

   - Provide information about the minimum alignment guarantees of
     'Kmalloc', 'Vmalloc' and 'KVmalloc'.

   - Take minimum alignment guarantees of allocators for
     'ForeignOwnable' into account.

   - Remove the 'allocator_test' (including 'Cmalloc').

   - Add doctest for 'Vec::as_slice()'.

   - Constify various methods.

 - 'time' module:

   - Add methods on 'HrTimer' that can only be called with exclusive
     access to an unarmed timer, or from timer callback context.

   - Add arithmetic operations to 'Instant' and 'Delta'.

   - Add a few convenience and access methods to 'HrTimer' and
     'Instant'.

'macros' crate:

 - Reduce collections in 'quote!' macro.

And a few other cleanups and improvements.

28 Sep 2025: BPF changes for 6.18 [+ + +]
Note, there is a trivial conflict between tip and bpf-next trees:
in kernel/events/uprobes.c between commit:
  4363264111e12 ("uprobe: Do not emulate/sstep original instruction when ip is changed")
from the bpf-next tree and commit:
  ba2bfc97b4629 ("uprobes/x86: Add support to optimize uprobes")
from the tip tree:
https://lore.kernel.org/all/aNVMR5rjA2geHNLn@sirena.org.uk/
since Jiri's two separate uprobe/bpf related patch series landed
in different trees. One was mostly uprobe. Another was mostly bpf.

Other than that the main changes are:

- Support pulling non-linear xdp data with bpf_xdp_pull_data() kfunc
  (Amery Hung).
  Applied as a stable branch in bpf-next and net-next trees.

- Support reading skb metadata via bpf_dynptr (Jakub Sitnicki).
  Also a stable branch in bpf-next and net-next trees.

- Enforce expected_attach_type for tailcall compatibility
  (Daniel Borkmann)

- Replace path-sensitive with path-insensitive live stack analysis
  in the verifier (Eduard Zingerman).
  This is a significant change in the verification logic. More details,
  motivation, long term plans are in the cover letter/merge commit.

- Support signed BPF programs (KP Singh).
  This is another major feature that took years to materialize.
  Algorithm details are in the cover letter/marge commit.

- Add support for may_goto instruction to s390 JIT (Ilya Leoshkevich)

- Add support for may_goto instruction to arm64 JIT (Puranjay Mohan)

- Fix USDT SIB argument handling in libbpf (Jiawei Zhao)

- Allow uprobe-bpf program to change context registers (Jiri Olsa)

- Support signed loads from BPF arena (Kumar Kartikeya Dwivedi
  and Puranjay Mohan)

- Allow access to union arguments in tracing programs (Leon Hwang)

- Optimize rcu_read_lock() + migrate_disable() combination
  where it's used in BPF subsystem (Menglong Dong)

- Introduce bpf_task_work_schedule*() kfuncs to schedule
  deferred execution of BPF callback in the context of
  a specific task using the kernel’s task_work infrastructure
  (Mykyta Yatsenko)

- Enforce RCU protection for KF_RCU_PROTECTED kfuncs
  (Kumar Kartikeya Dwivedi)

- Add stress test for rqspinlock in NMI
  (Kumar Kartikeya Dwivedi)

- Improve the precision of tnum multiplier verifier operation
  (Nandakumar Edamana)

- Use tnums to improve is_branch_taken() logic (Paul Chaignon)

- Add support for atomic operations in arena in riscv JIT (Pu Lehui)

- Report arena faults to BPF error stream (Puranjay Mohan)

- Search for tracefs at /sys/kernel/tracing first in bpftool
  (Quentin Monnet)

- Add bpf_strcasecmp() kfunc (Rong Tao)

- Support lookup_and_delete_elem command in BPF_MAP_STACK_TRACE
  (Tao Chen)

Signed-off-by: Alexei Starovoitov <ast@kernel.org>
28 Sep 2025: thermal driver for v6.18-rc1 #2 [+ + +]
Hi Rafael,

after an error reported by kbuild test, it appears a file missed when 
importing the RZ/G3E new driver which stayed locally after a conflict 
resolution. This change is on top of the previous tag. Alternatively, if 
you wish to drop the previous PR, I can emit a new PR with this 
offending change fixed, IOW this fix folded with initial patch (which 
sounds cleaner to me BTW).

- Add missing file when importing conflicting change for the Renesas
   RZ/G3E thermal driver (Daniel Lezcano)

 
27 Sep 2025: Crypto library updates for 6.18 [+ + +]
- Add a RISC-V optimized implementation of Poly1305. This code was
  written by Andy Polyakov and contributed by Zhihang Shao.

- Migrate the MD5 code into lib/crypto/, and add KUnit tests for MD5.
  Yes, it's still the 90s, and several kernel subsystems are still
  using MD5 for legacy use cases. As long as that remains the case,
  it's helpful to clean it up in the same way as I've been doing for
  other algorithms. Later, I plan to convert most users of MD5 to use
  the new MD5 library API instead of the generic crypto API.

- Simplify the organization of the ChaCha, Poly1305, BLAKE2s, and
  Curve25519 code. Consolidate these into one module per algorithm,
  and centralize the configuration and build process. This is the same
  reorganization that has already been successful for SHA-1 and SHA-2.

- Remove the unused crypto_kpp API for Curve25519.

- Migrate the BLAKE2s and Curve25519 self-tests to KUnit.

- Always enable the architecture-optimized BLAKE2s code.

Due to interdependencies between test and non-test code, both are
included in this pull request. The broken-down diffstat is as follows:

    Tests:            735 insertions(+), 1917 deletions(-)
    RISC-V Poly1305:  877 insertions(+), 1 deletion(-)
    Other:           1777 insertions(+), 3117 deletions(-)

Besides the new RISC-V code which is an addition, there are quite a
few simplifications due to the improved code organization for multiple
algorithms, the removal of the unused crypto_kpp API for Curve25519
and redundant tests, and the redesign of the BLAKE2s test.

27 Sep 2025: Interleaved SHA-256 hashing support for 6.18 [+ + +]
Note: this depends on the pull request
"[GIT PULL 03/12 for v6.18] inode" from Christian Brauner.


Add support for 2-way interleaved SHA-256 hashing to lib/crypto/, and
make fsverity use it for faster file data verification. This improves
fsverity performance on many x86_64 and arm64 processors.

Later, I plan to make dm-verity use this too.

27 Sep 2025: fscrypt updates for 6.18 [+ + +]
Make fs/crypto/ use the HMAC-SHA512 library functions instead of
crypto_shash. This is simpler, faster, and more reliable.

27 Sep 2025: CRC updates for 6.18 [+ + +]
Update crc_kunit to test the CRC functions in softirq and hardirq
contexts, similar to what the lib/crypto/ KUnit tests do. Move the
helper function needed to do this into a common header.

This is useful mainly to test fallback code paths for when
FPU/SIMD/vector registers are unusable.

27 Sep 2025: i2c-host for v6.18 [+ + +]
Hi Wolfram,

this merge window pull request is rather small, and the blame is
all on me. It has been a very messy period, leaving me with
little time to look after the patches for 6.18.

That said, I now have quite a bit of work ahead, but I am
confident that with the next pull request I will manage to slim
the queue down.

For now, I hope you will not mind a second part of this pull
request, where I plan to include the most obvious patches from
those still in the queue.

Thank you and wishing you a great weekend,
Andi

i2c-host for v6.18

dt-bindings:
 - add support for MediaTek MT6878 I2C
 - Drp[ support fpr S3C2410

 
26 Sep 2025: cgroup: Changes for v6.18 [+ + +]
cgroup: Changes for v6.18

- Extensive cpuset code cleanup and refactoring work with no functional
  changes: CPU mask computation logic refactoring, introducing new helpers,
  removing redundant code paths, and improving error handling for better
  maintainability.

- A few bug fixes to cpuset including fixes for partition creation failures
  when isolcpus is in use, missing error returns, and null pointer access
  prevention in free_tmpmasks().

- Core cgroup changes include replacing the global percpu_rwsem with
  per-threadgroup rwsem when writing to cgroup.procs for better scalability,
  workqueue conversions to use WQ_PERCPU and system_percpu_wq to prepare for
  workqueue default switching from percpu to unbound, and removal of unused
  code including the post_attach callback.

- New cgroup.stat.local time accounting feature that tracks frozen time
  duration.

- Misc changes including selftests updates (new freezer time tests and
  backward compatibility fixes), documentation sync, string function safety
  improvements, and 64-bit division fixes.

26 Sep 2025: workqueue: Changes for v6.18 [+ + +]
workqueue: Changes for v6.18

- WQ_PERCPU was added to remaining alloc_workqueue() users and system_wq
  usage was replaced with system_percpu_wq and system_unbound_wq with
  system_dfl_wq. These are equivalent conversions with no functional changes,
  preparing for switching default to unbound workqueues from percpu.

- A handshake mechanism was added for canceling BH workers to avoid live
  lock scenarios under PREEMPT_RT.

- Unnecessary rcu_read_lock/unlock() calls were dropped in
  wq_watchdog_timer_fn() and workqueue_congested().

- Documentation was fixed to resolve texinfodocs warnings.

26 Sep 2025: sched_ext: Changes for v6.18 [+ + +]
sched_ext: Changes for v6.18

- Code organization cleanup. Separate internal types and accessors to
  ext_internal.h to reduce the size of ext.c and improve maintainability.

- Prepare for cgroup sub-scheduler support by adding @sch parameter to
  various functions and helpers, reorganizing scheduler instance handling,
  and dropping obsolete helpers like scx_kf_exit() and kf_cpu_valid().

- Add new scx_bpf_cpu_curr() and scx_bpf_locked_rq() BPF helpers to provide
  safer access patterns with proper RCU protection. scx_bpf_cpu_rq() is
  deprecated with warnings due to potential race conditions.

- Improve debugging with migration-disabled counter in error state dumps,
  SCX_EFLAG_INITIALIZED flag, bitfields for warning flags, and other
  enhancements to help diagnose issues.

- Use cgroup_lock/unlock() for cgroup synchronization instead of
  scx_cgroup_rwsem based synchronization. This is simpler and allows
  enable/disable paths to synchronize against cgroup changes independent of
  the CPU controller.

- rhashtable_lookup() replacement to avoid redundant RCU locking was
  reverted due to RCU usage warnings. Will be redone once rhashtable is
  updated to use rcu_dereference_all().

- Other misc updates and fixes including bypass handling improvements,
  scx_task_iter_relock() improvements, tools/sched_ext updates, and
  compatibility helpers.

26 Sep 2025: arm64 updates for 6.18 [+ + +]
[sending this early as I'm fishing on Monday]

across the board, including some nice mm improvements for CPUs with
the "noabort" BBML2 feature and a clever patch to allow ptdump to play
nicely with block mappings in the vmalloc area.

We've only had a couple of trivial conflicts show up in -next:

  * The fs-next tree has taken clone3() support for shadow stacks and
    this gives rise to a simple context conflict in our asm/gcs.h.
    There's been some late ABI feedback from the glibc community,
    however, so maybe Christian will end up dropping the patches [1].

  * The kbuild tree has removed the tautological dependency that
    CONFIG_CPU_BIG_ENDIAN has on the assembler version. However, we've
    extended that to make it depend on BROKEN in anticipation of
    dropping support altogether.

I've already got a handful of minor fixes to go on top but I'll send
those separately once they've had a chance to sit in -next.

Summary in the tag.

Cheers,

Will

[1] https://lore.kernel.org/r/20250919-unredlich-lohnkampf-d3d0836baeec@brauner

--->8

arm64 updates for 6.18

Confidential computing:
 - Add support for accepting secrets from firmware (e.g. ACPI CCEL)
   and mapping them with appropriate attributes.

CPU features:
 - Advertise atomic floating-point instructions to userspace.

 - Extend Spectre workarounds to cover additional Arm CPU variants.

 - Extend list of CPUs that support break-before-make level 2 and
   guarantee not to generate TLB conflict aborts for changes of mapping
   granularity (BBML2_NOABORT).

 - Add GCS support to our uprobes implementation.

Documentation:
 - Remove bogus SME documentation concerning register state when
   entering/exiting streaming mode.

Entry code:
 - Switch over to the generic IRQ entry code (GENERIC_IRQ_ENTRY).

 - Micro-optimise syscall entry path with a compiler branch hint.

Memory management:
 - Enable huge mappings in vmalloc space even when kernel page-table
   dumping is enabled.

 - Tidy up the types used in our early MMU setup code.

 - Rework rodata= for closer parity with the behaviour on x86.

 - For CPUs implementing BBML2_NOABORT, utilise block mappings in the
   linear map even when rodata= applies to virtual aliases.

 - Don't re-allocate the virtual region between '_text' and '_stext',
   as doing so confused tools parsing /proc/vmcore.

Miscellaneous:
 - Clean-up Kconfig menuconfig text for architecture features.

 - Avoid redundant bitmap_empty() during determination of supported
   SME vector lengths.

 - Re-enable warnings when building the 32-bit vDSO object.

 - Avoid breaking our eggs at the wrong end.

Perf and PMUs:
 - Support for v3 of the Hisilicon L3C PMU.

 - Support for Hisilicon's MN and NoC PMUs.

 - Support for Fujitsu's Uncore PMU.

 - Support for SPE's extended event filtering feature.

 - Preparatory work to enable data source filtering in SPE.

 - Support for multiple lanes in the DWC PCIe PMU.

 - Support for i.MX94 in the IMX DDR PMU driver.

 - MAINTAINERS update (Thank you, Yicong).

 - Minor driver fixes (PERF_IDX2OFF() overflow, CMN register offsets).

Selftests:
 - Add basic LSFE check to the existing hwcaps test.

 - Support nolibc in GCS tests.

 - Extend SVE ptrace test to pass unsupported regsets and invalid vector
   lengths.

 - Minor cleanups (typos, cosmetic changes).

System registers:
 - Fix ID_PFR1_EL1 definition.

 - Fix incorrect signedness of some fields in ID_AA64MMFR4_EL1.

 - Sync TCR_EL1 definition with the latest Arm ARM (L.b).

 - Be stricter about the input fed into our AWK sysreg generator script.

 - Typo fixes and removal of redundant definitions.

ACPI, EFI and PSCI:
 - Decouple Arm's "Software Delegated Exception Interface" (SDEI)
   support from the ACPI GHES code so that it can be used by platforms
   booted with device-tree.

 - Remove unnecessary per-CPU tracking of the FPSIMD state across EFI
   runtime calls.

 - Fix a node refcount imbalance in the PSCI device-tree code.

CPU Features:
 - Ensure register sanitisation is applied to fields in ID_AA64MMFR4.

 - Expose AIDR_EL1 to userspace via sysfs, primarily so that KVM guests
   can reliably query the underlying CPU types from the VMM.

 - Re-enabling of SME support (CONFIG_ARM64_SME) as a result of fixes
   to our context-switching, signal handling and ptrace code.

26 Sep 2025: locking changes for v6.18 [+ + +]



Locking updates for v6.16 mostly include Rust runtime enhancements:

 - Add initial support for generic LKMM atomic variables in Rust. (Boqun Feng)
 - Add the wrapper for `refcount_t` in Rust. (Gary Guo)
 - Make `data` in `Lock` structurally pinned. (Daniel Almeida)
 - Add a new reviewer, Gary Guo.

 Thanks,

Ingo

26 Sep 2025: Performance events updates for v6.18 [+ + +]



Performance events updates for v6.18:

Core perf code updates:

 - Convert mmap() related reference counts to refcount_t. This
   is in reaction to the recently fixed refcount bugs, which
   could have been detected earlier and could have mitigated
   the bug somewhat. (Thomas Gleixner, Peter Zijlstra)

 - Clean up and simplify the callchain code, in preparation
   for sframes. (Steven Rostedt, Josh Poimboeuf)

Uprobes updates:

 - Add support to optimize usdt probes on x86-64, which
   gives a substantial speedup. (Jiri Olsa)

 - Cleanups and fixes on x86 (Peter Zijlstra)

PMU driver updates:

 - Various optimizations and fixes to the Intel PMU driver
   (Dapeng Mi)

Misc cleanups and fixes:

 - Remove redundant __GFP_NOWARN (Qianfeng Rong)

 Thanks,

Ingo

26 Sep 2025: thermal driver for v6.18-rc1 [+ + +]
Hi Rafael,

please consider the following changes since commit 
8f5ae30d69d7543eee0d70083daf4de8fe15d585:

   Linux 6.17-rc1 (2025-08-10 19:41:16 +0300)

are available in the Git repository at:

  
ssh://git@gitolite.kernel.org/pub/scm/linux/kernel/git/thermal/linux.git 
tags/thermal-v6.18-rc1

for you to fetch changes up to 79428e60897916401c9ed326f6ada4d7c7c997a3:

   dt-bindings: thermal: qcom-tsens: Document the Glymur temperature 
Sensor (2025-09-26 13:27:44 +0200)

- Add the QCS615 compatible DT bindings for QCom platforms (Gaurav
   Kohli)

- Support fallback trimming values when the fuse is empty in the R-Car
   driver (Marek Vasut)

- Remove unneeded semicolon in the Mediatek LVTS driver (Jiapeng
   Chong)

- Fix the LMH Kconfig option by selecting QCOM_SCM and take the
   opportunity to add the COMPILE_TEST option for the QCom's LMH
   feature (Dmitry Baryshkov)

- Fix the missing includes and incorrect error message in the Qcom's
   LMH driver (Dmitry Baryshkov)

- Fix comment typo and add the documentation in the Kconfig for the
   R-Car Gen3 and Gen4 (Marek Vasut)

- Add Tegra114 SOCTHERM support (Svyatoslav Ryhel)

- Rename the functions name in the driver to be consistent and generic
   with the different R-Car platform variants (Wolfram Sang)

- Register the TI K3 J72xx bandgap sensor as a hwmon sensor too
   (Michael Walle)

- Add and document the thermal sensor unit reporting the junction
   temperature of the RZ/G3S SoC (Claudiu Beznea)

- Support the GRF in the Rockchip driver (Sebastian Reichel)

- Add a temperature IIO sensor channel in the generic thermal ADC
   driver (Svyatoslav Ryhel)

- Document the temperature sensor on the QCOM's Glymur platform (Manaf
   Meethalavalappu)

- Add and document the thermal sensor unit reporting the junction
   temperature of the RZ/G3E SoC (John Madieu)

26 Sep 2025: vfs 6.18 [+ + +]
This is the batch of pull requests for the v6.18 merge window!

This was a pretty usual cycle. Not light, not particularly heavy.

There are a few minor filesystem specific changes such as afs and pidfs
but nothing that's really worth mentioning. Same goes for iomap and
rust. There are some changes around clone3() and copy_process() that
lead to some cleanups.

There's some workqueue chagnes that affect all of fs but it's not all
that exciting and we don't have to care once all the cleanup is done and
the semantics for per-cpu and unbounded workqueues are simplified and
clarified.

There's a pretty interesting writeback series by Jan Kara that fixes a
nasty issue causing lockups reported by users when a systemd unit
reading lots of files from a filesystem mounted with the lazytime mount
option exits.

With the lazytime mount option enabled we can be switching many dirty
inodes on cgroup exit to the parent cgroup. The numbers observed in
practice when a systemd slice of a large cron job exits can easily reach
hundreds of thousands or millions.

The overall time complexity of switching all the inodes to the correct
wb is quadratic leading to workers being pegged for hours consuming 100%
of the CPU and switching inodes to the parent wb.

That issue should be gone.

We also have a series that shrinks struct inode by 16 bytes. This is
really something I care about because struct inode in contrast to struct
file and struct dentry both of which are meticulously clean by now (I
mean, it could alwasy be better, but you know...) struct inode is still
a giant dumping ground where everyone is made to pay for features that
only 3 filesystems actually end up using. First step, I've moved fscrpt
and fsverity pointers out of struct inode and into the individual
filesystems that care about this. Hopefully more to come in that area.

There's also some preliminary cleanup related to the inode lifetime
rework that is currently under way leading to less open-coded accesses
to internal inode members and some simplifications for iput_final().

Last but not least there's a bunch of namespace related rework this cycle.
This specifically also addresses a complaint you had a few weeks back
about ns_alloc_inum(). That's now completely gone and so is the
special-casing of the init network namespace initialization.

Initialization, reference counting, and cleanup are now unified and
statically derived from the namespace type allowing the compiler to
catch obvious bugs.

The namespace iterator infrastructure I did for the mount namespace some
time back is now extended and generalized to cover all other namespace
types. As a first step this allows the implemenation of namespace file
handles.

As with pidfs file handles, namespace file handles are exhaustive,
meaning it is not required to actually hold a reference to nsfs to be
able to decode aka open_by_handle_at() a namespace file handle. It has
the same advantage as pidfs file handles have. It's possible to reliably
and for the lifetime of the system refer to a namespace without pinning
any resources and to compare them trivially.

The namespace file handle layout is exposed as uapi and has a stable and
extensible format. The stable format means that userspace may construct
its own namespace file handles without going through name_to_handle_at().

Thanks!
Christian
26 Sep 2025: Scheduler updates for v6.18 [+ + +]



( Merge note: we've stopped using Link tags for the purpose of tip-bot 
  lkml email notifications during the v6.18 development window, and 
  thus commits applied after September 15-ish only have Links if they 
  are particularly informative. Commits before that still have the 
  old-style Link tags. )

Scheduler updates for v6.18:

Core scheduler changes:

 - Make migrate_{en,dis}able() inline, to improve performance
   (Menglong Dong)

 - Move STDL_INIT() functions out-of-line (Peter Zijlstra)

 - Unify the SCHED_{SMT,CLUSTER,MC} Kconfig (Peter Zijlstra)

Fair scheduling:

 - Defer throttling when tasks exit to user-space, to reduce the
   chance & impact of throttle-preemption with held locks and
   other resources. (Aaron Lu, Valentin Schneider)

 - Get rid of sched_domains_curr_level hack for tl->cpumask(),
   as the warning was getting triggered on certain topologies.
   (Peter Zijlstra)

Misc cleanups & fixes:

 - Header cleanups (Menglong Dong)

 - Fix race in push_dl_task() (Harshit Agarwal)

 Thanks,

Ingo

26 Sep 2025: xen: branch for v6.18-rc1 [+ + +]
Please git pull the following tag:


xen: branch for v6.18-rc1

It contains the following patches:

- a 3 patch series fixing the migration of a Xen virq to another cpu
  plus some related cleanup work

- a 3 patch series cleaning up Xen-PV mode specific code, resulting in
  removing some of that code in the resulting binary in case
  CONFIG_XEN_PV is not set

- 2 fixes and 1 cleanup patch for suspend handling under Xen


Thanks.

Juergen

 arch/x86/configs/xen.config        |  1 -
26 Sep 2025: x86/apic for v6.18-rc1 [+ + +]
please pull the x86/apic lineup for v6.18-rc1.

The AMD SEV (encrypted guests and hypervisor support) side of things received
a lot of development this time around and you should be getting a lot of code
from several trees.

Even this branch contains two big features because it was deemed a better idea
to merge them into one.

So there might be other merge conflicts, like with the crypto tree, for
example:

https://lore.kernel.org/r/aM1bJqhtojdLhp3c@sirena.org.uk

The resolution should be easy but lemme give you a heads-up anyway.

Thx.

---

- Add functionality to provide runtime firmware updates for the non-x86 parts
  of an AMD platform like the security processor (ASP) firmware, modules
  etc, for example. The intent being that these updates are interim,
  live fixups before a proper BIOS update can be attempted

- Add guest support for AMD's Secure AVIC feature which gives encrypted
  guests the needed protection against a malicious hypervisor generating
  unexpected interrupts and injecting them into such guest, thus
  interfering with its operation in an unexpected and negative manner.
  The advantage of this scheme is that the guest determines which
  interrupts and when to accept them vs leaving that to the benevolence
  (or not) of the hypervisor

- Strictly separate the startup code from the rest of the kernel where
  former is executed from the initial 1:1 mapping of memory. The problem
  was that the toolchain-generated version of the code was being
  executed from a different mapping of memory than what was "assumed"
  during code generation, needing an ever-growing pile of fixups for
  absolute memory references which are invalid in the early, 1:1 memory
  mapping during boot.

  The major advantage of this is that there's no need to check the 1:1
  mapping portion of the code for absolute relocations anymore and get
  rid of the RIP_REL_REF() macro sprinkling all over the place.

  For more info, see Ard's very detailed writeup on this:
  https://lore.kernel.org/r/CAMj1kXEzKEuePEiHB%2BHxvfQbFz0sTiHdn4B%2B%2BzVBJ2mhkPkQ4Q@mail.gmail.com

- The usual cleanups and fixes

26 Sep 2025: x86/cache for v6.18-rc1 [+ + +]
please pull the x86/cache lineup for v6.18-rc1.

Thx.

---

- Add support on AMD for assigning QOS bandwidth counters to resources
  (RMIDs) with the ability for those resources to be tracked by the
  counters as long as they're assigned to them. Previously, due to hw
  limitations, bandwidth counts from untracked resources would get lost
  when those resources are not tracked. Refactor the code and user
  interfaces to be able to also support other, similar features on ARM,
  for example

26 Sep 2025: x86/cpu for v6.18-rc1 [+ + +]
please pull the x86/cpu lineup for v6.18-rc1.

Thx.

---

- Make UMIP instruction detection more robust

- Correct and cleanup AMD CPU topology detection; document the relevant
  CPUID leaves topology parsing precedence on AMD

- Add support for running the kernel as guest on FreeBSD's Bhyve
  hypervisor

- Cleanups and improvements

26 Sep 2025: x86/bugs for v6.18-rc1 [+ + +]
please pull the x86/bugs lineup for v6.18-rc1.

Thx.

---

- Add VMSCAPE to the attack vector controls infrastructure

- A bunch of the usual cleanups and fixlets, some of them resulting from
  fuzzing the different mitigation options

26 Sep 2025: ras/core for v6.18-rc1 [+ + +]
please pull the RAS lineup for v6.18-rc1.

Thx.

---

- Unify and refactor the MCA arch side and better separate code

- Cleanup and simplify the AMD RAS side, unify code, drop unused stuff

26 Sep 2025: x86/microcode for v6.18-rc1 [+ + +]
please pull the x86/microcode lineup for v6.18-rc1.

Thx.

---

- Add infrastructure to be able to debug the microcode loader in a guest

- Refresh Intel old microcode revisions

26 Sep 2025: x86/asm for v6.18-rc1 [+ + +]
please pull a x86/asm fix for v6.18-rc1.

Thx.

---

 - Fix RDPID's output operand size in inline asm and use the insn
   mnemonic because the minimum binutils version supports it

26 Sep 2025: x86/misc for v6.18-rc1 [+ + +]
please pull a single x86/misc update for v6.18-rc1.

Thx.

---

- Add instruction decoding support for the XOP-prefixed instruction set
  present on the AMD Bulldozer uarch

26 Sep 2025: x86/build for v6.18-rc1 [+ + +]
please pull the x86/build lineup for v6.18-rc1.

Thx.

---

- Remove and simplify a bunch of cc-option and compiler version checks
  in the build machinery now that the minimal version of both compilers
  supports them

26 Sep 2025: EDAC updates for v6.18 [+ + +]
please pull the EDAC lineup for v6.18.

Thx.

---

- Add support for new AMD family 0x1a models to amd64_edac

- Add an EDAC driver for the AMD VersalNET memory controller which
  reports hw errors from different IP blocks in the fabric using an
  IPC-type transport

- Drop the silly static number of memory controllers in the Intel EDAC
  drivers (skx, i10nm) in favor of a flexible array so that former
  doesn't need to be increased with every new generation which adds more
  memory controllers; along with a proper refactoring

- Add support for two Alder Lake-S SOCs to ie31200_edac

- Add an EDAC driver for ADM Cortex A72 cores, and specifically for
  reporting L1 and L2 cache errors

- Last but not least, the usual fixes, cleanups and improvements all
  over the subsystem

 
25 Sep 2025: timer drivers for v6.18-rc1 [+ + +]
Hi Thomas,

please consider the following changes since commit 
8f5ae30d69d7543eee0d70083daf4de8fe15d585:

   Linux 6.17-rc1 (2025-08-10 19:41:16 +0300)

are available in the Git repository at:

  
ssh://git@gitolite.kernel.org/pub/scm/linux/kernel/git/daniel.lezcano/linux 
tags/timers-v6.18-rc1

for you to fetch changes up to 45d78cd0bf2c40e74c31f70340484e20aae45b07:

   dt-bindings: timer: exynos4210-mct: Add compatible for ARTPEC-9 SoC 
(2025-09-24 15:46:27 +0200)

- Add the module owner to all the drivers which can be converted into
   modules in order to have the core time framework to take the
   refcount and prevent wild module removal. In addition export the
   symbols for the sched_clock_register() function to allow the drivers
   to be converted into modules (Daniel Lezcano)

- Convert the faraday,fttmr010 DT bindings to yaml schema (Rob
   Herring)

- Add the DT bindings compatible string for the MT6572 (Max
   Shevchenko)

- Fix the fsl,ftm-timer bindings by using the items to describe a
   register (Frank Li)

- Add the DT binding documentation for Andes machine timer (Ben
   Zong-You Xie)

- Avoid 64-bit divide operation which fails on xtensa and simplify the
   timeleft computation with 32 bits operations on Tegra186 (Guenter
   Roeck)

- Add the fsl,timrot.yaml DT bindings for i.MX23/i.MX28 timer (Frank
   Li)

- Replace comma by semicolon which were introduced when moving the
   static structure initialization (Chen Ni)

- Add a new compatible for the MediaTek MT8196 SoC, fully compatible
   with MT6765 (AngeloGioacchino Del Regno)

- Add the support for the s32g2 and s32g3 platforms in the PIT timer
   after cleaning up the code to support multiple instances (Daniel
   Lezcano)

- Generate platform devices for MMIO timers with ACPI and integrate it
   with the arch ARM timer (Marc Zyngier)

- Fix RTL OTTO timer by working around dying timers (Markus Stockhausen)

- Remove extra error message in the tegra186 timer (Wolfram Sang)

- Convert from round_rate() to determine_rate() in the Ingenic sysost
   driver (Brian Masney)

- Add PWM capture functionality in the OMAP DM driver (Gokul Praveen)

- Autodetect the clock rate to initialize a prescaler value compatible
   with the frequency changes on the ARM global timer (Markus
   Schneider-Pargmann)

- Fix rollbacks missing resource deallocation in case of error on the
   clps711x (Zhen Ni)

- Reorganize the code to split the start and the stop routine on the
   sh_cmt driver (Niklas Söderlund)

- Add the compatible definition for ARTPEC-9 on exynos MCT (SungMin Park)

25 Sep 2025: USB serial updates for 6.18-rc1 [+ + +]
USB serial updates for 6.18-rc1

Here are the USB serial updates for 6.18-rc1 consisting of some new
modem device ids and a trivial cleanup.

Everything has been in linux-next with no reported issues.

25 Sep 2025: arch/microblaze patches for 6.18-rc1 [+ + +]
please pull these three simple patches to your tree.

Thanks,
Michal

Microblaze patches for 6.18-rc1

- Fix typos in Kconfig
- s/__ASSEMBLY__/__ASSEMBLER__/g

 
24 Sep 2025: PXA1908 DT changes for 6.18 [+ + +]
Hi SoC maintainers,

Here's the first batch of PXA1908 DT changes for 6.18.

Regards,
Duje

24 Sep 2025: SOC FSL for 6.18 [+ + +]
Hi Arnd,


The bus/fsl-mc changes outside soc/fsl tree are acked by maintainer of 
QORIQ DPAA2 FSL-MC BUS DRIVER.

Thanks
Christophe

FSL SOC Changes for 6.18:
- Use for_each_online_cpu() instead of for_each_cpu() in qbman
- Update FSL QUICC ENGINE GPIO driver to a standard platform driver
and stop using legacy-of-mm-gpiochip.h header
- Misc fixes on bus/fsl-mc

24 Sep 2025: Btrfs updates for 6.18 [+ + +]
Hi,

please pull the following updates for btrfs. There are no new features,
the changes are in the core code, notably tree-log error handling and
reporting improvements, and initial support for block size > page size.

(There's one build warning due to printk format mismatch reported on
i386, we'll fix it before rc1. I did not consider it serious enough to
rework and delay the whole pull request.)


Performance improvements:

- search data checksums in the commit root (previous transaction) to
  avoid locking contention, this improves parallelism of read heavy/low
  write workloads, and also reduces transaction commit time;
  on real and reproducer workload the sync time went from minutes to
  tens of seconds (workload and numbers are in the changelog)

Core:

- tree-log updates
  - error handling improvements, transaction aborts
  - add new error state 'O' (printed in status messages) when log replay
    fails and is aborted
  - reduced number of btrfs_path allocations when traversing the tree

- 'block size > page size' support
  - basic implementation with limitations, under experimental build
  - limitations: no direct io, raid56, encoded read (standalone and in
    send ioctl), encoded write
  - preparatory work for compression, removing implicit assumptions of
    page and block sizes
  - compression workspaces are now per-filesystem, we cannot assume
    common block size for work memory among different filesystems

- tree-checker now verifies INODE_EXTREF item (which is implementing
  hardlinks)

- tree leaf pretty printer updates, there were missing data from items,
  keys/items

- move config option CONFIG_BTRFS_REF_VERIFY to CONFIG_BTRFS_DEBUG,
  it's a debugging feature and not needed to be enabled separately

- more struct btrfs_path auto free updates

- use ref_tracker API for tracking delayed inodes, enabled by mount
  option 'ref_verify', allowing to better pinpoint leaking references

- in zoned mode, avoid selecting data relocation zoned for ordinary data
  block groups

- updated and enhanced error messages

- lots of cleanups and refactoring

24 Sep 2025: nios2: updates for v6.18 [+ + +]
NIOS2: update for v6.18
- Replace __ASSEMBLY__ with __ASSEMBLER__ in headers
- Set memblock.current_limit when setting pfn limits

24 Sep 2025: LoongArch KVM changes for v6.18 [+ + +]
LoongArch KVM changes for v6.18

1. Add PTW feature detection on new hardware.
2. Add sign extension with kernel MMIO/IOCSR emulation.
3. Improve in-kernel IPI emulation.
4. Improve in-kernel PCH-PIC emulation.
5. Move kvm_iocsr tracepoint out of generic code.

 
23 Sep 2025: gfs2 changes for 6.18 [+ + +]
please consider pulling the following gfs2 changes for 6.18.

gfs2 changes

- Partially revert "gfs2: do_xmote fixes" to ignore dlm_lock() errors
  during withdraw; passing on those errors doesn't help.

- Change the LM_FLAG_TRY and LM_FLAG_TRY_1CB logic in add_to_queue() to
  check if the holder would actually block.

- Move some more dlm specific code from glock.c to lock_dlm.c.

- Remove the unused dlm alternate locking mode code.

- Add proper locking to make sure that dlm lockspaces are never used
  after being released.

- Various other cleanups.

 
22 Sep 2025: ARM: microchip/at91: dt for 6.18 #1 [+ + +]
From: Nicolas Ferre <nicolas.ferre@microchip.com>

Dear arm-soc maintainers,

Here are the first dt changes for 6.18 which contain some little node additions.
The QSPI node has its bindings accepted and going with the SPI tree:
https://lore.kernel.org/lkml/20250908-microchip-qspi-v2-0-8f3d69fdd5c9@microchip.com/

Thanks, best regards,
  Nicolas

Microchip AT91 device tree updates for v6.18

This update includes:
- sama7d65 and curiosity board: addition of gpio, leds and usart3
- sam9x75: qspi node
- one cleanup

 
21 Sep 2025: interconnect changes for 6.18 [+ + +]
This is the pull request with interconnect changes for the v6.18-rc1 merge
window. As always, the summary is in the signed tag.

All patches have been in linux-next for a full week. There are currently

Thanks,
Georgi


interconnect changes for 6.18

This pull request contains the interconnect changes for the 6.18-rc1
merge window. It contains new driver and a minor core cleanup.

Core change:
- Use device_match_of_node() instead of open coding it

Driver changes:
- Add new driver for the Qualcomm Glymur SoC
- Enable OSM L3 support for the QCS615 SoC

Signed-off-by: Georgi Djakov <djakov@kernel.org>

 
20 Sep 2025: Apple SoC driver changes for v6.18 [+ + +]
Apple SoC driver updates for 6.18

Krzysztof Kozlowski asked us to move away from generic compatibles:
- Adjust all dt-bindings to use apple,t8103-XXXX instead of apple,XXXX
  as fallback and add a comment that the old generic list should no
  longer be extended.
- Add new fallback compatibles to pinctrl, pmdomain, spi, and mca
  drivers. These changes have been Acked by their subsystem maintainers
  to be merged through our tree together with the dt-bindings.

Support for pre-M1 Apple Silicon:
- SART and mailbox gain support for Apple's A11, which are both
  required for NVMe.
- NVMe also gains support for Apple's A11 and the nvme maintainers
  prefer that we merge this through the soc tree together with
  the mailbox and SART changes.
- SPMI compatibles for A11 and T2 have been added, also going through
  the soc tree due to conflicts with the generic compatible removal and
  because no driver change is required.

Signed-off-by: Sven Peter <sven@kernel.org>

 
19 Sep 2025: [PATCH 0/4] Rust locking changes for v6.18 [+ + +]
Hi Peter & Ingo,

than usual because I was at Kangrejos conference this week, however the
changes are relatively small and simple, so I think it's Ok for v6.18.
I also try using "git notes" for submission links as Thomas suggests,
let see how it goes ;-)

Locking changes for v6.18:

- Fix a data-race in do_raw_write_lock reported by KCSAN

Rust locking changes for v6.18

- Make `data` in `Lock` structurally pinned.

  Previously the `data` field of a `Lock<T>` is not structurally pinned,
  and it's impossible to initialize the `data` field with a
  pin-initializer, hence e.g. a `Lock<T>` where T is a pin-initialized
  type is not supported. This encourages workarounds like
  `Lock<Pin<KBox<T>>`, which is more complicated and less efficient.
  Therefore make the `data` field in `Lock` structurally pinned to
  support pin-initialized types in a `Lock<T>`.

  Since the `data` field is structurally pinned, make `Guard<T, ...>`
  only `DerefMut` is T is Unpin, otherwise `Guard::as_mut()` is added to
  provide a `Pin<&mut T>`. This is different than normal Rust standand
  library locks.
-----BEGIN PGP SIGNATURE-----

iQEzBAABCAAdFiEEj5IosQTPz8XU1wRHSXnow7UH+rgFAmjNGoEACgkQSXnow7UH
+riU8ggAnRUTBam8NTmHJpZfVbbNSfx1ndaARxd9Wb/MLEh8OHYKbVRPJwvWGge+
dafO0VYULku7ho1SeIlLXp4Bbjy3YC6o/J6xOpr9xMmysUky7RHi+Ys0y9gKaSmW
daPurQEOS8TBUWu5yVxNAfWoRgPEiPULovbzgANKKAV7QsljyoEg7mQCPxLftPze
Hr22HxU+lr6SDH5Efc8ihGqXJAvwunk+0mkJymZbjWo3ZF3cuhXlTMcIlu1SK14a
R1VQu5UoX8S5y0T0gkJ84UJ11e0wrSZyT0EqmHWSpVBnyGgWk8H1u284hDiGG2iG
FvwoSQ9iVuxLhxjhPUSOjq30DzmFfg==
=MZj4
-----END PGP SIGNATURE-----

 
18 Sep 2025: [PULL REQUEST] Intel IOMMU updates for v6.18 [+ + +]
Hi Joerg,

 
16 Sep 2025: soc: ti: Driver updates for v6.18 [+ + +]
Hi,

if that is needed.

TI SoC driver updates for v6.18

- ti_sci: Add support for abort handling of entry to Low Power Mode
- k3-socinfo: Add decode for AM62L SR1.1 silicon revision
- pruss: Replace usage of %pK in printk with safer %p formatting

16 Sep 2025: arm64: dts: ti: K3 updates for v6.18 [+ + +]
Hi,

if that is needed.

TI K3 device tree updates for v6.18

Generic fixes and cleanups:
* k3-pinctrl: Fix incorrect macro usage, add missing DeepSleep/drive streng=
th
  macros
* k3: Rename rproc reserved-mem nodes to 'memory@addr' and add labels for
  reserved-memory
* Long time pending major remoteproc firmware refactoring to allow flexibil=
ity
  for downstream variants:
  - am62x/am62ax: Move Mailbox/Remoteproc nodes to board-level DTS files
  - am64/am65/j721e/j721s2/j784s4/j742s2/j7200: Move Remoteproc enablement =
to
    board-level DTS
  - am62a/am62/am62p/j722s: Similarly restructure Mailbox/Remoteproc configs
  - am65/am64: Refactor IPC firmware carveouts/mailboxes into new SoC
    family-specific dtsi files
  - j721e/j721s2/j784s4/j742s2/am62/am62p/am62a/am64/am65/j7200/j722s: Refa=
ctor
    IPC firmware configs into new board-independent dtsi files
  - Various boards: Add missing or corrected carveouts/timers/mailbox confi=
gs
    for IPC firmware alignment
* Multiple-boards: Bootph-all property added for USB PHYs to support DFU bo=
ot.

New Boards/SoM/SiP:
* Variscite VAR-SOM-AM62P SoM and carrier boards
* AM6254atl SiP package and SK

SoC specific changes:
AM62P:
* Update eMMC HS400 STRB tuning value
* Split HS400 support away from J722S due to errata
* Add Variscite VAR-SOM-AM62P SoM and Symphony carrier board support

AM62:
* Remove unused DeepSleep USB1 pin config on SK
* Add CSI2 interrupts property on main CSI2RX
* Enable Mailbox & Remoteproc at board level
* PocketBeagle2 + Verdin variants: Add missing IPC firmware carveouts, enab=
le
  R5F/M4F

AM62A:
* Fix padcfg length in pad configuration registers
* Remove unused DeepSleep USB1 pin config on SK
* Add CSI2 interrupts property
* Add 1.4GHz OPP entry for phyCORE-AM62Ax
* Enable Mailbox & Remoteproc at board level
* Add missing IPC firmware carveouts for PocketBeagle2 and other boards

AM62D2:
* Add Octal SPI NOR flash (OSPI) support for EVM
* Enable USB0/USB1 interface on EVM

AM625:
* Introduce AM6254atl SiP base SoC support
* Add SK-AM6254atl board

AM64:
* Refactor IPC firmware configs into new dtsi
* Enable Remoteproc at board level
* Add PA stats property for PEB-C-010 expansion Ethernet card
* phyCORE SoM + SR SoM/Electra board: Add missing IPC firmware configs

AM65:
* Refactor IPC firmware configs into new dtsi
* Enable Remoteproc at board level

AM69:
* Switch SERDES0 config to PCIe Multilink + USB mode, enabling independent
  PCIe1 & PCIe3 link speeds

J7200:
* Refactor IPC firmware configs into new dtsi
* Enable R5F Remoteproc at board level

J721E:
* Add DSI + DPHY-TX nodes
* Add CSI2 interrupts property
* BeagleBone AI64: Switch R5 clusters to split mode, add timer reserves for
  IPC FW, Correct carveouts (revert mistaken reordering of C6x carveouts)
* Refactor IPC firmware configs into new dtsi
* Enable Remoteproc at board level

J721S2:
* Add DSI + DSI PHY nodes
* Add USB0 Type-A overlay for EVM
* Add CSI2 interrupts property
* Ensure PCIe node has proper interrupt-controller #address-cells
  fixes dtbs_check warning.
* Refactor IPC firmware configs into new dtsi
* Enable Remoteproc at board level
* Common processor board: Add DisplayPort-1 enable, I2C4 instance for
  display connector

J722S:
* Add bootph-all to usb0_phy_ctrl node (DFU)
* Add JPEG Encoder node (E5010)
* Add CSI2 interrupts properties on main/J722S/AM62P common main
* Refactor IPC firmware configs into new dtsi
* Enable Remoteproc at board level

J784S4/J742S2:
* Add CSI2 interrupts properties on main-common
* Add DSI & PHY support
* Enable DisplayPort-1 on EVM
* Refactor IPC firmware configs into new dtsi (common & SoC-specific)
* Enable Remoteproc at board level
* J742S2: Override MCU R5 firmware names in dedicated dtsi

Board specific changes:
AM62P Variscite Symphony Board:
* Add support with USB, Eth, Camera, CAN, GPIO expander

AM642-phyBOARD-Electra
* Add PEB-C-010 Ethernet expansion board overlay
* Add PA stats handle

AM642-sr/phyCORE
* Add missing IPC carveouts for R5F/M4F

AM62-Verdin/AM62P-Verdin
* Add missing IPC carveouts for R5F/M4F, mailboxes

16 Sep 2025: ARM: dts: ti: keystone: Updates for v6.18 [+ + +]
Hi,

if that is needed.

Keystone2 device tree updates for v6.18

Cosmetic cleanups:
* dt-bindings: Convert ti,keystone to DT schema

16 Sep 2025: DRM Rust changes for v6.18 [+ + +]
Hi Dave and Sima,


Besides the DRM changes, this PR also contains some new DMA & scatterlist
infrastructure (incl. some alloc dependencies), with Nova as a first user.

It also includes a few AsBytes and FromBytes additions needed by Nova.

I merged this cycle's pin-init PR from Benno, since Nova is the first user
taking advantage of the new features included.

There are a couple of conflicts with other trees (Rust, MM, Driver Core, Li=
nus),
but they are mostly around includes and all trivial [1..8] -- no semantic
conflicts.

All changes have been in -next for a couple of rounds; the latest nova-core
series from Alex for one cycle.

- Danilo

[1] https://lore.kernel.org/all/20250905124634.68da9a1e@canb.auug.org.au/
[2] https://lore.kernel.org/all/20250905125139.109081b2@canb.auug.org.au/
[3] https://lore.kernel.org/all/20250905125653.0ebc7580@canb.auug.org.au/
[4] https://lore.kernel.org/all/20250905144449.437ef3cf@canb.auug.org.au/
[5] https://lore.kernel.org/all/20250912120159.1d6518cc@canb.auug.org.au/
[6] https://lore.kernel.org/all/20250912135146.0c3ea18f@canb.auug.org.au/
[7] https://lore.kernel.org/all/aMlfiBynRQrbW3BT@sirena.org.uk/
[8] https://lore.kernel.org/all/aMlhpIhjbrDR4C8L@sirena.org.uk/

DRM Rust changes for v6.18

Alloc
  - Add BorrowedPage type and AsPageIter trait
  - Implement Vmalloc::to_page() and VmallocPageIter
  - Implement AsPageIter for VBox and VVec

DMA & Scatterlist
  - Add dma::DataDirection and type alias for dma_addr_t
  - Abstraction for struct scatterlist and struct sg_table

DRM
  - In the DRM GEM module, simplify overall use of generics, add
    DriverFile type alias and drop Object::SIZE.

Nova (Core)
  - Various register!() macro improvements (paving the way for lifting
    it to common driver infrastructure)
  - Minor VBios fixes and refactoring
  - Minor firmware request refactoring
  - Advance firmware boot stages; process Booter and patch its
    signature, process GSP and GSP bootloader
  - Switch development fimrware version to r570.144
  - Add basic firmware bindings for r570.144
  - Move GSP boot code to its own module
  - Clean up and take advantage of pin-init features to store most of
    the driver's private data within a single allocation
  - Update ARef import from sync::aref
  - Add website to MAINTAINERS entry

Nova (DRM)
  - Update ARef import from sync::aref
  - Add website to MAINTAINERS entry

Pin-Init
  - Merge pin-init PR from Benno
    - `#[pin_data]` now generates a `*Projection` struct similar to the
      `pin-project` crate.

    - Add initializer code blocks to `[try_][pin_]init!` macros: make
      initializer macros accept any number of `_: {/* arbitrary code
      */},` & make them run the code at that point.

    - Make the `[try_][pin_]init!` macros expose initialized fields via
      a `let` binding as `&mut T` or `Pin<&mut T>` for later fields.

Rust
  - Various methods for AsBytes and FromBytes traits

Tyr
  - Initial Rust driver skeleton for ARM Mali GPUs.
    - It can power up the GPU, query for GPU metatdata through MMIO and
      provide the metadata to userspace via DRM device IOCTL (struct
      drm_panthor_dev_query).

16 Sep 2025: DRM Rust changes for v6.18 [+ + +]
Hi Dave and Sima,


Besides the DRM changes, this PR also contains some new DMA & scatterlist
infrastructure (incl. some alloc dependencies), with Nova as a first user.

It also includes a few AsBytes and FromBytes additions needed by Nova.

I merged this cycle's pin-init PR from Benno, since Nova is the first user
taking advantage of the new features included.

There are a couple of conflicts with other trees (Rust, MM, Driver Core, Li=
nus),
but they are mostly around includes and all trivial [1..8] -- no semantic
conflicts.

All changes have been in -next for a couple of rounds; the latest nova-core
series from Alex for one cycle.

- Danilo

[1] https://lore.kernel.org/all/20250905124634.68da9a1e@canb.auug.org.au/
[2] https://lore.kernel.org/all/20250905125139.109081b2@canb.auug.org.au/
[3] https://lore.kernel.org/all/20250905125653.0ebc7580@canb.auug.org.au/
[4] https://lore.kernel.org/all/20250905144449.437ef3cf@canb.auug.org.au/
[5] https://lore.kernel.org/all/20250912120159.1d6518cc@canb.auug.org.au/
[6] https://lore.kernel.org/all/20250912135146.0c3ea18f@canb.auug.org.au/
[7] https://lore.kernel.org/all/aMlfiBynRQrbW3BT@sirena.org.uk/
[8] https://lore.kernel.org/all/aMlhpIhjbrDR4C8L@sirena.org.uk/

DRM Rust changes for v6.18

Alloc
  - Add BorrowedPage type and AsPageIter trait
  - Implement Vmalloc::to_page() and VmallocPageIter
  - Implement AsPageIter for VBox and VVec

DMA & Scatterlist
  - Add dma::DataDirection and type alias for dma_addr_t
  - Abstraction for struct scatterlist and struct sg_table

DRM
  - In the DRM GEM module, simplify overall use of generics, add
    DriverFile type alias and drop Object::SIZE.

Nova (Core)
  - Various register!() macro improvements (paving the way for lifting
    it to common driver infrastructure)
  - Minor VBios fixes and refactoring
  - Minor firmware request refactoring
  - Advance firmware boot stages; process Booter and patch its
    signature, process GSP and GSP bootloader
  - Switch development fimrware version to r570.144
  - Add basic firmware bindings for r570.144
  - Move GSP boot code to its own module
  - Clean up and take advantage of pin-init features to store most of
    the driver's private data within a single allocation
  - Update ARef import from sync::aref
  - Add website to MAINTAINERS entry

Nova (DRM)
  - Update ARef import from sync::aref
  - Add website to MAINTAINERS entry

Pin-Init
  - Merge pin-init PR from Benno
    - `#[pin_data]` now generates a `*Projection` struct similar to the
      `pin-project` crate.

    - Add initializer code blocks to `[try_][pin_]init!` macros: make
      initializer macros accept any number of `_: {/* arbitrary code
      */},` & make them run the code at that point.

    - Make the `[try_][pin_]init!` macros expose initialized fields via
      a `let` binding as `&mut T` or `Pin<&mut T>` for later fields.

Rust
  - Various methods for AsBytes and FromBytes traits

Tyr
  - Initial Rust driver skeleton for ARM Mali GPUs.
    - It can power up the GPU, query for GPU metatdata through MMIO and
      provide the metadata to userspace via DRM device IOCTL (struct
      drm_panthor_dev_query).

16 Sep 2025: ARM: microchip: soc for 6.18 #1 [+ + +]
From: Nicolas Ferre <nicolas.ferre@microchip.com>

Dear arm-soc maintainers,

Here are the at91 soc changes for 6.18. They are move specific to at91 product
line and are all related to PM code.

  Nicolas

Microchip arm-soc updates for v6.18

This update includes:
- low priority fixes to the PM code, in relation to recent addition of
  sam9x75 or sama7d65 SoCs
- removal of the 2.5V regulator for low power modes since this is
  no longer supported

16 Sep 2025: ARM: microchip: clk for 6.18 #1 [+ + +]
From: Nicolas Ferre <nicolas.ferre@microchip.com>

Dear clock maintainers,

Here are the first clk changes for 6.18.
I don't think they have conflict with changes for the deprecated round_rate()
to determine_rate() topic.
They are in linux-next for a couple of days.

  Nicolas

Microchip clock updates for v6.18

This update includes:
- add one clock for sam9x75
- new meaning for MCR register field in clk-master
- use force-write to PLL update register to ensure
  reliable programming sequence
- update Analog Control Register (ACR) management to accommodate
  differences across SoCs

16 Sep 2025: clk: imx: Updates for v6.18 [+ + +]
i.MX clock changes for 6.18

- Rework the i.MX95 BLK CTL driver to add the platform data to the
  state container.
- Retain the state of the i.MS95 BLK CTL registers through both
runtime and system suspend.

 
15 Sep 2025: TEE add QCOMTEE driver for v6.18 [+ + +]
the TEE subsystem as described below. The QTEE patches depend on two
patches from branch
'20250911-qcom-tee-using-tee-ss-without-mem-obj-v12-2-17f07a942b8d@oss.qualcomm.com'

Björn asked me [2] to pull them from his tree.

This pull request is based on my previous pull request with
tee-prot-dma-buf-for-v6.18 to avoid a few conflicts when merging.

[1] https://lore.kernel.org/op-tee/20250911-qcom-tee-using-tee-ss-without-mem-obj-v12-0-17f07a942b8d@oss.qualcomm.com/
[2] https://lore.kernel.org/op-tee/mir6lhkj456ra3i6w7def4rrtzw663f66l66cz4s3gxxvueeqk@ils2hjklbp4y/

Thanks,
Jens

Add Qualcomm TEE driver (QTEE)

This introduces a Trusted Execution Environment (TEE) driver for
Qualcomm TEE (QTEE).

QTEE enables Trusted Applications (TAs) and services to run securely. It
uses an object-based interface, where each service is an object with
sets of operations.

Kernel and userspace services are also available to QTEE through a
similar approach. QTEE makes callback requests that are converted into
object invocations. These objects can represent services within the
kernel or userspace process.

We extend the TEE subsystem to understand object parameters and an ioctl
call so client can invoke objects in QTEE:
  - TEE_IOCTL_PARAM_ATTR_TYPE_OBJREF_*
  - TEE_IOC_OBJECT_INVOKE

The existing ioctl calls TEE_IOC_SUPPL_RECV and TEE_IOC_SUPPL_SEND are
used for invoking services in the userspace process by QTEE.

The TEE backend driver uses the QTEE Transport Message to communicate
with QTEE. Interactions through the object INVOKE interface are
translated into QTEE messages. Likewise, object invocations from QTEE
for userspace objects are converted into SEND/RECV ioctl calls to
supplicants.

15 Sep 2025: ARM: microchip: SoC updates for 6.18 #1 [+ + +]
From: Nicolas Ferre <nicolas.ferre@microchip.com>

Dear arm-soc maintainers,

Here are the SoC changes for 6.18 which set the Kconfig infrastrucutre for
addition of the Microchip LAN969x SoC.

Thanks, best regards,
  Nicolas

Microchip ARM64 SoC updates for v6.18:

This update includes:
- basic infrastructure support for Microchip LAN969x SoC
- SoC ARCH symbols (existing SparX-5, new LAN969x) under the
  ARCH_MICROCHIP hidden symbol (already in use by AT91 in 6.17)
- addition of that new symbol for drivers that are shared by
  Microchip SoC-s now and in the future

15 Sep 2025: aspeed: further devicetree changes for v6.18 [+ + +]
This is a second 6.18 PR for the ASPEED devicetrees, following the
first at [1].

Cheers,

Andrew

[1]: https://lore.kernel.org/soc/cb634cffaf0db9d25fb3062f0eee41e03955321f.c=
amel@codeconstruct.com.au/

---

Further ASPEED devicetree updates for v6.18

New platforms:

- Meta Clemente

  Clemente is a compute-tray platform using an AST2600 SoC

Updated platforms:

- Harma (Meta): Hot-swap controller, power monitoring, GPIO names

There are also some devicetree cleanups from Rob and Krzysztof that touch a
variety of platforms and the DTSIs. These lead to fewer warnings emitted fo=
r the
ASPEED devicetrees.

 
12 Sep 2025: Rust pin-init for v6.18 [+ + +]
Hi Danilo,

As discussed with Miguel, I'm sending my PR to you this time.

The code changes themselves aren't that big, but functionality-wise
there are three important ones: pin-projections, code blocks and access
to previously initialized fields. More syntax changes will be on the way
for v6.19 and I hope I'll be a bit earlier in that cycle :)

The commits have been in linux-next for one day.

I have a conflict with your devres fix that's in -rc3, the resolution in
linux-next looks good.


---
Cheers,
Benno

pin-init changes for v6.18

Changed:

- `#[pin_data]` now generates a `*Projection` struct similar to the
  `pin-project` crate.

- Add initializer code blocks to `[try_][pin_]init!` macros: make
  initializer macros accept any number of `_: {/* arbitrary code */},` &
  make them run the code at that point.

- Make the `[try_][pin_]init!` macros expose initialized fields via a
  `let` binding as `&mut T` or `Pin<&mut T>` for later fields.

Upstream dev news:

- Released v0.0.10 before the changes included in this tag.

- Inform users of the impending rename from `pinned-init` to `pin-init`
  (in the kernel the rename already happened).

- More CI improvements.

12 Sep 2025: extcon next for 6.18 [+ + +]
Dear Greg,

This is extcon-next pull request. I add detailed description of

I'm sorry that I did not send the separate fixes pull request.
This pull request does not contain any problematic patches according to your comment.

Best Regards,
Chanwoo Choi

Update extcon next for v6.18

Detailed description for this pull request:
- Fix wakeup source leaks on device unbind for extcon drivers

- Add new Maxim MAX14526 MUIC extcon driver and dt-binding document
 : The MAX14526 is designed to simplify interface requirements on portable
   devices by multiplexing common inputs (USB, UART, Microphone, Stereo Audio
   and Composite Video) on a single micro/mini USB connector. The USB input
   supports Hi-Speed USB and the audio/video inputs feature
 : This provides the following supported external connector detection
   - EXTCON_USB
   - EXTCON_USB_HOST
   - EXTCON_CHG_USB_FAST
   - EXTCON_DISP_MHL

- Convert legacy DT binding to YAML of richktek,rt8973a-muic.yaml

- Add missing DT binding information of that must include either id-gpios or
  vbus-gpios for linux,extcon-usb-gpio.yaml

12 Sep 2025: memory: drivers for v6.18 [+ + +]
Memory controller drivers for v6.18

1. STM32 OMM: Fix ineffective/missing setting of the req2ack in the
   device based on DT property, if the value is different than 0.

2. Samsung Exynos SROM: Fix IO map resource leak if
   of_platform_populate() in probe() failed.

3. Broadcom brcmstb: Document existing, older devices in Devicetree
   bindings.

4. Tegra 210 EMC: Document OPP table for interconnects (driver usage
   will come later) and define memory client IDs as bindings, because
   these are shared between DTS and driver.

12 Sep 2025: samsung: drivers for v6.18 [+ + +]
Hi,

Samsung SoC driver sfor v6.18. This should be my last Samsung pull for this
merge window.

Best regards,
Krzysztof


Samsung SoC drivers for v6.18

1. Google GS101:
   Enable CPU Idle, which needs programming C2 idle hints
   via ACPM firmware (Alive Clock and Power Manager).  The patch
   introducing this depends on 'local-timer-stop' Devicetree property,
   which was merged in v6.17.

   Fix handling error codes in ACPM firmware driver when talking to
   PMIC.

2. Exynos2200: Add dedicated compatible for serial engines (USI).

12 Sep 2025: TEE protected DMA-bufs for v6.18 [+ + +]
subsystem. There's a brief desciption in the tag below. All patches but
"dma-buf: dma-heap: export declared functions" are withing the TEE
subsystem. The dma-heap maintainer, Sumit Semwal, has acked the dma-heap
patch to be merged via my tree.

I believe I've addressed all comments from the reviews including providing
a demo as described in [1].

[1] https://lore.kernel.org/op-tee/20250911135007.1275833-1-jens.wiklander@linaro.org/

Thanks,
Jens

TEE protected DMA-bufs for v6.18

- Allocates protected DMA-bufs from a DMA-heap instantiated from the TEE
  subsystem.
- The DMA-heap uses a protected memory pool provided by the backend TEE
  driver, allowing it to choose how to allocate the protected physical
  memory.
- Three use-cases (Secure Video Playback, Trusted UI, and Secure Video
  Recording) have been identified so far to serve as examples of what
  can be expected.
- The use-cases have predefined DMA-heap names,
  "protected,secure-video", "protected,trusted-ui", and
  "protected,secure-video-record". The backend driver registers protected
  memory pools for the use-cases it supports.

12 Sep 2025: TEE use SHA-1 library for v6.18 [+ + +]
code by using the SHA-1 library instead of crypto_shash.

Thanks,
Jens

Use SHA-1 library instead of crypto_shash

12 Sep 2025: TEE improve sysfs for 6.18 [+ + +]
sysfs_emit() instead of scnprintf() for buffers passed to userspace.

Thanks,
Jens

Use sysfs_emit() for sysfs buffers to userspace

12 Sep 2025: devfreq next for 6.18 [+ + +]
Dear Rafael,

This is devfreq-next pull request. I add detailed description of
following updates.

Best Regards,
Chanwoo Choi


  
Update devfreq next for v6.18

Detailed description for this pull request:
- Add support for LPDDR5 for Rockhip RK3588 SoC on rockchip-dfi devfreq driver.

- Fix an issue where DDR cycle counts on RK3588/RK3528 with LPDDR4(X)
  are reported as half by adding a cycle multiplier to the DFI driver
  on rockchip-dfi devfreq-event driver.

- Fix missing error pointer dereference of regulator instance
  and remove redundant condition on on mtk-cci-devfreq.c devfreq driver.

 
9 Sep 2025: ARM: dts: samsung: dts for v6.18 [+ + +]
Samsung DTS ARM changes for v6.18

1. Drop S3C2416 SoC from bindings, because it was removed from kernel
   in 2023.

2. Add Ethernet attached via SROM controller (memory bus) on SMDK5250.
   This wasn't tested, but code should work just like it is working on
   Exynos5410-based boards.

9 Sep 2025: clk: samsung: drivers for v6.18 [+ + +]
Samsung SoC clock drivers changes for 6.18

1. Tesla FSD: Expose CSI clocks to consumers (DTS).

2. Exynos990:
   - Few fixes for fixed factor clocks, register widths and proper PLL
     parents.
   - Add four more clocks for the DPU and HSI0 clock for USB.
   - Add PERIC0 and PERIC1 clock controllers (CMU), responsible for
     providing clocks to serial engines.

3. Add seven clock controllers for the new Axis ARTPEC-8 SoC.  The SoC
   shares all main blocks, including the clock controllers, with Samsung
   SoC, so same drivers and bindings are used.

4. Cleanups: switch to determine_rate().

9 Sep 2025: pinctrl: samsung: drivers for v6.18 [+ + +]
Samsung pinctrl drivers changes for v6.18

1. Add pin controller drivers for new Axis ARTPEC-8 SoC.  The SoC shares
   all main blocks, including the pin controller, with Samsung SoC, so
   same drivers and bindings are used.

2. Drop remaining support for Samsung S3C2410 SoC pin controllers.  The
   actual SoC support was removed in January 2023, so this is just
   remaining cleanup.

9 Sep 2025: w1: drivers for v6.18 [+ + +]
Hi Greg,

Just two minor improvements.

Best regards,
Krzysztof


1-Wire bus drivers for v6.18

1. Correct missing interrupts in IMX 1-Wire Devicetree bindings.

2. Drop old, dead code from Matrox driver.

9 Sep 2025: arm/arm64: defconfig for v6.18 [+ + +]
Samsung SoC defconfig changes for v6.18

1. Cleanup MTD_NAND_S3C2410, being removed from the kernel via separate
   tree.
2. Enable Axis ARTPEC SoC in arm64 defconfig - new Samsung subarch.

9 Sep 2025: clk: spacemit: Updates for v6.18 [+ + +]
Hi Stephen,


Yixun Lan

RISC-V SpacemiT clock changes for 6.18

- Convert to use determine_rate()
- Fix clocks of SSPA

 
6 Sep 2025: RISC-V T-HEAD Devicetrees for v6.18 [+ + +]
T-HEAD Devicetrees for v6.18

Add a device tree node for the IMG BXM-4-64 GPU present in the T-HEAD
TH1520 SoC used by the Lichee Pi 4A board. This node enables support for
the GPU using the drm/imagination driver.

By adding this node, the kernel can recognize and initialize the GPU,
providing graphics acceleration capabilities on the Lichee Pi 4A and
other boards based on the TH1520 SoC. The display controller and HDMI
output are still a work in progress.

Also included is a MAINTAINERS patch that adds an entry for the T-Head
SoC patchwork.

Signed-off-by: Drew Fustini <fustini@kernel.org>

6 Sep 2025: clk: thead: Updates for v6.18 [+ + +]
T-HEAD clock changes for v6.18

Updates for the T-HEAD TH1520 clock controller:

 - Describe gate clocks with clk_gate so that clock gates can be clock
   parents. This is similar to the mux clock refactor in 54edba916e29
   ("clk: thead: th1520-ap: Describe mux clocks with clk_mux").

 - Add support for enabling/disabling PLLs. Some PLLs are put into a
   disabled state by the bootloader, and clock driver now has the
   ability to enable them.

 - Set all AXI clocks to CLK_IS_CRITICAL. The AXI crossbar of TH1520 has
   no proper timeout handling, which means gating AXI clocks can easily
   lead to bus timeout and hang the system. All these clock gates are
   ungated by default on system reset.

 - Convert all current CLK_IGNORE_UNUSED usage to CLK_IS_CRITICAL to
   prevent unwanted clock gating.

 - Fix parent of padctrl0 clock, fix parent of DPU pixel clocks and
   support changing DPU pixel clock rate.

All changes have been tested in linux-next.

Signed-off-by: Drew Fustini <fustini@kernel.org>

 
4 Sep 2025: [PATCH 00/14] Rust atomic changes for v6.18 [+ + +]
Hi Will, Peter and Mark,

I'm sending this pull request containing Rust atomic changes to tip
tree. You can find the technical details below, but most importantly we
got a new reviewer for ATOMIC INFRASTRUCTURE that can help maintaining
the code. Welcome Gary!

Similar to other pull requests of myself to the tip tree, this pull
request is sent in form as patch series as well, in case that I missed
something and changes are needed in some patch.

Thanks!

Rust atomic changes for v6.18:

- Add initial support for generic LKMM atomic variables in Rust. This
  ensures Rust and C side are using the same memory model when
  communicating with each other, and would unblock a few more
  fine-grained concurrent core on Rust side.

- Add the wrapper for `refcount_t` in Rust. This avoids using customized
  reference counting solution on Rust side (e.g. in `block::mq`).
-----BEGIN PGP SIGNATURE-----

iQEzBAABCAAdFiEEj5IosQTPz8XU1wRHSXnow7UH+rgFAmi6YvwACgkQSXnow7UH
+rh/kgf+LruO9gn49QAzDE4T7kf9rP/z4ocie8sxMtED5J0vw12PAVa0UERQyB4m
756O0GSFKwESJMjLUifBslkt64k8x8hQ+XHYH/WPe/Rm7Ku4kf1zsTO9Mt0xA5qr
c5OgnLxR3T2L+1x8rEus8lPnExyX0G0b1/H1XjR+rvZAP1enwcLNyGFV3fNfAYNJ
cMpkGCMFM9wc5dpzDx89ttw49I8yuy+Cmf/eTtm1YDWQgzYVEycF8jTkFqYykIax
jMcZC0a1Lqrn1pLbxCZ5UEM9vxJREv46xBW6iKSkH5RWlbLo2gqMJbixYvkLtgBP
AbtrUtsyIx4Rw0nPEZ880Nce/LdhUw==
=Kuix
-----END PGP SIGNATURE-----

 
04 Sep 2025: Rust ALLOC & DMA for v6.18 [+ + +]
Hi Miguel,


All commits have been in linux-next for a couple of weeks. There are two tr=
ivial
conflicts with the -mm and Linus' tree [1][2].

Some patches that would usually go through this tree went through the -mm t=
ree
[3][4]; [5] and [6] go through drm-rust together with their first user -- o=
ne
minor import conflict in samples/rust/rust_dma.rs expected.

- Danilo

[1] https://lore.kernel.org/all/20250818122053.355aab17@canb.auug.org.au/
[2] https://lore.kernel.org/all/20250826173041.3140da7b@canb.auug.org.au/
[3] https://lore.kernel.org/all/20250806124034.1724515-1-vitaly.wool@konsul=
ko.se/
[4] https://lore.kernel.org/all/d2e3d6454c1435713be0fe3c0dc444d2c60bba51.17=
53929369.git.zhuhui@kylinos.cn/
[5] https://lore.kernel.org/all/20250820145434.94745-1-dakr@kernel.org/
[6] https://lore.kernel.org/all/20250828133323.53311-1-dakr@kernel.org/

Alloc & DMA changes for v6.18

Allocator:
  - Provide information about the minimum alignment guarantees of
    Kmalloc, Vmalloc and KVmalloc.
  - Take minimum alignment guarantees of allocators for ForeignOwnable
    into account.
  - Remove the `allocator_test` incl. `Cmalloc`.

Box:
  - Implement Box::pin_slice(), which constructs a pinned slice of
    elements.

Vec:
  - Simplify KUnit test module name to "rust_kvec".
  - Add doc-test for Vec::as_slice().
  - Constify various methods.

DMA:
  - Update ARef and AlwaysRefCounted imports.

MISC:
  - Remove support for unused host `#[test]`s.
  - Constify ArrayLayout::new_unchecked().

 
4 Sep 2025: Immutable branch between the MFD and GPIO trees for v6.18-rc1 [+ + +]
From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>

Lee,

have in the GPIO tree for the next merge window.

Thanks,
Bartosz

Immutable branch between the MFD and GPIO trees for v6.18-rc1

Allow building the MFD STMPE driver as module.

 
28 Aug 2025: PECI changes for v6.18-rc1 [+ + +]
SGkgR3JlZyENCg0KUGxlYXNlIHB1bGwgUEVDSSB1cGRhdGUgZm9yIExpbnV4IHY2LjE4Lg0KDQpU
aGFua3MNCi1Jd29uYQ0KDQpUaGUgZm9sbG93aW5nIGNoYW5nZXMgc2luY2UgY29tbWl0IDFiMjM3
ZjE5MGViM2QzNmY1MmRmZmUwN2E0MGI1ZWIyMTAyODBlMDA6DQoNCiAgTGludXggNi4xNy1yYzMg
KDIwMjUtMDgtMjQgMTI6MDQ6MTIgLTA0MDApDQoNCmFyZSBhdmFpbGFibGUgaW4gdGhlIEdpdCBy
ZXBvc2l0b3J5IGF0Og0KDQogIGdpdDovL2dpdC5rZXJuZWwub3JnL3B1Yi9zY20vbGludXgva2Vy
bmVsL2dpdC9pd2kvbGludXguZ2l0IHRhZ3MvcGVjaS1uZXh0LTYuMTgtcmMxDQoNCmZvciB5b3Ug
dG8gZmV0Y2ggY2hhbmdlcyB1cCB0byBlMjdmMTU4Y2YxZTk4ZDlhNTQxMjgyZWY0YjM2ZGZhNDQy
N2JmMzYxOg0KDQogIHBlY2k6IHJlbW92ZSB1bm5lZWRlZCAnZmFzdF9pbycgcGFyYW1ldGVyIGlu
IHJlZ21hcF9jb25maWcgKDIwMjUtMDgtMjggMjI6NDM6MjMgKzAyMDApDQoNCi0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NClVw
ZGF0ZSBwZWNpLW5leHQgZm9yIHY2LjE4LXJjMQ0KDQpBIHNtYWxsIGNoYW5nZSBpbiBwZWNpLW5w
Y20gZHJpdmVyIHRoYXQgcmVtb3ZlcyB1bm5lZWRlZCAnZmFzdF9pbycNCnBhcmFtZXRlciBpbiBy
ZWdtYXBfY29uZmlnIHBpY2tlZCB1cCBhcyBhIHBhcnQgb2Ygd2lkZXIgcmVmYWN0b3JpbmcuDQoN
Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0NCldvbGZyYW0gU2FuZyAoMSk6DQogICAgICBwZWNpOiByZW1vdmUgdW5uZWVkZWQg
J2Zhc3RfaW8nIHBhcmFtZXRlciBpbiByZWdtYXBfY29uZmlnDQoNCiBkcml2ZXJzL3BlY2kvY29u
dHJvbGxlci9wZWNpLW5wY20uYyB8IDEgLQ0KIDEgZmlsZSBjaGFuZ2VkLCAxIGRlbGV0aW9uKC0p
DQo=
 
25 Aug 2025: nuvoton arm64: early devicetree changes for 6.18 [+ + +]
Early Nuvoton arm64 devicetree updates for 6.18

Integrate changes from Tomer reworking devicetree pinctrl, reset, and clk n=
odes
for NPCM845-based platforms.

25 Aug 2025: nuvoton: early devicetree changes for 6.18 [+ + +]
Early Nuvoton ARM devicetree updates for 6.18

So far we have just the one fix from Krzysztof that switches some nodes to =
use
generic names, as recommended by the spec.

25 Aug 2025: aspeed: early driver changes for 6.18 [+ + +]
Early ASPEED driver updates for 6.18

Two small changes, the most interesting being the addition of the silicon I=
Ds
for ASPEED's AST2700 SoC family.

25 Aug 2025: aspeed: early devicetree changes for 6.18 [+ + +]
Early ASPEED devicetree updates for 6.18

Notable changes:

- Meta's Wedge400 and Fuji boards have had parallel devicetrees added for a
  transition to a new static flash layout. The original layout is deprecate=
d and
  I anticipate removing related devicetrees in future releases.

New platforms:

- Darwin (Meta)

  Darwin is Meta's rack switch platform with an AST2600 BMC integrated for
  health monitoring purpose.

Updates and fixes:

- GB200NVL (Nvidia): Networking, I2C, regulators, GPIOs
- Wedge400, Fuji (Meta): Fix warnings from devicetree bindings
- Use fixed-layout for NVMEM on Asrock platforms
- Various: minor fixes for warnings from FSI devicetree bindings

 
16 Aug 2025: Apple SoC DTS changes for v6.18, part 1 [+ + +]
Hi Arnd,

Here's our first very early pull request for the 6.18 merge window.
All of these changes could've been part of the 6.17 window but the dt-binding
changes were only picked up after I had already sent out my pull request which
was already very late.
These have been part -next for about a week now.


Best,


Sven


Apple SoC device tree changes for v6.18, part 1

- Added SMC nodes for M1 and M2 including the PMU GPIO controller and
  reboot sub-nodes. This now allows to reboot these systems and is
  required to later enable the power GPIO line for the WiFi board.
- Added i2c nodes for A7 - A11 SoCs

Signed-off-by: Sven Peter <sven@kernel.org>