Commit graph

72251 commits

Author SHA1 Message Date
Nathan Chancellor
8678591b47
kbuild: Split .modinfo out from ELF_DETAILS
Commit 3e86e4d74c ("kbuild: keep .modinfo section in
vmlinux.unstripped") added .modinfo to ELF_DETAILS while removing it
from COMMON_DISCARDS, as it was needed in vmlinux.unstripped and
ELF_DETAILS was present in all architecture specific vmlinux linker
scripts. While this shuffle is fine for vmlinux, ELF_DETAILS and
COMMON_DISCARDS may be used by other linker scripts, such as the s390
and x86 compressed boot images, which may not expect to have a .modinfo
section. In certain circumstances, this could result in a bootloader
failing to load the compressed kernel [1].

Commit ddc6cbef3e ("s390/boot/vmlinux.lds.S: Ensure bzImage ends with
SecureBoot trailer") recently addressed this for the s390 bzImage but
the same bug remains for arm, parisc, and x86. The presence of .modinfo
in the x86 bzImage was the root cause of the issue worked around with
commit d50f210913 ("kbuild: align modinfo section for Secureboot
Authenticode EDK2 compat"). misc.c in arch/x86/boot/compressed includes
lib/decompress_unzstd.c, which in turn includes lib/xxhash.c and its
MODULE_LICENSE / MODULE_DESCRIPTION macros due to the STATIC definition.

Split .modinfo out from ELF_DETAILS into its own macro and handle it in
all vmlinux linker scripts. Discard .modinfo in the places where it was
previously being discarded from being in COMMON_DISCARDS, as it has
never been necessary in those uses.

Cc: stable@vger.kernel.org
Fixes: 3e86e4d74c ("kbuild: keep .modinfo section in vmlinux.unstripped")
Reported-by: Ed W <lists@wildgooses.com>
Closes: https://lore.kernel.org/587f25e0-a80e-46a5-9f01-87cb40cfa377@wildgooses.com/ [1]
Tested-by: Ed W <lists@wildgooses.com> # x86_64
Link: https://patch.msgid.link/20260225-separate-modinfo-from-elf-details-v1-1-387ced6baf4b@kernel.org
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
2026-02-26 11:50:19 -07:00
Kees Cook
189f164e57 Convert remaining multi-line kmalloc_obj/flex GFP_KERNEL uses
Conversion performed via this Coccinelle script:

  // SPDX-License-Identifier: GPL-2.0-only
  // Options: --include-headers-for-types --all-includes --include-headers --keep-comments
  virtual patch

  @gfp depends on patch && !(file in "tools") && !(file in "samples")@
  identifier ALLOC = {kmalloc_obj,kmalloc_objs,kmalloc_flex,
 		    kzalloc_obj,kzalloc_objs,kzalloc_flex,
		    kvmalloc_obj,kvmalloc_objs,kvmalloc_flex,
		    kvzalloc_obj,kvzalloc_objs,kvzalloc_flex};
  @@

  	ALLOC(...
  -		, GFP_KERNEL
  	)

  $ make coccicheck MODE=patch COCCI=gfp.cocci

Build and boot tested x86_64 with Fedora 42's GCC and Clang:

Linux version 6.19.0+ (user@host) (gcc (GCC) 15.2.1 20260123 (Red Hat 15.2.1-7), GNU ld version 2.44-12.fc42) #1 SMP PREEMPT_DYNAMIC 1970-01-01
Linux version 6.19.0+ (user@host) (clang version 20.1.8 (Fedora 20.1.8-4.fc42), LLD 20.1.8) #1 SMP PREEMPT_DYNAMIC 1970-01-01

Signed-off-by: Kees Cook <kees@kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2026-02-22 08:26:33 -08:00
Linus Torvalds
32a92f8c89 Convert more 'alloc_obj' cases to default GFP_KERNEL arguments
This converts some of the visually simpler cases that have been split
over multiple lines.  I only did the ones that are easy to verify the
resulting diff by having just that final GFP_KERNEL argument on the next
line.

Somebody should probably do a proper coccinelle script for this, but for
me the trivial script actually resulted in an assertion failure in the
middle of the script.  I probably had made it a bit _too_ trivial.

So after fighting that far a while I decided to just do some of the
syntactically simpler cases with variations of the previous 'sed'
scripts.

The more syntactically complex multi-line cases would mostly really want
whitespace cleanup anyway.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2026-02-21 20:03:00 -08:00
Linus Torvalds
323bbfcf1e Convert 'alloc_flex' family to use the new default GFP_KERNEL argument
This is the exact same thing as the 'alloc_obj()' version, only much
smaller because there are a lot fewer users of the *alloc_flex()
interface.

As with alloc_obj() version, this was done entirely with mindless brute
force, using the same script, except using 'flex' in the pattern rather
than 'objs*'.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2026-02-21 17:09:51 -08:00
Linus Torvalds
bf4afc53b7 Convert 'alloc_obj' family to use the new default GFP_KERNEL argument
This was done entirely with mindless brute force, using

    git grep -l '\<k[vmz]*alloc_objs*(.*, GFP_KERNEL)' |
        xargs sed -i 's/\(alloc_objs*(.*\), GFP_KERNEL)/\1)/'

to convert the new alloc_obj() users that had a simple GFP_KERNEL
argument to just drop that argument.

Note that due to the extreme simplicity of the scripting, any slightly
more complex cases spread over multiple lines would not be triggered:
they definitely exist, but this covers the vast bulk of the cases, and
the resulting diff is also then easier to check automatically.

For the same reason the 'flex' versions will be done as a separate
conversion.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2026-02-21 17:09:51 -08:00
Kees Cook
69050f8d6d treewide: Replace kmalloc with kmalloc_obj for non-scalar types
This is the result of running the Coccinelle script from
scripts/coccinelle/api/kmalloc_objs.cocci. The script is designed to
avoid scalar types (which need careful case-by-case checking), and
instead replace kmalloc-family calls that allocate struct or union
object instances:

Single allocations:	kmalloc(sizeof(TYPE), ...)
are replaced with:	kmalloc_obj(TYPE, ...)

Array allocations:	kmalloc_array(COUNT, sizeof(TYPE), ...)
are replaced with:	kmalloc_objs(TYPE, COUNT, ...)

Flex array allocations:	kmalloc(struct_size(PTR, FAM, COUNT), ...)
are replaced with:	kmalloc_flex(*PTR, FAM, COUNT, ...)

(where TYPE may also be *VAR)

The resulting allocations no longer return "void *", instead returning
"TYPE *".

Signed-off-by: Kees Cook <kees@kernel.org>
2026-02-21 01:02:28 -08:00
Linus Torvalds
a95f71ad3e ARM development for 7.0-rc1
Three changes:
 - avoid %pK for ARM MM prints
 - implement ARCH_HAS_CC_CAN_LINK to ensure runnable user progs
 - handle BE8 and BE32 for user progs
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEuNNh8scc2k/wOAE+9OeQG+StrGQFAmmYgkIACgkQ9OeQG+St
 rGSHrA//acBMNgZHBeCDNauJV3cvE35TPMHmgch+qwDAI1xNeUqoSqWzM7g31rYx
 pw9sJCroeXex13MiQ5iF3NZrGEyrAOTpb52X/zIR9fPazzhtdRWAU0KhOJ6nHA8I
 OgIpufk7CleDYb4rXdOJYLXvpqLsGQ7BdniW4NaNABIQpxSZ4iztaE5nFVFwudc6
 JPZq2QoF6UBQjl5oLBkzrEVeASjzEP2YyBqSBANbZzYS2XbwLPOExMIj1Wqiy0QB
 NJ6DS6jhp5bE3imL46eG1SC6Xc8KKFvdQaE5C9Qw/Xi/tbUFDSy5SSSyBEc8Z6qH
 KUNi0C/i+dCpkqWij78ryr/uA8XWzqgQ8m/wMuNZM5/M06+Wn6rXS8MrZTnNSfrC
 BmNZqNqzfGepMHwxu4nBX+qIHRTuCAIrnSgJgfgMLfuV/JFlt2CL35EJMw93qLEA
 hzIE62BJeA1D/hdB7S9bUji/AtH3lKbHor2DK1KeVc70aVJncRUMwctUsxDw2jJC
 0cxrYOXt2uYkluH24qevFLJNc8RiF5xmIOy3lwfVw7iTt757a23fIugzMqq5yVLv
 99NS0chM4h5jaDhUvQk8wb9ru73KNvnzWE4HVJS8kQe1Zv/y7zGI3QQUUiARtUXw
 mtmePrh4sfkBaJdJFZDCTFnBwk9RKrBsIP5pFc23XiZaXUpYkyA=
 =quv+
 -----END PGP SIGNATURE-----

Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rmk/linux

Pull ARM updates from Russell King:

 - avoid %pK for ARM MM prints

 - implement ARCH_HAS_CC_CAN_LINK to ensure runnable user progs

 - handle BE8 and BE32 for user progs

* tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rmk/linux:
  ARM: 9470/1: Handle BE8 vs BE32 in ARCH_CC_CAN_LINK
  ARM: 9469/1: Implement ARCH_HAS_CC_CAN_LINK
  ARM: 9467/1: mm: Don't use %pK through printk
2026-02-20 12:21:00 -08:00
Thomas Weißschuh
b52343d1cb ARM: clean up the memset64() C wrapper
The current logic to split the 64-bit argument into its 32-bit halves is
byte-order specific and a bit clunky.  Use a union instead which is
easier to read and works in all cases.

GCC still generates the same machine code.

While at it, rename the arguments of the __memset64() prototype to
actually reflect their semantics.

Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2026-02-13 11:15:05 -08:00
Linus Torvalds
136114e0ab mm.git review status for linus..mm-nonmm-stable
Total patches:       107
 Reviews/patch:       1.07
 Reviewed rate:       67%
 
 - The 2 patch series "ocfs2: give ocfs2 the ability to reclaim
   suballocator free bg" from Heming Zhao saves disk space by teaching
   ocfs2 to reclaim suballocator block group space.
 
 - The 4 patch series "Add ARRAY_END(), and use it to fix off-by-one
   bugs" from Alejandro Colomar adds the ARRAY_END() macro and uses it in
   various places.
 
 - The 2 patch series "vmcoreinfo: support VMCOREINFO_BYTES larger than
   PAGE_SIZE" from Pnina Feder makes the vmcore code future-safe, if
   VMCOREINFO_BYTES ever exceeds the page size.
 
 - The 7 patch series "kallsyms: Prevent invalid access when showing
   module buildid" from Petr Mladek cleans up kallsyms code related to
   module buildid and fixes an invalid access crash when printing
   backtraces.
 
 - The 3 patch series "Address page fault in
   ima_restore_measurement_list()" from Harshit Mogalapalli fixes a
   kexec-related crash that can occur when booting the second-stage kernel
   on x86.
 
 - The 6 patch series "kho: ABI headers and Documentation updates" from
   Mike Rapoport updates the kexec handover ABI documentation.
 
 - The 4 patch series "Align atomic storage" from Finn Thain adds the
   __aligned attribute to atomic_t and atomic64_t definitions to get
   natural alignment of both types on csky, m68k, microblaze, nios2,
   openrisc and sh.
 
 - The 2 patch series "kho: clean up page initialization logic" from
   Pratyush Yadav simplifies the page initialization logic in
   kho_restore_page().
 
 - The 6 patch series "Unload linux/kernel.h" from Yury Norov moves
   several things out of kernel.h and into more appropriate places.
 
 - The 7 patch series "don't abuse task_struct.group_leader" from Oleg
   Nesterov removes the usage of ->group_leader when it is "obviously
   unnecessary".
 
 - The 5 patch series "list private v2 & luo flb" from Pasha Tatashin
   adds some infrastructure improvements to the live update orchestrator.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQTTMBEPP41GrTpTJgfdBJ7gKXxAjgUCaY4giAAKCRDdBJ7gKXxA
 jgusAQDnKkP8UWTqXPC1jI+OrDJGU5ciAx8lzLeBVqMKzoYk9AD/TlhT2Nlx+Ef6
 0HCUHUD0FMvAw/7/Dfc6ZKxwBEIxyww=
 =mmsH
 -----END PGP SIGNATURE-----

Merge tag 'mm-nonmm-stable-2026-02-12-10-48' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm

Pull non-MM updates from Andrew Morton:

 - "ocfs2: give ocfs2 the ability to reclaim suballocator free bg" saves
   disk space by teaching ocfs2 to reclaim suballocator block group
   space (Heming Zhao)

 - "Add ARRAY_END(), and use it to fix off-by-one bugs" adds the
   ARRAY_END() macro and uses it in various places (Alejandro Colomar)

 - "vmcoreinfo: support VMCOREINFO_BYTES larger than PAGE_SIZE" makes
   the vmcore code future-safe, if VMCOREINFO_BYTES ever exceeds the
   page size (Pnina Feder)

 - "kallsyms: Prevent invalid access when showing module buildid" cleans
   up kallsyms code related to module buildid and fixes an invalid
   access crash when printing backtraces (Petr Mladek)

 - "Address page fault in ima_restore_measurement_list()" fixes a
   kexec-related crash that can occur when booting the second-stage
   kernel on x86 (Harshit Mogalapalli)

 - "kho: ABI headers and Documentation updates" updates the kexec
   handover ABI documentation (Mike Rapoport)

 - "Align atomic storage" adds the __aligned attribute to atomic_t and
   atomic64_t definitions to get natural alignment of both types on
   csky, m68k, microblaze, nios2, openrisc and sh (Finn Thain)

 - "kho: clean up page initialization logic" simplifies the page
   initialization logic in kho_restore_page() (Pratyush Yadav)

 - "Unload linux/kernel.h" moves several things out of kernel.h and into
   more appropriate places (Yury Norov)

 - "don't abuse task_struct.group_leader" removes the usage of
   ->group_leader when it is "obviously unnecessary" (Oleg Nesterov)

 - "list private v2 & luo flb" adds some infrastructure improvements to
   the live update orchestrator (Pasha Tatashin)

* tag 'mm-nonmm-stable-2026-02-12-10-48' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm: (107 commits)
  watchdog/hardlockup: simplify perf event probe and remove per-cpu dependency
  procfs: fix missing RCU protection when reading real_parent in do_task_stat()
  watchdog/softlockup: fix sample ring index wrap in need_counting_irqs()
  kcsan, compiler_types: avoid duplicate type issues in BPF Type Format
  kho: fix doc for kho_restore_pages()
  tests/liveupdate: add in-kernel liveupdate test
  liveupdate: luo_flb: introduce File-Lifecycle-Bound global state
  liveupdate: luo_file: Use private list
  list: add kunit test for private list primitives
  list: add primitives for private list manipulations
  delayacct: fix uapi timespec64 definition
  panic: add panic_force_cpu= parameter to redirect panic to a specific CPU
  netclassid: use thread_group_leader(p) in update_classid_task()
  RDMA/umem: don't abuse current->group_leader
  drm/pan*: don't abuse current->group_leader
  drm/amd: kill the outdated "Only the pthreads threading model is supported" checks
  drm/amdgpu: don't abuse current->group_leader
  android/binder: use same_thread_group(proc->tsk, current) in binder_mmap()
  android/binder: don't abuse current->group_leader
  kho: skip memoryless NUMA nodes when reserving scratch areas
  ...
2026-02-12 12:13:01 -08:00
Linus Torvalds
4cff5c05e0 mm.git review status for linus..mm-stable
Everything:
 
 Total patches:       325
 Reviews/patch:       1.39
 Reviewed rate:       72%
 
 Excluding DAMON:
 
 Total patches:       262
 Reviews/patch:       1.63
 Reviewed rate:       82%
 
 Excluding DAMON and zram:
 
 Total patches:       248
 Reviews/patch:       1.72
 Reviewed rate:       86%
 
 - The 14 patch series "powerpc/64s: do not re-activate batched TLB
   flush" from Alexander Gordeev makes arch_{enter|leave}_lazy_mmu_mode()
   nest properly.
 
   It adds a generic enter/leave layer and switches architectures to use
   it.  Various hacks were removed in the process.
 
 - The 7 patch series "zram: introduce compressed data writeback" from
   Richard Chang and Sergey Senozhatsky implements data compression for
   zram writeback.
 
 - The 8 patch series "mm: folio_zero_user: clear page ranges" from David
   Hildenbrand adds clearing of contiguous page ranges for hugepages.
   Large improvements during demand faulting are demonstrated.
 
 - The 2 patch series "memcg cleanups" from Chen Ridong tideis up some
   memcg code.
 
 - The 12 patch series "mm/damon: introduce {,max_}nr_snapshots and
   tracepoint for damos stats" from SeongJae Park improves DAMOS stat's
   provided information, deterministic control, and readability.
 
 - The 3 patch series "selftests/mm: hugetlb cgroup charging: robustness
   fixes" from Li Wang fixes a few issues in the hugetlb cgroup charging
   selftests.
 
 - The 5 patch series "Fix va_high_addr_switch.sh test failure - again"
   from Chunyu Hu addresses several issues in the va_high_addr_switch test.
 
 - The 5 patch series "mm/damon/tests/core-kunit: extend existing test
   scenarios" from Shu Anzai improves the KUnit test coverage for DAMON.
 
 - The 2 patch series "mm/khugepaged: fix dirty page handling for
   MADV_COLLAPSE" from Shivank Garg fixes a glitch in khugepaged which was
   causing madvise(MADV_COLLAPSE) to transiently return -EAGAIN.
 
 - The 29 patch series "arch, mm: consolidate hugetlb early reservation"
   from Mike Rapoport reworks and consolidates a pile of straggly code
   related to reservation of hugetlb memory from bootmem and creation of
   CMA areas for hugetlb.
 
 - The 9 patch series "mm: clean up anon_vma implementation" from Lorenzo
   Stoakes cleans up the anon_vma implementation in various ways.
 
 - The 3 patch series "tweaks for __alloc_pages_slowpath()" from
   Vlastimil Babka does a little streamlining of the page allocator's
   slowpath code.
 
 - The 8 patch series "memcg: separate private and public ID namespaces"
   from Shakeel Butt cleans up the memcg ID code and prevents the
   internal-only private IDs from being exposed to userspace.
 
 - The 6 patch series "mm: hugetlb: allocate frozen gigantic folio" from
   Kefeng Wang cleans up the allocation of frozen folios and avoids some
   atomic refcount operations.
 
 - The 11 patch series "mm/damon: advance DAMOS-based LRU sorting" from
   SeongJae Park improves DAMOS's movement of memory betewwn the active and
   inactive LRUs and adds auto-tuning of the ratio-based quotas and of
   monitoring intervals.
 
 - The 18 patch series "Support page table check on PowerPC" from Andrew
   Donnellan makes CONFIG_PAGE_TABLE_CHECK_ENFORCED work on powerpc.
 
 - The 3 patch series "nodemask: align nodes_and{,not} with underlying
   bitmap ops" from Yury Norov makes nodes_and() and nodes_andnot()
   propagate the return values from the underlying bit operations, enabling
   some cleanup in calling code.
 
 - The 5 patch series "mm/damon: hide kdamond and kdamond_lock from API
   callers" from SeongJae Park cleans up some DAMON internal interfaces.
 
 - The 4 patch series "mm/khugepaged: cleanups and scan limit fix" from
   Shivank Garg does some cleanup work in khupaged and fixes a scan limit
   accounting issue.
 
 - The 24 patch series "mm: balloon infrastructure cleanups" from David
   Hildenbrand goes to town on the balloon infrastructure and its page
   migration function.  Mainly cleanups, also some locking simplification.
 
 - The 2 patch series "mm/vmscan: add tracepoint and reason for
   kswapd_failures reset" from Jiayuan Chen adds additional tracepoints to
   the page reclaim code.
 
 - The 3 patch series "Replace wq users and add WQ_PERCPU to
   alloc_workqueue() users" from Marco Crivellari is part of Marco's
   kernel-wide migration from the legacy workqueue APIs over to the
   preferred unbound workqueues.
 
 - The 9 patch series "Various mm kselftests improvements/fixes" from
   Kevin Brodsky provides various unrelated improvements/fixes for the mm
   kselftests.
 
 - The 5 patch series "mm: accelerate gigantic folio allocation" from
   Kefeng Wang greatly speeds up gigantic folio allocation, mainly by
   avoiding unnecessary work in pfn_range_valid_contig().
 
 - The 5 patch series "selftests/damon: improve leak detection and wss
   estimation reliability" from SeongJae Park improves the reliability of
   two of the DAMON selftests.
 
 - The 8 patch series "mm/damon: cleanup kdamond, damon_call(), damos
   filter and DAMON_MIN_REGION" from SeongJae Park does some cleanup work
   in the core DAMON code.
 
 - The 8 patch series "Docs/mm/damon: update intro, modules, maintainer
   profile, and misc" from SeongJae Park performs maintenance work on the
   DAMON documentation.
 
 - The 10 patch series "mm: add and use vma_assert_stabilised() helper"
   from Lorenzo Stoakes refactors and cleans up the core VMA code.  The
   main aim here is to be able to use the mmap write lock's lockdep state
   to perform various assertions regarding the locking which the VMA code
   requires.
 
 - The 19 patch series "mm, swap: swap table phase II: unify swapin use"
   from Kairui Song removes some old swap code (swap cache bypassing and
   swap synchronization) which wasn't working very well.  Various other
   cleanups and simplifications were made.  The end result is a 20% speedup
   in one benchmark.
 
 - The 8 patch series "enable PT_RECLAIM on more 64-bit architectures"
   from Qi Zheng makes PT_RECLAIM available on 64-bit alpha, loongarch,
   mips, parisc, um,  Various cleanups were performed along the way.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQTTMBEPP41GrTpTJgfdBJ7gKXxAjgUCaY1HfAAKCRDdBJ7gKXxA
 jqhZAP9H8ZlKKqCEgnr6U5XXmJ63Ep2FDQpl8p35yr9yVuU9+gEAgfyWiJ43l1fP
 rT0yjsUW3KQFBi/SEA3R6aYarmoIBgI=
 =+HLt
 -----END PGP SIGNATURE-----

Merge tag 'mm-stable-2026-02-11-19-22' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm

Pull MM updates from Andrew Morton:

 - "powerpc/64s: do not re-activate batched TLB flush" makes
   arch_{enter|leave}_lazy_mmu_mode() nest properly (Alexander Gordeev)

   It adds a generic enter/leave layer and switches architectures to use
   it. Various hacks were removed in the process.

 - "zram: introduce compressed data writeback" implements data
   compression for zram writeback (Richard Chang and Sergey Senozhatsky)

 - "mm: folio_zero_user: clear page ranges" adds clearing of contiguous
   page ranges for hugepages. Large improvements during demand faulting
   are demonstrated (David Hildenbrand)

 - "memcg cleanups" tidies up some memcg code (Chen Ridong)

 - "mm/damon: introduce {,max_}nr_snapshots and tracepoint for damos
   stats" improves DAMOS stat's provided information, deterministic
   control, and readability (SeongJae Park)

 - "selftests/mm: hugetlb cgroup charging: robustness fixes" fixes a few
   issues in the hugetlb cgroup charging selftests (Li Wang)

 - "Fix va_high_addr_switch.sh test failure - again" addresses several
   issues in the va_high_addr_switch test (Chunyu Hu)

 - "mm/damon/tests/core-kunit: extend existing test scenarios" improves
   the KUnit test coverage for DAMON (Shu Anzai)

 - "mm/khugepaged: fix dirty page handling for MADV_COLLAPSE" fixes a
   glitch in khugepaged which was causing madvise(MADV_COLLAPSE) to
   transiently return -EAGAIN (Shivank Garg)

 - "arch, mm: consolidate hugetlb early reservation" reworks and
   consolidates a pile of straggly code related to reservation of
   hugetlb memory from bootmem and creation of CMA areas for hugetlb
   (Mike Rapoport)

 - "mm: clean up anon_vma implementation" cleans up the anon_vma
   implementation in various ways (Lorenzo Stoakes)

 - "tweaks for __alloc_pages_slowpath()" does a little streamlining of
   the page allocator's slowpath code (Vlastimil Babka)

 - "memcg: separate private and public ID namespaces" cleans up the
   memcg ID code and prevents the internal-only private IDs from being
   exposed to userspace (Shakeel Butt)

 - "mm: hugetlb: allocate frozen gigantic folio" cleans up the
   allocation of frozen folios and avoids some atomic refcount
   operations (Kefeng Wang)

 - "mm/damon: advance DAMOS-based LRU sorting" improves DAMOS's movement
   of memory betewwn the active and inactive LRUs and adds auto-tuning
   of the ratio-based quotas and of monitoring intervals (SeongJae Park)

 - "Support page table check on PowerPC" makes
   CONFIG_PAGE_TABLE_CHECK_ENFORCED work on powerpc (Andrew Donnellan)

 - "nodemask: align nodes_and{,not} with underlying bitmap ops" makes
   nodes_and() and nodes_andnot() propagate the return values from the
   underlying bit operations, enabling some cleanup in calling code
   (Yury Norov)

 - "mm/damon: hide kdamond and kdamond_lock from API callers" cleans up
   some DAMON internal interfaces (SeongJae Park)

 - "mm/khugepaged: cleanups and scan limit fix" does some cleanup work
   in khupaged and fixes a scan limit accounting issue (Shivank Garg)

 - "mm: balloon infrastructure cleanups" goes to town on the balloon
   infrastructure and its page migration function. Mainly cleanups, also
   some locking simplification (David Hildenbrand)

 - "mm/vmscan: add tracepoint and reason for kswapd_failures reset" adds
   additional tracepoints to the page reclaim code (Jiayuan Chen)

 - "Replace wq users and add WQ_PERCPU to alloc_workqueue() users" is
   part of Marco's kernel-wide migration from the legacy workqueue APIs
   over to the preferred unbound workqueues (Marco Crivellari)

 - "Various mm kselftests improvements/fixes" provides various unrelated
   improvements/fixes for the mm kselftests (Kevin Brodsky)

 - "mm: accelerate gigantic folio allocation" greatly speeds up gigantic
   folio allocation, mainly by avoiding unnecessary work in
   pfn_range_valid_contig() (Kefeng Wang)

 - "selftests/damon: improve leak detection and wss estimation
   reliability" improves the reliability of two of the DAMON selftests
   (SeongJae Park)

 - "mm/damon: cleanup kdamond, damon_call(), damos filter and
   DAMON_MIN_REGION" does some cleanup work in the core DAMON code
   (SeongJae Park)

 - "Docs/mm/damon: update intro, modules, maintainer profile, and misc"
   performs maintenance work on the DAMON documentation (SeongJae Park)

 - "mm: add and use vma_assert_stabilised() helper" refactors and cleans
   up the core VMA code. The main aim here is to be able to use the mmap
   write lock's lockdep state to perform various assertions regarding
   the locking which the VMA code requires (Lorenzo Stoakes)

 - "mm, swap: swap table phase II: unify swapin use" removes some old
   swap code (swap cache bypassing and swap synchronization) which
   wasn't working very well. Various other cleanups and simplifications
   were made. The end result is a 20% speedup in one benchmark (Kairui
   Song)

 - "enable PT_RECLAIM on more 64-bit architectures" makes PT_RECLAIM
   available on 64-bit alpha, loongarch, mips, parisc, and um. Various
   cleanups were performed along the way (Qi Zheng)

* tag 'mm-stable-2026-02-11-19-22' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm: (325 commits)
  mm/memory: handle non-split locks correctly in zap_empty_pte_table()
  mm: move pte table reclaim code to memory.c
  mm: make PT_RECLAIM depends on MMU_GATHER_RCU_TABLE_FREE
  mm: convert __HAVE_ARCH_TLB_REMOVE_TABLE to CONFIG_HAVE_ARCH_TLB_REMOVE_TABLE config
  um: mm: enable MMU_GATHER_RCU_TABLE_FREE
  parisc: mm: enable MMU_GATHER_RCU_TABLE_FREE
  mips: mm: enable MMU_GATHER_RCU_TABLE_FREE
  LoongArch: mm: enable MMU_GATHER_RCU_TABLE_FREE
  alpha: mm: enable MMU_GATHER_RCU_TABLE_FREE
  mm: change mm/pt_reclaim.c to use asm/tlb.h instead of asm-generic/tlb.h
  mm/damon/stat: remove __read_mostly from memory_idle_ms_percentiles
  zsmalloc: make common caches global
  mm: add SPDX id lines to some mm source files
  mm/zswap: use %pe to print error pointers
  mm/vmscan: use %pe to print error pointers
  mm/readahead: fix typo in comment
  mm: khugepaged: fix NR_FILE_PAGES and NR_SHMEM in collapse_file()
  mm: refactor vma_map_pages to use vm_insert_pages
  mm/damon: unify address range representation with damon_addr_range
  mm/cma: replace snprintf with strscpy in cma_new_area
  ...
2026-02-12 11:32:37 -08:00
Linus Torvalds
098b6e44cb Devicetree updates for v7.0:
DT core:
 - Sync dtc/libfdt with upstream v1.7.2-62-ga26ef6400bd8
 
 - Add a for_each_compatible_node_scoped() loop and convert users in
   cpufreq, dmaengine, clk, cdx, powerpc and Arm
 
 - Simplify of/platform.c with scoped loop helpers
 
 - Add fw_devlink tracking for "mmc-pwrseq"
 
 - Optimize fw_devlink callback code size for pinctrl-N properties
 
 - Replace strcmp_suffix() with strends()
 
 DT bindings:
 - Support building single binding targets
 
 - Convert google,goldfish-fb, cznic,turris-mox-rwtm, ti,prm-inst
 
 - Add bindings for Freescale AVIC, Realtek RTD1xxx system controllers,
   Microchip 25AA010A EEPROM, OnSemi FIN3385, IEI WT61P803 PUZZLE, Delta
   Electronics DPS-800-AB power supply, Infineon IR35221 Digital
   Multi-phase Controller, Infineon PXE1610 Digital Dual Output 6+1
   VR12.5 & VR13 CPU Controller, socionext,uniphier-smpctrl, and
   xlnx,zynqmp-firmware
 
 - Lots of trivial binding fixes to address warnings in DTS files. These
   are mostly for arm64 platforms which is getting closer to be warning
   free. Some public shaming has helped.
 
 - Fix I2C bus node names in examples
 
 - Drop obsolete brcm,vulcan-soc binding
 
 - Drop unreferenced binding headers
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEktVUI4SxYhzZyEuo+vtdtY28YcMFAmmNLZEACgkQ+vtdtY28
 YcPa+A/+Lpf1FLau//mfndvkzRUvuU5aF3eJdL1FPxfC64Js2cb9ZGSoEK+YDjaV
 XzNIi2Z1j+i4+uf5MTvyGaqaVx3PcQBcQtb7pu+W1pt2KiOzfVqn66EmRsY3b4cc
 twyOwx2sZMTOZambUfZreWwEl6uJiMowIbcLCsnVWihoiGVTnMpnV/jLcO9jISaP
 fe42FX9qN4NL2QqWwcREYuWMuOH7MkHDRNpEhTouWosdmFCp3PkVZcuWv3NKjGMg
 /tsH5X9QMr972A9s8Zk36ijvTv7NN+9t1GOtPS9KGpbwJmyPHr38mG1fsj+P0rY7
 rOXRnT2PScN6kvKZuw0Rex5xeMxrQCzRkFLzyfq2LOsE0GAUyyR3qysNOdH8xO3Z
 3TVMGVaelYw5T+ahie1+gf/H/t+8hGhX3teCo8ORFNYo7oLsA9qNclfd5SW2Acat
 pPK80PXkqTRsQ9lVGfytPZJ+m5OhcTIBdI9ieEXk/kryDAL4dHcB2IIVHM2/qm50
 aGW0Kh0d61Roe0PZ5GEqI/yWPVHZroXEBxT61tDKwPyGawcq4Gs3Sftd6RXbLi8h
 +T6HzkHPZFlKaiLmBC1wqXnEKLd8h72qNjjDdXbRBdLXW6S5hGPtPiLv18ArlmmR
 4eiFX1Tr+pUAt2W/IwZb9H84mGkbJODbI62x9k9rst/vLeHmnjs=
 =RE7t
 -----END PGP SIGNATURE-----

Merge tag 'devicetree-for-7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux

Pull devicetree updates from Rob Herring:
 "DT core:

   - Sync dtc/libfdt with upstream v1.7.2-62-ga26ef6400bd8

   - Add a for_each_compatible_node_scoped() loop and convert users in
     cpufreq, dmaengine, clk, cdx, powerpc and Arm

   - Simplify of/platform.c with scoped loop helpers

   - Add fw_devlink tracking for "mmc-pwrseq"

   - Optimize fw_devlink callback code size for pinctrl-N properties

   - Replace strcmp_suffix() with strends()

  DT bindings:

   - Support building single binding targets

   - Convert google,goldfish-fb, cznic,turris-mox-rwtm, ti,prm-inst

   - Add bindings for Freescale AVIC, Realtek RTD1xxx system
     controllers, Microchip 25AA010A EEPROM, OnSemi FIN3385, IEI
     WT61P803 PUZZLE, Delta Electronics DPS-800-AB power supply,
     Infineon IR35221 Digital Multi-phase Controller, Infineon PXE1610
     Digital Dual Output 6+1 VR12.5 & VR13 CPU Controller,
     socionext,uniphier-smpctrl, and xlnx,zynqmp-firmware

   - Lots of trivial binding fixes to address warnings in DTS files.
     These are mostly for arm64 platforms which is getting closer to be
     warning free. Some public shaming has helped.

   - Fix I2C bus node names in examples

   - Drop obsolete brcm,vulcan-soc binding

   - Drop unreferenced binding headers"

* tag 'devicetree-for-7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (60 commits)
  dt-bindings: interrupt-controller: Add compatiblie string fsl,imx(1|25|27|31|35)-avic
  dt-bindings: soc: imx: add fsl,aips and fsl,emi compatible strings
  dt-bindings: display: bridge: lt8912b: Drop reset gpio requirement
  dt-bindings: firmware: fsl,scu: Mark multi-channel MU layouts as deprecated
  cpufreq: s5pv210: Simplify with scoped for each OF child loop
  dmaengine: fsl_raid: Simplify with scoped for each OF child loop
  clk: imx: imx31: Simplify with scoped for each OF child loop
  clk: imx: imx27: Simplify with scoped for each OF child loop
  cdx: Use mutex guard to simplify error handling
  cdx: Simplify with scoped for each OF child loop
  powerpc/wii: Simplify with scoped for each OF child loop
  powerpc/fsp2: Simplify with scoped for each OF child loop
  ARM: exynos: Simplify with scoped for each OF child loop
  ARM: at91: Simplify with scoped for each OF child loop
  of: Add for_each_compatible_node_scoped() helper
  dt-bindings: Fix emails with spaces or missing brackets
  scripts/dtc: Update to upstream version v1.7.2-62-ga26ef6400bd8
  dt-bindings: crypto: inside-secure,safexcel: Mandate only ring IRQs
  dt-bindings: crypto: inside-secure,safexcel: Add SoC compatibles
  of: reserved_mem: Fix placement of __free() annotation
  ...
2026-02-11 18:27:08 -08:00
Linus Torvalds
6589b3d76d soc: devicetree updates for 7.0
There are a handful of new SoCs this time, all of these are
 more or less related to chips in a wider family:
 
  - SpacemiT Key Stone K3 is an 8-core risc-v chip, and the first
    widely available RVA23 implementation. Note that this is
    entirely unrelated with the similarly named Texas Instruments
    K3 chip family that follwed the TI Keystone2 SoC.
 
  - The Realtek Kent family of SoCs contains three chip models
    rtd1501s, rtd1861b and rtd1920s, and is related to their earlier
    Set-top-box and NAS products such as rtd1619, but is built
    on newer Arm Cortex-A78 cores.
 
  - The Qualcomm Milos family includes the Snapdragon 7s Gen 3
    (SM7635) mobile phone SoC built around Armv9 Kryo cores of the Arm
    Cortex-A720 generation. This one is used in the Fairphone Gen 6
 
  - Qualcomm Kaanapali is a new SoC based around eight high
    performance Oryon CPU cores
 
  - NXP i.MX8QP and i.MX952 are both feature reduced versions of
    chips we already support, i.e. the i.MX8QM and i.MX952, with
    fewer CPU cores and I/O interfaces.
 
 As part of a cleanup, a number of SoC specific devicetree files got
 removed because they did not have a single board using the .dtsi files
 and they were never compile tested as a result: Samsung s3c6400,
 ST spear320s, ST stm32mp21xc/stm32mp23xc/stm32mp25xc, Renesas
 r8a779m0/r8a779m2/r8a779m4/r8a779m6/r8a779m7/r8a779m8/r8a779mb/
 r9a07g044c1/r9a07g044l1/r9a07g054l1/r9a09g047e37, and TI am3703/am3715.
 All of these could be restored easily if a new board gets merged.
 
 Broadcom/Cavium/Marvell ThunderX2 gets removed along with its only
 machine, as all remaining users are assumed to be using ACPI
 based firmware.
 
 A relatively small number of 43 boards get added this time, and
 almost all of them for arm64. Aside from the reference boards for
 the newly added SoCs, this includes:
 
  - Three server boards use 32-bit ASpeed BMCs
 
  - One more reference board for 32-bit Microchip LAN9668
 
  - 64-bit Arm single-board computers based on Amlogic s905y4,
    CIX sky1, NXP ls1028a/imx8mn/imx8mp/imx91/imx93/imx95,
    Qualcomm qcs6490/qrb2210 and Rockchip rk3568/rk3588s
 
  - Carrier board for SOMs using Intel agilex5, Marvell Armada 7020,
    NXP iMX8QP, Mediatek mt8370/mt8390 and rockchip rk3588
 
  - Two mobile phones using Snapdragon 845
 
  - A gaming device and a NAS box, both based on Rockchips rk356x
 
 On top of the newly added boards and SoCs, there is a lot of
 background activity going into cleanups, in particular towards
 getting a warning-free dtc build, and the usual work on adding
 support for more hardware on the previously added machines.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmmLSTIACgkQmmx57+YA
 GNk6xw//bn239Nn6XUSrmm3b7SGDf+9AvdrukrUEOsIYBYUM7fkulVSINpVOSzZU
 DAxLSCY1qfE9zP4x+hrYv922w9Rt19zPuEwFVCslbbTk9NN8IhmhIOs06o2jrvN3
 HS/AcESV2SCUe0EVjDIdBgisKMGdbN2t8bdrFFOmqUkQ+7EJ2GvNL0MoaKrdF+Sr
 ilt5Hhkl6ixbGDq2KEB2QQHQhYKa/5GdKS0CLTY4et/dZbjHVg9o6/sfgIhLINCz
 wNb9CKnt1Gv5L3RWW2LxQrrNe5qhLmHq1vmPbxSJGrzqnOwY9Tcg4s1Io9EcDtyW
 LZlq4PkLJV9oPVHgi0mygZ3ONVhWhCMVhTXg6Osi1aHJeEERuIaYMfeU7WD0jHv8
 ZcGboxfyiQmphRJumL0C74uIuuXgdoKrv7gqQvo9dy+HRxdHW/7p8TQi9SSfh7kF
 Iysc2ePMmqLd4WJCMxV+7FrT8oZxOL+/KfisCu6n/Qdv65kTWmBlLCK6XZrmWYyk
 YKg48F8xpQaSmgevWePwhcH0a/TmgmoT+6xOfTuyo88k65FLXXmrFp14th2Kg5sI
 60W9ur6ujPI3s19H9C3IQp7ub5Ermvj+g893zEB1e2CR9blfqRARV9zFSv4OMkq+
 hQmqe5cU9/17k7wchFke4Y/FsS8W2oFFJ9o6czOTnh5NhlpVSJw=
 =IK23
 -----END PGP SIGNATURE-----

Merge tag 'soc-dt-7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull SoC devicetree updates from Arnd Bergmann:
 "There are a handful of new SoCs this time, all of these are more or
  less related to chips in a wider family:

   - SpacemiT Key Stone K3 is an 8-core risc-v chip, and the first
     widely available RVA23 implementation. Note that this is entirely
     unrelated with the similarly named Texas Instruments K3 chip family
     that follwed the TI Keystone2 SoC.

   - The Realtek Kent family of SoCs contains three chip models
     rtd1501s, rtd1861b and rtd1920s, and is related to their earlier
     Set-top-box and NAS products such as rtd1619, but is built on newer
     Arm Cortex-A78 cores.

   - The Qualcomm Milos family includes the Snapdragon 7s Gen 3 (SM7635)
     mobile phone SoC built around Armv9 Kryo cores of the Arm
     Cortex-A720 generation. This one is used in the Fairphone Gen 6

   - Qualcomm Kaanapali is a new SoC based around eight high performance
     Oryon CPU cores

   - NXP i.MX8QP and i.MX952 are both feature reduced versions of chips
     we already support, i.e. the i.MX8QM and i.MX952, with fewer CPU
     cores and I/O interfaces.

  As part of a cleanup, a number of SoC specific devicetree files got
  removed because they did not have a single board using the .dtsi files
  and they were never compile tested as a result: Samsung s3c6400, ST
  spear320s, ST stm32mp21xc/stm32mp23xc/stm32mp25xc, Renesas
  r8a779m0/r8a779m2/r8a779m4/r8a779m6/r8a779m7/r8a779m8/r8a779mb/
  r9a07g044c1/r9a07g044l1/r9a07g054l1/r9a09g047e37, and TI
  am3703/am3715. All of these could be restored easily if a new board
  gets merged.

  Broadcom/Cavium/Marvell ThunderX2 gets removed along with its only
  machine, as all remaining users are assumed to be using ACPI based
  firmware.

  A relatively small number of 43 boards get added this time, and almost
  all of them for arm64. Aside from the reference boards for the newly
  added SoCs, this includes:

   - Three server boards use 32-bit ASpeed BMCs

   - One more reference board for 32-bit Microchip LAN9668

   - 64-bit Arm single-board computers based on Amlogic s905y4, CIX
     sky1, NXP ls1028a/imx8mn/imx8mp/imx91/imx93/imx95, Qualcomm
     qcs6490/qrb2210 and Rockchip rk3568/rk3588s

   - Carrier board for SOMs using Intel agilex5, Marvell Armada 7020,
     NXP iMX8QP, Mediatek mt8370/mt8390 and rockchip rk3588

   - Two mobile phones using Snapdragon 845

   - A gaming device and a NAS box, both based on Rockchips rk356x

  On top of the newly added boards and SoCs, there is a lot of
  background activity going into cleanups, in particular towards getting
  a warning-free dtc build, and the usual work on adding support for
  more hardware on the previously added machines"

* tag 'soc-dt-7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (757 commits)
  dt-bindings: intel: Add Agilex eMMC support
  arm64: dts: socfpga: agilex: add emmc support
  arm64: dts: intel: agilex5: Add simple-bus node on top of dma controller node
  ARM: dts: socfpga: fix dtbs_check warning for fpga-region
  ARM: dts: socfpga: add #address-cells and #size-cells for sram node
  dt-bindings: altera: document syscon as fallback for sys-mgr
  arm64: dts: altera: Use lowercase hex
  dt-bindings: arm: altera: combine Intel's SoCFPGA into altera.yaml
  arm64: dts: socfpga: agilex5: Add IOMMUS property for ethernet nodes
  arm64: dts: socfpga: agilex5: add support for modular board
  dt-bindings: intel: Add Agilex5 SoCFPGA modular board
  arm64: dts: socfpga: agilex5: Add dma-coherent property
  arm64: dts: realtek: Add Kent SoC and EVB device trees
  dt-bindings: arm: realtek: Add Kent Soc family compatibles
  ARM: dts: samsung: Drop s3c6400.dtsi
  ARM: dts: nuvoton: Minor whitespace cleanup
  MAINTAINERS: Add Falcon DB
  arm64: dts: a7k: add COM Express boards
  ARM: dts: microchip: Drop usb_a9g20-dab-mmx.dtsi
  arm64: dts: rockchip: Fix rk3588 PCIe range mappings
  ...
2026-02-10 21:11:08 -08:00
Linus Torvalds
60dc45dde4 soc: arm platform code changes for 7.0
These are mainly code cleanups, dropping some unneeded code,
 plus a reference counting leak fix.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmmLVtQACgkQmmx57+YA
 GNkRIRAAjZwCSrEypK0zioeGsJf5VWzZjbOcDyGFhj3qBFAujAgluLdZ4Noz4X2S
 YsvgbMc1IK2s4hnss/u0gk8x4YxBltfj0ytcHrOUgKkBqbq0oEKw6lXeXNn67TbN
 lQzXD7dzYNHv3eLiNnHG4SQrA63fPq+CzE+6V3k3gWrAGO2krDFfPrgHiO+Vm8PC
 ziARCUJRTMSi6CDeALiW+us5Me3LsL9qO0IPDlSQ1fVfb8DIlFWqhGjKNoRLZEej
 ki4D50404mo7l3UzwJrdheOlLdKqOOT/Pi6kcBDt+pCxz1koyT0bn5P37cY3TsFQ
 qZ971Hu5vhW9I/OLf1u/XVEE7Qzg2v2qWUK6HR6x7mqipZsCUQi/BqsL2FHE83Go
 tPvxbeY1IwLrDf9boZI0cOqmFfsJ8wUDhMQVExw6ki0mw41ppDebMfqqVwjwSgEt
 5OVRnBBxSJQTap+6wemojE2arwr/YcITELnbnKZzOfGUi/QRx1erhwzZtCZN72zY
 Cvy9evufx80lqRTddk0wCeNDT3U5RfMgH1g7I+CjSoyGUUb3CRW6OBpgjnz1IVEU
 zL1hSnEADicQS0yejocbpgj56wG2Ij1Naw3kIIDSQodqbSlKx/MPNnGfl2D/gq8V
 WhMv7h/2JpAy9aas04HZsYcIDC5gmjUa73n8AsqzHdMd2VGsdZw=
 =AKoJ
 -----END PGP SIGNATURE-----

Merge tag 'soc-arm-7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull arm platform SoC code updates from Arnd Bergmann:
 "These are mainly code cleanups, dropping some unneeded code, plus a
  reference counting leak fix"

* tag 'soc-arm-7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
  ARM: at91: remove unnecessary of_platform_default_populate calls
  ARM: at91: Move PM init functions to .init_late hook
  ARM: omap1: drop unused Kconfig symbol
  ARM: omap2: Fix reference count leaks in omap_control_init()
2026-02-10 21:03:14 -08:00
Linus Torvalds
f7fae9b4d3 soc: defconfig updates for 7.0
These are the usual updates, enabling mode newly merged device drivers for
 various Arm and RISC-V based platforms in the defconfig files. The Renesas
 and NXP defconfig files also get a refresh for modified Kconfig options.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmmLVkEACgkQmmx57+YA
 GNkSrxAAtP2FcZtRGrAXuUwmr9THJTJsn+F+oulSa5DOWSe9QSEPMXMbxX7k28w7
 4b3RLBaKKHUlj/cvZrGg/nCo3xX4RtAszhs9FE4mBaQ2/ai3hdre7vnNyD7Vo2i6
 OxlTqzO/G7X6IRhhVQXHu0++xUYs9DR632ovpptXtdHKRbTfvs7ox1H1xJyvJfVD
 fhVmcl0JllTlVIjRUatOFYSDazHHXSAo14B6oMwgNoh7kXDyk04j86h7ZWo+YfgA
 h0/Q9XVVqLbjF27vKzNePZwpbFyyqcqM0zsotliY5Cx+Sidig5P25P2oqEeOOL3V
 llHZQz+5qgYQrIkajfM/5dDpeD2YeZwja2NJu8d1UoParoFTB+zranFQdwKUmWTI
 sooe98fJKUwFYdzWl+MX+CE3pJ9cXuCycS7hfiaIZoJnY9ZLg+rCAH7CdD2sER7f
 S7WS2oh7A9VvXgeB08ayeTWFLoPfwpkLFJQVf7w31OgEhYTxGv4JxlvQgHbj8Dtb
 BbPB9lvtdFOnUwWik+E+O0rVylOBgHciTAKbNDRZvvIxWT2jMdqrHMmnHetdIi90
 QSP4fkrcxX4p/XCXOd+yFVfj/shaW84wSsgARWca26xlX4SQELy1LHPPgsuzB/0R
 CWyvGODbE9na2j7Bia3Oz6+mt/p6cVRDbHcYMZLHqZRDMnNmTQ8=
 =tlG5
 -----END PGP SIGNATURE-----

Merge tag 'soc-defconfig-7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull SoC defconfig updates from Arnd Bergmann:
 "These are the usual updates, enabling mode newly merged device drivers
  for various Arm and RISC-V based platforms in the defconfig files.

  The Renesas and NXP defconfig files also get a refresh for modified
  Kconfig options"

* tag 'soc-defconfig-7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
  riscv: defconfig: spacemit: k3: enable clock support
  ARM: defconfig: turn off CONFIG_EXPERT
  ARM: defconfig: move entries
  arm64: defconfig: Enable configurations for Kontron SMARC-sAM67
  ARM: imx_v4_v5_defconfig: update for v6.19-rc1
  arm64: defconfig: Enable Apple Silicon drivers
  arm64: select APPLE_PMGR_PWRSTATE for ARCH_APPLE
  arm64: defconfig: Enable Mediatek HDMIv2 driver
  ARM: shmobile: defconfig: Refresh for v6.19-rc1
  arm64: defconfig: Enable PCIe for the Renesas RZ/G3S SoC
  arm64: defconfig: Enable RZ/G3E USB3 PHY driver
  arm64: defconfig: Enable EC drivers for Qualcomm-based laptops
  arm64: defconfig: Enable options for Qualcomm Milos SoC
  ARM: imx_v6_v7_defconfig: enable EPD regulator needed for Kobo Clara 2e
  ARM: imx_v6_v7_defconfig: Configure CONFIG_SND_SOC_FSL_ASOC_CARD as module
  ARM: multi_v7_defconfig: enable DA9052 and MC13XXX
  arm64: defconfig: enable clocks, interconnect and pinctrl for Qualcomm Kaanapali
  arm64: defconfig: Drop duplicate CONFIG_OMAP_USB2 entry
  arm64: defconfig: Enable missing AMD/Xilinx drivers
2026-02-10 20:44:10 -08:00
Linus Torvalds
2b398c0562 asm-generic header updates for 7.0
A series from Thomas Weißschuh cleans up the UAPI header files to no
 longer contain any references to Kconfig symbols, as these make no sense
 in userspace. The build-time check for these was originally added by Sam
 Ravnborg in linux-2.6.28, and a later version started warning for all
 newly added CONFIG_* checks here but kept a list of known exceptions. With
 the last exceptions gone from that list, the warning is now unconditional
 in 'make headers_install'.
 
 John Garry contributed a cleanup of cpumask_of_node().
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmmLZAEACgkQmmx57+YA
 GNlvfQ//fIzdyYgAMMwV5JuRbODjzE3nUtOwHjCEF9IJfgO0sNdJ/qPSmiZJY8ic
 vcvrX1C+5G6Mck3/RTsOMemC36sTX9/V0+v06lgktmol2ZrOzzyXV7bCQhHrNdyd
 OnV3MKZkJOMvAzmdVo21GqQe9O0iG9nUfwJOPMO9B/4p8SePnlbvgrDAJZfVM9QB
 uDvjtLNySFhAhxnuAhSoDNTE+ssRDWO5q5pvHnKMyqwJFMaEFqadf1OU9Jrvmnw2
 pv15TqgHuAYCMaDlAGF/9IagbKJBFFnR0KP/19YtHuFAKhGxBbClZ0MlM/BlJIRC
 poxs0V4a9KCJDIvUaLYwz5kLpaEObLLWNSdnbrPvm2ZCw9LZH3uUVHbBrcjX+Vrq
 0KT2nUW+1y6qKkFetchLM6CIo6+QzWM2Jb18j0X3QX89w/7S4Ki/JBK/QeK85SOT
 uTleUblTZbafhYMlvQthKTclR/IPs/mxHsgEi7VhfethFUP7qCExeUTBFyUnme4m
 FdCmSdTXSGE+UiJZyTTRHMppDU3rXz15yBbHt2/wImimIjBKXDfvBT2DVKy4KTmO
 /zvwXizcPwiSV058xxOnv+w6aLe2t2mMGd7OOwBP4r7Nm/rxOI4jERhdUX4NO/Zl
 mgnsbUEx+CDKa8gB2JxK1hihciHDW9ICps5ne7yuhe7ccAGCjps=
 =A57a
 -----END PGP SIGNATURE-----

Merge tag 'asm-generic-7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic

Pull asm-generic header updates from Arnd Bergmann:
 "A series from Thomas Weißschuh cleans up the UAPI header files to no
  longer contain any references to Kconfig symbols, as these make no
  sense in userspace.

  The build-time check for these was originally added by Sam Ravnborg in
  linux-2.6.28, and a later version started warning for all newly added
  CONFIG_* checks here but kept a list of known exceptions. With the
  last exceptions gone from that list, the warning is now unconditional
  in 'make headers_install'.

  John Garry contributed a cleanup of cpumask_of_node()"

* tag 'asm-generic-7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic:
  scripts: headers_install.sh: Remove config leak ignore machinery
  x86/uapi: Stop leaking kconfig references to userspace
  nios2: uapi: Remove custom asm/swab.h from UAPI
  ARM: uapi: Drop PSR_ENDSTATE
  ARC: Always use SWAPE instructions for __arch_swab32()
  include/asm-generic/topology.h: Remove unused definition of cpumask_of_node()
2026-02-10 20:27:33 -08:00
Linus Torvalds
57cb845067 - A nice cleanup to the paravirt code containing a unification of the paravirt
clock interface, taming the include hell by splitting the pv_ops structure
   and removing of a bunch of obsolete code. Work by Juergen Gross.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEzv7L6UO9uDPlPSfHEsHwGGHeVUoFAmmLKHAACgkQEsHwGGHe
 VUrURg//Ucf+3EAIkLCmFkH0WwYmQl2JjRYww8bPAw3iJMIVxy4dMnaBbsUiAtUp
 kYza+pgEtvyAwwd8RIEs85c9VhZn0DKoaWV8goBH3zFH6YvIRiLwb0w2QvjkF+70
 FNU+4zlvt/I3FD+tWNElAgVtkFL3Gmzm44qyLLsPtlYaJ71xFl2XB7V+TlqXMHzE
 m8BMenP9/CrbTlBBdNJGzAkAbWi1uAP+IydvuFNolH/F2lqVM2z5Ta3gUWWCIk/q
 jWrPLDZCHr2WlBZNUGamKVVH9NEh+7YNwBAGUrSNYGZFoaFjqeX6lN3djzS+wXIj
 0nDoW35jN0QNKz239MdXZDf1mfpb6ZQd/iOhFjo4dAvbm+J8WPAMr98ac8wR3Dyb
 2LF/BxkoKWRabxQApXSCrLPXEuqT6Qc1+lDA0bNHg51zBoqP5vRNVZRwArnzGB+O
 LxDKx+o4VYOf+UCaB6oQHjylbSgFvIedZ9p822hBe3QG9act8indRE8LWip7Utld
 peoJGgvlQ0xtClh6FjVHpvmVfAvk7Zki5ywj2GwmB/TZ0yywuGStAjE3UqY168/M
 gb7MSajh+HHZNj1/2+b/se4CUYlAgIPDQ+SwHJPm5TqyopvnOVi/2XWmjbx8I5jT
 jS0nxaxD+SbESSZ6IMAsppnAAxAYbvRHGIS+6mtNCXVkaV1pMbA=
 =AeFt
 -----END PGP SIGNATURE-----

Merge tag 'x86_paravirt_for_v7.0_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull x86 paravirt updates from Borislav Petkov:

 - A nice cleanup to the paravirt code containing a unification of the
   paravirt clock interface, taming the include hell by splitting the
   pv_ops structure and removing of a bunch of obsolete code (Juergen
   Gross)

* tag 'x86_paravirt_for_v7.0_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (23 commits)
  x86/paravirt: Use XOR r32,r32 to clear register in pv_vcpu_is_preempted()
  x86/paravirt: Remove trailing semicolons from alternative asm templates
  x86/pvlocks: Move paravirt spinlock functions into own header
  x86/paravirt: Specify pv_ops array in paravirt macros
  x86/paravirt: Allow pv-calls outside paravirt.h
  objtool: Allow multiple pv_ops arrays
  x86/xen: Drop xen_mmu_ops
  x86/xen: Drop xen_cpu_ops
  x86/xen: Drop xen_irq_ops
  x86/paravirt: Move pv_native_*() prototypes to paravirt.c
  x86/paravirt: Introduce new paravirt-base.h header
  x86/paravirt: Move paravirt_sched_clock() related code into tsc.c
  x86/paravirt: Use common code for paravirt_steal_clock()
  riscv/paravirt: Use common code for paravirt_steal_clock()
  loongarch/paravirt: Use common code for paravirt_steal_clock()
  arm64/paravirt: Use common code for paravirt_steal_clock()
  arm/paravirt: Use common code for paravirt_steal_clock()
  sched: Move clock related paravirt code to kernel/sched
  paravirt: Remove asm/paravirt_api_clock.h
  x86/paravirt: Move thunk macros to paravirt_types.h
  ...
2026-02-10 19:01:45 -08:00
Linus Torvalds
f1c538ca81 Updates for the VDSO subsystem:
- Provide the missing 64-bit variant of clock_getres()
 
     This allows the extension of CONFIG_COMPAT_32BIT_TIME to the vDSO and
     finally the removal of 32-bit time types from the kernel and UAPI.
 
   - Remove the useless and broken getcpu_cache from the VDSO
 
     The intention was to provide a trivial way to retrieve the CPU number from
     the VDSO, but as the VDSO data is per process there is no way to make it
     work.
 
   - Switch get/put_unaligned() from packed struct to memcpy()
 
     The packed struct violates strict aliasing rules which requires to pass
     -fno-strict-aliasing to the compiler. As this are scalar values
     __builtin_memcpy() turns them into simple loads and stores
 
   - Use __typeof_unqual__() for __unqual_scalar_typeof()
 
     The get/put_unaligned() changes triggered a new sparse warning when __beNN
     types are used with get/put_unaligned() as sparse builds add a special
     'bitwise' attribute to them which prevents sparse to evaluate the Generic
     in __unqual_scalar_typeof().
 
     Newer sparse versions support __typeof_unqual__() which avoids the problem,
     but requires a recent sparse install. So this adds a sanity check to sparse
     builds, which validates that sparse is available and capable of handling it.
 
   - Force inline __cvdso_clock_getres_common()
 
     Compilers sometimes un-inline agressively, which results in function call
     overhead and problems with automatic stack variable initialization.
 
     Interestingly enough the force inlining results in smaller code than the
     un-inlined variant produced by GCC when optimizing for size.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEEQp8+kY+LLUocC4bMphj1TA10mKEFAmmJ2eAQHHRnbHhAa2Vy
 bmVsLm9yZwAKCRCmGPVMDXSYoXhQD/4mjneVlRBbQ6Nt9LxxhzPlYXvED6u8b4SX
 R//DQ4qqqagh2fSpE57tr3f56HqhUmXptGJSgEvr6tVKoyugsLqP6sN9J9J3o181
 jnPQR0VBP9dihQZ5X93pKo9NZWxLIn0uLD0RsdCbE9NTx4ciw4VIPFYQqkC4Rw6b
 jiRrDR2l8EhV8cmxB6puW5WaQ932M6Awabw9RumzwH3MzIIlbc5Ero51S9eS64LL
 byU5XeWUe295W1Gxze5RHHJWyNQEyx1eUCFfe3LWvfpz7FMzc2AQsKnIJDzW3GiO
 UGu5MGptbLpG+ccvhVEs6/Ls5pWXcoCw4WuDNAunCCOmqda98oDniKf2LwRRbLT0
 nAfLNatMnhXdTPk2zbS45z9uipUQAGKmVAE3/LVqB+ekcutmIGMyqHgR75QX0b4l
 CQPkC9rBsV6gGsScWTnhRydhqioNO/uhhrQv0vEXnKZa0ysTbgZKt3JDZbgUEL2B
 uDxXKyrqjpnqDZKlMMaoLtwd+l+T80ya4/NhHd4ZNGUpTUrHVw2H47lgE7ahCxEk
 /SvXTZSU4Jp8sVQIQ+J6y5z2AQ/xGy++zvNKiZMyP9fQuPqhiDqYkLpmOp61bARx
 wqyVsfGXZYSB1l16AiSC/CyUDcMqqsFohGXQ/Yf0SOiVtXu2WUyfofY1N0IXIGu4
 WOVV9mH1yg==
 =0ogX
 -----END PGP SIGNATURE-----

Merge tag 'timers-vdso-2026-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull VDSO updates from Thomas Gleixner:

 - Provide the missing 64-bit variant of clock_getres()

   This allows the extension of CONFIG_COMPAT_32BIT_TIME to the vDSO and
   finally the removal of 32-bit time types from the kernel and UAPI.

 - Remove the useless and broken getcpu_cache from the VDSO

   The intention was to provide a trivial way to retrieve the CPU number
   from the VDSO, but as the VDSO data is per process there is no way to
   make it work.

 - Switch get/put_unaligned() from packed struct to memcpy()

   The packed struct violates strict aliasing rules which requires to
   pass -fno-strict-aliasing to the compiler. As this are scalar values
   __builtin_memcpy() turns them into simple loads and stores

 - Use __typeof_unqual__() for __unqual_scalar_typeof()

   The get/put_unaligned() changes triggered a new sparse warning when
   __beNN types are used with get/put_unaligned() as sparse builds add a
   special 'bitwise' attribute to them which prevents sparse to evaluate
   the Generic in __unqual_scalar_typeof().

   Newer sparse versions support __typeof_unqual__() which avoids the
   problem, but requires a recent sparse install. So this adds a sanity
   check to sparse builds, which validates that sparse is available and
   capable of handling it.

 - Force inline __cvdso_clock_getres_common()

   Compilers sometimes un-inline agressively, which results in function
   call overhead and problems with automatic stack variable
   initialization.

   Interestingly enough the force inlining results in smaller code than
   the un-inlined variant produced by GCC when optimizing for size.

* tag 'timers-vdso-2026-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  vdso/gettimeofday: Force inlining of __cvdso_clock_getres_common()
  x86/percpu: Make CONFIG_USE_X86_SEG_SUPPORT work with sparse
  compiler: Use __typeof_unqual__() for __unqual_scalar_typeof()
  powerpc/vdso: Provide clock_getres_time64()
  tools headers: Remove unneeded ignoring of warnings in unaligned.h
  tools headers: Update the linux/unaligned.h copy with the kernel sources
  vdso: Switch get/put_unaligned() from packed struct to memcpy()
  parisc: Inline a type punning version of get_unaligned_le32()
  vdso: Remove struct getcpu_cache
  MIPS: vdso: Provide getres_time64() for 32-bit ABIs
  arm64: vdso32: Provide clock_getres_time64()
  ARM: VDSO: Provide clock_getres_time64()
  ARM: VDSO: Patch out __vdso_clock_getres() if unavailable
  x86/vdso: Provide clock_getres_time64() for x86-32
  selftests: vDSO: vdso_test_abi: Add test for clock_getres_time64()
  selftests: vDSO: vdso_test_abi: Use UAPI system call numbers
  selftests: vDSO: vdso_config: Add configurations for clock_getres_time64()
  vdso: Add prototype for __vdso_clock_getres_time64()
2026-02-10 17:02:23 -08:00
Linus Torvalds
4e21e585b6 A series of treewide cleanups to ensure interrupt request consistency.
- Add the missing IRQF_COND_ONESHOT flag to devm_request_irq()
 
     This is inconsistent vs. request_irq() and causes the same issues which
     where addressed with the introduction of this flag
 
   - Cleanup IRQF_ONESHOT and IRQF_NO_THREAD usage
 
     Quite some drivers have inconsistent interrupt request flags related to
     interrupt threading namely IRQF_ONESHOT and IRQF_NO_THREAD. This leads to
     warnings and/or malfunction when forced interrupt threading is enabled.
 
   - Remove stub primary (hard interrupt) handlers
 
     A bunch of drivers implement a stub primary (hard interrupt) handler which
     just returns IRQ_WAKE_THREAD. The same functionality is provided by the
     core code when the primary handler argument of request_thread_irq() is set
     to NULL.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEEQp8+kY+LLUocC4bMphj1TA10mKEFAmmJs8MQHHRnbHhAa2Vy
 bmVsLm9yZwAKCRCmGPVMDXSYoTbvEACH4OegGofKri7aecUPNcpRdQDHBoueikni
 Rio/vydFJ/H2hto4xlSPC4C84onxuFqY9lJgo/tCQTCrO0t+ZQ4ZGqnlQKzLJzmv
 vcVzNgGsxDZ0p1wJO0rBpTRxJN8yTXi8VVv5e6OPuihjLhdXGesyYtk1zosR3nOS
 CF/w8r9jVMzsSMPvtEMr5AwXD9ZTziUqyhQv94fYlpsbyD4TPXnUxhVkdUFFHHo3
 ROzWPFw1Ykh6wpdRPEpupcCf1d2Pq0TIAU86y3Sbf2msuXiTouHf+lH1uTd3EsLN
 6qUIqRYjwWE8HTieh+3YcH415wrIsUsWJb8YDi0DpqhPbja3IXP5ACHqEWaaNHRA
 MaBE2Gc02se4ChXMWncYR3cdzyAAwAeKLUahpLNc+7U4cHOm1w2g60yy4I0v2krh
 V0vfEN88WQ8DgrM0VvDLST6ZinSz4ia+R0qYWywl6eIW4RVNtuBi6wrN5PtzSEtz
 jZ3LqnRLGmNfKwS/taHBCAme7NIJSNa1L0ao/icnW5XVQz/d2EHVcUsLHecHZSMx
 l9tr/g3t85tsFW1eIKfF8T1a5DrbCEP4afceQk9KexAfAkP7el53M1E1yQDk/kW8
 so0CwZtbDJ136RQdBIQqx49QrUEOvtrgNDRQxPFBUrWEHcvjqbUuFclp9hpLheOj
 8YnzkVe0Rg==
 =vrmm
 -----END PGP SIGNATURE-----

Merge tag 'irq-cleanups-2026-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull irq cleanups from Thomas Gleixner:
 "A series of treewide cleanups to ensure interrupt request consistency.

   - Add the missing IRQF_COND_ONESHOT flag to devm_request_irq()

     This is inconsistent vs request_irq() and causes the same issues
     which where addressed with the introduction of this flag

   - Cleanup IRQF_ONESHOT and IRQF_NO_THREAD usage

     Quite some drivers have inconsistent interrupt request flags
     related to interrupt threading namely IRQF_ONESHOT and
     IRQF_NO_THREAD. This leads to warnings and/or malfunction when
     forced interrupt threading is enabled.

   - Remove stub primary (hard interrupt) handlers

     A bunch of drivers implement a stub primary (hard interrupt)
     handler which just returns IRQ_WAKE_THREAD. The same functionality
     is provided by the core code when the primary handler argument of
     request_thread_irq() is set to NULL"

* tag 'irq-cleanups-2026-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  media: pci: mg4b: Use IRQF_NO_THREAD
  mfd: wm8350-core: Use IRQF_ONESHOT
  thermal/qcom/lmh: Replace IRQF_ONESHOT with IRQF_NO_THREAD
  rtc: amlogic-a4: Remove IRQF_ONESHOT
  usb: typec: fusb302: Remove IRQF_ONESHOT
  EDAC/altera: Remove IRQF_ONESHOT
  char: tpm: cr50: Remove IRQF_ONESHOT
  ARM: versatile: Remove IRQF_ONESHOT
  scsi: efct: Use IRQF_ONESHOT and default primary handler
  Bluetooth: btintel_pcie: Use IRQF_ONESHOT and default primary handler
  bus: fsl-mc: Use default primary handler
  mailbox: bcm-ferxrm-mailbox: Use default primary handler
  iommu/amd: Use core's primary handler and set IRQF_ONESHOT
  platform/x86: int0002: Remove IRQF_ONESHOT from request_irq()
  genirq: Set IRQF_COND_ONESHOT in devm_request_irq().
2026-02-10 13:22:50 -08:00
Linus Torvalds
36ae1c45b2 Scheduler changes for v7.0:
Scheduler Kconfig space updates:
 
  - Further consolidate configurable preemption modes: reduce
    the number of architectures that are allowed to offer
    PREEMPT_NONE and PREEMPT_VOLUNTARY, reducing the number
    of preemption models from four to just two: 'full' and 'lazy'
    on up-to-date architectures (arm64, loongarch, powerpc,
    riscv, s390, x86).
 
    None and voluntary are only available as legacy features
    on platforms that don't implement lazy preemption yet,
    or which don't even support preemption.
 
    The goal is to eventually remove cond_resched() and
    voluntary preemption altogether.
 
    (Peter Zijlstra)
 
 RSEQ based 'scheduler time slice extension' support:
 
 This allows a thread to request a time slice extension when it
 enters a critical section to avoid contention on a resource when
 the thread is scheduled out inside of the critical section.
 
  - Add fields and constants for time slice extension
  - Provide static branch for time slice extensions
  - Add statistics for time slice extensions
  - Add prctl() to enable time slice extensions
  - Implement sys_rseq_slice_yield()
  - Implement syscall entry work for time slice extensions
  - Implement time slice extension enforcement timer
  - Reset slice extension when scheduled
  - Implement rseq_grant_slice_extension()
  - entry: Hook up rseq time slice extension
  - selftests: Implement time slice extension test
 
    (Thomas Gleixner)
 
  - Allow registering RSEQ with slice extension
  - Move slice_ext_nsec to debugfs
  - Lower default slice extension
  - selftests/rseq: Add rseq slice histogram script
 
    (Peter Zijlstra)
 
 Scheduler performance/scalability improvements:
 
  - Update rq->avg_idle when a task is moved to an idle CPU,
    which improves the scalability of various workloads.
    (Shubhang Kaushik)
 
  - Reorder fields in 'struct rq' for better caching
    (Blake Jones)
 
  - Fair scheduler SMP NOHZ balancing code speedups:
 
    - Move checking for nohz cpus after time check
    - Change likelyhood of nohz.nr_cpus
    - Remove nohz.nr_cpus and use weight of cpumask instead
 
      (Shrikanth Hegde)
 
  - Avoid false sharing for sched_clock_irqtime (Wangyang Guo)
 
  - Drop useless cpumask_empty() in find_energy_efficient_cpu()
  - Simplify task_numa_find_cpu()
  - Use cpumask_weight_and() in sched_balance_find_dst_group()
 
    (Yury Norov)
 
 DL scheduler updates:
 
  - Add a deadline server for sched_ext tasks (by Andrea Righi and
    Joel Fernandes, with fixes by Peter Zijlstra)
 
 RT scheduler updates:
 
  - Skip currently executing CPU in rto_next_cpu() (Chen Jinghuang)
 
 Entry code updates and performance improvements, which is part of the
 scheduler tree in this cycle due to interdependencies with the RSEQ
 based time slice extension work:
 
   - Remove unused syscall argument from syscall_trace_enter()
   - Rework syscall_exit_to_user_mode_work() for architecture reuse
   - Add arch_ptrace_report_syscall_entry/exit()
   - Inline syscall_exit_work() and syscall_trace_enter()
 
     (Jinjie Ruan)
 
 Scheduler core updates:
 
  - Rework sched_class::wakeup_preempt() and rq_modified_*()
  - Avoid rq->lock bouncing in sched_balance_newidle()
  - Rename rcu_dereference_check_sched_domain() =>
           rcu_dereference_sched_domain()
  - <linux/compiler_types.h>: Add the __signed_scalar_typeof() helper
 
    (Peter Zijlstra)
 
 Fair scheduler updates/refactoring:
 
  - Fold the sched_avg update
  - Change rcu_dereference_check_sched_domain() to rcu-sched
  - Switch to rcu_dereference_all()
  - Remove superfluous rcu_read_lock()
  - Limit hrtick work
 
    (Peter Zijlstra)
 
  - Join two #ifdef CONFIG_FAIR_GROUP_SCHED blocks
  - Clean up comments in 'struct cfs_rq'
  - Separate se->vlag from se->vprot
  - Rename cfs_rq::avg_load to cfs_rq::sum_weight
  - Rename cfs_rq::avg_vruntime to ::sum_w_vruntime & helper functions
  - Introduce and use the vruntime_cmp() and vruntime_op() wrappers
    for wrapped-signed aritmetics
  - Sort out 'blocked_load*' namespace noise
 
    (Ingo Molnar)
 
 Scheduler debugging code updates:
 
  - Export hidden tracepoints to modules (Gabriele Monaco)
 
  - Convert copy_from_user() + kstrtouint() to kstrtouint_from_user()
    (Fushuai Wang)
 
  - Add assertions to QUEUE_CLASS (Peter Zijlstra)
 
  - hrtimer: Fix tracing oddity (Thomas Gleixner)
 
 Misc fixes and cleanups:
 
  - Re-evaluate scheduling when migrating queued tasks out of
    throttled cgroups (Zicheng Qu)
 
  - Remove task_struct->faults_disabled_mapping (Christoph Hellwig)
 
  - Fix math notation errors in avg_vruntime comment (Zhan Xusheng)
 
  - sched/cpufreq: Use %pe format for PTR_ERR() printing (zenghongling)
 
 Signed-off-by: Ingo Molnar <mingo@kernel.org>
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCgAvFiEEBpT5eoXrXCwVQwEKEnMQ0APhK1gFAmmJj+IRHG1pbmdvQGtl
 cm5lbC5vcmcACgkQEnMQ0APhK1grtQ//WyXYGVE/WicdqslfaCY2Mr0uJnL0tLSM
 CJp+0LROdkmy+ChJmftO8RgjCUSsjhC4/xcBhUQXApf/ffQi3b2jH6nkTp/Z64Ms
 p2IXLkBiZjwdcO6fGbB0JE2G1J4hGRC5BlqfgkZzWidMf3kIbmrHg99mVWGzODLY
 N/cPW4d0WGf9TScl1FgEiOqgF3czMLlqvTDJqaFMpsTzSUcRBnrG4xushb4W/bBx
 573eqxgZJ6urNSGu8niY9PAl9F7gskXW3YxI3k8SH7VmJKSevWlwI9vMEhcRDzud
 E0XxD7J8iPOKtr7ypXm7anMBv4jWVUdAnPbYi4TDsyDDU/HguqMqT1McTGn8wQ+F
 jmdhmMC9/TEIzq93SNLbCYieibqDsmJoNVFFi0FWfPLMtYbcZd5a884SIz532vx4
 DegdlDXdazUwhxzDiQR3sq1CsHXpxNS2YdrpadAtF/r2gU86DQjsEew8yBvXi7bb
 Wrkzpax70sU1AFI23wJQkEb/OnnXyehAHAhhQN6GVvuiGr9P7C02WLEGLlmSmJrx
 zl2F750P76yhTfGcvTfJ/5LTfSB+yRozGvcdXnIkyzWotY6a2D1MKNusAfVax+IR
 kyfAWqVdxBhlKnqYbu92lTogvnPh3Lymd6G4TZZRkSH2jixyGd2oS7nZaDBAeBEM
 NHQtr9R+KyU=
 =Xj2f
 -----END PGP SIGNATURE-----

Merge tag 'sched-core-2026-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull scheduler updates from Ingo Molnar:
 "Scheduler Kconfig space updates:

   - Further consolidate configurable preemption modes (Peter Zijlstra)

     Reduce the number of architectures that are allowed to offer
     PREEMPT_NONE and PREEMPT_VOLUNTARY, reducing the number of
     preemption models from four to just two: 'full' and 'lazy' on
     up-to-date architectures (arm64, loongarch, powerpc, riscv, s390,
     x86).

     None and voluntary are only available as legacy features on
     platforms that don't implement lazy preemption yet, or which don't
     even support preemption.

     The goal is to eventually remove cond_resched() and voluntary
     preemption altogether.

  RSEQ based 'scheduler time slice extension' support (Thomas Gleixner
  and Peter Zijlstra):

  This allows a thread to request a time slice extension when it enters
  a critical section to avoid contention on a resource when the thread
  is scheduled out inside of the critical section.

   - Add fields and constants for time slice extension
   - Provide static branch for time slice extensions
   - Add statistics for time slice extensions
   - Add prctl() to enable time slice extensions
   - Implement sys_rseq_slice_yield()
   - Implement syscall entry work for time slice extensions
   - Implement time slice extension enforcement timer
   - Reset slice extension when scheduled
   - Implement rseq_grant_slice_extension()
   - entry: Hook up rseq time slice extension
   - selftests: Implement time slice extension test
   - Allow registering RSEQ with slice extension
   - Move slice_ext_nsec to debugfs
   - Lower default slice extension
   - selftests/rseq: Add rseq slice histogram script

  Scheduler performance/scalability improvements:

   - Update rq->avg_idle when a task is moved to an idle CPU, which
     improves the scalability of various workloads (Shubhang Kaushik)

   - Reorder fields in 'struct rq' for better caching (Blake Jones)

   - Fair scheduler SMP NOHZ balancing code speedups (Shrikanth Hegde):
      - Move checking for nohz cpus after time check
      - Change likelyhood of nohz.nr_cpus
      - Remove nohz.nr_cpus and use weight of cpumask instead

   - Avoid false sharing for sched_clock_irqtime (Wangyang Guo)

   - Cleanups (Yury Norov):
      - Drop useless cpumask_empty() in find_energy_efficient_cpu()
      - Simplify task_numa_find_cpu()
      - Use cpumask_weight_and() in sched_balance_find_dst_group()

  DL scheduler updates:

   - Add a deadline server for sched_ext tasks (by Andrea Righi and Joel
     Fernandes, with fixes by Peter Zijlstra)

  RT scheduler updates:

   - Skip currently executing CPU in rto_next_cpu() (Chen Jinghuang)

  Entry code updates and performance improvements (Jinjie Ruan)

  This is part of the scheduler tree in this cycle due to inter-
  dependencies with the RSEQ based time slice extension work:

    - Remove unused syscall argument from syscall_trace_enter()
    - Rework syscall_exit_to_user_mode_work() for architecture reuse
    - Add arch_ptrace_report_syscall_entry/exit()
    - Inline syscall_exit_work() and syscall_trace_enter()

  Scheduler core updates (Peter Zijlstra):

   - Rework sched_class::wakeup_preempt() and rq_modified_*()
   - Avoid rq->lock bouncing in sched_balance_newidle()
   - Rename rcu_dereference_check_sched_domain() =>
            rcu_dereference_sched_domain()
   - <linux/compiler_types.h>: Add the __signed_scalar_typeof() helper

  Fair scheduler updates/refactoring (Peter Zijlstra and Ingo Molnar):

   - Fold the sched_avg update
   - Change rcu_dereference_check_sched_domain() to rcu-sched
   - Switch to rcu_dereference_all()
   - Remove superfluous rcu_read_lock()
   - Limit hrtick work
   - Join two #ifdef CONFIG_FAIR_GROUP_SCHED blocks
   - Clean up comments in 'struct cfs_rq'
   - Separate se->vlag from se->vprot
   - Rename cfs_rq::avg_load to cfs_rq::sum_weight
   - Rename cfs_rq::avg_vruntime to ::sum_w_vruntime & helper functions
   - Introduce and use the vruntime_cmp() and vruntime_op() wrappers for
     wrapped-signed aritmetics
   - Sort out 'blocked_load*' namespace noise

  Scheduler debugging code updates:

   - Export hidden tracepoints to modules (Gabriele Monaco)

   - Convert copy_from_user() + kstrtouint() to kstrtouint_from_user()
     (Fushuai Wang)

   - Add assertions to QUEUE_CLASS (Peter Zijlstra)

   - hrtimer: Fix tracing oddity (Thomas Gleixner)

  Misc fixes and cleanups:

   - Re-evaluate scheduling when migrating queued tasks out of throttled
     cgroups (Zicheng Qu)

   - Remove task_struct->faults_disabled_mapping (Christoph Hellwig)

   - Fix math notation errors in avg_vruntime comment (Zhan Xusheng)

   - sched/cpufreq: Use %pe format for PTR_ERR() printing
     (zenghongling)"

* tag 'sched-core-2026-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (64 commits)
  sched: Re-evaluate scheduling when migrating queued tasks out of throttled cgroups
  sched/cpufreq: Use %pe format for PTR_ERR() printing
  sched/rt: Skip currently executing CPU in rto_next_cpu()
  sched/clock: Avoid false sharing for sched_clock_irqtime
  selftests/sched_ext: Add test for DL server total_bw consistency
  selftests/sched_ext: Add test for sched_ext dl_server
  sched/debug: Fix dl_server (re)start conditions
  sched/debug: Add support to change sched_ext server params
  sched_ext: Add a DL server for sched_ext tasks
  sched/debug: Stop and start server based on if it was active
  sched/debug: Fix updating of ppos on server write ops
  sched/deadline: Clear the defer params
  entry: Inline syscall_exit_work() and syscall_trace_enter()
  entry: Add arch_ptrace_report_syscall_entry/exit()
  entry: Rework syscall_exit_to_user_mode_work() for architecture reuse
  entry: Remove unused syscall argument from syscall_trace_enter()
  sched: remove task_struct->faults_disabled_mapping
  sched: Update rq->avg_idle when a task is moved to an idle CPU
  selftests/rseq: Add rseq slice histogram script
  hrtimer: Fix trace oddity
  ...
2026-02-10 12:50:10 -08:00
Linus Torvalds
4d84667627 Performance events changes for v7.0:
x86 PMU driver updates:
 
  - Add support for the core PMU for Intel Diamond Rapids (DMR) CPUs.
    Compared to previous iterations of the Intel PMU code, there's
    been a lot of changes, which center around three main areas:
 
     - Introduce the OFF-MODULE RESPONSE (OMR) facility to
       replace the Off-Core Response (OCR) facility
 
     - New PEBS data source encoding layout
 
     - Support the new "RDPMC user disable" feature
 
    (Dapeng Mi)
 
  - Likewise, a large series adds uncore PMU support for
    Intel Diamond Rapids (DMR) CPUs, which center around these
    four main areas:
 
     - DMR may have two Integrated I/O and Memory Hub (IMH) dies,
       separate from the compute tile (CBB) dies.  Each CBB and
       each IMH die has its own discovery domain.
 
     - Unlike prior CPUs that retrieve the global discovery table
       portal exclusively via PCI or MSR, DMR uses PCI for IMH PMON
       discovery and MSR for CBB PMON discovery.
 
     - DMR introduces several new PMON types: SCA, HAMVF, D2D_ULA,
       UBR, PCIE4, CRS, CPC, ITC, OTC, CMS, and PCIE6.
 
     - IIO free-running counters in DMR are MMIO-based, unlike SPR.
 
    (Zide Chen)
 
  - Also add support for Add missing PMON units for Intel Panther Lake,
    and support Nova Lake (NVL), which largely maps to Panther Lake.
    (Zide Chen)
 
  - KVM integration: Add support for mediated vPMUs (by Kan Liang
    and Sean Christopherson, with fixes and cleanups by Peter Zijlstra,
    Sandipan Das and Mingwei Zhang)
 
  - Add Intel cstate driver to support for Wildcat Lake (WCL)
    CPUs, which are a low-power variant of Panther Lake.
    (Zide Chen)
 
  - Add core, cstate and MSR PMU support for the Airmont NP Intel CPU
    (aka MaxLinear Lightning Mountain), which maps to the existing
    Airmont code. (Martin Schiller)
 
 Performance enhancements:
 
  - core: Speed up kexec shutdown by avoiding unnecessary
    cross CPU calls. (Jan H. Schönherr)
 
  - core: Fix slow perf_event_task_exit() with LBR callstacks
    (Namhyung Kim)
 
 User-space stack unwinding support:
 
  - Various cleanups and refactorings in preparation to generalize
    the unwinding code for other architectures. (Jens Remus)
 
 Uprobes updates:
 
  - Transition from kmap_atomic to kmap_local_page (Keke Ming)
 
  - Fix incorrect lockdep condition in filter_chain() (Breno Leitao)
 
  - Fix XOL allocation failure for 32-bit tasks (Oleg Nesterov)
 
 Misc fixes and cleanups:
 
  - s390: Remove kvm_types.h from Kbuild (Randy Dunlap)
 
  - x86/intel/uncore: Convert comma to semicolon (Chen Ni)
 
  - x86/uncore: Clean up const mismatch (Greg Kroah-Hartman)
 
  - x86/ibs: Fix typo in dc_l2tlb_miss comment (Xiang-Bin Shi)
 
 Signed-off-by: Ingo Molnar <mingo@kernel.org>
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCgAvFiEEBpT5eoXrXCwVQwEKEnMQ0APhK1gFAmmJhTURHG1pbmdvQGtl
 cm5lbC5vcmcACgkQEnMQ0APhK1i/qw/9F/sjMqbxH8d3kPXB8wk2eUuSkynQ2aNw
 Zec9qtfCC5N1U9b2D7ywGJRscTmWYnX/3BKTyzFuyA6SDz6buAgDDIGPlHi+9Fww
 +RUUS3lQ7N3pVWZ4Ifu3kbh3Vz4lkQuOXhfcjiyIMS6QIxfrcSLFoKHK+2V6PeU+
 x0k+THHz/Ymg+DIpqSjqil1yrKaUmU9xRrbnyy6zJB1duREQrkYBhIWL1+bcd7SA
 89RVAGXQ+sWzVQMPaKrMkZj6GavOCB7zseigiiwjBRLznukS2OulDDe8zR6pCJZp
 wbdc7TR/nCm+QtNfkHlOmTQvsPAXiXNyXe5Vi8aFjGc0uMGhHaeiL9ah/bwsKA5m
 Bm5Y7oVSmBlCJbcr/CTrGYkb+WwvLIgPCwVkn4FYPlsWv+U92qTOx9q7qKmIDFaj
 1oUXCwoHbYrYnoZqZqPp2h689m0Lh/lsGhy0QRt8aGnKu0SDjMaqRGbYWH0UI0kA
 aDnZstVHG76RnVi0143q8HcvvjNZb82NL0cS749tY/YcwH4kUEGj2XuSK2Ar887T
 H0oDJHXijMlGXWqO5bK3WMoCQajR7nRyqBo7/rKYj20OjXmwoXS3vel77/s8WFo2
 fUUC469MacDzyxdBNutnkJvvcvsUio3r4MWFsEEWQk2nUE58PtN8YM8j/FdNYpql
 zAZ4Jx/A0RM=
 =4SRB
 -----END PGP SIGNATURE-----

Merge tag 'perf-core-2026-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull performance event updates from Ingo Molnar:
 "x86 PMU driver updates:

   - Add support for the core PMU for Intel Diamond Rapids (DMR) CPUs
     (Dapeng Mi)

     Compared to previous iterations of the Intel PMU code, there's been
     a lot of changes, which center around three main areas:

      - Introduce the OFF-MODULE RESPONSE (OMR) facility to replace the
        Off-Core Response (OCR) facility

      - New PEBS data source encoding layout

      - Support the new "RDPMC user disable" feature

   - Likewise, a large series adds uncore PMU support for Intel Diamond
     Rapids (DMR) CPUs (Zide Chen)

     This centers around these four main areas:

      - DMR may have two Integrated I/O and Memory Hub (IMH) dies,
        separate from the compute tile (CBB) dies. Each CBB and each IMH
        die has its own discovery domain.

      - Unlike prior CPUs that retrieve the global discovery table
        portal exclusively via PCI or MSR, DMR uses PCI for IMH PMON
        discovery and MSR for CBB PMON discovery.

      - DMR introduces several new PMON types: SCA, HAMVF, D2D_ULA, UBR,
        PCIE4, CRS, CPC, ITC, OTC, CMS, and PCIE6.

      - IIO free-running counters in DMR are MMIO-based, unlike SPR.

   - Also add support for Add missing PMON units for Intel Panther Lake,
     and support Nova Lake (NVL), which largely maps to Panther Lake.
     (Zide Chen)

   - KVM integration: Add support for mediated vPMUs (by Kan Liang and
     Sean Christopherson, with fixes and cleanups by Peter Zijlstra,
     Sandipan Das and Mingwei Zhang)

   - Add Intel cstate driver to support for Wildcat Lake (WCL) CPUs,
     which are a low-power variant of Panther Lake (Zide Chen)

   - Add core, cstate and MSR PMU support for the Airmont NP Intel CPU
     (aka MaxLinear Lightning Mountain), which maps to the existing
     Airmont code (Martin Schiller)

  Performance enhancements:

   - Speed up kexec shutdown by avoiding unnecessary cross CPU calls
     (Jan H. Schönherr)

   - Fix slow perf_event_task_exit() with LBR callstacks (Namhyung Kim)

  User-space stack unwinding support:

   - Various cleanups and refactorings in preparation to generalize the
     unwinding code for other architectures (Jens Remus)

  Uprobes updates:

   - Transition from kmap_atomic to kmap_local_page (Keke Ming)

   - Fix incorrect lockdep condition in filter_chain() (Breno Leitao)

   - Fix XOL allocation failure for 32-bit tasks (Oleg Nesterov)

  Misc fixes and cleanups:

   - s390: Remove kvm_types.h from Kbuild (Randy Dunlap)

   - x86/intel/uncore: Convert comma to semicolon (Chen Ni)

   - x86/uncore: Clean up const mismatch (Greg Kroah-Hartman)

   - x86/ibs: Fix typo in dc_l2tlb_miss comment (Xiang-Bin Shi)"

* tag 'perf-core-2026-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (58 commits)
  s390: remove kvm_types.h from Kbuild
  uprobes: Fix incorrect lockdep condition in filter_chain()
  x86/ibs: Fix typo in dc_l2tlb_miss comment
  x86/uprobes: Fix XOL allocation failure for 32-bit tasks
  perf/x86/intel/uncore: Convert comma to semicolon
  perf/x86/intel: Add support for rdpmc user disable feature
  perf/x86: Use macros to replace magic numbers in attr_rdpmc
  perf/x86/intel: Add core PMU support for Novalake
  perf/x86/intel: Add support for PEBS memory auxiliary info field in NVL
  perf/x86/intel: Add core PMU support for DMR
  perf/x86/intel: Add support for PEBS memory auxiliary info field in DMR
  perf/x86/intel: Support the 4 new OMR MSRs introduced in DMR and NVL
  perf/core: Fix slow perf_event_task_exit() with LBR callstacks
  perf/core: Speed up kexec shutdown by avoiding unnecessary cross CPU calls
  uprobes: use kmap_local_page() for temporary page mappings
  arm/uprobes: use kmap_local_page() in arch_uprobe_copy_ixol()
  mips/uprobes: use kmap_local_page() in arch_uprobe_copy_ixol()
  arm64/uprobes: use kmap_local_page() in arch_uprobe_copy_ixol()
  riscv/uprobes: use kmap_local_page() in arch_uprobe_copy_ixol()
  perf/x86/intel/uncore: Add Nova Lake support
  ...
2026-02-10 12:00:46 -08:00
Linus Torvalds
13d83ea9d8 Crypto library updates for 7.0
- Add support for verifying ML-DSA signatures.
 
   ML-DSA (Module-Lattice-Based Digital Signature Algorithm) is a
   recently-standardized post-quantum (quantum-resistant) signature
   algorithm. It was known as Dilithium pre-standardization.
 
   The first use case in the kernel will be module signing. But there
   are also other users of RSA and ECDSA signatures in the kernel that
   might want to upgrade to ML-DSA eventually.
 
 - Improve the AES library:
 
     - Make the AES key expansion and single block encryption and
       decryption functions use the architecture-optimized AES code.
       Enable these optimizations by default.
 
     - Support preparing an AES key for encryption-only, using about
       half as much memory as a bidirectional key.
 
     - Replace the existing two generic implementations of AES with a
       single one.
 
 - Simplify how Adiantum message hashing is implemented. Remove the
   "nhpoly1305" crypto_shash in favor of direct lib/crypto/ support for
   NH hashing, and enable optimizations by default.
 -----BEGIN PGP SIGNATURE-----
 
 iIoEABYIADIWIQSacvsUNc7UX4ntmEPzXCl4vpKOKwUCaYlV8xQcZWJpZ2dlcnNA
 a2VybmVsLm9yZwAKCRDzXCl4vpKOK1ffAQCbM+cnqF4ThspBCgLZGSScx02KsA4U
 dQblKoOFyIEbnwEA1ElJNhNQs2m7AT+R0hOh6yI+5+ttUfqLMT9tuNs2mwM=
 =iZ06
 -----END PGP SIGNATURE-----

Merge tag 'libcrypto-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiggers/linux

Pull crypto library updates from Eric Biggers:

 - Add support for verifying ML-DSA signatures.

   ML-DSA (Module-Lattice-Based Digital Signature Algorithm) is a
   recently-standardized post-quantum (quantum-resistant) signature
   algorithm. It was known as Dilithium pre-standardization.

   The first use case in the kernel will be module signing. But there
   are also other users of RSA and ECDSA signatures in the kernel that
   might want to upgrade to ML-DSA eventually.

 - Improve the AES library:

     - Make the AES key expansion and single block encryption and
       decryption functions use the architecture-optimized AES code.
       Enable these optimizations by default.

     - Support preparing an AES key for encryption-only, using about
       half as much memory as a bidirectional key.

     - Replace the existing two generic implementations of AES with a
       single one.

 - Simplify how Adiantum message hashing is implemented. Remove the
   "nhpoly1305" crypto_shash in favor of direct lib/crypto/ support for
   NH hashing, and enable optimizations by default.

* tag 'libcrypto-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiggers/linux: (53 commits)
  lib/crypto: mldsa: Clarify the documentation for mldsa_verify() slightly
  lib/crypto: aes: Drop 'volatile' from aes_sbox and aes_inv_sbox
  lib/crypto: aes: Remove old AES en/decryption functions
  lib/crypto: aesgcm: Use new AES library API
  lib/crypto: aescfb: Use new AES library API
  crypto: omap - Use new AES library API
  crypto: inside-secure - Use new AES library API
  crypto: drbg - Use new AES library API
  crypto: crypto4xx - Use new AES library API
  crypto: chelsio - Use new AES library API
  crypto: ccp - Use new AES library API
  crypto: x86/aes-gcm - Use new AES library API
  crypto: arm64/ghash - Use new AES library API
  crypto: arm/ghash - Use new AES library API
  staging: rtl8723bs: core: Use new AES library API
  net: phy: mscc: macsec: Use new AES library API
  chelsio: Use new AES library API
  Bluetooth: SMP: Use new AES library API
  crypto: x86/aes - Remove the superseded AES-NI crypto_cipher
  lib/crypto: x86/aes: Add AES-NI optimization
  ...
2026-02-10 08:31:09 -08:00
Linus Torvalds
45bf4bc87c arm64 updates for 7.0
ACPI:
  - Add interrupt signalling support to the AGDI handler.
  - Add Catalin and myself to the arm64 ACPI MAINTAINERS entry.
 
 CPU features:
 - Drop Kconfig options for PAN and LSE (these are detected at runtime).
 - Add support for 64-byte single-copy atomic instructions (LS64/LS64V).
 - Reduce MTE overhead when executing in the kernel on Ampere CPUs.
 - Ensure POR_EL0 value exposed via ptrace is up-to-date.
 - Fix error handling on GCS allocation failure.
 
 CPU frequency:
 - Add CPU hotplug support to the FIE setup in the AMU driver.
 
 Entry code:
 - Minor optimisations and cleanups to the syscall entry path.
 - Preparatory rework for moving to the generic syscall entry code.
 
 Hardware errata:
 - Work around Spectre-BHB on TSV110 processors.
 - Work around broken CMO propagation on some systems with the SI-L1
   interconnect.
 
 Miscellaneous:
 - Disable branch profiling for arch/arm64/ to avoid issues with noinstr.
 - Minor fixes and cleanups (kexec + ubsan, WARN_ONCE() instead of
   WARN_ON(), reduction of boolean expression).
 - Fix custom __READ_ONCE() implementation for LTO builds when operating
   on non-atomic types.
 
 Perf and PMUs:
 - Support for CMN-600AE.
 - Be stricter about supported hardware in the CMN driver.
 - Support for DSU-110 and DSU-120.
 - Support for the cycles event in the DSU driver (alongside the
   dedicated cycles counter).
 - Use IRQF_NO_THREAD instead of IRQF_ONESHOT in the cxlpmu driver.
 - Use !bitmap_empty() as a faster alternative to bitmap_weight().
 - Fix SPE error handling when failing to resume profiling.
 
 Selftests:
 - Add support for the FORCE_TARGETS option to the arm64 kselftests.
 - Avoid nolibc-specific my_syscall() function.
 - Add basic test for the LS64 HWCAP.
 - Extend fp-pidbench to cover additional workload patterns.
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCgAuFiEEPxTL6PPUbjXGY88ct6xw3ITBYzQFAmmJ16QQHHdpbGxAa2Vy
 bmVsLm9yZwAKCRC3rHDchMFjNFO0CACxYy5klTAdqB+RjhxSbibZ6mmch/mX3zLl
 qBp0HeKuwSv+EWEblmr6KMrr/S5YjtEMboOC7GnmEdSeM6hucu5gPiEb7bIDQfbB
 5KJXoUlN1C+7Na4CimfordWiHIZw2d7mTumJcnsqMo7XN83t+4yqs98sET7WRCy5
 WUyqHH/dGZsGcsBMrRRO3UriHCpU425GE0jopF5OkwCs4dwyUVIV8SmZtK4Ovi3u
 Kin75UYgeVum8A218oHosTfYTBt4p/cSdfVVv5f3P14Q7lIstyJR7ZDqepTP2XSJ
 95W3nuMfOT1lx7f6pqvHc+4Ccl/+DQnbW1PWwv8f3nXAKVVMafWf
 =3SfC
 -----END PGP SIGNATURE-----

Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux

Pull arm64 updates from Will Deacon:
 "There's a little less than normal, probably due to LPC & Christmas/New
  Year meaning that a few series weren't quite ready or reviewed in
  time. It's still useful across the board, despite the only real
  feature being support for the LS64 feature enabling 64-byte atomic
  accesses to endpoints that support it.

  ACPI:
   - Add interrupt signalling support to the AGDI handler
   - Add Catalin and myself to the arm64 ACPI MAINTAINERS entry

  CPU features:
   - Drop Kconfig options for PAN and LSE (these are detected at runtime)
   - Add support for 64-byte single-copy atomic instructions (LS64/LS64V)
   - Reduce MTE overhead when executing in the kernel on Ampere CPUs
   - Ensure POR_EL0 value exposed via ptrace is up-to-date
   - Fix error handling on GCS allocation failure

  CPU frequency:
   - Add CPU hotplug support to the FIE setup in the AMU driver

  Entry code:
   - Minor optimisations and cleanups to the syscall entry path
   - Preparatory rework for moving to the generic syscall entry code

  Hardware errata:
   - Work around Spectre-BHB on TSV110 processors
   - Work around broken CMO propagation on some systems with the SI-L1
     interconnect

  Miscellaneous:
   - Disable branch profiling for arch/arm64/ to avoid issues with
     noinstr
   - Minor fixes and cleanups (kexec + ubsan, WARN_ONCE() instead of
     WARN_ON(), reduction of boolean expression)
   - Fix custom __READ_ONCE() implementation for LTO builds when
     operating on non-atomic types

  Perf and PMUs:
   - Support for CMN-600AE
   - Be stricter about supported hardware in the CMN driver
   - Support for DSU-110 and DSU-120
   - Support for the cycles event in the DSU driver (alongside the
     dedicated cycles counter)
   - Use IRQF_NO_THREAD instead of IRQF_ONESHOT in the cxlpmu driver
   - Use !bitmap_empty() as a faster alternative to bitmap_weight()
   - Fix SPE error handling when failing to resume profiling

  Selftests:
   - Add support for the FORCE_TARGETS option to the arm64 kselftests
   - Avoid nolibc-specific my_syscall() function
   - Add basic test for the LS64 HWCAP
   - Extend fp-pidbench to cover additional workload patterns"

* tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (43 commits)
  perf/arm-cmn: Reject unsupported hardware configurations
  perf: arm_spe: Properly set hw.state on failures
  arm64/gcs: Fix error handling in arch_set_shadow_stack_status()
  arm64: Fix non-atomic __READ_ONCE() with CONFIG_LTO=y
  arm64: poe: fix stale POR_EL0 values for ptrace
  kselftest/arm64: Raise default number of loops in fp-pidbench
  kselftest/arm64: Add a no-SVE loop after SVE in fp-pidbench
  perf/cxlpmu: Replace IRQF_ONESHOT with IRQF_NO_THREAD
  arm64: mte: Set TCMA1 whenever MTE is present in the kernel
  arm64/ptrace: Return early for ptrace_report_syscall_entry() error
  arm64/ptrace: Split report_syscall()
  arm64: Remove unused _TIF_WORK_MASK
  kselftest/arm64: Add missing file in .gitignore
  arm64: errata: Workaround for SI L1 downstream coherency issue
  kselftest/arm64: Add HWCAP test for FEAT_LS64
  arm64: Add support for FEAT_{LS64, LS64_V}
  KVM: arm64: Enable FEAT_{LS64, LS64_V} in the supported guest
  arm64: Provide basic EL2 setup for FEAT_{LS64, LS64_V} usage at EL0/1
  KVM: arm64: Handle DABT caused by LS64* instructions on unsupported memory
  KVM: arm64: Add documentation for KVM_EXIT_ARM_LDST64B
  ...
2026-02-09 20:28:45 -08:00
Linus Torvalds
996812c453 vfs-7.0-rc1.initrd
Please consider pulling these changes from the signed vfs-7.0-rc1.initrd tag.
 
 Thanks!
 Christian
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQRAhzRXHqcMeLMyaSiRxhvAZXjcogUCaYX49gAKCRCRxhvAZXjc
 ordBAQD4d6Y5Zvr852s9deMTDv+ng3bFk1YHqybGe3wEuATstwD/QcvAoNFW9Nn5
 n7/268Nk6jTEygT7Fm3tn42SnwOxhgU=
 =T203
 -----END PGP SIGNATURE-----

Merge tag 'vfs-7.0-rc1.initrd' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs

Pull vfs initrd removal from Christian Brauner:
 "Remove the deprecated linuxrc-based initrd code path and related dead
  code. The linuxrc initrd path was deprecated in 2020 and this series
  completes its removal. If we see real-life regressions we'll revert.

  The core change removes handle_initrd() and init_linuxrc() — the
  entire flow that ran /linuxrc from an initrd, pivoted roots, and
  handed off to the real root filesystem. With that gone, initrd_load()
  becomes void (no longer short-circuits prepare_namespace()),
  rd_load_image() is simplified to always load /initrd.image instead of
  taking a path, and rd_load_disk() is deleted.

  The /proc/sys/kernel/real-root-dev sysctl and its backing variable are
  removed since they only existed for linuxrc to communicate the real
  root device back to the kernel.

  The no-op load_ramdisk= and prompt_ramdisk= parameters are dropped,
  and noinitrd and ramdisk_start= gain deprecation warnings.

  Initramfs is entirely unaffected. The non-linuxrc initrd path
  (root=/dev/ram0) is preserved but now carries a deprecation warning
  targeting January 2027 removal"

* tag 'vfs-7.0-rc1.initrd' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs:
  init: remove /proc/sys/kernel/real-root-dev
  initrd: remove deprecated code path (linuxrc)
  init: remove deprecated "load_ramdisk" and "prompt_ramdisk" command line parameters
2026-02-09 11:03:25 -08:00
Thomas Weissschuh
561f60dfd1 ARM: 9470/1: Handle BE8 vs BE32 in ARCH_CC_CAN_LINK
ARM big-endian has two different binary formats. BE8 and the older BE32.
They are incompatible with each other.

Handle those when evaluating ARCH_CC_CAN_LINK by using the respective
configuration of the kernel itself.

Fixes: 3df8585afd ("ARM: 9469/1: Implement ARCH_HAS_CC_CAN_LINK")
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
2026-02-09 13:20:20 +00:00
Linus Torvalds
f896d1c03e ARM fixes for 6.19 / 7.0
Just one fix for memset64() on big endian 32-bit ARM systems.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEuNNh8scc2k/wOAE+9OeQG+StrGQFAmmF6MkACgkQ9OeQG+St
 rGQguw//TmfNJeMEs4mmCrEwKRI4mtevnNEOD2Y1MUjvmsfk4cwbVANVw6qUZIuA
 pZ2Y80S+3jxkZu7bDts1LtuUGM4JW+4jMpZFS3qsYaLzM2ml9al8+Ydh6AfqP5yC
 +IuUA/V9G/4ZJofS4Wh2rUtiI/8MV4BGk0NJMzNiAgiMyR/CamB8vA3fxVXic6vD
 ljfV62xMaVkGua4jlGRSpYSoNJJyXb1wQHtbl3+N/YwDD4ctFQbUNkdFrN3K33PB
 lI4DvDpq9yWHXlqG7jFeyeiUWRdsaamabkdJcPhnHz7MLvpW7zej9NGlWeNTl7TW
 6S4o8XEdi+x39KYOkk9ju46dHsJxGvkDmupXxCAgVg2C7uC0upaq31yp65+YtlwK
 6/hvBnBbZ6ZxMysE45CbQougHNTjZN4aPA1wtiSYec9A6X7riIHm91TqdTOPXOlo
 XcZqwLLCVBVp9UH/Trd0SwR6wzLGf2jpf+D0NLi30MW2LZ2Xq/3gtoVzs4XaqTsR
 11yzLaLEF3qGN3dDo/0rzjTGzIX44KckWtM0V5qUniwvJfwUyiWLLA7y7ibnvmGJ
 QCc3nKbxX7pDKwOkrz38kkmt0TvChhoHeF+jefJLDvI2GVzdwxh0abJDwmteI/Vs
 BfevAmxfvvxVwTBZuWvb/5yt6HFZCDqmUBGL//RM4SDgCl7LIis=
 =ja7q
 -----END PGP SIGNATURE-----

Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rmk/linux

Pull ARM fix from Russell King:
 "Just one fix for memset64() on big endian 32-bit ARM systems"

* tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rmk/linux:
  ARM: 9468/1: fix memset64() on big-endian
2026-02-06 09:21:38 -08:00
Thomas Weissschuh
3df8585afd ARM: 9469/1: Implement ARCH_HAS_CC_CAN_LINK
The generic CC_CAN_LINK detection does not handle different byte orders.
This may lead to userprogs which are not actually runnable on the target
kernel.

Use architecture-specific logic supporting byte orders instead.

Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
2026-02-06 13:07:38 +00:00
Arnd Bergmann
f51d34065d SoCFPGA DTS updates for v6.20, version 3
- dt-bindings updates:
 	- Add intel,socfpga-agilex5-socdk-modular for the Agilex5 mod board
 	- Add intel,socfpga-agilex-emmc for the Agilex eMMC daughter board
 	- Move entries in intel,socfpga.yaml into altera.yaml
 	- Add syscon as a fallback for sys-mgr
 
 - Add dma-cohrerent property for Agilex5 NAND and DMA
 - Add support for the Agilex5 modular board
 - Add IOMMUS property for ethernet nodes for Agilex5
 - Use lowercase hex for dts files
 - Add #address-cells and #size-cells for sram
 - Fix dtbs_check warning for fpga-region
 - Move dma controller node for Agilex5 under simple-bus
 - Add support for the Agilex eMMC daughter board
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEoHhMeiyk5VmwVMwNGZQEC4GjKPQFAmmBaFYACgkQGZQEC4Gj
 KPQLjxAAovoapeOuk0Ps+O31v9NCzuRfIwvGC1YryL4+REqU6PIJxEV7rJKL9bxy
 HePefbDgOtuukwqcy/IF/rN8av3ETqbRif4c0Gdt6vzOJ5TRCwdbVctLJQlchG/h
 CCv86QiDNt5VmCXJ8aONNcuUl1RmKRgScv5teeL4bPFhOwXfPYsjR6n7AexwDfCm
 qFw3b8xR1Qo4kQrn8NQwa5aJ/YrC9zeMgJMN8Yd8Zqe07MzLRCPlKioPi04zG9Gz
 Sd4NFLzBNW3PNwZxjQjGaZ99f5MDRMMrIFDUFN6qyyKpF0u+z8jboZ0KfuE8AWSH
 SpRp2MD5wdCv2jfynfvaHYZJCbf2yO9KUwI0BTNbfZK2PB/Kjbh1NtfuyTzU1CyS
 26RumUjItmEW0DHiHxHWEIqUQH18LPX95+aiX3HDEg4DC8AcYDqER6udzIEVvb0f
 z1XftA5uwy59tzgFLear/UV+u0kq8H3ndBHvsrSsCuXiekXEz3N9JddRmZrDve6Y
 5PorxK0CA9SiMIknTwPgR+C1WEhdw0CBJsjz1jWijqw8ZIHB70MpU7Tk4j1qJlbL
 7GpOQySIy5qcg2m9SS7yvCWtBt8xdtbj9cR8UnEEuJKzTnahxHcfYnontuUbYyJd
 zSQ0JKndpwb4QCmOAYswsp4WVOGfnVCPia4Eu4L94BRN16hv+to=
 =ux17
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmmC954ACgkQmmx57+YA
 GNl1Hw/+KMtxRTV2Gy8jUIJmWl3G1OXJ2n9HDyo+fSH9c9IqyU3RcLxWqQlENaz7
 MCxRIozKbjSvwNOgx7wkbmxY5oyEnZ0hqr0ylsn/wctBTCghaqID6IZd+5fdigS9
 1VqFeVB+i5GvihJ1mJDEHaUAjfahc9JA30da+oAqBkAsT89MkAn6Iaaze44tIlu1
 7i2EFzaMB7Gb5WXZ340x1rDM/u6cjR9iEYSXqSjmj+upy5xYuINzWDRN/1ZFtkTh
 44xoOoZ+rH7wnLYzx0gWoEcH+RA7yDbicaqJ4l+u1lbUNAsz46WfXbdys/kGKE8F
 Us6gXbLlZ+ZDGxB3dEqsOvxfI3u2u1Ehz69b+nZxNf2Fh5NDBSjkzcu30BywMgpj
 NPY/XqK9DA6G7M405rYaIJQMSiDqevZnBS35/jtq3t5pYmkuKUvwG6/8XexrOq00
 FXGX7JS8nEm8U3DFjwT6Z+Hg4Psm/nZxsv6KiarvJWDuhUeJRJM0qY2IF1dAYi1g
 LONh1Lt/WNHqDyF8bWkP6cT7zCGZ5Tlozj+3V/oyPNi6VndA6sNzIi9L/oR3oHOD
 vBGnEr95QaxZ/FaqNvMJo54DNBR3NEscDe3rAi+B4WaAH04EtSKMOwaY3pN9edwj
 H0hnbWU0bYsCfWDTbS698+lxTD/zCsBTEoWSFo0iL8mus0ArIgw=
 =XO7t
 -----END PGP SIGNATURE-----

Merge tag 'socfpga_dts_updates_for_v6.20_v3' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux into soc/dt

SoCFPGA DTS updates for v6.20, version 3
- dt-bindings updates:
	- Add intel,socfpga-agilex5-socdk-modular for the Agilex5 mod board
	- Add intel,socfpga-agilex-emmc for the Agilex eMMC daughter board
	- Move entries in intel,socfpga.yaml into altera.yaml
	- Add syscon as a fallback for sys-mgr

- Add dma-cohrerent property for Agilex5 NAND and DMA
- Add support for the Agilex5 modular board
- Add IOMMUS property for ethernet nodes for Agilex5
- Use lowercase hex for dts files
- Add #address-cells and #size-cells for sram
- Fix dtbs_check warning for fpga-region
- Move dma controller node for Agilex5 under simple-bus
- Add support for the Agilex eMMC daughter board

* tag 'socfpga_dts_updates_for_v6.20_v3' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux:
  dt-bindings: intel: Add Agilex eMMC support
  arm64: dts: socfpga: agilex: add emmc support
  arm64: dts: intel: agilex5: Add simple-bus node on top of dma controller node
  ARM: dts: socfpga: fix dtbs_check warning for fpga-region
  ARM: dts: socfpga: add #address-cells and #size-cells for sram node
  dt-bindings: altera: document syscon as fallback for sys-mgr
  arm64: dts: altera: Use lowercase hex
  dt-bindings: arm: altera: combine Intel's SoCFPGA into altera.yaml
  arm64: dts: socfpga: agilex5: Add IOMMUS property for ethernet nodes
  arm64: dts: socfpga: agilex5: add support for modular board
  dt-bindings: intel: Add Agilex5 SoCFPGA modular board
  arm64: dts: socfpga: agilex5: Add dma-coherent property

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-02-04 08:39:08 +01:00
Krzysztof Kozlowski
1adce508e9 ARM: exynos: Simplify with scoped for each OF child loop
Use scoped for-each loop when iterating over device nodes to make code a
bit simpler.

Reviewed-by: Jonathan Cameron <jonathan.cameron@huawei.com>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Link: https://patch.msgid.link/20260109-of-for-each-compatible-scoped-v3-3-c22fa2c0749a@oss.qualcomm.com
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
2026-02-03 20:58:12 -06:00
Krzysztof Kozlowski
9d4ba117ec ARM: at91: Simplify with scoped for each OF child loop
Use scoped for-each loop when iterating over device nodes to make code a
bit simpler.

Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com>
Reviewed-by: Jonathan Cameron <jonathan.cameron@huawei.com>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Reviewed-by: Claudiu Beznea <claudiu.beznea@tuxon.dev>
Link: https://patch.msgid.link/20260109-of-for-each-compatible-scoped-v3-2-c22fa2c0749a@oss.qualcomm.com
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
2026-02-03 20:58:12 -06:00
Peter Zijlstra
3e4067169c Linux 6.19-rc8
-----BEGIN PGP SIGNATURE-----
 
 iQFSBAABCgA8FiEEq68RxlopcLEwq+PEeb4+QwBBGIYFAml/zSkeHHRvcnZhbGRz
 QGxpbnV4LWZvdW5kYXRpb24ub3JnAAoJEHm+PkMAQRiG+bwIAJ0jbbeKDyeJJxPo
 8PgScnPJx9vBL3hGpphZrhbV3GOe9bDhKM/0Xk9qMDbpAm9C6qiBMTiDWyvWv5Qi
 qzDlZfoymMaDLPMxw9WHjJ++i1Z2StNdrz57Vze98C3/iG6gBcKnUEUzvF9nigri
 HIoxoOKlbSXLPUIzt49xE7YX+CRJhLF/kXmfoauZn5ghpv+uqSpWvRbUQJa3dmc0
 S4Ie/nbPtdVHmy1Fz9LJFDOzsdhGyjzHF4kc4shDkjAs8RAr8fJh74mQHO5a3MWA
 3WZ7GAAAc4XXNqj76X2dnVlMWpQNJ4p2e+OalsuXGA6VQ7OgbrJGMX8P6dMFn5AF
 8hFsXn4=
 =IdZ1
 -----END PGP SIGNATURE-----

Merge branch 'v6.19-rc8'

Update to avoid conflicts with /urgent patches.

Signed-off-by: Peter Zijlstra <peterz@infradead.org>
2026-02-03 12:04:13 +01:00
Sebastian Andrzej Siewior
a82bf78650 ARM: versatile: Remove IRQF_ONESHOT
Passing IRQF_ONESHOT ensures that the interrupt source is masked until
the secondary (threaded) handler is done. If only a primary handler is
used then the flag makes no sense because the interrupt can not fire
(again) while its handler is running.

Revert adding IRQF_ONESHOT to irqflags.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Thomas Gleixner <tglx@kernel.org>
Acked-by: Sudeep Holla <sudeep.holla@arm.com>
Acked-by: Linus Walleij <linusw@kernel.org>
Link: https://patch.msgid.link/20260128095540.863589-9-bigeasy@linutronix.de
2026-02-01 17:37:15 +01:00
Thomas Weissschuh
012ea376a5 ARM: 9467/1: mm: Don't use %pK through printk
Restricted pointers ("%pK") were never meant to be used
through printk(). They can acquire sleeping locks in atomic contexts.

Switch to %px over the more secure %p as this usage is a debugging aid,
gated behind CONFIG_DEBUG_VIRTUAL and used by WARN().

Link: https://lore.kernel.org/lkml/20250113171731-dc10e3c1-da64-4af0-b767-7c7070468023@linutronix.de/
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
2026-01-31 12:59:09 +00:00
Thomas Weissschuh
23ea2a4c72 ARM: 9468/1: fix memset64() on big-endian
On big-endian systems the 32-bit low and high halves need to be swapped
for the underlying assembly implementation to work correctly.

Fixes: fd1d362600 ("ARM: implement memset32 & memset64")
Cc: stable@vger.kernel.org
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Reviewed-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
2026-01-31 12:58:27 +00:00
Thomas Weißschuh
49d7819aa9 ARM: uapi: Drop PSR_ENDSTATE
The symbol PSR_ENDSTATE is pointless for userspace. Drop it from the
UAPI headers and instead inline it into the only two callers.

As as side-effect, remove a leak of an internal kconfig symbol through
the UAPI headers.

Suggested-by: Arnd Bergmann <arnd@arndb.de>
Link: https://lore.kernel.org/lkml/d2ad12f2-3d65-4bef-890c-65d78a33d790@app.fastmail.com/
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-30 16:46:17 +01:00
Dinh Nguyen
e0f489a52a ARM: dts: socfpga: fix dtbs_check warning for fpga-region
soc (simple-bus): base_fpga_region: 'ranges' is a required property
	from schema $id: http://devicetree.org/schemas/simple-bus.yaml

base_fpga_region (fpga-region): $nodename:0: 'base_fpga_region' does not match
'^fpga-region(@.*|-([0-9]|[1-9][0-9]+))?$'
	from schema $id: http://devicetree.org/schemas/fpga/fpga-region.yaml

Signed-off-by: Dinh Nguyen <dinguyen@kernel.org>
2026-01-30 09:27:12 -06:00
Dinh Nguyen
6ba5f9b424 ARM: dts: socfpga: add #address-cells and #size-cells for sram node
Add #address-cells and #size-cells for sram node to fix below DTB_CHECK
warnings:

socfpga_arria5_socdk.dtb: sram@ffff0000 (mmio-sram): '#size-cells' is a
required property from schema $id: http://devicetree.org/schemas/sram/sram.yaml

Signed-off-by: Dinh Nguyen <dinguyen@kernel.org>
2026-01-30 09:27:12 -06:00
Arnd Bergmann
16868b35b9 ARM: omap: soc updates for v6.20
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEe4dGDhaSf6n1v/EMWTcYmtP7xmUFAmlybigACgkQWTcYmtP7
 xmWf/RAAhEAFiIw/5odWREs6Ws0WZ3Mti11tvhfV6JpsYFyNJsCZA+7Dl0Lf4VUv
 Qfu/l5tmFHccV2uFpEFC8Mp3w37U+LBmqeJmeX6FxLFbf4s4snmzow7G93ckVYdB
 WpM+VMHJlklq7dZtCJC5K5wMIt7F+ibfr1hJqfbPv18YDdOvWc5CY2eAzbIVPu84
 wTTl7vUNnXOT0AP/WDzgQpq4AU5SY/cqfZosQl9zKTuPlOiCnMvPncJSHa+Q270F
 vXloi/EHqz9vTDu/CMOBBKwEqxLTsiVIQQh3AinfzZM/UE8T+7xrZnnJ3xvRJ93c
 3fo7OiLRPP2f4TukXf0+h+O1hF0bVd0xFwf51E8+6pDK/vikNmpxgKL0B/H63xjd
 zD3jxoMgWZ5oeYwy5rl6Emee7Z0Ql+QR3UgIYcLn1jCwUusn3ngv/vkbtoRhApC9
 hQ+DNcqLHGkBNDMyTxFt/2RltoqN41Os832SzAzbCeeR9W/YawrlNqNtMaX4238V
 Jg37gRdZqVVPSweOUz7qlxyJTYuuPNzRjANEPXqd99TXT4qTkF46QxZGiaA9mBfS
 RJ4vyJaj0Kzh6wuVnHbA8+nmNE+j66v24AqjxaXw+fsJM1DdlTRYoEpo6HYcYcND
 MvlJYJUM9zIdFiVEQjr5PcFx/eyB/400HDKPIrd6fQA9nJ2ULlI=
 =wFOc
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAml7IzMACgkQmmx57+YA
 GNkPAhAAqkbuWAIhPr3quaXgEcFwyZDs/9N3Jv7S8BR9YFYAehi3QUhxACdaXYce
 /1CAiOyCvZWbb3QdyZt7ekXk8MBu/AlFFHCYBZG+Zl5SuKgC4EP9G6gtC1tUnE3+
 adsIWTG7ORKdKtelCpuu5LL6DEL6/DKHFmHE6mRT/t2XNN37/xPV4+WzGRZjG+rR
 QKJy9nML50xedPwVEWreKfkTqw/Kw1SjEdYV+61vly0iQwapZJOUh1XJkj3PEaNd
 HRJD9qOvGVlUTabditf/mGIGRdBR6Jvg0yaipWF9wvEr/jlOBK+js/l46UtrLZTa
 kLj8GMgOomtCbsZS2gjlDPN5httEJzDOoBpyYqRY1BmdBHndrO5JEFVO7vk8wwD5
 4dRrB7rY3DGpAO9GcF2cl5ZMf+HkDTHsoyh7rUXp9rxGDKzFih18ggCPRP94sDgs
 kXtIIolc4ATX3izIBsCNHOM97PMqKpjcTy6miRhmQihXmsblT7RYchMP4pl94CIA
 3MzDELzeAIS3V4ZAqgZVUA8lGOQyykKEwsqu2adfQM1sDuZAafV/JEt54HWXOTbQ
 xcNHjRoiBXeSVO6OGXmrRHWSSIL1OZSvKDvMohGtpjWdNRLgrtKDJGP2jf4Ycigm
 XaFMG43wXaeT0xt/264th58z3wLTtM8I1KA+a/GeiDmASl6H4/w=
 =5b3e
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v6.20/soc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap into soc/arm

ARM: omap: soc updates for v6.20

* tag 'omap-for-v6.20/soc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap:
  ARM: omap1: drop unused Kconfig symbol
  ARM: omap2: Fix reference count leaks in omap_control_init()

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-29 10:06:55 +01:00
Arnd Bergmann
b8b10118e9 i.MX defconfig changes for 6.20:
- A couple of changes from Alexander Stein and Andreas Kemnade to enable
   SND_SOC_FSL_ASOC_CARD and REGULATOR_FP9931 in imx_v6_v7_defconfig
 - A change from Dmitry Baryshkov to enable DA9052 and MC13XXX in
   multi_v7_defconfig
 - A change from Josua Mayer to refresh imx_v4_v5_defconfig by removing
   stale options and adding missing ones
 -----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCgAdFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmlu1RQACgkQUFdYWoew
 fM7G3AgAocoryQrAMAXOl8Ciy4KlWhdI8H76L4nwMwfuyNEZ0KjwAuKzQt1dMAp5
 K54qN3S0w9Xc9YTS6j7aylgurSHPl4P4fQU4aFiysP1LaeFpgcguxT9M9YYzr29K
 NkXlCIi9H13jMVBnm7IOUgnVNGQrYITG3dulWcroEtcx4ALZGZmAPks7a6B0Vy12
 1azvvUCIjHkCqRM+gtDnJrKRDhZOPXHiq3jQvrq6/sp9W8Gq+t43NVxos6uNFZjy
 jFIk3RpHydexD4ET7EH2VwO5PkWnQYtu6w2xUZ9OJR30xFJd4gRzSfGTcXlJxUjQ
 NH+rOwqGIMPZuzfhSKnPTAOBbCj9iA==
 =YNAQ
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAml7F1oACgkQmmx57+YA
 GNkZGw//Q2pdjE+fFA2SJa3kR9U7RW+kkDD9SnuXjJ5QeXyiitva0FqSDmP6wMhK
 B6w0CgaoCAYU/L4wtR7BjhmHHHUjn6/JqAsJYY2AwPrZts5yaoAJOkqisb77XbAw
 U540FXOUn5YwWSQjFONcZQuqKzzE34mJRERXr5rNE1rOi+n1e0VyoGsGr8onsxPi
 4IOHd0yHdd2sEfZ5+pGorHkrCVfbBdclQWxXfeskTSWLce7vcbxwjtem0PlAOvij
 bF2Gmg7wm5oOE3JKhktkVsJmq3jOJdZZuuwl8CM3IVsV45FNioOT5Ke3a52VB6Xr
 WYe+gUujSVVNom6NRTYqncoeqCTv41ggWFRnqifZpV1sD8hbzI75tVB1sNdMKx7w
 VVpSMXpf3HBi8zbsaeoINxea3Ri96Gkex6U3vtkrILd+5Wb/Tklthc3tkTT1kHi6
 64cHsN2J5huE9EzpSTtmVtoxDQvKc3Yif8PKyb9+0VSPKP2Tkw/gyPRdnB3tqdC7
 Ak+WxW2bSMQQKfPs/RiYM2DtooiVolGA5vk6uHhb0LUbRw5URgcbhjFZaffPl/TG
 /CQFo21dCRKfmuff0RqTCyT04QA1frdRZv/OYAJ4NfC7d2faNn0xrwHokKH8WRgB
 LM/3Tr2Y9PAmyGS6Sam1iQWaLGlCPo9cJjAw1g9ERf0Y++QbpmI=
 =+JWN
 -----END PGP SIGNATURE-----

Merge tag 'imx-defconfig-6.20' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into soc/defconfig

i.MX defconfig changes for 6.20:

- A couple of changes from Alexander Stein and Andreas Kemnade to enable
  SND_SOC_FSL_ASOC_CARD and REGULATOR_FP9931 in imx_v6_v7_defconfig
- A change from Dmitry Baryshkov to enable DA9052 and MC13XXX in
  multi_v7_defconfig
- A change from Josua Mayer to refresh imx_v4_v5_defconfig by removing
  stale options and adding missing ones

* tag 'imx-defconfig-6.20' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  ARM: imx_v4_v5_defconfig: update for v6.19-rc1
  ARM: imx_v6_v7_defconfig: enable EPD regulator needed for Kobo Clara 2e
  ARM: imx_v6_v7_defconfig: Configure CONFIG_SND_SOC_FSL_ASOC_CARD as module
  ARM: multi_v7_defconfig: enable DA9052 and MC13XXX

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-29 09:16:24 +01:00
Arnd Bergmann
c741fc9557 Renesas ARM defconfig updates for v6.20
- Enable support for the Renesas RZ/G3E USB3 PHY and RZ/G3S PCIe
     drivers in the ARM64 defconfig,
   - Refresh the ARM SH-Mobile defconfig for v6.19-rc1.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCaVu/gwAKCRCKwlD9ZEnx
 cAokAQC4fxljYGQm8XAuc32tc+Bhq/cBFfGTYC1bjsULC+Dd0AD/RKUUpgFxqT4e
 nETMXaxNGSJh/6iy1rQQUFMp/Ak1/AU=
 =wgnz
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAml7FNgACgkQmmx57+YA
 GNlq8Q//XX8advk2vyBl7Wb1lIny33x3FQoyfnOr11HMg0O3kbb5e4Y85JySmRrl
 4VzOpgbKDvvb/So3/OkdNvlFlL2Q9Nq3WwyQfc+dDCoAU/X+2HhtkAA/8ilm91hG
 K0MLvdzHDxwWPMIgZAUZcbzK46xqcdhij4zz2d74agLUIOGXiShNfJvAFdl579rV
 ZGJdGI8LOvoRiGMkuiXX3hMUn12DhYVA7vIwBOCR1HXav69rzVM5fCTGV/0iijy7
 mpgxecYHjdq4rJJKB6OMM125AeEuOMZbUn19DFfKQ9rHU/3wtRMewrhmngHSSKF7
 IXwzu4iEhOiYm+LeXZWRMw9OFtnlTc9xrCwDeylY9P7vFUPTZoCv+0ZPC6RDwRpE
 77md8yTRflNPnHJYYPtBuF6tupH16BBBZXr8Xq8qJ8Cn3PlT1Gzs++6dUyO7Gjkq
 ievjMbwd/IPT3Dt6a8T7nMO7TF32uVUYfbz6NvjmfbdqxkVLv/WLnbjUe8XzJtS+
 3kdoLGHZ7vVFEIPk9pZ7TMov5LjjHLrXPZRQ8/+eO7fkstZfFJDcUKrNyLbOKEfw
 jdRUamu07ZTUMQ7NEhBuSPbQvJKfaePfXdjTgmYoDR9hCi+06DFYcH6OScAj2cEm
 DyCk5lT0ZtyZKrbsAP7RdXu3aSOGX4fY3yxEngNbxGmAGFkQDpE=
 =4PUu
 -----END PGP SIGNATURE-----

Merge tag 'renesas-arm-defconfig-for-v6.20-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into soc/defconfig

Renesas ARM defconfig updates for v6.20

  - Enable support for the Renesas RZ/G3E USB3 PHY and RZ/G3S PCIe
    drivers in the ARM64 defconfig,
  - Refresh the ARM SH-Mobile defconfig for v6.19-rc1.

* tag 'renesas-arm-defconfig-for-v6.20-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  ARM: shmobile: defconfig: Refresh for v6.19-rc1
  arm64: defconfig: Enable PCIe for the Renesas RZ/G3S SoC
  arm64: defconfig: Enable RZ/G3E USB3 PHY driver

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-29 09:05:36 +01:00
Arnd Bergmann
6d925df981
ARM: defconfig: turn off CONFIG_EXPERT
Since multi_v7_defconfig is meant to be the generic defconfig, many
users are not going to be experts and it is counterintuitive to have
CONFIG_EXPERT enabled.

This change has a couple of side-effects:

 - CONFIG_NAMESPACES is enabled by default. This adds about 0.2% of
  .text, but is already enabled in many board specific configs, and
   apparently a requirement for systemd, so this seems like a useful
   change.

 - CONFIG_DEBUG_MEMORY_INIT is enabled now, adding a tiny bit
   of code in the inittext section

 - CONFIG_RFKILL, CONFIG_MEDIA_SUPPORT_FILTER and various CONFIG_HID
   driver defaults change, so these have to be listed explicitly to
   maintain the previous behavior

 - CONFIG_SERIAL_SH_SCI_NR_UARTS=20 changes to the default value
   of 18, which I understand to be sufficient for any buard, even
   if all UARTS are enabled at the same time

Acked-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20260112153255.795553-2-arnd@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-29 08:56:07 +01:00
Arnd Bergmann
ee1ab82ee0
ARM: defconfig: move entries
Some Kconfig files got rearranged, so change the defconfig file
to put everything back in the order used by 'make savedefconfig'.

Link: https://lore.kernel.org/r/20260112153255.795553-1-arnd@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-29 08:55:58 +01:00
Arnd Bergmann
2120005213 More Qualcomm Arm32 DeviceTree updated for v6.20
MSM8226 is switched to generic RPMPD_ indices, to allow dropping the
 duplicate platform-specific constants.
 
 On MSM8960 two additional GSBIs and I2C controllers are introduced.
 Accelerometer, Magnetometer, NFC and Light/Proximity sensors are then
 enabled on the Samsung Galaxy Express.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAml6JRIACgkQCx85Pw2Z
 rcUe3Q/+IK1PvDC31p4QRztTvwiOR+SoCbeD07eojTi8ZqDteRzxL0z4xa76erH0
 zqdUhlPaGPu/eW2QJl+sMFFCBk+Q2L1jkIYwARC/PiVkBZ8VqUcnQoSs/dC85nfN
 mmEHR8cu87IIsRPcsxUsw0X52FTZLQ8ydgNv38/NuikcoN74+WH+xUDxAhQCcUhT
 pcYgjq78GC7wgw6MyyPrJ22ue9v4M+qJZ8ho8mhk16jcAS+u2CDA1M1uY6r+QWSY
 8CWQMbYb61xJAyKn0oaGHeCVH8VlmdXIKPTsCt2j1GJ7Yccp8MmzGRoWDYKxnJp2
 0Z82xDdbR2ajZ+l2S2aAsahQFTyPREVeM5Voju/0ietNKNIBYx9wJ3QuIhU5MSLj
 +uIp8QuJXOaDLRHvF05CheBhWM356WCTFJ1gGnZlpdZAE9AOi7tKRb/B1gyegdFG
 qajBbrrnkrogzcfBwswDwot59CS6JT6THvpyGtAvDwvW4izAGF+IIj2eeEyElbuE
 qwsD7N7dqnUCxl/va+QZFpiZTFjyqQQ6kMrO+pt2BsxGVhbJqrMrnM10fOyWpmh9
 ild64iYRSefo7GO33Eu4kAU0yo+ljKJPeLyIYnZpmyphaGIrfYbXvoKV1AXbAYx1
 9SpNW3c8jt656fVaD3PZDxO82YFg+8KxsT3ug3NYmfG8OOqsTCo=
 =DJx7
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAml6UNEACgkQmmx57+YA
 GNnCjA//VvR7rIvIl2hp/jgjGt1g69e7W8xaeBBOldyn8TPJf2wT6bG1Rposz9Ab
 NL33moN30IePmLP/4qDi4xPwnEH4nm4XxZ5UskpkXfG1om0EnnUOKvWXg6YAX0Yc
 4kRS9nHABUECTACCOQ3JR71uRV+bDBYcJXSVtlT1D+mQVYzrlz5fkRZ2Z5bQPkhT
 enxiBb1gbIeaWJc2VsZ5wAZw+KsQmYMN7E0Ot79nqqWVHE3uR/cYovSdSw1BJkDe
 5gXSGDMMQ1VX4qIo9JNH2WB+UlczLXvI7rk68uKawPGAb69xpALXg2QV5OfNpHL9
 9PNP6kvbmxzw8HqSRo5X7bf+OKaEDzzgrNUmMBeSbSmeazBDE1TBcVBhJLNncCWL
 PCC5GBT77I7e0nXuZdoX1uhAIa5RUXqoMRN/fwqZ2tl4eyv+aiyW7V+TPn6XIenN
 vYu5pxj897wu8gwWozcD/YST0gJpyh4BENTGU+ftZW3X3wcrTaW+4GIE95vNFlDJ
 7/dHcJayeKK0BPDHxcbKQJL9uscUvz6z0JkVZGsHBpQxbuhXJVfZPDXbZQLR10SG
 wQzZp+rlzI54cBg8D27u8RGcEKhSVssYByqN2aV16QFI/E+hK7Vmu2ArlsjDlaTg
 a0+6PsuTZHHHnjgjU1aAMhCRW081tYOR8YYOhtD76Q27hSf+1Sw=
 =NSMm
 -----END PGP SIGNATURE-----

Merge tag 'qcom-arm32-for-6.20-2' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into soc/dt

More Qualcomm Arm32 DeviceTree updated for v6.20

MSM8226 is switched to generic RPMPD_ indices, to allow dropping the
duplicate platform-specific constants.

On MSM8960 two additional GSBIs and I2C controllers are introduced.
Accelerometer, Magnetometer, NFC and Light/Proximity sensors are then
enabled on the Samsung Galaxy Express.

* tag 'qcom-arm32-for-6.20-2' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux:
  ARM: dts: qcom: switch to RPMPD_* indices
  ARM: dts: qcom: msm8960: expressatt: Add Accelerometer
  ARM: dts: qcom: msm8960: expressatt: Add Magnetometer
  ARM: dts: qcom: msm8960: expressatt: Add NFC
  ARM: dts: qcom: msm8960: expressatt: Add Light/Proximity Sensor
  ARM: dts: qcom: msm8960: Add GSBI2 & GSBI7

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-28 19:09:20 +01:00
Arnd Bergmann
a46cb1c79f Removal of the obsolete mshc aliases from RK3036.
-----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAmlycbsQHGhlaWtvQHNu
 dGVjaC5kZQAKCRDzpnnJnNEdgURRB/9KhwXfYdMjOCOR+sEQLt8iUQ8/b2FpqSeh
 T6BvQJjte/o0fmO0TjroHpaF5z96LQh7fAclKGbvMuaqh/cFc5AVygtaMPi7Zqmf
 RlVQTQhHdm4kbRTkT2Qe55lWcyvGzFiIqcVJ/kkek2Z2gYSDSogbqE9SuS/oMEEv
 jEpPysf3ZEiKAvFFkWDlHCwLSZsNFh8+VVEUSPruZkMFFPjp0c2g6WPG6cSyMDgo
 NLN4FsYsdLSaKJ19CZp9TWuyipA9FJ93NvxHS6X79LX7EUggPI4h2ZAoRTvtz9Ad
 oXy7IUqlOhdmlttY0EEi9NFzh0mRPmPnDnuXW0j0KgRi5+9o5c0P
 =RZ/Z
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAml6T84ACgkQmmx57+YA
 GNlu4w/9E2CX/hylk/FB1yMT03cRWYYcvLsi+G83A82yZI0nuggZAYXFccCrQMIX
 yv64vF8Cd5XtOsq88RK4LCpclTfSGvmSts2vzp0GARkPCj9OOqFDvC6402rXDgC5
 4Il8A9caScS5fvmCu97SAhW7atCMgGiu+Zg2lyWK+LVYya3Qw6auX8XlHBqoge+k
 6qyQdi2Py0UZFjjKa9jOEB4PIuzAGbLQ0DeTeLDIDn6Rrb5G3SK2domSvM4rdu4o
 D9cTVSfEtDAlYjvZD8zVspyH8GNVocKrClMAVwwbq5wSRb4Mdmd4tIixZCGIOEnq
 IeVnFs2ru9thgRan4BfWh5l6rGV5SLTGNNWI3kjiG8LzuXV80Ow4GwX0bli3YiGw
 1tHLzK6DVFjIug6qd3p4A+NJ09Tamd/5Feq0zGU8ZvER2+lxrc+hrxQT7ETUY8UM
 wF2dMqclci3+J4ImeAF4X5rA15Nr6Yy7L/mzpyrMn0tsbWitgLFxRZnPOm+SW+Y8
 6a0GCVTeMvNdhLsGrbQBhyvhf3wI9Fa/cQdlE8MeoNzeCruntdvha/KxnUoLvSiP
 7sj7WDArVa8hKh9W0R8e1nxeadIGhsi+LJ5it0BxM4XNGJShCzPyDzK/BCicL6QJ
 Oiv6X3DBvcxoB6YusumoUWosBcFB6i4M8PaXoINA+zgzgye89RY=
 =X911
 -----END PGP SIGNATURE-----

Merge tag 'v6.20-rockchip-dts32-2' of https://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into soc/dt

Removal of the obsolete mshc aliases from RK3036.

* tag 'v6.20-rockchip-dts32-2' of https://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  ARM: dts: rockchip: rk3036: remove mshc aliases

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-28 19:04:58 +01:00
Arnd Bergmann
2af1017ca6 Microchip AT91 device tree updates for v6.20
This update includes:
 - update the SAMA7D65 flexcom nodes to add the missing i2c, spi, and usart
   child nodes; the flexcom child nodes were also updated with DMA
   properties
 - add basic support for the PCB8385 board, based on LAN966X SoC
 - drop usb_a9g20-dab-mmx.dtsi as it is not used anywhere in the tree
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQTsZ8eserC1pmhwqDmejrg/N2X7/QUCaXSQjgAKCRCejrg/N2X7
 /ZHxAQDwi48o/wR6r7CGhFiXd/Kp7M4UyLLFRSCnRVF5fM2u0gEApSSxCRrlKkPZ
 ZNa4bNbNHYnojFjRUQhZ8ByW/07BIgU=
 =tUBH
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAml6TiEACgkQmmx57+YA
 GNnTzA/5Abj1y4boeRfY5OOj/j/rl1xfYKRkBv87fz9QU6XDob4oUx/1MM039md3
 vp9oEr9kYfTuzJbiYggZ1aLSU8E1zQ2+lzW2TEUKfQwxn+QimhIZjAibi4ydbkzI
 5r25WkBMz379qVp7jdoPEq7/yltAeHxB7Hyiva5RmWZy2QfjIPIV2HWpLK5TU2E1
 HC2Si9H7kxLivbAPQn/ZRW0zdRyZxqX8C3NgztfEm97DxicYnf1mTtGhnsVn1VBC
 Vmeb1LKdd/fiwX2WeJSoahE0x0sLOtkHKHIrmTiURqNNIKCCFg6QTESXR6DKTzOr
 C2yfnnb/U7633tXK4k1VXWakqDVAd1qNBD70pHkxdu9u1YDVL350geWdGKQWkW5i
 dGE/5zInuQjthE0TTIYERCDYgJne1ViQUrTVuIEb+h4b6YgIqHrLuw+vMwflxM6B
 ncbPsPJrJuWF7kwFZ7NA2GFVOyf7J2GAlQILBY3lGeu/uhSoVQ9FUMIdEXWmMMCP
 myAefEO3laMJEwphCF7UZ8yZPYTfyUtxZX+MbnBKTlrZCO8kai2bIGiCWLC46OIA
 VMvUQeXW8Ojem0SIq8Mid1AtBV1Y6ad7AULfz8+TBgQEr+ba1pOVGv7vlCK+s1om
 mZosRj5+2B5r39wgMW8Xhaa2g+xN/DNjTjrkeW3UHIGpKF1Lwyc=
 =Yszk
 -----END PGP SIGNATURE-----

Merge tag 'at91-dt-6.20' of https://git.kernel.org/pub/scm/linux/kernel/git/at91/linux into soc/dt

Microchip AT91 device tree updates for v6.20

This update includes:
- update the SAMA7D65 flexcom nodes to add the missing i2c, spi, and usart
  child nodes; the flexcom child nodes were also updated with DMA
  properties
- add basic support for the PCB8385 board, based on LAN966X SoC
- drop usb_a9g20-dab-mmx.dtsi as it is not used anywhere in the tree

* tag 'at91-dt-6.20' of https://git.kernel.org/pub/scm/linux/kernel/git/at91/linux:
  ARM: dts: microchip: Drop usb_a9g20-dab-mmx.dtsi
  ARM: dts: Add support for pcb8385
  dt-bindings: arm: at91: add lan966 pcb8385 board
  ARM: dts: microchip: sama7d65: add missing flexcom nodes
  ARM: dts: microchip: sama7d65: add fifo-size to usart
  ARM: dts: microchip: sama7d65: add dma properties to usart6

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-28 18:57:51 +01:00
Arnd Bergmann
16ea3c964e ARM: dts: OMAP updates for v6.20
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEe4dGDhaSf6n1v/EMWTcYmtP7xmUFAmlybigACgkQWTcYmtP7
 xmX9ZhAAm7ELMSru+gLcwmy7NfrIvIwMzF0YL/Bt6X9HqZicHTmLhFgJ0j5aLM5l
 3Ca5AN/Q2Ouj/Y/pKS4cA4I4I3l12Xs0ZIbPJ6rrYHURzv07VWCZI7hc/N4WBHLe
 r8uUPFZAXsXLCUtnUMKDwE/e4MGI/ZU3/bULUrpfRNo4IhkPx/d/S76wF40IRDw2
 tL5EgY8pMSWdd6GjteTA1vBvkQ9Qey7sOMEqfXp5y0Jt8oK7pIu68T7cR1qo2QWa
 b/NpY15fnj7Ax2JuoZlqgp47GFqIQHb5a2lwz2YhOl+h3UQvrCJ0fZhItFl+pu3g
 I5MrjMOQFSBSDOwFAELmgcSlCRa636Cetk18QRJJOtXKaG2sq9bi02clwPFjMQGy
 8DOzqNGrdAoP6GGxJ5VVrJfoTHwht/7E/Fu4lGKfjDQmhp3KPTEVIJDecxm7dwrH
 gIgGcKgKVjlReddZZnpmie6xLJDKA08156jk23USl1vzuLqEKr2eFciOWGBHF639
 Ff0FS+0+B0SDWGKA47OwY2rKelJpGCGJuAB2uGabr6RAlJqVqD4aRPxdZpElvYg2
 CT4KypRKSgPLKc4mHNHAg2d3r08h15WkrgJoIlSXrKKDEAi/ZzVt0fvPcdnpR2MT
 6rfCvxPF+D8qcUbRRPnVMAZkcqxRkA0cGTE/ZkmjPvwZnICOVBU=
 =Ir0O
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAml6SusACgkQmmx57+YA
 GNlPSw/9ECVaUmhgOyMC9sWYiyVuT84JRwBOrypzE3xQPaz/FqgEkgyfhpfYszzz
 SOrx7hVSZjzLL00dC28k7h9wxbIV8IduDIzxjMh9zn09726vHFrG0m8hR9WllK5o
 gZwWCzU+IpziUhL1ZdDkcDwCkchfzlmJNwPCaa2nzSd+OBD/thG0bAAslILXWr4M
 jyEcA1nRM2LW4Mmq+JJiwcDINPHu+4CLVV5PE0x0M355bHTi872ZEAFQQuc2maY4
 gnvodGX2njtHyvzwxqaFsQOCxoY5yuqCqPYkOAVA4HDOdrF6V+TzLUi6Z6EVOOQD
 QkvXO0pHR4w7VfDXxxzuP8tOvOobUu8Rq7nLcQ+r/9ZJIKknCTLtJ+yj51fjtmB1
 mWx9kATHfLMNXh3SU5LfydexUVyK2ZQfuNxcdViP2NuHwz37Y5AzifRqrTnBzVZ8
 LT7l2qp1v6ig5CwE3ZQ0CQs7HP1/SBZlV+xyPq/T41H8HizznL6GT/14VXhOq0dz
 RvkroFylzOtAxHddH3uTxEsbjhmkIaHv4chyZpcOpYN2G4a+CukitWCaimxoC43C
 7WWCw259Tpt/ul44sA4DLlijwCbXZhfS5r4mopf7z+LlnIrmIEFNcE6zNDuQ04P4
 D9jms4TRuT7Jywhjz1vfbtoG/WLcolOU3rmoEa1UWdMb2qwmrls=
 =3czD
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v6.20/dt-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap into soc/dt

ARM: dts: OMAP updates for v6.20

* tag 'omap-for-v6.20/dt-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap:
  ARM: dts: omap: dra7: Remove bogus #syscon-cells property
  ARM: dts: ti/omap: omap*: fix watchdog node names
  ARM: dts: ti: Drop unused .dtsi
  ARM: dts: Drop am335x-base0033 devicetree
  ARM: dts: tps65910: Add gpio & interrupt properties
  ARM: dts: omap: enable panic-indicator option
  ARM: dts: ti/omap: omap4-epson-embt2ws: add powerbutton

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-28 18:44:08 +01:00
Arnd Bergmann
d69af478d2 Allwinner device tree changes for 6.20
Not many changes this cycle.
 
 - The A523 family of SoCs gained support for SPI controllers.
 - Some cleanup of old ARM device tree files to fix DT binding validation
   errors.
 - D1 and A100 SoCs gained support for their LED controller. This was
   from a couple years ago. The driver made it in, but the DT patches
   were missed.
 - D1 and T113 SoCs gained support for the internal thermal sensor.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE2nN1m/hhnkhOWjtHOJpUIZwPJDAFAmlyYQwQHHdlbnNAa2Vy
 bmVsLm9yZwAKCRA4mlQhnA8kMFqoD/kBtqBUjxCfaFQRfAwn7COEaAaSzA+aITsH
 V4x8YKgnuO2UohU/hc2H4K1VjWbOWTSmmolcpx/X4zg2ZrlpLOSsKlrPHOefrkEv
 VwtDDCkg6V/uaKzvAD23CoEwmCBCidu1giErSXsdPx8eh4LNcX+7iTgGdkQWV1dg
 w8YfOs8b6RLuajg2SRgsMIBMTrcIEwE9gwoRZZLTDbXWtT7QlfkxQcXvu22dhJHp
 m7zSowBLqNvA7sT0bq1ue1q58EEMWRTF7Tx55ssNp6j5O1peYQLc3if/5j5371RQ
 M0MCLZidzmGd/WXHwstWr8WpYuVjrjApRPmE5xE6vMFVTPwWb7192FJE2zHahLu4
 gsdSp8D80Ktma3PM2w6iKFMNHsDtUb2ec1ZuXEMVEadoqwFKDw+4611PW8vZZaPm
 BpFut9ZyKq9mx+5of471MQlc3eUZMgKKZqrX29k8Ycm3hoKl2iix9h46/082x5s+
 APuFgfztNDNe6B4Zb18UgM+q7oo1Aa8tOBdguVoK4wlN0HLDCX9WCMdm6zqTLgAz
 CmThLzhILlaxrdEIg2HkuoviYH3sDgqljIZl0t4PwcYCJgjlg4fidVuak6Lqul9x
 hXcc2sOR+Yh3hfPinjlR1Nq3bLElHvaGOLySC1vWFahZSuqspkjyZBLlmubTpvUA
 IMwo4kdZrQ==
 =cdhO
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAml6SpYACgkQmmx57+YA
 GNkBKQ//fWsWf/YMInaMA1vMorES5pEsYrZ8Tyagfbeziekqrr+XZOMHWhwc5HjS
 OOSSvJsxCpL2ox1WwvCUAOwPXGAaSCmnfQyGPn90vmj9G+McyqIiAOwO8EXZnOUw
 6pFZztTEJrShQOBYROdNtxnRvimOslWQZCnCGODCa7iRkovKLDPO8dOt6BXCnVNt
 LHu3sXp50BFw2qIEUdnpVo7cGPaWC/yOUuoRqJrF2YBzn0sddye7I8ZF2TamVREx
 EpVoRgnxvkvDe7w4WPEqaz0qujbZWsSvaQfcd2/D+pSIiI/wjhqdkV3u+QBiP5qZ
 UmfrzliXn8Rb+1UG2Ftx/jQ+0hZ6I4i/vEUnQTulgKv6nakId5w5gL8Vhyh+TY57
 ZardyEuoQgAdhW0uoUJyQkV+Q9VZ0vurAxlDPDkcCIrpaWQeDuWl1p6EOAmtK8+N
 ADPzYAuoE4uNfnYIHbYodfXbILR5wFk8XZ5sL95Kku6YbpYkzRsSHDSdRYTzm8ox
 ST74jNrl2TyrJ5iRIDPhxw+IeYFAXP9PVsvPVICTOi+ssQApM1yjBysPNZJpnC/1
 om9Cf7DPFMhSDu+S1EyKgaym2uUB92ooMz7qS7wYOpJdoCk+b5KRIgxLUeU9JGAV
 K50/oNs3BfGLS3B1yxCPraeUR086jJU4BVuk/OwXN9N60IRG8S4=
 =X0CG
 -----END PGP SIGNATURE-----

Merge tag 'sunxi-dt-for-6.20' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into soc/dt

Allwinner device tree changes for 6.20

Not many changes this cycle.

- The A523 family of SoCs gained support for SPI controllers.
- Some cleanup of old ARM device tree files to fix DT binding validation
  errors.
- D1 and A100 SoCs gained support for their LED controller. This was
  from a couple years ago. The driver made it in, but the DT patches
  were missed.
- D1 and T113 SoCs gained support for the internal thermal sensor.

* tag 'sunxi-dt-for-6.20' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
  riscv: dts: allwinner: d1: Add CPU thermal sensor and zone
  ARM: dts: allwinner: Replace status "failed" with "fail"
  riscv: dts: allwinner: d1: Add RGB LEDs to boards
  riscv: dts: allwinner: d1: Add LED controller node
  arm64: dts: allwinner: a100: Add LED controller node
  ARM: dts: allwinner: sun5i-a13-utoo-p66: delete "power-gpios" property
  arm64: dts: allwinner: t527: orangepi-4a: Enable SPI-NOR flash
  arm64: dts: allwinner: sun55i: Add SPI controllers

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-28 18:42:44 +01:00
Arnd Bergmann
91e93edc63 Amlogic ARM DT for v6.20:
- drop iio-hwmon in favour of generic-adc-thermal
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEPVPGJshWBf4d9CyLd9zb2sjISdEFAmlyOPYACgkQd9zb2sjI
 SdEHrw/+IXwVP3ixYhz/obnXqfOLHhP3A08DUyT04JUnUAyYKnpqC3XySTGrJ96F
 ZRdXWbAfNuVoS9AmHFGpmImxy7DaYW7EBpmfS/CfvuJU6cyc1MHtYQGtLxfMdf3r
 BMwQ3SN9geG4ITJPSsU19wtenfaDIUWROyGiuNkTl/0VTyfTFTCD9db9dWj5VEwh
 qae5yWQ3mcCj8LTGMKwxLZKcUWNelfnH9VL72KtOmlkq8ivLgYR3QiItz5pkXVK9
 kMrHsvIPnv3RDBOjh9CrON/ustJINm8MG2d30Y/i3ruJI+9AmW3FGCW9qXLMi4v/
 AnuqnzVF9JCsnRs2o5dWepYCpScFqhWx9QDwuJ7J0a/Mok+cQyF4XQZ9IuGQfC7i
 FB3ieqFId4LK6MgdXIYfbHDu/9XIpenZNMkCto4DWsx065ApbiCBaJchpwCE3X5b
 XdBeF/w1RCQ840HZqJwdiy4jValqulzd2VT/9fcB9hXHE6gJ6e/mc5+i+YHjPppB
 m461Jthzupb3GwhOEk1WLjmd9YEWjPnvNqUGJvkbko0gPgutWlSNhKaFyhZbYNgy
 wykwFTkB2VCG/H3vwaMfIY/36ahTQIIh2XjyqMLHXGm0vTqiIfZzxsuD1fzLu/1A
 fkgMjuErVEjCPoeonlUbf1QNX27372TFh+e4/UPclsuLtVVVLpk=
 =d2tq
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAml6SnQACgkQmmx57+YA
 GNlizxAAkN7/OuaqmyL1sn02YKSXJFjtrQGukVoH/YRfVWx9+HLNCJCevkGzv97e
 MSFvWMkZlf7rQ2teLAouUzxxJmvt6mH8QesB0RzZkuhi+iL1W0uqZOJa/w15+xRk
 jT2tbjHusF+pPP5hSsPcyIrvyAvJaQWuZ++M4EUXZ+VZaV6GjCL0ILb/fUcPfpHQ
 3Co5b3uzHfQxCpf+LsXA32IMnY3tc64EkHsg8mjUj0P/rtBdM0ueMRn2HM7zon20
 XYvVDTA7hmZLQlT7pacrgxnmabQ1xcX+29kKwK7OGBsq0j7wHDpWGc38blA8lKB3
 p9Jr0A53mgFFNos/cdyv4y9TcPFkZZbM6ZklFXGMreHaZRP5Dmy7PGZSiJzl5QPj
 fDY+1x6lxLbkb6kdcdF+RJ0J34flWkmEhGRlpJPnQTUytC/B0zhIPlk6J2GoU/x2
 cX+Cq0I8DgtTl0ifyEiQwd+pHp97Mn16E5qyKBuuJZf8jneGpuhIN3gKXVwBPeu2
 uf4u8oy5KMaEj1DdRGYcrSPbWbG66fnrVqw7xE74iJoDGpsOi2dPfsqHk3vOfAjg
 Yw+DwbOONeMawirF5Ymt2cMQA24MNNTWA9bGIogUfJsnOyB4vsCOJiNSy//ADkZ2
 6bNNsbtu6+0xU5NPh8Fe335qA8DniPi9ja4O4lQ70FrA+KgCiLg=
 =gwvh
 -----END PGP SIGNATURE-----

Merge tag 'amlogic-arm-dt-for-v6.20' of https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux into soc/dt

Amlogic ARM DT for v6.20:
- drop iio-hwmon in favour of generic-adc-thermal

* tag 'amlogic-arm-dt-for-v6.20' of https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux:
  ARM: dts: meson: drop iio-hwmon in favour of generic-adc-thermal

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-28 18:42:10 +01:00
Arnd Bergmann
b2a29633f4 This pull request contains Broadcom ARM-based SoCs DT changes for 6.20,
please pull the following:
 
 - Rob fixes the simple-bus node names in the BCM2711 .dtsi file
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEm+Rq3+YGJdiR9yuFh9CWnEQHBwQFAmlxS1kACgkQh9CWnEQH
 BwQowBAAhQVEA2CbnYw41rScol49Yaj5c3yKfLU1Y3MxGzF8LzR2AQu+cwk0HHXR
 yMAoOEVD8n+KwuhWa1/cp2A1obey8TxtjHZAiKsYnG5ycgMg5JTS5lORJTg/CT9M
 Hlh89WLCWDXCEZHDIGDNn1iSq+6RXYfMT4t09tpbqlZ2aKOi4SBeZ7D9xwn0IqQ9
 LjtjgymN2rNSqO7EeXQPxnjpEJQj0RfxM6/mtsWSobaKaf1JdZ7M9Rt/YI3tKEN9
 /Y0nZazkBfi5lCWygL9kPjjnlX6wGPRyhiuGwNiytP70Gy+Cka7cffG2ao+lQgly
 ftRFlHVgEjdSf4DKWsYXlEQ2oTvtRmx7L5FEjg3uCYXUW/GN2ctYsiaVMHBPx0JQ
 6z+TuOC/FGBMiEDoZI90sEfz/q7Hahqx+SIDiZwjlpWlxNJBteffzHp0kuVMp5es
 88vuKHnbkwCcxLw9fRY77WATEvvYRu4v3JTD3qEcrSW71UkqjBEiKT5wibGOx5UJ
 GQlL8KpPJX4J16+0KDUcmoVWnlQRo19Hxj6b/T+j8CIRbvXkFRd7e2iybRenYSt3
 bP7pw3V4vETVvLgdab37i8CV4j4wAnCxkLwQfWcfDdJPxn10jwQNS6isU+/VgxCz
 GuJCs0CdICK1yGqwSmyBIBhNVWJWFSMRehmnfRk2RkiX1sWmscA=
 =bvtT
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAml6RvUACgkQmmx57+YA
 GNn1/xAAglqMyhkgqA4vS51fadq0/34+/1S+YXZSEP+pOwlNNgmMj0hnd9tQ3Ms5
 UnKJ3tWtgQNc08Mqzfy3ijfjbTVBvqgCXsO92uP2NlJKWdFV7u9YWG2oX7u/4bQr
 6k0nlh1sGZlQogMgPKqMd/jwJvgwzfxAR1xua+gLiBNnYO4gh85f+Gflj3MQj/1/
 X7TjZutzEEU2fA1kzU0IzW2bwZgN6bI2dMn0FfNWv1Xmicz91Ud4BvorwgXVwDYS
 6+wzN17Un3+J2Za0LT5xRVs6bd+taD/Ymns/JcA82hw9gC8y/Y2HuStczHcX/DQ1
 WeEYR21GB/f/zL9d39P1HFMrlgWWoPBuIIFMs2HqwgS9UzVxiX3OePCif0UIVtSi
 /Sdzd/7yFTsh0yBeJ3OXurUfJkfCtJL1LFHarD901QCrhxXhdAd3pQM8MGX4/FSe
 ymUNUko+haEsWdlviT2hVilJHu+hWtfM8xE05rPDTYfJdzw7oghLzMnATtd/OLfS
 uBRTjv2RT0xEL7/l4sod6jHtxlFJpVpe/UEN9YlKRpJoHBILsPHanRjTLir5vrvQ
 zSqI7Dp0bi+jcRzfpMm4AX6eswsOCk6m3FJ+Eeb+1hEfQ8dNPMG6xr15PBzOfWQJ
 hNUCI+L7hwgSTWjxavDCK2gAaqLDy8j5ZWvkD2gCi6of6wlIPZw=
 =Vak/
 -----END PGP SIGNATURE-----

Merge tag 'arm-soc/for-6.20/devicetree' of https://github.com/Broadcom/stblinux into soc/dt

This pull request contains Broadcom ARM-based SoCs DT changes for 6.20,
please pull the following:

- Rob fixes the simple-bus node names in the BCM2711 .dtsi file

* tag 'arm-soc/for-6.20/devicetree' of https://github.com/Broadcom/stblinux:
  ARM: dts: broadcom: bcm2711: Fix 'simple-bus' node names

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-28 18:27:13 +01:00
Arnd Bergmann
1092e5c0d1 STM32 DT for v6.20, round 1
Highlights:
 ----------
 
 - MCU:
   - Update/add Led support on ST boards.
 
 - MPU:
   - STM32MP13:
     - Add boot led and red led on ST DK board.
 
   - STMP32MP15:
     - Add boot led and red led on ST DK boards.
     - Add SPI1 sleep pinctrl group.
 
   - STM32MP23:
     - Add green ,orange and boot leds on ST boards.
     - Add SPI, I2C, DCMIPP and CSI instances to CLUSTER_PD
       power domain.
     - Enable analog-filter to all I2C instances.
 
   - STM32MP25:
     - Add green ,orange and boot leds on ST boards.
     - Add SPI, I2C, DCMIPP and CSI instances to CLUSTER_PD
       power domain.
     - Enable analog-filter to all I2C instances.
     - Add LPDDR/DDR channels to ST boards.
 -----BEGIN PGP SIGNATURE-----
 
 iQJRBAABCgA7FiEEctl9+nxzUSUqdELdf5rJavIecIUFAmlvehkdHGFsZXhhbmRy
 ZS50b3JndWVAZm9zcy5zdC5jb20ACgkQf5rJavIecIVXyg/9FTPNpAMFzYJqDeDY
 pb+94UFLQZkcLo2lLBNUL3/dD3ArsLCidMkVaU/oVbHzYKhzseWxMvFtVb37GCb4
 tiOaZxTVgsnVVVjbtf+p+K8CZ+FDI5o0SZa/Ge9PJz0enyGYSB9DuI7QWmGUd+FK
 OklNsdVwQmxk3uNE9pRqe7bPi0JxKtwNF5/D5USgZHBQYfHk8szDHqgvyoUjChbQ
 oKkn4MGsoNCYc5c9BoSTeQ69IlJugivX0QmhNUtGhoFwvnGPxw3PfaWt8Ts64ToK
 S0D83JBxHLG/fbD6B4y5HlSm3vog5K5kXb2Hiy0FVvsSvknYRIuR7Ih7+HcXt6rX
 K6HjSUXY8r1bAcgeu634hIp961KdFA+PLmFEh6ZDgEzL6cXFhXf8eaHhJqZHmZlC
 V7AM0mh2O0xL43jLwVNCFolCPszZe8wDpyTJvfnMcQDmLuYFyV6qVOdpidDMusiC
 stlH/K2Av82uJCkNerMY/K6N06HYfLbuMVFN8jajfa7Zf50jY357EFkGWL49sXRF
 5rB50eBDVxG/ii49ODEKnMRlyD2GKSNLGE8moU0Q2M3jEnuZ3YY21rmoBAgZUJGs
 og/g/ls4l1+UxLwSUJdzo+2T4Tv5lnUpfvcDhXgbDC7pCejd11wjM0osE16HoZf2
 IR/jW/l+60CM+QJ/cJirX2hFcJQ=
 =fwdw
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAml6NCsACgkQmmx57+YA
 GNno7BAAjnR73eMOGwmj0v3h/Fgzn0B/mJVmD3lEMLMtkjHd9WXWjDu7ubKD6ufZ
 WYRfaFMqSwrXYX6x0F3EfzW3LZjHasWSSFcAJMVgLNywqiQEYvX6ArvyLBDLi8wd
 7XrE7wGgpoQ5U/TTyaFgo23LF3EFVqfQuUwFzqzEy7eQL0sLLCn4arb84PPPszGn
 SCrDS+lB1Me/+hOHItB+FHETbpavCkD3H9HbCzfXIanwcHMBp/iwz4HDxkry9KS6
 bwQl22qnjPXQOvLHb+ooh7bWm0JA82Oed1FSm99hZIBY63N1TsCLm3Y6yTPX8Qve
 PwHtfJMcV99lm9bR0UCZ+Q9ENzDHtvlD/CvYC7kbxmu/6WHHPdWwV4rUoIWvMb/8
 KPoa9j0BbV2aKIuYwjWqsO4X8Ir26jc+T3+gwZkh/Y13EFgR8DPK8QB6/eT+DlzS
 Mf/6dBvdprCMA/BfM6sZ/Mzhgc3fN2xucBtFOeEaezbb5C05wvOAzhUt+ytwg2Nj
 pIvC5uctX/Q1QWHnSHpEXgo1pqWm4k37gFv1CvH5KaaAj0k/H0424QiqrmIG2cn6
 2/9TcXiLwuBd4yFOf5Vyy3aQLrMFHN6DhA5PGAhyI9NvWSUh0XvBSOiOsshWrz39
 /yeSq6rxcbXr5huHsXTMyw55huR9a3fPpwJ2ctqlkovWIYWqBr4=
 =ttY4
 -----END PGP SIGNATURE-----

Merge tag 'stm32-dt-for-v6.20-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32 into soc/dt

STM32 DT for v6.20, round 1

Highlights:
----------

- MCU:
  - Update/add Led support on ST boards.

- MPU:
  - STM32MP13:
    - Add boot led and red led on ST DK board.

  - STMP32MP15:
    - Add boot led and red led on ST DK boards.
    - Add SPI1 sleep pinctrl group.

  - STM32MP23:
    - Add green ,orange and boot leds on ST boards.
    - Add SPI, I2C, DCMIPP and CSI instances to CLUSTER_PD
      power domain.
    - Enable analog-filter to all I2C instances.

  - STM32MP25:
    - Add green ,orange and boot leds on ST boards.
    - Add SPI, I2C, DCMIPP and CSI instances to CLUSTER_PD
      power domain.
    - Enable analog-filter to all I2C instances.
    - Add LPDDR/DDR channels to ST boards.

* tag 'stm32-dt-for-v6.20-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32: (31 commits)
  arm/arm64: dts: st: Drop unused .dtsi
  arm64: STM32: drop an undefined Kconfig symbol
  arm64: dts: st: Minor whitespace cleanup
  arm64: dts: st: Use hyphen in node names
  arm64: dts: st: add power-domain of dcmipp in stm32mp231.dtsi
  arm64: dts: st: add power-domain of dcmipp in stm32mp251.dtsi
  dt-bindings: media: st: dcmipp: add 'power-domains' property
  arm64: dts: st: add power-domain of csi in stm32mp231.dtsi
  arm64: dts: st: add power-domain of csi in stm32mp251.dtsi
  dt-bindings: media: st: csi: add 'power-domains' property
  ARM: dts: stm32: add spi1 sleep state pinctrl on stm32mp157c-ev1
  arm64: dts: st: add DDR channel to stm32mp257f-ev1 board
  arm64: dts: st: add LPDDR channel to stm32mp257f-dk board
  arm64: dts: st: enable i2c analog-filter in stm32mp231.dtsi
  arm64: dts: st: enable i2c analog-filter in stm32mp251.dtsi
  arm64: dts: st: add power-domains in all i2c of stm32mp231.dtsi
  arm64: dts: st: add power-domains in all i2c of stm32mp251.dtsi
  dt-bindings: i2c: st,stm32-i2c: add 'power-domains' property
  arm64: dts: st: add power-domains in all spi of stm32mp231.dtsi
  arm64: dts: st: add power-domains in all spi of stm32mp251.dtsi
  ...

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-28 17:04:28 +01:00
Mike Rapoport (Microsoft)
4267739cab arch, mm: consolidate initialization of SPARSE memory model
Every architecture calls sparse_init() during setup_arch() although the
data structures created by sparse_init() are not used until the
initialization of the core MM.

Beside the code duplication, calling sparse_init() from architecture
specific code causes ordering differences of vmemmap and HVO
initialization on different architectures.

Move the call to sparse_init() from architecture specific code to
free_area_init() to ensure that vmemmap and HVO initialization order is
always the same.

Link: https://lkml.kernel.org/r/20260111082105.290734-25-rppt@kernel.org
Signed-off-by: Mike Rapoport (Microsoft) <rppt@kernel.org>
Cc: Alexander Gordeev <agordeev@linux.ibm.com>
Cc: Alex Shi <alexs@kernel.org>
Cc: Andreas Larsson <andreas@gaisler.com>
Cc: "Borislav Petkov (AMD)" <bp@alien8.de>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: David Hildenbrand <david@kernel.org>
Cc: David S. Miller <davem@davemloft.net>
Cc: Dinh Nguyen <dinguyen@kernel.org>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Guo Ren <guoren@kernel.org>
Cc: Heiko Carstens <hca@linux.ibm.com>
Cc: Helge Deller <deller@gmx.de>
Cc: Huacai Chen <chenhuacai@kernel.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Johannes Berg <johannes@sipsolutions.net>
Cc: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Klara Modin <klarasmodin@gmail.com>
Cc: Liam Howlett <liam.howlett@oracle.com>
Cc: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>
Cc: Magnus Lindholm <linmag7@gmail.com>
Cc: Matt Turner <mattst88@gmail.com>
Cc: Max Filippov <jcmvbkbc@gmail.com>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Michal Simek <monstr@monstr.eu>
Cc: Muchun Song <muchun.song@linux.dev>
Cc: Oscar Salvador <osalvador@suse.de>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
Cc: Pratyush Yadav <pratyush@kernel.org>
Cc: Richard Weinberger <richard@nod.at>
Cc: "Ritesh Harjani (IBM)" <ritesh.list@gmail.com>
Cc: Russell King <linux@armlinux.org.uk>
Cc: Stafford Horne <shorne@gmail.com>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vasily Gorbik <gor@linux.ibm.com>
Cc: Vineet Gupta <vgupta@kernel.org>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Will Deacon <will@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2026-01-26 20:02:18 -08:00