linux.git
13 months agoMerge tag 'zynqmp-dt-for-6.9' of https://github.com/Xilinx/linux-xlnx into soc/dt
Arnd Bergmann [Fri, 1 Mar 2024 12:46:06 +0000 (13:46 +0100)]
Merge tag 'zynqmp-dt-for-6.9' of https://github.com/Xilinx/linux-xlnx into soc/dt

arm64: ZynqMP DT changes for 6.9

dt-bindings:
- Describe firmware for Versal NET
- Describe all firmware child nodes
- Align versal-fpga node name with dt schema
- Describe k26 rev2 and kv260

DTs:
- Align firmware node with dt schema
- Add an optee node
- Describe reset for CANs
- Update ECAM size to discover up to 256 buses
- Describe assigned-clocks for uarts
- Add u-boot node
- Comment SMMU entries
- Align dwc3 nodes with dt schema
- Rename i2c groups to match dt schema
- Small DT updates (comments)
- Fix default clock frequency for si570 (zcu102, zcu106)
- Add output-enable pins and cover MIO38 (SOM)

* tag 'zynqmp-dt-for-6.9' of https://github.com/Xilinx/linux-xlnx: (21 commits)
  dt-bindings: firmware: xilinx: Describe soc-nvmem subnode
  dt-bindings: soc: xilinx: Add support for KV260 CC
  dt-bindings: soc: xilinx: Add support for K26 rev2 SOMs
  arm64: zynqmp: Align usb clock nodes with binding
  arm64: zynqmp: Comment all smmu entries
  arm64: zynqmp: Rename i2c?-gpio to i2c?-gpio-grp
  arm64: zynqmp: Disable Tri-state for MIO38 Pin
  arm64: zynqmp: Remove incorrect comment from kv260s
  arm64: zynqmp: Introduce u-boot options node with bootscr-address
  arm64: zynqmp: Fix comment to be aligned with board name.
  arm64: zynqmp: Update ECAM size to discover up to 256 buses
  arm64: zynqmp: Describe assigned-clocks for uarts
  arm64: zynqmp: Setup default si570 frequency to 156.25MHz
  arm64: zynqmp: Add resets property for CAN nodes
  arm64: zynqmp: Add an OP-TEE node to the device tree
  arm64: zynqmp: Add output-enable pins to SOMs
  arm64: zynqmp: Rename zynqmp-power node to power-management
  dt-bindings: firmware: xilinx: Sort node names (clock-controller)
  dt-bindings: firmware: xilinx: Describe missing child nodes
  dt-bindings: firmware: xilinx: Fix versal-fpga node name
  ...

Link: https://lore.kernel.org/r/CAHTX3dLEoFMTGg1Q4+OuOwWYd8N73YBTXki8Vvj3cGHUpLJ0=A@mail.gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'sgx-for-v6.9-signed' of git://git.kernel.org/pub/scm/linux/kernel/git...
Arnd Bergmann [Fri, 1 Mar 2024 12:40:51 +0000 (13:40 +0100)]
Merge tag 'sgx-for-v6.9-signed' of git://git./linux/kernel/git/tmlind/linux-omap into soc/dt

Add PowerVR Series5 SGX GPUs for the TI SoCs

With the Imagination Rogue GPU binding added, let's also add the devicetree
binding for earlier SGX GPUs. Let's also patch the TI SoCs for the related
SGX GPU nodes.

Based on the mailing list discussions, the conclusion was that we need two
separate device tree bindings, one for Rogue and upcoming GPUS, and one for
the older SGX GPUs.

For merging the changes, I applied the binding changes together with the
TI SoC related changes into a branch leaving out the sun6i and mips changes
as suggested by Rob.

These changes are mostly 32-bit SoCs, but also contains one arm64 change.
It does not cause any merge conflicts.

* tag 'sgx-for-v6.9-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  arm64: dts: ti: k3-am654-main: Add device tree entry for SGX GPU
  ARM: dts: DRA7xx: Add device tree entry for SGX GPU
  ARM: dts: AM437x: Add device tree entry for SGX GPU
  ARM: dts: AM33xx: Add device tree entry for SGX GPU
  ARM: dts: omap5: Add device tree entry for SGX GPU
  ARM: dts: omap4: Add device tree entry for SGX GPU
  ARM: dts: omap3: Add device tree entry for SGX GPU
  dt-bindings: gpu: Add PowerVR Series5 SGX GPUs
  dt-bindings: gpu: Rename img,powervr to img,powervr-rogue

Link: https://lore.kernel.org/r/pull-1708943489-872615@atomide.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'imx-dt64-6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo...
Arnd Bergmann [Fri, 1 Mar 2024 12:37:49 +0000 (13:37 +0100)]
Merge tag 'imx-dt64-6.9' of git://git./linux/kernel/git/shawnguo/linux into soc/dt

i.MX arm64 device tree for 6.9:

- New board support: Apalis eval v1.2 carrier board, Variscite
  VAR-SOM-MX93, phyBOARD-Segin-i.MX93.
- A series from Adam Ford to enable bluetooth, configure multiple queues
  on eqos, remove unnecessary clock configuration for i.MX8 Beacon boards.
- Several changesets from Alexander Stein to add i.MX8DXP support, enable
  audio and GPU for i.MX8QXP, re-parent MEDIA_MIPI_PHY1_REF clock for
  i.MX8MP, and improve MBA8xx board description.
- A few dt-schema fixes from Fabio Estevam for i.MX8MM and i.MX93 devices.
- A bunch of changes from Frank Li to improve i.MX8QM and i.MX8DXL
  support, correcting edma3 power-domains and interrupt numbers, adding
  I2C, FlexCAN and SMMU devices, etc.
- A series from Frieder Schrempf to improve imx8mm-kontron board
  descriptions, disabling pulls, fixing up RTC device, adding EEPROM,
  and refactoring OSM-S module, etc.
- A set of Data Modul i.MX8M Plus eDM SBC improvements from Marek Vasut.
- A series from Shengjiu Wang to add PDM micphone and SPDIF sound card
  support for imx8mm-evk board.
- A series of imx8mm-venice boards improvement from Tim Harvey to add
  TPM device, fix USB OTG VBUS etc.
- Other small and random improvements on various boards.

* tag 'imx-dt64-6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (77 commits)
  arm64: dts: imx8mm-kontron-bl-osm-s: Fix Ethernet PHY compatible
  arm64: dts: imx8-apalis-v1.1: Remove reset-names from ethernet-phy
  arm64: dts: imx8mp-evk: Fix hdmi@3d node
  arm64: dts: imx93-var-som: Remove phy-supply from eqos
  arm64: dts: imx8mp-phyboard-pollux: Disable pull-up for CD GPIO
  arm64: dts: imx8mp-phyboard-pollux: Reduce drive strength for eqos tx lines
  arm64: dts: imx8mp-phyboard-pollux: Set debug uart muxing to 0x140
  arm64: dts: imx8mp-phyboard-pollux: Add and update rtc devicetree node
  arm64: dts: imx8mm-evk: Add spdif sound card support
  arm64: dts: mba8xx: Add missing #interrupt-cells
  arm64: dts: imx8mp: Set SPI NOR to max 40 MHz on Data Modul i.MX8M Plus eDM SBC
  arm64: dts: imx8mn: tqma8mqnl-mba8mx: Add USB DR overlay
  arm64: dts: imx8mq: tqma8mq-mba8mx: Add missing USB vbus supply
  arm64: dts: freescale: imx8mm/imx8mq: mba8mx: Use PCIe clock generator
  arm64: dts: imx8mn-beacon: Remove unnecessary clock configuration
  arm64: dts: imx8mn: Slow default video_pll clock rate
  arm64: dts: imx8mp-beacon: Configure multiple queues on eqos
  arm64: dts: imx8mp-beacon: Enable Bluetooth
  arm64: dts: freescale: minor whitespace cleanup
  arm64: dts: lx2160a: Fix DTS for full PL011 UART
  ...

Link: https://lore.kernel.org/r/20240226034147.233993-4-shawnguo2@yeah.net
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'imx-dt-6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo...
Arnd Bergmann [Fri, 1 Mar 2024 12:00:25 +0000 (13:00 +0100)]
Merge tag 'imx-dt-6.9' of git://git./linux/kernel/git/shawnguo/linux into soc/dt

i.MX ARM device tree for 6.9:

- New board support: Sielaff i.MX6 Solo, Apalis Evaluation Board v1.2.
- A bunch of i.MX7 TQMA7/MBA7 updates from Alexander Stein that add
  various devices, improve hardware descriptions and fix dt-schema
  warnings, etc.
- Correct touchscreen rotation for imx6sl-tolino-shine2hd board.
- An imx53-qsb update from Dmitry Baryshkov to add HDMI expander support.
- A couple of i.MX1 and i.MX28 device node name fixes from Fabio Estevam.
- Enable usb3-lpm-capable for LS1021A usb3 node.
- A couple of imx6dl-yapp4 board improvements from Michal Vokáč.
- A series from Sebastian Reichel to improve imx6ull descriptions.

* tag 'imx-dt-6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (43 commits)
  ARM: dts: nxp: imx: fix weim node name
  ARM: dts: nxp: imx6ul: fix touchscreen node name
  ARM: dts: nxp: imx6ul: xnur-gpio -> xnur-gpios
  ARM: dts: imx6ul: Remove fsl,anatop from usbotg1
  ARM: dts: imx6ull: fix pinctrl node name
  ARM: dts: imx1-apf9328: Fix Ethernet node name
  ARM: dts: imx28-evk: Use 'eeprom' as the node name
  ARM: dts: ls1021a: Enable usb3-lpm-capable for usb3 node
  ARM: dts: imx6dl-yapp4: Move the internal switch PHYs under the switch node
  ARM: dts: imx6dl-yapp4: Fix typo in the QCA switch register address
  ARM: dts: imx6ul: Set macaddress location in ocotp
  ARM: dts: imx53-qsb: add support for the HDMI expander
  ARM: dts: imx6ull-dhcom: Remove /omit-if-no-ref/ from node usdhc1-pwrseq
  ARM: dts: imx: Add support for Apalis Evaluation Board v1.2
  ARM: dts: imx6: skov: add aliases for all ethernet nodes
  ARM: dts: imx6qdl-hummingboard: Add rtc0 and rtc1 aliases to fix hctosys
  ARM: dts: imx6dl: Add support for Sielaff i.MX6 Solo board
  ARM: dts: imx6ul: Add missing #thermal-sensor-cells to tempmon
  ARM: dts: imx6sl-tolino-shine2hd: fix touchscreen rotation
  ARM: dts: imx6ull-dhcor: Remove 900MHz operating point
  ...

Link: https://lore.kernel.org/r/20240226034147.233993-3-shawnguo2@yeah.net
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'imx-bindings-6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/shawngu...
Arnd Bergmann [Fri, 1 Mar 2024 11:56:26 +0000 (12:56 +0100)]
Merge tag 'imx-bindings-6.9' of git://git./linux/kernel/git/shawnguo/linux into soc/dt

i.MX dt-bindings for 6.9:

- New compatibles for boards: TQMa8Xx, Sielaff i.MX6 Solo, Toradex Apalis
  imx6q-eval-v1.2, VAR-SOM-MX93, phyBOARD-Segin-i.MX93, UNI-T UTi260B.
- Add vendor prefix for UNI-T.

* tag 'imx-bindings-6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  dt-bindings: arm: add UNI-T UTi260B
  dt-bindings: vendor-prefixes: add UNI-T
  dt-bindings: arm: fsl: remove redundant company name
  dt-bindings: arm: fsl: add imx8qm apalis eval v1.2 carrier board
  dt-bindings: arm: fsl: Add toradex,apalis_imx6q-eval-v1.2 board
  dt-bindings: arm: fsl: Add phyBOARD-Segin-i.MX93
  dt-bindings: arm: fsl: Add Sielaff i.MX6 Solo board
  dt-bindings: arm: fsl: Add VAR-SOM-MX93 with Symphony
  dt-bindings: arm: add TQMa8Xx boards

Link: https://lore.kernel.org/r/20240226034147.233993-2-shawnguo2@yeah.net
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'socfpga_dts_updates_for_v6.9' of git://git.kernel.org/pub/scm/linux/kernel...
Arnd Bergmann [Fri, 1 Mar 2024 11:55:27 +0000 (12:55 +0100)]
Merge tag 'socfpga_dts_updates_for_v6.9' of git://git./linux/kernel/git/dinguyen/linux into soc/dt

SoCFPGA DTS updates for v6.9
- Drop the "master" suffix in I3C controller node name

* tag 'socfpga_dts_updates_for_v6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux:
  arm64: dts: intel: agilex5: drop "master" I3C node name suffix

Link: https://lore.kernel.org/r/20240226012528.20380-1-dinguyen@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'qcom-arm64-for-6.9' of https://git.kernel.org/pub/scm/linux/kernel/git...
Arnd Bergmann [Fri, 1 Mar 2024 10:15:59 +0000 (11:15 +0100)]
Merge tag 'qcom-arm64-for-6.9' of https://git./linux/kernel/git/qcom/linux into soc/dt

Qualcomm ARM64 DeviceTree updates for v6.9

Four variants of Samsung Galaxy Core Prime and Grand Prime, built on
MSM8916, and the Hardware Development Kit (HDK) for SM8550, are
introduced.

On X Elite audio and compute remoteprocs, IPCC, PCIe, AOSS QMP, SMP2P,
TCSR, USB, display, audio, and soundwire support is introduced, and
enabled across the CRD and QCP devices.

For SM8650 PCIe controllers are moved to GIC-ITS and msi-map-mask is
defined. Missing qlink-logging reserved-memory region is added for the
modem remoteproc. FastRPC compute contexts are marked dma-coherent.
Audio, USB Type-C and PM8010 support is introduced across MTP and QRD
devices.

GPU cooling devices are hooked up across MSM8916, MSM8939, SC8180X,
SDM630, SDM845, SM6115, SM8150, SM8250, SM8350, and SM8550.

UFS PHY clocks are corrected across MSM8996, MSM8998, SC8180X, SC8280XP,
SDM845, SM6115, SM6125, SM8150, SM8250, SM8350, SM8550, and SM8650.

PCI MSI interrupts are wired up across SM8150, SM8250, SM8350, SM8450,
SM8550, SM8650, SC7280, and SC8180X

On IPQ6018 QUP5 I2C, tsens sand thermal zones are defined. The Inline
Crypto Engine (ICE) is enabled for IPQ9574.

On MSM8953 the GPU and its IOMMU is introduced, the reset for the
display subsystem is also wired up.

VLS CLAMP registers are specified for USB3 PHYs on MSM8998, QCM2290, and
SM6115.

USB Type-C port management is enabled on QRB4210 RB2.

On the SA8295P ADP the MAX20411 regulator powering the GPU rails is
introduced and the GPU is enabled. The first PCI instance on SA8540P
Ride is disabled for now, as a fix for the interrupt storm produced here
has not been presented.

On SA8775P the firmware memory map has changed and is updated. Safety
IRQ is added to the Ethernet controller.

On SC7180 UFS support is introduced and the cros-ec-spi is marked as
wakeup source.

For SC7280 capacity and DPC properties are added, cryptobam definition
is improved to work in more firmware environments, more Chrome-specific
properties are moved out from main dtsi, and cros-ec-spi is maked as a
wakeup source. Slimbus definition is added to the platform.

A missing reserved-memory range is added to Fairphone FP5, PMIC GLINK
and Venus are enabled. LEDs are introduced and voltage settings
corrected on the QCM6490 IDP, and RB3gen2 sees the same voltage changes
and GCC protected clocks are introduced to make the board boot properly.

RPMh sleep stats and a variety of cleanups and fixes are introduced for
SC8180X.

On SC8280XP the additional tsens instances are introduced. Camera
Subsystem and Camera Control Interface (CCI) are added. PMIC die-temp
vadc channels are introduced on the CRD, to allow ADC channels to be
tied to the shared PMIC temp-alarms, to actually report temperature.

On SDM630 USB QMP PHY support is introduced and enabled on the Inforce
IFC6560 board. On the various Sony Xperia XA2 variants WLED is enabled
and configured.

On SM6350 display subsystem interconnects and tsens-based thermal zones
are added. On SM7125 UFS support is added.

On Fairphone FP4, on SM7225, display and GPU are enabled, and firmware
paths are corrected.

SM8150 PCIe controller definitions are corrected.

As with SM8650, the SM8550 the fastrpc compute contexts are marked
dm-coherent, and PCIe controllers are moved to use GIC-ITS. The UFS
controller frequency definition is moved to the generic opp-table.
Touchscreen is enabled on the QRD device.

As usual, a variety of smaller cleanups and corrections to match
DeviceTree bindings and style guidelines are introduced across the
various files.

* tag 'qcom-arm64-for-6.9' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (176 commits)
  arm64: dts: qcom: sm6115: fix USB PHY configuration
  arm64: dts: sm8650: Add msi-map-mask for PCIe nodes
  arm64: dts: qcom: replace underscores in node names
  dt-bindings: arm: qcom: Add Samsung Galaxy Tab 4 10.1 LTE
  arm64: dts: qcom: pm4125: define USB-C related blocks
  arm64: dts: qcom: sa8540p-ride: disable pcie2a node
  arm64: dts: qcom: sc7280: add slimbus DT node
  arm64: dts: qcom: sc7280: Add capacity and DPC properties
  arm64: dts: qcom: pmi632: Add PBS client and use in LPG node
  arm64: dts: qcom: sm8550: Use GIC-ITS for PCIe0 and PCIe1
  arm64: dts: qcom: sm8150: correct PCIe wake-gpios
  arm64: dts: qcom: sdm845-db845c: correct PCIe wake-gpios
  arm64: dts: qcom: sm7225-fairphone-fp4: Enable display and GPU
  arm64: dts: qcom: sm6350: Remove "disabled" state of GMU
  arm64: dts: qcom: msm8916-samsung-fortuna/rossa: Add fuel gauge
  arm64: dts: qcom: sm6350: Add interconnect for MDSS
  arm64: dts: qcom: msm8916-samsung-fortuna/rossa: Add initial device trees
  arm64: dts: qcom: sm8550: Switch UFS from opp-table-hz to opp-v2
  arm64: dts: qcom: sc8180x: describe all PCI MSI interrupts
  arm64: dts: qcom: minor whitespace cleanup
  ...

Link: https://lore.kernel.org/r/20240225050146.484422-1-andersson@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'sunxi-dt-for-6.9-1' of https://git.kernel.org/pub/scm/linux/kernel/git...
Arnd Bergmann [Fri, 1 Mar 2024 09:40:36 +0000 (10:40 +0100)]
Merge tag 'sunxi-dt-for-6.9-1' of https://git./linux/kernel/git/sunxi/linux into soc/dt

- new H616 peripherals: SPDIF, DMA, THS
- H616 fanout pin configuration
- H6 SPDIF node update
- minor cleanups
- enabled regulator on FETA40i board
- added wifi to Transpeed 8K618-T board
- new boards: Jide Remix Mini PC, Sipeed Longan Module 3H and
  Longan Pi 3H

* tag 'sunxi-dt-for-6.9-1' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
  arm64: dts: allwinner: h616: Add thermal sensor and zones
  ARM: dts: sun8i: Open FETA40i-C regulator aldo1
  arm64: dts: allwinner: h616: Add Sipeed Longan SoM 3H and Pi 3H board support
  dt-bindings: arm: sunxi: Add Sipeed Longan Module 3H and Longan Pi 3H
  arm64: dts: allwinner: h616: minor whitespace cleanup
  arm64: dts: allwinner: use capital "OR" for multiple licenses in SPDX
  arm64: dts: allwinner: Transpeed 8K618-T: add WiFi nodes
  arm64: dts: allwinner: h616: Add 32K fanout pin
  arm64: dts: allwinner: Add Jide Remix Mini PC support
  dt-bindings: arm: sunxi: document Remix Mini PC name
  dt-bindings: vendor-prefixes: add Jide
  arm64: dts: allwinner: h616: Add SPDIF device node
  arm64: dts: allwinner: h616: Add DMA controller and DMA channels
  arm64: dts: allwinner: h6: Add RX DMA channel for SPDIF
  dt-bindings: sram: narrow regex for unit address to hex numbers
  arm64: dts: allwinner: h616: Add Orange Pi Zero 2W to Makefile

13 months agoMerge tag 'tegra-for-6.9-arm64-dt' of git://git.kernel.org/pub/scm/linux/kernel/git...
Arnd Bergmann [Thu, 29 Feb 2024 16:48:15 +0000 (17:48 +0100)]
Merge tag 'tegra-for-6.9-arm64-dt' of git://git./linux/kernel/git/tegra/linux into soc/dt

arm64: tegra: Device tree changes for v6.9-rc1

This set of changes refactors the audio-related device tree nodes on
Tegra234 and improves USB support for Jetson AGX Xavier. Furthermore
this consolidates SD/MMC aliases on Tegra234 and provides correct
configuration data for the MGBE Ethernet devices found on Tegra234
so that they can operate at full speed.

* tag 'tegra-for-6.9-arm64-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  arm64: tegra: Remove Jetson Orin NX and Jetson Orin Nano DTSI
  arm64: tegra: Add audio support for Jetson Orin NX and Jetson Orin Nano
  arm64: tegra: Define missing IO ports
  arm64: tegra: Move AHUB ports to SoC DTSI
  arm64: tegra: Add USB Type-C controller for Jetson AGX Xavier
  arm64: tegra: Add USB device support for Jetson AGX Xavier
  arm64: tegra: Add current monitors for Jetson Xavier
  arm64: tegra: Add AXI configuration for Tegra234 MGBE
  arm64: tegra: Use consistent SD/MMC aliases on Tegra234
  arm64: tegra: Enable cros-ec-spi as wake source

Link: https://lore.kernel.org/r/20240223174849.1509465-5-thierry.reding@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'tegra-for-6.9-arm-dt' of git://git.kernel.org/pub/scm/linux/kernel/git...
Arnd Bergmann [Thu, 29 Feb 2024 16:47:05 +0000 (17:47 +0100)]
Merge tag 'tegra-for-6.9-arm-dt' of git://git./linux/kernel/git/tegra/linux into soc/dt

ARM: tegra: Device tree changes for v6.9-rc1

Add support for the LG Optimus 4X HD and LG Optimus VU devices and clean
up some minor issues.

* tag 'tegra-for-6.9-arm-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  ARM: tegra: Add device-tree for LG Optimus 4X HD (P880)
  ARM: tegra: Add device-tree for LG Optimus Vu (P895)
  ARM: tegra: nexus7: Add missing clock binding into sound node
  ARM: tegra: Enable cros-ec-spi as wake source

Link: https://lore.kernel.org/r/20240223174849.1509465-4-thierry.reding@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'tegra-for-6.9-dt-bindings' of git://git.kernel.org/pub/scm/linux/kernel...
Arnd Bergmann [Thu, 29 Feb 2024 16:46:11 +0000 (17:46 +0100)]
Merge tag 'tegra-for-6.9-dt-bindings' of git://git./linux/kernel/git/tegra/linux into soc/dt

dt-bindings: Changes for v6.9-rc1

This contains device tree bindings additions for LG Optimus devices as
well as cleanups for the PMC hardware block.

* tag 'tegra-for-6.9-dt-bindings' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  dt-bindings: arm: tegra: Add LG Optimus Vu P895 and Optimus 4X P880
  dt-bindings: tegra: pmc: Update scratch as an optional aperture

Link: https://lore.kernel.org/r/20240223174849.1509465-3-thierry.reding@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'renesas-dts-for-v6.9-tag2' of git://git.kernel.org/pub/scm/linux/kernel...
Arnd Bergmann [Thu, 29 Feb 2024 16:44:33 +0000 (17:44 +0100)]
Merge tag 'renesas-dts-for-v6.9-tag2' of git://git./linux/kernel/git/geert/renesas-devel into soc/dt

Renesas DTS updates for v6.9 (take two)

  - Add pin control, I2C, GPIO, CA76 cluster, Ethernet, SD/MMC, DMA, and
    HyperFLASH/QSPI (RPC) support for the R-Car V4M SoC,
  - Add I2C EEPROM, Ethernet, eMMC, and QSPI FLASH support for the Gray
    Hawk Single development board,
  - Fix PCIe power on ULCB development boards equipped with the
    Shimafuji Kingfisher extension,
  - Add PSCI support for the RZ/G3S SoC,
  - Add camera support for the RZ/G2UL SMARC EVK development board,
  - Add display support for the RZ/G2L{,C} and RZ/V2L SoCs and SMARC EVK
    development boards,
  - Miscellaneous fixes and improvements,

* tag 'renesas-dts-for-v6.9-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel: (31 commits)
  arm64: dts: renesas: rzg2l-smarc: Enable DU and link with DSI
  arm64: dts: renesas: r9a07g054: Add DU node
  arm64: dts: renesas: r9a07g044: Add DU node
  arm64: dts: renesas: gray-hawk-single: Add QSPI FLASH support
  arm64: dts: renesas: r8a779h0: Add RPC node
  arm64: dts: renesas: r8a779h0: Add DMA support
  arm64: dts: renesas: gray-hawk-single: Add eMMC support
  arm64: dts: renesas: r8a779h0: Add SD/MMC node
  ARM: dts: renesas: r8a7778: Add missing reg-names to sound node
  arm64: dts: renesas: rzg2ul-smarc: Enable CRU, CSI support
  arm64: dts: renesas: gray-hawk-single: Add Ethernet support
  arm64: dts: renesas: r8a779h0: Add Ethernet-AVB support
  arm64: dts: renesas: r8a779g0: Correct avb[01] reg sizes
  arm64: dts: renesas: r8a779a0: Correct avb[01] reg sizes
  arm64: dts: renesas: r9a08g045: Add PSCI support
  arm64: dts: renesas: rzg3s-smarc-som: Guard Ethernet IRQ GPIO hogs
  arm64: dts: renesas: r9a08g045: Add missing interrupts to IRQC node
  arm64: dts: renesas: rzg2l: Add missing interrupts to IRQC nodes
  arm64: dts: renesas: r8a779h0: Add CA76 operating points
  arm64: dts: renesas: r8a779h0: Add CPU core clocks
  ...

Link: https://lore.kernel.org/r/cover.1708687134.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'renesas-dt-bindings-for-v6.9-tag2' of git://git.kernel.org/pub/scm/linux...
Arnd Bergmann [Thu, 29 Feb 2024 16:43:53 +0000 (17:43 +0100)]
Merge tag 'renesas-dt-bindings-for-v6.9-tag2' of git://git./linux/kernel/git/geert/renesas-devel into soc/dt

Renesas DT binding updates for v6.9 (take two)

  - Restore sort order,
  - Document preferred compatible naming,

* tag 'renesas-dt-bindings-for-v6.9-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  dt-bindings: renesas: Document preferred compatible naming
  dt-bindings: soc: renesas: Preserve the order of SoCs based on their part numbers

Link: https://lore.kernel.org/r/cover.1708687132.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'v6.9-rockchip-dts32-1' of git://git.kernel.org/pub/scm/linux/kernel/git...
Arnd Bergmann [Thu, 29 Feb 2024 16:42:44 +0000 (17:42 +0100)]
Merge tag 'v6.9-rockchip-dts32-1' of git://git./linux/kernel/git/mmind/linux-rockchip into soc/dt

Display output for rk3128 and some adaptions to binding clarifications
for hdmi nodes on some older socs.

* tag 'v6.9-rockchip-dts32-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  ARM: dts: rockchip: fix rk322x hdmi ports node
  ARM: dts: rockchip: fix rk3288 hdmi ports node
  ARM: dts: rockchip: Enable HDMI output for XPI-3128
  ARM: dts: rockchip: Add HDMI node for RK3128
  ARM: dts: rockchip: Add display subsystem for RK3128

Link: https://lore.kernel.org/r/37970455.XM6RcZxFsP@diego
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'v6.9-rockchip-dts64-1' of git://git.kernel.org/pub/scm/linux/kernel/git...
Arnd Bergmann [Thu, 29 Feb 2024 15:22:29 +0000 (16:22 +0100)]
Merge tag 'v6.9-rockchip-dts64-1' of git://git./linux/kernel/git/mmind/linux-rockchip into soc/dt

New boards: Powkiddy RGB10MAX3, Pine64 PineTab2, NanoPi R6C+R6S, Anbernic
RG-ARC S and RG-ARC D.
New peripherals: rs485 on Theobroma Systems boards, usb3 on Indidroid Nova,
Edgeble NCM6A (usb2, m.2, ethernet, wifi, cpu-regulator), Rock-5b rfkill
for wifi, cache information for rk3399.
Snmaller DT fixes (hdmi nodes, aliases, redundant card-detect gpios, max-
frequency for spi-flashes on rock-pi 4 boards, missing pmu-io-domains on
Ringneck)

* tag 'v6.9-rockchip-dts64-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip: (38 commits)
  arm64: dts: rockchip: Add USB3.0 to Indiedroid Nova
  arm64: dts: rockchip: adjust phy-handle name on rock-pi-e
  arm64: dts: rockchip: fix rk3399 hdmi ports node
  arm64: dts: rockchip: fix rk3328 hdmi ports node
  arm64: dts: rockchip: remove redundant cd-gpios from rk3588 sdmmc nodes
  arm64: dts: rockchip: add rs485 support on uart5 of px30-ringneck-haikou
  arm64: dts: rockchip: add rs485 support on uart2 of rk3399-puma-haikou
  arm64: dts: rockchip: Add Powkiddy RGB10MAX3
  dt-bindings: arm: rockchip: Add Powkiddy RGB10MAX3
  arm64: dts: rockchip: Update powkiddy rk2023 dtsi for RGB10MAX3
  arm64: dts: rockchip: Add devicetree for Pine64 PineTab2
  dt-bindings: arm64: rockchip: Add Pine64 PineTab2
  arm64: dts: rockchip: Add Touch to Anbernic RG-ARC D
  arm64: dts: rockchip: fix nanopc-t6 sdmmc regulator
  arm64: dts: rockchip: remove duplicate SPI aliases for helios64
  arm64: dts: rockchip: add spi controller aliases on rk3399
  arm64: dts: rockchip: Add support for NanoPi R6C
  arm64: dts: rockchip: Add support for NanoPi R6S
  dt-bindings: arm: rockchip: Add NanoPi R6 series boards
  arm64: dts: rockchip: Increase maximum frequency of SPI flash for ROCK Pi 4A/B/C
  ...

Link: https://lore.kernel.org/r/3622360.hdfAi7Kttb@diego
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'versatile-dts-v6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/linus...
Arnd Bergmann [Thu, 29 Feb 2024 15:20:17 +0000 (16:20 +0100)]
Merge tag 'versatile-dts-v6.9' of git://git./linux/kernel/git/linusw/linux-integrator into soc/dt

DTS fixes for the ARM Versatile boards:

- Use the "mtd-rom" compatible for the Realview ROM
- Fix up two VGA connector cells and labels
- Fix up the Cortex spelling

* tag 'versatile-dts-v6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator:
  dt-bindings: arm: realview: Spelling s/ARM 11/Arm11/, s/Cortex A-/Cortex-A/
  ARM: dts: integrator: Fix up VGA connector
  ARM: dts: versatile: Fix up VGA connector
  ARM: dts: arm: realview: Fix development chip ROM compatible value

Link: https://lore.kernel.org/r/CACRpkdaL6j6OdixHFHoMms4e=tXEw_6ynBMFb6m8=7KkVgEedA@mail.gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'gemini-dts-v6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw...
Arnd Bergmann [Thu, 29 Feb 2024 15:19:17 +0000 (16:19 +0100)]
Merge tag 'gemini-dts-v6.9' of git://git./linux/kernel/git/linusw/linux-integrator into soc/dt

Gemini DTS changes for the v6.9 kernel:

- Fix the node names of the DSA switch in DIR-685.
- Fix the node names of the Vitesse DSA switches.
- Fix up the Wiligear compatible strings
- Use KEY_RESTART where applicable.

* tag 'gemini-dts-v6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator:
  ARM: dts: gemini: Fix switch node names on Vitesse switches
  ARM: dts: gemini: Map reset keys to KEY_RESTART
  ARM: dts: gemini: Fix wiligear compatible strings
  ARM: dts: gemini: Fix switch node names in the DIR-685

Link: https://lore.kernel.org/r/CACRpkdYQv9cyCZyjgQB4FTrxek9Hfu4EZ3syfHqHF7P6gzddvA@mail.gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'mtk-dts64-for-v6.9' of https://git.kernel.org/pub/scm/linux/kernel/git...
Arnd Bergmann [Thu, 29 Feb 2024 15:15:18 +0000 (16:15 +0100)]
Merge tag 'mtk-dts64-for-v6.9' of https://git./linux/kernel/git/mediatek/linux into soc/dt

MediaTek ARM64 DeviceTree updates for v6.9

This adds support for the following new machines:
 - MT7981B: Xiaomi AX3000T
 - MT7986A: Acelink EW-7886CAX
 - MT7988A: BananaPi BPI-R4
 - MT8186 Chromebooks: Tentacruel, Tentacool, Steelix, Rusty, Magneton
 - MT8395/MT8195: Radxa NIO 12L

Also adds more support for the MediaTek MT8186 SoC's Video and JPEG
encoders and for MT7988 clocks, enables wakeup support for the CrOS
EC on SPI in all MediaTek Chromebooks, performs some cleanups and
includes some spare fixes.

* tag 'mtk-dts64-for-v6.9' of https://git.kernel.org/pub/scm/linux/kernel/git/mediatek/linux: (51 commits)
  arm64: dts: mt8195-cherry-tomato: change watchdog reset boot flow
  arm64: dts: mt7986: add port@5 as CPU port
  arm64: dts: mt7622: add port@5 as CPU port
  arm64: dts: mediatek: Replace deprecated extcon-usb-gpio id-gpio/vbus-gpio properties
  arm64: dts: mediatek: replace underscores in node names
  arm64: dts: mediatek: mt8186: Add missing xhci clock to usb controllers
  arm64: dts: mediatek: mt8186: Add missing clocks to ssusb power domains
  arm64: dts: mediatek: mt7622: add missing "device_type" to memory nodes
  arm64: dts: mediatek: mt7986: reorder nodes
  arm64: dts: mediatek: mt7986: reorder properties
  arm64: dts: mediatek: Add Acelink EW-7886CAX
  dt-bindings: arm64: dts: mediatek: Add Acelink EW-7886CAX access point
  dt-bindings: vendor-prefixes: add acelink
  arm64: dts: mediatek: Introduce the MT8395 Radxa NIO 12L board
  dt-bindings: arm64: mediatek: Add MT8395 Radxa NIO 12L board compatible
  arm64: dts: mediatek: mt8186: Add video decoder device nodes
  arm64: dts: mediatek: mt8195: Add MTU3 nodes and correctly describe USB
  arm64: dts: mediatek: Add MT8186 Magneton Chromebooks
  arm64: dts: mediatek: Add MT8186 Steelix platform based Rusty
  arm64: dts: mediatek: Introduce MT8186 Steelix
  ...

Link: https://lore.kernel.org/r/20240219131230.157792-1-angelogioacchino.delregno@collabora.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'dt-cleanup-6.9' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk...
Arnd Bergmann [Thu, 29 Feb 2024 15:12:46 +0000 (16:12 +0100)]
Merge tag 'dt-cleanup-6.9' of https://git./linux/kernel/git/krzk/linux-dt into soc/dt

Minor improvements in ARM DTS for v6.9

1. Marvell MMP2: Very old issue, for which I sent patch back in 2014.
   Patch was never picked up and now another try to fix the same
   happened, so here it goes: use proper compatible MAX8925.
2. Marvell Dove: add proper unit-addresses.
3. TI DA850: add MMC interrupts.
4. STI: minor white-space fixes.

* tag 'dt-cleanup-6.9' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-dt:
  ARM: dts: sti: minor whitespace cleanup around '='
  ARM: dts: da850: add MMD SDIO interrupts
  ARM: dts: marvell: dove-cubox: fix si5351 node names
  arm: dts: marvell: Fix maxium->maxim typo in brownstone dts

Link: https://lore.kernel.org/r/20240218182656.32103-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'samsung-dt-6.9' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk...
Arnd Bergmann [Thu, 29 Feb 2024 15:11:50 +0000 (16:11 +0100)]
Merge tag 'samsung-dt-6.9' of https://git./linux/kernel/git/krzk/linux into soc/dt

Samsung DTS ARM changes for v6.9

1. Disable thermal polling by Linux in Eynos5422 Odroid XU3 boards,
   because drivers implement now proper dynamic trip points management.

2. Mark crosc-ec-spi in Peach Pi and Peach Pit as wake-up source, to
   reflect the hardware capabilities.

3. Samsung P4 Note (Exynos4412): add accelerometer.

4. Samsung Galaxy Tab (Exynos5420):
   - Reduce available RAM to avoid conflict with TrustZone.
   - Add WiFi on MMC.

* tag 'samsung-dt-6.9' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  ARM: dts: samsung: exynos5420-galaxy-tab-common: add wifi node
  ARM: dts: samsung: exynos5420-galaxy-tab: decrease available memory
  ARM: dts: samsung: exynos4412-p4note: add accelerometer and gyro to p4note
  ARM: dts: samsung: exynos5800-peach: Enable cros-ec-spi as wake source
  ARM: dts: samsung: exynos5420-peach: Enable cros-ec-spi as wake source
  ARM: dts: samsung: exynos5422-odroidxu3: disable thermal polling

Link: https://lore.kernel.org/r/20240218182141.31213-3-krzysztof.kozlowski@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'samsung-dt64-6.9' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk...
Arnd Bergmann [Thu, 29 Feb 2024 15:10:36 +0000 (16:10 +0100)]
Merge tag 'samsung-dt64-6.9' of https://git./linux/kernel/git/krzk/linux into soc/dt

Samsung DTS ARM64 changes for v6.9

Mostly work around Google GS101 SoC and Pixel phone (Oriole) adding
support for:

1. Multi Core Timer (MCT) clocksource.
2. Several clock controllers (DTS and DT bindings) and use new clocks in
   several other device nodes.
3. More serial-interface instances: USI8 and USI12 with I2C.

Exynos850:
1. SPI and DMA controllers (PL330).

* tag 'samsung-dt64-6.9' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  arm64: dts: fsd: Add fifosize for UART in Device Tree
  arm64: dts: exynos: gs101: minor whitespace cleanup
  arm64: dts: exynos: gs101: enable i2c bus 12 on gs101-oriole
  arm64: dts: exynos: gs101: define USI12 with I2C configuration
  arm64: dts: exynos: gs101: enable cmu-peric1 clock controller
  dt-bindings: clock: google,gs101-clock: add PERIC1 clock management unit
  arm64: dts: exynos: Add SPI nodes for Exynos850
  arm64: dts: exynos: Add PDMA node for Exynos850
  arm64: dts: exynos: gs101: use correct clocks for usi_uart
  arm64: dts: exynos: gs101: use correct clocks for usi8
  arm64: dts: exynos: gs101: sysreg_peric0 needs a clock
  arm64: dts: exynos: gs101: enable eeprom on gs101-oriole
  arm64: dts: exynos: gs101: define USI8 with I2C configuration
  arm64: dts: exynos: gs101: update USI UART to use peric0 clocks
  arm64: dts: exynos: gs101: enable cmu-peric0 clock controller
  arm64: dts: exynos: gs101: remove reg-io-width from serial
  arm64: dts: exynos: gs101: define Multi Core Timer (MCT) node
  dt-bindings: clock: exynos850: Add PDMA clocks
  dt-bindings: clock: google,gs101-clock: add PERIC0 clock management unit

Link: https://lore.kernel.org/r/20240218182141.31213-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'renesas-dts-for-v6.9-tag1' of git://git.kernel.org/pub/scm/linux/kernel...
Arnd Bergmann [Thu, 29 Feb 2024 15:06:49 +0000 (16:06 +0100)]
Merge tag 'renesas-dts-for-v6.9-tag1' of git://git./linux/kernel/git/geert/renesas-devel into soc/dt

Renesas DTS updates for v6.9

  - Add GPIO keys and watchdog support for the RZ/G3S SMARC development
    board,
  - Add GNSS support for Renesas ULCB development boards equipped with
    the Shimafuji Kingfisher extension,
  - Add support for the standalone White Hawk CPU board,
  - Add support for the R-Car V4H ES2.0 (R8A779G2) SoC and the White
    Hawk Single development board,
  - Add initial support for the R-Car V4M (R8A779H0) SoC and the Gray
    Hawk Single development board,
  - Add camera support for the RZ/G2UL SoC,
  - Miscellaneous fixes and improvements.

* tag 'renesas-dts-for-v6.9-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel: (29 commits)
  arm64: dts: renesas: gray-hawk-single: Enable watchdog timer
  arm64: dts: renesas: r8a779h0: Add RWDT node
  arm64: dts: renesas: Improve TMU interrupt descriptions
  ARM: dts: renesas: Improve TMU interrupt descriptions
  arm64: dts: renesas: r9a07g043u: Add CSI and CRU nodes
  arm64: dts: renesas: Add Gray Hawk Single board support
  arm64: dts: renesas: Add Renesas R8A779H0 SoC support
  arm64: dts: renesas: rzg3s-smarc-som: Enable the watchdog interface
  arm64: dts: renesas: r9a08g045: Add watchdog node
  arm64: dts: renesas: r8a779g0: Add missing SCIF_CLK2
  dt-bindings: clock: Add R8A779H0 V4M CPG Core Clock Definitions
  dt-bindings: clock: renesas,cpg-mssr: Document R-Car V4M support
  dt-bindings: power: Add r8a779h0 SYSC power domain definitions
  dt-bindings: power: renesas,rcar-sysc: Document R-Car V4M support
  arm64: dts: renesas: r8a779g2: Add White Hawk Single support
  arm64: dts: renesas: Add Renesas R8A779G2 SoC support
  arm64: dts: renesas: white-hawk: Factor out common parts
  arm64: dts: renesas: white-hawk-cpu: Factor out common parts
  arm64: dts: renesas: white-hawk: Add SoC name to top-level comment
  arm64: dts: renesas: white-hawk: Drop SoC parts from sub boards
  ...

Link: https://lore.kernel.org/r/cover.1707487834.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoMerge tag 'renesas-dt-bindings-for-v6.9-tag1' of git://git.kernel.org/pub/scm/linux...
Arnd Bergmann [Thu, 29 Feb 2024 14:09:22 +0000 (15:09 +0100)]
Merge tag 'renesas-dt-bindings-for-v6.9-tag1' of git://git./linux/kernel/git/geert/renesas-devel into soc/dt

Renesas DT binding updates for v6.9

  - Document support for the Renesas R-Car V4M (R8A779H0) SoC, and the
    White Hawk Single and Gray Hawk Single development boards.

* tag 'renesas-dt-bindings-for-v6.9-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  dt-bindings: soc: renesas: Document R-Car V4M Gray Hawk Single
  dt-bindings: reset: renesas,rst: Document R-Car V4M support
  dt-bindings: soc: renesas: Document R-Car V4H White Hawk Single

Link: https://lore.kernel.org/r/cover.1707487832.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agodtc: Enable dtc interrupt_provider check
Rob Herring [Tue, 13 Feb 2024 19:34:30 +0000 (13:34 -0600)]
dtc: Enable dtc interrupt_provider check

Now that all the interrupt warnings have been fixed, enable
'interrupt_provider' check by default. This will also enable
'interrupt_map' check.

Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20240213-arm-dt-cleanups-v1-6-f2dee1292525@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
13 months agoarm64: dts: imx8mm-kontron-bl-osm-s: Fix Ethernet PHY compatible
Fabio Estevam [Fri, 23 Feb 2024 23:09:16 +0000 (20:09 -0300)]
arm64: dts: imx8mm-kontron-bl-osm-s: Fix Ethernet PHY compatible

According to motorcomm,yt8xxx.yaml, the compatible string must be
only 'ethernet-phy-id4f51.e91b'.

Remove 'ethernet-phy-ieee802.3-c22' to fix the following dt-schema warning:

imx8mm-kontron-bl-osm-s.dtb: ethernet-phy@0: compatible: ['ethernet-phy-id4f51.e91b', 'ethernet-phy-ieee802.3-c22'] is too long
from schema $id: http://devicetree.org/schemas/net/motorcomm,yt8xxx.yaml#

Signed-off-by: Fabio Estevam <festevam@denx.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoarm64: dts: imx8-apalis-v1.1: Remove reset-names from ethernet-phy
Fabio Estevam [Fri, 23 Feb 2024 23:01:13 +0000 (20:01 -0300)]
arm64: dts: imx8-apalis-v1.1: Remove reset-names from ethernet-phy

The 'reset-names' property is not a valid one under ethernet-phy
and causes the following dt-schema warning:

/imx8qm-apalis-v1.1-eval-v1.2.dtb: ethernet-phy@7: 'resets' is a dependency of 'reset-names'
from schema $id: http://devicetree.org/schemas/reset/reset.yaml#

Remove this property.

Signed-off-by: Fabio Estevam <festevam@denx.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoARM: dts: nxp: imx: fix weim node name
Sebastian Reichel [Sat, 24 Feb 2024 21:29:45 +0000 (22:29 +0100)]
ARM: dts: nxp: imx: fix weim node name

DT node names should be generic, so replace "weim" node name with
"memory-controller" in all i.MX SoC DT files.

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoARM: dts: nxp: imx6ul: fix touchscreen node name
Sebastian Reichel [Sat, 24 Feb 2024 21:29:44 +0000 (22:29 +0100)]
ARM: dts: nxp: imx6ul: fix touchscreen node name

The canonical node name for touchscreens is "touchscreen",
so update the i.MX6UL "tsc" node accordingly.

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoARM: dts: nxp: imx6ul: xnur-gpio -> xnur-gpios
Sebastian Reichel [Sat, 24 Feb 2024 21:29:43 +0000 (22:29 +0100)]
ARM: dts: nxp: imx6ul: xnur-gpio -> xnur-gpios

Replace all "xnur-gpio" with "xnur-gpios" in the i.MX6UL(L) Touchscreen
node, since the -gpio suffix is deprecated. All known implementations of
this binding can handle -gpio and -gpios since day 1, so this should be
fully backwards compatible.

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoARM: dts: imx6ul: Remove fsl,anatop from usbotg1
Sebastian Reichel [Sat, 24 Feb 2024 21:29:41 +0000 (22:29 +0100)]
ARM: dts: imx6ul: Remove fsl,anatop from usbotg1

fsl,anatop should only be added to the usbphy nodes.

Signed-off-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoARM: dts: imx6ull: fix pinctrl node name
Sebastian Reichel [Sat, 24 Feb 2024 21:29:40 +0000 (22:29 +0100)]
ARM: dts: imx6ull: fix pinctrl node name

pinctrl node name must be either pinctrl or pinmux.

Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoARM: dts: imx1-apf9328: Fix Ethernet node name
Fabio Estevam [Thu, 22 Feb 2024 14:34:49 +0000 (11:34 -0300)]
ARM: dts: imx1-apf9328: Fix Ethernet node name

Per davicom,dm9000.yaml, the Ethernet node name should be 'ethernet'.

Change it to fix the following schema warning:

imx1-apf9328.dtb: eth@4,c00000: $nodename:0: 'eth@4,c00000' does not match '^ethernet(@.*)?$'
from schema $id: http://devicetree.org/schemas/net/davicom,dm9000.yaml#

Signed-off-by: Fabio Estevam <festevam@denx.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoARM: dts: imx28-evk: Use 'eeprom' as the node name
Fabio Estevam [Thu, 22 Feb 2024 14:01:27 +0000 (11:01 -0300)]
ARM: dts: imx28-evk: Use 'eeprom' as the node name

Per at24.yaml, the node name should be 'eeprom'.

Change it accordingly to fix the following schema warning:

imx28-evk.dtb: at24@51: $nodename:0: 'at24@51' does not match '^eeprom@[0-9a-f]{1,2}$'
from schema $id: http://devicetree.org/schemas/eeprom/at24.yaml#

Signed-off-by: Fabio Estevam <festevam@denx.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoARM: dts: ls1021a: Enable usb3-lpm-capable for usb3 node
Li Yang [Wed, 21 Feb 2024 22:15:09 +0000 (17:15 -0500)]
ARM: dts: ls1021a: Enable usb3-lpm-capable for usb3 node

Enable USB3 HW LPM feature.

Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
Signed-off-by: Li Yang <leoyang.li@nxp.com>
Signed-off-by: Frank Li <Frank.Li@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoLinux 6.8-rc6
Linus Torvalds [Sun, 25 Feb 2024 23:46:06 +0000 (15:46 -0800)]
Linux 6.8-rc6

13 months agoMerge tag 'bcachefs-2024-02-25' of https://evilpiepirate.org/git/bcachefs
Linus Torvalds [Sun, 25 Feb 2024 23:31:57 +0000 (15:31 -0800)]
Merge tag 'bcachefs-2024-02-25' of https://evilpiepirate.org/git/bcachefs

Pull bcachefs fixes from Kent Overstreet:
 "Some more mostly boring fixes, but some not

  User reported ones:

   - the BTREE_ITER_FILTER_SNAPSHOTS one fixes a really nasty
     performance bug; user reported an untar initially taking two
     seconds and then ~2 minutes

   - kill a __GFP_NOFAIL in the buffered read path; this was a leftover
     from the trickier fix to kill __GFP_NOFAIL in readahead, where we
     can't return errors (and have to silently truncate the read
     ourselves).

     bcachefs can't use GFP_NOFAIL for folio state unlike iomap based
     filesystems because our folio state is just barely too big, 2MB
     hugepages cause us to exceed the 2 page threshhold for GFP_NOFAIL.

     additionally, the flags argument was just buggy, we weren't
     supplying GFP_KERNEL previously (!)"

* tag 'bcachefs-2024-02-25' of https://evilpiepirate.org/git/bcachefs:
  bcachefs: fix bch2_save_backtrace()
  bcachefs: Fix check_snapshot() memcpy
  bcachefs: Fix bch2_journal_flush_device_pins()
  bcachefs: fix iov_iter count underflow on sub-block dio read
  bcachefs: Fix BTREE_ITER_FILTER_SNAPSHOTS on inodes btree
  bcachefs: Kill __GFP_NOFAIL in buffered read path
  bcachefs: fix backpointer_to_text() when dev does not exist

13 months agobcachefs: fix bch2_save_backtrace()
Kent Overstreet [Sun, 25 Feb 2024 20:45:34 +0000 (15:45 -0500)]
bcachefs: fix bch2_save_backtrace()

Missed a call in the previous fix.

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
13 months agoMerge tag 'docs-6.8-fixes3' of git://git.lwn.net/linux
Linus Torvalds [Sun, 25 Feb 2024 18:58:12 +0000 (10:58 -0800)]
Merge tag 'docs-6.8-fixes3' of git://git.lwn.net/linux

Pull two documentation build fixes from Jonathan Corbet:

 - The XFS online fsck documentation uses incredibly deeply nested
   subsection and list nesting; that broke the PDF docs build. Tweak a
   parameter to tell LaTeX to allow the deeper nesting.

 - Fix a 6.8 PDF-build regression

* tag 'docs-6.8-fixes3' of git://git.lwn.net/linux:
  docs: translations: use attribute to store current language
  docs: Instruct LaTeX to cope with deeper nesting

13 months agoMerge tag 'usb-6.8-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb
Linus Torvalds [Sun, 25 Feb 2024 18:41:57 +0000 (10:41 -0800)]
Merge tag 'usb-6.8-rc6' of git://git./linux/kernel/git/gregkh/usb

Pull USB fixes from Greg KH:
 "Here are some small USB fixes for 6.8-rc6 to resolve some reported
  problems. These include:

   - regression fixes with typec tpcm code as reported by many

   - cdnsp and cdns3 driver fixes

   - usb role setting code bugfixes

   - build fix for uhci driver

   - ncm gadget driver bugfix

   - MAINTAINERS entry update

  All of these have been in linux-next all week with no reported issues
  and there is at least one fix in here that is in Thorsten's regression
  list that is being tracked"

* tag 'usb-6.8-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
  usb: typec: tpcm: Fix issues with power being removed during reset
  MAINTAINERS: Drop myself as maintainer of TYPEC port controller drivers
  usb: gadget: ncm: Avoid dropping datagrams of properly parsed NTBs
  Revert "usb: typec: tcpm: reset counter when enter into unattached state after try role"
  usb: gadget: omap_udc: fix USB gadget regression on Palm TE
  usb: dwc3: gadget: Don't disconnect if not started
  usb: cdns3: fix memory double free when handle zero packet
  usb: cdns3: fixed memory use after free at cdns3_gadget_ep_disable()
  usb: roles: don't get/set_role() when usb_role_switch is unregistered
  usb: roles: fix NULL pointer issue when put module's reference
  usb: cdnsp: fixed issue with incorrect detecting CDNSP family controllers
  usb: cdnsp: blocked some cdns3 specific code
  usb: uhci-grlib: Explicitly include linux/platform_device.h

13 months agoMerge tag 'tty-6.8-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty
Linus Torvalds [Sun, 25 Feb 2024 18:35:41 +0000 (10:35 -0800)]
Merge tag 'tty-6.8-rc6' of git://git./linux/kernel/git/gregkh/tty

Pull tty/serial driver fixes from Greg KH:
 "Here are three small serial/tty driver fixes for 6.8-rc6 that resolve
  the following reported errors:

   - riscv hvc console driver fix that was reported by many

   - amba-pl011 serial driver fix for RS485 mode

   - stm32 serial driver fix for RS485 mode

  All of these have been in linux-next all week with no reported
  problems"

* tag 'tty-6.8-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
  serial: amba-pl011: Fix DMA transmission in RS485 mode
  serial: stm32: do not always set SER_RS485_RX_DURING_TX if RS485 is enabled
  tty: hvc: Don't enable the RISC-V SBI console by default

13 months agoMerge tag 'x86_urgent_for_v6.8_rc6' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sun, 25 Feb 2024 18:22:21 +0000 (10:22 -0800)]
Merge tag 'x86_urgent_for_v6.8_rc6' of git://git./linux/kernel/git/tip/tip

Pull x86 fixes from Borislav Petkov:

 - Make sure clearing CPU buffers using VERW happens at the latest
   possible point in the return-to-userspace path, otherwise memory
   accesses after the VERW execution could cause data to land in CPU
   buffers again

* tag 'x86_urgent_for_v6.8_rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  KVM/VMX: Move VERW closer to VMentry for MDS mitigation
  KVM/VMX: Use BT+JNC, i.e. EFLAGS.CF to select VMRESUME vs. VMLAUNCH
  x86/bugs: Use ALTERNATIVE() instead of mds_user_clear static key
  x86/entry_32: Add VERW just before userspace transition
  x86/entry_64: Add VERW just before userspace transition
  x86/bugs: Add asm helpers for executing VERW

13 months agoMerge tag 'irq_urgent_for_v6.8_rc6' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sun, 25 Feb 2024 18:14:12 +0000 (10:14 -0800)]
Merge tag 'irq_urgent_for_v6.8_rc6' of git://git./linux/kernel/git/tip/tip

Pull irq fixes from Borislav Petkov:

 - Make sure GICv4 always gets initialized to prevent a kexec-ed kernel
   from silently failing to set it up

 - Do not call bus_get_dev_root() for the mbigen irqchip as it always
   returns NULL - use NULL directly

 - Fix hardware interrupt number truncation when assigning MSI
   interrupts

 - Correct sending end-of-interrupt messages to disabled interrupts
   lines on RISC-V PLIC

* tag 'irq_urgent_for_v6.8_rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  irqchip/gic-v3-its: Do not assume vPE tables are preallocated
  irqchip/mbigen: Don't use bus_get_dev_root() to find the parent
  PCI/MSI: Prevent MSI hardware interrupt number truncation
  irqchip/sifive-plic: Enable interrupt if needed before EOI

13 months agoMerge tag 'erofs-for-6.8-rc6-fixes' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sun, 25 Feb 2024 17:53:13 +0000 (09:53 -0800)]
Merge tag 'erofs-for-6.8-rc6-fixes' of git://git./linux/kernel/git/xiang/erofs

Pull erofs fix from Gao Xiang:

 - Fix page refcount leak when looking up specific inodes
   introduced by metabuf reworking

* tag 'erofs-for-6.8-rc6-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs:
  erofs: fix refcount on the metabuf used for inode lookup

13 months agoMerge tag 'pull-fixes.pathwalk-rcu-2' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sun, 25 Feb 2024 17:29:05 +0000 (09:29 -0800)]
Merge tag 'pull-fixes.pathwalk-rcu-2' of git://git./linux/kernel/git/viro/vfs

Pull RCU pathwalk fixes from Al Viro:
 "We still have some races in filesystem methods when exposed to RCU
  pathwalk. This series is a result of code audit (the second round of
  it) and it should deal with most of that stuff.

  Still pending: ntfs3 ->d_hash()/->d_compare() and ceph_d_revalidate().
  Up to maintainers (a note for NTFS folks - when documentation says
  that a method may not block, it *does* imply that blocking allocations
  are to be avoided. Really)"

[ More explanations for people who aren't familiar with the vagaries of
  RCU path walking: most of it is hidden from filesystems, but if a
  filesystem actively participates in the low-level path walking it
  needs to make sure the fields involved in that walk are RCU-safe.

  That "actively participate in low-level path walking" includes things
  like having its own ->d_hash()/->d_compare() routines, or by having
  its own directory permission function that doesn't just use the common
  helpers.  Having a ->d_revalidate() function will also have this issue.

  Note that instead of making everything RCU safe you can also choose to
  abort the RCU pathwalk if your operation cannot be done safely under
  RCU, but that obviously comes with a performance penalty. One common
  pattern is to allow the simple cases under RCU, and abort only if you
  need to do something more complicated.

  So not everything needs to be RCU-safe, and things like the inode etc
  that the VFS itself maintains obviously already are. But these fixes
  tend to be about properly RCU-delaying things like ->s_fs_info that
  are maintained by the filesystem and that got potentially released too
  early.   - Linus ]

* tag 'pull-fixes.pathwalk-rcu-2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
  ext4_get_link(): fix breakage in RCU mode
  cifs_get_link(): bail out in unsafe case
  fuse: fix UAF in rcu pathwalks
  procfs: make freeing proc_fs_info rcu-delayed
  procfs: move dropping pde and pid from ->evict_inode() to ->free_inode()
  nfs: fix UAF on pathwalk running into umount
  nfs: make nfs_set_verifier() safe for use in RCU pathwalk
  afs: fix __afs_break_callback() / afs_drop_open_mmap() race
  hfsplus: switch to rcu-delayed unloading of nls and freeing ->s_fs_info
  exfat: move freeing sbi, upcase table and dropping nls into rcu-delayed helper
  affs: free affs_sb_info with kfree_rcu()
  rcu pathwalk: prevent bogus hard errors from may_lookup()
  fs/super.c: don't drop ->s_user_ns until we free struct super_block itself

13 months agoMerge tag 'pull-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Linus Torvalds [Sun, 25 Feb 2024 17:17:15 +0000 (09:17 -0800)]
Merge tag 'pull-fixes' of git://git./linux/kernel/git/viro/vfs

Pull vfs fixes from Al Viro:
 "A couple of fixes - revert of regression from this cycle and a fix for
  erofs failure exit breakage (had been there since way back)"

* tag 'pull-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
  erofs: fix handling kern_mount() failure
  Revert "get rid of DCACHE_GENOCIDE"

13 months agodt-bindings: arm: add UNI-T UTi260B
Sebastian Reichel [Sat, 24 Feb 2024 21:29:47 +0000 (22:29 +0100)]
dt-bindings: arm: add UNI-T UTi260B

Add compatible value for i.MX6ULL based UNI-T UTi260B thermal camera.

Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agodt-bindings: vendor-prefixes: add UNI-T
Sebastian Reichel [Sat, 24 Feb 2024 21:29:46 +0000 (22:29 +0100)]
dt-bindings: vendor-prefixes: add UNI-T

Uni-Trend Technology is a manufacturer of measurement
and testing tools.

Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoarm64: dts: imx8mp-evk: Fix hdmi@3d node
Liu Ying [Fri, 23 Feb 2024 02:57:38 +0000 (10:57 +0800)]
arm64: dts: imx8mp-evk: Fix hdmi@3d node

The hdmi@3d node's compatible string is "adi,adv7535" instead of
"adi,adv7533" or "adi,adv751*".

Fix the hdmi@3d node by means of:
* Use default register addresses for "cec", "edid" and "packet", because
  there is no need to use a non-default address map.
* Add missing interrupt related properties.
* Drop "adi,input-*" properties which are only valid for adv751*.
* Add VEXT_3V3 fixed regulator.
* Add "*-supply" properties, since most are required.
* Fix label names - s/adv7533/adv7535/.

Fixes: 65344b9bed3a ("arm64: dts: imx8mp-evk: Add HDMI support")
Signed-off-by: Liu Ying <victor.liu@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoarm64: dts: imx93-var-som: Remove phy-supply from eqos
Fabio Estevam [Fri, 23 Feb 2024 02:43:37 +0000 (23:43 -0300)]
arm64: dts: imx93-var-som: Remove phy-supply from eqos

Per nxp,dwmac-imx.yaml, phy-supply is not a valid property.

Remove it to fix the following dt-schema warning:

imx93-var-som-symphony.dtb: ethernet@428a0000: Unevaluated properties are not allowed ('phy-supply' was unexpected)
from schema $id: http://devicetree.org/schemas/net/nxp,dwmac-imx.yaml#

The reg_eqos_phy regulator is marked as 'regulator-always-on', so it is
safe to remove the phy-supply property.

Signed-off-by: Fabio Estevam <festevam@denx.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoarm64: dts: imx8mp-phyboard-pollux: Disable pull-up for CD GPIO
Dominik Haller [Thu, 22 Feb 2024 12:28:53 +0000 (13:28 +0100)]
arm64: dts: imx8mp-phyboard-pollux: Disable pull-up for CD GPIO

Removes the pull-up resistor from the pad's settings to keep it
consistent for all boards. We have pull-ups in hardware on all boards so we
don't need to set the additional one from the iomux controller.

Signed-off-by: Dominik Haller <d.haller@phytec.de>
Signed-off-by: Benjamin Hahn <B.Hahn@phytec.de>
Signed-off-by: Yashwanth Varakala <y.varakala@phytec.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoarm64: dts: imx8mp-phyboard-pollux: Reduce drive strength for eqos tx lines
Teresa Remmet [Thu, 22 Feb 2024 12:28:52 +0000 (13:28 +0100)]
arm64: dts: imx8mp-phyboard-pollux: Reduce drive strength for eqos tx lines

Reduce drive strength on eqos tx lines for signal quality improvements.

Signed-off-by: Teresa Remmet <t.remmet@phytec.de>
Signed-off-by: Benjamin Hahn <B.Hahn@phytec.de>
Signed-off-by: Yashwanth Varakala <y.varakala@phytec.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoarm64: dts: imx8mp-phyboard-pollux: Set debug uart muxing to 0x140
Yannic Moog [Thu, 22 Feb 2024 12:28:51 +0000 (13:28 +0100)]
arm64: dts: imx8mp-phyboard-pollux: Set debug uart muxing to 0x140

Set Pull Resistors Enable bit to put signal into a defined state.

Signed-off-by: Yannic Moog <y.moog@phytec.de>
Signed-off-by: Benjamin Hahn <B.Hahn@phytec.de>
Signed-off-by: Yashwanth Varakala <y.varakala@phytec.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoarm64: dts: imx8mp-phyboard-pollux: Add and update rtc devicetree node
Yashwanth Varakala [Thu, 22 Feb 2024 12:28:50 +0000 (13:28 +0100)]
arm64: dts: imx8mp-phyboard-pollux: Add and update rtc devicetree node

The interrupt of the RTC is connected on the carrier board
phyBOARD-i.MX8MP-Pollux.

RTC trickle-charger devicetree property is dependent on the
phyboard-pollux design.

Signed-off-by: Yashwanth Varakala <y.varakala@phytec.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoarm64: dts: imx8mm-evk: Add spdif sound card support
Shengjiu Wang [Thu, 22 Feb 2024 06:17:13 +0000 (14:17 +0800)]
arm64: dts: imx8mm-evk: Add spdif sound card support

Add spdif sound card support, configure the pinmux.

This sound card supports recording and playing sound
through spdif interface.

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoarm64: dts: mba8xx: Add missing #interrupt-cells
Alexander Stein [Wed, 21 Feb 2024 14:40:12 +0000 (15:40 +0100)]
arm64: dts: mba8xx: Add missing #interrupt-cells

The GPIO expander is a interrupt-controller, so add the missing
 #interrupt-cells property as well.

Fixes: 71363a485ad0c ("arm64: dts: freescale: add initial device tree for TQMa8Xx")
Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoarm64: dts: imx8mp: Set SPI NOR to max 40 MHz on Data Modul i.MX8M Plus eDM SBC
Marek Vasut [Sat, 17 Feb 2024 21:33:30 +0000 (22:33 +0100)]
arm64: dts: imx8mp: Set SPI NOR to max 40 MHz on Data Modul i.MX8M Plus eDM SBC

The SPI NOR bus routing on this board cannot go above 50 MHz,
set the clock frequency to maximum of 40 MHz to be within a
safe margin. Remove the comment as well.

Fixes: 562d222f23f0 ("arm64: dts: imx8mp: Add support for Data Modul i.MX8M Plus eDM SBC")
Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoARM: dts: imx6dl-yapp4: Move the internal switch PHYs under the switch node
Michal Vokáč [Wed, 14 Feb 2024 09:03:28 +0000 (10:03 +0100)]
ARM: dts: imx6dl-yapp4: Move the internal switch PHYs under the switch node

We identified that the PHYs actually do not work since commit 7da7b84fee58
("ARM: dts: imx6dl-yapp4: Move phy reset into switch node") as
a coincidence of several circumstances.

The reset signal is kept asserted by a pull-down resistor on the board
unless it is deasserted by GPIO from the SoC. This is to keep the switch
dead until it is configured properly by the kernel and user space.

Prior to the referenced commit the switch was reset by the FEC driver
and the reset GPIO was actively deasserted. The mdio-bus was scanned
and the attached switch and its PHYs were found and configured.

With the referenced commit the switch is reset by the qca8k driver.
Because of another bug in the qca8k driver, functionality of the reset
pin depends on its pre-kernel configuration. See commit c44fc98f0a8f
("net: dsa: qca8k: fix illegal usage of GPIO")

The problem did not appear until we removed support for the switch
and configuration of its reset pin from the bootloader.

To fix that, properly describe the internal mdio-bus configuration of
the qca8334 switch. The PHYs are internal to the switch and sit on its
internal mdio-bus.

Fixes: 7da7b84fee58 ("ARM: dts: imx6dl-yapp4: Move phy reset into switch node")
Signed-off-by: Michal Vokáč <michal.vokac@ysoft.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoARM: dts: imx6dl-yapp4: Fix typo in the QCA switch register address
Michal Vokáč [Wed, 14 Feb 2024 09:03:27 +0000 (10:03 +0100)]
ARM: dts: imx6dl-yapp4: Fix typo in the QCA switch register address

This change does not have any functional effect. The switch works just
fine without this patch as it has full access to all the addresses
on the bus. This is simply a clean-up to set the node name address
and reg address to the same value.

Fixes: 15b43e497ffd ("ARM: dts: imx6dl-yapp4: Use correct pseudo PHY address for the switch")
Signed-off-by: Michal Vokáč <michal.vokac@ysoft.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoarm64: dts: imx8mn: tqma8mqnl-mba8mx: Add USB DR overlay
Alexander Stein [Tue, 20 Feb 2024 16:03:37 +0000 (17:03 +0100)]
arm64: dts: imx8mn: tqma8mqnl-mba8mx: Add USB DR overlay

imx8mn has only one USB interface. The platform supports using as USB host
(default), or switch to USB DR using this overlay.

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoarm64: dts: imx8mq: tqma8mq-mba8mx: Add missing USB vbus supply
Alexander Stein [Tue, 20 Feb 2024 15:33:33 +0000 (16:33 +0100)]
arm64: dts: imx8mq: tqma8mq-mba8mx: Add missing USB vbus supply

VBUS 5V is statically provided to both USB host and on-bard USB-hub.

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoarm64: dts: freescale: imx8mm/imx8mq: mba8mx: Use PCIe clock generator
Alexander Stein [Tue, 20 Feb 2024 14:23:06 +0000 (15:23 +0100)]
arm64: dts: freescale: imx8mm/imx8mq: mba8mx: Use PCIe clock generator

PCIe reference clock is provided by Renesas 9FGV0441. Reference this
instead of a fixed-clock.

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoext4_get_link(): fix breakage in RCU mode
Al Viro [Sat, 3 Feb 2024 06:17:34 +0000 (01:17 -0500)]
ext4_get_link(): fix breakage in RCU mode

1) errors from ext4_getblk() should not be propagated to caller
unless we are really sure that we would've gotten the same error
in non-RCU pathwalk.
2) we leak buffer_heads if ext4_getblk() is successful, but bh is
not uptodate.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
13 months agocifs_get_link(): bail out in unsafe case
Al Viro [Wed, 20 Sep 2023 02:28:16 +0000 (22:28 -0400)]
cifs_get_link(): bail out in unsafe case

->d_revalidate() bails out there, anyway.  It's not enough
to prevent getting into ->get_link() in RCU mode, but that
could happen only in a very contrieved setup.  Not worth
trying to do anything fancy here unless ->d_revalidate()
stops kicking out of RCU mode at least in some cases.

Reviewed-by: Christian Brauner <brauner@kernel.org>
Acked-by: Miklos Szeredi <mszeredi@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
13 months agofuse: fix UAF in rcu pathwalks
Al Viro [Thu, 28 Sep 2023 04:19:39 +0000 (00:19 -0400)]
fuse: fix UAF in rcu pathwalks

->permission(), ->get_link() and ->inode_get_acl() might dereference
->s_fs_info (and, in case of ->permission(), ->s_fs_info->fc->user_ns
as well) when called from rcu pathwalk.

Freeing ->s_fs_info->fc is rcu-delayed; we need to make freeing ->s_fs_info
and dropping ->user_ns rcu-delayed too.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
13 months agoprocfs: make freeing proc_fs_info rcu-delayed
Al Viro [Wed, 20 Sep 2023 04:12:00 +0000 (00:12 -0400)]
procfs: make freeing proc_fs_info rcu-delayed

makes proc_pid_ns() safe from rcu pathwalk (put_pid_ns()
is still synchronous, but that's not a problem - it does
rcu-delay everything that needs to be)

Reviewed-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
13 months agoprocfs: move dropping pde and pid from ->evict_inode() to ->free_inode()
Al Viro [Wed, 20 Sep 2023 03:52:58 +0000 (23:52 -0400)]
procfs: move dropping pde and pid from ->evict_inode() to ->free_inode()

that keeps both around until struct inode is freed, making access
to them safe from rcu-pathwalk

Acked-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
13 months agonfs: fix UAF on pathwalk running into umount
Al Viro [Thu, 28 Sep 2023 02:11:26 +0000 (22:11 -0400)]
nfs: fix UAF on pathwalk running into umount

NFS ->d_revalidate(), ->permission() and ->get_link() need to access
some parts of nfs_server when called in RCU mode:
server->flags
server->caps
*(server->io_stats)
and, worst of all, call
server->nfs_client->rpc_ops->have_delegation
(the last one - as NFS_PROTO(inode)->have_delegation()).  We really
don't want to RCU-delay the entire nfs_free_server() (it would have
to be done with schedule_work() from RCU callback, since it can't
be made to run from interrupt context), but actual freeing of
nfs_server and ->io_stats can be done via call_rcu() just fine.
nfs_client part is handled simply by making nfs_free_client() use
kfree_rcu().

Acked-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
13 months agonfs: make nfs_set_verifier() safe for use in RCU pathwalk
Al Viro [Thu, 28 Sep 2023 01:50:25 +0000 (21:50 -0400)]
nfs: make nfs_set_verifier() safe for use in RCU pathwalk

nfs_set_verifier() relies upon dentry being pinned; if that's
the case, grabbing ->d_lock stabilizes ->d_parent and guarantees
that ->d_parent points to a positive dentry.  For something
we'd run into in RCU mode that is *not* true - dentry might've
been through dentry_kill() just as we grabbed ->d_lock, with
its parent going through the same just as we get to into
nfs_set_verifier_locked().  It might get to detaching inode
(and zeroing ->d_inode) before nfs_set_verifier_locked() gets
to fetching that; we get an oops as the result.

That can happen in nfs{,4} ->d_revalidate(); the call chain in
question is nfs_set_verifier_locked() <- nfs_set_verifier() <-
nfs_lookup_revalidate_delegated() <- nfs{,4}_do_lookup_revalidate().
We have checked that the parent had been positive, but that's
done before we get to nfs_set_verifier() and it's possible for
memory pressure to pick our dentry as eviction candidate by that
time.  If that happens, back-to-back attempts to kill dentry and
its parent are quite normal.  Sure, in case of eviction we'll
fail the ->d_seq check in the caller, but we need to survive
until we return there...

Acked-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
13 months agoafs: fix __afs_break_callback() / afs_drop_open_mmap() race
Al Viro [Sat, 30 Sep 2023 00:24:34 +0000 (20:24 -0400)]
afs: fix __afs_break_callback() / afs_drop_open_mmap() race

In __afs_break_callback() we might check ->cb_nr_mmap and if it's non-zero
do queue_work(&vnode->cb_work).  In afs_drop_open_mmap() we decrement
->cb_nr_mmap and do flush_work(&vnode->cb_work) if it reaches zero.

The trouble is, there's nothing to prevent __afs_break_callback() from
seeing ->cb_nr_mmap before the decrement and do queue_work() after both
the decrement and flush_work().  If that happens, we might be in trouble -
vnode might get freed before the queued work runs.

__afs_break_callback() is always done under ->cb_lock, so let's make
sure that ->cb_nr_mmap can change from non-zero to zero while holding
->cb_lock (the spinlock component of it - it's a seqlock and we don't
need to mess with the counter).

Acked-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
13 months agohfsplus: switch to rcu-delayed unloading of nls and freeing ->s_fs_info
Al Viro [Wed, 20 Sep 2023 00:18:59 +0000 (20:18 -0400)]
hfsplus: switch to rcu-delayed unloading of nls and freeing ->s_fs_info

->d_hash() and ->d_compare() use those, so we need to delay freeing
them.

Reviewed-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
13 months agoexfat: move freeing sbi, upcase table and dropping nls into rcu-delayed helper
Al Viro [Tue, 19 Sep 2023 19:53:32 +0000 (15:53 -0400)]
exfat: move freeing sbi, upcase table and dropping nls into rcu-delayed helper

That stuff can be accessed by ->d_hash()/->d_compare(); as it is, we have
a hard-to-hit UAF if rcu pathwalk manages to get into ->d_hash() on a filesystem
that is in process of getting shut down.

Besides, having nls and upcase table cleanup moved from ->put_super() towards
the place where sbi is freed makes for simpler failure exits.

Acked-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
13 months agoaffs: free affs_sb_info with kfree_rcu()
Al Viro [Tue, 19 Sep 2023 23:36:07 +0000 (19:36 -0400)]
affs: free affs_sb_info with kfree_rcu()

one of the flags in it is used by ->d_hash()/->d_compare()

Reviewed-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
13 months agorcu pathwalk: prevent bogus hard errors from may_lookup()
Al Viro [Sat, 30 Sep 2023 01:11:41 +0000 (21:11 -0400)]
rcu pathwalk: prevent bogus hard errors from may_lookup()

If lazy call of ->permission() returns a hard error, check that
try_to_unlazy() succeeds before returning it.  That both makes
life easier for ->permission() instances and closes the race
in ENOTDIR handling - it is possible that positive d_can_lookup()
seen in link_path_walk() applies to the state *after* unlink() +
mkdir(), while nd->inode matches the state prior to that.

Normally seeing e.g. EACCES from permission check in rcu pathwalk
means that with some timings non-rcu pathwalk would've run into
the same; however, running into a non-executable regular file
in the middle of a pathname would not get to permission check -
it would fail with ENOTDIR instead.

Reviewed-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
13 months agofs/super.c: don't drop ->s_user_ns until we free struct super_block itself
Al Viro [Fri, 2 Feb 2024 02:10:01 +0000 (21:10 -0500)]
fs/super.c: don't drop ->s_user_ns until we free struct super_block itself

Avoids fun races in RCU pathwalk...  Same goes for freeing LSM shite
hanging off super_block's arse.

Reviewed-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
13 months agoarm64: dts: imx8mn-beacon: Remove unnecessary clock configuration
Adam Ford [Sun, 11 Feb 2024 23:18:02 +0000 (17:18 -0600)]
arm64: dts: imx8mn-beacon: Remove unnecessary clock configuration

Since commit 8208181fe536 ("clk: imx: composite-8m:
Add imx8m_divider_determine_rate") the lcdif controller has
had the ability to set the disp_pixel_clk rate which propagates
up the tree and sets the video_pll rate automatically.

As such, there is no need to define it in the board file.

Signed-off-by: Adam Ford <aford173@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoarm64: dts: imx8mn: Slow default video_pll clock rate
Adam Ford [Sun, 11 Feb 2024 23:15:08 +0000 (17:15 -0600)]
arm64: dts: imx8mn: Slow default video_pll clock rate

Since commit 8208181fe536 ("clk: imx: composite-8m:
Add imx8m_divider_determine_rate") the lcdif controller has
had the ability to set the disp_pixel_clk rate which propagates
up the tree and sets the video_pll rate automatically.

By setting this value low, it will force the recalculation of
video_pll to the lowest rate needed by lcdif instead of
dividing a larger clock down to the desired clock speed. This
has the  advantage of being able to lower the video_pll rate
from 594MHz to 148.5MHz when operating at 1080p. It can go even
lower when operating at lower resolutions and refresh rates.

Signed-off-by: Adam Ford <aford173@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoarm64: dts: imx8mp-beacon: Configure multiple queues on eqos
Adam Ford [Sun, 11 Feb 2024 13:55:34 +0000 (07:55 -0600)]
arm64: dts: imx8mp-beacon: Configure multiple queues on eqos

The imx8mp-beacon SOM has an integrated PHY connected to
the EQOS ethernet controller which can support up to five
queues.  Configure these queues in the same manor as done
on the imx8mp-evk.

Signed-off-by: Adam Ford <aford173@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoarm64: dts: imx8mp-beacon: Enable Bluetooth
Adam Ford [Sun, 11 Feb 2024 13:11:16 +0000 (07:11 -0600)]
arm64: dts: imx8mp-beacon: Enable Bluetooth

The imx8mp-beacon SOM has wireless chip supporting Wi-Fi and
Bluetooth shared.  The Wi-Fi is already enabled via the SDIO
interface, so enable the Bluetooth via UART1.

Signed-off-by: Adam Ford <aford173@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agobcachefs: Fix check_snapshot() memcpy
Kent Overstreet [Sat, 24 Feb 2024 06:18:45 +0000 (01:18 -0500)]
bcachefs: Fix check_snapshot() memcpy

check_snapshot() copies the bch_snapshot to a temporary to easily handle
older versions that don't have all the fields of the current version,
but it lacked a min() to correctly handle keys newer and larger than the
current version.

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
13 months agobcachefs: Fix bch2_journal_flush_device_pins()
Kent Overstreet [Sun, 18 Feb 2024 01:38:47 +0000 (20:38 -0500)]
bcachefs: Fix bch2_journal_flush_device_pins()

If a journal write errored, the list of devices it was written to could
be empty - we're not supposed to mark an empty replicas list.

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
13 months agobcachefs: fix iov_iter count underflow on sub-block dio read
Brian Foster [Thu, 15 Feb 2024 17:16:05 +0000 (12:16 -0500)]
bcachefs: fix iov_iter count underflow on sub-block dio read

bch2_direct_IO_read() checks the request offset and size for sector
alignment and then falls through to a couple calculations to shrink
the size of the request based on the inode size. The problem is that
these checks round up to the fs block size, which runs the risk of
underflowing iter->count if the block size happens to be large
enough. This is triggered by fstest generic/361 with a 4k block
size, which subsequently leads to a crash. To avoid this crash,
check that the shorten length doesn't exceed the overall length of
the iter.

Fixes:
Signed-off-by: Brian Foster <bfoster@redhat.com>
Reviewed-by: Su Yue <glass.su@suse.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
13 months agobcachefs: Fix BTREE_ITER_FILTER_SNAPSHOTS on inodes btree
Kent Overstreet [Sun, 25 Feb 2024 00:14:36 +0000 (19:14 -0500)]
bcachefs: Fix BTREE_ITER_FILTER_SNAPSHOTS on inodes btree

If we're in FILTER_SNAPSHOTS mode and we start scanning a range of the
keyspace where no keys are visible in the current snapshot, we have a
problem - we'll scan for a very long time before scanning terminates.

Awhile back, this was fixed for most cases with peek_upto() (and
assertions that enforce that it's being used).

But the fix missed the fact that the inodes btree is different - every
key offset is in a different snapshot tree, not just the inode field.

Fixes:
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
13 months agobcachefs: Kill __GFP_NOFAIL in buffered read path
Kent Overstreet [Fri, 23 Feb 2024 02:39:13 +0000 (21:39 -0500)]
bcachefs: Kill __GFP_NOFAIL in buffered read path

Recently, we fixed our __GFP_NOFAIL usage in the readahead path, but the
easy one in read_single_folio() (where wa can return an error) was
missed - oops.

Fixes:
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
13 months agobcachefs: fix backpointer_to_text() when dev does not exist
Kent Overstreet [Wed, 21 Feb 2024 03:16:00 +0000 (22:16 -0500)]
bcachefs: fix backpointer_to_text() when dev does not exist

Fixes:
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
13 months agoMerge tag 'powerpc-6.8-4' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc...
Linus Torvalds [Sun, 25 Feb 2024 00:49:51 +0000 (16:49 -0800)]
Merge tag 'powerpc-6.8-4' of git://git./linux/kernel/git/powerpc/linux

Pull powerpc fixes from Michael Ellerman:

 - Fix a crash when hot adding a PCI device to an LPAR since
   recent changes

 - Fix nested KVM level-2 guest reboot failure due to empty
   'arch_compat'

Thanks to Amit Machhiwal, Aneesh Kumar K.V (IBM), Brian King, Gaurav
Batra, and Vaibhav Jain.

* tag 'powerpc-6.8-4' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
  KVM: PPC: Book3S HV: Fix L2 guest reboot failure due to empty 'arch_compat'
  powerpc/pseries/iommu: DLPAR add doesn't completely initialize pci_controller

13 months agoMerge tag 'iommu-fixes-v6.8-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git...
Linus Torvalds [Sat, 24 Feb 2024 23:59:26 +0000 (15:59 -0800)]
Merge tag 'iommu-fixes-v6.8-rc5' of git://git./linux/kernel/git/joro/iommu

Pull iommu fixes from Joerg Roedel:

 - Intel VT-d fixes for nested domain handling:

      - Cache invalidation for changes in a parent domain

      - Dirty tracking setting for parent and nested domains

      - Fix a constant-out-of-range warning

 - ARM SMMU fixes:

      - Fix CD allocation from atomic context when using SVA with SMMUv3

      - Revert the conversion of SMMUv2 to domain_alloc_paging(), as it
        breaks the boot for Qualcomm MSM8996 devices

 - Restore SVA handle sharing in core code as it turned out there are
   still drivers relying on it

* tag 'iommu-fixes-v6.8-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:
  iommu/sva: Restore SVA handle sharing
  iommu/arm-smmu-v3: Do not use GFP_KERNEL under as spinlock
  iommu/vt-d: Fix constant-out-of-range warning
  iommu/vt-d: Set SSADE when attaching to a parent with dirty tracking
  iommu/vt-d: Add missing dirty tracking set for parent domain
  iommu/vt-d: Wrap the dirty tracking loop to be a helper
  iommu/vt-d: Remove domain parameter for intel_pasid_setup_dirty_tracking()
  iommu/vt-d: Add missing device iotlb flush for parent domain
  iommu/vt-d: Update iotlb in nested domain attach
  iommu/vt-d: Add missing iotlb flush for parent domain
  iommu/vt-d: Add __iommu_flush_iotlb_psi()
  iommu/vt-d: Track nested domains in parent
  Revert "iommu/arm-smmu: Convert to domain_alloc_paging()"

13 months agoMerge tag 'cxl-fixes-6.8-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl
Linus Torvalds [Sat, 24 Feb 2024 23:53:40 +0000 (15:53 -0800)]
Merge tag 'cxl-fixes-6.8-rc6' of git://git./linux/kernel/git/cxl/cxl

Pull cxl fixes from Dan Williams:
 "A collection of significant fixes for the CXL subsystem.

  The largest change in this set, that bordered on "new development", is
  the fix for the fact that the location of the new qos_class attribute
  did not match the Documentation. The fix ends up deleting more code
  than it added, and it has a new unit test to backstop basic errors in
  this interface going forward. So the "red-diff" and unit test saved
  the "rip it out and try again" response.

  In contrast, the new notification path for firmware reported CXL
  errors (CXL CPER notifications) has a locking context bug that can not
  be fixed with a red-diff. Given where the release cycle stands, it is
  not comfortable to squeeze in that fix in these waning days. So, that
  receives the "back it out and try again later" treatment.

  There is a regression fix in the code that establishes memory NUMA
  nodes for platform CXL regions. That has an ack from x86 folks. There
  are a couple more fixups for Linux to understand (reassemble) CXL
  regions instantiated by platform firmware. The policy around platforms
  that do not match host-physical-address with system-physical-address
  (i.e. systems that have an address translation mechanism between the
  address range reported in the ACPI CEDT.CFMWS and endpoint decoders)
  has been softened to abort driver load rather than teardown the memory
  range (can cause system hangs). Lastly, there is a robustness /
  regression fix for cases where the driver would previously continue in
  the face of error, and a fixup for PCI error notification handling.

  Summary:

   - Fix NUMA initialization from ACPI CEDT.CFMWS

   - Fix region assembly failures due to async init order

   - Fix / simplify export of qos_class information

   - Fix cxl_acpi initialization vs single-window-init failures

   - Fix handling of repeated 'pci_channel_io_frozen' notifications

   - Workaround platforms that violate host-physical-address ==
     system-physical address assumptions

   - Defer CXL CPER notification handling to v6.9"

* tag 'cxl-fixes-6.8-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl:
  cxl/acpi: Fix load failures due to single window creation failure
  acpi/ghes: Remove CXL CPER notifications
  cxl/pci: Fix disabling memory if DVSEC CXL Range does not match a CFMWS window
  cxl/test: Add support for qos_class checking
  cxl: Fix sysfs export of qos_class for memdev
  cxl: Remove unnecessary type cast in cxl_qos_class_verify()
  cxl: Change 'struct cxl_memdev_state' *_perf_list to single 'struct cxl_dpa_perf'
  cxl/region: Allow out of order assembly of autodiscovered regions
  cxl/region: Handle endpoint decoders in cxl_region_find_decoder()
  x86/numa: Fix the sort compare func used in numa_fill_memblks()
  x86/numa: Fix the address overlap check in numa_fill_memblks()
  cxl/pci: Skip to handle RAS errors if CXL.mem device is detached

13 months agoMerge tag 'for-6.8/dm-fix-3' of git://git.kernel.org/pub/scm/linux/kernel/git/device...
Linus Torvalds [Sat, 24 Feb 2024 17:55:29 +0000 (09:55 -0800)]
Merge tag 'for-6.8/dm-fix-3' of git://git./linux/kernel/git/device-mapper/linux-dm

Pull device mapper fix from Mike Snitzer:

 - Fix DM integrity and verity targets to not use excessive stack when
   they recheck in the error path.

* tag 'for-6.8/dm-fix-3' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
  dm-integrity, dm-verity: reduce stack usage for recheck

13 months agoMerge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
Linus Torvalds [Sat, 24 Feb 2024 17:49:16 +0000 (09:49 -0800)]
Merge tag 'scsi-fixes' of git://git./linux/kernel/git/jejb/scsi

Pull SCSI fixes from James Bottomley:
 "Six fixes: the four driver ones are pretty trivial.

  The larger two core changes are to try to fix various USB attached
  devices which have somewhat eccentric ways of handling the VPD and
  other mode pages which necessitate multiple revalidates (that were
  removed in the interests of efficiency) and updating the heuristic for
  supported VPD pages"

* tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
  scsi: jazz_esp: Only build if SCSI core is builtin
  scsi: smartpqi: Fix disable_managed_interrupts
  scsi: ufs: Uninitialized variable in ufshcd_devfreq_target()
  scsi: target: pscsi: Fix bio_put() for error case
  scsi: core: Consult supported VPD page list prior to fetching page
  scsi: sd: usb_storage: uas: Access media prior to querying device properties

13 months agoMerge tag 'i2c-for-6.8-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa...
Linus Torvalds [Sat, 24 Feb 2024 17:46:05 +0000 (09:46 -0800)]
Merge tag 'i2c-for-6.8-rc6' of git://git./linux/kernel/git/wsa/linux

Pull i2c fix from Wolfram Sang:
 "A bugfix for host drivers"

* tag 'i2c-for-6.8-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
  i2c: imx: when being a target, mark the last read as processed

13 months agoMerge tag 'loongarch-fixes-6.8-3' of git://git.kernel.org/pub/scm/linux/kernel/git...
Linus Torvalds [Sat, 24 Feb 2024 17:36:35 +0000 (09:36 -0800)]
Merge tag 'loongarch-fixes-6.8-3' of git://git./linux/kernel/git/chenhuacai/linux-loongson

Pull LoongArch fixes from Huacai Chen:
 "Fix two cpu-hotplug issues, fix the init sequence about FDT system,
  fix the coding style of dts, and fix the wrong CPUCFG ID handling of
  KVM"

* tag 'loongarch-fixes-6.8-3' of git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson:
  LoongArch: KVM: Streamline kvm_check_cpucfg() and improve comments
  LoongArch: KVM: Rename _kvm_get_cpucfg() to _kvm_get_cpucfg_mask()
  LoongArch: KVM: Fix input validation of _kvm_get_cpucfg() & kvm_check_cpucfg()
  LoongArch: dts: Minor whitespace cleanup
  LoongArch: Call early_init_fdt_scan_reserved_mem() earlier
  LoongArch: Update cpu_sibling_map when disabling nonboot CPUs
  LoongArch: Disable IRQ before init_fn() for nonboot CPUs

13 months agodm-integrity, dm-verity: reduce stack usage for recheck
Arnd Bergmann [Sat, 24 Feb 2024 13:48:03 +0000 (14:48 +0100)]
dm-integrity, dm-verity: reduce stack usage for recheck

The newly added integrity_recheck() function has another larger stack
allocation, just like its caller integrity_metadata(). When it gets
inlined, the combination of the two exceeds the warning limit for 32-bit
architectures and possibly risks an overflow when this is called from
a deep call chain through a file system:

drivers/md/dm-integrity.c:1767:13: error: stack frame size (1048) exceeds limit (1024) in 'integrity_metadata' [-Werror,-Wframe-larger-than]
 1767 | static void integrity_metadata(struct work_struct *w)

Since the caller at this point is done using its checksum buffer,
just reuse the same buffer in the new function to avoid the double
allocation.

[Mikulas: add "noinline" to integrity_recheck and verity_recheck.
These functions are only called on error, so they shouldn't bloat the
stack frame or code size of the caller.]

Fixes: c88f5e553fe3 ("dm-integrity: recheck the integrity tag after a failure")
Fixes: 9177f3c0dea6 ("dm-verity: recheck the hash after a failure")
Cc: stable@vger.kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
13 months agoARM: dts: imx6ul: Set macaddress location in ocotp
Manuel Traut [Thu, 8 Feb 2024 12:19:59 +0000 (13:19 +0100)]
ARM: dts: imx6ul: Set macaddress location in ocotp

If a bootloader does not configure the MAC address, devices come up with
a random MAC at the moment.

ocotp provides registers for storing the mac-address.
Configure those for i.MX6UL and i.MX6ULL allows net/core to retrieve it from
there.

Signed-off-by: Manuel Traut <manuel.traut@mt.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoarm64: dts: freescale: minor whitespace cleanup
Krzysztof Kozlowski [Thu, 8 Feb 2024 10:52:17 +0000 (11:52 +0100)]
arm64: dts: freescale: minor whitespace cleanup

The DTS code coding style expects exactly one space before '{'
character.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
13 months agoi2c: imx: when being a target, mark the last read as processed
Corey Minyard [Wed, 21 Feb 2024 19:27:13 +0000 (20:27 +0100)]
i2c: imx: when being a target, mark the last read as processed

When being a target, NAK from the controller means that all bytes have
been transferred. So, the last byte needs also to be marked as
'processed'. Otherwise index registers of backends may not increase.

Fixes: f7414cd6923f ("i2c: imx: support slave mode for imx I2C driver")
Signed-off-by: Corey Minyard <minyard@acm.org>
Tested-by: Andrew Manley <andrew.manley@sealingtech.com>
Reviewed-by: Andrew Manley <andrew.manley@sealingtech.com>
Reviewed-by: Oleksij Rempel <o.rempel@pengutronix.de>
[wsa: fixed comment and commit message to properly describe the case]
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
13 months agoarm64: dts: allwinner: h616: Add thermal sensor and zones
Martin Botka [Mon, 19 Feb 2024 15:36:39 +0000 (15:36 +0000)]
arm64: dts: allwinner: h616: Add thermal sensor and zones

There are four thermal sensors:
- CPU
- GPU
- VE
- DRAM

Add the thermal sensor configuration and the thermal zones.

Signed-off-by: Martin Botka <martin.botka@somainline.org>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Link: https://lore.kernel.org/r/20240219153639.179814-8-andre.przywara@arm.com
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
13 months agoARM: dts: sun8i: Open FETA40i-C regulator aldo1
Fuyao Kashizuku [Tue, 26 Dec 2023 08:40:05 +0000 (16:40 +0800)]
ARM: dts: sun8i: Open FETA40i-C regulator aldo1

The USB PHY in the Allwinner R40 SoC seems to rely on voltage on the
VCC-TVIN/OUT supply pins for proper operation, on top of its own supply
voltage on VCC-USB. Without a 3.3V voltage supplied to VCC-TV*, USB
operation becomes unstable and can result in disconnects.

The Forlinx FETA40i-C SoM connects both the VCC-TVOUT and VCC-TVIN pins
to the ALDO1 rail of the PMIC, so we need to enable that rail for USB
operation. Since there is no supply property in the DT bindings for
the USB core, we need to always enable the regulator.

This fixes unstable USB operation on boards using the Forlinx FETA40i-C
module.

Signed-off-by: Fuyao Kashizuku <fuyao@sjterm.com>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Link: https://lore.kernel.org/r/ZYqRZev1g_mztff2@debian.cyg
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
13 months agoarm64: dts: allwinner: h616: Add Sipeed Longan SoM 3H and Pi 3H board support
Jisheng Zhang [Sun, 11 Feb 2024 08:17:39 +0000 (16:17 +0800)]
arm64: dts: allwinner: h616: Add Sipeed Longan SoM 3H and Pi 3H board support

The Sipeed Longan SoM 3H is a system on module based on the Allwinner
H618 SoC. The SoM features:

- Four ARM Cortex-A53 cores, Mali-G31 MP2 GPU
- 2/4 GiB LPDDR4 DRAM SoMs
- AXP313a PMIC
- eMMC

The Sipeed Longan PI 3H is a development board based on the above SoM.
The board features:
- Longan SoM 3H
- Raspberry-Pi-1 compatible GPIO header
- 2 USB 2.0 host port
- 1 USB 2.0 type C port (power supply + OTG)
- MicroSD slot
- 1Gbps Ethernet port (via RTL8211 PHY)
- HDMI port
- WiFi/BT chip

Add the devicetree file describing the currently supported features,
namely PMIC, LEDs, UART, SD card, eMMC, USB and Ethernet.

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Link: https://lore.kernel.org/r/20240211081739.395-3-jszhang@kernel.org
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
13 months agodt-bindings: arm: sunxi: Add Sipeed Longan Module 3H and Longan Pi 3H
Jisheng Zhang [Sun, 11 Feb 2024 08:17:38 +0000 (16:17 +0800)]
dt-bindings: arm: sunxi: Add Sipeed Longan Module 3H and Longan Pi 3H

Add name & compatible for the Sipeed Longan Module 3H and Longan PI 3H
board.

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Link: https://lore.kernel.org/r/20240211081739.395-2-jszhang@kernel.org
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
13 months agoarm64: dts: allwinner: h616: minor whitespace cleanup
Krzysztof Kozlowski [Thu, 8 Feb 2024 10:53:01 +0000 (11:53 +0100)]
arm64: dts: allwinner: h616: minor whitespace cleanup

The DTS code coding style expects exactly one space before '{'
character.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Link: https://lore.kernel.org/r/20240208105301.129005-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>