Commit Graph

36246 Commits

Author SHA1 Message Date
Arnd Bergmann
ac75da105e Allwinner fixes for 6.16
Only one fix:
 
 Correct the name of the A523's EMAC0 to GMAC0, as seen in the SoC's
 datasheets. The matching DT binding change is in the net tree.
 -----BEGIN PGP SIGNATURE-----
 
 iQJCBAABCgAsFiEE2nN1m/hhnkhOWjtHOJpUIZwPJDAFAmh2iT4OHHdlbnNAY3Np
 ZS5vcmcACgkQOJpUIZwPJDCMJBAAuauzK0XFSSwuzxlkd2b4fb9iY8V8U+h4T6E0
 T83snFr3IDZxRU3z9+6EKhIAyh/yHpu8wv27jMNyb6UAbafzhqYaCENXdIrI7lDX
 CzgDCJJWPTJ9L/Iq5EY+BXSBNaHQz1PLrryjdLJeNSzxXWP4k62oPCE09HioYIvK
 hMEUIyH9jdTK6h4jfp0J0YHYfDZPr4ix33Ua33ToPnTYeaMeowaWDZ2I/IXyhmG7
 q+XRzdNrpcMuKQH5hpSTDYI1TjonWa1jovpYH9uktuzb7CHHz2C9f3wxz9X2xpui
 nxa44UoqKF0XfP3Luur9cfXHS6zq5HqKRaXkCP9EiXoIpocjo5rCHqvIabyC+6QU
 ACRrbp/9rCJ/XZm5MRvXD3+JlcF+SFJ3vYhZgk1iLXFFEPGgfUezf0s6hAUv5xGc
 OnxmF2ztxxXVAKCkRFG7JVbyHzQmKojX9lZUVWQP1dRZCfaQ1dqAN6oCO1NuVvLc
 mPVgftt3N2XDaM/XCp054RFBu0Dmjm6oIUNJy2Jc59ED5FF+Erit+xTqYfv9iZGu
 PfyBk43lPhFr+6twsYsaivoh45px7aCRAuKnwY4AizIjr01ZeVjc1snauiUS7pzo
 jtdIESYuaRnmTE1tiY0keAB5y4OH/jxB61jJ4IwIUIEGzySrmG8HchizVnd0UYoA
 eJsh/Jw=
 =j8oj
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmiEp40ACgkQmmx57+YA
 GNnQ9w//YpHI9/IqYMspsOk+ML2JLsRlbYWzmrZPAnWdQtFQ+sthqkr6bSA5zohn
 DQp04yGB5YPHD/R6n4Us2K0tb/UFQLQl2s9Owg0xZkoAdqwoRTBKP2nnYh5mtoK8
 pf7KgfiMWi29rqNZmEPbk9onrhXIhAaLNJomIbDBaY3rsMxNnuEdDN+KO6mwTcrf
 RtBJqQKNeVbVniqmVn7o3IJiN5hLPKPrZ9r2FkX+K/0GHh4PPkQNyUJHLhvdsady
 1EFPUqTqTp9ykPMj5KZ1TBs05dEBexMYPeGfZdTbLN6sXJQrAy9JN5XrSg6QffX0
 NbzeO8r0YnwA2bsFnoF7xIUCdGvuI2jc4bvtVPt2wPrjINmSA83RJstJZcm1r/Uh
 qIFGYqgUJotqRzEJkOTvce32OG9T/Q7DcbC0uFenXjMdLU9hV6MDEFpPj2t875xr
 Y6P4dzp4TcR/28OA/nrmYhOV6Y7LOVzW7Y2D23iYltA62/GPR/dzlthw+nzYLecu
 6/T4sH/LtACHmZNbbdAtf07rZmMYg1K16HJLcHxm5egp27AxIqujsy+kFVdtASXn
 Fc43ISthJVmdCVg7LHhVr5NrkKbgk4GZgZ5uL94+mYxZBMyMEdUP9Jqn/BjMaXt6
 WPzkP/PZNEAlogAS6LSumMJvCcmrJdbCGplMWkUliMAgjbpL2e0=
 =xPoN
 -----END PGP SIGNATURE-----

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

Allwinner fixes for 6.16

Only one fix:

Correct the name of the A523's EMAC0 to GMAC0, as seen in the SoC's
datasheets. The matching DT binding change is in the net tree.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-26 12:01:43 +02:00
Rice Lee
a28f981038 scsi: arm64: dts: mediatek: mt8195: Add UFSHCI node
Add a UFS host controller interface (UFSHCI) node to mt8195.dtsi.
Introduce the 'mediatek,ufs-disable-mcq' property to allow disabling
Multiple Circular Queue (MCQ) support.

Signed-off-by: Rice Lee <ot_riceyj.lee@mediatek.com>
Signed-off-by: Eric Lin <ht.lin@mediatek.com>
Signed-off-by: Macpaul Lin <macpaul.lin@mediatek.com>
Link: https://lore.kernel.org/r/20250722085721.2062657-4-macpaul.lin@mediatek.com
Reviewed-by: Peter Wang <peter.wang@mediatek.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2025-07-24 22:48:03 -04:00
Dev Jain
7efa1cd5f8 arm64: add batched versions of ptep_modify_prot_start/commit
Override the generic definition of modify_prot_start_ptes() to use
get_and_clear_full_ptes().  This helper does a TLBI only for the starting
and ending contpte block of the range, whereas the current implementation
will call ptep_get_and_clear() for every contpte block, thus doing a TLBI
on every contpte block.  Therefore, we have a performance win.

The arm64 definition of pte_accessible() allows us to batch in the
errata specific case:

#define pte_accessible(mm, pte)	\
	(mm_tlb_flush_pending(mm) ? pte_present(pte) : pte_valid(pte))

All ptes are obviously present in the folio batch, and they are also valid.

Override the generic definition of modify_prot_commit_ptes() to simply use
set_ptes() to map the new ptes into the pagetable.

Link: https://lkml.kernel.org/r/20250718090244.21092-8-dev.jain@arm.com
Signed-off-by: Dev Jain <dev.jain@arm.com>
Reviewed-by: Ryan Roberts <ryan.roberts@arm.com>
Cc: Anshuman Khandual <anshuman.khandual@arm.com>
Cc: Barry Song <baohua@kernel.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: David Hildenbrand <david@redhat.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Jann Horn <jannh@google.com>
Cc: Joey Gouly <joey.gouly@arm.com>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Cc: Lance Yang <ioworker0@gmail.com>
Cc: Liam Howlett <liam.howlett@oracle.com>
Cc: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>
Cc: Matthew Wilcox (Oracle) <willy@infradead.org>
Cc: Peter Xu <peterx@redhat.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Will Deacon <will@kernel.org>
Cc: Yang Shi <yang@os.amperecomputing.com>
Cc: Yicong Yang <yangyicong@hisilicon.com>
Cc: Zhenhua Huang <quic_zhenhuah@quicinc.com>
Cc: Zi Yan <ziy@nvidia.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2025-07-24 19:12:41 -07:00
Ryan Roberts
a9e056de66 mm: remove arch_flush_tlb_batched_pending() arch helper
Since commit 4b63491838 ("arm64/mm: Close theoretical race where stale
TLB entry remains valid"), all arches that use tlbbatch for reclaim
(arm64, riscv, x86) implement arch_flush_tlb_batched_pending() with a
flush_tlb_mm().

So let's simplify by removing the unnecessary abstraction and doing the
flush_tlb_mm() directly in flush_tlb_batched_pending().  This effectively
reverts commit db6c1f6f23 ("mm/tlbbatch: introduce
arch_flush_tlb_batched_pending()").

Link: https://lkml.kernel.org/r/20250609103132.447370-1-ryan.roberts@arm.com
Signed-off-by: Ryan Roberts <ryan.roberts@arm.com>
Suggested-by: Will Deacon <will@kernel.org>
Reviewed-by: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>
Acked-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Anshuman Khandual <anshuman.khandual@arm.com>
Acked-by: Will Deacon <will@kernel.org>
Cc: Albert Ou <aou@eecs.berkeley.edu>
Cc: Alexandre Ghiti <alex@ghiti.fr>
Cc: Borislav Betkov <bp@alien8.de>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Liam Howlett <liam.howlett@oracle.com>
Cc: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
Cc: Paul Walmsley <paul.walmsley@sifive.com>
Cc: Rik van Riel <riel@surriel.com>
Cc: Ryan Roberts <ryan.roberts@arm.com>
Cc: Thomas Gleinxer <tglx@linutronix.de>
Cc: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2025-07-24 19:12:32 -07:00
Kees Cook
65c430906e arm64: Handle KCOV __init vs inline mismatches
GCC appears to have kind of fragile inlining heuristics, in the
sense that it can change whether or not it inlines something based on
optimizations. It looks like the kcov instrumentation being added (or in
this case, removed) from a function changes the optimization results,
and some functions marked "inline" are _not_ inlined. In that case,
we end up with __init code calling a function not marked __init, and we
get the build warnings I'm trying to eliminate in the coming patch that
adds __no_sanitize_coverage to __init functions:

WARNING: modpost: vmlinux: section mismatch in reference: acpi_get_enable_method+0x1c (section: .text.unlikely) -> acpi_psci_present (section: .init.text)

This problem is somewhat fragile (though using either __always_inline
or __init will deterministically solve it), but we've tripped over
this before with GCC and the solution has usually been to just use
__always_inline and move on.

For arm64 this requires forcing one ACPI function to be inlined with
__always_inline.

Link: https://lore.kernel.org/r/20250724055029.3623499-1-kees@kernel.org
Signed-off-by: Kees Cook <kees@kernel.org>
2025-07-24 16:55:11 -07:00
Linus Torvalds
cef6c8c92f arm64 fixes for 6.16
- Fix broken UUID value for the KVM/arm64 hypervisor SMCCC interface.
 
 - Fix stack corruption on context-switch, primarily seen on (but not
   limited to) configurations with both pNMI and SCS enabled.
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCgAuFiEEPxTL6PPUbjXGY88ct6xw3ITBYzQFAmiBBXwQHHdpbGxAa2Vy
 bmVsLm9yZwAKCRC3rHDchMFjNFitB/9qIwohXTPcwfFux3FJpiUAMzY0KlP2TIJF
 +wMRNSkYw/EKKorz4nzdEagyvWLvbFqg8eZDaoVTV7+DyQXb5Fz9R7s8yVQwBIpY
 naAPm5A+I9gitiISA8M1Kr44MpTJBUHRpOSIIiTQK0/ijmd02sDkZZJuTUqYRmUP
 1SY7A6Ps3Oz3cfqDtOIKUy8LNi22Wha6n9r3YghO5nhlLgrO1vMf/2uX1fRULTee
 rpv4vICUjy9JK7F3W2osQ88UQkRY+l7vEtEzDdAYREPbg7m0ye1R1rTp2NiQ/mja
 b+YoKudvdce4Mwui3UB5kRCDBB5kJIX7Itvu/AfjJ5e/cr0fI15X
 =tkat
 -----END PGP SIGNATURE-----

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

Pull arm64 fixes from Will Deacon:
 "Two important arm64 fixes ahead of the 6.16 release.

  The first fixes a regression introduced during the merge window where
  the KVM UUID (which is used to advertise KVM-specific hypercalls for
  things like time synchronisation in the guest) was corrupted thanks to
  an endianness bug introduced when converting the code to use the
  UUID_INIT() helper.

  The second fixes a stack-pointer corruption issue during
  context-switch which has been observed in the wild when taking a
  pseudo-NMI with shadow call stack enabled.

  Summary:

   - Fix broken UUID value for the KVM/arm64 hypervisor SMCCC interface

   - Fix stack corruption on context-switch, primarily seen on (but not
     limited to) configurations with both pNMI and SCS enabled"

* tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
  arm64/entry: Mask DAIF in cpu_switch_to(), call_on_irq_stack()
  arm64: kvm, smccc: Fix vendor uuid
2025-07-24 08:50:55 -07:00
Catalin Marinas
5b1ae9de71 Merge branch 'for-next/feat_mte_store_only' into for-next/core
* for-next/feat_mte_store_only:
  : MTE feature to restrict tag checking to store only operations
  kselftest/arm64/mte: Add MTE_STORE_ONLY testcases
  kselftest/arm64/mte: Preparation for mte store only test
  kselftest/arm64/abi: Add MTE_STORE_ONLY feature hwcap test
  KVM: arm64: Expose MTE_STORE_ONLY feature to guest
  arm64/hwcaps: Add MTE_STORE_ONLY hwcaps
  arm64/kernel: Support store-only mte tag check
  prctl: Introduce PR_MTE_STORE_ONLY
  arm64/cpufeature: Add MTE_STORE_ONLY feature
2025-07-24 16:03:34 +01:00
Catalin Marinas
3ae8cef210 Merge branches 'for-next/livepatch', 'for-next/user-contig-bbml2', 'for-next/misc', 'for-next/acpi', 'for-next/debug-entry', 'for-next/feat_mte_tagged_far', 'for-next/kselftest', 'for-next/mdscr-cleanup' and 'for-next/vmap-stack', remote-tracking branch 'arm64/for-next/perf' into for-next/core
* arm64/for-next/perf: (23 commits)
  drivers/perf: hisi: Support PMUs with no interrupt
  drivers/perf: hisi: Relax the event number check of v2 PMUs
  drivers/perf: hisi: Add support for HiSilicon SLLC v3 PMU driver
  drivers/perf: hisi: Use ACPI driver_data to retrieve SLLC PMU information
  drivers/perf: hisi: Add support for HiSilicon DDRC v3 PMU driver
  drivers/perf: hisi: Simplify the probe process for each DDRC version
  perf/arm-ni: Support sharing IRQs within an NI instance
  perf/arm-ni: Consolidate CPU affinity handling
  perf/cxlpmu: Fix typos in cxl_pmu.c comments and documentation
  perf/cxlpmu: Remove unintended newline from IRQ name format string
  perf/cxlpmu: Fix devm_kcalloc() argument order in cxl_pmu_probe()
  perf: arm_spe: Relax period restriction
  perf: arm_pmuv3: Add support for the Branch Record Buffer Extension (BRBE)
  KVM: arm64: nvhe: Disable branch generation in nVHE guests
  arm64: Handle BRBE booting requirements
  arm64/sysreg: Add BRBE registers and fields
  perf/arm: Add missing .suppress_bind_attrs
  perf/arm-cmn: Reduce stack usage during discovery
  perf: imx9_perf: make the read-only array mask static const
  perf/arm-cmn: Broaden module description for wider interconnect support
  ...

* for-next/livepatch:
  : Support for HAVE_LIVEPATCH on arm64
  arm64: Kconfig: Keep selects somewhat alphabetically ordered
  arm64: Implement HAVE_LIVEPATCH
  arm64: stacktrace: Implement arch_stack_walk_reliable()
  arm64: stacktrace: Check kretprobe_find_ret_addr() return value
  arm64/module: Use text-poke API for late relocations.

* for-next/user-contig-bbml2:
  : Optimise the TLBI when folding/unfolding contigous PTEs on hardware with BBML2 and no TLB conflict aborts
  arm64/mm: Elide tlbi in contpte_convert() under BBML2
  iommu/arm: Add BBM Level 2 smmu feature
  arm64: Add BBM Level 2 cpu feature
  arm64: cpufeature: Introduce MATCH_ALL_EARLY_CPUS capability type

* for-next/misc:
  : Miscellaneous arm64 patches
  arm64/gcs: task_gcs_el0_enable() should use passed task
  arm64: signal: Remove ISB when resetting POR_EL0
  arm64/mm: Drop redundant addr increment in set_huge_pte_at()
  arm64: Mark kernel as tainted on SAE and SError panic
  arm64/gcs: Don't call gcs_free() when releasing task_struct
  arm64: fix unnecessary rebuilding when CONFIG_DEBUG_EFI=y
  arm64/mm: Optimize loop to reduce redundant operations of contpte_ptep_get
  arm64: pi: use 'targets' instead of extra-y in Makefile

* for-next/acpi:
  : Various ACPI arm64 changes
  ACPI: Suppress misleading SPCR console message when SPCR table is absent
  ACPI: Return -ENODEV from acpi_parse_spcr() when SPCR support is disabled

* for-next/debug-entry:
  : Simplify the debug exception entry path
  arm64: debug: remove debug exception registration infrastructure
  arm64: debug: split bkpt32 exception entry
  arm64: debug: split brk64 exception entry
  arm64: debug: split hardware watchpoint exception entry
  arm64: debug: split single stepping exception entry
  arm64: debug: refactor reinstall_suspended_bps()
  arm64: debug: split hardware breakpoint exception entry
  arm64: entry: Add entry and exit functions for debug exceptions
  arm64: debug: remove break/step handler registration infrastructure
  arm64: debug: call step handlers statically
  arm64: debug: call software breakpoint handlers statically
  arm64: refactor aarch32_break_handler()
  arm64: debug: clean up single_step_handler logic

* for-next/feat_mte_tagged_far:
  : Support for reporting the non-address bits during a synchronous MTE tag check fault
  kselftest/arm64/mte: Add mtefar tests on check_mmap_options
  kselftest/arm64/mte: Refactor check_mmap_option test
  kselftest/arm64/mte: Add verification for address tag in signal handler
  kselftest/arm64/mte: Add address tag related macro and function
  kselftest/arm64/mte: Check MTE_FAR feature is supported
  kselftest/arm64/mte: Register mte signal handler with SA_EXPOSE_TAGBITS
  kselftest/arm64: Add MTE_FAR hwcap test
  KVM: arm64: Expose FEAT_MTE_TAGGED_FAR feature to guest
  arm64: Report address tag when FEAT_MTE_TAGGED_FAR is supported
  arm64/cpufeature: Add FEAT_MTE_TAGGED_FAR feature

* for-next/kselftest:
  : Kselftest updates for arm64
  kselftest/arm64: Handle attempts to disable SM on SME only systems
  kselftest/arm64: Fix SVE write data generation for SME only systems
  kselftest/arm64: Test SME on SME only systems in fp-ptrace
  kselftest/arm64: Test FPSIMD format data writes via NT_ARM_SVE in fp-ptrace
  kselftest/arm64: Allow sve-ptrace to run on SME only systems
  kselftest/arm4: Provide local defines for AT_HWCAP3
  kselftest/arm64: Specify SVE data when testing VL set in sve-ptrace
  kselftest/arm64: Fix test for streaming FPSIMD write in sve-ptrace
  kselftest/arm64: Fix check for setting new VLs in sve-ptrace
  kselftest/arm64: Convert tpidr2 test to use kselftest.h

* for-next/mdscr-cleanup:
  : Drop redundant DBG_MDSCR_* macros
  KVM: selftests: Change MDSCR_EL1 register holding variables as uint64_t
  arm64/debug: Drop redundant DBG_MDSCR_* macros

* for-next/vmap-stack:
  : Force VMAP_STACK on arm64
  arm64: remove CONFIG_VMAP_STACK checks from entry code
  arm64: remove CONFIG_VMAP_STACK checks from SDEI stack handling
  arm64: remove CONFIG_VMAP_STACK checks from stacktrace overflow logic
  arm64: remove CONFIG_VMAP_STACK conditionals from traps overflow stack
  arm64: remove CONFIG_VMAP_STACK conditionals from irq stack setup
  arm64: Remove CONFIG_VMAP_STACK conditionals from THREAD_SHIFT and THREAD_ALIGN
  arm64: efi: Remove CONFIG_VMAP_STACK check
  arm64: Mandate VMAP_STACK
  arm64: efi: Fix KASAN false positive for EFI runtime stack
  arm64/ptrace: Fix stack-out-of-bounds read in regs_get_kernel_stack_nth()
  arm64/gcs: Don't call gcs_free() during flush_gcs()
  arm64: Restrict pagetable teardown to avoid false warning
  docs: arm64: Fix ICC_SRE_EL2 register typo in booting.rst
2025-07-24 16:01:22 +01:00
Kuninori Morimoto
f509de1b0f arm64: kvm: trace_handle_exit: use string choices helper
We can use string choices helper, let's use it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87o6ti5ksx.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-23 23:36:55 -07:00
Kuninori Morimoto
30a597e19f arm64: kvm: sys_regs: use string choices helper
We can use string choices helper, let's use it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87pldy5ktb.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-23 23:36:37 -07:00
Marc Zyngier
5152977340 KVM: arm64: Follow specification when implementing WXN
The R_QXXPC and R_NPBXC rules have some interesting (and pretty
sharp) corners when defining the behaviour of of WXN at S1:

- when S1 overlay is enabled, WXN applies to the overlay and
  will remove W

- when S1 overlay is disabled, WXN applies to the base permissions
  and will remove X.

Today, we lumb the two together in a way that doesn't really match
the rules, making things awkward to follow what is happening, in
particular when overlays are enabled.

Split these two rules over two distinct paths, which makes things
a lot easier to read and validate against the architecture rules.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20250701151648.754785-3-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-23 23:34:50 -07:00
Marc Zyngier
a508d5afb7 KVM: arm64: Remove the wi->{e0,}poe vs wr->{p,u}ov confusion
Some of the POE computation is a bit confused. Specifically, there
is an element of confusion between what wi->{e0,}poe an wr->{p,u}ov
actually represent.

- wi->{e0,}poe is an *input* to the walk, and indicates whether
  POE is enabled at EL0 or EL{1,2}

- wr->{p,u}ov is a *result* of the walk, and indicates whether
  overlays are enabled. Crutially, it is possible to have POE
  enabled, and yet overlays disabled, while the converse isn't
  true

What this all means is that once the base permissions have been
established, checking for wi->{e0,}poe makes little sense, because
the truth about overlays resides in wr->{p,u}ov. So constructs
checking for (wi->poe && wr->pov) only add perplexity.

Refactor compute_s1_overlay_permissions() and the way it is
called according to the above principles. Take the opportunity
to avoid reading registers that are not strictly required.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20250701151648.754785-2-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-23 23:34:50 -07:00
David Woodhouse
4530256f36 KVM: arm64: vgic-its: Return -ENXIO to invalid KVM_DEV_ARM_VGIC_GRP_CTRL attrs
A preliminary version of a hack to invoke unmap_all_vpes() from an ioctl
didn't work very well. We eventually determined this was because we were
invoking it on the wrong file descriptor, but not getting an error.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Eric Auger <eric.auger@redhat.com>
Link: https://lore.kernel.org/r/bbbddd56135399baf699bc46ffb6e7f08d9f8c9f.camel@infradead.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-23 23:33:52 -07:00
Arnd Bergmann
05a623030b ARM Devicetrees for v6.17
Sophgo:
 
 Add support for Duo Module 01 Evaluation Board.
 This board uses SG2000(old codename CV181xH),
 which is dual-arch, RISC-V and ARM64. This
 patch add the support for ARM64.
 
 Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
 -----BEGIN PGP SIGNATURE-----
 
 iQGzBAABCgAdFiEEdoBX2jyDC9ZCTwZjDCzASqG0i0IFAmiAiNIACgkQDCzASqG0
 i0KaPgv/Zbe5hJ869PocVXmt1+lHnMMh6bTANXlZO4G3NcjBOvCWF9rZaqY7Tb0w
 ekLbSTnhBqcwix62FxDuOubsgAGrj/r5ejnPkLI/Ksst+81DDcgtxmU4YHjV/M92
 win6fsrS5LppqS7+6lGAhN0Uz48K07j9URW2JtollpH0GyrzNo1r4YwfkUA38X+b
 e+Eia0bvz8KU1aKPLgmx+dk/qjhDvvlWjNrroVyJAkUYM5AofSSzneo2hgM6FA0k
 1LYZRwLDpbaJjMnBvAFT2Dqg3Mr+84PyHb7d+58lV4BYOzkA/wM6DGuDqD61dt4K
 +pxflhrZsXp+a9SjnY6oecGy1srKDPhX8l6mRdwt3ISAFJ/6nKTEXk36sO1T9atq
 mfpwDwDklhVwpvmk9JAWeTCX/XMBgivVDdUE9sRTzBqPIlBtSVHjS8W7e5nExbv8
 yovIIKE4OLKn40ubcYM8Km0L3XF6VpoNFlPkxwrXDyf7FVzdHTphz0aW8CXIO0dP
 4W1vqUcP
 =v6O6
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmiBQ8MACgkQmmx57+YA
 GNmgUQ/+JJHLhDUdfI6abJSs42ZS7yue8DRbSYi/h3RDkj7LutwbrTrOZ7Dg0uom
 txv2dUPtmW2DIvJkRrBfNeF9bMt9oh0/0cLuf9QL8mLWHaSg9aAwmBDbw8EaKCy1
 iwxwAhRxDg1bF6eB0QDE0f2+wuBBiR2ymWcpLgHw3pZw1Ao7R8nvV0UvrxUKJaMa
 8GpenYRnVrxHtwtSLS+eFQUvxFGb8SYdHxhZYL3U34XduugK3xNv2+KoFdQvro6R
 vEMnpR6USo2mV4RW7GTwJkPmQ/w0fMZF806bPNu7KhrC3DLmVnU6YuBDopJYrPvU
 babwfughoSn7cz733gDSPuzkoNkjXiCZLQW9wSv+gGgYHK6NpjtHfZGkEfcRpXT1
 G9Yb/H948BtLM4FxenFh+5VEvp63giN3hTIw/0JauFWEu4rTmN6sMLT1ibLDeUZV
 zIfItosgFF+EjuGqgruR8dJ9wKowIR9DY8MxhWQ5Wu1WNl+KKMtln/bFIu9hgvRi
 0WqgqPr6Vq5buHKaqHAz0tj8dR7yxBZvDijQfzzb0xrLgBXx35c7aX1aKWdxWbYZ
 Y29KQLxsvr0AWs0tafmQ42M0l03QAB1voACn25rIQaU4b4Tub9W18GkA0V6Mmjno
 diqH51MQy1haCJRZUMEyAUnmtOXlRw685Jzy1z5BekUJIhTGQfg=
 =SQbL
 -----END PGP SIGNATURE-----

Merge tag 'arm-sophgo-dt-for-v6.17' of https://github.com/sophgo/linux into soc/newsoc

ARM Devicetrees for v6.17

Sophgo:

Add support for Duo Module 01 Evaluation Board.
This board uses SG2000(old codename CV181xH),
which is dual-arch, RISC-V and ARM64. This
patch add the support for ARM64.

Signed-off-by: Chen Wang <unicorn_wang@outlook.com>

* tag 'arm-sophgo-dt-for-v6.17' of https://github.com/sophgo/linux:
  arm64: defconfig: Enable rudimentary Sophgo SG2000 support
  arm64: Add SOPHGO SOC family Kconfig support
  arm64: dts: sophgo: Add Duo Module 01 Evaluation Board
  arm64: dts: sophgo: Add Duo Module 01
  arm64: dts: sophgo: Add initial SG2000 SoC device tree

Link: https://lore.kernel.org/r/MAUPR01MB11072C4B088AAC02268044E95FE5FA@MAUPR01MB11072.INDPRD01.PROD.OUTLOOK.COM
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-23 22:19:15 +02:00
Steven Rostedt
9f0cb91767 tracing: arm: arm64: Hide trace events ipi_raise, ipi_entry and ipi_exit
The ipi tracepoints are mostly generic, but the tracepoints ipi_raise,
ipi_entry and ipi_exit are only used by arm and arm64. This means these
trace events are wasting memory in all the other architectures that do not
use them.

Add CONFIG_HAVE_EXTRA_IPI_TRACEPOINTS and have arm and arm64 select it to
enable these trace events. The config makes it easy if other architectures
decide to trace these as well.

Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Cc: Will Deacon <will@kernel.org>
Cc: Russell King <linux@armlinux.org.uk>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Valentin Schneider <vschneid@redhat.com>
Cc: Nicolas Pitre <nico@fluxnic.net>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: https://lore.kernel.org/20250722103714.64eba013@gandalf.local.home
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
2025-07-23 14:58:55 -04:00
Jeremy Linton
cbbcfb94c5 arm64/gcs: task_gcs_el0_enable() should use passed task
Mark Rutland noticed that the task parameter is ignored and
'current' is being used instead. Since this is usually
what its passed, it hasn't yet been causing problems but likely
will as the code gets more testing.

But, once this is fixed, it creates a new bug in copy_thread_gcs()
since the gcs_el_mode isn't yet set for the task before its being
checked. Move gcs_alloc_thread_stack() after the new task's
gcs_el0_mode initialization to avoid this.

Fixes: fc84bc5378 ("arm64/gcs: Context switch GCS state for EL0")
Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
Reviewed-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20250719043740.4548-2-jeremy.linton@arm.com
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2025-07-23 12:08:17 +01:00
Alexander Sverdlin
fe4fd70193 arm64: defconfig: Enable rudimentary Sophgo SG2000 support
Enable ARCH_SOPHGO, pinctrl (built-in, required to boot), ADC as module.
This defconfig is able to boot from SD card on Milk-V Duo Module 01
evalboard.

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: Inochi Amaoto <inochiama@gmail.com>
Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com>
Link: https://lore.kernel.org/r/20250612132844.767216-7-alexander.sverdlin@gmail.com
Signed-off-by: Inochi Amaoto <inochiama@gmail.com>
Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
Signed-off-by: Chen Wang <wangchen20@iscas.ac.cn>
2025-07-23 09:56:27 +08:00
Alexander Sverdlin
c6e9e3aaef arm64: Add SOPHGO SOC family Kconfig support
First user will be Aarch64 core within SG2000 SoC.

Reviewed-by: Chen Wang <unicorn_wang@outlook.com>
Reviewed-by: Inochi Amaoto <inochiama@gmail.com>
Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com>
Link: https://lore.kernel.org/r/20250612132844.767216-6-alexander.sverdlin@gmail.com
Signed-off-by: Inochi Amaoto <inochiama@gmail.com>
Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
Signed-off-by: Chen Wang <wangchen20@iscas.ac.cn>
2025-07-23 09:56:27 +08:00
Alexander Sverdlin
aa3f38f5dc arm64: dts: sophgo: Add Duo Module 01 Evaluation Board
Duo Module 01 Evaluation Board contains Sophgo Duo Module 01
SMD SoM, Ethernet+USB switch, microSD slot, etc...
Add only support for UART0 (console) and microSD slot.

Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com>
Reviewed-by: Inochi Amaoto <inochiama@gmail.com>
Link: https://lore.kernel.org/r/20250612132844.767216-5-alexander.sverdlin@gmail.com
Signed-off-by: Inochi Amaoto <inochiama@gmail.com>
Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
Signed-off-by: Chen Wang <wangchen20@iscas.ac.cn>
2025-07-23 09:56:27 +08:00
Alexander Sverdlin
cccac5279a arm64: dts: sophgo: Add Duo Module 01
The Duo Module 01 is a compact module with integrated SG2000,
WI-FI6/BTDM5.4, and eMMC.
Add only support for UART and SDHCI.

Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com>
Reviewed-by: Inochi Amaoto <inochiama@gmail.com>
Link: https://lore.kernel.org/r/20250612132844.767216-4-alexander.sverdlin@gmail.com
Signed-off-by: Inochi Amaoto <inochiama@gmail.com>
Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
Signed-off-by: Chen Wang <wangchen20@iscas.ac.cn>
2025-07-23 09:56:27 +08:00
Alexander Sverdlin
dabb6ec640 arm64: dts: sophgo: Add initial SG2000 SoC device tree
Add initial device tree for the SG2000 SoC by SOPHGO (from ARM64 PoV).

Reviewed-by: Inochi Amaoto <inochiama@gmail.com>
Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com>
Link: https://lore.kernel.org/r/20250612132844.767216-3-alexander.sverdlin@gmail.com
Signed-off-by: Inochi Amaoto <inochiama@gmail.com>
Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
Signed-off-by: Chen Wang <wangchen20@iscas.ac.cn>
2025-07-23 09:56:27 +08:00
Steven Rostedt
4d6d0a6263 tracing: Remove redundant config HAVE_FTRACE_MCOUNT_RECORD
Ftrace is tightly coupled with architecture specific code because it
requires the use of trampolines written in assembly. This means that when
a new feature or optimization is made, it must be done for all
architectures. To simplify the approach, CONFIG_HAVE_FTRACE_* configs are
added to denote which architecture has the new enhancement so that other
architectures can still function until they too have been updated.

The CONFIG_HAVE_FTRACE_MCOUNT was added to help simplify the
DYNAMIC_FTRACE work, but now every architecture that implements
DYNAMIC_FTRACE also has HAVE_FTRACE_MCOUNT set too, making it redundant
with the HAVE_DYNAMIC_FTRACE.

Remove the HAVE_FTRACE_MCOUNT config and use DYNAMIC_FTRACE directly where
applicable.

Link: https://lore.kernel.org/all/20250703154916.48e3ada7@gandalf.local.home/

Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Link: https://lore.kernel.org/20250704104838.27a18690@gandalf.local.home
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
2025-07-22 20:15:56 -04:00
FUJITA Tomonori
826230970a arm64/bug: Add ARCH_WARN_ASM macro for BUG/WARN asm code sharing with Rust
Add new ARCH_WARN_ASM macro for BUG/WARN assembly code sharing with
Rust to avoid the duplication.

No functional changes.

Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
Link: https://lore.kernel.org/r/20250502094537.231725-4-fujita.tomonori@gmail.com
Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
2025-07-23 00:04:53 +02:00
Arnd Bergmann
cd7dace093 Apple SoC device tree changes for v6.17
- Added the bindings and nodes for Apple SoC GPU. The driver itself
   isn't ready for upstreaming yet due to rust dependencies but we're
   confident that the bindings are stable at this point.
 - Added a missing node for the touchbar framebuffer to Apple T2 device
   trees, which is the BMC for some x86 Macs
 - Fixed a W=1 warning by adding bit offsets to NVMEM node names. This
   required a change to the generic NVMEM cell binding which will be part
   of 6.17 through the NVMEM tree.
 
 Signed-off-by: Sven Peter <sven@kernel.org>
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQS3vz815OHsEaWy0u9EEX0kKnUe6QUCaH+8XwAKCRBEEX0kKnUe
 6ZgFAQCOqbUyJPz0oxSTrrHQRwumhx0P6CIhVBtSaOtDnHYBJwD8CpPxfXXqMvgm
 Wqr/bugw4pnR/LZRTScSoiqlwT3gZQs=
 =L1MH
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh//I8ACgkQmmx57+YA
 GNmY9RAAmw4mkjv7ptPq1s323GHuqUFMDhmrScTeg5W3+rrlWSOYDkWYJFBcUdMa
 d+camZ2Ey4RHcRDqOmcQvx93lcUoyBzoa9EQ8xU8wm1G2p4myIF2eFBlR6LiggZN
 bV9naAl+4/7lRKzD35scGRlsvD2TRhYpff6ow1Kw8QfRk9N4P4j8TVHu+niE5088
 lMtNTLnli7HUu2TbqgwZ8tG8CdJVJb3n5Xxi/V8gnG+tYnxQAEGBXkR3JznQZuSG
 5PHZnyRhkk8/Qbcfb9W87OWIEhW53K2IVrqp2uStdv4AqvEyZYtMI4TOToZGi0t0
 EpV2EZIEMq+fgu2DnihQ702JbjkxReqky+86mYkXWAfxJ+BW2mO4xqqZ+LQsjhbk
 /Vxfvaf5y1iUh/W+hETaAePOFvo00m+ur+Rh2FG8/TG7Avow01cbOTmj37Mt6L3l
 gT31yxv5Ys3YsClpQygvrnZPQj6Fxc3khbU8VRyL3GJJKQWs14+Bw3/q/zXnZdpq
 oTrkMwGd9EdW/6p/ReL8deL1Lfc4mWkf9BwpbGzFdvkKmuiv0+okRxwslBqvK3l2
 Jx59AkkdyqBvsQ1a5F5/6tvPnyUynF7PAaAW6jnnK8FZfuDetnfxoNpMfoB2O4fS
 d1lScQGR9CPDiTiL94XN2DKAJQLNNeAtuzhaayUjHvAN+Mq+Acw=
 =um3t
 -----END PGP SIGNATURE-----

Merge tag 'apple-soc-dt-6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/sven/linux into soc/dt

Apple SoC device tree changes for v6.17

- Added the bindings and nodes for Apple SoC GPU. The driver itself
  isn't ready for upstreaming yet due to rust dependencies but we're
  confident that the bindings are stable at this point.
- Added a missing node for the touchbar framebuffer to Apple T2 device
  trees, which is the BMC for some x86 Macs
- Fixed a W=1 warning by adding bit offsets to NVMEM node names. This
  required a change to the generic NVMEM cell binding which will be part
  of 6.17 through the NVMEM tree.

Signed-off-by: Sven Peter <sven@kernel.org>

* tag 'apple-soc-dt-6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/sven/linux:
  arm64: dts: apple: Add Apple SoC GPU
  dt-bindings: gpu: Add Apple SoC GPU
  arm64: dts: apple: t8012-j132: Include touchbar framebuffer node
  arm64: dts: apple: Add bit offset to PMIC NVMEM node names

Link: https://lore.kernel.org/r/20250722163258.62424-2-sven@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-22 23:03:11 +02:00
Arnd Bergmann
dd9f821369 New board: FriendlyElec NanoPi M5
Camera support for the PinePhone Pro.
 A bunch of cleanups to make DTC happier, fix ordering of DMA uart
 channels on rk3528 and some video output enablement as well as some
 button definitions.
 An interesting tidbit is the reset behaviour addition in that some
 boards have specific requirements as to how the PMIC needs to do the
 restart. DT-maintainers did not consider the header with helper-constants
 as part of the binding, so that header ended up in the Rockchip directory
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAmh6tRwQHGhlaWtvQHNu
 dGVjaC5kZQAKCRDzpnnJnNEdgbsjCACMBjOtz2pLx0K76/51SGDzM12+ORi5K/ev
 In1kcYSOIJySrQCUPDpma+k/JwptphdQlOfy4pewu/QFUaFln8ei9YGaQtmmyHTi
 d/tDbv9/1bnCvTG8m9wbOkVYpLxvGMfpFZFH3WvNib4oaSxyc34q4zW0T1VTl0DZ
 s3Q57dZsH0VnijFoj1VKz7gjz8jSuO6LksaYVcb7U4b9GQOCfMS1iDs1UJnfG1Xg
 z4molRvAU5rfzlNNRnHIEAeh42b9tOU+jFy7Qlig7RD2eM0BudyziGau3nQGjEP3
 WjDCfwHRo62EOoUSBRbdD9wCD6QsZJteSLMCA/J8EAA0xraEvKYy
 =65EK
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh/++kACgkQmmx57+YA
 GNmHIxAAr9aW2c1JkYwquZcD1dWoR/+vsdyoukha3KAWUftYL2/kK0LTL3Dfi4yR
 V8F21OPExHC/n2B93bTPYBSBJ8wvJqhZHdX7dcOeglu+M+4iwm+5PPkR0LwelcyI
 /NFVMLAQuvcoBOVv2bX+bJHpQDELBu7M0PhJLiIwtJFFLvW/8Dj8RLXAIOQ4yEQg
 kYBbjLzeotd+QjvRyw2PdA+Mj7hnA/E2c6aIQoWf60ey62hZaXRIIAEveuW4lR84
 raM8gDE9XsiD00wPOctsPkIg4aD6R0z/HqNhan2zbUVH/6wW5qd8fXuwpEk7jE53
 WFP0ZEVYEVrRzMiHn+FOhw7S8m/btKVsDrmqF4SNuTrVqXwfkEomFfiNcEWAp3FY
 rmkY1KNGsc7oK9mRwKl2Qv84VgPM92E4nyCuUbsTGAlTED0E1FuT7KmGW+vvKtL5
 TryUA5UdqBzmiAnxzEblcHpmXw38JsAwNxZqtRysLFt9/GUdDEAz34ZfO3qk8P49
 naxASDEAJmYISdpUtk9Xw6CO5vQMuGFKTvaW+m9R5b2ig+USihuDg46JRMFyg7wG
 4eIc9DIPN/mgJy2dP0CRkoNkU9+9KW3DvuI88cOaAEJhvLG/iqeymDHsrsecns14
 RdfdJdeIHwPMSoOW5n/MUEjx3GdIHMICu/CHt88PcfuQGiAK7t0=
 =bA8m
 -----END PGP SIGNATURE-----

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

New board: FriendlyElec NanoPi M5
Camera support for the PinePhone Pro.
A bunch of cleanups to make DTC happier, fix ordering of DMA uart
channels on rk3528 and some video output enablement as well as some
button definitions.
An interesting tidbit is the reset behaviour addition in that some
boards have specific requirements as to how the PMIC needs to do the
restart. DT-maintainers did not consider the header with helper-constants
as part of the binding, so that header ended up in the Rockchip directory

* tag 'v6.17-rockchip-dts64-2' of https://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip: (29 commits)
  arm64: dts: rockchip: Add maskrom button to NanoPi R5S + R5C
  arm64: dts: rockchip: Drop regulator-compatible property on rk3399
  arm64: dts: rockchip: Drop unneeded address+size-cells on px30
  arm64: dts: rockchip: Fix LCD panel port on rk3566-pinetab2
  arm64: dts: rockchip: Move mipi_out node on rk3399 haikou demo dtso
  arm64: dts: rockchip: Simplify mipi_out endpoint on rk3399 RP64 dtso
  arm64: dts: rockchip: Simplify edp endpoints on several rk3399 boards
  arm64: dts: rockchip: Simplify VOP port definition on rk3328
  arm64: dts: rockchip: Move dsi address+size-cells from SoC to rk3399 boards
  arm64: dts: rockchip: Move dsi address+size-cells from SoC to px30 boards
  arm64: dts: rockchip: Fix UART DMA support for RK3528
  arm64: dts: rockchip: Add reset button to NanoPi R5S
  arm64: dts: rockchip: Add rtc0 alias for NanoPi R5S + R5C
  arm64: dts: rockchip: describe the OV8858 user camera on PinePhone Pro
  arm64: dts: rockchip: describe I2c Bus 1 and IMX258 world camera on PinePhone Pro
  arm64: dts: rockchip: Fix pinctrl node names for RK3528
  arm64: dts: rockchip: Add FriendlyElec NanoPi M5 support
  dt-bindings: arm: rockchip: add FriendlyElec NanoPi M5 board
  arm64: dts: rockchip: force PMIC reset behavior to restart PMU on RK3588 Tiger
  arm64: dts: rockchip: force PMIC reset behavior to restart PMU on RK3588 Jaguar
  ...

Link: https://lore.kernel.org/r/11552292.NyiUUSuA9g@phil
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-22 23:00:25 +02:00
Arnd Bergmann
5cfe03e1ca Enable Rockchip DFI + PM_DEVFREQ_EVENT and RGA modules.
-----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAmh6s0MQHGhlaWtvQHNu
 dGVjaC5kZQAKCRDzpnnJnNEdgbN1CACoWlBbmskQ9W1XSPgzenFMVgidfx9fOv3T
 +OJX7JUOburOjTWvhuIbWBwYP9XWsscxUvb3rKik05KcWubV4iHHZhqY9pe2aCQL
 emie/FBiS7nqGDC3C2LphJOC6hJsNP5emQLYA+GfWoG9sXxyXo3g53nIywx8Jxy0
 WA6wtHI7VLV3R427HTresasmPX6OEaMVwtavKBWWlkLeuKb1/IaJ8kIEeuRU/XgZ
 6F/T6M5s6B5OYVeSBTfyvMQ8sy5jI5/QKZ+FkyDNVHUiyuEj0IkmwjuIqFrGXbhG
 +sPNc2Ymow9k0VRKEVcfWD0cg4yf5CI0xwjX80/X/tnAF9L+KdoI
 =lz3z
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh/+1oACgkQmmx57+YA
 GNlCEQ/8CIPnXOlzY2GE0Z+xviDysZBJq84lASCax5JNOWEmxRNm3HW7Uvgo1d3/
 rNd1sM4LKSkAkSnLjJ6YPqOqbx6UjuSVrZSGYlQ+YMVCUI9wPOGANDPOmQJETm6q
 Oqd7IB+xUBW2IKbHIqBiRF5tUITWar7zw6HEQ+JrZHlk8EmhOdYnJjGGBqRtnU63
 kpEwyFtmLasQu4N2AtD1hw3fTHGIN7dUbyikK6WByScb/M/D+CQ42gAgpBA34ws6
 /Xj6SdchJOek0+kzrkYtxTAbJwyvMh0uo0JHYJ/BxCwaY57wGoYa8g2DVOj7mZ18
 0paByxPooGMgHwh/q8Z9wQyLLzgDuzwo+JyIuSFeHvpPJJGdGjr9sNXSChdwxrxS
 oJnxKYlBZtSiVfQKAKuyEllnLxgxIrzkTX4a9HkJuH6sptOFwcUeh29ws7VzrODm
 9hIidpAdG6d0w8K47wn6wEzdfsEAGcFTe78VT58pSpaoE5UX67QvEFEPQNhggzhr
 7jTCU6b33enW7dGZZs721OWeN0w7wHWf7IxHQfuTYv7YbNJV5645eupmNMFt6Rvu
 B+j9BcplkRmsv0YkiWjFy58b7AGvXAo5W8i/o9pocDRK6BtdMSQglAmUvETdfFNf
 ebD+MNJZ2tTTWdWA0phrUx1q5MDyKvjKH2ybnT7Wfvigyivgyp8=
 =fUWQ
 -----END PGP SIGNATURE-----

Merge tag 'v6.17-rockchip-defconfig64-1' of https://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into soc/defconfig

Enable Rockchip DFI + PM_DEVFREQ_EVENT and RGA modules.

* tag 'v6.17-rockchip-defconfig64-1' of https://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  arm64: defconfig: enable further Rockchip platform drivers

Link: https://lore.kernel.org/r/9025082.MhkbZ0Pkbq@phil
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-22 22:58:01 +02:00
Arnd Bergmann
4252ec9ff8 Qualcomm Arm64 defconfig updates for v6.17
Enable camera and video clock controllers for SM8450, SM8550, and SM8650
 platforms.
 -----BEGIN PGP SIGNATURE-----
 
 iQJJBAABCAAzFiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAmh8XlAVHGFuZGVyc3Nv
 bkBrZXJuZWwub3JnAAoJEAsfOT8Nma3FQ6sP/0SIviiM6A4a+N7zr02VQCwQdRPl
 U4mqeo74UcVdLrvHBtAQ+H7r+mC2Gff9JdFUggS16MtnpdT7qLNVZgxr+ABMJ73m
 VqwN/TXoXgOYNaap1gUTbpDpkZ8Di1IgbyABzSvmegdEawJbppYZdEEnkbfeEFk5
 XMQDZltSSQbavQJo2kacMsiVe14MRI/iQy1zXnF10nRL77pPLTz/5aY9x66Q/L5k
 1whQsllClID/ofWZUKHyqmpXvKc7l6ALsvIUcMATV8ZhC5Ih7USJi7tVicZLr9nW
 /FmfGkilsOwgoK/wxG/07LdWvmnRntsSl6RjVkDF+QQd1u96r9I0WaGvc6gnExLk
 aTsRQod8sM/xBMGWWr0icLClg2wauyFer6nu9FNfWVCOO4/R4Dhv/VJz3J1YUC1O
 X73BpFHxzrkPlkIq6auHtem28BGihnfpCki8XwbfgjokVbNh/5lX8ErcQvmzp5ZU
 LKjANasNEXPMTy6JX/DxqV4ca867VWJlgGOJ4ZYbFL58v6qJCNup9N38RGMqchvq
 5blD2hv8PaM0Mdov8Dk8cEfRU3uexKMxqqs5rHGSplyIc1QmAvOr5CGJXPBvshQp
 oAbRbPNdDXiuwabKzZ+B+C/Lmo+snf6Pt/j06dKFu5ou1gEECsPmkNZx0zy1iPBt
 ySfVH/Ijcahp+0VX
 =1NO+
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh/+w8ACgkQmmx57+YA
 GNlRLw/+IZDdP/UHyNGywLJB8r9quJg+/8G6fAilAj0gqsN0tpeNhHjzMAeyAorY
 y3wa3MpilyFoc7OCj5/k+rSWrFdD3Alk7g9r81mgXn5Sgh2OzrPra0IBKm7kaWm8
 5L1v4R9IibWrqS4U18HIDJJ7fgg+TKe05jdR8UxFAb4PaA+wCZ1PS6twaaVlJjo7
 aGY876ht0vXeJgfJPjQjhULnFet4c/EZLuFK0CYCyFXViqhtJRryZwU6TYPIzzp0
 7V8zy/n4lVY7L+kS6c0tNfy56ju3FE+iO2CFZYONAR/iv1BNaEyt76nzmAP6YjIz
 oHAyMy/YgfO/DpdOU5ffAHTLMxelOuSSwV7RMFL+B25h/gA1eZuZz2q8z7L+h9+l
 kTVwJTcsxT+heirQC6zlCpZ+Spp09y8HABLkd2nXraiZzVb6VsgokSbVr7nuLIhe
 aSuCWBq5JSxm5/r00TEoJ3eP7k3KpTDsAf41VvXBzUoJOpBXWN0J8fol76kJGbu/
 Pj2gHLveH4IabmC/MX3x5CvuBO8jBDXb21/mBxKgDRNoTNOEbUYkFn4Zv+gCEDbD
 fq+siyjkYLNO7qk/pZjQqNJjgX0RozdDs5QuCpBA7osOxLAhyDSObceE/mkHFTpw
 9siIM3VQPmVE18pzqcvMZSidN6bWW0WcjSHzoRnJAfN0bXD5jOo=
 =XhSP
 -----END PGP SIGNATURE-----

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

Qualcomm Arm64 defconfig updates for v6.17

Enable camera and video clock controllers for SM8450, SM8550, and SM8650
platforms.

* tag 'qcom-arm64-defconfig-for-6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux:
  arm64: defconfig: Enable camcc and videocc on Qualcomm SM8450+

Link: https://lore.kernel.org/r/20250720031134.286063-1-andersson@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-22 22:56:47 +02:00
Diederik de Haas
912b1f2a79
arm64: dts: rockchip: Drop netdev led-triggers on NanoPi R5S
Sometimes the netdev triggers causes tasks to get blocked for more then
120 seconds, which in turn makes the (WAN) network port on the NanoPi
R5S fail to come up.
This results in the following (partial) trace:

  INFO: task kworker/0:1:11 blocked for more than 120 seconds.
        Not tainted 6.16-rc6+unreleased-arm64-cknow #1 Debian 6.16~rc6-1~exp1
  "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
  task:kworker/0:1     state:D stack:0     pid:11    tgid:11    ppid:2      task_flags:0x4208060 flags:0x00000010
  Workqueue: events_power_efficient reg_check_chans_work [cfg80211]
  Call trace:
   __switch_to+0xf8/0x168 (T)
   __schedule+0x3f8/0xda8
   schedule+0x3c/0x120
   schedule_preempt_disabled+0x2c/0x58
   __mutex_lock.constprop.0+0x4d0/0xab8
   __mutex_lock_slowpath+0x1c/0x30
   mutex_lock+0x50/0x68
   rtnl_lock+0x20/0x38
   reg_check_chans_work+0x40/0x478 [cfg80211]
   process_one_work+0x178/0x3e0
   worker_thread+0x260/0x390
   kthread+0x150/0x250
   ret_from_fork+0x10/0x20
  INFO: task kworker/0:1:11 is blocked on a mutex likely owned by task dhcpcd:615.
  task:dhcpcd          state:D stack:0     pid:615   tgid:615   ppid:614    task_flags:0x400140 flags:0x00000018
  Call trace:
   __switch_to+0xf8/0x168 (T)
   __schedule+0x3f8/0xda8
   schedule+0x3c/0x120
   schedule_preempt_disabled+0x2c/0x58
   rwsem_down_write_slowpath+0x1e4/0x750
   down_write+0x98/0xb0
   led_trigger_register+0x134/0x1c0
   phy_led_triggers_register+0xf4/0x258 [libphy]
   phy_attach_direct+0x30c/0x390 [libphy]
   phylink_fwnode_phy_connect+0xb0/0x138 [phylink]
   __stmmac_open+0xec/0x520 [stmmac]
   stmmac_open+0x4c/0xe8 [stmmac]
   __dev_open+0x130/0x2e0
   __dev_change_flags+0x1c4/0x248
   netif_change_flags+0x2c/0x80
   dev_change_flags+0x88/0xc8
   devinet_ioctl+0x35c/0x610
   inet_ioctl+0x204/0x260
   sock_do_ioctl+0x6c/0x140
   sock_ioctl+0x2e4/0x388
   __arm64_sys_ioctl+0xb4/0x120
   invoke_syscall+0x6c/0x100
   el0_svc_common.constprop.0+0x48/0xf0
   do_el0_svc+0x24/0x38
   el0_svc+0x3c/0x188
   el0t_64_sync_handler+0x10c/0x140
   el0t_64_sync+0x198/0x1a0

In order to not introduce a regression with kernel 6.16, drop the netdev
triggers for now while the problem is being investigated further.

Fixes: 1631cbdb80 ("arm64: dts: rockchip: Improve LED config for NanoPi R5S")
Helped-by: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Diederik de Haas <didi.debian@cknow.org>
Link: https://lore.kernel.org/r/20250722123628.25660-1-didi.debian@cknow.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-22 22:33:36 +02:00
Arnd Bergmann
dceb36675b Merge branch 'newsoc/axiado' into soc/newsoc
Support for the AX3000 SoC, from Harshit Shah <hshah@axiado.com>:

The AX3000 is a multi-core system-on-chip featuring four ARM Cortex-A53
cores, secure vault, hardware firewall, and AI acceleration engines. This
initial support enables basic bring-up of the SoC and evaluation platform
with CPU, timer, UART, and I3C functionality.

The series begins by adding the "axiado" vendor prefix and compatible
strings for the SoC and board. It then introduces the device tree files
and minimal ARCH_AXIADO platform support in arm64.

* newsoc/axiado:
  MAINTAINERS: Add entry for Axiado
  arm64: defconfig: enable the Axiado family
  arm64: dts: axiado: Add initial support for AX3000 SoC and eval board
  arm64: add Axiado SoC family
  dt-bindings: i3c: cdns: add Axiado AX3000 I3C controller
  dt-bindings: serial: cdns: add Axiado AX3000 UART controller
  dt-bindings: gpio: cdns: add Axiado AX3000 GPIO variant
  dt-bindings: gpio: cdns: convert to YAML
  dt-bindings: arm: axiado: add AX3000 EVK compatible strings
  dt-bindings: vendor-prefixes: Add Axiado Corporation
2025-07-22 22:30:38 +02:00
Harshit Shah
525f46c7e3 arm64: defconfig: enable the Axiado family
Enable the Axiado SoC family in the arm64 defconfig.

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Harshit Shah <hshah@axiado.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-22 22:30:18 +02:00
Harshit Shah
1f70557790 arm64: dts: axiado: Add initial support for AX3000 SoC and eval board
Add initial device tree support for the AX3000 SoC and its evaluation
platform. The AX3000 is a multi-core SoC featuring 4 Cortex-A53 cores,
Secure Vault, AI Engine and Firewall.

It adds support for Cortex-A53 CPUs, timer, UARTs, and I3C
controllers on the AX3000 evaluation board.

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Harshit Shah <hshah@axiado.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-22 22:30:18 +02:00
Harshit Shah
729b770bb4 arm64: add Axiado SoC family
Add ARCH_AXIADO for the support of the Axiado SoC for arm64 architecture.

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Harshit Shah <hshah@axiado.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-22 22:30:18 +02:00
Arnd Bergmann
c18b21c5d5 i.MX defconfig changes for 6.17:
- Enable S32G RTC driver as module in arm64 defconfig
 - Enable drivers used by imx28-amarula-rmm board in mxs_defconfig
 - Enable INPUT_PWM_BEEPER, USB_HSIC_USB3503 and BT_HCIUART_BCM in
   imx_v6_v7_defconfig
 -----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCgAdFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmhzSLUACgkQUFdYWoew
 fM6fYQf/Tg4aRk0Z7YyQS1InW8bIOdswvvIelpGEUEOfYhOolvGCAemHeU4eT5Bs
 M82S8n6Ntbsu9TcAB/Q7Gp5W8Wu4wF4I83HiwykJ2WQuLLGXRGT6yQNYDycPAJbR
 43LtNqvavBcAnnz5CXqCoQ4OQ1hVLhYUHiWtWBTCZ+0Lv12JE0Sfo4fkj9HGy/ym
 fpHOrKaB00yLBO/O0tALAfp8Poct9VUJLXlnVqy5BBMNvNVvL7I1ZpoPRlwk2Gdv
 lshhQahgIOIErHrtMYk7izZyb3sVci8Gq9COuwv5OYruxDBY2cCfYCHmff9m3Ef8
 W36NoETUj15uCHk/ijcy3TcDrB+1+A==
 =J9v5
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh/8+MACgkQmmx57+YA
 GNnRfg//dPrM1foO5avKnNdvNPuC5ZWjeVMPIqX2r0waV7rCgZiBJCdnbTzunfSi
 VgyJsNYEQ+jE4g/LUFQLJeHweCkretYG5Y6FpmU9i2KdXIvomVPOlihLVEHAciEk
 d98rNcsCb8hCxRo/kvKHeeKiQ9nTlAPjNe87tbrZ3I+UdIe6rR+V4ZJ49gKAIs3J
 AiR8Ez7JegLjgNGVVVa96tKFvXOG7YmgQhJBslulg0/A1QHgbr3sWdflsBLJnrr1
 SaNXuviEZisZm5GUG0e+qtxKfPWXkA0OSnFzfw5DEImd0VF3m4mTAiC2Wo3L9vS9
 zvhmf71ohGqSPBZ5Vh0DO12xuNeNYTWoB0U6xZDT8X8z8hK2qU9zXNwFoa7pmIdh
 RzxkeT4lflviT0YglFtPglmv7iEar2NHpbLpWKXt/x2Ozq50+honcNb7EgEAyPFp
 QFM98B5pgnmw4RD/8L1hmD2ZdEMOBdPPz+TAD1JPwC1jU16XfaM+P0QgWvo72iQW
 xdAvNlBuJCJO7fpTpVOzsnAZ0IQT7t9r96AgKHj+oEW+101B0AT79Cq1HnP/tkmm
 ewDXW8DoVkgiYz/HkdeKP8AxvYyS7LKtvI3IPAw0YrctTzkR6PICJ0fqIkLnWEXY
 6+bkIcskNLOsyJALfmHioTXDaymxjkQEPxwMtKmpuuo4Ag6Lfc8=
 =CHlJ
 -----END PGP SIGNATURE-----

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

i.MX defconfig changes for 6.17:

- Enable S32G RTC driver as module in arm64 defconfig
- Enable drivers used by imx28-amarula-rmm board in mxs_defconfig
- Enable INPUT_PWM_BEEPER, USB_HSIC_USB3503 and BT_HCIUART_BCM in
  imx_v6_v7_defconfig

* tag 'imx-defconfig-6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  ARM: imx_v6_v7_defconfig: select CONFIG_USB_HSIC_USB3503
  ARM: imx_v6_v7_defconfig: select CONFIG_INPUT_PWM_BEEPER
  ARM: imx_v6_v7_defconfig: cleanup with savedefconfig
  ARM: mxs_defconfig: select new drivers used by imx28-amarula-rmm
  ARM: mxs_defconfig: Cleanup mxs_defconfig
  arm64: defconfig: add S32G RTC module support
  ARM: imx_v6_v7_defconfig: Select BT_HCIUART_BCM

Link: https://lore.kernel.org/r/20250713055441.221235-5-shawnguo2@yeah.net
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-22 22:26:11 +02:00
Arnd Bergmann
0570e9064c arm64: tegra: Default configuration updates for v6.17-rc1
Enable the HSP and BPMP via the configuration instead of selecting them,
 which can lead to problems. Also enable support for Tegra241, which was
 never done after support for it was added, and Tegra264.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAmhxir0ACgkQ3SOs138+
 s6FhJBAAmnjQOaQPOsmwTXRZcYERrvAw2opyVNhifDvhaf5CSb8y0Qq2/Sp8jraW
 7odU3jSxEy+DDKscAhIseequMs8VyAHtkgeOcQ+VS2XXiJJq7B0m5X5Hso470cdr
 hwnooio6Ljh9+S6t6gF7kF9vp1dZSl1JTdCqUGl6qJCAGcS2dfEc+YRZss40pyWt
 p3NQiLnCpmWqo2te9VzUKOFsotOO0WtrVbwQ6qnwv8as3pzNfcK230OlpwKtkesn
 oGqqgr1/cvXH1LSNZzQqZoZdNbQNuvvZbr7Lc0cOjeRmo7/2s1DDr6uq5DdqaXok
 aG1ozW7HaIoaPSGPFULZF/1mt7Po/W/g7LaWaNIsqksTSJ2ye9c25T8qh4517Iq/
 nyrsZxaXtXNah9PmwOiV3p5dPr1o3buvbyvWuIhW0jzdV6CcZQcG1q+yvvUJ2wDp
 dunaQA8of4PnGbsTI6QX6NyBuZ8+xfXuj8Lbjzp7JCha+GXkXzQ94Oxt1lZQORNv
 aggSg/T5ORAaXTJxYiyD5Zqf2sCsIMl8ZxOTJ9KySvOmBBr3Y7cnrTL1aJotIw0r
 73b2As1NR7K24/VzmX2pvYbIpNmihsdid4SkAoxX24FQ7Mg2GCKqzOB9guFhQ0is
 ri9U3GvuCMtnDD4O49jo83QM6CSWSVp36e2oOG/ACUpqAE785Ks=
 =ARB0
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh/80cACgkQmmx57+YA
 GNmo9Q//fx+345Q7e7cRIXQc6WcLk35tpJ6Rp5AZ2DWF3gLR91sN3O5f63bZ3sb3
 f2TFIj/inusc7ph6wh7GVA1aGQhW4ADWb4vrhEyHmCIMRCQ1tbeyOg8rm1AmiaJe
 0nQIFR2m3i1dltgB8DW+ueQ7WnutV09uok/A1wPu4NXFVktVLOQHjp+C0M5SuAsT
 6uCqctBaMGpQlnTP8KhnsdSF1VCItowHkSJ26zX9ALmV8t9eweAtwGsWy8oV8id4
 IdsUDQ4Id0Ba4wWLdru0j6aNsSr6Jt6uPbX/WpCQ7/z/+IePTHvDLHdvTNTELmSz
 kMLrqWZZTO77wi1Im02IERbA3ltJJTeSgBWt8AGSBq5XCD5Ti2yFoOBWrSp6Bg5x
 IJDc3CbJX6s/U8e7grHBOU+w+sk38VcuelRkGCdsI5jo1Lglan7fN5n3/dnOrwn8
 Q9YVi5BY7CU57559tI7np8sI1tZP3En9UBpKzJFfquu274xSGoLZWgspTt1d57t1
 2pyPsh24lE0mgfYmTLTE50PLJbchagMwya0s0psJNJTmCmrMru0nssShdMzuWFDT
 +Ehz+7twHLqRXiHzXFCdDk0MMdZb6Q2Wz95VWxEWeQNwu+SV58jlz/QtE3f8BBRD
 h0i8zoLFGenVaCPrXiOuJg9f6mKnadEY/9uVghehZEMWfhcwky0=
 =OiJ2
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-6.17-arm64-defconfig' of https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into soc/defconfig

arm64: tegra: Default configuration updates for v6.17-rc1

Enable the HSP and BPMP via the configuration instead of selecting them,
which can lead to problems. Also enable support for Tegra241, which was
never done after support for it was added, and Tegra264.

* tag 'tegra-for-6.17-arm64-defconfig' of https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  arm64: defconfig: Enable Tegra241 and Tegra264
  arm64: defconfig: Enable Tegra HSP and BPMP

Link: https://lore.kernel.org/r/20250711220943.2389322-8-thierry.reding@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-22 22:23:35 +02:00
Arnd Bergmann
7097d52d55 Amlogic ARM64 DT for v6.17:
- Align wifi node name with bindings
 - Add pinctrl nodes for Amlogic S7/S7D/S6 nodes
 - Enable the NPU nodes on Alta & VIM3
 - New boards:
   - Ugoos AM3
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEPVPGJshWBf4d9CyLd9zb2sjISdEFAmh3Vi0ACgkQd9zb2sjI
 SdHtSg/8DNG/Hog2oBQKb58ucJXGSdc/S9LH1UaQNSGbB/yHj4fiP0R/Lu4rQHKG
 phtQUYgPoMb7bmgXQ18sQwg98k5MUfjSBKAkT1EJYjiALr/vET17Hstj0wOmr39k
 CnKYX6L9HRWpsQq4o9mmX+qqJsQF/emsdbuKFcZ36P+k/85RKC7VU7V0DMFLmY36
 1x0iw/DP11fGw+K2dZnv1R+4R0/egRONY+itGqrnOV4lhf0lsurvCQxBkq29z6sD
 tntWy9r0upErGZcupxHHayteu9Q1UDtEVK8FeieeAhCbalJLzahD73sLqAp93nBE
 nsz3WhwkuH9GLiWBUH6h+nAZJzWULySgQDSSR4qEfUuJmAMIB4tn/wAMSeZnrASq
 ohpXqOO1VSN01oKhi5wkN8bNwaDYRzvINpx6avtszJ80UMsLDL+hLHTEj9bKUxpU
 /7qHmnYN1fe/PYOrB9Gi4fZm78iewVBd3XfAuIyQS6mNVTbcZzHSi8Zv1qolTx7j
 fC9jHjuZ9gXKF34Xw4P89TEGVak4zvQIWxHgpqhU+JJdDit0W2nefOfmWwwkc32l
 aO3iGg7M7oByrINfEIdJtZJeeqbU75V7ekaLxTcEuEzUG2p9gQx8HEdDIJY/cWcD
 8IxaIcm4yzKDxV5684w3jPE/sqQbkL9AyXIRPKsU6mqQILFrcRI=
 =msTy
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh/8moACgkQmmx57+YA
 GNnObw/8DC5a9TaQqE4ULHlPqEJ3nj8PGowt7v5Y2cNZPKo+cJZipEpKykn/c3CC
 Opa3oHBMcWJbhqEYfzylVoWtbRergpXKa8HudHH4dNmymRRRMRswAvy3dM1F0uJ2
 0yi9WbLnr4QYMKKKLoftBb/aQorRZkvl41Af47ENSZxDJYiGzSEo2OgiXvzzzU7X
 5YaSnDlyPjSXi+M3pjZMkSNt0tA0m2WUI5CdV3uvot5hIa0RgOoiK6fPT211Ot9K
 d2Uylh72nR1rC4PzxXGaBx5q6xF2erROc/UZ913aK3+X18McHCuxpvj9xYvkU8U9
 qwDx++yhobUs2Tf2RDY6BjqXQc7HyuYcthRpk9SriSpTJQYeVpwWkpvjjS8K8x5h
 oElcHen0mNW/9SGtQ1rSyNmKSJm2zpQ/nbzppU4qM0VPmHnPZB93Le/5TOml/mof
 Fb8i7+5jxeoRNuxUW859uzLeJdQ8k0IjEXW+oANrnNolHMKxVRFJcHenqmYbDPyX
 BI7Dw4Zh+T6TTZdeAUD5/e/DFmBxBieqdYFf4Azuui4EGMa80vSbzcBZ2C4SU59P
 ioVJZBvm4N9CGXbVib1/HZqsk4E/78DrkP0FF58R926qeUXNjNA0sR65x/PvKsCH
 NDoSVguyEe/3rBsz44EoidtA84w1J1wQ2UWyaMWyOssJ1tpxRTI=
 =R01F
 -----END PGP SIGNATURE-----

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

Amlogic ARM64 DT for v6.17:
- Align wifi node name with bindings
- Add pinctrl nodes for Amlogic S7/S7D/S6 nodes
- Enable the NPU nodes on Alta & VIM3
- New boards:
  - Ugoos AM3

* tag 'amlogic-arm64-dt-for-v6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux:
  arm64: dts: amlogic: Enable the npu node for Alta and VIM3
  dts: arm64: amlogic: add S6 pinctrl node
  dts: arm64: amlogic: add S7D pinctrl node
  dts: arm64: amlogic: add S7 pinctrl node
  arm64: dts: amlogic: Add Ugoos AM3
  dt-bindings: arm: amlogic: Add Ugoos AM3
  arm64: dts: amlogic: Align wifi node name with bindings

Link: https://lore.kernel.org/r/3d93b621-9544-4a68-85db-6f87a9e8fa5c@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-22 22:19:54 +02:00
Arnd Bergmann
7723866e8b Qualcomm Arm64 DeviceTree updates for v6.17
79b896e7da arm64: dts: qcom: msm8976-longcheer-l9360: Add initial device tree
 6516961352 arm64: dts: qcom: Add support for X1-based Asus Zenbook A14
 
 The DB410c D3 camera mezzanine is converted to an overlay.
 
 On MSM8976 SDC2 pinctrl definitions are introduced and BLSP DMA
 controller is marked to be managed by another entity.
 
 Add camera subsystem on the QCM2290 platform.
 
 Add and enable remoteproc and related devices on QCS615.
 
 Add and enable Video encoder/decoder on QCS8300 and SA8775P.
 Also on SA8775P add CPU OPP tables for scaling DDR/L3 bandwidth based on
 CPU frequency, add L3 interconnect definitions, DSI and video
 encoder/decoder support.
 
 Enable the SLPI remoteproc on SDM850-based Lenovo Yoga C630.
 
 On SM6350, add the video clock controller, APR and some audio related
 services.
 
 Describe the camera subsystem on SM8550 and add Iris video
 encoder/decoder node for SM8650.
 
 On SM8750 introduce UFS and Soundwire support, enable these and describe
 the sound hardware on MTP and QRD.
 
 Add camera clock controller on SC8180X.
 
 On X Elite, for the Dell XPS13, add WiFi and Bluetooth pwrseq and enable
 the fingerprint sensor. For HP Omnibook X14  USB1 SS1 SBU mux and do
 some misc cleanup.
 
 Replace the thermal zones inherited from X Elite with X Plus-specific
 ones.
 
 Add missing interrupts and clean up unrelated clocks for PCIe
 controllers across a variety of platforms.
 -----BEGIN PGP SIGNATURE-----
 
 iQJJBAABCAAzFiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAmh3GBgVHGFuZGVyc3Nv
 bkBrZXJuZWwub3JnAAoJEAsfOT8Nma3FHKgP/3fD3fSclattuh80iPSjhx85vy3E
 ZZXT++lYy+UayENPOYwA2BToTgogWUmZvxRnrCCagJWm0MfBk1F76q2b01HlD64P
 kxztJfdVPlcQKDcjKZONzmGeLH0Bqx2/c96YBZ/8fSqAJI24NJ0KMKQq2LfgfiI3
 5j3VQprf4ec/OdHanWrWupN4OIgpG916fonsvPc7GLE5pkqeE6miYuRVdWlmPX8L
 tP5vrOAIvUJGtgwQGz/TuB8J2ua6ZTy8Uj4PbPA5Lj5C79SHXiUJL6/lqhsPWBpW
 uGNyJo6pJ3LIGujS9rxvD9z8egnAxiDxovByCmT0yRx+NOQ4mAEzd0Q3nKgBD67U
 LDuOrurVPlZmCMchcfwXgg9qK6do3D56+Cql8yUn4CsdHJkGSygly7hyKXT9s1KK
 cBTKVom/WrBn+RGWhFAEa3cbM1qeWJSBtqVJuV88e+3h0kImDR0zCcqxXE6dWfIO
 DB5IeG7iCTtYws6O2mKaHdAuqGJ4eFdA7W5oL0bDKD7dlZvDUz9suGacWRaSKktM
 9g36SLBR5x9rHQzaEyq3NCtWO3jAYuXvxTqdumf99xNwYhfbOmwQzwpDJRBPc+Lx
 Vbu4gGJoCHk7A3ts4PUS83Hcq5h/6B8PAjK26hih6ntc+T+6SlUZakFuQ7lx6GJI
 EP9JSa+rD4fbrxgt
 =SyDg
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh/8l8ACgkQmmx57+YA
 GNln7A/+Ie7lDZLAluHFWngBCg1OFyfKm5m9qp0ETfF9XYaGXXrE+gqOIwKLbh94
 FzP0HTvFeTHqz0sl77CGv/Lu4MwfxlSnmjqiXI+yzXMDuornc2lX7e1xGYKVOBYF
 FpBtetEXiU6ljar7hchJMeB27VfAc20456aE4BBgngWpStMTRonV1uruOJVWTzQZ
 sdvRDL/h7mJbIXYFQcG6ZaaRGpi4PQW26Fn2V60p+2ta0S59v8tYZ7zt3FnIZRE1
 GBQ6zn6QsF7oVjLOPgKPD2y2KZEfHGrLBMySdkISBazbJZ6cFS37OeqFyf/SCP3r
 xHMvbqmxgbouYsXesnECoRAHHFENTeFE45o9Vo5GDVhMr8tePyPSndDNTZvQ3Woo
 QLiKdG1HdZSbDG5Rt4+BC3goJ8m9NM2hG3mBjdYlzqHf2oIe1V9oipmJvgXCFRnd
 SuJFQxr6zR0U4CaLiTdX1XA5UyKg1knpeAN1Bff5uwY1x4yFyOD9TFoDLqsSZlOf
 j3MxVW2SKoEeOmqb5/CGe1AlO8Y2l4wglEETDY40wWXtVgsMjSiTvTBpPP7kh5eK
 ufiBYB6TqTV0WSYr336H5QuxB+CjOEOxBzF9D3mhIK3MvEAimgGmBKtkBJVHsQXU
 KkcR5Of5up0dpgh2zRAFqUpprQLO0FeGmSw5Y0n2oRoLareSej8=
 =VsT2
 -----END PGP SIGNATURE-----

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

Qualcomm Arm64 DeviceTree updates for v6.17

79b896e7da arm64: dts: qcom: msm8976-longcheer-l9360: Add initial device tree
6516961352 arm64: dts: qcom: Add support for X1-based Asus Zenbook A14

The DB410c D3 camera mezzanine is converted to an overlay.

On MSM8976 SDC2 pinctrl definitions are introduced and BLSP DMA
controller is marked to be managed by another entity.

Add camera subsystem on the QCM2290 platform.

Add and enable remoteproc and related devices on QCS615.

Add and enable Video encoder/decoder on QCS8300 and SA8775P.
Also on SA8775P add CPU OPP tables for scaling DDR/L3 bandwidth based on
CPU frequency, add L3 interconnect definitions, DSI and video
encoder/decoder support.

Enable the SLPI remoteproc on SDM850-based Lenovo Yoga C630.

On SM6350, add the video clock controller, APR and some audio related
services.

Describe the camera subsystem on SM8550 and add Iris video
encoder/decoder node for SM8650.

On SM8750 introduce UFS and Soundwire support, enable these and describe
the sound hardware on MTP and QRD.

Add camera clock controller on SC8180X.

On X Elite, for the Dell XPS13, add WiFi and Bluetooth pwrseq and enable
the fingerprint sensor. For HP Omnibook X14  USB1 SS1 SBU mux and do
some misc cleanup.

Replace the thermal zones inherited from X Elite with X Plus-specific
ones.

Add missing interrupts and clean up unrelated clocks for PCIe
controllers across a variety of platforms.

* tag 'qcom-arm64-for-6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (67 commits)
  arm64: dts: qcom: sm8150: Drop unrelated clocks from PCIe hosts
  arm64: dts: qcom: sc8180x: Drop unrelated clocks from PCIe hosts
  arm64: dts: qcom: x1-asus-zenbook: support sound
  arm64: dts: qcom: x1-asus-zenbook: fixup GPU nodes
  arm64: dts: qcom: sm6115: add debug UART pins
  arm64: dts: qcom: sm8650: add iris DT node
  arm64: dts: qcom: msm8976-longcheer-l9360: Add initial device tree
  arm64: dts: qcom: msm8976: Add sdc2 GPIOs
  dt-bindings: arm: qcom: Add MSM8976 BQ Aquaris X5 Plus
  arm64: dts: qcom: msm8976: Make blsp_dma controlled-remotely
  arm64: dts: qcom: sa8775p: Correct the interrupt for remoteproc
  arm64: dts: qcom: sm8550: Add support for camss
  arm64: dts: qcom: qcs615: disable the CTI device of the camera block
  arm64: dts: qcom: qcs615-ride: enable remoteprocs
  arm64: dts: qcom: qcs615: add ADSP and CDSP nodes
  arm64: dts: qcom: qcs615: Add IMEM and PIL info region
  arm64: dts: qcom: qcs615: Add mproc node for SEMP2P
  arm64: dts: qcom: Add support for X1-based Asus Zenbook A14
  arm64: dts: qcom: sc7180: Expand IMEM region
  arm64: dts: qcom: sdm845: Expand IMEM region
  ...

Link: https://lore.kernel.org/r/20250716031059.76348-1-andersson@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-22 22:19:42 +02:00
Arnd Bergmann
1037b300df Allwinner device tree changes for 6.17
This branch includes a change shared with the clk tree for adding
 the missing PPU0 reset on the A523.
 
 The PM domain DT binding immutable branch is also included, which
 brings in v6.16-rc2, as well as PM domain bindings for other platforms.
 
 Other changes include:
 - RGB666 LCD pin definitions for the V3s PE pins and V3 PD pins
 - node order fixes for the A523 dtsi
 - UART1 pin definitions for A523
 - Allwinner board DT binding cleanup
 - EMAC support on A100/A133
   - Enabled on the Liontron H-A133L board
 - SID efuse, power controllers and GPU added for A523
 - A523 GPU enabled on all existing boards
 
 New boards:
 - Xunlong OrangePi 4A with the Allwinner T527 SoC.
 -----BEGIN PGP SIGNATURE-----
 
 iQJCBAABCgAsFiEE2nN1m/hhnkhOWjtHOJpUIZwPJDAFAmh2jp0OHHdlbnNAY3Np
 ZS5vcmcACgkQOJpUIZwPJDBDIQ/8C/vnF+mjoNj/Gci0AUMbtVVvI4G28x8bsGVP
 jy3Z2dBuEQvU4eGvOKGyM9oJ5WfQBlpRS9nlRf/NHu/tASc7gXGHb7OJOlAocIUr
 ny3MpO2un0nx6HbtR6RtciSSLoasB6HtAKBscxmapJ3TiZBbjDtI7Z5l+Vxx75z8
 Fo6xxQ9n+Iyxo3X6wZi9vp/d15Xz4LVy2iarN/JY+jywGtKZOcpsqEKqIV7m6Lcf
 6pL2/ZaX38JzOdCY4lNsHUA827Ep/0waXirmUg0rvi8BpI4s1Cysh6XIbyrlQjaK
 xbqRvWWg0ZEaC3j2rcUTLaXREMsl5OFkX/5ywCysh0K76kKwxDvnPnDYUq3yOlwL
 qBO7PUEdCywqfSaaNFR+d8JqnALFT/h5P1KJhx7L2PpNpl3vH/TFy2EIVZgy+A2W
 p2+hkmqB211uJpzWdQ98ED0aIRErDM1vq0pi3KLqFGATmgp/ZQ53UbtrWDwI1NEN
 TUJK80ZztmyqGWlMTsSIHajgt7OAPI+Gc/gIv8fFLbciHoYV68HBAO3t6ljDKbOe
 grwLFhPLe3OELGkKsoOsrSsDJ39ijYpXMw4ssuDQY+TDdEtCrMC1F/NPdS05NQx1
 igjLrUHOD6dMo4azw4uOPNosXir9+Rjywuqeuj/CBJfJkCqWDCh9OJFhWkaFMi01
 ATqMzjY=
 =CwjI
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh/7HUACgkQmmx57+YA
 GNkiWA//XXWjj5W1dEf8xWJFwL5YwJVkX0s+5XPWnAJ8YtLuuttt64bO/dCr74SL
 P6HeEsLLgW7+/LCCd0owkCz+GW+xGTQ5h/NfWgI6tAH73LV4DZ3XGztts06gUuZ1
 DXzWJpRiV3CBUgN52eXdxvjsM4wgDwShck5DH21SbhQf3NpCB7YAtXi3eelqgHrh
 zrsR4UzfF2b/efKMeJP6vORLT4KkumS+IJsMS6cMErIXFeu/kOY7q5f8jvF6FftL
 117kyEl55OiFV5E0S15zdnSGxiNPYWnwi00BUd2HDfxAer0/ow0lbW0bUwlAUd4V
 a7mTxi74Wv8QBgIw/tn+o5Fi24wz86c+Lks85rRC6YlkuQrExaNK2bC7Vzxc7imS
 PakQQnQMnIWA7kf/log2PdIX89gNYe7Lh5x7SKjvd0UmIvsgbwMX51e18P52it0a
 /81ntWhwhYoE7A+qVKZYleb2dG12/893hdW1lxKGnjiBsEkL15U9fsIKFAzgjKCb
 UHrr/dcPEcCedytSnTkOqiws1bscv9zHbc7qN0VEPtSbRwsVUHyDRcw3XFcWRSgK
 JlfiCuYvr+aOKegKihXauxLGDXwK1Q1GK61hMcwJGRocswENT2LA/vcIYDR0e8hR
 CYkc0IilHKyf/14HF+qBj5roPZkufJYS9T0xLs1tEsKRxMbeomI=
 =v3GV
 -----END PGP SIGNATURE-----

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

Allwinner device tree changes for 6.17

This branch includes a change shared with the clk tree for adding
the missing PPU0 reset on the A523.

The PM domain DT binding immutable branch is also included, which
brings in v6.16-rc2, as well as PM domain bindings for other platforms.

Other changes include:
- RGB666 LCD pin definitions for the V3s PE pins and V3 PD pins
- node order fixes for the A523 dtsi
- UART1 pin definitions for A523
- Allwinner board DT binding cleanup
- EMAC support on A100/A133
  - Enabled on the Liontron H-A133L board
- SID efuse, power controllers and GPU added for A523
- A523 GPU enabled on all existing boards

New boards:
- Xunlong OrangePi 4A with the Allwinner T527 SoC.

* tag 'sunxi-dt-for-6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux: (21 commits)
  arm64: dts: allwinner: a523: enable Mali GPU for all boards
  arm64: dts: allwinner: a523: add Mali GPU node
  arm64: dts: allwinner: a523: Add power controller device nodes
  dt-bindings: power: Add A523 PPU and PCK600 power controllers
  arm64: dts: allwinner: A523: Add SID controller node
  arm64: dts: allwinner: a133-liontron-h-a133l: Add Ethernet support
  arm64: dts: allwinner: a100: Add EMAC support
  arm64: dts: allwinner: a100: Add pin definitions for RGMII/RMII
  dt-bindings: arm: sunxi: Combine board variants into enums
  dt-bindings: power: qcom,rpmpd: document the Milos RPMh Power Domains
  arm64: dts: allwinner: t527: Add OrangePi 4A board
  arm64: dts: allwinner: a523: Add UART1 pins
  arm64: dts: allwinner: a523: Move rgmii0 pins to correct location
  arm64: dts: allwinner: a523: Move mmc nodes to correct position
  dt-bindings: arm: sunxi: Add Xunlong OrangePi 4A board
  ARM: dts: sun8i: v3: Add RGB666 LCD PD pins definition
  ARM: dts: sun8i: v3s: Add RGB666 LCD PE pins definition
  dt-bindings: reset: sun55i-a523-r-ccu: Add missing PPU0 reset
  dt-bindings: firmware: thead,th1520: Add resets for GPU clkgen
  dt-bindings: rockchip: pmu: Add compatible for RK3528
  ...

Link: https://lore.kernel.org/r/aHaQFe3Lr8Qzyb1M@wens.tw
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-22 21:54:29 +02:00
Arnd Bergmann
c522d00e1b TI K3 device tree updates for v6.17
Generic fixes and cleanups:
 * Enable overlays for all DTB files
 * Enable Schmitt Trigger by default in K3 pinctrl
 
 SoC specific changes:
 AM62D
 * Add new SoC support and pinctrl entries
 
 AM62
 * Remove eMMC High Speed DDR support
 * Move eMMC pinmux to top level board file
 
 J784S4/J742S2
 * Add Power on BIST (PBSIT) nodes
 * Add ACSPCIE1 node
 
 J721S2
 * Add McASP support
 
 J722S
 * Add alernate audio-refclk0 node
 
 Board changes:
 Multiple boards
 * Bootphase tags for Ethernet boot support
 
 AM62D2-EVM
 * Add new board support
 
 AM62A7-SK
 * Fix pinmux for main_uart1
 * Add SPI NAND support
 
 AM62P
 * Fix PWM_3_DSI GPIO direction, SD pull up, I2C ups on AM62P-Verdin
 * Add bootph-all property for Ethernet boot
 
 AM62-Verdin
 * Enable pull-ups on I2C buses
 
 AM654-base-board
 * Add boot phase tags for various bootmodes
 
 AM64
 * Add boot phase tag PCIe EP boot
 * Fix PRU-ICSSG Ethernet ports on AM642-PhyBoard-Electra
 
 AM69-SK
 * Add idle-states for remaining SERDES instances
 
 J722S-EVM
 * Fix USB gpio-hog level for Type-C
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEEyRC2zAhGcGjrhiNExEYeRXyRFuMFAmh18A0QHHZpZ25lc2hy
 QHRpLmNvbQAKCRDERh5FfJEW43WXB/9n9R5iu91d1eCwPtTLdKtuzMNSJA82IJYx
 Xy/4vKbj2w15Vzc3/1HQR2ht3GZAnXmg+5ybRUPRHkMLD1uPhVJkRByD91DEiN4E
 GdBz1167S9TJUjZym84gZUDwfyItfYoPd02DO+ZUOqMIQ5PwK5u3Id8t1mtluQOM
 ZrgaJOKIqwROobvzOsa5J66bu+yyaSxxS5A8ohcM7gKWmvXaq++A4Km6mFUMJ/WU
 Lt2zpP0j3nAXZ56lh0fFZSi86e7d+5w+lbLCKpxwQxdYFRcEhlL1vsY9kRZ0afUi
 6dAD51UiUtov/04/sx4G53w6Hzk0geNSKDLJFYT2NGjdJSx0h4i2
 =RjfZ
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh/7BMACgkQmmx57+YA
 GNnZfRAAqmjtP0qY2/glEiN+385vel86hV/nvwI+JocatSyxzNUMaLWhCdciFNF8
 +i70iGRQTmZGLTuRd8dkVZFDNgA85urzZ2RjFH6n7FsbQ19rTXQWSgXRiZukVhYT
 OBnbsGJit2iCarwMBwYllML1J3dcmSx0KDf1PLedfP3Qlp1dBY/Xw7LLvJBqBCFs
 +zV33exbw9Zzo6ifiKRpGdE5SFHLENakmmXlyQTwE2madLwPY6GfsejjMwWWM3rV
 AkqUbnwfGeANNZ2AS1wO/gK98LfyQ1oRmymfAgvm/Mm+KVrBFTsl0tm22JZwUf6U
 s0dSRMYQzK4pXLz0TkfwdIUAJG9xZC7A9C5hBNQWyeV7v7392MRD5n8eM/bMmdt/
 lKHQ7AYQ5C9Fdaw6/0UEq7VmFDOa2pVenmu2sGnjhL0QDB4Fz23ysQJeXRZ9yT5o
 /Vs5BoeRZ1AGWye+mfstNyVFn5T95RKvu0A5deJ1HPhnKSxsXwQNq+IbLovBdeZU
 wNavUyOaswBy6EUVmArlscUF1LZ7R8FD8Qbk5VFMcgiwOZ69f8CglJvDTigjhLfi
 x+bEBLlhJ2x4g1bPaMzAZsna/QJ1VDaUC3PPaotYmUfGbcC2oPaNjCxIWL9binM/
 +RP3lP3APRSku05pyilTH7M0qt6QuJ5Fkv3LO6xGLl8nsBaSW5U=
 =OALb
 -----END PGP SIGNATURE-----

Merge tag 'ti-k3-dt-for-v6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/ti/linux into soc/dt

TI K3 device tree updates for v6.17

Generic fixes and cleanups:
* Enable overlays for all DTB files
* Enable Schmitt Trigger by default in K3 pinctrl

SoC specific changes:
AM62D
* Add new SoC support and pinctrl entries

AM62
* Remove eMMC High Speed DDR support
* Move eMMC pinmux to top level board file

J784S4/J742S2
* Add Power on BIST (PBSIT) nodes
* Add ACSPCIE1 node

J721S2
* Add McASP support

J722S
* Add alernate audio-refclk0 node

Board changes:
Multiple boards
* Bootphase tags for Ethernet boot support

AM62D2-EVM
* Add new board support

AM62A7-SK
* Fix pinmux for main_uart1
* Add SPI NAND support

AM62P
* Fix PWM_3_DSI GPIO direction, SD pull up, I2C ups on AM62P-Verdin
* Add bootph-all property for Ethernet boot

AM62-Verdin
* Enable pull-ups on I2C buses

AM654-base-board
* Add boot phase tags for various bootmodes

AM64
* Add boot phase tag PCIe EP boot
* Fix PRU-ICSSG Ethernet ports on AM642-PhyBoard-Electra

AM69-SK
* Add idle-states for remaining SERDES instances

J722S-EVM
* Fix USB gpio-hog level for Type-C

* tag 'ti-k3-dt-for-v6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/ti/linux: (33 commits)
  arm64: dts: ti: k3-am69-sk: Add idle-states for remaining SERDES instances
  arm64: dts: ti: k3-am62a7-sk: add boot phase tags
  arm64: dts: ti: k3-am654-base-board: add boot phase tags
  arm64: dts: ti: k3-am65: add boot phase tags
  arm64: dts: ti: k3-am69-sk: Add bootph-all property to enable Ethernet boot
  arm64: dts: ti: k3-j722s-evm: Add bootph-all property to enable Ethernet boot
  arm64: dts: ti: k3-am62p5-sk: Add bootph-all property to enable Ethernet boot
  arm64: dts: ti: k3-am68-sk-base-board: Add bootph-all property to enable Ethernet boot
  arm64: dts: ti: Add support for AM62D2-EVM
  arm64: dts: ti: Add pinctrl entries for AM62D2 family of SoCs
  dt-bindings: arm: ti: Add AM62D2 SoC and Boards
  arm64: dts: ti: Add bootph property to nodes at source for am62a
  arm64: dts: ti: k3-am62p-verdin: Adjust temperature trip points
  arm64: dts: ti: k3-am62p-j722s: Enable freq throttling on thermal alert
  arm64: dts: ti: k3-j784s4-j742s2-main-common: Add PBIST_14 node
  dt-bindings: soc: ti: bist: Add BIST for K3 devices
  arm64: dts: ti: k3-am62-main: Remove eMMC High Speed DDR support
  arm64: dts: ti: k3-am62*: Move eMMC pinmux to top level board file
  arm64: dts: ti: k3-am62a7-sk: fix pinmux for main_uart1
  arm64: dts: ti: Enable overlays for all DTB files
  ...

Link: https://lore.kernel.org/r/a0401460-8c67-4c29-a6cf-fa4bdf33bc7d@ti.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-22 21:52:51 +02:00
Arnd Bergmann
ced92af976 i.MX arm64 device tree changes for 6.17:
- New board support: GOcontroll Moduline based devices, phyCORE-i.MX 95
   Plus FPSC SoM and base boards, i.MX93 phycore overlays
 - A few i.MX8M changes from Adam Ford to add DMA configuration for
   UART2, set up VPU clocks for nominal and overdrive mode, improve
   HS400 USDHC clock speed
 - Several sets of changes from Alexander Stein to add EASRC support for
   tqma8mnql and tqma8mpql board, add missing DMA entries for I2C & LPUART
   on ls1043a and ls1046a, enable SFP interface for tqmls1043a and
   tqmls1046a, etc.
 - A series from Clark Wang to improve Ethernet support for i.MX93,
   removing eee-broken-1000t for eqos node, reducing the driving strength
   of net RXC/TXC, etc.
 - A few i.MX95 and i.MX8Q changes from Frank Li to add missing devices
   for EVK board and enable camera support
 - A couple of changes from Laurentiu Mihalcea to support WM8962 audio
   codec for imx8qxp-mek and imx8qm-mek board
 - A number of changes from Shengjiu Wang to improve various audio
   support for imx943-evk and imx8mp-evk
 - A series from Tim Harvey to increase HS400 USDHC clock speed for
   Gateworks i.MX8M Venice devices
 - Many other random improvements and cleanups on various boards
 -----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCgAdFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmhzR7QACgkQUFdYWoew
 fM4M3ggAhOSDfl1UYWlFfG1HR/jvAUDe+5iiK1aCvxvgaYjwgc1qOtiCi5Nh8QBR
 Pep5mWlJ/0UZvGXOXUG1aGKCWuatrpydjt+OYK9QpG28q23W2WfDkrlTA3cjQIFV
 rwh/LX/+c9kYzicGtrLAU6HaN86opiA1jOt9x6Vc9hW1+TDxWTspQmySuuFjSZcC
 9u4xhK1AMTkxo2b2ayUBO8M/01gl4+iYtEgo4TYVWPugZJFVMBS0q7VRp0r23AX7
 bxESPAbTpC83JPUlgSXAcBiDp5RZL90kiJuhQcLuSfFQLtJ6SHu0JsBO5VnY6Yeq
 fVwomVGuZyvn3nB56WdpWNE8R90XZA==
 =ii0i
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh/6S0ACgkQmmx57+YA
 GNm+BBAAgVTdRCn3pbBpzRA1voVctz10VT4bvouqx+Kjo7lciqgs0VUVSxOau5Bu
 BGV73XfYQ8QBPspV4H4q5mD61vaII8/bAXiuGxw6hX1gq7wbf3x0DeZLfsmEfVfP
 r2yFYC+ATGu4GurpoByB34nZVy8CNbyLFCXdRBrdiEljHF41ALJtf1jbq+mq4f56
 b0C+0S8a9QTMiTCnHZbIVK+TL7GBwAATGX1/OrfElAWVdTybbiUWwAEeuukvrDLc
 t8IKTOxUX8Cx/LvYJ53+rYdpDiAa/aiXc3aLWWyvYQVDQuzoYOxsIVy6jzEmvT5Q
 PhJL99GfAZpIv6joTO4CBndbibgX9NImq6tN8pEdSaHN4MNBkAhKi/H4W+RrZs73
 LwIAW6bct5eVAA67VtNvGCsyMjcx6+aNrgZsBjLMrH5x6di2YUzUS3gAOl2tGXfa
 ulCBHMWwauPT2p0VaWFnJog5PFINwsV3jgCHCaT9mYNqbKL5ivMewRjjCZAnUV4k
 3mQNngsxGud7iuQwZGU0nQRjUFkGh0ovkyxCPpPTrA4mZAq8fJ9mYwLqAooI2U9/
 beMcoEKIgWoMefuZQj3VclN9nUnTxLsB+n307y21D0WZo0kNd1KCC4J9oUvm2u2O
 hYPcCdLQNNbFtdKIM0dvHa+lmHVGIkr4v1kdGDpPeYNGu3pnOZg=
 =MCDF
 -----END PGP SIGNATURE-----

Merge tag 'imx-dt64-6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into soc/dt

i.MX arm64 device tree changes for 6.17:

- New board support: GOcontroll Moduline based devices, phyCORE-i.MX 95
  Plus FPSC SoM and base boards, i.MX93 phycore overlays
- A few i.MX8M changes from Adam Ford to add DMA configuration for
  UART2, set up VPU clocks for nominal and overdrive mode, improve
  HS400 USDHC clock speed
- Several sets of changes from Alexander Stein to add EASRC support for
  tqma8mnql and tqma8mpql board, add missing DMA entries for I2C & LPUART
  on ls1043a and ls1046a, enable SFP interface for tqmls1043a and
  tqmls1046a, etc.
- A series from Clark Wang to improve Ethernet support for i.MX93,
  removing eee-broken-1000t for eqos node, reducing the driving strength
  of net RXC/TXC, etc.
- A few i.MX95 and i.MX8Q changes from Frank Li to add missing devices
  for EVK board and enable camera support
- A couple of changes from Laurentiu Mihalcea to support WM8962 audio
  codec for imx8qxp-mek and imx8qm-mek board
- A number of changes from Shengjiu Wang to improve various audio
  support for imx943-evk and imx8mp-evk
- A series from Tim Harvey to increase HS400 USDHC clock speed for
  Gateworks i.MX8M Venice devices
- Many other random improvements and cleanups on various boards

* tag 'imx-dt64-6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (85 commits)
  arm64: dts: imx8q: add camera ov5640 support for imx8qm-mek and imx8qxp-mek
  arm64: dts: freescale: imx8mp-toradex-smarc: remove gpio hog
  arm64: dts: freescale: imx8mp-toradex-smarc: fix lvds dsi mux gpio
  arm64: dts: imx8mm-venice-gw7904: Increase HS400 USDHC clock speed
  arm64: dts: imx8mm-venice-gw7903: Increase HS400 USDHC clock speed
  arm64: dts: imx8mn-venice-gw7902: Increase HS400 USDHC clock speed
  arm64: dts: imx8mm-venice-gw7902: Increase HS400 USDHC clock speed
  arm64: dts: imx8mm-venice-gw7901: Increase HS400 USDHC clock speed
  arm64: dts: imx8mp-venice-gw702x: Increase HS400 USDHC clock speed
  arm64: dts: imx8mm-venice-gw700x: Increase HS400 USDHC clock speed
  arm64: dts: lx2160a-qds: add the two on-board RGMII PHYs
  arm64: dts: add imx95-libra-rdk-fpsc board
  arm64: dts: imx8q: add linux,cma node for imx8qm-mek and imx8qxp-mek
  arm64: dts: imx8: add capture controller for i.MX8's img subsystem
  arm64: dts: imx95: add jpeg encode and decode nodes
  arm64: dts: imx93-phyboard-nash: Add PEB-WLBT-07 overlay
  arm64: dts: imx93-phyboard-segin: Add PEB-WLBT-05 overlay
  arm64: dts: imx93-phyboard-segin: Add PEB-EVAL-01 overlay
  arm64: dts: imx93-phycore-som: Add RPMsg overlay
  arm64: dts: freescale: tqmls10xx: Add vdd-supply for spi-nor flash
  ...

Link: https://lore.kernel.org/r/20250713055441.221235-4-shawnguo2@yeah.net
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-22 21:40:28 +02:00
Arnd Bergmann
0acf88fe85 SoCFPGA DTS updates for v6.17
- Fix dt_binding_check warnings
 	- agilex - f2s-free-clk
 	- stratix10 - rstmgr
 	- swvp - remove phy-addr, cpu1-start-addr and altr,modrst-offset
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEoHhMeiyk5VmwVMwNGZQEC4GjKPQFAmhyVH8ACgkQGZQEC4Gj
 KPRLoA/9GB9b1Q/ISIqPFL12Bi83IRD8PQ/9vn+4iZWO9JCxT72R1OCDevD8v7hI
 7Yxc9auNyMjB453UhhnOoC9bB//FDQZl0k8GVPzPtzuakDIwHY1106LtoL1itMUD
 l1Gf/Fp5rO6yEALPjreFJe7jEp1oRiKfa+kDFjUZk3UtITJodmHumjo+5wcBostL
 bDZEuJ7UqFphdaIJCiO4WSp2f4FD7sG5hzLm+4H0BQCDqW1NinbKjLSEQJ/gdLKy
 MSWuH9xBoOHTMtPYsS2aoBe74bc2beFAwJtMGvLtaXUTqgLr3vYpmNtwkqHUAQaE
 yrnyn3kGmviU7Mgc5FQgvuC6/IWPrnEE/EuxUPJOfkfA7yKxgAMPjUrEXOgpG6Ia
 RKobt3APGc8pojAbQhMUs+TRJkRL+ZjVQvDCr/zgTJo/2V+ke4MHbBATvoBBnpK4
 V+doPL/QlBHnoyWDd4WkeApmBLlor4t8SxQmGdMMlsyBHxmpfXlSPYupQ000BP3R
 5EyCp87XUtPwetgSxdO6xZcs0bRQ+8RClj+mnUFsz3L5I8ED01m9nTwELkODYxQ/
 9RqbC3lzvslzoPgxRg05HeDEc+wFGbzUNgQloGX36FY02gVHJI12Wd/krQKg5VpN
 KZtzR4kY7tY+Dk+FRez1CdI6QyhJMtlG1I4V/HBDwuFEc0dK4Jw=
 =+O/I
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh/6PcACgkQmmx57+YA
 GNmNqhAAtj0HWGsA/y+wKJ5x5dDQCIaiZJDv5SiKQSAxsuaF/8tWwIrutNp6Kg7W
 ya11of5m0dmfQebJQsXL9cZO8jmZwwMdjDAaCr0n7mXNdhGEyi/9RixXRm4JJSXa
 zCdDd6j+ig+OatVN/vYEPPFY7EE7HW9wuuNbBCSfs9QRaCDxtyDWYEDisNtGmnNH
 eDqBe2m/nsQPBmpEA9f1k91oZ0mG+aGqCyAJ5UB0/5dXYqh1I3yUVQYkRWDiVLX+
 9iBUOwsEELu9PzzYKXqmhx7H08oYINJtA9+s5gpWShOBjNUBky9jSTZpmmZikJ3C
 EEQGi5mExadFzZBLuMVJ5dV+MIwLCyaiKLQaoHB3t63XnCYC7qudBStuDQcqFGvO
 97faSoCaZNlcSye7FQYzY7RLeM6/W5HzCYkx/QEe6pvSsOxFxcB2z43iA2AnZF+s
 dtHKE+Q9aI/toRaF2QMnW2KyeafCQHT3aQDnOu/2b0ycQ67mF4IWuJQxzMYjZRtn
 RMDfQe1pbTwRd9tO6mev5PSIMfzqPz/QyqYIvx5Ssw5evifT6DXWDdZTrh3n/QM3
 SsfcSt4bwf59YgV8n54xR9+Y9Yo8aNHg3/fwdK1esXhWwJ5leRhQsjuCqdV5qD0j
 Z4HCpaPbGmc2G4TDt11SxEdB2YxpbmEQPwosGjOqmgKyDwkq62A=
 =T9nQ
 -----END PGP SIGNATURE-----

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

SoCFPGA DTS updates for v6.17
- Fix dt_binding_check warnings
	- agilex - f2s-free-clk
	- stratix10 - rstmgr
	- swvp - remove phy-addr, cpu1-start-addr and altr,modrst-offset

* tag 'socfpga_dts_updates_for_v6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux:
  arm64: dts: altera: socfpga_stratix10: update internal oscillators
  arm64: dts: socfpga: swvp: remove phy-addr in the GMAC node
  arm64: dts: socfpga: swvp: remove cpu1-start-addr
  arm64: dts: socfpga: swvp: remove altr,modrst-offset
  arm64: dts: socfpga: stratix10: fix dtbs_check for rstmgr
  arm64: dts: socfpga: agilex: fix dtbs_check warning for f2s-free-clk

Link: https://lore.kernel.org/r/20250712123248.16981-1-dinguyen@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-22 21:39:35 +02:00
Arnd Bergmann
3116e1d5c1 arm64: tegra: Changes for v6.17-rc1
Add support for the Tegra264 SoC and the corresponding engineering
 reference hardware (P3971-0089+P3834-0008).
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAmhximEACgkQ3SOs138+
 s6HNNA//cgGimXC4W91+4xON26W+rG1mTO5ylcG1VNkr52+aLaKfEOwnlBn7+gAy
 YruyHSnA/DdAnQJtf48yjnmShL5zXaJ81/GCDQTMflXb6YXLkNIMNe29B5A5+kne
 oOJwzhaji355Q8Xb79yPx2u8KCIum+f6kxcq4sDdz1GxD0Ef2b9YgCq3R/I8rn1F
 uMuBK9g2Vt8D8iRJIVCZi0SpxaUslfc3WLhK6/Cn+14XjegGxmD54BooIOyuIK5N
 Dj5mTD81HO9rDeKSvmgiHS+WkWcpQEd/0acxx7DvnPqw4oFFnhjHnEAptNQf7j9x
 iAbs6yhFUcGzBu+es9ngxYuChS/89hjV9OtDEIDHpANcuw9CanKXlLZ2ez87V6zb
 4KA1WMk9Ml0yh5toVcojBXpa9+iQau9kEkeRTnsvyzmh2tIe4rY/fSJvJMdIgEmp
 Z1T6mg9ryxnYh65eN7iLLReEPKlzGFXixwMhWlA6EDJxMbb08PtaqQg7/kFllUyQ
 2TiTtoo/GYa55HZ2EDZqoEkvACOtN7PMyoBkVmdAFZ+HTujmO67c9m9QEUKa8k0w
 FLNxVOIyzZgD0uwSzE63I/ZhDhs644FrShv3ea7pvT1RQ9//7SuL7nPtTmigw/k3
 WvdQcq5GdMmmJ2Ac3k31ZCx8fAs8lpE2OFq9+cThDuvWUe+HB4s=
 =wAQW
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh/6MQACgkQmmx57+YA
 GNmCdQ/7B5VZSgMjlnF7TrEnxCibc4x0sOLKloVjPzBS6EeLXT7UOKYNii5dDVCK
 PYQuFxwYEHTUYbi1XUCoCNEHbaqznU3qPwKMvymZepS5hxs2H5TGsHba3Sacisnk
 jXzK/hXkq1wGkntkbohEJRmx/EJugG9gU/4SLvZhHypw8jIbu3vjB7AbR2pN9ehh
 BMhyKejwCczHBlDDx6IjSEtZiWVLhWPpp3WA3tCLD1cK/VANniUxlq+t1Yb04iGi
 ArZm6dEKmzfqNCNzalB78WIgbDwx/pa4QRF8mfjDByhaGE2/xbfX8b2/zCzKuScZ
 Hg/GD2I0+O8Ei7YJ1IR4yI6BrGj1b65JWys3gn+siYz0Qkf1PAqHUiSXPUQbaD2j
 kkkTgg9CqGumftfWGyUqB7JNg6jlT75ZtlkWQLh5MGqT/B2nTDvnS7YNvTZQEkpQ
 y1uIOT2R/shcfsTRzGLD9wAsaGi/+b+Fq0cfCELRL+I+RFyrTZy2HNg+AWqnLxZA
 Bqbk+drupulhjYlxF2yQ3rQXf5tkLG28pKS+LA1pmKQmc/5BtoPPKK13mM2WqkB5
 n1sw+cP++CfF7Vo0vb4YnsquQvs4kypkprvrv4ilO2lVDVW3eSsFOq/qVS37DJLj
 RfuLzNs0RKQONtQs2eaGBs7TwqGtwJsu9DTvn7HM4tQws1wAOsI=
 =aBTF
 -----END PGP SIGNATURE-----

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

arm64: tegra: Changes for v6.17-rc1

Add support for the Tegra264 SoC and the corresponding engineering
reference hardware (P3971-0089+P3834-0008).

* tag 'tegra-for-6.17-arm64-dt' of https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  arm64: tegra: Add p3971-0089+p3834-0008 support
  arm64: tegra: Add memory controller on Tegra264
  arm64: tegra: Add Tegra264 support

Link: https://lore.kernel.org/r/20250711220943.2389322-7-thierry.reding@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-22 21:38:44 +02:00
Arnd Bergmann
b586f28910 TI K3 defconfig updates for v6.17
Cleanup select clauses for ARCH_K3 allow more modular builds
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEEyRC2zAhGcGjrhiNExEYeRXyRFuMFAmh18+MQHHZpZ25lc2hy
 QHRpLmNvbQAKCRDERh5FfJEW49qbB/9Me1nShpWjMe2e2NJ1Y69xmhshdYtQ6TaA
 AxjMiPZENoh69kkEmU1IeRWeJbxY6xRvdoSsVBqjUZVXr0qhf0fleBQdEsjRWfZW
 j3Ev3ndiniy8azKZMkW2rdkVR1mulIkILqMZXBxvavnwOHsAYf80l5SzOTu4gysP
 +io9sfwEsdB1E0CjMJlROKf6OPvD5c2APYwaiLe2nadAf/MeitAGbKPxXqPbic2b
 dNXMdpc8ntSpnIdiPgnGnkxFTpV9fXAsbhSYTVNWzNlQO4RTV7y2U9qkS4fYbVmj
 KpCxoIPb/TSUbautNp1dmmlJ1ZuE0lWyzNs2Zyn3FbVYa9qulem/
 =ahZG
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh/568ACgkQmmx57+YA
 GNl/3Q//afE4jOcIRsv8tiVs+3t/+7lGcCDx63qsJLj3IGW5xEzNhbyYKJv5Kxb6
 0vOTYA0duHJnF/tw1nMkvwr+MJ1X/cjGe9fItoqFGZqO4vdmIjhFRPZM6cUTmztw
 Syq2dDzFz3YCIeHwMCoaSpJnrQRFETWfth4JrheL0noJG97idC/NBDs8QZmOhCMc
 qIMR67+Az0WhyU4WSZUJIqHoCOF4rJMdlaqdMBMrLRl3Zld6dJAP8NbI2Y52SQyJ
 MMNVYoxhVZ3bOnfqCziY4RiX2yiSGQZBHqjtv7OxWrmT/88A+cBvilqE2qh1FPTa
 B+Y4fX9j9auhXY4lFapAjr0oYwnjrnMcYYdYtpKc4OKjfAYgwkfX9FPKm/e4NmZL
 ajl/Ho3mZOjbe28xN19BC4onqEF4eZXkypNVDjNN50Y2cJl3I0WoulnPMWYWXZAL
 MNvzVA9UWxPLBMyElmr67rVOZ/qx3khwI2pdI5OnF6PClDAhlj+/hba8v2+VY7Tv
 4utHDlvcNz3iC3CkVhXoKnBRSFaOLodZ6M3FP2iEaJmU9BWxmHQb1C7a2z3E+dqD
 PqfHpzGvf7pjSRb2M7F43E89lWf9uhukiAhxBXxATXOrCU8oztlb90qKA6rf2KoA
 InvN0XpD6KyZiaPEo9AuvWIW5jTdrRxF7NF5akWOigHrvp1GOYI=
 =d1ss
 -----END PGP SIGNATURE-----

Merge tag 'ti-k3-config-for-v6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/ti/linux into soc/arm

TI K3 defconfig updates for v6.17

Cleanup select clauses for ARCH_K3 allow more modular builds

* tag 'ti-k3-config-for-v6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/ti/linux:
  arm64: Kconfig.platforms: remove useless select for ARCH_K3

Link: https://lore.kernel.org/r/5488ccd5-c999-4b72-bfc0-ba94bb9a360d@ti.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-22 21:34:07 +02:00
Ada Couprie Diaz
d42e6c20de arm64/entry: Mask DAIF in cpu_switch_to(), call_on_irq_stack()
`cpu_switch_to()` and `call_on_irq_stack()` manipulate SP to change
to different stacks along with the Shadow Call Stack if it is enabled.
Those two stack changes cannot be done atomically and both functions
can be interrupted by SErrors or Debug Exceptions which, though unlikely,
is very much broken : if interrupted, we can end up with mismatched stacks
and Shadow Call Stack leading to clobbered stacks.

In `cpu_switch_to()`, it can happen when SP_EL0 points to the new task,
but x18 stills points to the old task's SCS. When the interrupt handler
tries to save the task's SCS pointer, it will save the old task
SCS pointer (x18) into the new task struct (pointed to by SP_EL0),
clobbering it.

In `call_on_irq_stack()`, it can happen when switching from the task stack
to the IRQ stack and when switching back. In both cases, we can be
interrupted when the SCS pointer points to the IRQ SCS, but SP points to
the task stack. The nested interrupt handler pushes its return addresses
on the IRQ SCS. It then detects that SP points to the task stack,
calls `call_on_irq_stack()` and clobbers the task SCS pointer with
the IRQ SCS pointer, which it will also use !

This leads to tasks returning to addresses on the wrong SCS,
or even on the IRQ SCS, triggering kernel panics via CONFIG_VMAP_STACK
or FPAC if enabled.

This is possible on a default config, but unlikely.
However, when enabling CONFIG_ARM64_PSEUDO_NMI, DAIF is unmasked and
instead the GIC is responsible for filtering what interrupts the CPU
should receive based on priority.
Given the goal of emulating NMIs, pseudo-NMIs can be received by the CPU
even in `cpu_switch_to()` and `call_on_irq_stack()`, possibly *very*
frequently depending on the system configuration and workload, leading
to unpredictable kernel panics.

Completely mask DAIF in `cpu_switch_to()` and restore it when returning.
Do the same in `call_on_irq_stack()`, but restore and mask around
the branch.
Mask DAIF even if CONFIG_SHADOW_CALL_STACK is not enabled for consistency
of behaviour between all configurations.

Introduce and use an assembly macro for saving and masking DAIF,
as the existing one saves but only masks IF.

Cc: <stable@vger.kernel.org>
Signed-off-by: Ada Couprie Diaz <ada.coupriediaz@arm.com>
Reported-by: Cristian Prundeanu <cpru@amazon.com>
Fixes: 59b37fe52f ("arm64: Stash shadow stack pointer in the task struct on interrupt")
Tested-by: Cristian Prundeanu <cpru@amazon.com>
Acked-by: Will Deacon <will@kernel.org>
Link: https://lore.kernel.org/r/20250718142814.133329-1-ada.coupriediaz@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
2025-07-22 16:39:30 +01:00
Catalin Marinas
8e7a67ca5a arm64: Kconfig: Keep selects somewhat alphabetically ordered
Recent patches selecting HAVE_RELIABLE_STACKTRACE and HAVE_LIVEPATCH
added them to the end of the ARM64 Kconfig select list. Move them around
to keep this list nearly alphabetically ordered.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2025-07-22 10:55:48 +01:00
Kevin Brodsky
1a665a71ef arm64: signal: Remove ISB when resetting POR_EL0
POR_EL0 is set to its most permissive value before setting up the
signal frame, to ensure that uaccess succeeds regardless of the
signal stack's pkey.

We are now tolerant to spurious POE faults. This means that we do
not strictly need to issue an ISB after updating POR_EL0, even when
followed by uaccess. The question is whether a fault is likely to
happen or not if the ISB is omitted; in this case the answer seems
to be no. If the regular stack is used, then it should already be
accessible. If the alternate signal stack is used, then a special
(inaccessible) pkey may be used - the assumption is that this
situation is very uncommon.

Remove the ISB to speed up the regular path - this should not have
any functional impact regardless of the scenario.

Signed-off-by: Kevin Brodsky <kevin.brodsky@arm.com>
Link: https://lore.kernel.org/r/20250619160042.2499290-3-kevin.brodsky@arm.com
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2025-07-22 10:44:57 +01:00
Kees Cook
76261fc7d1 stackleak: Split KSTACK_ERASE_CFLAGS from GCC_PLUGINS_CFLAGS
In preparation for Clang stack depth tracking for KSTACK_ERASE,
split the stackleak-specific cflags out of GCC_PLUGINS_CFLAGS into
KSTACK_ERASE_CFLAGS.

Link: https://lore.kernel.org/r/20250717232519.2984886-3-kees@kernel.org
Signed-off-by: Kees Cook <kees@kernel.org>
2025-07-21 21:40:57 -07:00
Kees Cook
57fbad15c2 stackleak: Rename STACKLEAK to KSTACK_ERASE
In preparation for adding Clang sanitizer coverage stack depth tracking
that can support stack depth callbacks:

- Add the new top-level CONFIG_KSTACK_ERASE option which will be
  implemented either with the stackleak GCC plugin, or with the Clang
  stack depth callback support.
- Rename CONFIG_GCC_PLUGIN_STACKLEAK as needed to CONFIG_KSTACK_ERASE,
  but keep it for anything specific to the GCC plugin itself.
- Rename all exposed "STACKLEAK" names and files to "KSTACK_ERASE" (named
  for what it does rather than what it protects against), but leave as
  many of the internals alone as possible to avoid even more churn.

While here, also split "prev_lowest_stack" into CONFIG_KSTACK_ERASE_METRICS,
since that's the only place it is referenced from.

Suggested-by: Ingo Molnar <mingo@kernel.org>
Link: https://lore.kernel.org/r/20250717232519.2984886-1-kees@kernel.org
Signed-off-by: Kees Cook <kees@kernel.org>
2025-07-21 21:35:01 -07:00
Marc Zyngier
d9c5c23201 KVM: arm64: Make RAS registers UNDEF when RAS isn't advertised
We currently always expose FEAT_RAS when available on the host.

As we are about to make this feature selectable from userspace,
check for it being present before emulating register accesses
as RAZ/WI, and inject an UNDEF otherwise.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20250721101955.535159-4-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-21 09:35:57 -07:00
Marc Zyngier
303084ad12 KVM: arm64: Filter out HCR_EL2 bits when running in hypervisor context
Most HCR_EL2 bits are not supposed to affect EL2 at all, but only
the guest. However, we gladly merge these bits with the host's
HCR_EL2 configuration, irrespective of entering L1 or L2.

This leads to some funky behaviour, such as L1 trying to inject
a virtual SError for L2, and getting a taste of its own medecine.
Not quite what the architecture anticipated.

In the end, the only bits that matter are those we have defined as
invariants, either because we've made them RESx (E2H, HCD...), or
that we actively refuse to merge because the mess with KVM's own
logic.

Use the sanitisation infrastructure to get the RES1 bits, and let
things rip in a safer way.

Fixes: 04ab519bb8 ("KVM: arm64: nv: Configure HCR_EL2 for FEAT_NV2")
Signed-off-by: Marc Zyngier <maz@kernel.org>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20250721101955.535159-3-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-21 09:35:57 -07:00
Marc Zyngier
c6e35dff58 KVM: arm64: Check for SYSREGS_ON_CPU before accessing the CPU state
Mark Brown reports that since we commit to making exceptions
visible without the vcpu being loaded, the external abort selftest
fails.

Upon investigation, it turns out that the code that makes registers
affected by an exception visible to the guest is completely broken
on VHE, as we don't check whether the system registers are loaded
on the CPU at this point. We managed to get away with this so far,
but that's obviously as bad as it gets,

Add the required checksm and document the absolute need to check
for the SYSREGS_ON_CPU flag before calling into any of the
__vcpu_write_sys_reg_to_cpu()__vcpu_read_sys_reg_from_cpu() helpers.

Reported-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/18535df8-e647-4643-af9a-bb780af03a70@sirena.org.uk
Link: https://lore.kernel.org/r/20250720102229.179114-1-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-21 09:34:57 -07:00
Arnd Bergmann
1e1bf8bf4e Samsung SoC defconfig changes for v6.17
1. Multiple SoCs (including Samsung, Apple): switch sound to module from
    a built-in, because it is not necessary for booting.  Also drop
    redundant sound codec options.
 
 2. Enable PMIC drivers for Google GS101 Pixel 6 phones: MAX77759 and
    Samsung PMIC over ACPM protocol.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAmhuvrYQHGtyemtAa2Vy
 bmVsLm9yZwAKCRDBN2bmhouD17SID/4oPiSCEP+4MTKtz+B6byq8M1bmCDN6pt1+
 xu2fSOgk448yjDU2vzKneXXQztmB6cuXvM+EeBGs1qXWtaSCBnWQXmkuOGfCMoAM
 9XVdw9A/vLX6y9HYDNYPToCDMsk6oNiSNtozXj7EyRn/LR+ICEI9+DbEdL0QN0/6
 yRjunuWZm/OPVxpNMTKZEi6hW+51wR8JL7LcC+LClNsHl7zzbBb0q+5vPm1ovIw3
 ZDjSZWaIsf/qBUoQ+2wnsVBS6GeTac9VOynvvihIxuyICI+NNx6JtwpCi1429fEO
 7S+KT5ITHPEjz74RiPZ8/qszzBZlaMxUVXK/9pKxn9zwOYq0+uUMxRJDlQMaTl3y
 +pJRRwHFjz6c8bYWDtEYAv3TAVwFWK9sWgxRmpCz2g6ENArz/5Y6ix8pgA/2GpEE
 E1/exJK8iMkDqHTnkGcFa4FXiS93o4YAZ+WoiTqy+3aHyuB6ro8+h1Pn1m9SkBct
 sqMqt9tANSIlyNjtn8PnQv0ERX6BS77ZIaM01CsOVzHzDgReW9aoTJVGNPQzjFKa
 oy+gsNkwEwUbRRC2bTqrvA97KjXv4hXeG1Mx3R51vpU0l1W+R/wqbQNHv7He6hX6
 9/UysIsklReQGDVthJylkmEcR4NmSe9+JNRZrqNFfPw1kaLh98QIpRhvJGZtGqn6
 b89WyMh59g==
 =hb2R
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh+XnsACgkQmmx57+YA
 GNm0cQ/6AwnZhFaecsTwIuYRKxaMIhOrHrqDvaSO+3wNik6iTIQScXck0PjqSSln
 X8QEvBRq70GmBbSt8vj/bRfP8ZJmSn2LCVyAlh6HNP5BOcChLz+v4M7g9+kEQxaW
 OVJoe1dfiA1Gzxf6dk3WAdE2tvffG0Ln2ut2KlRRJ41a/gYIHnHjlQjVaGAGQPRF
 aYIa2ExqYynHoxl3Maw1ebDjHOZLVd1DdNi76OwXpSM5dpx/6MWD3kAGb1uQStk6
 OJN3RQa16tNNgj+vzQJ/ep8YX6faWSLNfF0VgXgpYiGajc1qIhCAa+kDbozuoBgJ
 F04slwBUxJt1uiEzwn5D14id57FK4GV02EHRuEOMsYSdQ2GGNygnh3Cq6Z0bvxG8
 LvP8i+fUfJBydDpBKnOC2wxc3fea0+RWN4stojTfur3mgHmoL5p5xrRUqkNizBdo
 f8SxhNKfMu6AeNqqR9LoKoPFt/UOGjsKazQooiqo5/+bYJtAVzSqlJ3txc+WiP+V
 K41BvST24EV//sP/2EVfoD6h9rr6WKEpLOjCDNVzkphETEme9kHuU4nokir4NkB2
 RzcT6xImXfjpXu1tm8R5rGvoykVcvzhrNFG+qeLyaZX3eDLmsgcl7q99ML+rUAR/
 goKv2oLuIeyB7/gfkDunnRtNjvo5wp9kGW0YzCYvM27/FrRPd1A=
 =Jwlt
 -----END PGP SIGNATURE-----

Merge tag 'samsung-defconfig-6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into soc/defconfig

Samsung SoC defconfig changes for v6.17

1. Multiple SoCs (including Samsung, Apple): switch sound to module from
   a built-in, because it is not necessary for booting.  Also drop
   redundant sound codec options.

2. Enable PMIC drivers for Google GS101 Pixel 6 phones: MAX77759 and
   Samsung PMIC over ACPM protocol.

* tag 'samsung-defconfig-6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  arm64: defconfig: enable Samsung PMIC over ACPM
  arm64: defconfig: enable Maxim max77759 driver
  arm64: defconfig: Drop unneeded unselectable sound drivers
  arm64: defconfig: Switch SOUND to module

Link: https://lore.kernel.org/r/20250709191523.171359-4-krzysztof.kozlowski@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-21 17:36:27 +02:00
Sasha Finkelstein
76f3ffeb41 arm64: dts: apple: Add Apple SoC GPU
Add device tree entries for GPUs in M-series SoCs

Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Sven Peter <sven@kernel.org>
Signed-off-by: Sasha Finkelstein <fnkl.kernel@gmail.com>
Link: https://lore.kernel.org/r/20250710-sgx-dt-v3-2-299bb3a65109@gmail.com
Signed-off-by: Sven Peter <sven@kernel.org>
2025-07-21 15:22:10 +00:00
Nick Chan
ef68a0e108 arm64: dts: apple: t8012-j132: Include touchbar framebuffer node
Apple T2 MacBookPro15,2 (j132) has a touchbar so include the framebuffer
node.

Cc: stable@vger.kernel.org
Fixes: 4efbcb623e ("arm64: dts: apple: Add T2 devices")
Signed-off-by: Nick Chan <towinchenmi@gmail.com>
Link: https://lore.kernel.org/stable/20250620-j132-fb-v1-1-bc6937baf0b9%40gmail.com
Link: https://lore.kernel.org/r/20250620-j132-fb-v2-1-65f100182085@gmail.com
Signed-off-by: Sven Peter <sven@kernel.org>
2025-07-21 15:22:02 +00:00
Sven Peter
6aaf36bb07 arm64: dts: apple: Add bit offset to PMIC NVMEM node names
Now that the dt-binding has been extended to allow indicating the bit
position the following warning about a duplicate unit address with W=1
can be fixed:

arch/arm64/boot/dts/apple/t8103.dtsi:764.46-767.8: Warning (unique_unit_address_if_enabled): /soc/spmi@23d0d9300/pmic@f/nvmem-layout/boot-error-count@9f02: duplicate unit-address (also used in node /soc/spmi@23d0d9300/pmic@f/nvmem-layout/panic-count@9f02)

Fixes: d8bf82081c ("arm64: dts: apple: Add PMIC NVMEM")
Link: https://lore.kernel.org/r/20250610-nvmem-bit-pattern-v1-2-55ed5c1b369c@kernel.org
Signed-off-by: Sven Peter <sven@kernel.org>
2025-07-21 15:21:43 +00:00
Arnd Bergmann
c5b9bff35a
Merge branch 'newsoc/cix-p1' into soc/newsoc
Patches from Peter Chen <peter.chen@cixtech.com>:

Cixtech P1 (internal name sky1) is high performance generic Armv9 SoC.
Orion O6 is the Arm V9 Motherboard built by Radxa. You could find brief
introduction for SoC and related boards at:
https://radxa.com/products/orion/o6#overview

Currently, to run upstream kernel at Orion O6 board, you need to
use BIOS released by Radxa, and add "clk_ignore_unused=1" at bootargs.
https://docs.radxa.com/en/orion/o6/bios/install-bios

In this series, we add initial SoC and board support for Kernel building.
Since mailbox is used for SCMI clock communication, mailbox driver is added
in this series for the minimum SoC support.

Patch 1-2: add dt-binding doc for CIX and its sky1 SoC
Patch 3: add Arm64 build support
Patch 4-5: add CIX mailbox driver which needs to support SCMI clock protocol.
Patch 6: add Arm64 defconfig support
Patch 7-8: add initial dts support for SoC and Orion O6 board
Patch 9: add MAINTAINERS entry

* newsoc/cix-p1:
  MAINTAINERS: Add CIX SoC maintainer entry
  arm64: dts: cix: Add sky1 base dts initial support
  dt-bindings: clock: cix: Add CIX sky1 scmi clock id
  arm64: defconfig: Enable CIX SoC
  mailbox: add CIX mailbox driver
  dt-bindings: mailbox: add cix,sky1-mbox
  arm64: Kconfig: add ARCH_CIX for cix silicons
  dt-bindings: arm: add CIX P1 (SKY1) SoC
  dt-bindings: vendor-prefixes: Add CIX Technology Group Co., Ltd.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-21 17:16:16 +02:00
Peter Chen
80be23bb20 arm64: dts: cix: Add sky1 base dts initial support
CIX SKY1 SoC is high performance Armv9 SoC designed by Cixtech,
and Orion O6 is the motherboard launched by Radxa. See below for
detail:
https://docs.radxa.com/en/orion/o6/getting-started/introduction

In this commit, it only adds limited components for running initramfs
at Orion O6.

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Tested-by: Enric Balletbo i Serra <eballetb@redhat.com>
Tested-by: Kajetan Puchalski <kajetan.puchalski@arm.com>
Signed-off-by: Peter Chen <peter.chen@cixtech.com>
Signed-off-by: Guomin Chen <Guomin.Chen@cixtech.com>
Signed-off-by: Gary Yang <gary.yang@cixtech.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-21 17:14:55 +02:00
Peter Chen
4cd122a4f6 arm64: defconfig: Enable CIX SoC
- Enable CIX SoC support at ARM64 defconfig
- Enable CIX mailbox
At CIX SoC platforms, the clock handling uses Arm SCMI protocol,
the physical clock access is at sub processor, so it needs to enable
mailbox by default.

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Peter Chen <peter.chen@cixtech.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-21 17:14:55 +02:00
Fugang Duan
aa4bc2850e arm64: Kconfig: add ARCH_CIX for cix silicons
Add ARCH_CIX for CIX SoC series support.

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Fugang Duan <fugang.duan@cixtech.com>
Signed-off-by: Peter Chen <peter.chen@cixtech.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-21 17:14:55 +02:00
Arnd Bergmann
d436d1d5ed MediaTek ARM64 DeviceTree updates for v6.17
This adds new machines and improves support for already supported
 MediaTek SoCs.
 
 In particular:
  - New machine: MT8186 Steelix Squirtle Chromebook
  - Steelix-Voltorb's two dts are merged in one
 
 ...and improvements for already supported SoCs and machines:
  - Added reserved memory for AFE DMA for MT8173/83/86/92,
    aligning audio related memory allocation between all of
    the Chromebook SoCs
  - Added second source components for Steelix, and marked the
    multiple trackpads for Asurada as such
  - MediaTek Genio 1200: Enabled support for the Audio DSP and sound
  - MediaTek Genio 510/700/1200: Added support for the PMIC Keys
  - MediaTek MT7988: Added Cache Coherent Interconnect for CPU DVFS
  - MT7988A-BananaPi-R4: Enabled CCI, added GPIO LEDs
  - Airoha EN7581: Added ethernet nodes to Evaluation Board
 -----BEGIN PGP SIGNATURE-----
 
 iJ4EABYKAEYWIQQn3Xxr56ypAcSHzXSaNgTPrZeEeAUCaHDJ4ygcYW5nZWxvZ2lv
 YWNjaGluby5kZWxyZWdub0Bjb2xsYWJvcmEuY29tAAoJEJo2BM+tl4R4AncBAIX2
 3XCx3N6aNbmfFzBpTn+m9Bfm3jo+b03SENMgEIjPAQCblwCKBscAMAZ21HtbfBsN
 sTGtpSFgrr11zbjltZ0gAA==
 =2+oV
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh+V7IACgkQmmx57+YA
 GNlfOw/+N1uLjVqUaH9W7SlNLtelxivJuDznFxkM2mhn3a+mwXjKfr/taePuJtT9
 9Lo+wYwmRiCJDNW2BWH8kT9pgfQ13gXnmiqsJQtqdvrhoW/trtgqZjwyAE7bUzlK
 /ReblxDf3iLlqydoIutDUL8C9va6yTBqDr2J6HuYXqcliWZgxm6KPAK1vnqQZ9+j
 7kf911E1tTrYZ4cGRa7aIdtHF7OilhQxSYyrv8I0gFtBD7P+dZA8cyqf5Vtw59G6
 zt7tab22/WMZUHjJSrR1HRWVvrQ5IaYvirsm1RBcdfn3AlNzRXoPobhHo2oOCqyX
 gWtx3nKyI5cPW78PJL3LwpOcXyZduwDKI1y6yYbp53bo3kjKIEjGgbAXh8wJ9mXu
 wPYHwlAMn9xTsszjBxfNjM1xlOd9Dkwv1Fwdlsk9omDPKUZGfliSNVC4ldWPbGRz
 F2e+cXVAgQ5BpR8Vh9FaNpazMgB93xwxY5NZMniVcl99MhCbm5Q0sSw+FxkOXg03
 70tHKG501/gm7l4W3C9jUSdwsabpq7krLzYAypACgmYv/By9xXHsFJa5W+pVUDZq
 WKwjZVa8gUr0YLaMJrhEWo9DaxDe+jpYcySEgQGQSOctEhYKaj+zofkaXsUfZ//9
 ZPx8S/REHQbXyE0F9xQKXY7RJLIebtKzvK2sTuqhwS/VNKqZiO4=
 =xfLP
 -----END PGP SIGNATURE-----

Merge tag 'mtk-dts64-for-v6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/mediatek/linux into soc/dt

MediaTek ARM64 DeviceTree updates for v6.17

This adds new machines and improves support for already supported
MediaTek SoCs.

In particular:
 - New machine: MT8186 Steelix Squirtle Chromebook
 - Steelix-Voltorb's two dts are merged in one

...and improvements for already supported SoCs and machines:
 - Added reserved memory for AFE DMA for MT8173/83/86/92,
   aligning audio related memory allocation between all of
   the Chromebook SoCs
 - Added second source components for Steelix, and marked the
   multiple trackpads for Asurada as such
 - MediaTek Genio 1200: Enabled support for the Audio DSP and sound
 - MediaTek Genio 510/700/1200: Added support for the PMIC Keys
 - MediaTek MT7988: Added Cache Coherent Interconnect for CPU DVFS
 - MT7988A-BananaPi-R4: Enabled CCI, added GPIO LEDs
 - Airoha EN7581: Added ethernet nodes to Evaluation Board

* tag 'mtk-dts64-for-v6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/mediatek/linux:
  arm64: dts: mediatek: mt8395-genio-1200-evk: Add MT6359 PMIC key support
  arm64: dts: mediatek: mt8390-genio-common: Add Home MT6359 PMIC key support
  arm64: dts: mediatek: mt7988a-bpi-r4: add gpio leds
  arm64: dts: mediatek: mt7988a-bpi-r4: drop unused pins
  arm64: dts: mediatek: mt7988a-bpi-r4: add proc-supply for cci
  arm64: dts: mediatek: mt7988: add cci node
  dt-bindings: interconnect: add mt7988-cci compatible
  arm64: dts: airoha: en7581: Add ethernet nodes to EN7581 SoC evaluation board
  arm64: dts: mediatek: mt8192-asurada-spherion: Mark trackpads as fail-needs-probe
  arm64: dts: mediatek: mt8186: Add Squirtle Chromebooks
  arm64: dts: mediatek: mt8186: Merge Voltorb device trees
  arm64: dts: mediatek: mt8186-steelix: Mark second source components for probing
  dt-bindings: arm: mediatek: Add MT8186 Squirtle Chromebooks
  dt-bindings: arm: mediatek: Merge MT8186 Voltorb entries
  arm64: dts: mediatek: mt8395-genio-1200-evk: Enable Audio DSP and sound card
  arm64: dts: mediatek: mt8192-asurada: Reserve memory for audio frontend
  arm64: dts: mediatek: mt8186-corsola: Reserve memory for audio frontend
  arm64: dts: mediatek: mt8183-kukui: Reserve memory for audio frontend
  arm64: dts: mediatek: mt8173: Reserve memory for audio frontend

Link: https://lore.kernel.org/r/20250711083656.33538-3-angelogioacchino.delregno@collabora.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-21 17:07:30 +02:00
Arnd Bergmann
96a96de2cc STM32 DT for v6.17, round 1
Highlights:
 ----------
 
 - MPU:
   - STM32MP13:
     -Add Ethernet MAC adress efuse support.
 
   - STMP32MP15:
     - Add stm32mp157f-DK2 board support. This board embedds the same
       conectivity devices, DDR ... than stm32mp157c-dk2.
       However there are two differences: STM32MP157F SoC which allows
       overdrive OPP and the SCMI support for system features like
       clocks and regulators.
 
   - STM32MP25:
     - Fix tick timer for low power use cases.
     - Add timer support.
 -----BEGIN PGP SIGNATURE-----
 
 iQJRBAABCgA7FiEEctl9+nxzUSUqdELdf5rJavIecIUFAmhv3EodHGFsZXhhbmRy
 ZS50b3JndWVAZm9zcy5zdC5jb20ACgkQf5rJavIecIX9Cw//XWLtoi801lmFZd2Q
 mC+nWCAha2c0QJzkaHspvRkHxeuQ4E0NS5APd8tMdKas1gW8fUk+LZp5TmQs8bMp
 cgJLuP4E01DvcZ3hd3P3Ep+tYI7CqNoLnYqvbmQNGiCOXfZY7i+tIi/NfyZIvyXv
 KmEaFTPjp2J7JQ5L3YL74TseqxFROzrqqaFEYAHFYVwheVmA23CyyNwLRfyiInA5
 K8hIgNJVWhuCjCzYIBpDdcsyZ/olMGRLpYdEs7tCKoj2WeDauyfergI+3Juopc5Z
 G85rYu+30BXlvNJQuvFvk/gb9rwqPGGVY4W+ienLSKCqnAD4QupdPUZwkoyFcSqS
 /bx41/a9H5fxOt3SWzPD1vlb7Hj+ZVhu01pwbcBQXb3hJGtkbArVsNuwjhqykB+S
 2+MXAxHpwUdYSBRUJtKcIeqssJYU0ODEF+8ELUJnnIdM0uvo2U31mb9xlIa66wb3
 WDnH22ic1JoKIf+wFiJ4cuRp2f7pVyLS6+3Il+prHTvFj79bLOv5L97ptoZUD0KR
 24qgNknBlcf7kLBiSJHxfbyz2QejPuvWjIJvXTl8fixKWV3ZgcpGZWRrPjQ+wmQ1
 b7N7Z1Z5UH8+48S9151yhPax2/69JU6ARnT4YnC5qdQxmp5GdBblURZjwbHcghvK
 BwIizx2zERnTEPTwZ2HDyVqtUXE=
 =rp+j
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh+VwYACgkQmmx57+YA
 GNlSehAAtQv10iNUatadP4W6SmfhfE//JJklJ3I+7zZo061mSNyUKdu4lnCcXIQz
 oxavuxttwF90PxvtMn5x6tWHsAvb3CG5+5IMxJ5/ud+QkQH8XC6W6+PpmGe37JQb
 tn94igNVVov6IA6SUDMRg4Sy/rTXIr9HN+YKV1zpE7zjxMHwbCl9isHepCY391i9
 5E/1mM/8NnkNjHqc08KBjGYbmDqwWEgN+R2YDRb2wPBAxsD1gCSZkr8YWR6deO2D
 Mdj8kO4Kkd5z/seCtCFf9imm7L7p6IaKoG4CnERcWCmOM25tppmwPjfaKtVUkTJG
 c6nZJAUWXSUEfRTdSO22Z1CQFkKowOS0f6NbIhlwwtnaCLp0FEsP7sHJFBcXQ8mc
 BRLjoM7qfuBjOinv3A9EqwdD/WJ8hQ/0jc+Dha8N8KJI5KU6NqJ8SA5xMiyfbhBi
 KlQXZpnktDMZaohvlNN5c4q3QL0Jfj+eFJS0pL5rqtMmrDxHURgQQvDk8DCORfMM
 DvxHBUQtU7qU42hxYCt9+wGnvxAwm5nSdp2BG08q9bvpKDBeqtVBn3+Prr3FX0Mt
 KDkYBtnAT9UP11AQ7etqJCTj/eoTz7q++nfT/onlktVcbx1mvD2XIMSR6cauTfqk
 9SwR9EbqfQ9BaEZFWWzzkvpBDhgTRADvLEO3fg3Kqhm/HaGOJsE=
 =fq/y
 -----END PGP SIGNATURE-----

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

STM32 DT for v6.17, round 1

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

- MPU:
  - STM32MP13:
    -Add Ethernet MAC adress efuse support.

  - STMP32MP15:
    - Add stm32mp157f-DK2 board support. This board embedds the same
      conectivity devices, DDR ... than stm32mp157c-dk2.
      However there are two differences: STM32MP157F SoC which allows
      overdrive OPP and the SCMI support for system features like
      clocks and regulators.

  - STM32MP25:
    - Fix tick timer for low power use cases.
    - Add timer support.

* tag 'stm32-dt-for-v6.17-1' of https://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32:
  arm64: dts: st: remove empty line in stm32mp251.dtsi
  arm64: dts: st: fix timer used for ticks
  arm64: defconfig: Enable STM32 Octo Memory Manager and OcstoSPI driver
  ARM: dts: stm32: add stm32mp157f-dk2 board support
  dt-bindings: arm: stm32: add STM32MP157F-DK2 board compatible
  ARM: dts: stm32: optee async notif interrupt for MP15 scmi variants
  ARM: dts: stm32: use internal regulators bindings for MP15 scmi variants
  dt-bindings: regulator: Add STM32MP15 SCMI regulator identifiers
  ARM: dts: stm32: use 'typec' generic name for stusb1600 on stm32mp15xx-dkx
  ARM: dts: stm32: fullfill diversity with OPP for STM32M15xF SOCs
  ARM: dts: stm32: add system-clock-direction-out on stm32mp15xx-dkx
  arm64: defconfig: enable STM32 timers drivers
  arm64: dts: st: add timer nodes on stm32mp257f-ev1
  arm64: dts: st: add timer pins for stm32mp257f-ev1
  arm64: dts: st: add timer nodes on stm32mp251
  ARM: dts: stm32: Add nvmem-cells to ethernet nodes for constant mac-addresses

Link: https://lore.kernel.org/r/b3e3363b-1ea5-457c-b244-2cbe26f7d6e4@foss.st.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-21 17:04:38 +02:00
Arnd Bergmann
4340c8d32a New boards: ROC-RK3588S-PC, Luckfox Omni3576, Radxa Rock 5T,
Sakura Pi RK3308B - all of them have the used soc in their name.
 
 New overlays: RockPro64 screen, optional Sige5 Wifi/BT module,
 ethernet-switch addon for Jaguar.
 
 Added peripherals on rk3528 (spi, power-domain controller, gpu)
 and sdio controller on rk3576.
 
 DSI display support for the Gameforce-ACE handheld, a fix for the
 cover-detection (closed/open) on the PineNote, camera support for
 the Haikou Video Demo overlay on PX30 Ringneck as well as a number
 of other newly enabled peripherals on a number of boards.
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAmhvlYoQHGhlaWtvQHNu
 dGVjaC5kZQAKCRDzpnnJnNEdgYQVCACJ/OziWNpSWMLP5L7mBqyiN16oiLUqhyde
 /wYlS2e9u4jHs6KtRMNMvzBpGNXaQY5ybSo9LCBzn5YHD6dmatpBB4yx0C29Knwm
 o1QS0E4A5iWYH2uxAEwVGjhZkAnLIDkSR9yCDNNgUVnyLKbsyDVemIfj1QDwAQHk
 WaPXkoaThsyVldU0404TA6JOLhOjVU8ON0BaYcKH9vYv/UNrFN4DxkXh+1jsFhdw
 1ry27DC0vi+cJPNYoRqFTXKeN6tWhvrjnrX1Gi6Jk8sKEwDcpsBjKREXr9e6A1WN
 2fuef1zpa3rdOW8uH6/dltjWh7BbnnJ7JNQo1g/Db5M7GqKuS9wq
 =JiLV
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh+VrMACgkQmmx57+YA
 GNkMHg//T758/giBtfTytRD5wdieMUAoDPPMvfaSV1VoUtbAaf7p0kG585UCK84m
 3FWoCHzLXAHIYY7IBkBo0cEWY4L+65xCU047K6B1f/CC5/izjixNRsnsN58TqUxS
 GLWKvUrlNG4OzsvWU5EhrKeJxyhoSj8zu1K/JLLDMnKgbKuDXLoJuFjwcWthjZOz
 c4et0S2e7HCZitTgNjClkqLyA5mdk8NjgXy70weXrJCb1wmru9WFdOQK4FxP5ycg
 pTBe98RFStKgc6K3BY+Se5haFnonbdUPMcRK4mFuyR3eX67xwT6OvXkffJSiljbU
 YpiyOo4UPcMOAh8VngE6gARCH+rLts0RhCTXOVnSm0GPLOJFnKfGW7lOesvzWSLB
 U8GYeEnD8Q9kOQ8CCZO5r0Z5yefNuXBzsvpUtwk4gh3n07r0I83UsSIQrZRVZZdf
 YV/Vs4cWGEt8JLXiOOYYoxXY+Z4OCjv700gIE7NChKK7MfukYpedxDxU6ItRmQ4K
 hWxX+oKUiCryepAXEEYo0tx4kfH6Vt7b64iArSrXlRPYFp7i2xDkRRvtUl5rNFs+
 q4DRdcHYdPs0WMGcMkT46MSrwrECv4osPDawHvHcZnrym90w1KnuQyyvNSk7M9Ww
 r0R3CohU693ALWDLT2vyYZNOXdSdOjma6hLAcUTso95lZA6RFRk=
 =93Fr
 -----END PGP SIGNATURE-----

Merge tag 'v6.17-rockchip-dts64-1' of https://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into soc/dt

New boards: ROC-RK3588S-PC, Luckfox Omni3576, Radxa Rock 5T,
Sakura Pi RK3308B - all of them have the used soc in their name.

New overlays: RockPro64 screen, optional Sige5 Wifi/BT module,
ethernet-switch addon for Jaguar.

Added peripherals on rk3528 (spi, power-domain controller, gpu)
and sdio controller on rk3576.

DSI display support for the Gameforce-ACE handheld, a fix for the
cover-detection (closed/open) on the PineNote, camera support for
the Haikou Video Demo overlay on PX30 Ringneck as well as a number
of other newly enabled peripherals on a number of boards.

* tag 'v6.17-rockchip-dts64-1' of https://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip: (40 commits)
  arm64: dts: rockchip: Enable eMMC HS200 mode on Radxa E20C
  arm64: dts: rockchip: Add bluetooth support to ArmSoM Sige7
  arm64: dts: rockchip: enable PCIe on ROCK 4D
  arm64: dts: rockchip: Enable HDMI receiver on CM3588
  arm64: dts: rockchip: Add HDMI PHY PLL clock source to VOP2 on rk3576
  arm64: dts: rockchip: Enable HDMI PHY clk provider on rk3576
  arm64: dts: rockchip: add DTs for Firefly ROC-RK3588S-PC
  dt-bindings: arm: rockchip: Add Firefly ROC-RK3588S-PC
  arm64: dts: rockchip: Enable GPU on Radxa E20C
  arm64: dts: rockchip: Add GPU node for RK3528
  arm64: dts: rockchip: support camera module on Haikou Video Demo on PX30 Ringneck
  arm64: dts: rockchip: add label to first port of ISP on px30
  arm64: dts: rockchip: fix endpoint dtc warning for PX30 ISP
  arm64: dts: rockchip: Add power controller for RK3528
  arm64: dts: rockchip: enable USB on Sige5
  arm64: dts: rockchip: add overlay for the WiFi/BT module on Sige5 v1.2
  arm64: dts: rockchip: add version-independent WiFi/BT nodes on Sige5
  arm64: dts: rockchip: add SDIO controller on RK3576
  arm64: dts: rockchip: Enable gpu on rk3576-evb1-v10
  arm64: dts: rockchip: Update the PinePhone Pro panel description
  ...

Link: https://lore.kernel.org/r/15465458.uLZWGnKmhe@phil
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-21 17:03:15 +02:00
Rob Herring (Arm)
8e7e63fc47
arm64: dts: nuvoton: npcm8xx: Drop the GIC "ppi-partitions" node
The Arm GIC "ppi-partitions" node is only relevant to GICv3 and makes no
sense for GICv2 implementations which the GIC-400 is. PPIs in GICv2 have
no CPU affinity.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
Link: https://patch.msgid.link/20250609203721.2852879-1-robh@kernel.org
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
Link: https://lore.kernel.org/r/20250710-nuvoton-arm64-dt-v1-1-ec7db96ea507@codeconstruct.com.au
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-21 17:02:57 +02:00
Arnd Bergmann
31e91dfc7f Renesas DTS updates for v6.17 (take two)
- Add support for the Renesas Gray Hawk Single board with R-Car
     V4M-7 (R8A779H2),
   - Add eMMC and microSD expansion board support for the RZ/V2H and
     RZ/V2N EVK development boards,
   - Add GPIO keys and Ethernet support for the RZ/G3E SoM and SMARC
     Carrier-II EVK development board,
   - Add QSPI FLASH support for the RZ/V2H and RZ/V2N SoCs and their EVK
     development boards,
   - Miscellaneous fixes and improvements.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCaG7EigAKCRCKwlD9ZEnx
 cBnjAP9cDAfZu95YckrxmwO69tX6WsmhYNSjj5/F8R8k5RQJ4wD/eqUamW64PQJ1
 re7046dS4tgywcWV5oaxssirwOUfbgA=
 =5XW/
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh+VhEACgkQmmx57+YA
 GNn+UhAAwqYLWkIW/MAtBcyJXg7MkXf2AMNEv7C67gQnqT34DmfQ3Fm9e0FdErf2
 C/BwA06yh2TuXEppC38IVAB9uDAPZ1zYgTvkZWrBjzztpsvVhy1Dc3gejAIwFyWt
 C/jDkIHt/IsI9u88LcMl7BpWjllN2AdWGRmQSp2pGn8N7IsDZUjcGUwS7ZI6dWWs
 Yf0FjDrDySsQbyC8ZxN2hFtsMLD3wPKOvnWzxDRISVZSy7l6N7iHrPEalLLBk1lL
 SpP5ngXphFarWvbaBEXl5D+EmfZ40Hj1mtkJoOtuZBsmFrpYpZKifbvnYlVSRci4
 AOrsa3vsDkZGv7SF0hrJLpXfnw+SpnkQgyz3qgW8wwk/eqhAaHkYEJR+soZMtdPC
 oYe0jLJLKylbYMSfOUUQqB7QttWpM20LWtPrqbsdw+CdHYA071hLmtHQCKJx5J77
 lxQ4+CDqi89/NyQzD7UFmF2TNzinajpYmQoiXYKGl3ZExW6PXfhQIlWDU5biYLpZ
 hMjKSewoepkjM+WHh5djU43R4IcHevNv24vr+TzS8PT8CszsOBj50GbZxEQuZpYC
 LsveWVUyijGApBSu5bj7Dkc9D1g2yUPdV+bo0wIIzPh3bDZK6ZcEafIcuBqBQEF8
 xEfCnXa2vh/eubd2D4PeIIF3LwKuVvsdEhfvMQoQpkCw6MW9ApE=
 =ZLEx
 -----END PGP SIGNATURE-----

Merge tag 'renesas-dts-for-v6.17-tag2' of https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into soc/dt

Renesas DTS updates for v6.17 (take two)

  - Add support for the Renesas Gray Hawk Single board with R-Car
    V4M-7 (R8A779H2),
  - Add eMMC and microSD expansion board support for the RZ/V2H and
    RZ/V2N EVK development boards,
  - Add GPIO keys and Ethernet support for the RZ/G3E SoM and SMARC
    Carrier-II EVK development board,
  - Add QSPI FLASH support for the RZ/V2H and RZ/V2N SoCs and their EVK
    development boards,
  - Miscellaneous fixes and improvements.

* tag 'renesas-dts-for-v6.17-tag2' of https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  arm64: dts: renesas: r9a09g057h44-rzv2h-evk: Enable serial NOR FLASH
  arm64: dts: renesas: r9a09g056n48-rzv2n-evk: Enable serial NOR FLASH
  arm64: dts: renesas: r9a09g057: Add XSPI node
  arm64: dts: renesas: r9a09g056: Add XSPI node
  arm64: dts: renesas: r9a09g056n48-rzv2n-evk: Fix pinctrl node name for GBETH1
  arm64: dts: renesas: r9a09g057h44-rzv2h-evk: Fix pinctrl node name for GBETH1
  arm64: dts: renesas: r8a779g3-sparrow-hawk-fan-pwm: Add missing install target
  arm64: dts: renesas: rzg3e-smarc-som: Enable eth{0-1} (GBETH) interfaces
  arm64: dts: renesas: r9a09g047e57-smarc: Add gpio keys
  arm64: dts: renesas: Add CN15 eMMC and SD overlays for RZ/V2H and RZ/V2N EVKs
  arm64: dts: renesas: r8a779h2: Add Gray Hawk Single support
  arm64: dts: renesas: Add Renesas R8A779H2 SoC support
  arm64: dts: renesas: Factor out Gray Hawk Single board support
  dt-bindings: clock: renesas,r9a09g056/57-cpg: Add XSPI core clock

Link: https://lore.kernel.org/r/cover.1752090401.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-21 17:00:33 +02:00
Arnd Bergmann
e65761ff6b Samsung DTS ARM64 changes for v6.17
1. New SoC - Exynos2200 SoC - with basic nodes, pin controllers,
    clock controllers and initial USB support.  Add board using it:
    Samsung Galaxy S22+ (SM-S906B), called G0S.
 
 2. ExynosAutov920: Add CMU_HSI2 clock controller, remaining SPI nodes
 
 3. Google GS101:
    - Prepare to switching to architected timer, instead of Exynos MCT as
      the primary one.
    - Add secondary Maxim MAX77759 PMIC to Pixel boards, managing USB Type-C and
      charger.
    - Add incomplete description of the primary Samsung S2MPG10 PMIC.
      Several bits, like regulators, are still missing, though.
    - Add also secondary reboot-mode, via MAX77759 NVMEM.
    - Switch the primary (SoC) reboot handler to Google specific
      google,gs101-reboot which gives additional GS101 features (cold and
      warm reboots).
      This change will affect other users of this DTS, but to our
      knowledge there is only Android, from which this change originates.
 
 4. Exynos7870:
    - Fix speed problems in USB gadget mode.
    - Correct memory map to avoid crashes due to secure world.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAmhuvdgQHGtyemtAa2Vy
 bmVsLm9yZwAKCRDBN2bmhouD148lD/4yz90jRLtUBEIA3ZStxsPlN3G/CPGfj9Kq
 LIcILKZTrQrPNioAvKHHxRIi7bgi3peKXgxsFCDRrPYfnBFhXLLwzuPGp/OXS5O2
 5UbZ2bRlUkgwGTvxhsVB3tmusOpX38yQOwiLILopbFRBddW4tl/qrlZE6WBECIPC
 Qc7iKRWGinBcSFwuvgPXrGizR5ELqsCN8xltRjKdp2mqeTFsjp7KAl/R6EmBsc2x
 1mftMrZ+bob80INriZbUgvdsgjSVqslTy1FnIpa422uIAxOwXyTkkiYr2Sfv/Lr1
 Y2iDeJWG1Kuq8jLxW6LHVacnBp4Vic6aVmf9OMIoU3i2IVjg/u6ueK1JnUtty4cp
 wVc6UFsvRAbmt1CZII3W6GYnOPuBU4DrBrLJAqgsow45fP16eDl+svpmmT1D4Dfc
 9xHvZeDyKk2GlTrWPhKfDlamVQ37zQ13YOLAkzx2skHpx0h8tPeLAGjQwCp4SalC
 TtyVphy3myvnGlc2fn1QjJNfXUdr6+ouu3152lA9xmsSFiq1A7Z4OHpFUicMfmkw
 BfC5OWGft0pBgUuxOGuQdz7WN2tnp4sgYXHkEcJsNt5JNDtO36N7JVgLezsX6y4u
 AdUNNO7pkOQzgB3ZZvgAIoY8ItIK5dz0AoS5jToWV4qpBkayOYTXZtpvE3XkXS0m
 aBnPVAErww==
 =b2be
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh+VdoACgkQmmx57+YA
 GNnd3w//eBEpRVzKvgJj0+eYEEIUgH7kY1Q8B4TSEtCmAozAxoBmRzDuCF/XFerX
 +7bDMZ7bSSSCRvZv3jsMfUov8cIOR0mKbSb8N+C8SvhIQgAC4/R/q57kI3RSg/Kl
 oRsLLBV3L2c2ZNFMQdxxzPRQ5Gl8g0Y0LQMSBX9MLepbDPntK8eqVFkghZ4bKURO
 jY0+j9gPoXXQnpN7+CJFV4qaVbkfZ9AWR275M6r4Hm9KenRpzNTZCBqX0SVheBHc
 MlW8IyaYtqkaOO1Io8laVXrmT6x9iUdfwILRCuPEWcmC4lHZsXbfZTCXfMBI+a35
 3dRIi46N/rucd3Ei4FcQ6TP3qZW6yq15E7In1fnmoTYBSf5I43JG68rBGkqovoiy
 uIYDLqVgSazplTpp0kO2/y9utI0nNHORnH2E8AcqLzgQ/nJcRgBZkEEDzaT+X3P0
 EQ+0Vc8h9h9RU8xRRlKITM3US1/iWED6HPVrtKo8fSBGn4Wfd3iOSE9zUIKLKNse
 YtQmLCO+o3HVfKcNkeWysst4bJEQlQlUkxM7/sCKHnXE+6e8rD5Cs+bVANkHkR9J
 RkBM6Fl8sEKwKM/aRQnIxzr5FqaoloNDjPEEO+OCZhQ3+1EVT53b2qsQf9EzPKdg
 ffkDCQBvmGFpVPAIf+NFrcaT5hBLpXj2rL0Tb06UUl/Ub8XPcwY=
 =yEQ9
 -----END PGP SIGNATURE-----

Merge tag 'samsung-dt64-6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into soc/dt

Samsung DTS ARM64 changes for v6.17

1. New SoC - Exynos2200 SoC - with basic nodes, pin controllers,
   clock controllers and initial USB support.  Add board using it:
   Samsung Galaxy S22+ (SM-S906B), called G0S.

2. ExynosAutov920: Add CMU_HSI2 clock controller, remaining SPI nodes

3. Google GS101:
   - Prepare to switching to architected timer, instead of Exynos MCT as
     the primary one.
   - Add secondary Maxim MAX77759 PMIC to Pixel boards, managing USB Type-C and
     charger.
   - Add incomplete description of the primary Samsung S2MPG10 PMIC.
     Several bits, like regulators, are still missing, though.
   - Add also secondary reboot-mode, via MAX77759 NVMEM.
   - Switch the primary (SoC) reboot handler to Google specific
     google,gs101-reboot which gives additional GS101 features (cold and
     warm reboots).
     This change will affect other users of this DTS, but to our
     knowledge there is only Android, from which this change originates.

4. Exynos7870:
   - Fix speed problems in USB gadget mode.
   - Correct memory map to avoid crashes due to secure world.

* tag 'samsung-dt64-6.17' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  arm64: dts: exynos7870-j6lte: reduce memory ranges to base amount
  arm64: dts: exynos7870-on7xelte: reduce memory ranges to base amount
  arm64: dts: exynos7870: add quirk to disable USB2 LPM in gadget mode
  arm64: dts: exynos: gs101: switch to gs101 specific reboot
  arm64: dts: exynos: gs101-pixel-common: add main PMIC node
  arm64: dts: exynos: gs101: ufs: add dma-coherent property
  arm64: dts: exynos: gs101: add dm-verity-device-corrupted syscon-reboot-mode
  arm64: dts: exynos: gs101-pixel-common: add nvmem-reboot-mode
  arm64: dts: exynos: gs101-pixel-common: add Maxim MAX77759 PMIC
  arm64: dts: exynos5433: Align i2c-gpio node names with dtschema
  arm64: dts: exynos: gs101: Add 'local-timer-stop' to cpuidle nodes
  arm64: dts: exynosautov920: Add DT node for all SPI ports
  arm64: dts: exynosautov920: add CMU_HSI2 clock DT nodes
  MAINTAINERS: add entry for Samsung Exynos2200 SoC
  arm64: dts: exynos: add initial support for Samsung Galaxy S22+
  arm64: dts: exynos: add initial support for exynos2200 SoC
  dt-bindings: arm: samsung: document g0s board binding

Link: https://lore.kernel.org/r/20250709191523.171359-6-krzysztof.kozlowski@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-21 16:59:37 +02:00
Greg Kroah-Hartman
a83c371c4b Linux 6.16-rc7
-----BEGIN PGP SIGNATURE-----
 
 iQFSBAABCgA8FiEEq68RxlopcLEwq+PEeb4+QwBBGIYFAmh9azkeHHRvcnZhbGRz
 QGxpbnV4LWZvdW5kYXRpb24ub3JnAAoJEHm+PkMAQRiG7GIH/0lpQtHRl6N+q2Qs
 v75iG2ZouWyw2JlhUOHAToKU58MZqqTXLZzc8ZdY6fAd7DpXWKRGSDsyWVyLbUkt
 UKGzXEIJsHXYvw2QIPbhkY9gQBWpdZTh4tHztFyKb0QLn81qkibVP6ChOwSzOGa/
 xUyQ5v6yH+JvQlnQaCgy6hi7cMrLNSNZmuIjy0yc5Y153YPEtX5OUPO2PstpUx5r
 AuiOhU4ewW9QCe07X/Pk7tdn0T2Jg8Kwk1FViaM0RBUf/0GXGfsovIxpUP/eCyMc
 MA+9SXXLlDa/4Z8w3EsQYx6m2MnNmm0HPeevCmWqq3+Ocooik4si1BpzHfUaE6n/
 /0D8zBg=
 =NzEi
 -----END PGP SIGNATURE-----

Merge tag 'v6.16-rc7' into usb-next

We need the USB/Thunderbolt fixes in here for other patches to be on top
of.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-07-21 10:55:57 +02:00
Jiri Bohac
35c18f2933 Add a new optional ",cma" suffix to the crashkernel= command line option
Patch series "kdump: crashkernel reservation from CMA", v5.

This series implements a way to reserve additional crash kernel memory
using CMA.

Currently, all the memory for the crash kernel is not usable by the 1st
(production) kernel.  It is also unmapped so that it can't be corrupted by
the fault that will eventually trigger the crash.  This makes sense for
the memory actually used by the kexec-loaded crash kernel image and initrd
and the data prepared during the load (vmcoreinfo, ...).  However, the
reserved space needs to be much larger than that to provide enough
run-time memory for the crash kernel and the kdump userspace.  Estimating
the amount of memory to reserve is difficult.  Being too careful makes
kdump likely to end in OOM, being too generous takes even more memory from
the production system.  Also, the reservation only allows reserving a
single contiguous block (or two with the "low" suffix).  I've seen systems
where this fails because the physical memory is fragmented.

By reserving additional crashkernel memory from CMA, the main crashkernel
reservation can be just large enough to fit the kernel and initrd image,
minimizing the memory taken away from the production system.  Most of the
run-time memory for the crash kernel will be memory previously available
to userspace in the production system.  As this memory is no longer
wasted, the reservation can be done with a generous margin, making kdump
more reliable.  Kernel memory that we need to preserve for dumping is
normally not allocated from CMA, unless it is explicitly allocated as
movable.  Currently this is only the case for memory ballooning and zswap.
Such movable memory will be missing from the vmcore.  User data is
typically not dumped by makedumpfile.  When dumping of user data is
intended this new CMA reservation cannot be used.

There are five patches in this series:

The first adds a new ",cma" suffix to the recenly introduced generic
crashkernel parsing code.  parse_crashkernel() takes one more argument to
store the cma reservation size.

The second patch implements reserve_crashkernel_cma() which performs the
reservation.  If the requested size is not available in a single range,
multiple smaller ranges will be reserved.

The third patch updates Documentation/, explicitly mentioning the
potential DMA corruption of the CMA-reserved memory.

The fourth patch adds a short delay before booting the kdump kernel,
allowing pending DMA transfers to finish.

The fifth patch enables the functionality for x86 as a proof of
concept. There are just three things every arch needs to do:
- call reserve_crashkernel_cma()
- include the CMA-reserved ranges in the physical memory map
- exclude the CMA-reserved ranges from the memory available
  through /proc/vmcore by excluding them from the vmcoreinfo
  PT_LOAD ranges.

Adding other architectures is easy and I can do that as soon as this
series is merged.

With this series applied, specifying
	crashkernel=100M craskhernel=1G,cma
on the command line will make a standard crashkernel reservation
of 100M, where kexec will load the kernel and initrd.

An additional 1G will be reserved from CMA, still usable by the production
system.  The crash kernel will have 1.1G memory available.  The 100M can
be reliably predicted based on the size of the kernel and initrd.

The new cma suffix is completely optional. When no
crashkernel=size,cma is specified, everything works as before.


This patch (of 5):

Add a new cma_size parameter to parse_crashkernel().  When not NULL, call
__parse_crashkernel to parse the CMA reservation size from
"crashkernel=size,cma" and store it in cma_size.

Set cma_size to NULL in all calls to parse_crashkernel().

Link: https://lkml.kernel.org/r/aEqnxxfLZMllMC8I@dwarf.suse.cz
Link: https://lkml.kernel.org/r/aEqoQckgoTQNULnh@dwarf.suse.cz
Signed-off-by: Jiri Bohac <jbohac@suse.cz>
Cc: Baoquan He <bhe@redhat.com>
Cc: Dave Young <dyoung@redhat.com>
Cc: Donald Dutile <ddutile@redhat.com>
Cc: Michal Hocko <mhocko@suse.cz>
Cc: Philipp Rudo <prudo@redhat.com>
Cc: Pingfan Liu <piliu@redhat.com>
Cc: Tao Liu <ltao@redhat.com>
Cc: Vivek Goyal <vgoyal@redhat.com>
Cc: David Hildenbrand <david@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2025-07-19 19:08:22 -07:00
Linus Torvalds
c7de79e662 ARM:
* Fix use of u64_replace_bits() in adjusting the guest's view of
   MDCR_EL2.HPMN
 
 RISC-V:
 
 * Fix an issue related to timer cleanup when exiting to user-space
 
 * Fix a race-condition in updating interrupts enabled for the guest
   when IMSIC is hardware-virtualized
 
 x86:
 
 * Reject KVM_SET_TSC_KHZ for guests with a protected TSC (currently only TDX).
 
 * Ensure struct kvm_tdx_capabilities fields that are not explicitly set by KVM
   are zeroed.
 
 Documentation:
 
 * Explain how KVM contributions should be made testable
 
 * Fix a formatting goof in the TDX documentation.
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCgAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmh5ExMUHHBib256aW5p
 QHJlZGhhdC5jb20ACgkQv/vSX3jHroM4jwf/eI6WDivu3vqsi0a3RFIEY6fvMuFn
 MyM0ORuxagpTYvDGU8pn7vEwCRn62Dhk+GiB4wyKBy52MbkEpG5aOP39sbrhjrg1
 qUOL1yadR+kDM20Obgeo6bk9RZVA26JM/hweZ59c7dYECbllZD76uo6yLoZZhRAJ
 xkBfsl/x7toJe8v7qYoX9bW6/5VSHcMy3gLTchP7mWi+YQ3uB2aIrjEQ/g5Xd549
 yJ1jAqt0af21akQm5VowddxCcOSJb50l8lCTA47EhR6OZ4qN2stFZU1nFhJIHP7o
 ifjiZc+fpT0nVINdXUGr2XO2Wqx+QCH/0Z91lAMNN9N0jIJJyInmv+/CLA==
 =+4Ug
 -----END PGP SIGNATURE-----

Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm

Pull kvm fixes from Paolo Bonzini:
 "ARM:

   - Fix use of u64_replace_bits() in adjusting the guest's view of
     MDCR_EL2.HPMN

  RISC-V:

   - Fix an issue related to timer cleanup when exiting to user-space

   - Fix a race-condition in updating interrupts enabled for the guest
     when IMSIC is hardware-virtualized

  x86:

   - Reject KVM_SET_TSC_KHZ for guests with a protected TSC (currently
     only TDX)

   - Ensure struct kvm_tdx_capabilities fields that are not explicitly
     set by KVM are zeroed

  Documentation:

   - Explain how KVM contributions should be made testable

   - Fix a formatting goof in the TDX documentation"

* tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
  KVM: TDX: Don't report base TDVMCALLs
  KVM: VMX: Ensure unused kvm_tdx_capabilities fields are zeroed out
  KVM: Documentation: document how KVM is tested
  KVM: Documentation: minimal updates to review-checklist.rst
  KVM: x86: Reject KVM_SET_TSC_KHZ vCPU ioctl for TSC protected guest
  RISC-V: KVM: Move HGEI[E|P] CSR access to IMSIC virtualization
  RISC-V: KVM: Disable vstimecmp before exiting to user-space
  Documentation: KVM: Fix unexpected unindent warning
  KVM: arm64: Fix enforcement of upper bound on MDCR_EL2.HPMN
2025-07-18 12:38:34 -07:00
Alexei Starovoitov
beb1097ec8 Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf after rc6
Cross-merge BPF and other fixes after downstream PR.

No conflicts.

Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2025-07-18 12:15:59 -07:00
Arnd Bergmann
816309d500 Allwinner fixes for 6.16
Only one fix:
 
 Correct the name of the A523's EMAC0 to GMAC0, as seen in the SoC's
 datasheets. The matching DT binding change is in the net tree.
 -----BEGIN PGP SIGNATURE-----
 
 iQJCBAABCgAsFiEE2nN1m/hhnkhOWjtHOJpUIZwPJDAFAmh2iT4OHHdlbnNAY3Np
 ZS5vcmcACgkQOJpUIZwPJDCMJBAAuauzK0XFSSwuzxlkd2b4fb9iY8V8U+h4T6E0
 T83snFr3IDZxRU3z9+6EKhIAyh/yHpu8wv27jMNyb6UAbafzhqYaCENXdIrI7lDX
 CzgDCJJWPTJ9L/Iq5EY+BXSBNaHQz1PLrryjdLJeNSzxXWP4k62oPCE09HioYIvK
 hMEUIyH9jdTK6h4jfp0J0YHYfDZPr4ix33Ua33ToPnTYeaMeowaWDZ2I/IXyhmG7
 q+XRzdNrpcMuKQH5hpSTDYI1TjonWa1jovpYH9uktuzb7CHHz2C9f3wxz9X2xpui
 nxa44UoqKF0XfP3Luur9cfXHS6zq5HqKRaXkCP9EiXoIpocjo5rCHqvIabyC+6QU
 ACRrbp/9rCJ/XZm5MRvXD3+JlcF+SFJ3vYhZgk1iLXFFEPGgfUezf0s6hAUv5xGc
 OnxmF2ztxxXVAKCkRFG7JVbyHzQmKojX9lZUVWQP1dRZCfaQ1dqAN6oCO1NuVvLc
 mPVgftt3N2XDaM/XCp054RFBu0Dmjm6oIUNJy2Jc59ED5FF+Erit+xTqYfv9iZGu
 PfyBk43lPhFr+6twsYsaivoh45px7aCRAuKnwY4AizIjr01ZeVjc1snauiUS7pzo
 jtdIESYuaRnmTE1tiY0keAB5y4OH/jxB61jJ4IwIUIEGzySrmG8HchizVnd0UYoA
 eJsh/Jw=
 =j8oj
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh56IgACgkQmmx57+YA
 GNkLmBAAhe2cre+Xw4DJu7jTKIcHJM5T7Ug93Jfa8rJ17vg6ksk+/PDwTATS5EmS
 trcw4H0ch23ZI/KQ0Lkf2fVAUwZkhbk16xlHLPzhfx8I6hn5VmhQc0JV1lsGgxu6
 SJSMwMsmDJH2BKkQUQHkx3vYtv4MF9FduNWLj2UgJUFaZH6QbeTmnTr+ksVfZJ7M
 F0sLlHBGYJybHk4yJsV6zdvuLIy1lZ5EU7NAD6ZDCl9uzp79LgzLKEEoc2ip9B0g
 NxvBDyc71MqqqSnEoCVPBQi3N6HFXVWSwGnzyhkmKmG57oiKyudagMHga4rIN3Iw
 DBkXYBp1LduiA6v64lKtXjCcXmidFi/hQDlll9eyOzwRjUBdHrNZe0Lt3sdrHKdb
 l12SCgEmHG0BNDP1YOOQSnrA1DyLcoK0Y45YkzDHjUkSpZY1uxeC6RBUiKMCCrxS
 shSZLSfQlK0IcZ130eIHENkwqm75T/Kje0vnJN0PdqechYgQFLn9z4nT0P/oYUhk
 +TrLUjukL4H9CGR3sFpeQmpobIQcBU50G7xG9K9kgLk+BawIcrbPcABJ/WkgkWnF
 GXCaIDqdiYn2ihZ4xwQGUHt2ft6T59YnvcARKcJak3Vqic+ASnNGsjvpCKV3c6FK
 PF2nJJHyFAPBSBCzVjDd5m70Of+M6gJj0197a7KMYhBHaVahoTU=
 =5gpa
 -----END PGP SIGNATURE-----

Merge tag 'sunxi-fixes-for-6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into arm/fixes

Allwinner fixes for 6.16

Only one fix:

Correct the name of the A523's EMAC0 to GMAC0, as seen in the SoC's
datasheets. The matching DT binding change is in the net tree.

* tag 'sunxi-fixes-for-6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
  arm64: dts: allwinner: a523: Rename emac0 to gmac0

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-07-18 08:24:07 +02:00
Anshuman Khandual
aa46e18836 arm64/mm: Drop redundant addr increment in set_huge_pte_at()
The 'addr' need not be incremented in the loop because that is not going to
be used subsequently.

Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will@kernel.org>
Cc: Ryan Roberts <ryan.roberts@arm.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Reviewed-by: Dev Jain <dev.jain@arm.com>
Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com>
Link: https://lore.kernel.org/r/20250716035432.293682-1-anshuman.khandual@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
2025-07-17 11:08:56 +01:00
Breno Leitao
d7ce7e3a84 arm64: Mark kernel as tainted on SAE and SError panic
Set TAINT_MACHINE_CHECK when SError or Synchronous External Abort (SEA)
interrupts trigger a panic to flag potential hardware faults. This
tainting mechanism aids in debugging and enables correlation of
hardware-related crashes in large-scale deployments.

This change aligns with similar patches[1] that mark machine check
events when the system crashes due to hardware errors.

Link: https://lore.kernel.org/all/20250702-add_tain-v1-1-9187b10914b9@debian.org/ [1]
Signed-off-by: Breno Leitao <leitao@debian.org>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Link: https://lore.kernel.org/r/20250716-vmcore_hw_error-v2-1-f187f7d62aba@debian.org
Signed-off-by: Will Deacon <will@kernel.org>
2025-07-17 11:07:15 +01:00
Diederik de Haas
07e04c071a arm64: dts: rockchip: Add maskrom button to NanoPi R5S + R5C
Both the R5S and R5C have a MASKROM button connected via saradc.
For both the R5S as the R5C it's described on page 9 of their
respective schematic, identified as 'Recovery'.

Signed-off-by: Diederik de Haas <didi.debian@cknow.org>
Link: https://lore.kernel.org/r/20250716083355.327451-1-didi.debian@cknow.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2025-07-17 10:52:16 +02:00
Alexis Lothoré (eBPF Foundation)
dc704d0cfa bpf, arm64: remove structs on stack constraint
While introducing support for 9+ arguments for tracing programs on
ARM64, commit 9014cf56f1 ("bpf, arm64: Support up to 12 function
arguments") has also introduced a constraint preventing BPF trampolines
from being generated if the target function consumes a struct argument
passed on stack, because of uncertainties around the exact struct
location: if the struct has been marked as packed or with a custom
alignment, this info is not reflected in BTF data, and so generated
tracing trampolines could read the target function arguments at wrong
offsets.

This issue is not specific to ARM64: there has been an attempt (see [1])
to bring the same constraint to other architectures JIT compilers. But
discussions following this attempt led to the move of this constraint
out of the kernel (see [2]): instead of preventing the kernel from
generating trampolines for those functions consuming structs on stack,
it is simpler to just make sure that those functions with uncertain
struct arguments location are not encoded in BTF information, and so
that one can not even attempt to attach a tracing program to such
function. The task is then deferred to pahole (see [3]).

Now that the constraint is handled by pahole, remove it from the arm64
JIT compiler to keep it simple.

[1] https://lore.kernel.org/bpf/20250613-deny_trampoline_structs_on_stack-v1-0-5be9211768c3@bootlin.com/
[2] https://lore.kernel.org/bpf/CAADnVQ+sj9XhscN9PdmTzjVa7Eif21noAUH3y1K6x5bWcL-5pg@mail.gmail.com/
[3] https://lore.kernel.org/bpf/20250707-btf_skip_structs_on_stack-v3-0-29569e086c12@bootlin.com/

Signed-off-by: Alexis Lothoré (eBPF Foundation) <alexis.lothore@bootlin.com>
Link: https://lore.kernel.org/r/20250709-arm64_relax_jit_comp-v1-1-3850fe189092@bootlin.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2025-07-16 18:28:30 -07:00
James Morse
cbf218627d arm64: cacheinfo: Provide helper to compress MPIDR value into u32
Filesystems like resctrl use the cache-id exposed via sysfs to identify
groups of CPUs. The value is also used for PCIe cache steering tags. On
DT platforms cache-id is not something that is described in the
device-tree, but instead generated from the smallest MPIDR of the CPUs
associated with that cache. The cache-id exposed to user-space has
historically been 32 bits.

MPIDR values may be larger than 32 bits.

MPIDR only has 32 bits worth of affinity data, but the aff3 field lives
above 32bits. The corresponding lower bits are masked out by
MPIDR_HWID_BITMASK and contain an SMT flag and Uni-Processor flag.

Swizzzle the aff3 field into the bottom 32 bits and using that.

In case more affinity fields are added in the future, the upper RES0
area should be checked. Returning a value greater than 32 bits from
this helper will cause the caller to give up on allocating cache-ids.

Signed-off-by: James Morse <james.morse@arm.com>
Reviewed-by: Jonathan Cameron <jonathan.cameron@huawei.com>
Reviewed-by: Gavin Shan <gshan@redhat.com>
Link: https://lore.kernel.org/r/20250711182743.30141-4-james.morse@arm.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-07-16 15:04:31 +02:00
Marc Zyngier
3096d238ec KVM: arm64: Tighten the definition of FEAT_PMUv3p9
The current definition of FEAT_PMUv3p9 doesn't check for the lack
of an IMPDEF PMU, which is encoded as 0b1111, but considered unsigned.

Use the recently introduced helper to address the issue (which is
harmless, as KVM never advertises an IMPDEF PMU).

Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20250714115503.3334242-6-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-15 20:39:42 -07:00
Marc Zyngier
cd64587f10 KVM: arm64: Convert MDCR_EL2 to config-driven sanitisation
As for other registers, convert the determination of the RES0 bits
affecting MDCR_EL2 to be driven by a table extracted from the 2025-06
JSON drop

Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20250714115503.3334242-5-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-15 20:39:42 -07:00
Marc Zyngier
6bd4a274b0 KVM: arm64: Convert SCTLR_EL1 to config-driven sanitisation
As for other registers, convert the determination of the RES0 bits
affecting SCTLR_EL1 to be driven by a table extracted from the 2025-06
JSON drop

Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20250714115503.3334242-4-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-15 20:39:42 -07:00
Marc Zyngier
001e032c0f KVM: arm64: Convert TCR2_EL2 to config-driven sanitisation
As for other registers, convert the determination of the RES0 bits
affecting TCR2_EL2 to be driven by a table extracted from the 2025-06
JSON drop.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20250714115503.3334242-3-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-15 20:39:42 -07:00
Marc Zyngier
a3ed7da911 arm64: sysreg: Add THE/ASID2 controls to TCR2_ELx
FEAT_THE and FEAT_ASID2 add new controls to the TCR2_ELx registers.

Add them to the register descriptions.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20250714115503.3334242-2-maz@kernel.org
[ fix whitespace ]
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-15 20:39:24 -07:00
Marc Zyngier
a0aae0a9a7 KVM: arm64: Advertise FGT2 registers to userspace
While a guest is able to use the FEAT_FGT2 registers, we're missing
them being exposed to userspace. Add them to the (very long) list.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20250714122634.3334816-9-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-15 20:24:29 -07:00
Marc Zyngier
72c62700b2 KVM: arm64: Condition FGT registers on feature availability
We shouldn't expose the FEAT_FGT registers unconditionally. Make
them dependent on FEAT_FGT being actually advertised to the guest.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20250714122634.3334816-8-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-15 20:24:29 -07:00
Marc Zyngier
9fe9663e47 KVM: arm64: Expose GICv3 EL2 registers via KVM_DEV_ARM_VGIC_GRP_CPU_SYSREGS
Expose all the GICv3 EL2 registers through the usual GICv3 save/restore
interface, making it possible for a VMM to access the EL2 state.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20250714122634.3334816-7-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-15 20:24:29 -07:00
Marc Zyngier
1d14c97145 KVM: arm64: Let GICv3 save/restore honor visibility attribute
The GICv3 save/restore code never needed any visibility attribute,
but that's about to change. Make vgic_v3_has_cpu_sysregs_attr()
check the visibility in case a register is hidden.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20250714122634.3334816-6-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-15 20:24:29 -07:00
Marc Zyngier
ce7a1cff2e KVM: arm64: Define helper for ICH_VTR_EL2
Move the computation of the ICH_VTR_EL2 value to a common location,
so that it can be reused by the save/restore code.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20250714122634.3334816-5-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-15 20:24:29 -07:00
Marc Zyngier
c6ef468610 KVM: arm64: Define constant value for ICC_SRE_EL2
Move the bag of bits defining the value of ICC_SRE_EL2 to a common
spot so that it can be reused by the save/restore code.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20250714122634.3334816-4-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-15 20:24:29 -07:00
Marc Zyngier
c70a4027f5 KVM: arm64: Don't advertise ICH_*_EL2 registers through GET_ONE_REG
It appears that exposing the GICv3 EL2 registers through the usual
sysreg interface is not consistent with the way we expose the EL1
registers. The latter are exposed via the GICv3 device interface
instead, and there is no reason why the EL2 registers should get
a different treatement.

Hide the registers from userspace until the GICv3 code grows the
required infrastructure.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20250714122634.3334816-3-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-15 20:24:28 -07:00
Marc Zyngier
1095b32665 KVM: arm64: Make RVBAR_EL2 accesses UNDEF
We always expose a virtual CPU that has EL3 when NV is enabled,
irrespective of EL3 being actually implemented in HW.

Therefore, as per the architecture, RVBAR_EL2 must UNDEF, since
EL2 is not the highest implemented exception level. This is
consistent with RMR_EL2 also triggering an UNDEF.

Adjust the handling of RVBAR_EL2 accordingly.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20250714122634.3334816-2-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-15 20:24:28 -07:00
Oliver Upton
efa1368ba9 KVM: arm64: Commit exceptions from KVM_SET_VCPU_EVENTS immediately
syzkaller has found that it can trip a warning in KVM's exception
emulation infrastructure by repeatedly injecting exceptions into the
guest.

While it's unlikely that a reasonable VMM will do this, further
investigation of the issue reveals that KVM can potentially discard the
"pending" SEA state. While the handling of KVM_GET_VCPU_EVENTS presumes
that userspace-injected SEAs are realized immediately, in reality the
emulated exception entry is deferred until the next call to KVM_RUN.

Hack-a-fix the immediate issues by committing the pending exceptions to
the vCPU's architectural state immediately in KVM_SET_VCPU_EVENTS. This
is no different to the way KVM-injected exceptions are handled in
KVM_RUN where we potentially call __kvm_adjust_pc() before returning to
userspace.

Reported-by: syzbot+4e09b1432de3774b86ae@syzkaller.appspotmail.com
Reported-by: syzbot+1f6f096afda6f4f8f565@syzkaller.appspotmail.com
Reviewed-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2025-07-15 20:12:03 -07:00
Diederik de Haas
b2501f327b arm64: dts: rockchip: Drop regulator-compatible property on rk3399
The regulator-compatible property has never existed in the
regulator/fcs,fan53555.yaml binding, so drop it.

This fixes the following DTB validation warnings:

  Unevaluated properties are not allowed
  ('regulator-compatible' was unexpected)

Signed-off-by: Diederik de Haas <didi.debian@cknow.org>
Link: https://lore.kernel.org/r/20250709132323.128757-11-didi.debian@cknow.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2025-07-15 20:19:24 +02:00
Diederik de Haas
2fe00f4611 arm64: dts: rockchip: Drop unneeded address+size-cells on px30
On nodes with compatible "rockchip,px30-usb2phy-grf", the #address-cells
and #size-cells are required and consequently their child nodes should
have unit addresses. That is not the case for the px30-pmugrf and
px30-grf nodes, so remove them there.

This fixes the following DTB validation warnings:

  unnecessary #address-cells/#size-cells without "ranges",
  "dma-ranges" or child "reg" property

Signed-off-by: Diederik de Haas <didi.debian@cknow.org>
Link: https://lore.kernel.org/r/20250709132323.128757-10-didi.debian@cknow.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2025-07-15 20:19:24 +02:00
Diederik de Haas
8c17c938dd arm64: dts: rockchip: Fix LCD panel port on rk3566-pinetab2
The MIPI DSI connector on the PineTab2 only has 1 port with 1 endpoint,
so drop the unit-address properties.

While at it, move 'rotation' property to its proper sorting position.

This fixes the following DTB validation warnings:

  node has a unit name, but no reg or ranges property

Signed-off-by: Diederik de Haas <didi.debian@cknow.org>
Link: https://lore.kernel.org/r/20250709132323.128757-9-didi.debian@cknow.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2025-07-15 20:19:24 +02:00
Diederik de Haas
4ac334d40e arm64: dts: rockchip: Move mipi_out node on rk3399 haikou demo dtso
According to the DTS coding style [1] referenced nodes should be sorted
alpha-numerically so move mipi_out to be after mipi_in_panel.

[1] https://www.kernel.org/doc/html/latest/devicetree/bindings/dts-coding-style.html#order-of-nodes

Signed-off-by: Diederik de Haas <didi.debian@cknow.org>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
Link: https://lore.kernel.org/r/20250709132323.128757-8-didi.debian@cknow.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2025-07-15 20:19:23 +02:00
Diederik de Haas
dfb549bbca arm64: dts: rockchip: Simplify mipi_out endpoint on rk3399 RP64 dtso
The only thing actually added here is a single endpoint on mipi_out,
which is already defined in rk3399-base.dtsi, so it's simpler to just
reference that phandle, which allows the removal of several properties.

Signed-off-by: Diederik de Haas <didi.debian@cknow.org>
Link: https://lore.kernel.org/r/20250709132323.128757-7-didi.debian@cknow.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2025-07-15 20:19:23 +02:00
Diederik de Haas
25937eb02f arm64: dts: rockchip: Simplify edp endpoints on several rk3399 boards
The only thing actually added here is a single endpoint on edp_out,
which is already defined in rk3399-base.dtsi, so it's simpler to just
reference that phandle, which allows the removal of several properties.

This fixes the following DTB validation warnings:

  graph node has single child node 'endpoint@0',
  #address-cells/#size-cells are not necessary

Signed-off-by: Diederik de Haas <didi.debian@cknow.org>
Link: https://lore.kernel.org/r/20250709132323.128757-6-didi.debian@cknow.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2025-07-15 20:19:23 +02:00
Diederik de Haas
776d8e75d4 arm64: dts: rockchip: Simplify VOP port definition on rk3328
When there's only 1 endpoint, there is no need for a unit-address and
removing that allows removing of related properties as well.

This fixes the following DTB validation warnings:

  graph node has single child node 'endpoint@0',
  #address-cells/#size-cells are not necessary

Signed-off-by: Diederik de Haas <didi.debian@cknow.org>
Link: https://lore.kernel.org/r/20250709132323.128757-5-didi.debian@cknow.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2025-07-15 20:19:23 +02:00
Paolo Bonzini
be8543845d KVM/arm64 fixes for 6.16, take #6
- Fix use of u64_replace_bits() in adjusting the guest's view of
   MDCR_EL2.HPMN.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEn9UcU+C1Yxj9lZw9I9DQutE9ekMFAmhwzecACgkQI9DQutE9
 ekNaNxAAiTXqyJ7qoRkOKF5XwB/598xK5KPQSshMhf/BtZBlRZzIZUBqxZJS1hUt
 S0Cwco7k4mfZNmMPGz5nTiOcCihJ4PYTYZwvkH3WIsY/VdvNXMPxQxNFxE6KgD6B
 99x8sJp7jmme1ON9rYOiVvljmkettVu0cggQLgawsmOC+Njhx23LZMN+OJk+gXD3
 VtyVxYTVCZra+VuhG/tLlGMQndqyCes8MEsq8Qp6COJaa6a7M/o3Qn3b0Nd8aXJ5
 BoYagTmnAap13Lk+iAfDj75JiJQ03h1jfSOJ0Zmy0X7nq76naDqRACJQu9SP4pDM
 ZnTB3Rn4WRhfyBc5QL7fc7RE5Zm1mJYPT9ijn9Iik0iRYqejDW2mCobmjjFefRqQ
 tQyCx4cLT2X6gASQ96un6I5cab1QABTgcMxB1Wb60vGCp8VVVOm5IaT8NNbTROq1
 DhcbBZtH1Zdt1nyStE2svN771iu/GKo8e6xSRAuGRQlzYqaDMOxkRsFpuq5w2INR
 V1CvuZ2l34wuY1rbj/Y5RBE33T5FuIFxE8uCrUInKZm4m1m9UfhSTlPu2+zBW8bZ
 VIGQN4Q7gEj63OH8GNJ50u81SqLlS1iUKut0HkW2LF0EeM36oMonXSbw2TmZSqY9
 Ttg4OQX+V8KYfS/Ji1riY1MFYjTli4PjImI3rIv+6e+IoxKb4lQ=
 =Ex7B
 -----END PGP SIGNATURE-----

Merge tag 'kvmarm-fixes-6.16-6' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD

KVM/arm64 fixes for 6.16, take #6

- Fix use of u64_replace_bits() in adjusting the guest's view of
  MDCR_EL2.HPMN.
2025-07-15 19:32:23 +02:00
Marc Zyngier
65a5520a27 arm64: smp: Fix pNMI setup after GICv5 rework
Breno reports that pNMIs are not behaving the way they should since
they were reworked for GICv5. Turns out we feed the IRQ number to
the pNMI helper instead of the IPI number -- not a good idea.

Fix it by providing the correct number (duh).

Fixes: ba1004f861 ("arm64: smp: Support non-SGIs for IPIs")
Reported-by: Breno Leitao <leitao@debian.org>
Suggested-by: Lorenzo Pieralisi <lpieralisi@kernel.org>
Signed-off-by: Marc Zyngier <maz@kernel.org>
2025-07-15 18:11:12 +01:00
Linus Torvalds
4664a4ddb9 soc: fixes for 6.16, part 2
There are 18 devicetree fixes for three arm64 plaforms: Qualcomm Snapdragon,
 Rockchips and NXP i.MX. These get updated to more correctly describe the
 hardware, fixing issues with:
 
  - real-time clock on Snapdragon based laptops
  - SD card detection, PCI probing and HDMI/DDC communication on
    Rockchips
  - Ethernet and SPI probing on certain i.MX based boards
  - A regression with the i.MX watchdog
 
 Aside from the devicetree fixes, there are two additional fixes for the
 merged ASPEED LPC snoop driver that saw some changes in 6.16, and one
 additional driver enabled in arm64 defconfig to fix CPU frequency scaling.
 
 Signed-off-by: Arnd Bergmann <arnd@arndb.de>
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmh2U6sACgkQmmx57+YA
 GNnmRA//f2/gqlQXuvEYJevqpQSI4RzYppVkbscYDv556cctMyUIEAjXpVUdaNZD
 m+sQSW3X1hBbEwethqRLKFnV8/sd0CpAmQCqAIAKftZh077HN7iF75WdyRKkt6vQ
 Y0bJQXpIgb82OKcfqpyghjnvaaRBe75XH2kQhx1pgw5EUX6dQRcHrr1cVJ4M7WkB
 TNhjDIb9CMp8BEtE0qpjbiee1517zR9VXcnCzGicDage7LqWtPgHejJiCcT4JIvs
 BpC8MJatdJ/HK8w/Kz3vx8JetzwPmyPKv2gOOsPG8hxMInR1zjR0itNnkhBIo6HA
 J2fVFqbFd5jBPwDL4E+IVnFcKtR0pja3/c1k/ZR80F0CjlRO3Licsg28zuJBWVIS
 Y1VD4HwUEDM3XqZ2NjDpFSqCEiESR6QVLBjcVhX+D3qUG+M12fhyuKTUX5JmQy/5
 OZEmajoWbdHQwvEZgqiFnKiOQV55fbtXSKFbfV9cLijAcRroKAcES8FrCBLtmMYs
 ngauKE2Atz2GHzmj17bkKlhRPA3iI7NKDaCDCrPFtm49dU7Z+BhZjEgOxmy+u3Op
 JyaDM+gzFewt7BSasYTB1D0+HHBfCDbt6BDRNCuIFn4W3AYnMvdcV004Az/LRNdI
 wdUa5Bh1hvZ7C4oEGLyOoJVxdxPUGps3tZrtMF3t/pHKnT4IYa8=
 =SDS7
 -----END PGP SIGNATURE-----

Merge tag 'soc-fixes-6.16-2' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull SoC fixes from Arnd Bergmann:
 "There are 18 devicetree fixes for three arm64 plaforms: Qualcomm
  Snapdragon, Rockchips and NXP i.MX. These get updated to more
  correctly describe the hardware, fixing issues with:

   - real-time clock on Snapdragon based laptops

   - SD card detection, PCI probing and HDMI/DDC communication on
     Rockchips

   - ethernet and SPI probing on certain i.MX based boards

   - a regression with the i.MX watchdog

  Aside from the devicetree fixes, there are two additional fixes for
  the merged ASPEED LPC snoop driver that saw some changes in 6.16, and
  one additional driver enabled in arm64 defconfig to fix CPU frequency
  scaling"

* tag 'soc-fixes-6.16-2' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (21 commits)
  arm64: dts: freescale: imx8mm-verdin: Keep LDO5 always on
  soc: aspeed: lpc-snoop: Don't disable channels that aren't enabled
  soc: aspeed: lpc-snoop: Cleanup resources in stack-order
  arm64: dts: imx95: Correct the DMA interrupter number of pcie0_ep
  arm64: dts: rockchip: Add missing fan-supply to rk3566-quartz64-a
  arm64: dts: rockchip: use cs-gpios for spi1 on ringneck
  arm64: dts: add big-endian property back into watchdog node
  arm64: dts: imx95-15x15-evk: fix the overshoot issue of NETC
  arm64: dts: imx95-19x19-evk: fix the overshoot issue of NETC
  arm64: dts: rockchip: list all CPU supplies on ArmSoM Sige5
  arm64: dts: imx8mp-venice-gw74xx: fix TPM SPI frequency
  arm64: dts: imx8mp-venice-gw73xx: fix TPM SPI frequency
  arm64: dts: imx8mp-venice-gw72xx: fix TPM SPI frequency
  arm64: dts: imx8mp-venice-gw71xx: fix TPM SPI frequency
  arm64: dts: qcom: x1e80100: describe uefi rtc offset
  arm64: dts: qcom: sc8280xp-x13s: describe uefi rtc offset
  arm64: defconfig: Enable Qualcomm CPUCP mailbox driver
  arm64: dts: rockchip: Add cd-gpios for sdcard detect on Cool Pi 4B
  arm64: dts: rockchip: Add cd-gpios for sdcard detect on Cool Pi CM5
  arm64: dts: rockchip: Adjust the HDMI DDC IO driver strength for rk3588
  ...
2025-07-15 09:26:33 -07:00
Mikhail Kalashnikov
d96d9ac8d2 arm64: dts: allwinner: a523: enable Mali GPU for all boards
All devices based on the A523/A527/H728/T527 processors contain a G57 MC1 GPU.

Enable the DT nodes for this GPU and specify a regulator that supplies power
to the SoC's VDD_GPU pins. The other parameters are set in the SoC dtsi,
so are board independent.

Signed-off-by: Mikhail Kalashnikov <iuncuim@gmail.com>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Link: https://patch.msgid.link/20250711035730.17507-4-iuncuim@gmail.com
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
2025-07-15 23:37:02 +08:00
Mikhail Kalashnikov
3d99e0dc88 arm64: dts: allwinner: a523: add Mali GPU node
The Allwinner A523 SoC features the Mali-G57 MC1 GPU, which belongs
to the Mali Valhall (v9) family. There is a power domain specifically
for this GPU that needs to be enabled to utilize it.

To enable in a specific device, we need to enable the gpu node and specify
the “mali-supply” regulator additionally in the device tree.

Signed-off-by: Mikhail Kalashnikov <iuncuim@gmail.com>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Link: https://patch.msgid.link/20250711035730.17507-3-iuncuim@gmail.com
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
2025-07-15 23:37:02 +08:00