summaryrefslogtreecommitdiff
path: root/arch
AgeCommit message (Collapse)Author
2023-04-14s390/bpf: Fix bpf_arch_text_poke() with new_addr == NULLIlya Leoshkevich
Thomas Richter reported a crash in linux-next with a backtrace similar to the following one: [<0000000000000000>] 0x0 ([<000000000031a182>] bpf_trace_run4+0xc2/0x218) [<00000000001d59f4>] __bpf_trace_sched_switch+0x1c/0x28 [<0000000000c44a3a>] __schedule+0x43a/0x890 [<0000000000c44ef8>] schedule+0x68/0x110 [<0000000000c4e5ca>] do_nanosleep+0xa2/0x168 [<000000000026e7fe>] hrtimer_nanosleep+0xf6/0x1c0 [<000000000026eb6e>] __s390x_sys_nanosleep+0xb6/0xf0 [<0000000000c3b81c>] __do_syscall+0x1e4/0x208 [<0000000000c50510>] system_call+0x70/0x98 Last Breaking-Event-Address: [<000003ff7fda1814>] bpf_prog_65e887c70a835bbf_on_switch+0x1a4/0x1f0 The problem is that bpf_arch_text_poke() with new_addr == NULL is susceptible to the following race condition: T1 T2 ----------------- ------------------- plt.target = NULL entry: brcl 0xf,plt entry.mask = 0 lgrl %r1,plt.target br %r1 Fix by setting PLT target to the instruction following `brcl 0xf,plt` instead of 0. This way T2 will simply resume the execution of the eBPF program, which is the desired effect of passing new_addr == NULL. Fixes: f1d5df84cd8c ("s390/bpf: Implement bpf_arch_text_poke()") Reported-by: Thomas Richter <tmricht@linux.ibm.com> Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Reviewed-by: Heiko Carstens <hca@linux.ibm.com> Link: https://lore.kernel.org/bpf/20230414154755.184502-1-iii@linux.ibm.com
2023-04-14Merge tag 'qcom-arm64-for-6.4-2' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into soc/dt More Qualcomm ARM64 Devicetree updated for v6.4 Devicetree for the QCM2210/QCM2290 is introduced. Support for the RB1 board is introduced on QRB2210, RB2 on QRB4210, the AL02 board on IPQ9574, the MI01.6 board is introduced on IPQ5332 and initial support for Xiaomi Mi A3 is introduced on SM6125. Support for the output-enable/disable flag is introduced in the pinctrl-msm driver, and the non-standard "input-enable" is dropped from a range of platforms. A wide range of smaller fixes are introduced, based on Devicetree validation. MSM8953 gains LPASS, MPSS and Wireless subsystem support. The iommus property is removed from PCIe nodes in all platforms, as the only the child devices should be associated with iommu groups, through the existing iommu-map property. A few QUP instances are introduced on the IPQ5332 platform, and support for the MI01.6 board is introduced. The reserved-memory map on Huawei Nexus 6P is updated with the addition of splash screen framebuffer memory and adjustment to the reserved memory region overlapping the smem region. Regulators are introduces for the SA8775P Ride platform. A regulator is marked always-on, for correctness, on Trogdor. Pinconf fixes are introduced to both sc7180 and sc7280 devices. A dedicated reviewers list is added for boards relevant to the Chromebook engineers. A set of pinconf fixes are introduced for sc8280xp, labels are introduced for Soundwire nodes. The sensor core remoteproc and FastRPC thereon, is introduce in SDM845 and enabled for OnePlus 6/6T and Shift Shift6mq. RMTFS, remoteprocs, ath10k and ramoops is introduced for the Lenovo Tab P11. UFS support is introduced on SM6125. SM8150 no longer defines the GPU to be in headless mode by default, GPU speedbins are introduced. GPU speedbins are introduced for SM8250 as well, as is support for display on Xiaomi Mi Pad 5 Pro, with two different panels supported. Soundwire controllers, ADSP audio codec macros and the Inline Crypto Engine support is added to the SM8550 platform. * tag 'qcom-arm64-for-6.4-2' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (85 commits) arm64: dts: qcom: Add base qrb4210-rb2 board dts arm64: dts: qcom: sm8550: add Soundwire controllers arm64: dts: qcom: sm8250: Add GPU speedbin support arm64: dts: qcom: sm8150: Add GPU speedbin support arm64: dts: qcom: sm8150: Don't start Adreno in headless mode arm64: dts: qcom: ipq5332: add support for the RDP468 variant arm64: dts: qcom: sdm630: move DSI opp-table out of DSI node arm64: dts: qcom: sm6115p-j606f: Enable ATH10K WiFi arm64: dts: qcom: sm6115p-j606f: Enable remoteprocs arm64: dts: qcom: sm6115: Add RMTFS arm64: dts: qcom: sm6115-j606f: Add ramoops node arm64: dts: qcom: msm8916-thwc-ufi001c: add function to pin config arm64: dts: qcom: sm8550: Add the Inline Crypto Engine node arm64: dts: MSM8953: Add lpass nodes arm64: dts: MSM8953: Add mpss nodes arm64: dts: MSM8953: Add wcnss nodes arm64: dts: qcom: sm8350: remove superfluous "input-enable" arm64: dts: qcom: sm8150: remove superfluous "input-enable" arm64: dts: qcom: apq8016: remove superfluous "input-enable" arm64: dts: qcom: sc8280xp-lenovo-thinkpad: correct pin drive-strength ... Link: https://lore.kernel.org/r/20230414031550.2412379-1-andersson@kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'qcom-dts-for-6.4-2' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into soc/dt A few more Qualcomm ARM32 DeviceTree updates for v6.4 This adds IPA definition to the sdx65 platform, and brings a few stylistic changes to sdx55 and sdx65. Compatibles for the two new Qualcomm Robotics Platform boards, RB1 and RB2, are defined, as is Xiaomi Mi A3 and the MI01.6 development baord on IPQ5332. These are all ARM64 boards, despite being introduced through the ARM32 pull request... * tag 'qcom-dts-for-6.4-2' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: dt-bindings: arm: qcom: Document the Qualcomm qrb4210-rb2 board ARM: dts: qcom: sdx55-fn980: Move "status" property to the end of node ARM: dts: qcom: sdx55: Move reset and wake gpios to board dts dt-bindings: arm: qcom: document MI01.6 board based on IPQ5332 family dt-bindings: arm: qcom: Document xiaomi,laurel-sprout board dt-bindings: arm: qcom: Add QRB2210/QCM2290 and RB1 board ARM: dts: qcom: sdx65: move status properties to end of nodes ARM: dts: qcom: sdx65: add IPA information Link: https://lore.kernel.org/r/20230414023723.2411793-1-andersson@kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'aspeed-6.4-devicetree' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/joel/bmc into soc/dt ASPEED device tree updates for 6.4 - Fixes for romed8hm3 GPIO, asrock SPI clocks, bonnell eeprom - Misc updates for various BMC systems - Add AST2600 UDMA node * tag 'aspeed-6.4-devicetree' of git://git.kernel.org/pub/scm/linux/kernel/git/joel/bmc: ARM: dts: aspeed-g6: Add UDMA node ARM: dts: aspeed: greatlakes: add mctp device ARM: dts: aspeed: greatlakes: Add gpio names ARM: dts: aspeed: p10bmc: Change power supply info ARM: dts: aspeed: bonnell: Update eeprom size ARM: dts: aspeed: bonnell: Remove MAC3 ARM: dts: aspeed: everest: Add reserved memory for TPM event log ARM: dts: aspeed: mtmitchell: Enable NCSI ARM: dts: aspeed: asrock: Correct firmware flash SPI clocks ARM: dts: aspeed: e3c246d4i: Add PECI device ARM: dts: aspeed: romed8hm3: Fix GPIO polarity of system-fault LED Link: https://lore.kernel.org/r/CACPK8XfmK5S=1PQjBQHb6daDR3qTWN-_NLoXP7+ZDCk13wDxcA@mail.gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'arm-soc/for-6.4/devicetree-arm64' of ↵Arnd Bergmann
https://github.com/Broadcom/stblinux into soc/dt This pull request contains Broadcom ARM64-based SoCs Device Tree changes for 6.4, please pull the following: - Rob fixes the GICv3 ITS node name for the Stingray platforms - William adds the new-style High Speed SPI controller nodes to the BCA SocS - Rafal fixes the NAND controller interrupt name for BCM4908, LED node(s) and procmon for BCM4908. He also adds support for the USB ports, and declares USB triggered LEDs for the Netgear R8000P and TP-Link C2300. * tag 'arm-soc/for-6.4/devicetree-arm64' of https://github.com/Broadcom/stblinux: arm64: dts: broadcom: bcmbca: bcm4908: add TP-Link C2300 USB LED triggers arm64: dts: broadcom: bcmbca: bcm4908: add Netgear R8000P USB LED triggers arm64: dts: broadcom: bcmbca: bcm4908: add on-SoC USB ports arm64: dts: broadcom: bcmbca: bcm4908: fix procmon nodename arm64: dts: broadcom: bcmbca: bcm4908: fix LED nodenames arm64: dts: broadcom: bcmbca: bcm4908: fix NAND interrupt name arm64: dts: broadcom: bcmbca: Add spi controller node arm64: dts: broadcom: stringray: Fix GICv3 ITS node name Link: https://lore.kernel.org/r/20230410232606.1917803-2-f.fainelli@gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'arm-soc/for-6.4/devicetree' of ↵Arnd Bergmann
https://github.com/Broadcom/stblinux into soc/dt This pull request contains Broadcom ARM-based SoCs Device Tree changes for 6.4, please pull the following: - William adds the new-style High Speed SPI controller node to the BCA SoCs * tag 'arm-soc/for-6.4/devicetree' of https://github.com/Broadcom/stblinux: ARM: dts: broadcom: bcmbca: Add spi controller node Link: https://lore.kernel.org/r/20230410232606.1917803-1-f.fainelli@gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14ARM: dts: nomadik: Replace deprecated spi-gpio propertiesFabio Estevam
As stated in Documentation/devicetree/bindings/spi/spi-gpio.yaml, 'gpio-mosi' and 'gpio-sck' are deprecated properties. Use the recommeded 'mosi-gpios' and 'sck-gpios' instead. Signed-off-by: Fabio Estevam <festevam@denx.de> Link: https://lore.kernel.org/r/20230407162504.1683422-1-festevam@gmail.com Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Link: https://lore.kernel.org/r/20230410220300.2431524-1-linus.walleij@linaro.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'qcom-arm64-for-6.4' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into soc/dt Qualcomm ARM64 updates for v6.4 PCI I/O and MEM ranges are corrected across all targets with PCIe enabled. Likewise is CPU clocks defined to be provided from CPUfreq for a wide range of platforms, to satisfy the OPP definitions, and LLCC bank information is corrected for all relevant platforms. IPQ5332 gains SMEM, CPUfreq and support for triggering download mode. The MI01.2 board is introduced. On MSM8916 WCN compatibles are moved to be defined per board, to avoid issues when boards rely on the incorrect defaults. Support for Yiming UZ801 4G modem stick is introduced. XO clock is defined and fed to RPMCC on MSM8953 and MSM8976, to ensure clock trees are properly rooted. DSI clocks feeding into gcc are described on MSM8953. On MSM8996 the external audio components are moved from the SoC dtsi. A few DWC3 quirks are added. On MSM8998 GPIO names are introduced for Sony Xperia XZ Premium, XZ1 and XZ1 Compact. A numbe of boards have GPIO keys properly marked as wakeup-source. The SA8775P platform is extended with CPUfreq, UARTs, I2C controllers, SPI controllers, SPMI and PMICs, PDC support. The associated PMICs gains reset and power key support, as well as thermal zones defined. Nodes are sorted. On top of this the SA8775P Ride board/platform is introduced. On SC7180 and SC7280 a range of fixes coming from DeviceTree validation are introduced, some clearing up unused properties, others correcting errors. A number of Google rev0 boards on SC7180 are dropped, as these are not considered to be in use by anyone anymore. On SC8280XP RTC support is introduced and enabled for the CRD and Lenovo Thinkpad X13s. It gains another UART, upon which Bluetooth is enabled on the Lenovo ThinkPad X13s. The touchpad definition is altered to attempt to probe both devices seen in the wild. A number of bug fixes are also introduced, and the regulator definitions on X13s are corrected. On SDM845 dynamic power coefficients are improved. BWMON compatible is corrected. Xiaomi Pocophone F1 gains notification LED. Sony Xperia XZ2, XZ2 Compact and XZ3 gains display, touchscreen, gpu and remoteproc support. OnePlus 6 and 6T gains hall sensor. GPU clock controller and remoteproc nodes are added for SM6115. CPU clock are defined to come from CPUfreq. Board-specific USB-properties are moved out of the SoC dtsi. On SM6375 L3 scaling, IMEM, RMTFS, RPM sleep stats, Tsens, modem remoteproc and WiFi nodes are added. Tsens thermal zones are defined and additional low power states are defined. Sony Xperia 10 IV gains volume down key support. On SM8150 another UART is introduced, to be used by GNSS on the SA8155 ADP. Support for the Flash LED block in PM8150L is added. On SM8250 TPDM MM and PRNG is defined, MHI region is added to PCIe node. A few bug fixes are introduced after Devicetree validation. The DisplayPort controller on both SM8350 and SM8450 is defined and the related QMP instance is transitioned to the USB3/DP combo variant. IMEM and PIL info is introduced, for post mortem debugging of remoteprocs. On the HDK PMIC GLINK is enabled and role switch is enabled. Some audio resources are corrected. A typo in the USB role property of the Microsoft Surface is corrected, thanks to DeviceTree validation. PCIe controllers and PHYs descriptions are corrected, and pinctrl state definitions are moved from the soc to the board definition. BWMON compatibles are corrected. PM8550B gains the definition of the eUSB2 repeater and this is enabled on the MTP. PMIC GLINK is also defined for the MTP and connected to DWC3, for role switching support. In addition to this, a range of cleanups based on Devicetree validation is introduced. A few clock bindings are introduced, from topic-branches shared with the clock tree, to aid introduction of references to these. * tag 'qcom-arm64-for-6.4' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (256 commits) arm64: dts: qcom: sc8280xp-x13s: Add bluetooth arm64: dts: qcom: sc8280xp: Define uart2 arm64: dts: qcom: sc8280xp: Add "mhi" region to the PCIe nodes arm64: dts: qcom: sm8250: Add "mhi" region to the PCIe nodes arm64: dts: qcom: sdm845: Add "mhi" region to the PCIe nodes arm64: dts: qcom: sa8775p-ride: set gpio-line-names for PMIC GPIOs arm64: dts: qcom: sa8775p: add PMIC GPIO controller nodes arm64: dts: qcom: sa8775p: pmic: add thermal zones arm64: dts: qcom: sa8775p: pmic: add support for the pmm8654 RESIN input arm64: dts: qcom: sa8775p: pmic: add the power key arm64: dts: qcom: sa8775p: add the Power On device node arm64: dts: qcom: sa8775p: add support for the on-board PMICs arm64: dts: qcom: sa8775p: add the spmi node arm64: dts: qcom: sa8775p: add the pdc node arm64: dts: qcom: sa8775p: sort soc nodes by reg property arm64: dts: qcom: sa8775p: pad reg properties to 8 digits arm64: dts: qcom: sc8280xp: correct Soundwire wakeup interrupt name arm64: dts: qcom: sdm845-tama: Enable GPI_DMA0/1 arm64: dts: qcom: sdm845-tama: Enable GPU arm64: dts: qcom: sdm845-tama: Enable remoteprocs ... Link: https://lore.kernel.org/r/20230410170233.5931-1-andersson@kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'qcom-dts-for-6.4' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into soc/dt Qualcomm ARM32 DeviceTree updates for v6.4 stdout-path is defined for the ALFA Network AP120C-AC, to avoid the need to pass this information on the kernel commandline. Ath10k is wired up to read calibration data from the "ART" partition. PCI I/O port ranges are fixed on IPQ4019 and IPQ8064. Supply clocks are defined for KPSS L2CC and ACC clock controllers. Supply clocks for the global clock controller are being specified on IPQ4019, MSM8974 and MSM8226. PCIe RC support is enabled on the SDX55 T55 development board, IPA is defined for the SDX55 and a number of cleanup patches are introduced. Compatibles for QRB2210/QCM2290, IPQ9574, QRD8550 and IPQ5332 platforms are added, and the RB1, Yiming LTE dongle, Xiaomi Mi A3, MI01.2 and MI01.6 boards. * tag 'qcom-dts-for-6.4' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (28 commits) dt-bindings: arm: qcom: Add Yiming LTE dongle uz801-v3.0 (yiming-uz801v3) dt-bindings: vendor-prefixes: Add Henan Yiming Technology Co., Ltd. ARM: dts: qcom: sdx55: add dedicated SDX55 TCSR compatible ARM: dts: qcom: sdx55-t55: Move "status" property down ARM: dts: qcom: sdx55-t55: Enable PCIe RC support ARM: dts: qcom: sdx55: List the property values vertically ARM: dts: qcom: sdx55: Add support for PCIe RC controller ARM: dts: qcom: sdx55: Rename pcie0_{phy/lane} to pcie_{phy/lane} ARM: dts: qcom: sdx55: Fix the unit address of PCIe EP node ARM: dts: qcom: ipq8064: Fix the PCI I/O port range ARM: dts: qcom: ipq4019: Fix the PCI I/O port range ARM: dts: qcom: apq8064: Use 0x prefix for the PCI I/O and MEM ranges dt-bindings: arm: qcom: Add ipq9574 compatible ARM: dts: qcom: msm8974: add correct XO clock source to GCC node ARM: dts: qcom: msm8226: add clocks and clock-names to GCC node ARM: dts: qcom: rename kpss-acc-v2 nodes to power-manager nodes ARM: dts: qcom: add missing clock configuration for kpss-acc-v1 ARM: dts: qcom: add and fix clock configuration for kpss-gcc nodes ARM: dts: qcom: add per SoC compatible for qcom,kpss-gcc nodes dt-bindings: qcom: add ipq5332 boards ... Link: https://lore.kernel.org/r/20230410155226.5127-1-andersson@kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'ti-k3-dt-for-v6.4' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/ti/linux into soc/dt TI K3 device tree updates for v6.4 New features: * Overlays for CPSW9G and CPSW5G on J721e-evm, J7200-evm * Add support for AM625 based BeaglePlay, AM62-LP-SK * Audio, RTC, watchdog support for AM625 * McSPI for J7200,j721e, j721s2, J784s4 * ADC for j721s2 * Crypto acceleration, CPSW2G for J784s4 Non critical fixes: AM62, AM62a: * Fix schematics error to increase DDR to 4GB on AM62a-SK * L2Cache size fix (AM62a/AM625) * ti,vbus-divider property to USB1 on AM625-SK * Gpio count fix for AM625 J7200,j721e, j721s2, J784s4, AM68, AM69: * ti,sci-dev-id for J784s4 NAVSS nodes * j721e-sk: Drop application specific firmware name * am68-sk: Fix the gpio expander lines for production version Cleanups: * Pinmux header move to dt folder (next kernel PR, we will drop the uapi header). * j721e: ti,strobe-sel property cleanup for descoped HS400 MMC operation * tag 'ti-k3-dt-for-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/ti/linux: (34 commits) arm64: dts: ti: k3-j784s4-evm: Add eMMC mmc0 support arm64: dts: ti: Enable audio on SK-AM62(-LP) arm64: dts: ti: k3-am62-main: Add McASP nodes arm64: dts: ti: k3-j784s4: Add MCSPI nodes arm64: dts: ti: k3-j721s2: Add MCSPI nodes arm64: dts: ti: k3-j7200: Add MCSPI nodes arm64: dts: ti: k3-j721e: Add MCSPI nodes arm64: ti: dts: Add support for AM62x LP SK arm64: dts: ti: Refractor AM625 SK dts dt-bindings: arm: ti: k3: Add compatible for AM62x LP SK arm64: dts: ti: k3-am625-sk: Add ti,vbus-divider property to usbss1 arm64: dts: ti: k3-am68-sk-base-board: Update IO EXP GPIO lines for Rev E2 arm64: dts: ti: Add k3-am625-beagleplay dt-bindings: arm: ti: Add BeaglePlay arm64: dts: ti: k3-j7200: Add overlay to enable CPSW5G ports in QSGMII mode arm64: dts: ti: j7200-main: Add CPSW5G nodes arm64: dts: ti: k3-j721e: Add overlay to enable CPSW9G ports in QSGMII mode arm64: dts: ti: k3-j721e: Add CPSW9G nodes arm64: dts: ti: k3-j784s4-evm: Enable MCU CPSW2G arm64: dts: ti: k3-j721s2-common-proc-board: Add pinmux information for ADC ... Link: https://lore.kernel.org/r/20230410140521.3u3fftgnejakqnzj@shakable Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'renesas-dts-for-v6.4-tag2' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into soc/dt Renesas DTS updates for v6.4 (take two) - Add PWM support for the R-Car H1 and H2 SoCs, - Add slide switch and I2C support for the Marzen development board, - Add SCI (serial) and Camera support for the RZ/G2L SoC and the RZ/G2L SMARC EVK development board, - Add IOMMU support for the R-Car V4H SoC, - Miscellaneous fixes and improvements. * tag 'renesas-dts-for-v6.4-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel: arm64: dts: renesas: r8a779a0: Revise renesas,ipmmu-main arm64: dts: renesas: falcon-csi-dsi: Set bus-type for MAX96712 arm64: dts: renesas: r8a779g0: Add iommus to MMC node arm64: dts: renesas: r8a779g0: Add iommus to DMAC nodes arm64: dts: renesas: r8a779g0: Add IPMMU nodes arm64: dts: renesas: r8a779f0: Revise renesas,ipmmu-main arm64: dts: renesas: rzg2l-smarc: Enable CRU, CSI support arm64: dts: renesas: r9a07g044: Add CSI and CRU nodes arm64: dts: renesas: r9a07g044: Enable SCI0 using DT overlay ARM: dts: r8a7790: Add PWM device nodes ARM: dts: r8a7790: Add TPU device node ARM: dts: marzen: Enable I2C support ARM: dts: marzen: Add slide switches ARM: dts: r8a7779: Add PWM support dt-bindings: clock: r8a7779: Add PWM module clock arm64: dts: renesas: rzg2l: Add clock-names and reset-names to DMAC nodes Link: https://lore.kernel.org/r/cover.1681113117.git.geert+renesas@glider.be Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'v6.4-rockchip-dts32-1' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into soc/dt MMC-aliases for rk3288-veyron devices and some dts node adaptions for yaml conversions recently merged into the drm tree. * tag 'v6.4-rockchip-dts32-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip: ARM: dts: rockchip: fix rk3288 dp node ARM: dts: rockchip: fix rk3288 lvds node ARM: dts: rockchip: fix rk3288 dsi node ARM: dts: rockchip: Add mmc aliases for rk3288-veyron devices Link: https://lore.kernel.org/r/9713202.NyiUUSuA9g@phil Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'v6.4-rockchip-dts64-1' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into soc/dt New boards: OrangePi R1 Plus, NanoPi R2C + R5C + R5S, Khadas Edge2. General RK3588 additions: audio, thermal management, sdmmc, clock fixes, watchdog; RK3588-Rock5b: rtc, pwm, audio. Display support for Odroid Go Super and PinephonePro. And some misc adaptions for recently merged yaml binding conversions. * tag 'v6.4-rockchip-dts64-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip: (35 commits) arm64: dts: rockchip: correct panel supplies on Odroid Go Super arm64: dts: rockchip: Add rk3588-rock-5b analog audio arm64: dts: rockchip: Add I2S rk3588 nodes arm64: dts: rockchip: Add rk3588s I2S nodes arm64: dts: rockchip: Assign PLL_PPLL clock rate to 1.1 GHz on rk3588s arm64: dts: rockchip: Fix SCMI assigned clocks on rk3588s arm64: dts: rockchip: add rk3588 thermal sensor arm64: dts: rockchip: Add pwm-fan to rk3588-rock-5b arm64: dts: rockchip: Enable RTC support for Rock 5B arm64: dts: rockchip: Add Xunlong OrangePi R1 Plus LTS dt-bindings: Add doc for Xunlong OrangePi R1 Plus LTS arm64: dts: rockchip: Add FriendlyARM NanoPi R2C dt-bindings: Add doc for FriendlyARM NanoPi R2C arm64: dts: rockchip: Add touchscreen support to rk3399-pinephone-pro arm64: dts: rockchip: Add internal display support to rk3399-pinephone-pro dt-bindings: watchdog: rockchip: Add rockchip,rk3588-wdt string arm64: dts: rockchip: Enable watchdog support for RK3588 arm64: dts: rockchip: remove hclk from dsi node on rk356x arm64: dts: rockchip: rename vbus-supply to phy-supply in rk3566-box-demo.dts arm64: dts: rockchip: fix rk3399 dp node ... Link: https://lore.kernel.org/r/7289562.MhkbZ0Pkbq@phil Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'sunxi-dt-for-6.4-1' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into soc/dt - added D1 crypto node - enabled DVFS on OrangePi PC2 board - added GPIO line names on Nezha D1 board - added suniv USB nodes and enabled on licheepi-nano - new suniv boards: PopStick v1.1 and Lctech Pi - added Allwinner T113-s DTSI - added MangoPi MQ-R T113-s board variant - swapped DMA names for A23, A31, A33, D1, H3, H5, V3s * tag 'sunxi-dt-for-6.4-1' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux: riscv: dts: allwinner: d1: Switch dma-names order for snps,dw-apb-uart nodes ARM: dts: sunxi: h3/h5: Switch dma-names order for snps,dw-apb-uart nodes ARM: dts: sun8i: v3s: Switch dma-names order for snps,dw-apb-uart nodes ARM: dts: sun8i: a23/a33: Switch dma-names order for snps,dw-apb-uart nodes ARM: dts: sun6i: a31: Switch dma-names order for snps,dw-apb-uart nodes ARM: dts: sunxi: add MangoPi MQ-R-T113 board dt-bindings: arm: sunxi: document MangoPi MQ-R board names ARM: dts: sunxi: add Allwinner T113-s SoC .dtsi dts: add riscv include prefix link ARM: dts: suniv: Add Lctech Pi F1C200s devicetree ARM: dts: suniv: add device tree for PopStick v1.1 dt-binding: arm: sunxi: add two board compatible strings dt-bindings: vendor-prefixes: add Source Parts and Lctech names ARM: dts: suniv: licheepi-nano: enable USB ARM: dts: suniv: add USB-related device nodes riscv: dts: nezha-d1: add gpio-line-names arm64: dts: allwinner: h5: OrangePi PC2: add OPP table to enable DVFS riscv: dts: allwinner: d1: Add crypto engine node Link: https://lore.kernel.org/r/20230408125156.GA17050@jernej-laptop Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14x86/hyperv: Mark hv_ghcb_terminate() as noreturnGuilherme G. Piccoli
Annotate the function prototype and definition as noreturn to prevent objtool warnings like: vmlinux.o: warning: objtool: hyperv_init+0x55c: unreachable instruction Also, as per Josh's suggestion, add it to the global_noreturns list. As a comparison, an objdump output without the annotation: [...] 1b63: mov $0x1,%esi 1b68: xor %edi,%edi 1b6a: callq ffffffff8102f680 <hv_ghcb_terminate> 1b6f: jmpq ffffffff82f217ec <hyperv_init+0x9c> # unreachable 1b74: cmpq $0xffffffffffffffff,-0x702a24(%rip) [...] Now, after adding the __noreturn to the function prototype: [...] 17df: callq ffffffff8102f6d0 <hv_ghcb_negotiate_protocol> 17e4: test %al,%al 17e6: je ffffffff82f21bb9 <hyperv_init+0x469> [...] <many insns> 1bb9: mov $0x1,%esi 1bbe: xor %edi,%edi 1bc0: callq ffffffff8102f680 <hv_ghcb_terminate> 1bc5: nopw %cs:0x0(%rax,%rax,1) # end of function Reported-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Guilherme G. Piccoli <gpiccoli@igalia.com> Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Reviewed-by: Michael Kelley <mikelley@microsoft.com> Link: https://lore.kernel.org/r/32453a703dfcf0d007b473c9acbf70718222b74b.1681342859.git.jpoimboe@kernel.org
2023-04-14x86/cpu: Mark {hlt,resume}_play_dead() __noreturnJosh Poimboeuf
Fixes the following warning: vmlinux.o: warning: objtool: resume_play_dead+0x21: unreachable instruction Reported-by: kernel test robot <lkp@intel.com> Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Link: https://lore.kernel.org/r/ce1407c4bf88b1334fe40413126343792a77ca50.1681342859.git.jpoimboe@kernel.org
2023-04-14cpu: Mark nmi_panic_self_stop() __noreturnJosh Poimboeuf
In preparation for improving objtool's handling of weak noreturn functions, mark nmi_panic_self_stop() __noreturn. Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Link: https://lore.kernel.org/r/316fc6dfab5a8c4e024c7185484a1ee5fb0afb79.1681342859.git.jpoimboe@kernel.org
2023-04-14cpu: Mark panic_smp_self_stop() __noreturnJosh Poimboeuf
In preparation for improving objtool's handling of weak noreturn functions, mark panic_smp_self_stop() __noreturn. Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Link: https://lore.kernel.org/r/92d76ab5c8bf660f04fdcd3da1084519212de248.1681342859.git.jpoimboe@kernel.org
2023-04-14arm64/cpu: Mark cpu_park_loop() and friends __noreturnJosh Poimboeuf
In preparation for marking panic_smp_self_stop() __noreturn across the kernel, first mark the arm64 implementation of cpu_park_loop() and related functions __noreturn. Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Link: https://lore.kernel.org/r/55787d3193ea3e295ccbb097abfab0a10ae49d45.1681342859.git.jpoimboe@kernel.org
2023-04-14x86/head: Mark *_start_kernel() __noreturnJosh Poimboeuf
Now that start_kernel() is __noreturn, mark its chain of callers __noreturn. Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Link: https://lore.kernel.org/r/c2525f96b88be98ee027ee0291d58003036d4120.1681342859.git.jpoimboe@kernel.org
2023-04-14init: Mark [arch_call_]rest_init() __noreturnJosh Poimboeuf
In preparation for improving objtool's handling of weak noreturn functions, mark start_kernel(), arch_call_rest_init(), and rest_init() __noreturn. Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Reviewed-by: Nick Desaulniers <ndesaulniers@google.com> Link: https://lore.kernel.org/r/7194ed8a989a85b98d92e62df660f4a90435a723.1681342859.git.jpoimboe@kernel.org
2023-04-14Merge tag 'imx-dt64-6.4' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into soc/dt i.MX arm64 device tree changes for 6.4: - New board device trees: Apalis quadmax, DH electronics i.MX8M Plus DHCOM and PDK3, Data Modul i.MX8M Plus eDM SBC, Colibri Aster and Iris, etc. - Add FlexSPI, BBNSM and TPM PWM devices for i.MX93 SoC. - A series of imx8mq-librem5 udpates which includes minor fixes, magnetometer, CSI/camera support, and powersaving improvements. - Add Cadence USB3 support for i.MX8QXP. - Add FlexCAN support for i.MX8QXP and i.MX8QM. - Add UART DMA support for i.MX8MQ. - Add GPT devices for i.MX8MP. - Add VPU decoder and encoder support for i.MX8QM. - Add display pipeline and PCIe EP support for i.MX8M family SoCs. - A series from Peng Fan updating various i.MX8M device trees to pinctrl nodes match DT schema. - A series from Philippe Schenker improving colibri-imx8x device trees in various aspects. - Other random device tree updates. * tag 'imx-dt64-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (87 commits) arm64: dts: imx8mp: Add support for Data Modul i.MX8M Plus eDM SBC arm64: dts: imx8mp: Add display pipeline components arm64: dts: imx8mn: Add display pipeline components arm64: dts: imx8mm: Add display pipeline components arm64: dts: freescale: imx8qxp-mek: enable cadence usb3 arm64: dts: imx8qxp: add cadence usb3 support arm64: dts: imx8mq-librem5: add missing #clock-cells arm64: dts: imx8mm-prt8mm: update pinctrl to match dtschema arm64: dts: imx8mn-bsh-smm: update pinctrl to match dtschema arm64: dts: imx8mm-emcon: update pinctrl to match dtschema arm64: dts: imx8mq-librem5: update pinctrl to match dtschema arm64: dts: imx8mm-ddr4-evk: update gpmi pinctrl to match dtschema arm64: dts: imx8mn-evk: update i2c pinctrl to match dtschema arm64: dts: imx8mp: Add GPT blocks arm64: dts: imx8-apalis-v1.1: drop ci-disable-lpm arm64: dts: imx8dxl: drop clocks from scu clock controller arm64: dts: imx8mp: verdin-yavia: drop disable-over-current arm64: dts: imx8mq: tqma8mq-mba8mx: drop disable-over-current arm64: dts: imx8mp: Add support for DH electronics i.MX8M Plus DHCOM and PDK3 arm64: dts: colibri-imx8x: Add iris v2 carrier board ... Link: https://lore.kernel.org/r/20230408101928.280271-5-shawnguo@kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'imx-dt-6.4' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into soc/dt i.MX arm32 device tree changes for 6.4: - New board device trees: Tolino Vison, chargebyte Tarragon, new revision of the IOTA board. - A couple of imx7d-remarkable2 update to enable cyttsp5 touch and BD71815 PMIC. - A series from Oleksij Rempel to configure Ethernet reference clock from device tree. - A series from Stefan Wahren to use label references for i.MX28 based boards. * tag 'imx-dt-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (31 commits) ARM: dts: imx6ull: Add chargebyte Tarragon support ARM: dts: imx: Add devicetree for Tolino Vison ARM: dts: imx6dl-yapp43: Add support for new HW revision of the IOTA board ARM: dts: imx6dl-yapp4: Remove unneeded status "okay" ARM: dts: imx6dl-yapp4: Move status to the end of property list ARM: dts: imx6dl-yapp4: Move phy reset into switch node ARM: dts: imx28-tx28: add SPDX-License-Identifier ARM: dts: imx28-ts4600: Convert to use label references ARM: dts: imx28-evk: Convert to use label references ARM: dts: imx28-duckbill-2: Include base board ARM: dts: imx28-duckbill: Convert to use label references ARM: dts: imx28-cfa10036: Convert to use label references ARM: dts: imx28-apx4devkit: Convert to use label references ARM: dts: imx28-m28/sps1: Convert to use label references ARM: dts: imx28-apf28: Convert to use label references ARM: dts: imx7d-remarkable2: Enable the rohm,bd71815 ARM: dts: imx7d-remarkable2: Enable the cyttsp5 ARM: dts: imx6dl-yapp4: Use reset-gpios property name ARM: dts: imx6ul-prti6g: configure ethernet reference clock parent ARM: dts: imx6ul: set enet_clk_ref to CLK_ENETx_REF_SEL ... Link: https://lore.kernel.org/r/20230408101928.280271-4-shawnguo@kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14x86/linkage: Fix padding for typed functionsJosh Poimboeuf
CFI typed functions are failing to get padded properly for CONFIG_CALL_PADDING. Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Link: https://lkml.kernel.org/r/721f0da48d2a49fe907225711b8b76a2b787f9a8.1681331135.git.jpoimboe@kernel.org
2023-04-14arm64: kernel: Fix kernel warning when nokaslr is passed to commandlinePavankumar Kondeti
'Unknown kernel command line parameters "nokaslr", will be passed to user space' message is noticed in the dmesg when nokaslr is passed to the kernel commandline on ARM64 platform. This is because nokaslr param is handled by early cpufeature detection infrastructure and the parameter is never consumed by a kernel param handler. Fix this warning by providing a dummy kernel param handler for nokaslr. Signed-off-by: Pavankumar Kondeti <quic_pkondeti@quicinc.com> Link: https://lore.kernel.org/r/20230412043258.397455-1-quic_pkondeti@quicinc.com Signed-off-by: Will Deacon <will@kernel.org>
2023-04-14Merge tag 'stm32-dt-for-v6.4-1' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32 into soc/dt STM32 DT for v6.4, round 1 Highlights: ---------- - MPU: - STM32MP13: - Add FMC support. - Add QSPI support. - Add 8 UART instances nodes. - Enable UART on STM32MP135F-DK: -UART1/UART8 used on expansion connector. -UART2 used for BT. -UART4 used for console. - STMP32MP15: - Add STM32MP151 support ( documentation + machine). - Uart fixes (slew rate, aliases clean-up). - Fix GPU YAMl issue. * tag 'stm32-dt-for-v6.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32: ARM: stm32: add initial documentation for STM32MP151 ARM: dts: stm32: Add QSPI support on STM32MP13x SoC family ARM: dts: stm32: add FMC support on STM32MP13x SoC family ARM: dts: stm32: YAML validation fails for Argon Boards ARM: dts: stm32: YAML validation fails for Odyssey Boards ARM: dts: stm32: YAML validation fails for STM32MP15 ST Boards ARM: dts: stm32: add uart nodes and uart aliases on stm32mp135f-dk ARM: dts: stm32: add pins for usart2/1/4/8 in stm32mp13-pinctrl ARM: dts: stm32: add uart nodes on stm32mp13 ARM: dts: stm32: clean uart aliases on stm32mp15xx-exx boards ARM: dts: stm32: clean uart aliases on stm32mp15xx-dkx boards ARM: dts: stm32: fix slew-rate of USART2 on stm32mp15xx-dkx ARM: stm32: add support for STM32MP151 ARM: dts: stm32: fix spi1 pin assignment on stm32mp15 ARM: dts: stm32: drop invalid simple-panel compatible on stm32mp157c-lxa ARM: dts: stm32: Add coprocessor detach mbox on stm32mp15xx-osd32 SoM Link: https://lore.kernel.org/r/63987ed6-2813-15ff-e058-73312a730d61@foss.st.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'riscv-dt-for-v6.4' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux into soc/dt RISC-V Devicetrees for v6.4 Microchip: A "fix" for the system controller's regs on PolarFire SoC, adding a missing reg property. The patch had been sitting there for months and I only re-found it recently, so you can guess how much of a "fix" it actually is. It'll become needed when the system controller's QSPI gets added in the future, but at present there's no urgency as the driver can handle both the current and "fixed" versions. StarFive: Basic support for the JH7110 & the associated first-party dev board, the VisionFive v2 (in two forms). There's a bunch of dt-bindings required for this too, all of which have had input from the DT folk. There's enough in this tag to boot to a console w/ an initramfs but little more. The SoC supports some of the "new" bit manipulation instructions, which is a good test for the recently added Zbb support in the kernel. Signed-off-by: Conor Dooley <conor.dooley@microchip.com> * tag 'riscv-dt-for-v6.4' of https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux: riscv: dts: starfive: Add StarFive JH7110 VisionFive 2 board device tree riscv: dts: starfive: Add StarFive JH7110 pin function definitions riscv: dts: starfive: Add initial StarFive JH7110 device tree dt-bindings: riscv: Add SiFive S7 compatible dt-bindings: interrupt-controller: Add StarFive JH7110 plic dt-bindings: timer: Add StarFive JH7110 clint dt-bindings: clock: Add StarFive JH7110 always-on clock and reset generator dt-bindings: clock: Add StarFive JH7110 system clock and reset generator riscv: dts: microchip: fix the mpfs' mailbox regs riscv: dts: microchip: add mpfs specific macb reset support Link: https://lore.kernel.org/r/20230406-shank-impromptu-3d483bbc249f@spud Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'tegra-for-6.4-arm64-dt' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into soc/dt arm64: tegra: Device tree changes for v6.4-rc1 This adds support for the Jetson Orin NX and includes updates for Jetson AGX Orin (audio codec, USB Type-C support). * tag 'tegra-for-6.4-arm64-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux: arm64: tegra: Add vccmq on Jetson TX2 arm64: tegra: Populate USB Type-C Controller for Jetson AGX Orin arm64: tegra: Audio codec support on Jetson AGX Orin arm64: tegra: Support Jetson Orin NX reference platform arm64: tegra: Support Jetson Orin NX dt-bindings: tegra: Document Jetson Orin NX reference platform dt-bindings: tegra: Document Jetson Orin NX arm64: tegra: Add DSU PMUs for Tegra234 arm64: tegra: Drop serial clock-names and reset-names Link: https://lore.kernel.org/r/20230406124804.970394-6-thierry.reding@gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'tegra-for-6.4-arm-dt' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into soc/dt ARM: tegra: Device tree changes for v6.4-rc1 There are several fixes and cleanups here for some of the older Tegra consumer devices. * tag 'tegra-for-6.4-arm-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux: ARM: tegra30: Use cpu* labels ARM: tegra30: peripherals: Add 266.5MHz nodes ARM: tegra: asus-tf101: Fix accelerometer mount matrix ARM: tegra: transformers: Bind RT5631 sound nodes ARM: tegra: transformers: Update WM8903 sound nodes Link: https://lore.kernel.org/r/20230406124804.970394-5-thierry.reding@gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'asahi-soc-dt-6.4' of https://github.com/AsahiLinux/linux into soc/dtArnd Bergmann
Apple SoC DT updates for 6.4. This time we have the M2 (t8112) device trees and compatible updates, as well as a minor fix for PCIe ports on the prior models. * tag 'asahi-soc-dt-6.4' of https://github.com/AsahiLinux/linux: arm64: dts: apple: t600x: Disable unused PCIe ports arm64: dts: apple: t8103: Disable unused PCIe ports arm64: dts: apple: t8112: Initial t8112 (M2) device trees dt-bindings: arm: apple: Add t8112 j413/j473/j493 compatibles dt-bindings: clock: apple,nco: Add t8112-nco compatible dt-bindings: i2c: apple,i2c: Add apple,t8112-i2c compatible dt-bindings: pinctrl: apple,pinctrl: Add apple,t8112-pinctrl compatible dt-bindings: pci: apple,pcie: Add t8112 support dt-bindings: nvme: apple: Add apple,t8112-nvme-ans2 compatible string dt-bindings: mailbox: apple,mailbox: Add t8112 compatibles dt-bindings: iommu: apple,sart: Add apple,t8112-sart compatible string dt-bindings: interrupt-controller: apple,aic2: Add apple,t8112-aic compatible dt-bindings: arm: cpus: Add apple,avalanche & blizzard compatibles dt-bindings: watchdog: apple,wdt: Add t8112-wdt compatible dt-bindings: arm: apple: apple,pmgr: Add t8112-pmgr compatible dt-bindings: power: apple,pmgr-pwrstate: Add t8112 compatible Link: https://lore.kernel.org/r/7263df01-aebc-2db5-f074-4805e0ae9fbc@marcan.st Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'samsung-dt-6.4' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into soc/dt Samsung DTS ARM changes for v6.4 1. Several cleanups and improvements as a result of dtbs_checks: align node names with bindings, drop incorrect properties, fix clock-names, add missing "ports" node. 2. Move DP and MIPI phys to PMU node (DTS with binding change). 3. Drop old MSHC aliases (while adding proper mmc-ddr-1_8v which was selected by the driver based on the MSHC alias) and add generic MMC aliases in each board. The aliases match known numbering in the schematics. * tag 'samsung-dt-6.4' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux: dt-bindings: soc: samsung: exynos-pmu: allow phys as child on Exynos3 and Exynos4 ARM: dts: exynos: add mmc aliases ARM: dts: exynos: replace mshc0 alias with mmc-ddr-1_8v property ARM: dts: exynos: fix MCT compatible in Universal C210 ARM: dts: exynos: move DP and MIPI phys to PMU node in Exynos5250 ARM: dts: exynos: move DP and MIPI phys to PMU node in Exynos5420 ARM: dts: exynos: move MIPI phy to PMU node in Exynos4 ARM: dts: exynos: move MIPI phy to PMU node in Exynos3250 ARM: dts: exynos: drop unused samsung,camclk-out property in Midas ARM: dts: s5pv210: correct MIPI CSIS clock name ARM: dts: exynos: correct whitespace in Midas ARM: dts: exynos: fix WM8960 clock name in Itop Elite ARM: dts: exynos: add ports to TC358764 bridge on Arndale ARM: dts: exynos: drop fake align STMPE properties in P4 Note ARM: dts: exynos: align STMPE ADC node name with bindings in P4 Note Link: https://lore.kernel.org/r/20230405080438.156805-2-krzysztof.kozlowski@linaro.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'samsung-dt64-6.4' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into soc/dt Samsung DTS ARM64 changes for v6.4 1. Exynos850: add headers with AUD, G3D and HSI clock controller clock IDs. Add G3D (GPU) clock controller node. 2. Exynos5433: fixes for dtbs_check: move MIPI phy to PMU node. 3. Drop old MSHC aliases (while adding proper mmc-ddr-1_8v which was selected by the driver based on the MSHC alias) and add generic MMC aliases in each board. The aliases match known numbering in the schematics. * tag 'samsung-dt64-6.4' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux: arm64: dts: exynos: add mmc aliases arm64: dts: exynos: drop mshc aliases arm64: dts: exynos: Add CMU_G3D node for Exynos850 SoC arm64: dts: exynos: move MIPI phy to PMU node in Exynos5433 dt-bindings: clock: exynos850: Add AUD and HSI main gate clocks dt-bindings: clock: exynos850: Add Exynos850 CMU_G3D Link: https://lore.kernel.org/r/20230405080438.156805-1-krzysztof.kozlowski@linaro.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14ARM: pxa: Use of_property_read_bool() for boolean propertiesRob Herring
It is preferred to use typed property access functions (i.e. of_property_read_<type> functions) rather than low-level of_get_property/of_find_property functions for reading properties. Convert reading boolean properties to to of_property_read_bool(). Signed-off-by: Rob Herring <robh@kernel.org> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14arm64: kgdb: Set PSTATE.SS to 1 to re-enable single-stepSumit Garg
Currently only the first attempt to single-step has any effect. After that all further stepping remains "stuck" at the same program counter value. Refer to the ARM Architecture Reference Manual (ARM DDI 0487E.a) D2.12, PSTATE.SS=1 should be set at each step before transferring the PE to the 'Active-not-pending' state. The problem here is PSTATE.SS=1 is not set since the second single-step. After the first single-step, the PE transferes to the 'Inactive' state, with PSTATE.SS=0 and MDSCR.SS=1, thus PSTATE.SS won't be set to 1 due to kernel_active_single_step()=true. Then the PE transferes to the 'Active-pending' state when ERET and returns to the debugger by step exception. Before this patch: ================== Entering kdb (current=0xffff3376039f0000, pid 1) on processor 0 due to Keyboard Entry [0]kdb> [0]kdb> [0]kdb> bp write_sysrq_trigger Instruction(i) BP #0 at 0xffffa45c13d09290 (write_sysrq_trigger) is enabled addr at ffffa45c13d09290, hardtype=0 installed=0 [0]kdb> go $ echo h > /proc/sysrq-trigger Entering kdb (current=0xffff4f7e453f8000, pid 175) on processor 1 due to Breakpoint @ 0xffffad651a309290 [1]kdb> ss Entering kdb (current=0xffff4f7e453f8000, pid 175) on processor 1 due to SS trap @ 0xffffad651a309294 [1]kdb> ss Entering kdb (current=0xffff4f7e453f8000, pid 175) on processor 1 due to SS trap @ 0xffffad651a309294 [1]kdb> After this patch: ================= Entering kdb (current=0xffff6851c39f0000, pid 1) on processor 0 due to Keyboard Entry [0]kdb> bp write_sysrq_trigger Instruction(i) BP #0 at 0xffffc02d2dd09290 (write_sysrq_trigger) is enabled addr at ffffc02d2dd09290, hardtype=0 installed=0 [0]kdb> go $ echo h > /proc/sysrq-trigger Entering kdb (current=0xffff6851c53c1840, pid 174) on processor 1 due to Breakpoint @ 0xffffc02d2dd09290 [1]kdb> ss Entering kdb (current=0xffff6851c53c1840, pid 174) on processor 1 due to SS trap @ 0xffffc02d2dd09294 [1]kdb> ss Entering kdb (current=0xffff6851c53c1840, pid 174) on processor 1 due to SS trap @ 0xffffc02d2dd09298 [1]kdb> ss Entering kdb (current=0xffff6851c53c1840, pid 174) on processor 1 due to SS trap @ 0xffffc02d2dd0929c [1]kdb> Fixes: 44679a4f142b ("arm64: KGDB: Add step debugging support") Co-developed-by: Wei Li <liwei391@huawei.com> Signed-off-by: Wei Li <liwei391@huawei.com> Signed-off-by: Sumit Garg <sumit.garg@linaro.org> Tested-by: Douglas Anderson <dianders@chromium.org> Acked-by: Daniel Thompson <daniel.thompson@linaro.org> Tested-by: Daniel Thompson <daniel.thompson@linaro.org> Link: https://lore.kernel.org/r/20230202073148.657746-3-sumit.garg@linaro.org Signed-off-by: Will Deacon <will@kernel.org>
2023-04-14Merge tag 'arm-soc/for-6.4/soc' of https://github.com/Broadcom/stblinux into ↵Arnd Bergmann
soc/arm This pull request contains ARM-based platform code changes for 6.4, please pull the following: - Rob makes use of the of_address_to_resource() helper instead of open coding it in the Kona SMC code. * tag 'arm-soc/for-6.4/soc' of https://github.com/Broadcom/stblinux: ARM: bcm: Use of_address_to_resource() Link: https://lore.kernel.org/r/20230410232606.1917803-4-f.fainelli@gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'renesas-arm-soc-for-v6.4-tag1' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into soc/arm Renesas ARM SoC updates for v6.4 - Use of_cpu_node_to_id() to read CPU node 'reg'. * tag 'renesas-arm-soc-for-v6.4-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel: ARM: sh-mobile: Use of_cpu_node_to_id() to read CPU node 'reg' Link: https://lore.kernel.org/r/cover.1681113113.git.geert+renesas@glider.be Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'imx-soc-6.4' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into soc/arm i.MX SoC changes for 6.4: - A couple of changes from Oleksij Rempel which make it possible to configure Ethernet refclock from device tree. - Use common DT helpers to test DT property presence and read boolean properties. * tag 'imx-soc-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: ARM: imx: Use of_property_read_bool() for boolean properties ARM: mxs: Use of_property_present() for testing DT property presence ARM: mach-imx: imx6ul: remove not optional ethernet refclock overwrite ARM: imx6q: skip ethernet refclock reconfiguration if enet_clk_ref is present Link: https://lore.kernel.org/r/20230408101928.280271-2-shawnguo@kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'samsung-soc-6.4' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into soc/arm Samsung mach/soc changes for v6.4 Cleanup of OF-related functions: use of_property_read_bool() for reading bool and of_address_to_resource() for mapping MMIO. * tag 'samsung-soc-6.4' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux: ARM: EXYNOS: Use of_address_to_resource() ARM: exynos: Use of_property_read_bool() for boolean properties Link: https://lore.kernel.org/r/20230405080438.156805-3-krzysztof.kozlowski@linaro.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'tegra-for-6.4-arm64-defconfig' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into soc/defconfig arm64: tegra: Default configuration changes for v6.4-rc1 Contains a single patch to enable the Coresight System PMU driver. * tag 'tegra-for-6.4-arm64-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux: arm64: defconfig: Enable ARM CoreSight PMU driver Link: https://lore.kernel.org/r/20230406124804.970394-7-thierry.reding@gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'imx-defconfig-6.4' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into soc/defconfig i.MX defconfig updates for 6.4: - Enable i.MX93 ADC driver in arm64 defconfig. - Enable BD71815 PMIC and TDA998X HDMI bridge driver in imx_v6_v7_defconfig. - Enable a few drivers support needed by Tarragon boards in imx_v6_v7_defconfig. - Build IMX_SDMA driver as module in imx_v4_v5_defconfig. * tag 'imx-defconfig-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: ARM: imx_v4_v5_defconfig: Build CONFIG_IMX_SDMA as module ARM: imx_v6_v7_defconfig: Enable Tarragon peripheral drivers ARM: imx_v6_v7_defconfig: Select CONFIG_DRM_I2C_NXP_TDA998X arm64: defconfig: Enable i.MX93 ADC support ARM: imx_v6_v7_defconfig: Enable rohm,bd71815 Link: https://lore.kernel.org/r/20230408101928.280271-6-shawnguo@kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'ti-k3-config-for-v6.4' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/ti/linux into soc/defconfig arm64: TI K3 defconfig updates for v6.4 * Enable drivers for BeaglePlay and Audio drivers for AM62-SK For this tag, Bloat-o-meter reports (17.0.0 + v6.3-rc1 base): add/remove: 61/2 grow/shrink: 3/1 up/down: 17852/-208 (17644) [...] Total: Before=27746954, After=27764598, chg +0.06% * tag 'ti-k3-config-for-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/ti/linux: arm64: defconfig: Enable audio drivers for AM62-SK arm64: defconfig: Enable drivers for BeaglePlay Link: https://lore.kernel.org/r/20230410140517.ovxnagc4xh3gqath@canary Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'qcom-arm64-defconfig-for-6.4' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into soc/defconfig Qualcomm ARM64 defconfig updates for v6.4 This enables a range of TLMM pinctrl drivers, needed to boot related platforms. Multimedia clock drivers for MSM8994 and MSM8998 are enabled and the MSM8996 is flagged as a module instead of builtin. The PMIC_GLINK drivers are enabled, providing USB Type-C and battery support on various platforms, and eUSB2 drivers found on SM8550 are enabled. Base drivers for IPQ5332 and IPQ9574 are enabled. * tag 'qcom-arm64-defconfig-for-6.4' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: arm64: defconfig: Enable IPQ9574 SoC base configs arm64: defconfig: remove duplicate TYPEC_UCSI & QCOM_PMIC_GLINK arm64: defconfig: add PMIC GLINK modules arm64: defconfig: enable Qualcomm pin controller drivers arm64: defconfig: Enable qcom msm899{4,8} clk drivers arm64: defconfig: Switch msm8996 clk drivers to module arm64: defconfig: Enable QCOM eUSB2 SNPS PHY and repeater arm64: defconfig: Enable IPQ5332 SoC base configs Link: https://lore.kernel.org/r/20230410155955.5329-1-andersson@kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14ARM: multi_v7_defconfig: Add OPTEE supportAlexandre Torgue
STM32MP13 platform relies on OPTEE to boot: Clocks and regulators are handled in the secure world by OPTEE and exported to the non secure world (LINUX) thanks to ARM SCMI protocol. Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com> Link: https://lore.kernel.org/r/20230413072042.30657-1-alexandre.torgue@foss.st.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14ARM: configs: Update U8500 defconfigLinus Walleij
Update the U8500 defconfig accordingly: - Add the NFC modules used by some U8500-based systems. - Switch out the now deleted UX500 crypto drivers to the STM32 drivers that we have augmented to work with UX500. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Link: https://lore.kernel.org/r/20230405105439.1739575-1-linus.walleij@linaro.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'qcom-arm64-fixes-for-6.3-2' of ↵Arnd Bergmann
https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/fixes A few more Qualcomm ARM64 DeviceTree fixes for 6.3 The GPIO polarity of the WSA881x shutdown GPIO was inconsistent and had to be corrected in the driver, this fixes the polarity in the DeviceTree for QRB5165 RB5, SM8250 MTP, Samsung Galaxy Book 2 and Lenovo Yoga C630. The recent rearrangement of nodes among the IPQ8074 accidentally enabled the PCIe PHYs, rather than the PCIe controllers. This is being corrected, to restore PCIe functionality. PMK8280 PON node has the wrong compatible, which recently caused the driver to stop probing. This is corrected and the required "pbs" region is added. With support for HBR3 introduced, it's noted that SC7280 Herobrine devices are having trouble running at this rate. This drops the claim that it's supported, until further analysis can be done. * tag 'qcom-arm64-fixes-for-6.3-2' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: arm64: dts: qcom: sc7280: remove hbr3 support on herobrine boards arm64: dts: qcom: sc8280xp-pmics: fix pon compatible and registers arm64: dts: qcom: ipq8074-hk10: enable QMP device, not the PHY node arm64: dts: qcom: ipq8074-hk01: enable QMP device, not the PHY node arm64: dts: qcom: qrb5165-rb5: Use proper WSA881x shutdown GPIO polarity arm64: dts: qcom: sm8250-mtp: Use proper WSA881x shutdown GPIO polarity arm64: dts: qcom: sdm850-samsung-w737: Use proper WSA881x shutdown GPIO polarity arm64: dts: qcom: sdm850-lenovo-yoga-c630: Use proper WSA881x shutdown GPIO polarity Link: https://lore.kernel.org/r/20230410153850.4752-1-andersson@kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge tag 'v6.3-rockchip-dtsfixes1' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into arm/fixes Lower sd card speeds for two boards to make them run more reliable, missing 32k clock definition for Anbric xx3 devices, missing cache-levels for rk3588, fixed rk3326-board display supplies and more dt-schema fixes. * tag 'v6.3-rockchip-dtsfixes1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip: arm64: dts: rockchip: correct panel supplies on some rk3326 boards arm64: dts: rockchip: use just "port" in panel on RockPro64 arm64: dts: rockchip: use just "port" in panel on Pinebook Pro arm64: dts: rockchip: Remove non-existing pwm-delay-us property arm64: dts: rockchip: Add clk_rtc_32k to Anbernic xx3 Devices arm64: dts: rockchip: add rk3588 cache level information arm64: dts: rockchip: Lower SD card speed on rk3399 Pinebook Pro arm64: dts: rockchip: Lower sd speed on rk3566-soquartz ARM: dts: rockchip: fix a typo error for rk3288 spdif node arm64: dts: rockchip: Fix rk3399 GICv3 ITS node name Link: https://lore.kernel.org/r/10559306.CDJkKcVGEf@phil Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14Merge branches 'iommu/fixes', 'arm/allwinner', 'arm/exynos', 'arm/mediatek', ↵Joerg Roedel
'arm/omap', 'arm/renesas', 'arm/rockchip', 'arm/smmu', 'ppc/pamu', 'unisoc', 'x86/vt-d', 'x86/amd', 'core' and 'platform-remove_new' into next
2023-04-14KVM: arm64: vhe: Drop extra isb() on guest exitMarc Zyngier
__kvm_vcpu_run_vhe() end on VHE with an isb(). However, this function is only reachable via kvm_call_hyp_ret(), which already contains an isb() in order to mimick the behaviour of nVHE and provide a context synchronisation event. We thus have two isb()s back to back, which is one too many. Drop the first one and solely rely on the one in the helper. Signed-off-by: Marc Zyngier <maz@kernel.org> Reviewed-by: Oliver Upton <oliver.upton@linux.dev>
2023-04-14KVM: arm64: vhe: Synchronise with page table walker on MMU updateMarc Zyngier
Contrary to nVHE, VHE is a lot easier when it comes to dealing with speculative page table walks started at EL1. As we only change EL1&0 translation regime when context-switching, we already benefit from the effect of the DSB that sits in the context switch code. We only need to take care of it in the NV case, where we can flip between between two EL1 contexts (one of them being the virtual EL2) without a context switch. Signed-off-by: Marc Zyngier <maz@kernel.org> Reviewed-by: Oliver Upton <oliver.upton@linux.dev>
2023-04-14KVM: arm64: pkvm: Document the side effects of kvm_flush_dcache_to_poc()Marc Zyngier
We rely on the presence of a DSB at the end of kvm_flush_dcache_to_poc() that, on top of ensuring completion of the cache clean, also covers the speculative page table walk started from EL1. Document this dependency. Signed-off-by: Marc Zyngier <maz@kernel.org> Reviewed-by: Oliver Upton <oliver.upton@linux.dev>