summaryrefslogtreecommitdiff
path: root/arch
AgeCommit message (Collapse)Author
2025-05-10arm64: dts: qcom: msm8953: Add uart_5Felix Kaechele
Add the node and pinctrl for uart_5 found on the MSM8953 SoC. Signed-off-by: Felix Kaechele <felix@kaechele.ca> [luca: Prepare patch for upstream submission] Signed-off-by: Luca Weiss <luca@lucaweiss.eu> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250406-msm8953-uart_5-v1-1-7e4841674137@lucaweiss.eu Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-10arm64: dts: qcom: sm8350: Use q6asm defines for regLuca Weiss
Use the MSM_FRONTEND_DAI_MULTIMEDIA* defines to make the code more readable. No functional change intended. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250425-q6asmdai-defines-v1-11-28308e2ce7d4@fairphone.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-10arm64: dts: qcom: sm7325-nothing-spacewar: Use q6asm defines for regLuca Weiss
Use the MSM_FRONTEND_DAI_MULTIMEDIA* defines to make the code more readable. No functional change intended. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250425-q6asmdai-defines-v1-10-28308e2ce7d4@fairphone.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-10arm64: dts: qcom: sdm850*: Use q6asm defines for regLuca Weiss
Use the MSM_FRONTEND_DAI_MULTIMEDIA* defines to make the code more readable. No functional change intended. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250425-q6asmdai-defines-v1-9-28308e2ce7d4@fairphone.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-10arm64: dts: qcom: sdm845*: Use q6asm defines for regLuca Weiss
Use the MSM_FRONTEND_DAI_MULTIMEDIA* defines to make the code more readable. No functional change intended. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250425-q6asmdai-defines-v1-8-28308e2ce7d4@fairphone.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-10arm64: dts: qcom: sc7280: Use q6asm defines for regLuca Weiss
Use the MSM_FRONTEND_DAI_MULTIMEDIA* defines to make the code more readable. No functional change intended. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250425-q6asmdai-defines-v1-7-28308e2ce7d4@fairphone.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-10arm64: dts: qcom: sc7180-acer-aspire1: Use q6asm defines for regLuca Weiss
Use the MSM_FRONTEND_DAI_MULTIMEDIA* defines to make the code more readable. No functional change intended. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250425-q6asmdai-defines-v1-6-28308e2ce7d4@fairphone.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-10arm64: dts: qcom: qrb5165-rb5: Use q6asm defines for regLuca Weiss
Use the MSM_FRONTEND_DAI_MULTIMEDIA* defines to make the code more readable. No functional change intended. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250425-q6asmdai-defines-v1-5-28308e2ce7d4@fairphone.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-10arm64: dts: qcom: msm8996*: Use q6asm defines for regLuca Weiss
Use the MSM_FRONTEND_DAI_MULTIMEDIA* defines to make the code more readable. No functional change intended. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250425-q6asmdai-defines-v1-4-28308e2ce7d4@fairphone.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-10arm64: dts: qcom: msm8953: Use q6asm defines for regLuca Weiss
Use the MSM_FRONTEND_DAI_MULTIMEDIA* defines to make the code more readable. No functional change intended. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250425-q6asmdai-defines-v1-3-28308e2ce7d4@fairphone.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-10arm64: dts: qcom: msm8916-modem-qdsp6: Use q6asm defines for regLuca Weiss
Use the MSM_FRONTEND_DAI_MULTIMEDIA* defines to make the code more readable. No functional change intended. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250425-q6asmdai-defines-v1-2-28308e2ce7d4@fairphone.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-10arm64: dts: qcom: apq8096-db820c: Use q6asm defines for regLuca Weiss
Use the MSM_FRONTEND_DAI_MULTIMEDIA* defines to make the code more readable. No functional change intended. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250425-q6asmdai-defines-v1-1-28308e2ce7d4@fairphone.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-10arm64: dts: qcom: qcm6490-fairphone-fp5: Hook up DisplayPort over USB-CLuca Weiss
Extend the USB graph to connect the OCP96011 switch, the PTN36502 redriver, the USB controllers and the MDSS, so that DisplayPort over USB-C is working. Connect some parts of the graph directly in the SoC dtsi since those parts are wired up like this in the SoC directly. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250425-fp5-pmic-glink-dp-v3-4-cc9c2aeb42fb@fairphone.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-10arm64: dts: qcom: qcm6490-fairphone-fp5: Add OCP96011 audio switchLuca Weiss
Add a node for the OCP96011 on the board which is used to handle USB-C analog audio switch and handles the SBU mux for DisplayPort-over-USB-C. Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Link: https://lore.kernel.org/r/20250425-fp5-pmic-glink-dp-v3-3-cc9c2aeb42fb@fairphone.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-10arm64: dts: qcom: qcm6490-fairphone-fp5: Add PTN36502 redriverLuca Weiss
Add a node for the "Type-C USB 3.1 Gen 1 and DisplayPort v1.2 combo redriver" found on this device. Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Link: https://lore.kernel.org/r/20250425-fp5-pmic-glink-dp-v3-2-cc9c2aeb42fb@fairphone.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-10arm64: dts: qcom: sm6350: Align reg properties with latest styleLuca Weiss
While in the past the 'reg' properties were often written using decimal '0' for #address-cells = <2> & #size-cells = <2>, nowadays the style is to use hexadecimal '0x0' instead. Align this dtsi file to the new style to make it consistent, and don't use mixed 0x0 and 0 anymore. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250324-sm6350-videocc-v2-1-cc22386433f4@fairphone.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-10arm64: dts: qcom: sc7280: Stop setting dmic01 pinctrl for va-macroLuca Weiss
There's devices that don't have a DMIC connected to va-macro, so stop setting the pinctrl in sc7280.dtsi, but move it to the devices that actually are using it. No change in functionality is expected, just some boards with disabled va-macro are losing the pinctrl (herobrine-r1, villager-r0, zombie*). Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250404-sc7280-va-dmic01-v1-1-2862ddd20c48@fairphone.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-10arm64: dts: qcom: x1e80100: Add OPPs up to Turbo L3 for GPUAkhil P Oommen
Now that we have ACD support for GPU, add additional OPPs up to Turbo L3 which are supported across all existing SKUs. Signed-off-by: Akhil P Oommen <quic_akhilpo@quicinc.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Tested-by: Maya Matuszczyk <maccraft123mc@gmail.com> Tested-by: Anthony Ruhier <aruhier@mailbox.org> Acked-by: Bjorn Andersson <andersson@kernel.org> Patchwork: https://patchwork.freedesktop.org/patch/649354/ Signed-off-by: Rob Clark <robdclark@chromium.org>
2025-05-10arm64: dts: qcom: x1e80100: Add ACD levels for GPUAkhil P Oommen
Update GPU node to include acd level values. Signed-off-by: Akhil P Oommen <quic_akhilpo@quicinc.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Tested-by: Maya Matuszczyk <maccraft123mc@gmail.com> Tested-by: Anthony Ruhier <aruhier@mailbox.org> Acked-by: Bjorn Andersson <andersson@kernel.org> Patchwork: https://patchwork.freedesktop.org/patch/649352/ Signed-off-by: Rob Clark <robdclark@chromium.org>
2025-05-10Merge tag 'kvm-x86-fixes-6.15-rcN' of https://github.com/kvm-x86/linux into HEADPaolo Bonzini
KVM x86 fixes for 6.15-rcN - Forcibly leave SMM on SHUTDOWN interception on AMD CPUs to avoid causing problems due to KVM stuffing INIT on SHUTDOWN (KVM needs to sanitize the VMCB as its state is undefined after SHUTDOWN, emulating INIT is the least awful choice). - Track the valid sync/dirty fields in kvm_run as a u64 to ensure KVM KVM doesn't goof a sanity check in the future. - Free obsolete roots when (re)loading the MMU to fix a bug where pre-faulting memory can get stuck due to always encountering a stale root. - When dumping GHCB state, use KVM's snapshot instead of the raw GHCB page to print state, so that KVM doesn't print stale/wrong information. - When changing memory attributes (e.g. shared <=> private), add potential hugepage ranges to the mmu_invalidate_range_{start,end} set so that KVM doesn't create a shared/private hugepage when the the corresponding attributes will become mixed (the attributes are commited *after* KVM finishes the invalidation). - Rework the SRSO mitigation to enable BP_SPEC_REDUCE only when KVM has at least one active VM. Effectively BP_SPEC_REDUCE when KVM is loaded led to very measurable performance regressions for non-KVM workloads.
2025-05-10Merge tag 'kvmarm-fixes-6.15-3' of ↵Paolo Bonzini
https://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD KVM/arm64 fixes for 6.15, round #3 - Avoid use of uninitialized memcache pointer in user_mem_abort() - Always set HCR_EL2.xMO bits when running in VHE, allowing interrupts to be taken while TGE=0 and fixing an ugly bug on AmpereOne that occurs when taking an interrupt while clearing the xMO bits (AC03_CPU_36) - Prevent VMMs from hiding support for AArch64 at any EL virtualized by KVM - Save/restore the host value for HCRX_EL2 instead of restoring an incorrect fixed value - Make host_stage2_set_owner_locked() check that the entire requested range is memory rather than just the first page
2025-05-10Merge tag 'kvm-riscv-fixes-6.15-1' of https://github.com/kvm-riscv/linux ↵Paolo Bonzini
into HEAD KVM/riscv fixes for 6.15, take #1 - Add missing reset of smstateen CSRs
2025-05-10arm64: dts: rockchip: Enable Ethernet controller on Radxa E20CJonas Karlman
The Radxa E20C has two GbE ports, LAN and WAN. The LAN port is provided using a GMAC controller and a YT8531C PHY and the WAN port is provided by an RTL8111H PCIe Ethernet controller. Enable support for the LAN port on Radxa E20C. Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Tested-by: Yao Zi <ziyao@disroot.org> Link: https://lore.kernel.org/r/20250509202402.260038-3-jonas@kwiboo.se Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2025-05-10arm64: dts: rockchip: Add GMAC nodes for RK3528Jonas Karlman
Rockchip RK3528 has two Ethernet controllers based on Synopsys DWC Ethernet QoS IP. Add device tree nodes for the two Ethernet controllers in RK3528. Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Tested-by: Yao Zi <ziyao@disroot.org> Link: https://lore.kernel.org/r/20250509202402.260038-2-jonas@kwiboo.se Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2025-05-10KVM: arm64: Validate FGT register descriptions against RES0 masksMarc Zyngier
In order to point out to the unsuspecting KVM hacker that they are missing something somewhere, validate that the known FGT bits do not intersect with the corresponding RES0 mask, as computed at boot time. THis check is also performed at boot time, ensuring that there is no runtime overhead. Signed-off-by: Marc Zyngier <maz@kernel.org>
2025-05-10KVM: arm64: Switch to table-driven FGU configurationMarc Zyngier
Defining the FGU behaviour is extremely tedious. It relies on matching each set of bits from FGT registers with am architectural feature, and adding them to the FGU list if the corresponding feature isn't advertised to the guest. It is however relatively easy to dump most of that information from the architecture JSON description, and use that to control the FGU bits. Let's introduce a new set of tables descripbing the mapping between FGT bits and features. Most of the time, this is only a lookup in an idreg field, with a few more complex exceptions. While this is obviously many more lines in a new file, this is mostly generated, and is pretty easy to maintain. Reviewed-by: Joey Gouly <joey.gouly@arm.com> Signed-off-by: Marc Zyngier <maz@kernel.org>
2025-05-10KVM: arm64: Handle PSB CSYNC trapsMarc Zyngier
The architecture introduces a trap for PSB CSYNC that fits in the same EC as LS64. Let's deal with it in a similar way as LS64. It's not that we expect this to be useful any time soon anyway. Signed-off-by: Marc Zyngier <maz@kernel.org>
2025-05-10KVM: arm64: Use KVM-specific HCRX_EL2 RES0 maskMarc Zyngier
We do not have a computed table for HCRX_EL2, so statically define the bits we know about. A warning will fire if the architecture grows bits that are not handled yet. Reviewed-by: Joey Gouly <joey.gouly@arm.com> Signed-off-by: Marc Zyngier <maz@kernel.org>
2025-05-10KVM: arm64: Remove hand-crafted masks for FGT registersMarc Zyngier
These masks are now useless, and can be removed. Signed-off-by: Marc Zyngier <maz@kernel.org>
2025-05-10KVM: arm64: Use computed FGT masks to setup FGT registersMarc Zyngier
Flip the hyervisor FGT configuration over to the computed FGT masks. Reviewed-by: Joey Gouly <joey.gouly@arm.com> Signed-off-by: Marc Zyngier <maz@kernel.org>
2025-05-10Merge tag 'renesas-arm-defconfig-for-v6.16-tag2' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into soc/defconfig Renesas ARM defconfig updates for v6.16 (take two) - Enable modular support for the Renesas RZ/G2L GPT and MSIOF sound in the ARM64 defconfig, - Enable more support for RZN1D-DB/EB in shmobile_defconfig. * tag 'renesas-arm-defconfig-for-v6.16-tag2' of https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel: ARM: shmobile: defconfig: Enable more support for RZN1D-DB/EB arm64: defconfig: Add Renesas MSIOF sound support arm64: defconfig: Enable Renesas RZ/G2L GPT config arm: multi_v7_defconfig: Drop individual Renesas SoC entries arm: shmobile_defconfig: Drop individual Renesas SoC entries arm64: defconfig: Remove individual Renesas SoC entries soc: renesas: Kconfig: Enable SoCs by default when ARCH_RENESAS is set Link: https://lore.kernel.org/r/cover.1746798750.git.geert+renesas@glider.be Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-10Merge tag 'arm-gpio-set-conversion-for-v6.16-rc1' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux into soc/arm ARM: convert board-file GPIO chips to using new value setters struct gpio_chip now has callbacks for setting line values that return an integer, allowing to indicate failures. We're in the process of converting all GPIO drivers to using the new API. This series converts all ARM board-file level controllers. * tag 'arm-gpio-set-conversion-for-v6.16-rc1' of https://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux: ARM: s3c/gpio: use new line value setter callbacks ARM: scoop/gpio: use new line value setter callbacks ARM: sa1100/gpio: use new line value setter callbacks ARM: orion/gpio: use new line value setter callbacks
2025-05-10Merge tag 'tegra-for-6.16-arm-dt' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into soc/dt ARM: tegra: Device tree changes for v6.16-rc1 Use standard names for the APBDMA controller device tree nodes, add support for the ASUS Transformer Pad LTE TF300TL and clean up the Apalis evaluation board by removing the unused pcie-switch node. * tag 'tegra-for-6.16-arm-dt' of https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux: ARM: tegra: apalis-eval: Remove pcie-switch node ARM: tegra: Add device-tree for ASUS Transformer Pad LTE TF300TL ARM: tegra: Rename the apbdma nodename to match with common dma-controller binding Link: https://lore.kernel.org/r/20250509212604.2849901-2-treding@nvidia.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-10Merge tag 'tegra-for-6.16-arm64-dt' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into soc/dt arm64: tegra: Device tree changes for v6.16-rc1 Enable IOMMU support for the internal DMA controller of the QSPI controller, add aliases for the I2C controllers on Tegra234 to match hardware block names as well as the UART-D alias on Jetson TX1, and enable PWM fans on Jetson TX1 and TX2. Clean up serial port device tree nodes, add missing DMA properties, enable the GPU on Jetson TX1 and Jetson TX2. Use an extended number of address- and size-cells on Tegra186 to mirror what is done on other chip generations. Enable CEC on developer kit devices. * tag 'tegra-for-6.16-arm64-dt' of https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux: arm64: tegra: Wire up CEC to devkits arm64: tegra: Add CEC controller on Tegra210 arm64: tegra: Add fallback CEC compatibles arm64: tegra: Add uartd serial alias for Jetson TX1 module arm64: tegra: Bump #address-cells and #size-cells on Tegra186 arm64: tegra: p2180: Explicitly enable GPU arm64: tegra: p3310: Explicitly enable GPU arm64: tegra: Add DMA properties for Tegra186 and Tegra194 UARTs arm64: tegra: Drop remaining serial clock-names and reset-names arm64: tegra: Enable PWM fan on the Jetson TX2 Devkit arm64: tegra: Enable PWM fan on the Jetson TX1 Devkit arm64: tegra: Add I2C aliases for Tegra234 arm64: tegra: Configure QSPI clocks and add DMA Link: https://lore.kernel.org/r/20250509212604.2849901-3-treding@nvidia.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-10Merge tag 'imx-fixes-6.15-2' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/fixes i.MX fixes for 6.15, 2nd round: - One more i.MX8MP nominal drive mode DT fix from Ahmad Fatoum to use 800MHz NoC OPP - A imx8mp-var-som DT change from Himanshu Bhavani to fix SD card timeout caused by LDO5 * tag 'imx-fixes-6.15-2' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: arm64: dts: imx8mp-var-som: Fix LDO5 shutdown causing SD card timeout arm64: dts: imx8mp: use 800MHz NoC OPP for nominal drive mode Link: https://lore.kernel.org/r/aB6h/woeyG1bSo12@dragon Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-10crypto: powerpc/poly1305 - Add poly1305_emit_arch wrapperHerbert Xu
Add poly1305_emit_arch with fallback instead of calling assembly directly. This is because the state format differs between p10 and that of the generic implementation. Reported-by: Venkat Rao Bagalkote <venkat88@linux.ibm.com> Reported-by: Eric Biggers <ebiggers@google.com> Fixes: 14d31979145d ("crypto: powerpc/poly1305 - Add block-only interface") Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2025-05-09lib/crc: make arch-optimized code use subsys_initcallEric Biggers
Make the architecture-optimized CRC code do its CPU feature checks in subsys_initcalls instead of arch_initcalls. This makes it consistent with arch/*/lib/crypto/ and ensures that it runs after initcalls that possibly could be a prerequisite for kernel-mode FPU, such as x86's xfd_update_static_branch() and loongarch's init_euen_mask(). Note: as far as I can tell, x86's xfd_update_static_branch() isn't *actually* needed for kernel-mode FPU. loongarch's init_euen_mask() is needed to enable save/restore of the vector registers, but loongarch doesn't yet have any CRC or crypto code that uses vector registers anyway. Regardless, let's be consistent with arch/*/lib/crypto/ and robust against any potential future dependency on an arch_initcall. Link: https://lore.kernel.org/r/20250510035959.87995-1-ebiggers@kernel.org Signed-off-by: Eric Biggers <ebiggers@google.com>
2025-05-09Merge tag 'rust-fixes-6.15-2' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/ojeda/linux Pull rust fixes from Miguel Ojeda: - Make CFI_AUTO_DEFAULT depend on !RUST or Rust >= 1.88.0 - Clean Rust (and Clippy) lints for the upcoming Rust 1.87.0 and 1.88.0 releases - Clean objtool warning for the upcoming Rust 1.87.0 release by adding one more noreturn function * tag 'rust-fixes-6.15-2' of git://git.kernel.org/pub/scm/linux/kernel/git/ojeda/linux: x86/Kconfig: make CFI_AUTO_DEFAULT depend on !RUST or Rust >= 1.88 rust: clean Rust 1.88.0's `clippy::uninlined_format_args` lint rust: clean Rust 1.88.0's warning about `clippy::disallowed_macros` configuration rust: clean Rust 1.88.0's `unnecessary_transmutes` lint rust: allow Rust 1.87.0's `clippy::ptr_eq` lint objtool/rust: add one more `noreturn` Rust function for Rust 1.87.0
2025-05-09Merge tag 'v6.16-rockchip-dts32-1' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into soc/dt Graphics support for the old rk3066-marsboard (hdmi + Mali400 gpu), rk3036 improvements (mmc asliases, hdmi refclk), dropping of redundant clock-latency props. * tag 'v6.16-rockchip-dts32-1' of https://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip: ARM: dts: rockchip: enable Mali gpu on rk3066 marsboard ARM: dts: rockchip: enable hdmi on rk3066 marsboard Revert "ARM: dts: rockchip: drop grf reference from rk3036 hdmi" ARM: dts: rockchip: Add ref clk for hdmi ARM: dts: rockchip: Drop redundant CPU "clock-latency" ARM: dts: rockchip: Add aliases for rk3036-kylin MMC devices Link: https://lore.kernel.org/r/22686731.EfDdHjke4D@diego Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09Merge tag 'v6.16-rockchip-dts64-1' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into soc/dt - New boards: rk3588-evb2, rk3588-tiger-haikou-video-demo-overlay - New peripherals: RNG+PCIe+SATA on rk3576; eDP on rk3588; DMA+I2C+PWM on rk3528; DSI on rk3588 - SPI-flash binding got a supply-property, so a number of boards add this supply. - RK3588 wrongly declared the shared memory with SCMI in the peripheral space - moved to the correct reserved-memory structure now. - The rest is peripheral enablement accross many boards - like hdmi output for a big number of boards, regulators, eeprom, etc. * tag 'v6.16-rockchip-dts64-1' of https://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip: (52 commits) arm64: dts: rockchip: Add vcc-supply to SPI flash on rk3566-rock3c arm64: dts: rockchip: Enable regulators for Radxa E20C arm64: dts: rockchip: Add pwm nodes for RK3528 arm64: dts: rockchip: Add onboard EEPROM for Radxa E20C arm64: dts: rockchip: Add I2C controllers for RK3528 arm64: dts: rockchip: add RK3576 RNG node arm64: dts: rockchip: Switch to undeprecated qcom,calibration-variant on RK3399 arm64: dts: rockchip: Add vcc-supply to SPI flash on rk3566-quartz64-b arm64: dts: rockchip: Add phy-supply to gmac0 on NanoPi R5S arm64: dts: rockchip: fix usb-c port functionality on rk3588-nanopc-t6 arm64: dts: rockchip: Enable bluetooth of AP6611s on OrangePI5 Max/Ultra arm64: dts: rockchip: add SATA nodes to RK3576 arm64: dts: rockchip: Add vcc-supply to SPI flash on rk3588-rock-5b arm64: dts: rockchip: Add vcc-supply to SPI flash on rk3566-pinetab2 arm64: dts: rockchip: Add vcc-supply to SPI flash on rk3399-rockpro64 arm64: dts: rockchip: Add vcc-supply to SPI flash on rk3328-rock64 arm64: dts: rockchip: Add vcc supply to spi flash on rk3399-roc-pc arm64: dts: rockchip: enable pcie on Sige5 arm64: dts: rockchip: Add HDMI support for roc-rk3576-pc arm64: dts: rockchip: Enable HDMI0 audio output for Indiedroid Nova ... Link: https://lore.kernel.org/r/2307187.iZASKD2KPV@diego Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09Merge tag 'asahi-soc-dt-6.16' of https://github.com/AsahiLinux/linux into soc/dtArnd Bergmann
Apple SoC Device Tree updates for 6.16: - A-series SoCs: CPU cache information has been added to device trees - M-series SoCs: SPMI controller and SPMI NVMEM nodes have been added * tag 'asahi-soc-dt-6.16' of https://github.com/AsahiLinux/linux: arm64: dts: apple: Add PMIC NVMEM arm64: dts: apple: Add SPMI controller nodes arm64: dts: apple: t8015: Add CPU caches arm64: dts: apple: t8012: Add CPU caches arm64: dts: apple: t8011: Add CPU caches arm64: dts: apple: t8010: Add CPU caches arm64: dts: apple: s8001: Add CPU caches arm64: dts: apple: s800-0-3: Add CPU caches arm64: dts: apple: t7001: Add CPU caches arm64: dts: apple: t7000: Add CPU caches arm64: dts: apple: s5l8960x: Add CPU caches Link: https://lore.kernel.org/r/20250507160827.87725-1-sven@svenpeter.dev Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09Merge tag 'arm-soc/for-6.16/devicetree-arm64' of ↵Arnd Bergmann
https://github.com/Broadcom/stblinux into soc/dt This pull request contains Broadcom ARM64-based SoCs Device Tree updates for 6.16, please pull the following: - Stanimir adds and enables the PCIe root complex Device Tree nodes present on the Raspberry Pi 5 - Rob updates the BCM2712 L2 cache node names to use a more comforming name * tag 'arm-soc/for-6.16/devicetree-arm64' of https://github.com/Broadcom/stblinux: arm64: dts: broadcom: bcm2712: Use "l2-cache" for L2 cache node names arm64: dts: broadcom: bcm2712-rpi-5-b: Enable PCIe DT nodes arm64: dts: broadcom: bcm2712: Add PCIe DT nodes Link: https://lore.kernel.org/r/20250505165810.1948927-2-florian.fainelli@broadcom.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09Merge tag 'arm-soc/for-6.16/devicetree' of ↵Arnd Bergmann
https://github.com/Broadcom/stblinux into soc/dt This pull request contains Broadcom ARM-based SoC Device Tree changes for 6.16, please pull the following: - Arthur adds a pinctrl node for BCM21664 and updates BCM23550 to use it, he also drops the DTS file for the BCM59056 PMU chip and leaving that board level DTS files - Stefan documents and adds support for the Raspberry Pi 2 2nd revision. * tag 'arm-soc/for-6.16/devicetree' of https://github.com/Broadcom/stblinux: arm64: dts: bcm: Add reference to RPi 2 (2nd rev) ARM: dts: bcm: Add support for Raspberry Pi 2 (2nd rev) dt-bindings: arm: bcm2835: Add Raspberry Pi 2 (2nd rev) ARM: dts: Drop DTS for BCM59056 PMU ARM: dts: bcm2166x: Add bcm2166x-pinctrl DTSI ARM: dts: bcm2166x-common: Add pinctrl node Link: https://lore.kernel.org/r/20250505165810.1948927-1-florian.fainelli@broadcom.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09Merge tag 'renesas-dts-for-v6.16-tag2' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into soc/dt Renesas DTS updates for v6.16 (take two) - Add CANFD support for the RZ/G3E SoC and the RZ/G3E SMARC Carrier-II EVK development board, - Add support for Ethernet port A, 9-pin D-sub serial, and USB on the RZN1D-DB and RZN1D-EB development and expansion boards, - Add sound support for the Retronix Sparrow Hawk board, - Add General PWM Timer (GPT) support for the RZ/G2L and RZ/V2L SoCs and SMARC EVK boards, - Miscellaneous fixes and improvements. * tag 'renesas-dts-for-v6.16-tag2' of https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel: ARM: dts: renesas: r9a06g032-rzn1d400-eb: Enable USB host port ARM: dts: renesas: r9a06g032-rzn1d400-db: Add pinmux for the CPLD arm64: dts: renesas: white-hawk-single: Improve Ethernet TSN description ARM: dts: renesas: r9a06g032-rzn1d400-db: Enable USB device port ARM: dts: renesas: r9a06g032-rzn1d400-eb: Describe 9-pin D-sub serial port arm64: dts: renesas: beacon-renesom: Align wifi node name with bindings arm64: dts: renesas: rzg2l-smarc: Enable GPT on carrier board arm64: dts: renesas: r9a07g054: Add GPT support arm64: dts: renesas: r9a07g044: Add GPT support arm64: dts: renesas: sparrow-hawk: Add MSIOF Sound support ARM: dts: renesas: r9a06g032-rzn1d400-eb: Add GMAC1 port arm64: dts: renesas: r9a09g047e57-smarc: Enable CAN Transceiver arm64: dts: renesas: r9a09g047e57-smarc: Enable CANFD arm64: dts: renesas: r9a09g047: Add CANFD node Link: https://lore.kernel.org/r/cover.1746798755.git.geert+renesas@glider.be Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09Merge tag 'renesas-dts-for-v6.16-tag1' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into soc/dt Renesas DTS updates for v6.16 - Add SDHI, ICU, I2C, PMIC, and GPU support on the RZ/G3E SoC and the RZ/G3E SoM and SMARC Carrier-II EVK development board, - Add internal SDHI regulator support on the RZ/V2H(P) SoC, - Add UFS tuning parameters in E-FUSE on the R-Car S4-8 ES1.2 SoC, - Add support for Ethernet ports C and D, I2C, keys, and SDHI on the RZ/N1D SoC and the RZN1D-DB and RZN1D-EB development and expansion boards, - Add initial support for the RZ/V2N (R9A09G056) and the RZ/V2N EVK board, - Add support for the Retronix Sparrow Hawk board, which is based on R-Car V4H ES3.0, - Add ISP core support on R-Car V3U, V4H, and V4M, - Miscellaneous fixes and improvements. * tag 'renesas-dts-for-v6.16-tag1' of https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel: (29 commits) arm64: dts: renesas: r8a779h0: Add ISP core function block arm64: dts: renesas: r8a779g0: Add ISP core function block arm64: dts: renesas: r8a779a0: Add ISP core function block arm64: dts: renesas: r8a779g3: Add Retronix R-Car V4H Sparrow Hawk board support arm64: dts: renesas: rzg3e-smarc-som: Enable Mali-G52 arm64: dts: renesas: r9a09g047: Add Mali-G52 GPU node arm64: dts: renesas: rzg3e-smarc-som: Add RAA215300 pmic support arm64: dts: renesas: rzg3e-smarc-som: Add I2C2 device pincontrol ARM: dts: renesas: r9a06g032-rzn1d400-eb: describe SD card port ARM: dts: renesas: r9a06g032: Describe SDHCI controllers arm64: dts: renesas: Add initial device tree for RZ/V2N EVK arm64: dts: renesas: Add initial SoC DTSI for RZ/V2N dt-bindings: pinctrl: renesas: Document RZ/V2N SoC dt-bindings: clock: renesas: Document RZ/V2N SoC CPG dt-bindings: soc: renesas: Document SYS for RZ/V2N SoC dt-bindings: soc: renesas: Document Renesas RZ/V2N SoC variants and EVK ARM: dts: renesas: r9a06g032-rzn1d400-db: Describe keys ARM: dts: renesas: r9a06g032-rzn1d400-eb: Describe I2C bus ARM: dts: renesas: r9a06g032-rzn1d400-db: Describe I2C bus ARM: dts: renesas: r9a06g032: Describe I2C controllers ... Link: https://lore.kernel.org/r/cover.1745582596.git.geert+renesas@glider.be Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09x86/its: FineIBT-paranoid vs ITSPeter Zijlstra
FineIBT-paranoid was using the retpoline bytes for the paranoid check, disabling retpolines, because all parts that have IBT also have eIBRS and thus don't need no stinking retpolines. Except... ITS needs the retpolines for indirect calls must not be in the first half of a cacheline :-/ So what was the paranoid call sequence: <fineibt_paranoid_start>: 0: 41 ba 78 56 34 12 mov $0x12345678, %r10d 6: 45 3b 53 f7 cmp -0x9(%r11), %r10d a: 4d 8d 5b <f0> lea -0x10(%r11), %r11 e: 75 fd jne d <fineibt_paranoid_start+0xd> 10: 41 ff d3 call *%r11 13: 90 nop Now becomes: <fineibt_paranoid_start>: 0: 41 ba 78 56 34 12 mov $0x12345678, %r10d 6: 45 3b 53 f7 cmp -0x9(%r11), %r10d a: 4d 8d 5b f0 lea -0x10(%r11), %r11 e: 2e e8 XX XX XX XX cs call __x86_indirect_paranoid_thunk_r11 Where the paranoid_thunk looks like: 1d: <ea> (bad) __x86_indirect_paranoid_thunk_r11: 1e: 75 fd jne 1d __x86_indirect_its_thunk_r11: 20: 41 ff eb jmp *%r11 23: cc int3 [ dhansen: remove initialization to false ] Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Signed-off-by: Pawan Gupta <pawan.kumar.gupta@linux.intel.com> Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com> Reviewed-by: Alexandre Chartre <alexandre.chartre@oracle.com>
2025-05-09x86/its: Use dynamic thunks for indirect branchesPeter Zijlstra
ITS mitigation moves the unsafe indirect branches to a safe thunk. This could degrade the prediction accuracy as the source address of indirect branches becomes same for different execution paths. To improve the predictions, and hence the performance, assign a separate thunk for each indirect callsite. This is also a defense-in-depth measure to avoid indirect branches aliasing with each other. As an example, 5000 dynamic thunks would utilize around 16 bits of the address space, thereby gaining entropy. For a BTB that uses 32 bits for indexing, dynamic thunks could provide better prediction accuracy over fixed thunks. Have ITS thunks be variable sized and use EXECMEM_MODULE_TEXT such that they are both more flexible (got to extend them later) and live in 2M TLBs, just like kernel code, avoiding undue TLB pressure. Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Signed-off-by: Pawan Gupta <pawan.kumar.gupta@linux.intel.com> Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com> Reviewed-by: Alexandre Chartre <alexandre.chartre@oracle.com>
2025-05-09Merge tag 'socfpga_dts_updates_for_v6.15' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux into soc/dt SoCFPGA DTS updates for v6.15 - Updates to dt-bindings - Document Agilex5 NAND daughter board - Convert Stratix10 FPGA Manager to json-schema - Convert Stratix10 Service Layer to json-schema - Add document for Terasic's DE10-nano board - Add support for Agilex5 NAND daughter board - Add basic support for Terasic's DE10-nano board * tag 'socfpga_dts_updates_for_v6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux: arm64: dts: socfpga: agilex: Add dma channel id for spi arm64: dts: socfpga: agilex5: add led and memory nodes arm64: dts: intel: socfpga_agilex: add frequencies to internal oscillators ARM: dts: socfpga: Add basic support for Terrasic's de10-nano dt-bindings: altera: Add compatible for Terasic's DE10-nano arm64: dts: socfpga: agilex5: add qspi flash node dt-bindings: firmware: stratix10: Convert to json-schema dt-bindings: fpga: stratix10: Convert to json-schema arm64: dts: socfpga: agilex5: fix gpio0 address arm64: dts: socfpga: agilex5: add NAND daughter board dt-bindings: intel: document Agilex5 NAND daughter board Link: https://lore.kernel.org/r/20250326121152.1739873-1-dinguyen@kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09x86/ibt: Keep IBT disabled during alternative patchingPawan Gupta
cfi_rewrite_callers() updates the fineIBT hash matching at the caller side, but except for paranoid-mode it relies on apply_retpoline() and friends for any ENDBR relocation. This could temporarily cause an indirect branch to land on a poisoned ENDBR. For instance, with para-virtualization enabled, a simple wrmsrl() could have an indirect branch pointing to native_write_msr() who's ENDBR has been relocated due to fineIBT: <wrmsrl>: push %rbp mov %rsp,%rbp mov %esi,%eax mov %rsi,%rdx shr $0x20,%rdx mov %edi,%edi mov %rax,%rsi call *0x21e65d0(%rip) # <pv_ops+0xb8> ^^^^^^^^^^^^^^^^^^^^^^^ Such an indirect call during the alternative patching could #CP if the caller is not *yet* adjusted for the new target ENDBR. To prevent a false #CP, keep CET-IBT disabled until all callers are patched. Patching during the module load does not need to be guarded by IBT-disable because the module code is not executed until the patching is complete. Signed-off-by: Pawan Gupta <pawan.kumar.gupta@linux.intel.com> Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com> Reviewed-by: Alexandre Chartre <alexandre.chartre@oracle.com>
2025-05-09mm/execmem: Unify early execmem_cache behaviourPeter Zijlstra
Early kernel memory is RWX, only at the end of early boot (before SMP) do we mark things ROX. Have execmem_cache mirror this behaviour for early users. This avoids having to remember what code is execmem and what is not -- we can poke everything with impunity ;-) Also performance for not having to do endless text_poke_mm switches. Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Signed-off-by: Pawan Gupta <pawan.kumar.gupta@linux.intel.com> Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com> Reviewed-by: Alexandre Chartre <alexandre.chartre@oracle.com>