Commit Graph

70742 Commits

Author SHA1 Message Date
Linus Torvalds
e70140ba0d Get rid of 'remove_new' relic from platform driver struct
The continual trickle of small conversion patches is grating on me, and
is really not helping.  Just get rid of the 'remove_new' member
function, which is just an alias for the plain 'remove', and had a
comment to that effect:

  /*
   * .remove_new() is a relic from a prototype conversion of .remove().
   * New drivers are supposed to implement .remove(). Once all drivers are
   * converted to not use .remove_new any more, it will be dropped.
   */

This was just a tree-wide 'sed' script that replaced '.remove_new' with
'.remove', with some care taken to turn a subsequent tab into two tabs
to make things line up.

I did do some minimal manual whitespace adjustment for places that used
spaces to line things up.

Then I just removed the old (sic) .remove_new member function, and this
is the end result.  No more unnecessary conversion noise.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2024-12-01 15:12:43 -08:00
Linus Torvalds
6a34dfa15d Kbuild updates for v6.13
- Add generic support for built-in boot DTB files
 
  - Enable TAB cycling for dialog buttons in nconfig
 
  - Fix issues in streamline_config.pl
 
  - Refactor Kconfig
 
  - Add support for Clang's AutoFDO (Automatic Feedback-Directed
    Optimization)
 
  - Add support for Clang's Propeller, a profile-guided optimization.
 
  - Change the working directory to the external module directory for M=
    builds
 
  - Support building external modules in a separate output directory
 
  - Enable objtool for *.mod.o and additional kernel objects
 
  - Use lz4 instead of deprecated lz4c
 
  - Work around a performance issue with "git describe"
 
  - Refactor modpost
 -----BEGIN PGP SIGNATURE-----
 
 iQJJBAABCgAzFiEEbmPs18K1szRHjPqEPYsBB53g2wYFAmdKGgEVHG1hc2FoaXJv
 eUBrZXJuZWwub3JnAAoJED2LAQed4NsGrFoQAIgioJPRG+HC6bGmjy4tL4bq1RAm
 78nbD12grrAa+NvQGRZYRs264rWxBGwrNfGGS9BDvlWJZ3fmKEuPlfCIxC0nkKk8
 LVLNxSVvgpHE47RQ+E4V+yYhrlZKb4aWZjH3ZICn7vxRgbQ5Veq61aatluVHyn9c
 I8g+APYN/S1A4JkFzaLe8GV7v5OM3+zGSn3M9n7/DxVkoiNrMOXJm5hRdRgYfEv/
 kMppheY2PPshZsaL+yLAdrJccY5au5vYE/v8wHkMtvM/LF6YwjgqPVDRFQ30BuLM
 sAMMd6AUoopiDZQOpqmXYukU0b0MQPswg3jmB+PWUBrlsuydRa8kkyPwUaFrDd+w
 9d0jZRc8/O/lxUdD1AefRkNcA/dIJ4lTPr+2NpxwHuj2UFo0gLQmtjBggMFHaWvs
 0NQRBPlxfOE4+Htl09gyg230kHuWq+rh7xqbyJCX+hBOaZ6kI2lryl6QkgpAoS+x
 KDOcUKnsgGMGARQRrvCOAXnQs+rjkW8fEm6t7eSBFPuWJMK85k4LmxOog8GVYEdM
 JcwCnCHt9TtcHlSxLRnVXj2aqGTFNLJXE1aLyCp9u8MxZ7qcx01xOuCmwp6FRzNq
 ghal7ngA58Y/S4K/oJ+CW2KupOb6CFne8mpyotpYeWI7MR64t0YWs4voZkuK46E2
 CEBfA4PDehA4BxQe
 =GDKD
 -----END PGP SIGNATURE-----

Merge tag 'kbuild-v6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild

Pull Kbuild updates from Masahiro Yamada:

 - Add generic support for built-in boot DTB files

 - Enable TAB cycling for dialog buttons in nconfig

 - Fix issues in streamline_config.pl

 - Refactor Kconfig

 - Add support for Clang's AutoFDO (Automatic Feedback-Directed
   Optimization)

 - Add support for Clang's Propeller, a profile-guided optimization.

 - Change the working directory to the external module directory for M=
   builds

 - Support building external modules in a separate output directory

 - Enable objtool for *.mod.o and additional kernel objects

 - Use lz4 instead of deprecated lz4c

 - Work around a performance issue with "git describe"

 - Refactor modpost

* tag 'kbuild-v6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (85 commits)
  kbuild: rename .tmp_vmlinux.kallsyms0.syms to .tmp_vmlinux0.syms
  gitignore: Don't ignore 'tags' directory
  kbuild: add dependency from vmlinux to resolve_btfids
  modpost: replace tdb_hash() with hash_str()
  kbuild: deb-pkg: add python3:native to build dependency
  genksyms: reduce indentation in export_symbol()
  modpost: improve error messages in device_id_check()
  modpost: rename alias symbol for MODULE_DEVICE_TABLE()
  modpost: rename variables in handle_moddevtable()
  modpost: move strstarts() to modpost.h
  modpost: convert do_usb_table() to a generic handler
  modpost: convert do_of_table() to a generic handler
  modpost: convert do_pnp_device_entry() to a generic handler
  modpost: convert do_pnp_card_entries() to a generic handler
  modpost: call module_alias_printf() from all do_*_entry() functions
  modpost: pass (struct module *) to do_*_entry() functions
  modpost: remove DEF_FIELD_ADDR_VAR() macro
  modpost: deduplicate MODULE_ALIAS() for all drivers
  modpost: introduce module_alias_printf() helper
  modpost: remove unnecessary check in do_acpi_entry()
  ...
2024-11-30 13:41:50 -08:00
Linus Torvalds
9d5daef3b3 ARM updates for 6.13-rc1
- add dev_is_amba() function to allow conversions during the next cycle
 - improve PREEMPT_RT performance with VFP
 - KASAN fixes for vmap stack
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEuNNh8scc2k/wOAE+9OeQG+StrGQFAmdI+gkACgkQ9OeQG+St
 rGSyrQ/+PxDrzd06IFsbICV5xrf3JJBQDdwbLzHhhMpRdg84/nxO60YyrbMqFO/H
 koDI9WmNU8nN0K5WcYwpVFG23oajktHGLNSnJRcp2KEolQ83abjzh1n0UfkA3TCV
 TZhPLL6FjRcwqRKX1dV2d/bZHzhQ4FS/nv85vyAhcUcSq0R6boS4Q8d3EftKEhly
 nlch4vl/aMVCXgCBB7Y6/SF8E9Xzx5ZTFkqnyZZptY+3hM8ZQbJJt2ppAU0Qo2JP
 gtS2FapBVozcKsWdA2pq2yU3gFQJC3rzMToms6z/LrdPhjs0RlCklVuv25HUoiY1
 y0sXaoXzIPmmpkLGXwQx3qEJZM3rC1rR/i+yEFZB4/NzelN3TPYkSeI918gW+74B
 S1zluO20BDL+2MsDQ+1AKPPq3iOVuNrmTiOQm8kdllChOoS41pMURjWm1pthRc4p
 ScPSDqWHcmS4SrH+ftbT9ma4RskVindPtxsAf01mAbmLC92jj0WWSiFWaxydhkz1
 430rxjFDKGZSBDoRbbxe9bE0NGWOfaInqrM3FwVNRXeZHdpUACGWU0Cx2AagtljY
 9adFwCXdWc8r/Y9nZxBnkr+RQs01zJALcb44lqj70JYkUvoLPPNExIRwyh8vupjb
 zjgQj1Cdj2bnfnv1PB/DGK63aGUpELlXkKFkKionJWcilDdmtiY=
 =RJA2
 -----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:

 - add dev_is_amba() function to allow conversions during the next cycle

 - improve PREEMPT_RT performance with VFP

 - KASAN fixes for vmap stack

* tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rmk/linux:
  ARM: 9431/1: mm: Pair atomic_set_release() with _read_acquire()
  ARM: 9430/1: entry: Do a dummy read from VMAP shadow
  ARM: 9429/1: ioremap: Sync PGDs for VMALLOC shadow
  ARM: 9426/1: vfp: Move sending signals outside of vfp_state_hold()ed section.
  ARM: 9425/1: vfp: Use vfp_state_hold() in vfp_support_entry().
  ARM: 9424/1: vfp: Use vfp_state_hold() in vfp_sync_hwstate().
  ARM: 9423/1: vfp: Provide vfp_state_hold() for VFP locking.
  ARM: 9415/1: amba: Add dev_is_amba() function and export it for modules
2024-11-29 10:31:18 -08:00
Masahiro Yamada
214c0eea43 kbuild: add $(objtree)/ prefix to some in-kernel build artifacts
$(objtree) refers to the top of the output directory of kernel builds.

This commit adds the explicit $(objtree)/ prefix to build artifacts
needed for building external modules.

This change has no immediate impact, as the top-level Makefile
currently defines:

  objtree         := .

This commit prepares for supporting the building of external modules
in a different directory.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Reviewed-by: Nicolas Schier <nicolas@fjasle.eu>
2024-11-27 09:38:27 +09:00
Linus Torvalds
2d32fba02e This is the bulk of the pin control changes for v6.13:
No core changes this time.
 
 New drivers:
 
 - Xlinix Versal pin control driver.
 
 - Ocelot LAN969x pin control driver.
 
 - T-Head TH1520 RISC-V SoC pin control driver.
 
 - Qualcomm SM8750, IPQ5424, QCS8300, SAR2130P and QCS615 SoC
   pin control drivers.
 
 - Qualcomm SM8750 LPASS (low power audio subsystem)
   pin control driver.
 
 - Qualcomm PM8937 mixsig IC pin control support, GPIO and
   MPP (multi-purpose-pin).
 
 - Samsung Exynos8895 and Exynos9810 SoC pin control driver.
 
 - SpacemiT K1 SoC pin control driver.
 
 - Airhoa EN7581 IC pin control driver.
 
 Improvements:
 
 - The Renesas subdriver now supports schmitt-trigger and
   open drain pin configurations if the hardware supports it.
 
 - Support GPIOF and GPIOG banks in the Aspeed G6 SoC.
 
 - Support the DSW community in the Intel Elkhartlake SoC.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEElDRnuGcz/wPCXQWMQRCzN7AZXXMFAmdAhqsACgkQQRCzN7AZ
 XXOX/BAAkTh2Xwh4t9u9p0wjvXcY9bu+O204vUaQNJr3zphqLegJihChriU8LiQN
 7BTQcYMHMsoVXRzFsoRBSocfJmcFE6amoHemSkCaYDCrr0fchk61AzkivUMvMHBi
 8qBFB1kYbk/Cmk2JwOEpf16gT45wTdIIOfqB6X9ikRdIUwCgjMH77OYHilXF0zPO
 vmikY8fnIj/0r9hdVqD5bcpeHo8XHZpHBMvr1NfMUehfhGoJNLZF+xyg+fosnoDH
 om92ugKC856jVP0Hl9kfL58ggKuBI2YPlm2OW9VxAQZu7EMvlCeUjv8R+sNpXrpI
 rod84A62/K8OYcQLW+UIA2ykty3LFfh90wKtpkKV0z/7jtEfBBzCMsln/mCUVHEl
 3zoo0n6n68r0i1zKAFf45JGJExeJv5U0lBfFGm8PnOOouZW3IYJcgHQfBswaPzRD
 lEsT37jUEF+qE0VWqBx3xTz/w2Kxs5XHoF4P5UwE5TCAA90hjMLPdXXzn6bNiuww
 4T8iOT5NFwHqlIKJxRBYJDDuc+EtQksmKhbDXilKgg0h+n/YmQN12CFKy5d+Ch57
 mT/M6bP4FCsTOioUEALUVLMzUN7FJjPHN7GO1nwpA6Rmb8yMaYZJHxglfjduo83y
 PNOsaLRY3BhukBh74B6OTq7SKgvH1Bj1VwEY87JhYZLmDE49xjw=
 =F7bj
 -----END PGP SIGNATURE-----

Merge tag 'pinctrl-v6.13-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl

Pull pin control updates from Linus Walleij:
 "No core changes this time.

  New drivers:

   - Xlinix Versal pin control driver

   - Ocelot LAN969x pin control driver

   - T-Head TH1520 RISC-V SoC pin control driver

   - Qualcomm SM8750, IPQ5424, QCS8300, SAR2130P and QCS615 SoC pin
     control drivers

   - Qualcomm SM8750 LPASS (low power audio subsystem) pin control
     driver

   - Qualcomm PM8937 mixsig IC pin control support, GPIO and MPP
     (multi-purpose-pin)

   - Samsung Exynos8895 and Exynos9810 SoC pin control driver

   - SpacemiT K1 SoC pin control driver

   - Airhoa EN7581 IC pin control driver

  Improvements:

   - The Renesas subdriver now supports schmitt-trigger and open drain
     pin configurations if the hardware supports it

   - Support GPIOF and GPIOG banks in the Aspeed G6 SoC

   - Support the DSW community in the Intel Elkhartlake SoC"

* tag 'pinctrl-v6.13-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (105 commits)
  pinctrl: airoha: Use unsigned long for bit search
  pinctrl: k210: Undef K210_PC_DEFAULT
  pinctrl: qcom: spmi: fix debugfs drive strength
  pinctrl: qcom: Add sm8750 pinctrl driver
  dt-bindings: pinctrl: qcom: Add sm8750 pinctrl
  pinctrl: cy8c95x0: remove unneeded goto labels
  pinctrl: cy8c95x0: embed iterator to the for-loop
  pinctrl: cy8c95x0: Use temporary variable for struct device
  pinctrl: cy8c95x0: use flexible sleeping in reset function
  pinctrl: cy8c95x0: switch to using devm_regulator_get_enable()
  pinctrl: cy8c95x0: Use 2-argument strscpy()
  dt-bindings: pinctrl: sx150xq: allow gpio line naming
  pinctrl: single: add marvell,pxa1908-padconf compatible
  dt-bindings: pinctrl: pinctrl-single: add marvell,pxa1908-padconf compatible
  dt-bindings: pinctrl: correct typo of description for cv1800
  pinctrl: qcom: spmi-mpp: Add PM8937 compatible
  dt-bindings: pinctrl: qcom,pmic-mpp: Document PM8937 compatible
  pinctrl: qcom-pmic-gpio: add support for PM8937
  dt-bindings: pinctrl: qcom,pmic-gpio: add PM8937
  pinctrl: Use of_property_present() for non-boolean properties
  ...
2024-11-25 17:24:51 -08:00
Linus Torvalds
f5f4745a7f - The series "resource: A couple of cleanups" from Andy Shevchenko
performs some cleanups in the resource management code.
 
 - The series "Improve the copy of task comm" from Yafang Shao addresses
   possible race-induced overflows in the management of task_struct.comm[].
 
 - The series "Remove unnecessary header includes from
   {tools/}lib/list_sort.c" from Kuan-Wei Chiu adds some cleanups and a
   small fix to the list_sort library code and to its selftest.
 
 - The series "Enhance min heap API with non-inline functions and
   optimizations" also from Kuan-Wei Chiu optimizes and cleans up the
   min_heap library code.
 
 - The series "nilfs2: Finish folio conversion" from Ryusuke Konishi
   finishes off nilfs2's folioification.
 
 - The series "add detect count for hung tasks" from Lance Yang adds more
   userspace visibility into the hung-task detector's activity.
 
 - Apart from that, singelton patches in many places - please see the
   individual changelogs for details.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQTTMBEPP41GrTpTJgfdBJ7gKXxAjgUCZ0L6lQAKCRDdBJ7gKXxA
 jmEIAPwMSglNPKRIOgzOvHh8MUJW1Dy8iKJ2kWCO3f6QTUIM2AEA+PazZbUd/g2m
 Ii8igH0UBibIgva7MrCyJedDI1O23AA=
 =8BIU
 -----END PGP SIGNATURE-----

Merge tag 'mm-nonmm-stable-2024-11-24-02-05' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm

Pull non-MM updates from Andrew Morton:

 - The series "resource: A couple of cleanups" from Andy Shevchenko
   performs some cleanups in the resource management code

 - The series "Improve the copy of task comm" from Yafang Shao addresses
   possible race-induced overflows in the management of
   task_struct.comm[]

 - The series "Remove unnecessary header includes from
   {tools/}lib/list_sort.c" from Kuan-Wei Chiu adds some cleanups and a
   small fix to the list_sort library code and to its selftest

 - The series "Enhance min heap API with non-inline functions and
   optimizations" also from Kuan-Wei Chiu optimizes and cleans up the
   min_heap library code

 - The series "nilfs2: Finish folio conversion" from Ryusuke Konishi
   finishes off nilfs2's folioification

 - The series "add detect count for hung tasks" from Lance Yang adds
   more userspace visibility into the hung-task detector's activity

 - Apart from that, singelton patches in many places - please see the
   individual changelogs for details

* tag 'mm-nonmm-stable-2024-11-24-02-05' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm: (71 commits)
  gdb: lx-symbols: do not error out on monolithic build
  kernel/reboot: replace sprintf() with sysfs_emit()
  lib: util_macros_kunit: add kunit test for util_macros.h
  util_macros.h: fix/rework find_closest() macros
  Improve consistency of '#error' directive messages
  ocfs2: fix uninitialized value in ocfs2_file_read_iter()
  hung_task: add docs for hung_task_detect_count
  hung_task: add detect count for hung tasks
  dma-buf: use atomic64_inc_return() in dma_buf_getfile()
  fs/proc/kcore.c: fix coccinelle reported ERROR instances
  resource: avoid unnecessary resource tree walking in __region_intersects()
  ocfs2: remove unused errmsg function and table
  ocfs2: cluster: fix a typo
  lib/scatterlist: use sg_phys() helper
  checkpatch: always parse orig_commit in fixes tag
  nilfs2: convert metadata aops from writepage to writepages
  nilfs2: convert nilfs_recovery_copy_block() to take a folio
  nilfs2: convert nilfs_page_count_clean_buffers() to take a folio
  nilfs2: remove nilfs_writepage
  nilfs2: convert checkpoint file to be folio-based
  ...
2024-11-25 16:09:48 -08:00
Linus Torvalds
7f4f3b14e8 Add Rust support for trace events:
- Allow Rust code to have trace events
 
   Trace events is a popular way to debug what is happening inside the kernel
   or just to find out what is happening. Rust code is being added to the
   Linux kernel but it currently does not support the tracing infrastructure.
   Add support of trace events inside Rust code.
 -----BEGIN PGP SIGNATURE-----
 
 iIoEABYIADIWIQRRSw7ePDh/lE+zeZMp5XQQmuv6qgUCZ0DjqhQccm9zdGVkdEBn
 b29kbWlzLm9yZwAKCRAp5XQQmuv6qrLlAPsF6t/c1nHSGTKDv9FJDJe4JHdP7e+U
 7X0S8BmSTKFNAQD+K2TEd0bjVP7ug8dQZBT+fveiFr+ARYxAwJ3JnEFjUwg=
 =Ab+T
 -----END PGP SIGNATURE-----

Merge tag 'trace-rust-v6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace

Pull rust trace event support from Steven Rostedt:
 "Allow Rust code to have trace events

  Trace events is a popular way to debug what is happening inside the
  kernel or just to find out what is happening. Rust code is being added
  to the Linux kernel but it currently does not support the tracing
  infrastructure. Add support of trace events inside Rust code"

* tag 'trace-rust-v6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace:
  rust: jump_label: skip formatting generated file
  jump_label: rust: pass a mut ptr to `static_key_count`
  samples: rust: fix `rust_print` build making it a combined module
  rust: add arch_static_branch
  jump_label: adjust inline asm to be consistent
  rust: samples: add tracepoint to Rust sample
  rust: add tracepoint support
  rust: add static_branch_unlikely for static_key_false
2024-11-25 15:44:29 -08:00
Linus Torvalds
5c00ff742b - The series "zram: optimal post-processing target selection" from
Sergey Senozhatsky improves zram's post-processing selection algorithm.
   This leads to improved memory savings.
 
 - Wei Yang has gone to town on the mapletree code, contributing several
   series which clean up the implementation:
 
 	- "refine mas_mab_cp()"
 	- "Reduce the space to be cleared for maple_big_node"
 	- "maple_tree: simplify mas_push_node()"
 	- "Following cleanup after introduce mas_wr_store_type()"
 	- "refine storing null"
 
 - The series "selftests/mm: hugetlb_fault_after_madv improvements" from
   David Hildenbrand fixes this selftest for s390.
 
 - The series "introduce pte_offset_map_{ro|rw}_nolock()" from Qi Zheng
   implements some rationaizations and cleanups in the page mapping code.
 
 - The series "mm: optimize shadow entries removal" from Shakeel Butt
   optimizes the file truncation code by speeding up the handling of shadow
   entries.
 
 - The series "Remove PageKsm()" from Matthew Wilcox completes the
   migration of this flag over to being a folio-based flag.
 
 - The series "Unify hugetlb into arch_get_unmapped_area functions" from
   Oscar Salvador implements a bunch of consolidations and cleanups in the
   hugetlb code.
 
 - The series "Do not shatter hugezeropage on wp-fault" from Dev Jain
   takes away the wp-fault time practice of turning a huge zero page into
   small pages.  Instead we replace the whole thing with a THP.  More
   consistent cleaner and potentiall saves a large number of pagefaults.
 
 - The series "percpu: Add a test case and fix for clang" from Andy
   Shevchenko enhances and fixes the kernel's built in percpu test code.
 
 - The series "mm/mremap: Remove extra vma tree walk" from Liam Howlett
   optimizes mremap() by avoiding doing things which we didn't need to do.
 
 - The series "Improve the tmpfs large folio read performance" from
   Baolin Wang teaches tmpfs to copy data into userspace at the folio size
   rather than as individual pages.  A 20% speedup was observed.
 
 - The series "mm/damon/vaddr: Fix issue in
   damon_va_evenly_split_region()" fro Zheng Yejian fixes DAMON splitting.
 
 - The series "memcg-v1: fully deprecate charge moving" from Shakeel Butt
   removes the long-deprecated memcgv2 charge moving feature.
 
 - The series "fix error handling in mmap_region() and refactor" from
   Lorenzo Stoakes cleanup up some of the mmap() error handling and
   addresses some potential performance issues.
 
 - The series "x86/module: use large ROX pages for text allocations" from
   Mike Rapoport teaches x86 to use large pages for read-only-execute
   module text.
 
 - The series "page allocation tag compression" from Suren Baghdasaryan
   is followon maintenance work for the new page allocation profiling
   feature.
 
 - The series "page->index removals in mm" from Matthew Wilcox remove
   most references to page->index in mm/.  A slow march towards shrinking
   struct page.
 
 - The series "damon/{self,kunit}tests: minor fixups for DAMON debugfs
   interface tests" from Andrew Paniakin performs maintenance work for
   DAMON's self testing code.
 
 - The series "mm: zswap swap-out of large folios" from Kanchana Sridhar
   improves zswap's batching of compression and decompression.  It is a
   step along the way towards using Intel IAA hardware acceleration for
   this zswap operation.
 
 - The series "kasan: migrate the last module test to kunit" from
   Sabyrzhan Tasbolatov completes the migration of the KASAN built-in tests
   over to the KUnit framework.
 
 - The series "implement lightweight guard pages" from Lorenzo Stoakes
   permits userapace to place fault-generating guard pages within a single
   VMA, rather than requiring that multiple VMAs be created for this.
   Improved efficiencies for userspace memory allocators are expected.
 
 - The series "memcg: tracepoint for flushing stats" from JP Kobryn uses
   tracepoints to provide increased visibility into memcg stats flushing
   activity.
 
 - The series "zram: IDLE flag handling fixes" from Sergey Senozhatsky
   fixes a zram buglet which potentially affected performance.
 
 - The series "mm: add more kernel parameters to control mTHP" from
   Maíra Canal enhances our ability to control/configuremultisize THP from
   the kernel boot command line.
 
 - The series "kasan: few improvements on kunit tests" from Sabyrzhan
   Tasbolatov has a couple of fixups for the KASAN KUnit tests.
 
 - The series "mm/list_lru: Split list_lru lock into per-cgroup scope"
   from Kairui Song optimizes list_lru memory utilization when lockdep is
   enabled.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQTTMBEPP41GrTpTJgfdBJ7gKXxAjgUCZzwFqgAKCRDdBJ7gKXxA
 jkeuAQCkl+BmeYHE6uG0hi3pRxkupseR6DEOAYIiTv0/l8/GggD/Z3jmEeqnZaNq
 xyyenpibWgUoShU2wZ/Ha8FE5WDINwg=
 =JfWR
 -----END PGP SIGNATURE-----

Merge tag 'mm-stable-2024-11-18-19-27' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm

Pull MM updates from Andrew Morton:

 - The series "zram: optimal post-processing target selection" from
   Sergey Senozhatsky improves zram's post-processing selection
   algorithm. This leads to improved memory savings.

 - Wei Yang has gone to town on the mapletree code, contributing several
   series which clean up the implementation:
	- "refine mas_mab_cp()"
	- "Reduce the space to be cleared for maple_big_node"
	- "maple_tree: simplify mas_push_node()"
	- "Following cleanup after introduce mas_wr_store_type()"
	- "refine storing null"

 - The series "selftests/mm: hugetlb_fault_after_madv improvements" from
   David Hildenbrand fixes this selftest for s390.

 - The series "introduce pte_offset_map_{ro|rw}_nolock()" from Qi Zheng
   implements some rationaizations and cleanups in the page mapping
   code.

 - The series "mm: optimize shadow entries removal" from Shakeel Butt
   optimizes the file truncation code by speeding up the handling of
   shadow entries.

 - The series "Remove PageKsm()" from Matthew Wilcox completes the
   migration of this flag over to being a folio-based flag.

 - The series "Unify hugetlb into arch_get_unmapped_area functions" from
   Oscar Salvador implements a bunch of consolidations and cleanups in
   the hugetlb code.

 - The series "Do not shatter hugezeropage on wp-fault" from Dev Jain
   takes away the wp-fault time practice of turning a huge zero page
   into small pages. Instead we replace the whole thing with a THP. More
   consistent cleaner and potentiall saves a large number of pagefaults.

 - The series "percpu: Add a test case and fix for clang" from Andy
   Shevchenko enhances and fixes the kernel's built in percpu test code.

 - The series "mm/mremap: Remove extra vma tree walk" from Liam Howlett
   optimizes mremap() by avoiding doing things which we didn't need to
   do.

 - The series "Improve the tmpfs large folio read performance" from
   Baolin Wang teaches tmpfs to copy data into userspace at the folio
   size rather than as individual pages. A 20% speedup was observed.

 - The series "mm/damon/vaddr: Fix issue in
   damon_va_evenly_split_region()" fro Zheng Yejian fixes DAMON
   splitting.

 - The series "memcg-v1: fully deprecate charge moving" from Shakeel
   Butt removes the long-deprecated memcgv2 charge moving feature.

 - The series "fix error handling in mmap_region() and refactor" from
   Lorenzo Stoakes cleanup up some of the mmap() error handling and
   addresses some potential performance issues.

 - The series "x86/module: use large ROX pages for text allocations"
   from Mike Rapoport teaches x86 to use large pages for
   read-only-execute module text.

 - The series "page allocation tag compression" from Suren Baghdasaryan
   is followon maintenance work for the new page allocation profiling
   feature.

 - The series "page->index removals in mm" from Matthew Wilcox remove
   most references to page->index in mm/. A slow march towards shrinking
   struct page.

 - The series "damon/{self,kunit}tests: minor fixups for DAMON debugfs
   interface tests" from Andrew Paniakin performs maintenance work for
   DAMON's self testing code.

 - The series "mm: zswap swap-out of large folios" from Kanchana Sridhar
   improves zswap's batching of compression and decompression. It is a
   step along the way towards using Intel IAA hardware acceleration for
   this zswap operation.

 - The series "kasan: migrate the last module test to kunit" from
   Sabyrzhan Tasbolatov completes the migration of the KASAN built-in
   tests over to the KUnit framework.

 - The series "implement lightweight guard pages" from Lorenzo Stoakes
   permits userapace to place fault-generating guard pages within a
   single VMA, rather than requiring that multiple VMAs be created for
   this. Improved efficiencies for userspace memory allocators are
   expected.

 - The series "memcg: tracepoint for flushing stats" from JP Kobryn uses
   tracepoints to provide increased visibility into memcg stats flushing
   activity.

 - The series "zram: IDLE flag handling fixes" from Sergey Senozhatsky
   fixes a zram buglet which potentially affected performance.

 - The series "mm: add more kernel parameters to control mTHP" from
   Maíra Canal enhances our ability to control/configuremultisize THP
   from the kernel boot command line.

 - The series "kasan: few improvements on kunit tests" from Sabyrzhan
   Tasbolatov has a couple of fixups for the KASAN KUnit tests.

 - The series "mm/list_lru: Split list_lru lock into per-cgroup scope"
   from Kairui Song optimizes list_lru memory utilization when lockdep
   is enabled.

* tag 'mm-stable-2024-11-18-19-27' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm: (215 commits)
  cma: enforce non-zero pageblock_order during cma_init_reserved_mem()
  mm/kfence: add a new kunit test test_use_after_free_read_nofault()
  zram: fix NULL pointer in comp_algorithm_show()
  memcg/hugetlb: add hugeTLB counters to memcg
  vmstat: call fold_vm_zone_numa_events() before show per zone NUMA event
  mm: mmap_lock: check trace_mmap_lock_$type_enabled() instead of regcount
  zram: ZRAM_DEF_COMP should depend on ZRAM
  MAINTAINERS/MEMORY MANAGEMENT: add document files for mm
  Docs/mm/damon: recommend academic papers to read and/or cite
  mm: define general function pXd_init()
  kmemleak: iommu/iova: fix transient kmemleak false positive
  mm/list_lru: simplify the list_lru walk callback function
  mm/list_lru: split the lock to per-cgroup scope
  mm/list_lru: simplify reparenting and initial allocation
  mm/list_lru: code clean up for reparenting
  mm/list_lru: don't export list_lru_add
  mm/list_lru: don't pass unnecessary key parameters
  kasan: add kunit tests for kmalloc_track_caller, kmalloc_node_track_caller
  kasan: change kasan_atomics kunit test as KUNIT_CASE_SLOW
  kasan: use EXPORT_SYMBOL_IF_KUNIT to export symbols
  ...
2024-11-23 09:58:07 -08:00
Linus Torvalds
c01f664e4c \n
-----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCAAdFiEEq1nRK9aeMoq1VSgcnJ2qBz9kQNkFAmc/WXkACgkQnJ2qBz9k
 QNnwjAf/c8K3Vhw9RuKMtPF0K+gC//0mLsq+WmgrtXfMLvbSymrACnwHFJzpNGeS
 iEqCYlCC7vlqzPXpsVRlFeHpM52oVnE/wFF0Hp1h/Y1oqbRSzur6iSl4epmmBN+K
 AsPoWEXco7ABqtrhoZb0b1n7io9VorHN4nLhO6KWD83nZAawJDWgSw0sNCqcT6to
 vVxR3baP/EhONxNquxXe2lxq26dMilehmTk4AOyYslNYb0iG4r18TPyNb7fmuuKG
 M+nFfMnM9EPH8lnmgx6Mg/X77d/eZoq4pMRmeqSsroB5k/AQJnNrGweNL1+yr7OY
 adWNOMGWdNNQXPFgGbL5yZwNZ64kRA==
 =Eq1B
 -----END PGP SIGNATURE-----

Merge tag 'reiserfs_delete' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs

Pull reiserfs removal from Jan Kara:
 "The deprecation period of reiserfs is ending at the end of this year
  so it is time to remove it"

* tag 'reiserfs_delete' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
  reiserfs: The last commit
2024-11-21 09:50:18 -08:00
Linus Torvalds
43fb83c17b ARM: soc updates for 6.13
The SoC specific code updates for 6.13 are fairly minimal. One Broadcom
 SoC model gains automatic configuration for the debug uarg as we have
 on many other machines, the remaining changes are trivial cleanups.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmc+D8IACgkQYKtH/8kJ
 UicuyhAAqR3ps9ukDj4jIVrQthV76rMb6HfEF4gQ4qxIjS3uLp5wfqjxzeTI7bKY
 ntrzU9rAxgMdTuRDVqONCxjgBvtg7pG9kXlbndVhl11RdryEeO/fat99V2mPN6yS
 0t9tR6lxVcz3VRI5qcyCRYLRicDXyeNklsMwEhfSolS1hWbTG0b/qtn8oa+vQ7bs
 U33rnvudrC36Wpy4HU6XIissq1RgleUrGqC6L2M3OLSEOlS8tM4RBA215VaDiWs9
 fP8dYhdMVWmlif9pXi1L1M3uqEE3ahVDwzqg1bSc0LmX7nn4rXGGgu/YGiALuW4t
 KmsoTdcwaPxiQR+WVp3G6EEVxumFpMfX1dGiJ8ZagaI+pbXpjHej6B+xhWCRgjfp
 eTK0YeGjDduEOaaozGys5NdqoGFKPpl+npLD1rQGBtizCJO1x6zINAyuRgNHhyYa
 640Bn77O7Rs+41qao2Nnr4mfbur73d3q+K1qOy4Tx3BL5fQGyz4PwUkT/wG4C++j
 esCBO2lA9opw9ZJzBSFWx6ez0GtEW+kVUf3dNDSXxYawVNBrIoV61xnG7Xcfqz0x
 RFSWTATWKLI34Px6fuorVxVw8xcGdQGgvbvIDbj2aiC8yXIbzeeSs8P9pEsakYD9
 eej8H6eRy/EnOwBC8yJXCHoAA31PqaO+aLI5Vf0p0m0Ibtv/1zQ=
 =lQ3B
 -----END PGP SIGNATURE-----

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

Pull ARM SoC updates from Arnd Bergmann:
 "The SoC specific code updates for 6.13 are fairly minimal.

  One Broadcom SoC model gains automatic configuration for the debug
  uarg as we have on many other machines, the remaining changes are
  trivial cleanups"

* tag 'soc-arm-6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
  ARM: imx: Switch to new sys-off handler API
  ARM: bcm: brcmstb: Drop custom init_irq callback
  ARM: bcm: Support BCMBCA debug UART
  ARM: zynq: Remove unused zynq_slcr_init() declaration
  ASoC: samsung: Remove obsoleted declaration for s3c64xx_ac97_setup_gpio
  ARM: samsung: Remove obsoleted declaration for s3c_hwmon_set_platdata
2024-11-20 15:47:22 -08:00
Linus Torvalds
06e47dce8f soc: defconfig updates for 6.13
As usual, a few newly added device drivers get enabled in the
 arm32 multi_v7_defconfig and arm64 defconfig as well as a few of
 the SoC specific config files.
 
 The main visible change is the inclusion of (reduced) debug info
 by default in the 32-bit defconfig.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmc+EHIACgkQYKtH/8kJ
 Uid+ahAAnkQNh7m0+0l8O1DxLVjCVDb76f4r+dvYWBzBzOZoSvkLQzhKILGmgjFd
 tfLpWr7sfpgT7YPZxrwHK/muwpZ7rflTiC5P0qpgeo4VzO6VXv5r124uzYg0nEPo
 /t4hzCkAADKu80hNeDfaKFk9GbqvkOBKnO0PHpuTPGubiy3gU2cH6EvyqUYokvBM
 c0iD8fPtI5zb6oBju1oRFJtXIX6TJXXbQvjOIVmhz7cEsl/RAmPJLbbpgT/u8roR
 pCIHX1pqw1bURaUrBQiv33E266tF6kg9KYJUsGvXkykd0ifyXSOneYsxoadvO5x/
 +2Xrfj243aMMz9EDXd2oczdpuoPyGkyUeaaNy61EvgMzaYpf3B9B7g7mqfuyhaCs
 VvXbWIc3jpA3P8dbyBOZhQQF8NzHMP8Dj8ymQhN17FiwkQTDV6CtHHO8srkKSoYU
 IGgtNJce0IvLEz87VU9C1F6DA5dscdTRGrlDErv+2ap5IeyCtE4gJaFNO+/64wUk
 QUP+gphCqxMXQuLmOIrKV9dsslnChRM9qlgNaJQMbvKvT25xRIpNc9/mmVPWoAs+
 1A3wdHn/ZOvaFBcWwNHpZaNu/3ybHGp60wkejWCiEzhaLabXBsEoKOap7+1cWGTK
 IlVUiaJoNIYBoLACTqx42AATgn0TsNXj4NVHq3poiodi1/7wunw=
 =tElw
 -----END PGP SIGNATURE-----

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

Pull SoC defconfig updates from Arnd Bergmann:
 "As usual, a few newly added device drivers get enabled in the arm32
  multi_v7_defconfig and arm64 defconfig as well as a few of the SoC
  specific config files.

  The main visible change is the inclusion of (reduced) debug info by
  default in the 32-bit defconfig"

* tag 'soc-defconfig-6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
  ARM: imx_v6_v7_defconfig: Enable drivers for Kobo Clara 2E
  arm64: defconfig: Enable VBATTB clock and Renesas RTCA-3
  arm64: defconfig: Enable PCF857X GPIO expander
  arm64: defconfig: Enable sc7280 clock controllers
  ARM: configs: at91: enable PAC1934 driver as module
  ARM: multi_v7_defconfig: Enable debugging symbols by default
2024-11-20 15:44:56 -08:00
Linus Torvalds
9c39d5ab45 soc: devicetree updates for 6.13
This release adds the devicetree files for an impressive number of new
 SoC variants, though as expected these are all related to others we
 already support:
 
  - The microchip sam9x7 devicetree is now added, after the device driver
    and platform code has already made it in. This is likely the last ARMv5
    (!)  platform to ever get added, updating the 20+ year old at91/sam9
    platform wtih DDR3 memory and gigabit ethernet.
 
  - On the Apple platform, there are now devicetree files for a number of
    A-series SoCs in addition to the M-series ones, these are used
    primarily in phones and tablets, but are closely related to the
    already supported chips.
 
  - Samsung Exynos 8895 and Exynos 990 are more phone SoCs used in older
    Samsung Galaxy phones.
 
  - Qualcomm Snapdragon 778G (SM7325) is another phone SoC, closely related
    to the Snapdragon 7c+ Gen 3 (SC7280) used in low-end laptops.
 
  - Rockchip RK3528 and RK3576 are new variants of their TV box and Tablet
    chips, still using the older ARMv8.0 cores from RK3328/RK3399 but
    with a newer process and other improvements from the RK35xx (otherwise
    ARMv8.2) chips.  RK3566T and RK3399-S are also added, these are just
    lower-cost versions of their normal counterparts.
 
  - TI J742S2 is a feature-reduced version of the J784s4
    industrial/automotive SoC, with fewer CPU cores.
 
  - Sophgo SG2002 is an embedded SoC with one RISC-V (C906) and one ARM
    (Cortex-A53) core, at this point support is only added for running
    on the RISC-V side on the LicheeRV Nano board.
 
 A total of 92 new .dts files describing individual machines is added,
 which must be a new record. The majority of these is for the newly added
 chips above, notably all the Apple phones and tablets.  The other new
 machines include nine industrial/embedded boards with NXP i.MX6 or i.MX8
 SoCs, eight for Rockchips RK35XX and one or two each for Rockchips RV1109,
 RK3308, Allwinner A33, Tegra 234, Qualcomm qcs9100/sc8280xp/x1e80100,
 TI AM625 and Starfive JH7110.
 
 As usual there are also many newlyad added features in existing boards
 as well as cleanups and minor bugfixes.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmc92V4ACgkQYKtH/8kJ
 Uie7+xAA5BIu2fSl+cCCOLdWvNulgYJBZfgOC+1vay3A3zykTR5Hd/X4/GOetqb6
 uhCJ7MER0md2PBCdffN0JDuDnvBGdOEbHghsY3iqqwP4ad+bk4+Ib/dxgM0uid3t
 W2NykLvmXmjFJiwjvMKE4aSPi+lCskLehPC05IIJvM/DplGflIoq7Rf+q5WIvStT
 K5kpluJBD81oQkfBn7FwVJWeM6OZ1CZg413m0PNMoojd6SzyPVNGnd004qEHfwkv
 Ra1w9cHM2+zagPrkTrFp0bpxfUYwoXiP8uPq9crXrhgeq4JmQBHuTR0ek+mMC2nI
 aRgi91za8YPgC8APXks64BBqXCxHVse9n228MpldMAabURez5wMkufNFfQc6yLks
 AhQxD2joVFS+i/pE8WyFlS3/aopNUzIbqVyIhpYiYBLz8xQBSv7KjqySRufrBEhP
 lMA548uDQK5p1TRnl8L6cDXdHTN9MbqtREIozBeO20iolHJtqLBcw4erZFhwnJsP
 2QQVN9P8AXOE/U/RZcV8Wfm7kUoU4FI29G3XlmUnpBmCHQd3Ql2Xv56gaDaAtb3s
 hF83uTA8bKjby9Xu0c9JQREeNsLEmI/WwuUWlSEcn1cGBZ5ahg8FMta55H8tpX8O
 OizWoPviwUar7HFASA/ZvN0KoPgq/a8HWRXT+Q+/xBBqnHshtLk=
 =Ha1w
 -----END PGP SIGNATURE-----

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

Pull SoC devicetree updates from Arnd Bergmann:
 "This release adds the devicetree files for an impressive number of new
  SoC variants, though as expected these are all related to others we
  already support:

   - The microchip sam9x7 devicetree is now added, after the device
     driver and platform code has already made it in. This is likely the
     last ARMv5 (!) platform to ever get added, updating the 20+ year
     old at91/sam9 platform with DDR3 memory and gigabit ethernet.

   - On the Apple platform, there are now devicetree files for a number
     of A-series SoCs in addition to the M-series ones, these are used
     primarily in phones and tablets, but are closely related to the
     already supported chips.

   - Samsung Exynos 8895 and Exynos 990 are more phone SoCs used in
     older Samsung Galaxy phones.

   - Qualcomm Snapdragon 778G (SM7325) is another phone SoC, closely
     related to the Snapdragon 7c+ Gen 3 (SC7280) used in low-end
     laptops.

   - Rockchip RK3528 and RK3576 are new variants of their TV box and
     Tablet chips, still using the older ARMv8.0 cores from
     RK3328/RK3399 but with a newer process and other improvements from
     the RK35xx (otherwise ARMv8.2) chips. RK3566T and RK3399-S are also
     added, these are just lower-cost versions of their normal
     counterparts.

   - TI J742S2 is a feature-reduced version of the J784s4
     industrial/automotive SoC, with fewer CPU cores.

   - Sophgo SG2002 is an embedded SoC with one RISC-V (C906) and one ARM
     (Cortex-A53) core, at this point support is only added for running
     on the RISC-V side on the LicheeRV Nano board.

  A total of 92 new .dts files describing individual machines is added,
  which must be a new record. The majority of these is for the newly
  added chips above, notably all the Apple phones and tablets. The other
  new machines include nine industrial/embedded boards with NXP i.MX6 or
  i.MX8 SoCs, eight for Rockchips RK35XX and one or two each for
  Rockchips RV1109, RK3308, Allwinner A33, Tegra 234, Qualcomm
  qcs9100/sc8280xp/x1e80100, TI AM625 and Starfive JH7110.

  As usual there are also many newly added features in existing boards
  as well as cleanups and minor bugfixes"

* tag 'soc-dt-6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (718 commits)
  arm64: dts: apm: Remove unused and undocumented "bus_num" property
  arm: dts: spear13xx: Remove unused and undocumented "pl022,slave-tx-disable" property
  arm64: dts: amd: Remove unused and undocumented "amd,zlib-support" property
  arm64: dts: lg131x: Update spi clock properties
  arm64: dts: seattle: Update spi clock properties
  arm64: dts: rockchip: use less broad pinctrl for pcie3x1 on Radxa E25
  arm64: dts: rockchip: add Radxa ROCK 5C
  dt-bindings: arm: rockchip: add Radxa ROCK 5C
  arm64: dts: rockchip: orangepi-5-plus: Enable GPU
  arm64: dts: rockchip: enable USB3 on NanoPC-T6
  arm64: dts: rockchip: adapt regulator nodenames to preferred form
  arm64: dts: rockchip: Enable HDMI display for rk3588 Cool Pi GenBook
  arm64: dts: rockchip: Enable HDMI display for rk3588 Cool Pi 4B
  arm64: dts: rockchip: Enable HDMI0 for rk3588 Cool Pi CM5 EVB
  arm64: dts: rockchip: Enable HDMI on NanoPi R6C/R6S
  arm64: dts: rockchip: Enable GPU on NanoPi R6C/R6S
  arm64: dts: rockchip: Enable HDMI on Hardkernel ODROID-M2
  arm64: dts: rockchip: Remove non-removable flag from sdmmc on rk3576-sige5
  arm64: dts: allwinner: a100: perf1: Add eMMC and MMC node
  arm64: dts: allwinner: pinephone: Add mount matrix to accelerometer
  ...
2024-11-20 15:26:46 -08:00
Linus Torvalds
79caa6c88a asm-generic updates for 6.13
These are a number of unrelated cleanups, generally simplifying the
 architecture specific header files:
 
  - A series from Al Viro simplifies asm/vga.h, after it turns out that
    most of it can be generalized.
 
  - A series from Julian Vetter adds a common version of
    memcpy_{to,from}io() and memset_io() and changes most architectures
    to use that instead of their own implementation
 
  - A series from Niklas Schnelle concludes his work to make PC
    style inb()/outb() optional
 
  - Nicolas Pitre contributes improvements for the generic do_div()
    helper
 
  - Christoph Hellwig adds a generic version of page_to_phys()
    and phys_to_page(), replacing the slightly different architecture
    specific definitions.
 
  - Uwe Kleine-Koenig has a minor cleanup for ioctl definitions
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmc+Z0gACgkQYKtH/8kJ
 UicqzA/8CcqVdcWKlFAyiFI62DCkd3iYm/joNK3/JhvUIvVFvY+HI0+XpTeOEN1r
 dfYBNg/KTVSbia5MEEy28Lk5WdoA3X7p9E8NuYC1ik/qvH3Y0kXDU2NiRcJDwalq
 u56tGUwDITFUzRo47a4Z53JpV60FlGaUVjuKp1jJiOQkcs/iussVYuti8mNVb1ud
 1tf21TEAIywq43IC8CxevIRsBkJBqMhalaGWYgKw3ZTwXdiKaXed6RH7IjPodanN
 6b7R6aFEqlT7usFX9vLOYNRGzd3HIueXOT1iqiiGI1lm5u/iutxKH+8eS4q381oN
 WJL0jQdo4sv2MxtSHYrjpzPRQpSp/qrin29h3PVjwBjZF3i5WvFeTYgfjQEEkqe0
 fpTXjUsr5n1F1pGV90DtJHwaD5TxKD4VYFLDRCDGUiAnWPkZ7EYUBL3SA6GqEkXB
 1lVRPsEBo0y867/WQcoCZA/x7ANZDI6bDZ6fjumwx8OCZOHZeN6FGtqQJHcVZR5O
 +nu/j3I8YH1tZGKbA+wliyQwt/T60Oxs62HHcFzFLGakARwUEDYO53IGCJUByFwk
 kCrgNVvzFklwWpqqyTADqb5lkQKpZr5gIdpst185qttCQkb+EFWiCi9w2inXTjHl
 2oCc7Uf0cvoxnhVlJAw73eGTtpqS37KCWK+iNyrQbOfy+hgIv+w=
 =zEHk
 -----END PGP SIGNATURE-----

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

Pull asm-generic updates from Arnd Bergmann:
 "These are a number of unrelated cleanups, generally simplifying the
  architecture specific header files:

   - A series from Al Viro simplifies asm/vga.h, after it turns out that
     most of it can be generalized.

   - A series from Julian Vetter adds a common version of
     memcpy_{to,from}io() and memset_io() and changes most architectures
     to use that instead of their own implementation

   - A series from Niklas Schnelle concludes his work to make PC style
     inb()/outb() optional

   - Nicolas Pitre contributes improvements for the generic do_div()
     helper

   - Christoph Hellwig adds a generic version of page_to_phys() and
     phys_to_page(), replacing the slightly different architecture
     specific definitions.

   - Uwe Kleine-Koenig has a minor cleanup for ioctl definitions"

* tag 'asm-generic-3.13' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic: (24 commits)
  empty include/asm-generic/vga.h
  sparc: get rid of asm/vga.h
  asm/vga.h: don't bother with scr_mem{cpy,move}v() unless we need to
  vt_buffer.h: get rid of dead code in default scr_...() instances
  tty: serial: export serial_8250_warn_need_ioport
  lib/iomem_copy: fix kerneldoc format style
  hexagon: simplify asm/io.h for !HAS_IOPORT
  loongarch: Use new fallback IO memcpy/memset
  csky: Use new fallback IO memcpy/memset
  arm64: Use new fallback IO memcpy/memset
  New implementation for IO memcpy and IO memset
  watchdog: Add HAS_IOPORT dependency for SBC8360 and SBC7240
  __arch_xprod64(): make __always_inline when optimizing for performance
  ARM: div64: improve __arch_xprod_64()
  asm-generic/div64: optimize/simplify __div64_const32()
  lib/math/test_div64: add some edge cases relevant to __div64_const32()
  asm-generic: add an optional pfn_valid check to page_to_phys
  asm-generic: provide generic page_to_phys and phys_to_page implementations
  asm-generic/io.h: Remove I/O port accessors for HAS_IOPORT=n
  tty: serial: handle HAS_IOPORT dependencies
  ...
2024-11-20 15:13:02 -08:00
Linus Torvalds
e6de688e93 Devicetree updates for v6.13:
Bindings:
 
 - Enable dtc "interrupt_provider" warnings for binding examples.
   Fix the warnings in fsl,mu-msi and ti,sci-inta due to this.
 
 - Convert zii,rave-sp-wdt, zii,rave-sp-pwrbutton,  and
   altr,fpga-passive-serial to DT schema format
 
 - Add some documentation on the different forms of YAML text blocks
   which are a constant source of review comments
 
 - Fix some schema errors in constraints for arrays
 
 - Add compatibles for qcom,sar2130p-pdc and onnn,adt7462
 
 DT core:
 
 - Allow overlay kunit tests to run CONFIG_OF_OVERLAY=n
 
 - Add some warnings on deprecated address handling
 
 - Rework early_init_dt_scan() so the arch can pass in the phys address
   of the DTB as __pa() is not always valid to use. This fixes a warning
   for arm64 with kexec.
 
 - Add and use some new DT graph iterators for iterating over ports and
   endpoints
 
 - Rework reserved-memory handling to be sized dynamically for fixed
   regions
 
 - Optimize of_modalias() to avoid a strlen() call
 
 - Constify struct device_node and property pointers where ever possible
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEktVUI4SxYhzZyEuo+vtdtY28YcMFAmc7qaoACgkQ+vtdtY28
 YcN54g/+Ifz4hQTSWV+VBhihovMMPiQUdxZ+MfJfPnPcZ7NJzaTf+zqhZyS4wQou
 v0pdtyR0B1fCM/EvKaYD+1aTTAQFEIT5Dqac+9ePwqaYqSk+yCTxyzW9m+P3rTPV
 THo8SGRss7T+Rs+2WaUGxphTJItMGIRdbBvoqK+82EdKFXXKw2BSD8tlJTWwbTam
 9xkrpUzw7f4FvVY8vVhRyOd5i8/v+FH8D65DMIT6ME9zRn4MzKVzCg6udgYeCBld
 C2XbV+wnyewtjrN2IX+2uQ2mheb7yJu3AEI3iFR5x/sRrsSLpisxrUl38xOOpxrM
 XxYtHgE3omjagQ+y+L2PMthlKvhFrXVXIvhUH8xxje5z1Vyq3VMfiABkHlMpAnys
 5LY4xEhvqDkPNo65UmjMiHxGW/xtcKsmAZBOp+HLerZfCJIFvl380fi8mNg/Sjvz
 7ExCSpzCPsHASZg7QCTplU3BUtg+067Ch/k8Hsn/Og73Pqm3xH4IezQZKwweN9ZT
 LC6OQBI7C3Yt1hom9qgUcA4H4/aaPxTVV7i0DGuAKh8Lon6SaoX2yFpweUBgbsL/
 c9DIW4vbYBIGASxxUbHlNMKvPCKACKmpFXhsnH5Waj+VWSOwsJ8bjGpH8PfMKdFW
 dyJB/r94GqCGpCW7+FC1qGmXiQJGkCo89pKBVjSf4Kj45ht/76o=
 =NCYS
 -----END PGP SIGNATURE-----

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

Pull devicetree updates from Rob Herring:
 "Bindings:

   - Enable dtc "interrupt_provider" warnings for binding examples. Fix
     the warnings in fsl,mu-msi and ti,sci-inta due to this.

   - Convert zii,rave-sp-wdt, zii,rave-sp-pwrbutton, and
     altr,fpga-passive-serial to DT schema format

   - Add some documentation on the different forms of YAML text blocks
     which are a constant source of review comments

   - Fix some schema errors in constraints for arrays

   - Add compatibles for qcom,sar2130p-pdc and onnn,adt7462

  DT core:

   - Allow overlay kunit tests to run CONFIG_OF_OVERLAY=n

   - Add some warnings on deprecated address handling

   - Rework early_init_dt_scan() so the arch can pass in the phys
     address of the DTB as __pa() is not always valid to use. This fixes
     a warning for arm64 with kexec.

   - Add and use some new DT graph iterators for iterating over ports
     and endpoints

   - Rework reserved-memory handling to be sized dynamically for fixed
     regions

   - Optimize of_modalias() to avoid a strlen() call

   - Constify struct device_node and property pointers where ever
     possible"

* tag 'devicetree-for-6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (36 commits)
  of: Allow overlay kunit tests to run CONFIG_OF_OVERLAY=n
  dt-bindings: interrupt-controller: qcom,pdc: Add SAR2130P compatible
  of/address: Rework bus matching to avoid warnings
  of: WARN on deprecated #address-cells/#size-cells handling
  of/fdt: Don't use default address cell sizes for address translation
  dt-bindings: Enable dtc "interrupt_provider" warnings
  of/fdt: add dt_phys arg to early_init_dt_scan and early_init_dt_verify
  dt-bindings: cache: qcom,llcc: Fix X1E80100 reg entries
  dt-bindings: watchdog: convert zii,rave-sp-wdt.txt to yaml format
  dt-bindings: input: convert zii,rave-sp-pwrbutton.txt to yaml
  media: xilinx-tpg: use new of_graph functions
  fbdev: omapfb: use new of_graph functions
  gpu: drm: omapdrm: use new of_graph functions
  ASoC: audio-graph-card2: use new of_graph functions
  ASoC: audio-graph-card: use new of_graph functions
  ASoC: test-component: use new of_graph functions
  of: property: use new of_graph functions
  of: property: add of_graph_get_next_port_endpoint()
  of: property: add of_graph_get_next_port()
  of: module: remove strlen() call in of_modalias()
  ...
2024-11-20 13:19:25 -08:00
Linus Torvalds
bf9aa14fc5 A rather large update for timekeeping and timers:
- The final step to get rid of auto-rearming posix-timers
 
     posix-timers are currently auto-rearmed by the kernel when the signal
     of the timer is ignored so that the timer signal can be delivered once
     the corresponding signal is unignored.
 
     This requires to throttle the timer to prevent a DoS by small intervals
     and keeps the system pointlessly out of low power states for no value.
     This is a long standing non-trivial problem due to the lock order of
     posix-timer lock and the sighand lock along with life time issues as
     the timer and the sigqueue have different life time rules.
 
     Cure this by:
 
      * Embedding the sigqueue into the timer struct to have the same life
        time rules. Aside of that this also avoids the lookup of the timer
        in the signal delivery and rearm path as it's just a always valid
        container_of() now.
 
      * Queuing ignored timer signals onto a seperate ignored list.
 
      * Moving queued timer signals onto the ignored list when the signal is
        switched to SIG_IGN before it could be delivered.
 
      * Walking the ignored list when SIG_IGN is lifted and requeue the
        signals to the actual signal lists. This allows the signal delivery
        code to rearm the timer.
 
     This also required to consolidate the signal delivery rules so they are
     consistent across all situations. With that all self test scenarios
     finally succeed.
 
   - Core infrastructure for VFS multigrain timestamping
 
     This is required to allow the kernel to use coarse grained time stamps
     by default and switch to fine grained time stamps when inode attributes
     are actively observed via getattr().
 
     These changes have been provided to the VFS tree as well, so that the
     VFS specific infrastructure could be built on top.
 
   - Cleanup and consolidation of the sleep() infrastructure
 
     * Move all sleep and timeout functions into one file
 
     * Rework udelay() and ndelay() into proper documented inline functions
       and replace the hardcoded magic numbers by proper defines.
 
     * Rework the fsleep() implementation to take the reality of the timer
       wheel granularity on different HZ values into account. Right now the
       boundaries are hard coded time ranges which fail to provide the
       requested accuracy on different HZ settings.
 
     * Update documentation for all sleep/timeout related functions and fix
       up stale documentation links all over the place
 
     * Fixup a few usage sites
 
   - Rework of timekeeping and adjtimex(2) to prepare for multiple PTP clocks
 
     A system can have multiple PTP clocks which are participating in
     seperate and independent PTP clock domains. So far the kernel only
     considers the PTP clock which is based on CLOCK TAI relevant as that's
     the clock which drives the timekeeping adjustments via the various user
     space daemons through adjtimex(2).
 
     The non TAI based clock domains are accessible via the file descriptor
     based posix clocks, but their usability is very limited. They can't be
     accessed fast as they always go all the way out to the hardware and
     they cannot be utilized in the kernel itself.
 
     As Time Sensitive Networking (TSN) gains traction it is required to
     provide fast user and kernel space access to these clocks.
 
     The approach taken is to utilize the timekeeping and adjtimex(2)
     infrastructure to provide this access in a similar way how the kernel
     provides access to clock MONOTONIC, REALTIME etc.
 
     Instead of creating a duplicated infrastructure this rework converts
     timekeeping and adjtimex(2) into generic functionality which operates
     on pointers to data structures instead of using static variables.
 
     This allows to provide time accessors and adjtimex(2) functionality for
     the independent PTP clocks in a subsequent step.
 
   - Consolidate hrtimer initialization
 
     hrtimers are set up by initializing the data structure and then
     seperately setting the callback function for historical reasons.
 
     That's an extra unnecessary step and makes Rust support less straight
     forward than it should be.
 
     Provide a new set of hrtimer_setup*() functions and convert the core
     code and a few usage sites of the less frequently used interfaces over.
 
     The bulk of the htimer_init() to hrtimer_setup() conversion is already
     prepared and scheduled for the next merge window.
 
   - Drivers:
 
     * Ensure that the global timekeeping clocksource is utilizing the
       cluster 0 timer on MIPS multi-cluster systems.
 
       Otherwise CPUs on different clusters use their cluster specific
       clocksource which is not guaranteed to be synchronized with other
       clusters.
 
     * Mostly boring cleanups, fixes, improvements and code movement
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCgAxFiEEQp8+kY+LLUocC4bMphj1TA10mKEFAmc7kPITHHRnbHhAbGlu
 dXRyb25peC5kZQAKCRCmGPVMDXSYoZKkD/9OUL6fOJrDUmOYBa4QVeMyfTef4EaL
 tvwIMM/29XQFeiq3xxCIn+EMnHjXn2lvIhYGQ7GKsbKYwvJ7ZBDpQb+UMhZ2nKI9
 6D6BP6WomZohKeH2fZbJQAdqOi3KRYdvQdIsVZUexkqiaVPphRvOH9wOr45gHtZM
 EyMRSotPlQTDqcrbUejDMEO94GyjDCYXRsyATLxjmTzL/N4xD4NRIiotjM2vL/a9
 8MuCgIhrKUEyYlFoOxxeokBsF3kk3/ez2jlG9b/N8VLH3SYIc2zgL58FBgWxlmgG
 bY71nVG3nUgEjxBd2dcXAVVqvb+5widk8p6O7xxOAQKTLMcJ4H0tQDkMnzBtUzvB
 DGAJDHAmAr0g+ja9O35Pkhunkh4HYFIbq0Il4d1HMKObhJV0JumcKuQVxrXycdm3
 UZfq3seqHsZJQbPgCAhlFU0/2WWScocbee9bNebGT33KVwSp5FoVv89C/6Vjb+vV
 Gusc3thqrQuMAZW5zV8g4UcBAA/xH4PB0I+vHib+9XPZ4UQ7/6xKl2jE0kd5hX7n
 AAUeZvFNFqIsY+B6vz+Jx/yzyM7u5cuXq87pof5EHVFzv56lyTp4ToGcOGYRgKH5
 JXeYV1OxGziSDrd5vbf9CzdWMzqMvTefXrHbWrjkjhNOe8E1A8O88RZ5uRKZhmSw
 hZZ4hdM9+3T7cg==
 =2VC6
 -----END PGP SIGNATURE-----

Merge tag 'timers-core-2024-11-18' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull timer updates from Thomas Gleixner:
 "A rather large update for timekeeping and timers:

   - The final step to get rid of auto-rearming posix-timers

     posix-timers are currently auto-rearmed by the kernel when the
     signal of the timer is ignored so that the timer signal can be
     delivered once the corresponding signal is unignored.

     This requires to throttle the timer to prevent a DoS by small
     intervals and keeps the system pointlessly out of low power states
     for no value. This is a long standing non-trivial problem due to
     the lock order of posix-timer lock and the sighand lock along with
     life time issues as the timer and the sigqueue have different life
     time rules.

     Cure this by:

       - Embedding the sigqueue into the timer struct to have the same
         life time rules. Aside of that this also avoids the lookup of
         the timer in the signal delivery and rearm path as it's just a
         always valid container_of() now.

       - Queuing ignored timer signals onto a seperate ignored list.

       - Moving queued timer signals onto the ignored list when the
         signal is switched to SIG_IGN before it could be delivered.

       - Walking the ignored list when SIG_IGN is lifted and requeue the
         signals to the actual signal lists. This allows the signal
         delivery code to rearm the timer.

     This also required to consolidate the signal delivery rules so they
     are consistent across all situations. With that all self test
     scenarios finally succeed.

   - Core infrastructure for VFS multigrain timestamping

     This is required to allow the kernel to use coarse grained time
     stamps by default and switch to fine grained time stamps when inode
     attributes are actively observed via getattr().

     These changes have been provided to the VFS tree as well, so that
     the VFS specific infrastructure could be built on top.

   - Cleanup and consolidation of the sleep() infrastructure

       - Move all sleep and timeout functions into one file

       - Rework udelay() and ndelay() into proper documented inline
         functions and replace the hardcoded magic numbers by proper
         defines.

       - Rework the fsleep() implementation to take the reality of the
         timer wheel granularity on different HZ values into account.
         Right now the boundaries are hard coded time ranges which fail
         to provide the requested accuracy on different HZ settings.

       - Update documentation for all sleep/timeout related functions
         and fix up stale documentation links all over the place

       - Fixup a few usage sites

   - Rework of timekeeping and adjtimex(2) to prepare for multiple PTP
     clocks

     A system can have multiple PTP clocks which are participating in
     seperate and independent PTP clock domains. So far the kernel only
     considers the PTP clock which is based on CLOCK TAI relevant as
     that's the clock which drives the timekeeping adjustments via the
     various user space daemons through adjtimex(2).

     The non TAI based clock domains are accessible via the file
     descriptor based posix clocks, but their usability is very limited.
     They can't be accessed fast as they always go all the way out to
     the hardware and they cannot be utilized in the kernel itself.

     As Time Sensitive Networking (TSN) gains traction it is required to
     provide fast user and kernel space access to these clocks.

     The approach taken is to utilize the timekeeping and adjtimex(2)
     infrastructure to provide this access in a similar way how the
     kernel provides access to clock MONOTONIC, REALTIME etc.

     Instead of creating a duplicated infrastructure this rework
     converts timekeeping and adjtimex(2) into generic functionality
     which operates on pointers to data structures instead of using
     static variables.

     This allows to provide time accessors and adjtimex(2) functionality
     for the independent PTP clocks in a subsequent step.

   - Consolidate hrtimer initialization

     hrtimers are set up by initializing the data structure and then
     seperately setting the callback function for historical reasons.

     That's an extra unnecessary step and makes Rust support less
     straight forward than it should be.

     Provide a new set of hrtimer_setup*() functions and convert the
     core code and a few usage sites of the less frequently used
     interfaces over.

     The bulk of the htimer_init() to hrtimer_setup() conversion is
     already prepared and scheduled for the next merge window.

   - Drivers:

       - Ensure that the global timekeeping clocksource is utilizing the
         cluster 0 timer on MIPS multi-cluster systems.

         Otherwise CPUs on different clusters use their cluster specific
         clocksource which is not guaranteed to be synchronized with
         other clusters.

       - Mostly boring cleanups, fixes, improvements and code movement"

* tag 'timers-core-2024-11-18' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (140 commits)
  posix-timers: Fix spurious warning on double enqueue versus do_exit()
  clocksource/drivers/arm_arch_timer: Use of_property_present() for non-boolean properties
  clocksource/drivers/gpx: Remove redundant casts
  clocksource/drivers/timer-ti-dm: Fix child node refcount handling
  dt-bindings: timer: actions,owl-timer: convert to YAML
  clocksource/drivers/ralink: Add Ralink System Tick Counter driver
  clocksource/drivers/mips-gic-timer: Always use cluster 0 counter as clocksource
  clocksource/drivers/timer-ti-dm: Don't fail probe if int not found
  clocksource/drivers:sp804: Make user selectable
  clocksource/drivers/dw_apb: Remove unused dw_apb_clockevent functions
  hrtimers: Delete hrtimer_init_on_stack()
  alarmtimer: Switch to use hrtimer_setup() and hrtimer_setup_on_stack()
  io_uring: Switch to use hrtimer_setup_on_stack()
  sched/idle: Switch to use hrtimer_setup_on_stack()
  hrtimers: Delete hrtimer_init_sleeper_on_stack()
  wait: Switch to use hrtimer_setup_sleeper_on_stack()
  timers: Switch to use hrtimer_setup_sleeper_on_stack()
  net: pktgen: Switch to use hrtimer_setup_sleeper_on_stack()
  futex: Switch to use hrtimer_setup_sleeper_on_stack()
  fs/aio: Switch to use hrtimer_setup_sleeper_on_stack()
  ...
2024-11-19 16:35:06 -08:00
Linus Torvalds
0352387523 First step of consolidating the VDSO data page handling:
The VDSO data page handling is architecture specific for historical
   reasons, but there is no real technical reason to do so.
 
   Aside of that VDSO data has become a dump ground for various mechanisms
   and fail to provide a clear separation of the functionalities.
 
   Clean this up by:
 
     * consolidating the VDSO page data by getting rid of architecture
       specific warts especially in x86 and PowerPC.
 
     * removing the last includes of header files which are pulling in other
       headers outside of the VDSO namespace.
 
     * seperating timekeeping and other VDSO data accordingly.
 
   Further consolidation of the VDSO page handling is done in subsequent
   changes scheduled for the next merge window.
 
   This also lays the ground for expanding the VDSO time getters for
   independent PTP clocks in a generic way without making every architecture
   add support seperately.
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCgAxFiEEQp8+kY+LLUocC4bMphj1TA10mKEFAmc7kyoTHHRnbHhAbGlu
 dXRyb25peC5kZQAKCRCmGPVMDXSYoVBjD/9awdN2YeCGIM9rlHIktUdNRmRSL2SL
 6av1CPffN5DenONYTXWrDYPkC4yfjUwIs8H57uzFo10yA7RQ/Qfq+O68k5GnuFew
 jvpmmYSZ6TT21AmAaCIhn+kdl9YbEJFvN2AWH85Bl29k9FGB04VzJlQMMjfEZ1a5
 Mhwv+cfYNuPSZmU570jcxW2XgbyTWlLZBByXX/Tuz9bwpmtszba507bvo45x6gIP
 twaWNzrsyJpdXfMrfUnRiChN8jHlDN7I6fgQvpsoRH5FOiVwIFo0Ip2rKbk+ONfD
 W/rcU5oeqRIxRVDHzf2Sv8WPHMCLRv01ZHBcbJOtgvZC3YiKgKYoeEKabu9ZL1BH
 6VmrxjYOBBFQHOYAKPqBuS7BgH5PmtMbDdSZXDfRaAKaCzhCRysdlWW7z48r2R//
 zPufb7J6Tle23AkuZWhFjvlGgSBl4zxnTFn31HYOyQps3TMI4y50Z2DhE/EeU8a6
 DRl8/k1KQVDUZ6udJogS5kOr1J8pFtUPrA2uhR8UyLdx7YKiCzcdO1qWAjtXlVe8
 oNpzinU+H9bQqGe9IyS7kCG9xNaCRZNkln5Q1WfnkTzg5f6ihfaCvIku3l4bgVpw
 3HmcxYiC6RxQB+ozwN7hzCCKT4L9aMhr/457TNOqRkj2Elw3nvJ02L4aI86XAKLE
 jwO9Fkp9qcCxCw==
 =q5eD
 -----END PGP SIGNATURE-----

Merge tag 'timers-vdso-2024-11-18' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull vdso data page handling updates from Thomas Gleixner:
 "First steps of consolidating the VDSO data page handling.

  The VDSO data page handling is architecture specific for historical
  reasons, but there is no real technical reason to do so.

  Aside of that VDSO data has become a dump ground for various
  mechanisms and fail to provide a clear separation of the
  functionalities.

  Clean this up by:

   - consolidating the VDSO page data by getting rid of architecture
     specific warts especially in x86 and PowerPC.

   - removing the last includes of header files which are pulling in
     other headers outside of the VDSO namespace.

   - seperating timekeeping and other VDSO data accordingly.

  Further consolidation of the VDSO page handling is done in subsequent
  changes scheduled for the next merge window.

  This also lays the ground for expanding the VDSO time getters for
  independent PTP clocks in a generic way without making every
  architecture add support seperately"

* tag 'timers-vdso-2024-11-18' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (42 commits)
  x86/vdso: Add missing brackets in switch case
  vdso: Rename struct arch_vdso_data to arch_vdso_time_data
  powerpc: Split systemcfg struct definitions out from vdso
  powerpc: Split systemcfg data out of vdso data page
  powerpc: Add kconfig option for the systemcfg page
  powerpc/pseries/lparcfg: Use num_possible_cpus() for potential processors
  powerpc/pseries/lparcfg: Fix printing of system_active_processors
  powerpc/procfs: Propagate error of remap_pfn_range()
  powerpc/vdso: Remove offset comment from 32bit vdso_arch_data
  x86/vdso: Split virtual clock pages into dedicated mapping
  x86/vdso: Delete vvar.h
  x86/vdso: Access vdso data without vvar.h
  x86/vdso: Move the rng offset to vsyscall.h
  x86/vdso: Access rng vdso data without vvar.h
  x86/vdso: Access timens vdso data without vvar.h
  x86/vdso: Allocate vvar page from C code
  x86/vdso: Access rng data from kernel without vvar
  x86/vdso: Place vdso_data at beginning of vvar page
  x86/vdso: Use __arch_get_vdso_data() to access vdso data
  x86/mm/mmap: Remove arch_vma_name()
  ...
2024-11-19 16:09:13 -08:00
Linus Torvalds
5c2b050848 A set of updates for the interrupt subsystem:
- Tree wide:
 
     * Make nr_irqs static to the core code and provide accessor functions
       to remove existing and prevent future aliasing problems with local
       variables or function arguments of the same name.
 
   - Core code:
 
     * Prevent freeing an interrupt in the devres code which is not managed
       by devres in the first place.
 
     * Use seq_put_decimal_ull_width() for decimal values output in
       /proc/interrupts which increases performance significantly as it
       avoids parsing the format strings over and over.
 
     * Optimize raising the timer and hrtimer soft interrupts by using the
       'set bit only' variants instead of the combined version which checks
       whether ksoftirqd should be woken up. The latter is a pointless
       exercise as both soft interrupts are raised in the context of the
       timer interrupt and therefore never wake up ksoftirqd.
 
     * Delegate timer/hrtimer soft interrupt processing to a dedicated thread
       on RT.
 
       Timer and hrtimer soft interrupts are always processed in ksoftirqd
       on RT enabled kernels. This can lead to high latencies when other
       soft interrupts are delegated to ksoftirqd as well.
 
       The separate thread allows to run them seperately under a RT
       scheduling policy to reduce the latency overhead.
 
   - Drivers:
 
     * New drivers or extensions of existing drivers to support Renesas
       RZ/V2H(P), Aspeed AST27XX, T-HEAD C900 and ATMEL sam9x7 interrupt
       chips
 
     * Support for multi-cluster GICs on MIPS.
 
       MIPS CPUs can come with multiple CPU clusters, where each CPU cluster
       has its own GIC (Generic Interrupt Controller). This requires to
       access the GIC of a remote cluster through a redirect register block.
 
       This is encapsulated into a set of helper functions to keep the
       complexity out of the actual code paths which handle the GIC details.
 
     * Support for encrypted guests in the ARM GICV3 ITS driver
 
       The ITS page needs to be shared with the hypervisor and therefore
       must be decrypted.
 
     * Small cleanups and fixes all over the place
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCgAxFiEEQp8+kY+LLUocC4bMphj1TA10mKEFAmc7ggcTHHRnbHhAbGlu
 dXRyb25peC5kZQAKCRCmGPVMDXSYoaf7D/9G6FgJXx/60zqnpnOr9Yx0hxjaI47x
 PFyCd3P05qyVMBYXfI99vrSKuVdMZXJ/fH5L83y+sOaTASyLTzg37igZycIDJzLI
 FnHh/m/+UA8k2aIC5VUiNAjne2RLaTZiRN15uEHFVjByC5Y+YTlCNUE4BBhg5RfQ
 hKmskeffWdtui3ou13CSNvbFn+pmqi4g6n1ysUuLhiwM2E5b1rZMprcCOnun/cGP
 IdUQsODNWTTv9eqPJez985M6A1x2SCGNv7Z73h58B9N0pBRPEC1xnhUnCJ1sA0cJ
 pnfde2C1lztEjYbwDngy0wgq0P6LINjQ5Ma2YY2F2hTMsXGJxGPDZm24/u5uR46x
 N/gsOQMXqw6f5yvbiS7Asx9WzR6ry8rJl70QRgTyozz7xxJTaiNm2HqVFe2wc+et
 Q/BzaKdhmUJj1GMZmqD2rrgwYeDcb4wWYNtwjM4PVHHxYlJVq0mEF1kLLS8YDyjf
 HuGPVqtSkt3E0+Br3FKcv5ltUQP8clXbudc6L1u98YBfNK12hW8L+c3YSvIiFoYM
 ZOAeANPM7VtQbP2Jg2q81Dd3CShImt5jqL2um+l8g7+mUE7l9gyuO/w/a5dQ57+b
 kx7mHHIW2zCeHrkZZbRUYzI2BJfMCCOVN4Ax5OZxTLnLsL9VEehy8NM8QYT4TS8R
 XmTOYW3U9XR3gw==
 =JqxC
 -----END PGP SIGNATURE-----

Merge tag 'irq-core-2024-11-18' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull interrupt subsystem updates from Thomas Gleixner:
 "Tree wide:

   - Make nr_irqs static to the core code and provide accessor functions
     to remove existing and prevent future aliasing problems with local
     variables or function arguments of the same name.

  Core code:

   - Prevent freeing an interrupt in the devres code which is not
     managed by devres in the first place.

   - Use seq_put_decimal_ull_width() for decimal values output in
     /proc/interrupts which increases performance significantly as it
     avoids parsing the format strings over and over.

   - Optimize raising the timer and hrtimer soft interrupts by using the
     'set bit only' variants instead of the combined version which
     checks whether ksoftirqd should be woken up. The latter is a
     pointless exercise as both soft interrupts are raised in the
     context of the timer interrupt and therefore never wake up
     ksoftirqd.

   - Delegate timer/hrtimer soft interrupt processing to a dedicated
     thread on RT.

     Timer and hrtimer soft interrupts are always processed in ksoftirqd
     on RT enabled kernels. This can lead to high latencies when other
     soft interrupts are delegated to ksoftirqd as well.

     The separate thread allows to run them seperately under a RT
     scheduling policy to reduce the latency overhead.

  Drivers:

   - New drivers or extensions of existing drivers to support Renesas
     RZ/V2H(P), Aspeed AST27XX, T-HEAD C900 and ATMEL sam9x7 interrupt
     chips

   - Support for multi-cluster GICs on MIPS.

     MIPS CPUs can come with multiple CPU clusters, where each CPU
     cluster has its own GIC (Generic Interrupt Controller). This
     requires to access the GIC of a remote cluster through a redirect
     register block.

     This is encapsulated into a set of helper functions to keep the
     complexity out of the actual code paths which handle the GIC
     details.

   - Support for encrypted guests in the ARM GICV3 ITS driver

     The ITS page needs to be shared with the hypervisor and therefore
     must be decrypted.

   - Small cleanups and fixes all over the place"

* tag 'irq-core-2024-11-18' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (50 commits)
  irqchip/riscv-aplic: Prevent crash when MSI domain is missing
  genirq/proc: Use seq_put_decimal_ull_width() for decimal values
  softirq: Use a dedicated thread for timer wakeups on PREEMPT_RT.
  timers: Use __raise_softirq_irqoff() to raise the softirq.
  hrtimer: Use __raise_softirq_irqoff() to raise the softirq
  riscv: defconfig: Enable T-HEAD C900 ACLINT SSWI drivers
  irqchip: Add T-HEAD C900 ACLINT SSWI driver
  dt-bindings: interrupt-controller: Add T-HEAD C900 ACLINT SSWI device
  irqchip/stm32mp-exti: Use of_property_present() for non-boolean properties
  irqchip/mips-gic: Fix selection of GENERIC_IRQ_EFFECTIVE_AFF_MASK
  irqchip/mips-gic: Prevent indirect access to clusters without CPU cores
  irqchip/mips-gic: Multi-cluster support
  irqchip/mips-gic: Setup defaults in each cluster
  irqchip/mips-gic: Support multi-cluster in for_each_online_cpu_gic()
  irqchip/mips-gic: Replace open coded online CPU iterations
  genirq/irqdesc: Use str_enabled_disabled() helper in wakeup_show()
  genirq/devres: Don't free interrupt which is not managed by devres
  irqchip/gic-v3-its: Fix over allocation in itt_alloc_pool()
  irqchip/aspeed-intc: Add AST27XX INTC support
  dt-bindings: interrupt-controller: Add support for ASPEED AST27XX INTC
  ...
2024-11-19 15:54:19 -08:00
Linus Torvalds
f41dac3efb Performance events changes for v6.13:
- Uprobes:
     - Add BPF session support (Jiri Olsa)
     - Switch to RCU Tasks Trace flavor for better performance (Andrii Nakryiko)
     - Massively increase uretprobe SMP scalability by SRCU-protecting
       the uretprobe lifetime (Andrii Nakryiko)
     - Kill xol_area->slot_count (Oleg Nesterov)
 
  - Core facilities:
     - Implement targeted high-frequency profiling by adding the ability
       for an event to "pause" or "resume" AUX area tracing (Adrian Hunter)
 
  - VM profiling/sampling:
     - Correct perf sampling with guest VMs (Colton Lewis)
 
  - New hardware support:
     - x86/intel: Add PMU support for Intel ArrowLake-H CPUs (Dapeng Mi)
 
  - Misc fixes and enhancements:
     - x86/intel/pt: Fix buffer full but size is 0 case (Adrian Hunter)
     - x86/amd: Warn only on new bits set (Breno Leitao)
     - x86/amd/uncore: Avoid a false positive warning about snprintf
                       truncation in amd_uncore_umc_ctx_init (Jean Delvare)
     - uprobes: Re-order struct uprobe_task to save some space (Christophe JAILLET)
     - x86/rapl: Move the pmu allocation out of CPU hotplug (Kan Liang)
     - x86/rapl: Clean up cpumask and hotplug (Kan Liang)
     - uprobes: Deuglify xol_get_insn_slot/xol_free_insn_slot paths (Oleg Nesterov)
 
 Signed-off-by: Ingo Molnar <mingo@kernel.org>
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCgAvFiEEBpT5eoXrXCwVQwEKEnMQ0APhK1gFAmc7eKERHG1pbmdvQGtl
 cm5lbC5vcmcACgkQEnMQ0APhK1i57A/+KQ6TrIoICVTE+BPlDfUw8NU+N3DagVb0
 dzoyDxlDRsnsYzeXZipPn+3IitX1w+DrGxBNIojSoiFVCLnHIKgo4uHbj7cVrR7J
 fBTVSnoJ94SGAk5ySebvLwMLce/YhXBeHK2lx6W/pI6acNcxzDfIabjjETeqltUo
 g7hmT9lo10pzZEZyuUfYX9khlWBxda1dKHc9pMIq7baeLe4iz/fCGlJ0K4d4M4z3
 NPZw239Np6iHUwu3Lcs4gNKe4rcDe7Bt47hpedemHe0Y+7c4s2HaPxbXWxvDtE76
 mlsg93i28f8SYxeV83pREn0EOCptXcljhiek+US+GR7NSbltMnV+uUiDfPKIE9+Y
 vYP/DYF9hx73FsOucEFrHxYYcePorn3pne5/khBYWdQU6TnlrBYWpoLQsjgCKTTR
 4JhCFlBZ5cDpc6ihtpwCwVTQ4Q/H7vM1XOlDwx0hPhcIPPHDreaQD/wxo61jBdXf
 PY0EPAxh3BcQxfPYuDS+XiYjQ8qO8MtXMKz5bZyHBZlbHwccV6T4ExjsLKxFk5As
 6BG8pkBWLg7drXAgVdleIY0ux+34w/Zzv7gemdlQxvWLlZrVvpjiG93oU3PTpZeq
 A2UD9eAOuXVD6+HsF/dmn88sFmcLWbrMskFWujkvhEUmCvSGAnz3YSS/mLEawBiT
 2xI8xykNWSY=
 =ItOT
 -----END PGP SIGNATURE-----

Merge tag 'perf-core-2024-11-18' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull performance events updates from Ingo Molnar:
 "Uprobes:
    - Add BPF session support (Jiri Olsa)
    - Switch to RCU Tasks Trace flavor for better performance (Andrii
      Nakryiko)
    - Massively increase uretprobe SMP scalability by SRCU-protecting
      the uretprobe lifetime (Andrii Nakryiko)
    - Kill xol_area->slot_count (Oleg Nesterov)

  Core facilities:
    - Implement targeted high-frequency profiling by adding the ability
      for an event to "pause" or "resume" AUX area tracing (Adrian
      Hunter)

  VM profiling/sampling:
    - Correct perf sampling with guest VMs (Colton Lewis)

  New hardware support:
    - x86/intel: Add PMU support for Intel ArrowLake-H CPUs (Dapeng Mi)

  Misc fixes and enhancements:
    - x86/intel/pt: Fix buffer full but size is 0 case (Adrian Hunter)
    - x86/amd: Warn only on new bits set (Breno Leitao)
    - x86/amd/uncore: Avoid a false positive warning about snprintf
      truncation in amd_uncore_umc_ctx_init (Jean Delvare)
    - uprobes: Re-order struct uprobe_task to save some space
      (Christophe JAILLET)
    - x86/rapl: Move the pmu allocation out of CPU hotplug (Kan Liang)
    - x86/rapl: Clean up cpumask and hotplug (Kan Liang)
    - uprobes: Deuglify xol_get_insn_slot/xol_free_insn_slot paths (Oleg
      Nesterov)"

* tag 'perf-core-2024-11-18' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (32 commits)
  perf/core: Correct perf sampling with guest VMs
  perf/x86: Refactor misc flag assignments
  perf/powerpc: Use perf_arch_instruction_pointer()
  perf/core: Hoist perf_instruction_pointer() and perf_misc_flags()
  perf/arm: Drop unused functions
  uprobes: Re-order struct uprobe_task to save some space
  perf/x86/amd/uncore: Avoid a false positive warning about snprintf truncation in amd_uncore_umc_ctx_init
  perf/x86/intel: Do not enable large PEBS for events with aux actions or aux sampling
  perf/x86/intel/pt: Add support for pause / resume
  perf/core: Add aux_pause, aux_resume, aux_start_paused
  perf/x86/intel/pt: Fix buffer full but size is 0 case
  uprobes: SRCU-protect uretprobe lifetime (with timeout)
  uprobes: allow put_uprobe() from non-sleepable softirq context
  perf/x86/rapl: Clean up cpumask and hotplug
  perf/x86/rapl: Move the pmu allocation out of CPU hotplug
  uprobe: Add support for session consumer
  uprobe: Add data pointer to consumer handlers
  perf/x86/amd: Warn only on new bits set
  uprobes: fold xol_take_insn_slot() into xol_get_insn_slot()
  uprobes: kill xol_area->slot_count
  ...
2024-11-19 13:34:06 -08:00
Linus Torvalds
02b2f1a7b8 This update includes the following changes:
API:
 
 - Add sig driver API.
 - Remove signing/verification from akcipher API.
 - Move crypto_simd_disabled_for_test to lib/crypto.
 - Add WARN_ON for return values from driver that indicates memory corruption.
 
 Algorithms:
 
 - Provide crc32-arch and crc32c-arch through Crypto API.
 - Optimise crc32c code size on x86.
 - Optimise crct10dif on arm/arm64.
 - Optimise p10-aes-gcm on powerpc.
 - Optimise aegis128 on x86.
 - Output full sample from test interface in jitter RNG.
 - Retry without padata when it fails in pcrypt.
 
 Drivers:
 
 - Add support for Airoha EN7581 TRNG.
 - Add support for STM32MP25x platforms in stm32.
 - Enable iproc-r200 RNG driver on BCMBCA.
 - Add Broadcom BCM74110 RNG driver.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEn51F/lCuNhUwmDeSxycdCkmxi6cFAmc6sQsACgkQxycdCkmx
 i6dfHxAAnkI65TE6agZq9DlkEU4ZqOsxxdk0MsGIhbCUTxW3KENzu9vtKjnvg9T/
 Ou0d2J49ny87Y4zaA59Wf/Q1+gg5YSQR5kelonpfrPLkCkJjr72HZpyCHv8TTzEC
 uHHoVj9cnPIF5/yfiqQsrWT1ACip9vn+slyVPaMJV1qR6gnvnSALtsg4e/vKHkn7
 ZMaf2pZ2ROYXdB02nMK5KQcCrxD64MQle/yQepY44eYjnT+XclkqPdi6o1nUSpj/
 RFAeY0jFSTu0pj3DqT48TnU/LiiNLlFOZrGjCdEySoac63vmTtKqfYDmrRaFz4hB
 sucxbgJ3xnnYseRijtfXnxaD/IkDJln+ipGNQKAZLfOVMDCTxPdYGmOpobMTXMS+
 0sY0eAHgqr23P9pOp+sOzcAEFIqg6llAYQVWx3Zl4vpXBUuxzg6AqmHnPicnck7y
 Lw1cJhQxij2De3dG2ZL/0dgQxMjGN/YfCM8SSg6l+Xn3j4j47rqJNH2ZsmXtbJ2n
 kTkmemmWdgRR1IvgQQGsvyKs9ThkcEDW+IzW26SUv3Clvru2NSkX4ZPHbezZQf+D
 R0wMZsW3Fw7Zymerz1GIBSqdLnsyFWtIAjukDpOR6ordPgOBeDt76v6tw5vL2/II
 KYoeN1pdEEecwuhAsEvCryT5ZG4noBeNirf/ElWAfEybgcXiTks=
 =T8pa
 -----END PGP SIGNATURE-----

Merge tag 'v6.13-p1' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6

Pull crypto updates from Herbert Xu:
 "API:
   - Add sig driver API
   - Remove signing/verification from akcipher API
   - Move crypto_simd_disabled_for_test to lib/crypto
   - Add WARN_ON for return values from driver that indicates memory
     corruption

  Algorithms:
   - Provide crc32-arch and crc32c-arch through Crypto API
   - Optimise crc32c code size on x86
   - Optimise crct10dif on arm/arm64
   - Optimise p10-aes-gcm on powerpc
   - Optimise aegis128 on x86
   - Output full sample from test interface in jitter RNG
   - Retry without padata when it fails in pcrypt

  Drivers:
   - Add support for Airoha EN7581 TRNG
   - Add support for STM32MP25x platforms in stm32
   - Enable iproc-r200 RNG driver on BCMBCA
   - Add Broadcom BCM74110 RNG driver"

* tag 'v6.13-p1' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (112 commits)
  crypto: marvell/cesa - fix uninit value for struct mv_cesa_op_ctx
  crypto: cavium - Fix an error handling path in cpt_ucode_load_fw()
  crypto: aesni - Move back to module_init
  crypto: lib/mpi - Export mpi_set_bit
  crypto: aes-gcm-p10 - Use the correct bit to test for P10
  hwrng: amd - remove reference to removed PPC_MAPLE config
  crypto: arm/crct10dif - Implement plain NEON variant
  crypto: arm/crct10dif - Macroify PMULL asm code
  crypto: arm/crct10dif - Use existing mov_l macro instead of __adrl
  crypto: arm64/crct10dif - Remove remaining 64x64 PMULL fallback code
  crypto: arm64/crct10dif - Use faster 16x64 bit polynomial multiply
  crypto: arm64/crct10dif - Remove obsolete chunking logic
  crypto: bcm - add error check in the ahash_hmac_init function
  crypto: caam - add error check to caam_rsa_set_priv_key_form
  hwrng: bcm74110 - Add Broadcom BCM74110 RNG driver
  dt-bindings: rng: add binding for BCM74110 RNG
  padata: Clean up in padata_do_multithreaded()
  crypto: inside-secure - Fix the return value of safexcel_xcbcmac_cra_init()
  crypto: qat - Fix missing destroy_workqueue in adf_init_aer()
  crypto: rsassa-pkcs1 - Reinstate support for legacy protocols
  ...
2024-11-19 10:28:41 -08:00
Rob Herring (Arm)
a21b2eb7cf
arm: dts: spear13xx: Remove unused and undocumented "pl022,slave-tx-disable" property
Remove "pl022,slave-tx-disable" property which is both unused in the kernel
and undocumented. Most likely they are leftovers from downstream.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Link: https://lore.kernel.org/r/20241115193835.3623725-1-robh@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-11-19 18:02:34 +01:00
Arnd Bergmann
44a50de51b Allwinner fixes for 6.12
- Fix DCDC5 voltage range on Cubieboard 4
 -----BEGIN PGP SIGNATURE-----
 
 iQJCBAABCgAsFiEE2nN1m/hhnkhOWjtHOJpUIZwPJDAFAmcrcLcOHHdlbnNAY3Np
 ZS5vcmcACgkQOJpUIZwPJDCodw//TZdq7uDs2QVL07V9h/gujlB13Po5Z9nOOSDa
 rgFhGnZ3iEFZ2AJw8bivT8oj4gQJ1V+N1Nvh4rZOZgOMCHVBZ8Zk2h+6sGeBjmAw
 sLITKvMAdZ3zuUNdS4dAAEJncDhTBQTpOdxBBH5RvCXBWr4Pf4Lvib26M5dxVQGc
 5Zuh9qm6P4s4yHt37gJayMLPVPEqIHeVy/TKXpws9Anb8BXrGxdwJnWEv4qAeaaO
 NcNmV59KVJQyu/n/bvMT2krgPaVA7ghKObQ/FA0RfCwD8jT48NEC6bvQ9a+XWSk3
 PwskuEnw0v2ve0IIz3+t2resE9006cE30UctSk7oA1iG3AfFKQzbKbqS2rk5506I
 VwyvZ2wkcBtg8rYpPg0uLMUpwgH3LEhNygjgOpcxc5n71pzffl1t68HYY1Fy+YV6
 LOi6mytgNGXFwbRagp1O3427GlGhO0D+1zyA2oBBjCcbuEPuTsDhlxXK9fBL6TkA
 uy/T+n0qZhT+jWsHgAZhcQUjqCeh4lsfGsg0C90kohtEZQhvOO6unHRFU5att88e
 WZy2svPBx5293WapUreD5R3ue6lYl6mjVTQN5oSLbs73vhOShDz2T6lALuxSovHf
 ps8gMK43KptHcC/zS+oV4qwaaXOtDTCMv1e5MvIG7PZ1TdgAy6lt+kRNce71org/
 DaCt3fQ=
 =pgqN
 -----END PGP SIGNATURE-----

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

Allwinner fixes for 6.12

- Fix DCDC5 voltage range on Cubieboard 4

* tag 'sunxi-fixes-for-6.12' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
  ARM: dts: cubieboard4: Fix DCDC5 regulator constraints
2024-11-19 18:01:29 +01:00
Linus Torvalds
ba1f9c8fe3 arm64 updates for 6.13:
* Support for running Linux in a protected VM under the Arm Confidential
   Compute Architecture (CCA)
 
 * Guarded Control Stack user-space support. Current patches follow the
   x86 ABI of implicitly creating a shadow stack on clone(). Subsequent
   patches (already on the list) will add support for clone3() allowing
   finer-grained control of the shadow stack size and placement from libc
 
 * AT_HWCAP3 support (not running out of HWCAP2 bits yet but we are
   getting close with the upcoming dpISA support)
 
 * Other arch features:
 
   - In-kernel use of the memcpy instructions, FEAT_MOPS (previously only
     exposed to user; uaccess support not merged yet)
 
   - MTE: hugetlbfs support and the corresponding kselftests
 
   - Optimise CRC32 using the PMULL instructions
 
   - Support for FEAT_HAFT enabling ARCH_HAS_NONLEAF_PMD_YOUNG
 
   - Optimise the kernel TLB flushing to use the range operations
 
   - POE/pkey (permission overlays): further cleanups after bringing the
     signal handler in line with the x86 behaviour for 6.12
 
 * arm64 perf updates:
 
   - Support for the NXP i.MX91 PMU in the existing IMX driver
 
   - Support for Ampere SoCs in the Designware PCIe PMU driver
 
   - Support for Marvell's 'PEM' PCIe PMU present in the 'Odyssey' SoC
 
   - Support for Samsung's 'Mongoose' CPU PMU
 
   - Support for PMUv3.9 finer-grained userspace counter access control
 
   - Switch back to platform_driver::remove() now that it returns 'void'
 
   - Add some missing events for the CXL PMU driver
 
 * Miscellaneous arm64 fixes/cleanups:
 
   - Page table accessors cleanup: type updates, drop unused macros,
     reorganise arch_make_huge_pte() and clean up pte_mkcont(), sanity
     check addresses before runtime P4D/PUD folding
 
   - Command line override for ID_AA64MMFR0_EL1.ECV (advertising the
     FEAT_ECV for the generic timers) allowing Linux to boot with
     firmware deployments that don't set SCTLR_EL3.ECVEn
 
   - ACPI/arm64: tighten the check for the array of platform timer
     structures and adjust the error handling procedure in
     gtdt_parse_timer_block()
 
   - Optimise the cache flush for the uprobes xol slot (skip if no
     change) and other uprobes/kprobes cleanups
 
   - Fix the context switching of tpidrro_el0 when kpti is enabled
 
   - Dynamic shadow call stack fixes
 
   - Sysreg updates
 
   - Various arm64 kselftest improvements
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEE5RElWfyWxS+3PLO2a9axLQDIXvEFAmc5POIACgkQa9axLQDI
 XvEDYA//a3eeNkgMuGdnSCVcLz+zy+oNwAwboG/4X1DqL8jiCbI4npwugPx95RIA
 YZOUvo9T2aL3OyefpUHll4gFHqx9OwoZIig2F70TEUmlPsGUbh0KBkdfQF3xZPdl
 EwV0kHSGEqMWMBwsGJGwgCYrUaf1MUQzh1GBl7VJ2ts5XsJBaBeOyKkysij26wtZ
 V+aHq2IUx7qQS7+HC/4P6IoHxKziFcsCMovaKaynP4cw9xXBQbDMcNlHEwndOMyk
 pu2zrv7GG0j3KQuVP/2Alf5FKhmI0GVGP/6Nc/zsOmw96w8Kf7HfzEtkHawr2aRq
 rqg/c9ivzDn1p+fUBo4ZYtrRk4IAY+yKu6hdzdLTP5+bQrBTWTO9rjQVBm9FAGYT
 sCdEj1NqzvExvNHD7X6ut/GJ05lmce3K+qeSXSEysN9gqiT3eomYWMXrD2V2lxzb
 rIDDcb/icfaqjt14Mksh19r/rzNeq7noj9CGSmcqw0BHZfHzl38Lai6pdfYzCNyn
 vCM/c4c1D/WWX8/lifO1JZVbhDk1jy82Iphg2KEhL8iKPxDsKBBZLmYuU1oa7tMo
 WryGAz9+GQwd+W9chFuaOEtMnzvW2scEJ5Eb2fEf0Qj0aEurkL+C9dZR6o1GN77V
 DBUxtU628Ef4PJJGfbNCwZzdd8UPYG3a/mKfQQ3dz0oz2LySlW4=
 =wDot
 -----END PGP SIGNATURE-----

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

Pull arm64 updates from Catalin Marinas:

 - Support for running Linux in a protected VM under the Arm
   Confidential Compute Architecture (CCA)

 - Guarded Control Stack user-space support. Current patches follow the
   x86 ABI of implicitly creating a shadow stack on clone(). Subsequent
   patches (already on the list) will add support for clone3() allowing
   finer-grained control of the shadow stack size and placement from
   libc

 - AT_HWCAP3 support (not running out of HWCAP2 bits yet but we are
   getting close with the upcoming dpISA support)

 - Other arch features:

     - In-kernel use of the memcpy instructions, FEAT_MOPS (previously
       only exposed to user; uaccess support not merged yet)

     - MTE: hugetlbfs support and the corresponding kselftests

     - Optimise CRC32 using the PMULL instructions

     - Support for FEAT_HAFT enabling ARCH_HAS_NONLEAF_PMD_YOUNG

     - Optimise the kernel TLB flushing to use the range operations

     - POE/pkey (permission overlays): further cleanups after bringing
       the signal handler in line with the x86 behaviour for 6.12

 - arm64 perf updates:

     - Support for the NXP i.MX91 PMU in the existing IMX driver

     - Support for Ampere SoCs in the Designware PCIe PMU driver

     - Support for Marvell's 'PEM' PCIe PMU present in the 'Odyssey' SoC

     - Support for Samsung's 'Mongoose' CPU PMU

     - Support for PMUv3.9 finer-grained userspace counter access
       control

     - Switch back to platform_driver::remove() now that it returns
       'void'

     - Add some missing events for the CXL PMU driver

 - Miscellaneous arm64 fixes/cleanups:

     - Page table accessors cleanup: type updates, drop unused macros,
       reorganise arch_make_huge_pte() and clean up pte_mkcont(), sanity
       check addresses before runtime P4D/PUD folding

     - Command line override for ID_AA64MMFR0_EL1.ECV (advertising the
       FEAT_ECV for the generic timers) allowing Linux to boot with
       firmware deployments that don't set SCTLR_EL3.ECVEn

     - ACPI/arm64: tighten the check for the array of platform timer
       structures and adjust the error handling procedure in
       gtdt_parse_timer_block()

     - Optimise the cache flush for the uprobes xol slot (skip if no
       change) and other uprobes/kprobes cleanups

     - Fix the context switching of tpidrro_el0 when kpti is enabled

     - Dynamic shadow call stack fixes

     - Sysreg updates

     - Various arm64 kselftest improvements

* tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (168 commits)
  arm64: tls: Fix context-switching of tpidrro_el0 when kpti is enabled
  kselftest/arm64: Try harder to generate different keys during PAC tests
  kselftest/arm64: Don't leak pipe fds in pac.exec_sign_all()
  arm64/ptrace: Clarify documentation of VL configuration via ptrace
  kselftest/arm64: Corrupt P0 in the irritator when testing SSVE
  acpi/arm64: remove unnecessary cast
  arm64/mm: Change protval as 'pteval_t' in map_range()
  kselftest/arm64: Fix missing printf() argument in gcs/gcs-stress.c
  kselftest/arm64: Add FPMR coverage to fp-ptrace
  kselftest/arm64: Expand the set of ZA writes fp-ptrace does
  kselftets/arm64: Use flag bits for features in fp-ptrace assembler code
  kselftest/arm64: Enable build of PAC tests with LLVM=1
  kselftest/arm64: Check that SVCR is 0 in signal handlers
  selftests/mm: Fix unused function warning for aarch64_write_signal_pkey()
  kselftest/arm64: Fix printf() compiler warnings in the arm64 syscall-abi.c tests
  kselftest/arm64: Fix printf() warning in the arm64 MTE prctl() test
  kselftest/arm64: Fix printf() compiler warnings in the arm64 fp tests
  kselftest/arm64: Fix build with stricter assemblers
  arm64/scs: Drop unused prototype __pi_scs_patch_vmlinux()
  arm64/scs: Deal with 64-bit relative offsets in FDE frames
  ...
2024-11-18 18:10:37 -08:00
Linus Torvalds
82339c4911 sanitize xattr and io_uring interactions with it,
add *xattrat() syscalls, sanitize struct filename handling in there.
 
 Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQqUNBr3gm4hGXdBJlZ7Krx/gZQ6wUCZzdj4gAKCRBZ7Krx/gZQ
 6/02AQC8ndn9i1wLGRb5DdZYGNWUDhXCdPrZCF2nyvU2swCIPwEAm1H5F/bxBXeT
 6qCLHThVw4KTJOT2aDY03ELrxbi8Vg4=
 =35Oj
 -----END PGP SIGNATURE-----

Merge tag 'pull-xattr' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs

Pull xattr updates from Al Viro:
 "Sanitize xattr and io_uring interactions with it, add *xattrat()
  syscalls, sanitize struct filename handling in there"

* tag 'pull-xattr' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
  xattr: remove redundant check on variable err
  fs/xattr: add *at family syscalls
  new helpers: file_removexattr(), filename_removexattr()
  new helpers: file_listxattr(), filename_listxattr()
  replace do_getxattr() with saner helpers.
  replace do_setxattr() with saner helpers.
  new helper: import_xattr_name()
  fs: rename struct xattr_ctx to kernel_xattr_ctx
  xattr: switch to CLASS(fd)
  io_[gs]etxattr_prep(): just use getname()
  io_uring: IORING_OP_F[GS]ETXATTR is fine with REQ_F_FIXED_FILE
  getname_maybe_null() - the third variant of pathname copy-in
  teach filename_lookup() to treat NULL filename as ""
2024-11-18 12:44:25 -08:00
Linus Torvalds
0f25f0e4ef the bulk of struct fd memory safety stuff
Making sure that struct fd instances are destroyed in the same
 scope where they'd been created, getting rid of reassignments
 and passing them by reference, converting to CLASS(fd{,_pos,_raw}).
 
 We are getting very close to having the memory safety of that stuff
 trivial to verify.
 
 Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQqUNBr3gm4hGXdBJlZ7Krx/gZQ6wUCZzdikAAKCRBZ7Krx/gZQ
 69nJAQCmbQHK3TGUbQhOw6MJXOK9ezpyEDN3FZb4jsu38vTIdgEA6OxAYDO2m2g9
 CN18glYmD3wRyU6Bwl4vGODouSJvDgA=
 =gVH3
 -----END PGP SIGNATURE-----

Merge tag 'pull-fd' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs

Pull 'struct fd' class updates from Al Viro:
 "The bulk of struct fd memory safety stuff

  Making sure that struct fd instances are destroyed in the same scope
  where they'd been created, getting rid of reassignments and passing
  them by reference, converting to CLASS(fd{,_pos,_raw}).

  We are getting very close to having the memory safety of that stuff
  trivial to verify"

* tag 'pull-fd' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (28 commits)
  deal with the last remaing boolean uses of fd_file()
  css_set_fork(): switch to CLASS(fd_raw, ...)
  memcg_write_event_control(): switch to CLASS(fd)
  assorted variants of irqfd setup: convert to CLASS(fd)
  do_pollfd(): convert to CLASS(fd)
  convert do_select()
  convert vfs_dedupe_file_range().
  convert cifs_ioctl_copychunk()
  convert media_request_get_by_fd()
  convert spu_run(2)
  switch spufs_calls_{get,put}() to CLASS() use
  convert cachestat(2)
  convert do_preadv()/do_pwritev()
  fdget(), more trivial conversions
  fdget(), trivial conversions
  privcmd_ioeventfd_assign(): don't open-code eventfd_ctx_fdget()
  o2hb_region_dev_store(): avoid goto around fdget()/fdput()
  introduce "fd_pos" class, convert fdget_pos() users to it.
  fdget_raw() users: switch to CLASS(fd_raw)
  convert vmsplice() to CLASS(fd)
  ...
2024-11-18 12:24:06 -08:00
Linus Torvalds
4a5df37964 10 hotfixes, 7 of which are cc:stable. All singletons, please see the
changelogs for details.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQTTMBEPP41GrTpTJgfdBJ7gKXxAjgUCZzkr6AAKCRDdBJ7gKXxA
 jsb2AP9HCOI4w9rQTmBdnaefXytS7fiiPq+LVNpjJ0NGXX2FSgD/e1NM0wi8KevQ
 npcvlqTcXtRSJvYNF904aTNyDn+Kuw0=
 =KFGY
 -----END PGP SIGNATURE-----

Merge tag 'mm-hotfixes-stable-2024-11-16-15-33' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm

Pull hotfixes from Andrew Morton:
 "10 hotfixes, 7 of which are cc:stable. All singletons, please see the
  changelogs for details"

* tag 'mm-hotfixes-stable-2024-11-16-15-33' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm:
  mm: revert "mm: shmem: fix data-race in shmem_getattr()"
  ocfs2: uncache inode which has failed entering the group
  mm: fix NULL pointer dereference in alloc_pages_bulk_noprof
  mm, doc: update read_ahead_kb for MADV_HUGEPAGE
  fs/proc/task_mmu: prevent integer overflow in pagemap_scan_get_args()
  sched/task_stack: fix object_is_on_stack() for KASAN tagged pointers
  crash, powerpc: default to CRASH_DUMP=n on PPC_BOOK3S_32
  mm/mremap: fix address wraparound in move_page_tables()
  tools/mm: fix compile error
  mm, swap: fix allocation and scanning race with swapoff
2024-11-16 16:00:38 -08:00
Linus Torvalds
b84eeed05a ARM fixes for v6.12
- Fix kernel mapping for XIP kernels
 - Fix SMP support for XIP kernels
 - Fix complication corner case with CFI
 - Fix a typo in nommu code
 - Fix cacheflush syscall when PAN is enabled on LPAE platforms
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEuNNh8scc2k/wOAE+9OeQG+StrGQFAmc5F/UACgkQ9OeQG+St
 rGQBRg/+P9YMx0MZTV8y5B92yAzOk28QW303f8PWzoTXMiQ1nhMFUhk/TFMaeSxs
 6CJfQ+W5S+N9X1hG8XAlBPZruX5GWKXScS1By4J/sBwTXmIomnkeL6SwQRULF63v
 C/dcFWd9avKo2XnZIhQ8mduczR17MoagXxq6kpLvgaLJ6C/b6XJQ+SwqtuGXuJtz
 NpPrU0hSLOZdfGHQC6jyIhWObgNEX+Li8EZorynOAYiy90sYUgpffAsL/qWUV+cM
 VF/cK+BYkvShxChj6rvcv7vlbGBUaV2DhRIdXe4AxD2hkX3cUmLG+10YQ7pq/gb0
 722w7ZsBRXXFnlKle3vPzf4upWdMJEQ1SM3z6nYcZ8JTK9rGIxvAlt4PhFc6iw/v
 2AF3WSXhbdRg1+6kK5Q/fsga40BtXbL/3pS/5Q57MZfrmF/0PYVdFRvKJQuRVvxC
 +FiWTDKuR7yTSK9/5hx+2W6WDjuDvoFeMBo4n9GyqdajIpi13dUminE/KdCTuz57
 OefDS7SGfUlnWj6JAUbF+hg0/Loij5KldZbmQDWLeU2/LTx3UMUMNZ6RLATQ33tT
 +aMnrxwEd2qPXNhlC/hAz/PR5tt14w2jlEK+1x4S5siW6vi4+8F6KfcycZFzkVHI
 gqRNhG//mmpnCzK7FU5q0Od0GrM1zpYhhnAXm92QPP4zJp1R0s8=
 =yhjm
 -----END PGP SIGNATURE-----

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

Pull ARM fixes from Russell King:

 - Fix kernel mapping for XIP kernels

 - Fix SMP support for XIP kernels

 - Fix complication corner case with CFI

 - Fix a typo in nommu code

 - Fix cacheflush syscall when PAN is enabled on LPAE platforms

* tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rmk/linux:
  ARM: fix cacheflush with PAN
  ARM: 9435/1: ARM/nommu: Fix typo "absence"
  ARM: 9434/1: cfi: Fix compilation corner case
  ARM: 9420/1: smp: Fix SMP for xip kernels
  ARM: 9419/1: mm: Fix kernel memory mapping for xip kernels
2024-11-16 15:14:39 -08:00
Ard Biesheuvel
e7c1d1c9b2 crypto: arm/crct10dif - Implement plain NEON variant
The CRC-T10DIF algorithm produces a 16-bit CRC, and this is reflected in
the folding coefficients, which are also only 16 bits wide.

This means that the polynomial multiplications involving these
coefficients can be performed using 8-bit long polynomial multiplication
(8x8 -> 16) in only a few steps, and this is an instruction that is part
of the base NEON ISA, which is all most real ARMv7 cores implement. (The
64-bit PMULL instruction is part of the crypto extensions, which are
only implemented by 64-bit cores)

The final reduction is a bit more involved, but we can delegate that to
the generic CRC-T10DIF implementation after folding the entire input
into a 16 byte vector.

This results in a speedup of around 6.6x on Cortex-A72 running in 32-bit
mode. On Cortex-A8 (BeagleBone White), the results are substantially
better than that, but not sufficiently reproducible (with tcrypt) to
quote a number here.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2024-11-15 19:52:51 +08:00
Ard Biesheuvel
802d8d110c crypto: arm/crct10dif - Macroify PMULL asm code
To allow an alternative version to be created of the PMULL based
CRC-T10DIF algorithm, turn the bulk of it into a macro, except for the
final reduction, which will only be used by the existing version.

Reviewed-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2024-11-15 19:52:51 +08:00
Ard Biesheuvel
fcf27785ae crypto: arm/crct10dif - Use existing mov_l macro instead of __adrl
Reviewed-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2024-11-15 19:52:51 +08:00
Dave Vasilevsky
31daa34315 crash, powerpc: default to CRASH_DUMP=n on PPC_BOOK3S_32
Fixes boot failures on 6.9 on PPC_BOOK3S_32 machines using Open Firmware. 
On these machines, the kernel refuses to boot from non-zero
PHYSICAL_START, which occurs when CRASH_DUMP is on.

Since most PPC_BOOK3S_32 machines boot via Open Firmware, it should
default to off for them.  Users booting via some other mechanism can still
turn it on explicitly.

Does not change the default on any other architectures for the
time being.

Link: https://lkml.kernel.org/r/20240917163720.1644584-1-dave@vasilevsky.ca
Fixes: 75bc255a74 ("crash: clean up kdump related config items")
Signed-off-by: Dave Vasilevsky <dave@vasilevsky.ca>
Reported-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Closes: https://lists.debian.org/debian-powerpc/2024/07/msg00001.html
Acked-by: Michael Ellerman <mpe@ellerman.id.au>	[powerpc]
Acked-by: Baoquan He <bhe@redhat.com>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Cc: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2024-11-14 22:43:48 -08:00
Colton Lewis
e33ed362cf perf/arm: Drop unused functions
For ARM's implementation, perf_instruction_pointer() and
perf_misc_flags() are equivalent to the generic versions in
include/linux/perf_event.h so arch/arm doesn't need to provide its
own versions. Drop them here.

Signed-off-by: Colton Lewis <coltonlewis@google.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Reviewed-by: Oliver Upton <oliver.upton@linux.dev>
Acked-by: Will Deacon <will@kernel.org>
Link: https://lore.kernel.org/r/20241113190156.2145593-2-coltonlewis@google.com
2024-11-14 10:40:00 +01:00
Arnd Bergmann
2b7fda346e Microchip AT91 device tree updates for v6.13
It contains:
 - device tree support for the Microchip SAM9X7 SoC and the Microchip
   SAM9X75 Curiosity board
 - enable power monitor support for SAM9X60-EK, SAMA5D2-ICP,
   SAMA7G45 Curiosity, SAMA7G5-EK boards
 - updates the uart nodes with missing properties
 - device tree cleanups
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQTsZ8eserC1pmhwqDmejrg/N2X7/QUCZyuq2wAKCRCejrg/N2X7
 /SuVAP9pziV3tFoypFQoVttvsJarlXhPh8d5bK6zB/Q/gBQeuAD/aWPbfFBvSOl4
 H6FWMj+ap1iLbNy8dIYqDX/NkwH43w0=
 =PiDc
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmc1N90ACgkQYKtH/8kJ
 UieRJQ//bEZBz+12tW2DHuxIWGIdjorHls9PcAuAekgSEgMsrBXMt9F4QZnLIjP8
 8GeKr4drahWGfyXv3hvqwr39QhCFuFq6d/hlW23mmOcj3SFxhIvLdknLzRL3yMvk
 WhcUywBnDRnvuntWKOOmqhp2C/stWvsp1Jtrsq2R1Y3+wjH2HyGXwU6S7XkSlXX9
 4Am9sqkYl0r365los8zjnk1fTV29wxHN2tMN00T2wVACtxo+pU1IsfurA7eu0ahQ
 Q/a+jIZyTk4cO6HtcPzH9ZhdlBSmJQPaEskz59Lp03kyiE+iENBE2l3CxTXielQe
 nhJsHz33R/jNJJMrTACqAyT2awjfLcnW9+vCvjEFhrhnmSmAQKVJTyQMOrZyhyHo
 o3Mgtq5ZhzZHGWeBChraVCIlMswbJp1uBUP9KFMzgroYEo0zOYOTwjN7QzPG/6mj
 DjAHpAw9ZKKa4gc35h4r9/iT/XUZ09TRnilHiNlrPGc/UTXivNYlvn5xsXMhaTQy
 JE9APKKfOfZ/GxL7avzfgWvfpypWgQC/ZvfJ796YyOKtYt3Al7VzDv2IdZGSg4N6
 2OkYA/EHHvsKHjokg3tTzOXPtSREcpiberkl7mf8m7oJgZb8a28r0XqU2gm/WX1C
 9E4RaPMkPVmNs3V4ACh+sHUNwtXHO0zUYqbpTvvgmULNvfnNpPU=
 =Gfl0
 -----END PGP SIGNATURE-----

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

Microchip AT91 device tree updates for v6.13

It contains:
- device tree support for the Microchip SAM9X7 SoC and the Microchip
  SAM9X75 Curiosity board
- enable power monitor support for SAM9X60-EK, SAMA5D2-ICP,
  SAMA7G45 Curiosity, SAMA7G5-EK boards
- updates the uart nodes with missing properties
- device tree cleanups

* tag 'at91-dt-6.13' of https://git.kernel.org/pub/scm/linux/kernel/git/at91/linux:
  ARM: dts: microchip: sam9x75_curiosity: add sam9x75 curiosity board
  dt-bindings: arm: add sam9x75 curiosity board
  ARM: dts: at91: sam9x7: add device tree for SoC
  ARM: dts: microchip: Rename LED sub nodes name
  ARM: dts: microchip: Rename the pmic node
  ARM: dts: microchip: Rename the eeprom nodename
  ARM: dts: microchip: sama7g5ek: Add power monitor support
  ARM: dts: microchip: sama7g54_curiosity: Add power monitor support
  ARM: dts: microchip: sama5d2_icp: Add power monitor support
  ARM: dts: microchip: sam9x60ek: Add power monitor support
  ARM: dts: microchip: Unify rng node names
  ARM: dts: microchip: Add trng labels for all at91 SoCs
  ARM: dts: microchip: sam9x60: Add missing property atmel,usart-mode

Link: https://lore.kernel.org/r/20241113182050.2176500-2-claudiu.beznea@tuxon.dev
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-11-14 00:35:57 +01:00
Arnd Bergmann
de6dff2090 Microchip AT91 defconfig updates for v6.13
It contains:
 - enable PAC1934 power monitor driver for the Microchip AT91 defconfigs
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQTsZ8eserC1pmhwqDmejrg/N2X7/QUCZynPXAAKCRCejrg/N2X7
 /Up+AP96Yz9vhsiCf91K4KetECyoZ66K0ESLIs8kzJd4HTPJKgEA25xpSu24Usz7
 uSsNYEdfSHosJ+KUFD0GPZ+EEwTAPg4=
 =Qe4u
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmc1Hv4ACgkQYKtH/8kJ
 UifeKBAAnsb3W/Pqrd4G9+J8ayYYYOeYeiPS7gbaPRa4BYoGxJxt714odONbWr/U
 Vcb2qe680MQ0CCiuM9b3KpruVSNVE4wMMe7tGqF3id99/zE3nd5ZFaPyWvqeaP5o
 dsvnP3IIPsAiozKEH6fsyNnZwtjHA6P4rFyVb96DFEgKo5fUleMYnKjR2RK9KF67
 v+2H8xZjLQP9EbHh4hLyJQwme3how5Ej6o5od+VO7ffq4nVgFDgvSvkWNMabR6OR
 48fJtCxd72onxP0gOxrTwLvTlsNdlUndlshElwZc9wDYww2EJlwo5cPDasx4YKBo
 z0XmCOq0+YIlyVENAsdPkjpT0gQfhI84exqswOKwnh4jNK+Q2Vhfdoo0I7q+maPB
 Mgjzzs6xD7ZbyCEEpRaDJrKZMxdNLyExDPzz+0lkpB5Y13PdhH45Rc7YsRLVO6TC
 rFDPArfp8jKIPy50JBxR9rtUuDTNFFHZ59C1DKJ98ZqT9OMP/0JngKJ7dI4zjANn
 gG/J6/ncBM+HjKsJa8h78ZM6S/Zk+6saCw6pjUrEb2wBIMd43pmveP3l4DVlKZFz
 Duviy5lPSfuyUZ5g0Z3uuPJcAkC91tAFq7J4P2e0MJXi5sa2KGZodDx613C81tmy
 zA14OO/cB+06KWUhltOxS6uEKtVUXvqCrckEplguh2ZSR+HE30c=
 =iuEN
 -----END PGP SIGNATURE-----

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

Microchip AT91 defconfig updates for v6.13

It contains:
- enable PAC1934 power monitor driver for the Microchip AT91 defconfigs

* tag 'at91-defconfig-6.13' of https://git.kernel.org/pub/scm/linux/kernel/git/at91/linux:
  ARM: configs: at91: enable PAC1934 driver as module

Link: https://lore.kernel.org/r/20241113182050.2176500-1-claudiu.beznea@tuxon.dev
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-11-13 22:49:50 +01:00
Linus Walleij
93ee385254 ARM: 9431/1: mm: Pair atomic_set_release() with _read_acquire()
The code for syncing vmalloc memory PGD pointers is using
atomic_read() in pair with atomic_set_release() but the
proper pairing is atomic_read_acquire() paired with
atomic_set_release().

This is done to clearly instruct the compiler to not
reorder the memcpy() or similar calls inside the section
so that we do not observe changes to init_mm. memcpy()
calls should be identified by the compiler as having
unpredictable side effects, but let's try to be on the
safe side.

Cc: stable@vger.kernel.org
Fixes: d31e23aff0 ("ARM: mm: make vmalloc_seq handling SMP safe")
Suggested-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
2024-11-13 08:15:23 +00:00
Linus Walleij
44e9a3bb76 ARM: 9430/1: entry: Do a dummy read from VMAP shadow
When switching task, in addition to a dummy read from the new
VMAP stack, also do a dummy read from the VMAP stack's
corresponding KASAN shadow memory to sync things up in
the new MM context.

Cc: stable@vger.kernel.org
Fixes: a1c510d0ad ("ARM: implement support for vmap'ed stacks")
Link: https://lore.kernel.org/linux-arm-kernel/a1a1d062-f3a2-4d05-9836-3b098de9db6d@foss.st.com/
Reported-by: Clement LE GOFFIC <clement.legoffic@foss.st.com>
Suggested-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
2024-11-13 08:15:23 +00:00
Linus Walleij
d6e6a74d4c ARM: 9429/1: ioremap: Sync PGDs for VMALLOC shadow
When sync:ing the VMALLOC area to other CPUs, make sure to also
sync the KASAN shadow memory for the VMALLOC area, so that we
don't get stale entries for the shadow memory in the top level PGD.

Since we are now copying PGDs in two instances, create a helper
function named memcpy_pgd() to do the actual copying, and
create a helper to map the addresses of VMALLOC_START and
VMALLOC_END into the corresponding shadow memory.

Co-developed-by: Melon Liu <melon1335@163.com>

Cc: stable@vger.kernel.org
Fixes: 565cbaad83 ("ARM: 9202/1: kasan: support CONFIG_KASAN_VMALLOC")
Link: https://lore.kernel.org/linux-arm-kernel/a1a1d062-f3a2-4d05-9836-3b098de9db6d@foss.st.com/
Reported-by: Clement LE GOFFIC <clement.legoffic@foss.st.com>
Suggested-by: Mark Rutland <mark.rutland@arm.com>
Suggested-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
2024-11-13 08:15:22 +00:00
Russell King (Oracle)
ca29cfcc4a ARM: fix cacheflush with PAN
It seems that the cacheflush syscall got broken when PAN for LPAE was
implemented. User access was not enabled around the cache maintenance
instructions, causing them to fault.

Fixes: 7af5b901e8 ("ARM: 9358/2: Implement PAN for LPAE by TTBR0 page table walks disablement")
Reported-by: Michał Pecio <michal.pecio@gmail.com>
Tested-by: Michał Pecio <michal.pecio@gmail.com>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
2024-11-12 23:51:06 +00:00
WangYuli
fb5af7d540 ARM: 9435/1: ARM/nommu: Fix typo "absence"
There is a spelling mistake of 'absense' in comments which
should be 'absence'.

Link: https://lore.kernel.org/all/fca25741-c89f-43ea-95af-5e3232d513fc@arm.com/
Signed-off-by: WangYuli <wangyuli@uniontech.com>
Reviewed-by: Vladimir Murzin <vladimir.murzin@arm.com>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
2024-11-12 23:51:05 +00:00
Linus Walleij
4aea16b7cf ARM: 9434/1: cfi: Fix compilation corner case
When enabling expert mode CONFIG_EXPERT and using that power
user mode to disable the branch prediction hardening
!CONFIG_HARDEN_BRANCH_PREDICTOR, the assembly linker
in CLANG notices that some assembly in proc-v7.S does
not have corresponding C call sites, i.e. the prototypes
in proc-v7-bugs.c are enclosed in ifdef
CONFIG_HARDEN_BRANCH_PREDICTOR so this assembly:

SYM_TYPED_FUNC_START(cpu_v7_smc_switch_mm)
SYM_TYPED_FUNC_START(cpu_v7_hvc_switch_mm)

Results in:

ld.lld: error: undefined symbol: __kcfi_typeid_cpu_v7_smc_switch_mm
>>> referenced by proc-v7.S:94 (.../arch/arm/mm/proc-v7.S:94)
>>> arch/arm/mm/proc-v7.o:(.text+0x108) in archive vmlinux.a

ld.lld: error: undefined symbol: __kcfi_typeid_cpu_v7_hvc_switch_mm
>>> referenced by proc-v7.S:105 (.../arch/arm/mm/proc-v7.S:105)
>>> arch/arm/mm/proc-v7.o:(.text+0x124) in archive vmlinux.a

Fix this by adding an additional requirement that
CONFIG_HARDEN_BRANCH_PREDICTOR has to be enabled to compile
these assembly calls.

Closes: https://lore.kernel.org/oe-kbuild-all/202411041456.ZsoEiD7T-lkp@intel.com/

Reported-by: kernel test robot <lkp@intel.com>
Reviewed-by: Nathan Chancellor <nathan@kernel.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
2024-11-12 23:51:05 +00:00
Arnd Bergmann
9c6cb03775 i.MX SoC changes for 6.13:
- A change from Andrew Davis to convert i.MX6 PM code to use new
   sys-off API
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCgAyFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmcoe/MUHHNoYXduZ3Vv
 QGtlcm5lbC5vcmcACgkQUFdYWoewfM58Ogf/Z3+r8M479tEnIkCMMy64Fpl7KlTJ
 LvEZGChV7kaqTrwcE5HzW1sVbccNZbBVtXICjOfyleRI251dsxr3/c0DcduWxNM1
 Ss10x7yavWReJUCscLDiIDMKA6IIGR6z3V5BJUWj43iVdImIGWLgoJwbbWwKWn07
 qoc+S38gcws5JUSZtahEEIaOv98x8olOrFxKV5x0zMYK7tvD83rpmvxFFJFnbiXN
 DlPykFvIY42+G1QpHCiND0JzPpLAN9XZE62Rpt045OMKswJFTJR6+Wo0cpsCYIJE
 COOyTukXW1xgnYtsP2YL/Wpj40hk+bIr7WAu6GnT2ES3OIjwQNgyFsjyqA==
 =Q548
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmcz01oACgkQYKtH/8kJ
 UifZ4A//bf7ctofN4CBUtdwpS4FeQKgwVQzs4naI5t6idP2EmWSfPBeVOxwKpTB9
 6bKSuK2iVq3qf+o7rQC4RasHDylzGN442hVOXVs5h0rIYjQ3k5DXsMCk7VYzO+qZ
 8ycx5hFr6j5XNCweMyVc/QVITiwo4iIUKJ89xa1fvHyvB5zgB5vyTA0oyUFnyp2w
 Rv1c/9ovL3A5+lunTO35gpgW6qHf12Z4r1ihdMIpRy4JmHjwzXzBPS43AkBcC5ed
 qb8G4EHjFO1xcFuNcumvbvSZqGgsoUBiDS0kvWuvpRjAsmRNKb56XN7LEbTVvl0h
 Fgi5mnstWewpomswo7vEhT/PytqCB3+klkaozkXYjmParLrKXhU6k2+xuBfgn0ge
 VaZnijGyorV8cRmDFka2UDwyBdFmDrFHELiP35NWvHaKIfnulJQ3TrFKwWf4M8a+
 F3kPcp0faSJusFebm8YDIXJPkeG3MhcT7KyXFwhJTpXtBMJgqtxtttwT4VkRld0l
 gCC8FJvTX+YjqJ8wPz3/HEBxBnvbgg5jotOTdcS3Z/3ooLCVONMlU+hDQ0RFCxSe
 BFuYYkyNA5wvknWMgv8W024q6VVRut5quwFdgMibAcK1EH31o4V8USQKGT7h9vpJ
 cPkdIxCys4FJkrN54wTMfw16KvqOHhWFsIqXdPWr74gwKvlXkp4=
 =IX9G
 -----END PGP SIGNATURE-----

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

i.MX SoC changes for 6.13:

- A change from Andrew Davis to convert i.MX6 PM code to use new
  sys-off API

* tag 'imx-soc-6.13' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  ARM: imx: Switch to new sys-off handler API

Link: https://lore.kernel.org/r/20241104090055.1881860-2-shawnguo2@yeah.net
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-11-12 23:14:50 +01:00
Arnd Bergmann
d95fa0fab7 ARM: Zynq SoC changes for 6.13
- cleanup zynq_slcr_init()
 -----BEGIN PGP SIGNATURE-----
 
 iF0EABECAB0WIQQbPNTMvXmYlBPRwx7KSWXLKUoMIQUCZyTOzQAKCRDKSWXLKUoM
 If9PAJ0SCeGdCLcVaofKgO1nHu5lrX8a8wCgjFyg0qiNIEoGybncVg2FAdcHmgQ=
 =YII4
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmcz0y8ACgkQYKtH/8kJ
 UieF1RAApP36pLeq40tZgPjrvbe5DGJCi1+YE1ovJHQBWSCYcbYmaxnKz03SHZxl
 rtNhAAATxSTxQ+5atxvgx8URDlBjVnPWu06w8gjGgXEPeRLZnV8RvBPvAvOYQ+p9
 nusHOH8kJycWaYpOWP3fHGqm27zYjwahgguAkN1qtJc8UF2Ti0rR5j1EBSlXDLs/
 aPo8SENgPxM5/Nh/ubA+Zk4IIUUM14lMCeGuYPJTA7Phjb8okxwS5EwvWv78hnUD
 RxjHJ7rG27PxqQjLviBCIRvdJBCVuBuNjDKdyKgq3VDQjhMj2JJYDdrqy8EhxmRz
 I7GljgiiUvRxviRj3kTtOUW1c+6njVJxBDM3JmYeKbBTHPJpli2+l+q5jeiH8pVB
 QnRmvI8jm8XdTfTMply8uLXqK2HKhfLNdzw8HHypLJX29pfTzw3cyYy8N4phYjvs
 xAmvXf09j9ciDEWPJ8iW/asUZA2Rl+qwbGr9wZ+eADm5aeUy4iMdwtI34XFUI1ik
 cRMZi+6hPHhPpNUjX/Tep/GL9bmlgd3K7GLjVewRMejSrokp6GhU7Fc8XLgJaq0A
 FbRFA4BNbLxgddN3DGvlEm79FQu5L9/M6FcsrnM8Majt3fdTZyyO5Sdyjpa5LQAM
 C0JS0RBgFs4PbJYXNtNtyWPRmVKKujVNr1ZreTOUag6iB4BiGNA=
 =vGJw
 -----END PGP SIGNATURE-----

Merge tag 'zynq-soc-for-6.13' of https://github.com/Xilinx/linux-xlnx into soc/arm

ARM: Zynq SoC changes for 6.13

- cleanup zynq_slcr_init()

* tag 'zynq-soc-for-6.13' of https://github.com/Xilinx/linux-xlnx:
  ARM: zynq: Remove unused zynq_slcr_init() declaration

Link: https://lore.kernel.org/r/CAHTX3dKLb4nOVpVvnwyxE6zJZNXpiB4hh=WzpKWwhqP7aLobjw@mail.gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-11-12 23:14:07 +01:00
Arnd Bergmann
1c8f196da9 This pull request contains Broadcom ARM-based SoC changes for 6.13,
please pull the following:
 
 - Linus adds support for the debug UART on BCM6846 (BCMBCA) platform
 
 - Florian dros the custom init_irq() callback which does the same thing
   as the standard irqchip_init()
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEm+Rq3+YGJdiR9yuFh9CWnEQHBwQFAmcfCrEACgkQh9CWnEQH
 BwRxBxAArVZ/cjrpMTvmNi9qgoZaT6Qtp5+fMdATSbIA6+O1lW+04anmGliH4ntm
 gTsrchds8c3+Uf78rMWcI4rwztInRb7k2tjtWsH1S6Z+xWwaC050AVNvlQP66QJJ
 N/S5WMTtROVE3ZXLENGQLdeTUvjoZjfvydUCReOsH1CX8aqnKNGzUjEW6O7mPtAc
 1wWpQnZ/9BVEikcnKhcWouS5MkXejwbOO7YIbpQfUQCHOUjuSj5QAfZSZfNZpVOJ
 OHtTS0Ukw3Ejcd8zNYI8+zBzNMyhuwnbKmMaE7CMK8PyfU1gx9Gp/0dQUunTx1eJ
 Fj6QyzZ5Tw4U/Li4O9g90X+rdcCsuAjhDW1uf7SyaBTuSChCDrtrYcjXiNxnWOLs
 vJiZOzj5VhHJNEKgVeJSGi17ZmXIqxOCKeMEVoG3N6430/tz5OsN8GlQlyZXsEe3
 PWG9LsHrG78zSQs3bP8nzkW0yVmErvhoyaNXfL3EY/+4QnYgSn7tQG4L+ztIG93W
 fC+TBz/zN3+cs9TpXBcnRK/Bv7+CSQGWvsqikPL7+zM0eshtyFwKzAUAM4ox0kaN
 Es9f8Y6sjbRKu4J7n9cUHXzudh3El3P9fE47+oTLJwL8AL2H865A/EALYs6qaEW0
 uTx7S4IskKn8hvV5UmBX10JXG6Vet3b5EfWPGULf9QuKcH+IcKc=
 =IKb0
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmcz0sQACgkQYKtH/8kJ
 Uife1g/9Gv6grB9m9KP3bu631sptFXPAAUHXRAxRzIbX46pSVBVNGxtcvTp07Og0
 1Ise+WgJNReMW9JZplZGg7YubpfEbA0hLskOHBR7oJWQ4R2NvvKdx1bJB+oIo87h
 UnlW+AeX4RlXVyfu4GkNXPHlWNnSU166njGJ7oqk6d9ExZMJZw31bBqVL6bZrKSe
 VJyNr9iqKJ7upfFl0ldY9N6pL5ubZxWz54ni55HPtSe4BaCtfGoo4zM2SxDZiVPE
 jbIhU/2GfOUysWdoxoZIQDqL8gyqC/tb2W1DDtQUgYmIK2WPiaqEtrBeot2tYE+6
 UbldlaUsVmwAGtj367dyz8g45cIlcMLKQuasFSS2LYl4+YgUxqujXxvxvxWNTvYc
 8PE72ZgzrOuTvOJPI5sFO0XTrsN3MbeJSKmsWQda3imZ3B2Zyc2mxV9tZCBsDw3O
 3S+2dui3T4oppGLqUtqt6oocVVtf86lTSQHaVGlakFQ/Wo3uLRprvcluXjbQL4Qm
 VS8qJ84cYgw7kxzWUwzBcUK2NdUDo+lExpAqSUUkSJOBIt0ey/7TWB2bE8u1NJ5y
 PByGOuPQYzFBHvKHQcVOHADNyMEEkNRTwlYeblmA0WkwmtfxX6dY8yeR+v1d4PjC
 T1ctBNOPUSewVKypbVZT1lQ4TtIN7t+MDKYXeHJD06/yU/6XYg0=
 =pE/r
 -----END PGP SIGNATURE-----

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

This pull request contains Broadcom ARM-based SoC changes for 6.13,
please pull the following:

- Linus adds support for the debug UART on BCM6846 (BCMBCA) platform

- Florian dros the custom init_irq() callback which does the same thing
  as the standard irqchip_init()

* tag 'arm-soc/for-6.13/soc' of https://github.com/Broadcom/stblinux:
  ARM: bcm: brcmstb: Drop custom init_irq callback
  ARM: bcm: Support BCMBCA debug UART

Link: https://lore.kernel.org/r/20241028035449.734504-2-florian.fainelli@broadcom.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-11-12 23:12:20 +01:00
Arnd Bergmann
31e7323a41 i.MX defconfig changes for 6.13:
- Enable BD71828 regulator and NXPUART Bluetooth driver support in
   imx_v6_v7_defconfig (needed by Kobo Clara 2E device)
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCgAyFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmcojA0UHHNoYXduZ3Vv
 QGtlcm5lbC5vcmcACgkQUFdYWoewfM5PTAgAuIjJWSs48S1ITX67Y3T8ZeaKTpcc
 gkfy2D/2VF39gWSfWGyFFQBUToBInu5WZQmUX/z8tKeEKuKneEh1YxSDyWdH0Dop
 +VmSXcNotemQAvTirc9n6XixxH6seouIeZYvHYW/KwMcfrhZc3F2ALsKI+40NkAp
 5v6JVRmRjmS0+FrMR2MqPDvrfoRzO6ENbKs1Y+wjOEvCld6AaLHGInSGW0+UmB8b
 UzFdg7m+NBHGGZ3eTWIhkXh8vOkJ1o3WERV6it8GPVevsJg9X9eKo7m9HICPwVeV
 I6EFpmAq7kLS4U8+BpuqcnGOzm8CBl5JVEg76Qe1RqlzZlz3JGlUbSEZ2Q==
 =moI9
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmcz0f0ACgkQYKtH/8kJ
 Uifd5Q/6A6h66NLDqDOpsTnQHGxMXYdWPyPnd+R9/tpiCyB8rijuBlPNJYeTATyB
 5RYeQilAjtWRJBB9Bg67lFAQZC/orID4nAnO05gHlxi+dGjiUtdxSIXnplt+8vYE
 9vDjNFBakL6jhWL65Bj5thL0Ijvm75Mk3/ttAqrtsrB7FLyV0XqV4NWEr510PvgM
 Zb35YnzUS83ukZ1d1vXOexrzaq+GaMdKvJlu7olAvZEiPeTxZWF3lgl0HY21ZoOx
 /viyvDQVA1aG0pInvXxxLv9mzPNMoMreEgHpPlXVunAsQAkRYgWS737PQHer9JEi
 J6OG9D/bNUj/GqVsbTpk74QWMranMhbD7ICA1X+DoWYm5WNm6PSydIFjSfTNOCP8
 lLZueyce1+bMmeu406L4YpGMMJXZcPdTYuNwipkj72InBasgoFcly+kUgetWNFCt
 s9M0XyrKvXd9Fq1TxMuADNzslWJulRXL6BrOopmTEgdUS8zoiXUgPUHqeP+2dUmk
 bLvSEp+zHG3VrQOATLa6Ge6x+HHyLuj6IzFAgcPzXpBhLkcHdwkWWlYU8ESHG9NX
 H+EngiKrNFlSZUChIMynPbjrcIXS8QQ1mU+V1XAUE8DQIGT7l3YcRlHatB2ozuw0
 6FsEzcQ1PXHe+L5S4i7Nta+z0zoz75JZyg5D4De+4yu8wFq5qEY=
 =iawl
 -----END PGP SIGNATURE-----

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

i.MX defconfig changes for 6.13:

- Enable BD71828 regulator and NXPUART Bluetooth driver support in
  imx_v6_v7_defconfig (needed by Kobo Clara 2E device)

* tag 'imx-defconfig-6.13' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  ARM: imx_v6_v7_defconfig: Enable drivers for Kobo Clara 2E

Link: https://lore.kernel.org/r/20241104090055.1881860-6-shawnguo2@yeah.net
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-11-12 23:09:01 +01:00
Arnd Bergmann
7d33d08f3c This pull request contains a multi_v7_defconfig update:
- Florian aligns the ARM64 and ARM multi_v7_defconfig by enabling the
   kernel with debugging symbols by default and using the toolchain's
   dwarf version
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEm+Rq3+YGJdiR9yuFh9CWnEQHBwQFAmcfCvQACgkQh9CWnEQH
 BwR9wBAAvhEZTD0qYLCXwFk1rA3CV0y2RNiw9v+lD2MmBCjviqVKJ6WtyCVDttm8
 15w83QfCEs8JnHv/iEYtsXKDM5GRb6Ukz9CJj1cSPZmwql6Te7mXTwzKcBqY9ZUV
 t85OK4RgIYTohyL5wdncMpyF0axP0qjT2KSc5/wFiyoefaywLSeifvHZHpIh0xEK
 004eVuAVGKt7lMwvC6/rd0e8+ZpC81Utueonkl/qRcU7YQmn1JkfFL8wAWMAMwXQ
 FUDjwfIyPCXaf9ZN//FbEpFAjded5PmLL5zyWCEuYAMMtliwMlbr08CGw6z5UrD0
 w8DNhSMC60K9bHKnVCCGvTpgS05GOFLuZ5iaQt+e+PUYUyx42qfG1RkJmB4/xU5i
 ktfkId14ZeizI1e6dXg6k+B7RltVMASpcjt7p4K6/XP/jk5N0wN7WDBk1lNK4/XO
 hlVLYbv4UJGOJlpsVIJBNg0pPzeI08p21uwZLDP916eoj9NbIjQq7IRrfTtO7qCe
 wsVaE5E0zIk8nYw1GQXH6e/VZTQ9gnoHAUC+Kv7lstmDx2VSh5lq5R/s90mfyTj1
 VxevabH6pxkQYzMm4BvWmjRzuty0MCCLO1+Jzr8399nwtPXOrW1V8f/q/5lakh1w
 lX3e6wpEeoDxscRlGot9Tl4hrUAW/e1JEiApObMqvtiqVke/wjU=
 =Dt31
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmcz0XkACgkQYKtH/8kJ
 UielaQ/8DY6aGGtoE6a2PgGHW8F/3KILuva1fNFc42sL+bbZQxdxKbz5Bh0lUcrR
 1AwDYgFVBI+yFi0cSDKhva0f9d66WhYeQRGNP2Bdqyg9B8Jk8Pr0TOf3f9fCgGGr
 qISxCNr9vGI3auEjc+pfO4GesxOheQ8wyYDKuXsD9n7Ryxyvc8hpH2LMSZXr9t+Y
 t1xHRtykt4pkt5wpbiXrJLmdmyK6oW5P6Ltw1sXkHRJRxkxrQmOEooz/XYE+iOHt
 gQDaKwdtEL+zhgORa+diIn1p+l5x00VOq1e+qx7/LzJ4Oz/NMcLQUtIXbbp/LVZ5
 6F0c2/FUbN/dJWOndzAwSjRAc6NrAFvKjNp9NnfT7JIO2t+MYOxbsp4hBPDPYNoZ
 jK8Fy6Gsq9nyteEPNswm0Y3e0tkdR5EXmo5mnAIl8M0uJFg1EbvrLVeSwEuOAslV
 sbjXa0uR2MpecDVrxFVJMtbQjw/rOngDz991+tjEmMR1q7sQXVOhJCQrz/Js0JgJ
 p33o0lA1SZ4tki1VA3h7UmGiOllGFU5Df+sxGrqT/+sBtJFLbshVNePFQQecyp0O
 yoGuDY8sIfu5JQ8Pa6QuB1FYo2kz3VPPhqPRzQ/uJu6MpIQJisybguJBaGQm5i9i
 MAslPLtwRDUzL/W+WvNTfrzZlvyD0VavAVDNw2n0za93FWPkjio=
 =1G37
 -----END PGP SIGNATURE-----

Merge tag 'arm-soc/for-6.13/defconfig' of https://github.com/Broadcom/stblinux into soc/defconfig

This pull request contains a multi_v7_defconfig update:

- Florian aligns the ARM64 and ARM multi_v7_defconfig by enabling the
  kernel with debugging symbols by default and using the toolchain's
  dwarf version

* tag 'arm-soc/for-6.13/defconfig' of https://github.com/Broadcom/stblinux:
  ARM: multi_v7_defconfig: Enable debugging symbols by default

Link: https://lore.kernel.org/r/20241028035449.734504-1-florian.fainelli@broadcom.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-11-12 23:06:49 +01:00
Arnd Bergmann
06fc642c53 Fixed-regulator nowadays has preferred node-naming scheme set in the
binding. This gets all boards on the same state for Rockchip arm32-dts.
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAmcyH54QHGhlaWtvQHNu
 dGVjaC5kZQAKCRDzpnnJnNEdgQqLB/9wgQ7tMybGu8ruGGGVcuyDGq28yqp4F53l
 2KlIZGKSv9zDmNq/uKQhGAnomQLv7zNPemr7iqDK2QeWmPPm5GclLuxnKe7GA7sL
 FyQrWWMNgI2ruH+ms8c8LcjzhWR010Vb6sWA/kXBEezW78Y+7EYaPAVdji7ylVH7
 o3wgq6GWvc3AGXV7OSjBFeU680snsnwg8rW1DVjUdWVdPNmMyiN4sQlYxGdbTQN/
 Vu8rdtROv2qiVhO7KvHfyrwTms56qTon8b3amzmKlFnBGlWOv4svrbwklzL9s+ua
 aPJe0GWvkGlt9vCnRnh7fi9zLdOWNv7G/DQwJT+r2rXlYCng3CtB
 =onFR
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmcz0AQACgkQYKtH/8kJ
 UidCuA//UXJ8LTdhUvr5uBde5DlXftiDYy9VlO6k1bMb+W7T0mGjeA6ysKENC588
 8j5fUtmtCRO2nzD/pMp/A02mvi3ZH1ErLEzUZo7HKLjFgIVG0ZoVW31dRbDgkAbx
 d9wCGC7BHNo681I2xsBucoZwM55mMyeSI/EALVg89V7QYyj9tSjyr7Wj834jMOPp
 7cTL/ZVtSkyNIG3+JlFndEQPF2tsYRNclWUUjf2wuWkQm/C9lVr84oi1H8QWtZop
 tEixFi/kppfV6HXxt2Odk2pWKs7wJivPBVXX1L4ch8rqXUnxigCBPsKm7hmOp7qd
 oTIm6bUofYzRZEVexnTwYm+Cbazg5b+TsPoB48/SVXeOsV9MuNHSzzmd3nktJj40
 pbDOXTu8IBB1TpGHMVcU6e4UyDySDlIZnHxLyZLh5Flmym51Ft+pcni7R2+QG++B
 VZqkPJ3/UqHPeIYOVk0B/2jG6n/fzMwXQGMO9xusgDEYM7+bs7QjutpTSlVE4p6c
 0EUxdsT0JmERyuNo4NfNwR4cBtPIpXASBdT7rxdQOGD5XRg2rEex0j66lk6Gty5+
 TPQM+F9PEaqYCYjkuWWQXTKEJ/2gA67OiKuFu4ny5bUHuYJHxtTHSnaQnmRdobW+
 c2I3o3oCdG2cYwSIUKgslGX115lhfwflG8xBHlyJKP7uyMyqcBw=
 =3uQG
 -----END PGP SIGNATURE-----

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

Fixed-regulator nowadays has preferred node-naming scheme set in the
binding. This gets all boards on the same state for Rockchip arm32-dts.

* tag 'v6.13-rockchip-dts32-2' of https://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  ARM: dts: rockchip: adapt regulator nodenames to preferred form
  ARM: dts: rockchip: Add Relfor Saib board
  dt-bindings: arm: rockchip: Add Relfor Saib board
  dt-bindings: vendor-prefixes: Add Relfor labs
  ARM: dts: rockchip: Add watchdog node for RV1126
  dt-bindings: watchdog: rockchip: Add rockchip,rv1126-wdt string

Link: https://lore.kernel.org/r/6740039.4vTCxPXJkl@diego
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-11-12 23:00:36 +01:00
Arnd Bergmann
36255ab493 Allwinner Device Tree changes for 6.13 part 2
- Remove accidental suniv duplicates in Makefile
 - Add second source magnetometer for Pine Phone
 - Add orientation (mount matrix) for Pine Phone's accelerometer and
   magnetometer
 - Enable eMMC and MMC on A100 Perf1
 -----BEGIN PGP SIGNATURE-----
 
 iQJCBAABCgAsFiEE2nN1m/hhnkhOWjtHOJpUIZwPJDAFAmcwtssOHHdlbnNAY3Np
 ZS5vcmcACgkQOJpUIZwPJDC+zA/9F1YbB88RHtaLKwN/WLQZ3vkQxADhulsixI8X
 BHQATpsI477csCxjFJre5VPCDT8w77Dy4v0NHzIfZ/vB74wcTsBXoaW7jsSS9SQs
 V7Z9kf33loRaeY9OUgaJNZLBP0vPCt4GZBlW6VdMsJtID5ZMO0Gl42bFrL+QI8Oo
 4ZnINz+gcTZtJFU6h+ZTiCzqGe13NJTD/Q8g/yEjMc38tyvVf3t/IhUyZBHCDHs+
 G4Fs0aIpLYbicecRfk4sNTla2vsAezzkyaCu+Kq/W5dWy2vxKKIyarYMNmTmUJfH
 zed8oRKqqYedAI/1THMhNMTVm1Zr5FluhYBAkbGGVQNeLldBv+5P6Lte4pAUGIFJ
 Gmg0hWDW2KkIpmAmyVMAKgLtSQXLrwPS5Cls6doDk+6dJBh9unPKgl7CUFGnkJo6
 giZSvUi10CKCCf2SEG7KQyHb/dOCwquQf2TMVQvglMbxK4cfdvdryaN4/9z318aE
 eMQbN9MNpFsLUGtfDMjQJ2cOQBhAGsQROJOwLpjf3cBXl62RXx2iQK2e/DIm6sU0
 ElFAAxN7ciq7YlMFZDteEsrAKv9uTsqU7oqxVJFJbwRMhC/hPpknMIsPAzmQSfPx
 WgM1xVUeECDF9suhWAHBWVXi4gY3fTUxUk0UgkRrpPwfAmcECyGqVLU0JOKwowGP
 4/xFtBs=
 =vpQK
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmczz24ACgkQYKtH/8kJ
 Uie1ng/+MJ9Uwv80VTf/qSmm2706bDiDg8A7r1lMeSTD/o57rcg6sfUjHUfLfbRb
 9LWIxOPFgqh+9J3NsivlMC2s3aIGqCJIXzC/0AXgfmwnE5/fKac7gZgctbZRRbJD
 3Uz403tcmRgTHrNpOEg74Yak0HC61gQeR7AtqeuvDz2KbMCvUR3qbpOZ2EqChxxv
 JDGBXVgrke3x6Cexawsf+DX/lBt5A+MMuPPNRdUS9ZIem5T/l0QjboLJU0lHt8MW
 BSfCeZx4SrigHwhHqJxYjVs9KhNIS/se7/QQ0Huw3rBKq/rN+506KduwZ1+r2P5n
 x5TrUt12kzsYPIyruXNBOQLo7fwgQ5dxxiphCMoagVA7CwT1ggnGmuoEEQeWW1KB
 e8gCb2WajgQmNzk9Gd3fG/cr8OjxMI9c5YEu/dy8Gy0UFzh2XD5q8Z2mEDPx01JI
 L8hpaMsRHntoKHK5nWeEsG9q+PcNMgGco7UOC0wpdlxbZwAJP8Q5eRzt9GglMIoX
 6TbAoiEA7rXI04ijkCAJ7pL6cCEbSIt1QY5eIKIohZYhj27sKvVkT/Kt9VIghoy6
 +GqzstDCf6Stf7erlV7Vfp2bwYefxiQtxA099XDaB16hHO3UfCwxnv+wG4cVCFL2
 EmVTsALzS5c+WGoUAcXitCoWhD5VAPGVbCrGRFvu5rraW/wNFpw=
 =4WAW
 -----END PGP SIGNATURE-----

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

Allwinner Device Tree changes for 6.13 part 2

- Remove accidental suniv duplicates in Makefile
- Add second source magnetometer for Pine Phone
- Add orientation (mount matrix) for Pine Phone's accelerometer and
  magnetometer
- Enable eMMC and MMC on A100 Perf1

* tag 'sunxi-dt-for-6.13-2' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
  arm64: dts: allwinner: a100: perf1: Add eMMC and MMC node
  arm64: dts: allwinner: pinephone: Add mount matrix to accelerometer
  arm64: dts: sun50i-a64-pinephone: Add mount-matrix for PinePhone magnetometers
  arm64: dts: sun50i-a64-pinephone: Add AF8133J to PinePhone
  ARM: dts: allwinner: Remove accidental suniv duplicates
  arm64: allwinner: a100: Add MMC related nodes
  arm64: dts: allwinner: a100: add usb related nodes
  dt-bindings: usb: sunxi-musb: Add A100 compatible string
  dt-bindings: usb: Add A100 compatible string
  dt-bindings: phy: sun50i-a64: add a100 compatible
  arm64: dts: allwinner: a100: add watchdog node
  arm64: dts: allwinner: A100: Add PMU mode
  ARM: dts: sunxi: add support for RerVision A33-Vstar board
  dt-bindings: arm: sunxi: document RerVision A33-Vstar board
  arm64: dts: allwinner: Add disable-wp for boards with micro SD card
  arm64: dts: allwinner: h313/h616/h618/h700: Enable audio codec for all supported boards
  arm64: dts: allwinner: h616: Add audio codec node

Link: https://lore.kernel.org/r/ZzC-OF57MT_yCeWH@wens.tw
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-11-12 22:58:06 +01:00
Arnd Bergmann
4bdb783791 mvebu dt for 6.13 (part 1)
turris-omnia: prepare device tree for LED brightness change detection
 kirkwood: fix at24 EEPROM node name
 -----BEGIN PGP SIGNATURE-----
 
 iF0EABECAB0WIQQYqXDMF3cvSLY+g9cLBhiOFHI71QUCZy3Z9AAKCRALBhiOFHI7
 1XsoAJ4pNATVd6wMB99OU5acH2NoJNTAwQCfd9MxQ5Jry32vZb+hlGhbcSYt0+g=
 =lmuu
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmczzv0ACgkQYKtH/8kJ
 Uid/EA//ZnhQOYIAeZjcPQvzfI7Eyxrn3UNUqBrL54UNEgq0IxyYAZd58ayRzA1y
 GxrknNGxw9dhVY7xZhl6iZyng7Xszh02zNEfgQNg77YIsUzD2SdHun3yJf65+dTt
 EEGrq2eYnc1SYICDtKiWP7w38zocALemXNUi7wc9SzjXQwuhmhszKIVET5H+5nSE
 tR2KXMOK5eyPcMsyl7slxNIN0+meqJhD/b335CcqyAmkjPDPLYx2haSrC2BlgPZE
 QtF5CrYUDF5Bbf9DbHGxrTKEQh/KNuHp9sfiQXAztKGJ1fPCGNny16+jiVRDd8z+
 WW878haXKC5QxhGhE6IWwOfMCR31bGr35RkrxcIiLxqrPBpWlgHCGnp7Kgxql1g8
 Zh4rTR0a7g8BOS6Gwc1x8kmLQG2AaFKmZMCBlKA7D0zvqPej5kBpfHHV/R24kWHm
 qaJeTSRMDWAlDuyusId5U0ZIN0t1Wkhkfg2wD1qAfBih+OBbln3eAHGVUQy/A8/X
 M1itMn/eF9fvKvCXlfzBp7ngraukJsj92KPeyjHwJJ2Qr//Vj5A1ZKI50siBvDWm
 9xxvU6n6tOTH0IrqMcX1tJ0vAIGLGhqYdznG2X8E1CHP4JUl/M2bxCxVyDgn0dL5
 +RwhKSb21wHWYbfE9PhOi3Oegn/wp5PKegdPhC/3Iar7YWcAetU=
 =XOvv
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-dt-6.13-1' of https://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu into soc/dt

mvebu dt for 6.13 (part 1)

turris-omnia: prepare device tree for LED brightness change detection
kirkwood: fix at24 EEPROM node name

* tag 'mvebu-dt-6.13-1' of https://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu:
  ARM: dts: turris-omnia: Add global LED brightness change interrupt
  ARM: dts: marvell: kirkwood: Fix at24 EEPROM node name

Link: https://lore.kernel.org/r/87bjyq83x0.fsf@BLaptop.bootlin.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-11-12 22:56:13 +01:00
Arnd Bergmann
2f992e7346 STM32 DT for v6.13, round 1
Highlights:
 ----------
 
 - MPU:
   - STM32MP13:
     - ST DK board:
       - Add support of WLAN/BT Murata Type 1DX module.
     - DH SOM:
       - Add M24256E EEPROM suport.
 
   - STMP32MP15:
     - Use IWDG2 as wakeup source.
     - Add support of WLAN/BT Murata Type 1DX module on DK2 board.
 
   - STM32MP25:
     - Enable RTC.
     - Add DMA support for U(S)ART, I2C and SPI instances.
 -----BEGIN PGP SIGNATURE-----
 
 iQJRBAABCgA7FiEEctl9+nxzUSUqdELdf5rJavIecIUFAmctzAYdHGFsZXhhbmRy
 ZS50b3JndWVAZm9zcy5zdC5jb20ACgkQf5rJavIecIXE3RAAhDwMjvowY1XYAbOd
 sMY7SiIZCThBgys6E749zgkstMKATfNiRVPi/Xwhibfp8Dk7snijwI2SMd/Wc49i
 DnycNY/pBxgCWm4rx4QESgWFtBnh4jSN/OjITIf8EwIg2tvDFU8GCmpeHekaGDSn
 6rYQOSYM9G9EIFXHNJPfbsPfCERyinn89LQT0vql47EjN2oKZRwG02ZPPHJziIjs
 tAONJlp+5gWDnCgzophlqQA4+8q+sShQbW+AhCBlYTrwDqLPyP/83tOiKbcWzvNl
 VukPCnsKqyD8qCmyTDxjghprwoVd2crFxjeI+JiAIPb1h4SpkRmA9sv62hMKPJBM
 M3QSVOaLGi0VkXn6Aow4mdAvEX+aO1sfA6G/FCF99BcLUbR/gVoML+ZkPEXEFa4c
 KsjcZuk99A00msZ4VT/Z1ydftoWgajT5ZXbxzujArIKB7w+Nv/NhUQ94WJBtuvwS
 Hvnkc4nbI3i8JBnD34o17w9EZZ7Q3f2aO4wJkK/DYuBnLkPjFhbV0KYbMlHh/gDZ
 PDlLWB2GoCKZxFJGBetTb4bEYNO8UA5zixhT81NI+O7FAKlluKsJWWKQUKaHvkWC
 Qf99LSd2xt5lcMmVEentFDEUIXj9z1NDmkQyIfrTWpgXWU+vpn8g5+Wmpy0Q6rg9
 Dq2OiAW1p2v3USRR8Ao2aXtGtY0=
 =yEXz
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmczzmsACgkQYKtH/8kJ
 Uich1w/+JeabBt3wucXFbgc/W5m5bWC/HWoF+Be5rxYkBAFAVai2mrvncKh9TP8b
 8qmSY6U6hRDNE/E7vJDqrW7gsFQUmCwmk9Why8FEv4HI3x45aWLL3vLVkqRXN+sg
 PG+D4vbM6LRHLMTETsKa4PhVloEn9nWXM9g0CU+SKo5jlhMdLPEkwaBUTIM0Jvck
 aN972QLIpeN42EcCniKLK8cWUzYQfI9ei2Hxpmfo1JO0hM0DbmlLVFz/JRF61abg
 HTS//waeAkRJzobxYmc0VLDQnyycEBu9KOhjBOpYK0ZmGfaMJmPzJKMN4pxrW/7A
 oo44Gt9ifDIjsTP5KGfmJpVYcWSBEhhaUOfE7x81OxWq14KkmP3JMf9bUybV/HV2
 DFG366cnz8vrvJ6JxaeG07e7BW7MlZVclv4v9an47812rb/5k4e/UY/ynGl0DPBZ
 PCUvsNYFRG8w13aPcbAYBF+sTZn2AUuiMhyP4JOrxMMB2rGHQStqfQtWy/hrz+SX
 Qo/7je/OGuWqYreLQ7EXECz//3tSYZSrif16Ie8t+1OfR/+fvyceYwHmaDLiiqsD
 Rsf3is9zhW+Vnjn04+8yYEEtDv7KZ+drHjYaD847O0q66p2QsTSwbjlOQ3mtG0xm
 SaTevBiddHHaY8ZQjS0CrUOg5f3YV6VmSOyEK/i5B3Dq7pJziGo=
 =+sT+
 -----END PGP SIGNATURE-----

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

STM32 DT for v6.13, round 1

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

- MPU:
  - STM32MP13:
    - ST DK board:
      - Add support of WLAN/BT Murata Type 1DX module.
    - DH SOM:
      - Add M24256E EEPROM suport.

  - STMP32MP15:
    - Use IWDG2 as wakeup source.
    - Add support of WLAN/BT Murata Type 1DX module on DK2 board.

  - STM32MP25:
    - Enable RTC.
    - Add DMA support for U(S)ART, I2C and SPI instances.

* tag 'stm32-dt-for-v6.13-1' of https://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32:
  arm64: dts: st: add DMA support on SPI instances of stm32mp25
  arm64: dts: st: add DMA support on I2C instances of stm32mp25
  arm64: dts: st: add DMA support on U(S)ART instances of stm32mp25
  arm64: dts: st: add RNG node on stm32mp251
  arm64: dts: st: enable RTC on stm32mp257f-ev1 board
  arm64: dts: st: add RTC on stm32mp25x
  ARM: dts: stm32: add support of WLAN/BT on stm32mp135f-dk
  ARM: dts: stm32: add support of WLAN/BT on stm32mp157c-dk2
  ARM: dts: stm32: rtc, add LSCO to WLAN/BT module on stm32mp135f-dk
  ARM: dts: stm32: rtc, add LSCO to WLAN/BT module on stm32mp157c-dk2
  ARM: dts: stm32: rtc, add pin to provide LSCO on stm32mp13
  ARM: dts: stm32: rtc, add pin to provide LSCO on stm32mp15
  ARM: dts: stm32: Describe M24256E write-lockable page in DH STM32MP13xx DHCOR SoM DT
  ARM: dts: stm32: Add IWDG2 EXTI interrupt mapping and mark as wakeup source

Link: https://lore.kernel.org/r/92d2d6df-cc5c-488f-8ebd-550b1903db12@foss.st.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-11-12 22:53:47 +01:00
Arnd Bergmann
bf7626089a Amlogic ARM DT changes for v6.13:
- DT fixes to pass bindings chedk, including:
  - fixing nodes names
  - dropping meson6 ATV1200 board
  - add missing properties
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEPVPGJshWBf4d9CyLd9zb2sjISdEFAmcrcQ0ACgkQd9zb2sjI
 SdG/0w//eruAQigovZ3UkZmcoxRIWW7kTKk5pQpxFypFIVSrqxGv1VLCzvMBuTyH
 OPYLsD7Di7KJ36og6/JcNw9sRQeqFbrv53NfS8GsBKP+n2w/9Woo+ulKEW0EDAzS
 ZS5EexUeW7mNgA019oBwwnN/dTFUhbp6yexU+ta5XvhSihHxu9OZcxGRLCZNkeAz
 LshuzJKNyMxlINneJe8EEQYWl/HapXRrUFk7LTePgNoy4FOyMZloBBi9Zpg3RsjE
 b6uw6lC3DLKNlkcSo4HLmHpzFOhfLkvpdCtZkIN9Z3QeEJt21gphqlh0rg3Bvr5L
 jb70+1vCWAuvtlfXb4s9ZJKZ/Cyhi8FoluIi7zcOvYLgZt/Y/yGJ+J4UhprrNQfW
 H9FRpK9lbW+mhXp7myD4ZIk0BB6gicVkQ8eiRTp7KR9YvSuRXZLm8HrD352zvBfG
 k15YaYtbdmfifnQM8J9ALrHyFAYkrf8pMtt/LsO2RXaQxzbySvdwrGoGXfveq7i/
 eDSlf7GNnfyoCDGAgeBRf0TV07Jq2adC0r8fctdsHB+jjUr950VDLQevML3J5ptH
 tPKGSshpm6qMGYH80xTvCX6y+b4PMK0HCRTbgZ9pxyH7H4TtNzYigw9q9BEWCwpd
 9O4PyDD0OZLoHSFB0BYt5+wskVzo3BN0lguFflhT3nXri68YZd0=
 =w/xu
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmczzcIACgkQYKtH/8kJ
 UicOexAAn2IZA19vspYc9KmpffSQtJje8lAffHVpN8Y7enRnMkBkfvhfWM5Mq0OM
 ncQsX31tlCwfFELwT09F6poa8ZKecaVZLG9McIBIaI5AA6QHbnaYnOlSdte+dpdn
 AO+KZteCVJYn2P/Vze8Doc+ga6Ocll6mO58tEgeYv+/EBz+raz6YwGezmizTAud2
 FjBbPsBdYQA5wqH1lU3++9NuzhaXPAcSWx0nZx48OqOAmvYGJGjWmORDBDfQUKAX
 f2Kr3VEBXsdchRX2jUPwzCWAe/QJFrPfYwnORDvPvi32DvhyZRFKA3H+GE/o/Nyz
 wUAM8w+kY63ihhRboX+e7Rq6hwxkHS/5A2kD/BgOM3za57bsYn88OHVK931EBIW4
 j7pl8Ftvk5rJI4EyV3yhXsV9ofW7I6WMHyibCgNw3oU+Etnypu1mPIA/85wLM4GG
 RsxDLhu99t7tKUhskTbGBRFtms5EyvdrADZB9wPXOlVSzIldo8+6Td9Ox4OgCYxP
 VY6UkmzSkJKVLeuDzyDbmJPwlqcUpsqIQyW9cc9dMudzMxndrKiq7tF1ija+Yy6d
 TZIEEdOvta+RKr5yTkwuorFan14+q1HRrGoZca5rm6WEedPLHV9Z2Vs32kt1/2b9
 aglYJCXpNgJ3j5PD9qmUkul1kgmoFSGSk6pweyv3mo+s2+SdmaE=
 =PZR6
 -----END PGP SIGNATURE-----

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

Amlogic ARM DT changes for v6.13:
- DT fixes to pass bindings chedk, including:
 - fixing nodes names
 - dropping meson6 ATV1200 board
 - add missing properties

* tag 'amlogic-arm-dt-for-v6.13' of https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux:
  ARM: dts: amlogic: meson8/8b: remove invalid pinctrl reg
  ARM: dts: amlogic: meson8b-ec100: add missing gpio-line-names entry
  ARM: dts: amlogic: meson8b-ec100: add missing clocks property in sound card
  ARM: dts: amlogic: meson8-minix-neo-x8: fix invalid pnictrl-names
  ARM: dts: amlogic: add missing phy-mode in ethmac node
  ARM: dts: amlogic: meson8: use correct pinctrl bank node name
  ARM: dts: amlogic: fix /memory node name
  ARM: dts: amlogic: meson8b-odroidc1: fix invalid reset-gpio
  ARM: dts: amlogic: meson6: remove support for ATV1200 board
  ARM: dts: amlogic: meson8: fix ao_arc_sram node name
  ARM: dts: amlogic: meson8: fix soc thermal-zone node name
  ARM: dts: amlogic: meson6: fix clk81 node name

Link: https://lore.kernel.org/r/ffaa3755-8c5d-4fc3-86bf-9129d3889bff@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-11-12 22:50:58 +01:00
Arnd Bergmann
f50f6052c3 Qualcomm Arm64 DeviceTree changes for v6.13
Introduce descriptions of the 8cx Gen3-based Microsoft Surface Pro 9 5G,
 X Elite based Dell XPS 13 9345, the QCS9100 platform and the "Ride"
 development boards thereon, and the SM7325 platform and the Nothing
 Phone 1.
 
 MSM8998 gains support for HDMI. The Lenovo Miix 630 gains support for
 volume keys, audio and sensor DSPs, touchscreen, and its specific WiFi
 calibration variant.
 
 On QCM6490, Fairphone FP5 gains a thermistor adjacent to UFS/RAM, while
 the IDP gains UFS and WiFi support. For QCS6490 changes to Rb3Gen2
 enables WiFi, Venus, PCIe, SD-card, and volume keys. Adreno speedbins
 are adjusted and PMU nodes' compatibles for the two clusters are
 corrected.
 
 The DB845C/RB3 and QRB5165 RB5 vision mezzanines are converted to
 DeviceTree overlays, and both gains CMA heap for libcamera to use.
 
 SA8775P gains GPI DMA support, support for controlling download mode
 (bootloader-assisted ramdump support), additional UARTs, and qcrypto
 support. The "Ride" development board gains WiFi and Bluetooth support.
 
 On SC8280XP (8cx Gen3) another UART is described, used in the
 Microsoft Surface 9 5G. The WiFi/BT combo chip's power management unit
 is described on the CRD and Lenovo ThinkPad X13s.
 
 On SDM630/660 the GPU SMMU and clock controller is added, as is the
 A2Noc and LPASS SMMU, and the DSP-based WiFi device. GPU, modem DSP and
 WiFi is then enabled on the Inforce 6560 development board.
 
 On SM8450 Hardware Development Kit, the WCN6855 is modelled to enable
 WiFi and Bluetooth. A "global" interrupt is defined on SM8450 PCIe RC
 controller, to enable hotplug.
 
 On X Elite, USB Type-C controllers are marked as usb-role-switch
 capable, the GICv3 ITS is enabled for PCIe. TCSR region is described and
 wired up to allow setting and cleaning the download mode
 (bootloader-assisted ramdump) flag, and residency numbers for C4/C5 are
 updated.
 
 USB role switch is enabled on Lenovo ThinkPad T14s and the ASUS Vivobook
 S15. The T14s also gains support for a second source trackpad. The
 Microsoft Surface Laptop gains LID switch and the USB Type-A connector
 attached to the multiport controller is enabled. The CRD has its HID
 device power supplies described.
 
 Application SMMU is flagged as DMA coherent across QDU1000, SC7180,
 SC8180X, SC8280XP, SDM670, SDM845, SM8150, SM8350, SM8450, and X1E80100.
 
 In addition to this, the effort to improve style and binding compliance
 continued.
 -----BEGIN PGP SIGNATURE-----
 
 iQJJBAABCAAzFiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAmcqTFoVHGFuZGVyc3Nv
 bkBrZXJuZWwub3JnAAoJEAsfOT8Nma3FTLEQALnrquJONM9qtUC8E2dw5VGuA5UJ
 hJLahtYsspCCgpCGxzlvX9kF79gDko9CSU2A/xLjXT0OB+OzAsUniQhNWufnpEP9
 JPQ+MOWQp+7UtxL+WNnTmiYaU2nR0gurZhji3gmnMP4sJqiZmH7hGADSYVb5K5G3
 FRAgf1zNwrezW50ZPLsLQqnQRdGfjGyiy0HfVu2NXMk4mkFmaAsw12rFdqIixBq1
 V9STUywmaXbMCfhOZlN79cjjswyBWz+y196gIgjpitHhoY1s7MGwjYiBYXnor+FH
 w5AcoyRs5jxqbnVb12DtzrP0peml4OMdKwdHFq1EY0cVBaNK0+CtG8eew7PssbUH
 Hz4hztK8BBCNMMQbpSW4aqXeDe3EcCNnFVtuX4B100oCTLWpBiKP203NXVttjxt/
 YFch9OoIcQv+ouYzZgJs345bj48UoEX+PusAEo2NeWK19hesA3eNZlslovNSrbn6
 SZoxqQ60nKO+bpncsDBmy68vl/cWawqdrjBENDUL9PeJdzfDoaPGkRJmrbkKb971
 xWFzjUTFnJQJVdywOLhSCAkxGVHL2T0DaIsqVJYkNKgCtOhghJ2IWUk4Mk4ueLD3
 fGGXbY2VGFSI7J/Aq+80rQcmDR2glVvEbebfmqzWYjyQPJnbg8xey4WxgSjpiCur
 TEaBGSyFrcO1sPJs
 =Qu8Z
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmczzIIACgkQYKtH/8kJ
 UidW2A//U7s3EZaJdA4cL6wT3SCb1IGdU4DzsALPJuVlRiQuCiT4C+r/9+k7p6vf
 4sny9ZvvadjtM9Goext4T40rVjw00kcgpI3tE3UzEgDr6yws/7AnpI8/Oo7A2Kd3
 1vn2OBeRMS+HqQKhyjZ2rAtMnSUw7aQ69tVCbc5YeWPN3Tj4dI0/Agg12RZSuz3B
 75aVDiURhzcPTDsnywYXaEzDH0Jkk4+wcmIMk5ll28s+lOlL2YjEGeLeoBFriJss
 4tv4ir5blhlMMWFPRif9cxp1msrd+7nLYBKtBW/65+If5Od3aCg0I6H7beMAFRCr
 H2mO0RadU/E7Q00i8pT48/5/vaDFpyEuvdxRdq4LVkfoqOVnIvj+hV7BMrQpudyy
 /0R1+13FNjKrBI/4UcgaZH06N/i0A296Sxj53jEDgoB/hqr4XpzzrrxvApu44BEU
 dJLGr2LEOe7+rfhXcu8kRwtuza6F0gYL5SfL1zNGfcdSeUNyKd/9j1FqTvmJsBSW
 5zZfgHuiuGb86FSOvIXhEIxKyC19aO8El8tiqGOX2e8HsG23pLJTS6yUQqGxlvt6
 2WSwIzgn7XBOAaCePcVDkpau5rpcqNt2X5Ka9+M2ebXdInjRPHXA9G0LBUbrHYvU
 LcCtK0m7wyDkQYIwuDEBg/xsrg4hpRsvCV5DRR6oD9jtixGnWRU=
 =JBWR
 -----END PGP SIGNATURE-----

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

Qualcomm Arm64 DeviceTree changes for v6.13

Introduce descriptions of the 8cx Gen3-based Microsoft Surface Pro 9 5G,
X Elite based Dell XPS 13 9345, the QCS9100 platform and the "Ride"
development boards thereon, and the SM7325 platform and the Nothing
Phone 1.

MSM8998 gains support for HDMI. The Lenovo Miix 630 gains support for
volume keys, audio and sensor DSPs, touchscreen, and its specific WiFi
calibration variant.

On QCM6490, Fairphone FP5 gains a thermistor adjacent to UFS/RAM, while
the IDP gains UFS and WiFi support. For QCS6490 changes to Rb3Gen2
enables WiFi, Venus, PCIe, SD-card, and volume keys. Adreno speedbins
are adjusted and PMU nodes' compatibles for the two clusters are
corrected.

The DB845C/RB3 and QRB5165 RB5 vision mezzanines are converted to
DeviceTree overlays, and both gains CMA heap for libcamera to use.

SA8775P gains GPI DMA support, support for controlling download mode
(bootloader-assisted ramdump support), additional UARTs, and qcrypto
support. The "Ride" development board gains WiFi and Bluetooth support.

On SC8280XP (8cx Gen3) another UART is described, used in the
Microsoft Surface 9 5G. The WiFi/BT combo chip's power management unit
is described on the CRD and Lenovo ThinkPad X13s.

On SDM630/660 the GPU SMMU and clock controller is added, as is the
A2Noc and LPASS SMMU, and the DSP-based WiFi device. GPU, modem DSP and
WiFi is then enabled on the Inforce 6560 development board.

On SM8450 Hardware Development Kit, the WCN6855 is modelled to enable
WiFi and Bluetooth. A "global" interrupt is defined on SM8450 PCIe RC
controller, to enable hotplug.

On X Elite, USB Type-C controllers are marked as usb-role-switch
capable, the GICv3 ITS is enabled for PCIe. TCSR region is described and
wired up to allow setting and cleaning the download mode
(bootloader-assisted ramdump) flag, and residency numbers for C4/C5 are
updated.

USB role switch is enabled on Lenovo ThinkPad T14s and the ASUS Vivobook
S15. The T14s also gains support for a second source trackpad. The
Microsoft Surface Laptop gains LID switch and the USB Type-A connector
attached to the multiport controller is enabled. The CRD has its HID
device power supplies described.

Application SMMU is flagged as DMA coherent across QDU1000, SC7180,
SC8180X, SC8280XP, SDM670, SDM845, SM8150, SM8350, SM8450, and X1E80100.

In addition to this, the effort to improve style and binding compliance
continued.

* tag 'qcom-arm64-for-6.13' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (120 commits)
  arm64: dts: qcom: sdm845-db845c-navigation-mezzanine: Add cma heap for libcamera softisp support
  arm64: dts: qcom: qrb5165-rb5-vision-mezzanine: Add cma heap for libcamera softisp support
  arm64: dts: qcom: qrb5165-rb5-vision-mezzanine: Drop redundant clock-lanes from camera@1a
  arm64: dts: qcom: sc8280xp-x13s: Drop redundant clock-lanes from camera@10
  arm64: dts: qcom: sdm845-db845c-navigation-mezzanine: Convert mezzanine riser to dtso
  arm64: dts: qcom: qrb5165-rb5-vision-mezzanine: Convert mezzanine riser to dtbo
  arm64: dts: qcom: sm8450-hdk: model the PMU of the on-board wcn6855
  arm64: dts: qcom: sc8280xp-x13s: model the PMU of the on-board wcn6855
  arm64: dts: qcom: sc8280xp-crd: enable bluetooth
  arm64: dts: qcom: sc8280xp-crd: model the PMU of the on-board wcn6855
  arm64: dts: qcom: qcs9100: Add support for the QCS9100 Ride and Ride Rev3 boards
  dt-bindings: arm: qcom: Document qcs9100-ride and qcs9100-ride Rev3
  arm64: dts: qcom: x1e80100: Update C4/C5 residency/exit numbers
  arm64: dts: qcom: x1e80100-crd: describe HID supplies
  arm64: dts: qcom: msm8998-lenovo-miix-630: add WiFi calibration variant
  arm64: dts: qcom: msm8998-clamshell: enable resin/VolDown
  arm64: dts: qcom: msm8998-lenovo-miix-630: enable VolumeUp button
  arm64: dts: qcom: msm8998-lenovo-miix-630: enable aDSP and SLPI
  arm64: dts: qcom: msm8998-lenovo-miix-630: enable touchscreen
  arm64: dts: qcom: qcs6490-rb3gen2: Add PCIe nodes
  ...

Link: https://lore.kernel.org/r/20241105164901.7787-1-andersson@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-11-12 22:45:37 +01:00