Arnd Bergmann [Mon, 30 Jan 2023 21:56:46 +0000 (22:56 +0100)]
Merge tag 'samsung-dt-6.3' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into arm/dt
Samsung DTS ARM changes for v6.3
1. Big cleanup and rework towards achieving zero-warning of dtbs_check
and dtc W=1:
- align node names with the bindings,
- drop or correct incorrect properties in several boards,
- correct HDMI bridge ports nodes on Exynos4412 Midas,
- add dummy regulator supplies when necessary to fullfil bindings
requirements,
- use lowercase hex,
- move non-MMIO exynos-bus nodes out of soc node,
- add unit address to USB DWC3 nodes.
Arnd Bergmann [Mon, 30 Jan 2023 21:55:59 +0000 (22:55 +0100)]
Merge tag 'arm-soc/for-6.3/devicetree-arm64' of https://github.com/Broadcom/stblinux into arm/dt
This pull request contains Broadcom ARM64 SoCs Device Tree updates for
6.3, please pull the following:
- Krzysztof aligns the SMMMU Device Tree nodes to use the desired
regular expression matched by the dtschema and he also removes the
deprecated "device_type" property for serial node(s)
* tag 'arm-soc/for-6.3/devicetree-arm64' of https://github.com/Broadcom/stblinux:
arm64: dts: broadcom: drop deprecated serial device_type
arm64: dts: broadcom: align SMMU node names with DT schema
Arnd Bergmann [Mon, 30 Jan 2023 17:16:35 +0000 (18:16 +0100)]
Merge tag 'tegra-for-6.3-arm64-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into arm/dt
arm64: tegra: Device tree changes for v6.3-rc1
There are two big changes in this: one is to bump the #address-cells and
the #size-cells properties to 2 so that bus address translations work
correctly and another to sort nodes according to a scheme that we've
been trying to follow, but where some inconsistencies have accumulated
over the years.
As for the rest, this adds mostly new things on Tegra234, such as USB
host and device support and identification EEPROMs found on Jetson AGX
Orin.
Some cleanups are also included, such as the removal of unneeded
properties or duplicated nodes.
* tag 'tegra-for-6.3-arm64-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
arm64: tegra: Drop I2C iommus and dma-coherent properties
arm64: tegra: Mark host1x as dma-coherent on Tegra194/234
arm64: tegra: Populate the XUDC node for Tegra234
arm64: tegra: Add dma-coherent property for Tegra194 XUDC
arm64: tegra: Populate Jetson AGX Orin EEPROMs
arm64: tegra: Populate address/size cells for Tegra234 I2C
arm64: tegra: Enable XUSB host function on Jetson AGX Orin
arm64: tegra: Sort nodes by unit-address, then alphabetically
arm64: tegra: Bump #address-cells and #size-cells
arm64: tegra: Sort includes
arm64: tegra: Fix duplicate regulator on Jetson TX1
arm64: tegra: Fix typo in gpio-ranges property
Arnd Bergmann [Mon, 30 Jan 2023 17:15:19 +0000 (18:15 +0100)]
Merge tag 'tegra-for-6.3-dt-bindings' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into arm/dt
dt-bindings: Changes for v6.3-rc1
Device tree files for 64-bit ARM Tegra SoCs have recently had to bump
the #address-cells and #size-cells to 2 in order to support bus address
translations across the entire device tree hierarchy. Explicitly allow
this in DT schemas to prevent validation errors.
* tag 'tegra-for-6.3-dt-bindings' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
dt-bindings: tegra: Allow #{address,size}-cells = <2>
Arnd Bergmann [Mon, 30 Jan 2023 17:14:15 +0000 (18:14 +0100)]
Merge tag 'renesas-dts-for-v6.3-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into arm/dt
Renesas DT updates for v6.3 (take two)
- High Performance mode (1.8 GHz) support for the Cortex-A76 CPU cores
on R-Car V4H,
- GPIO interrupt support for the RZ/G2UL SoC and the RZ/G2UL SMARC EVK
development board,
- USB Function support for the RZ/N1D SoC,
- Generic Sound Card driver examples for the Renesas R-Car Starter Kit
Premier/Pro and Shimafugi Kingfisher development board stack,
- Universal Flash Storage support for the Renesas Spider development
board,
- External Power Sequence Controller (PWC) support for the RZ/V2M SoC
and the RZ/V2M Evaluation Kit 2.0,
- IOMMU support for MMC on the R-Car S4-8 SoC,
- Miscellaneous fixes and improvements.
Arnd Bergmann [Mon, 30 Jan 2023 16:52:35 +0000 (17:52 +0100)]
Merge tag 'qcom-arm64-for-6.3' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/dt
Qualcomm ARM64 Devicetree updates for v6.3
This introduces support for the new Snapdragon 8 Gen 2 (SM8550)
platform. In addition to the adding support for the MTP on this
platform, support the following devices is introduced:
- GPLUS FL8005A
- Google Zombie with LTE and NVMe
- Google Zombie with NVMe
- Lenovo Tab P11
- Motorola G5 Plus
- Motorola G7 Power
- Motorola Moto G6
- Samsung Galaxy J5 (2016)
- Samsung Galaxy Tab A 8.0
- Samsung Galaxy Tab A 9.7
- Xiaomi Mi A1
- Xiaomi Mi A2 Lite
- Xiaomi Redmi 5 Plus
- Xiaomi Redmi Note 4X
On IPQ8074 the PCIe PHY register regions and PHY clock names are
corrected.
On MSM8916 DMA for the I2C controllers are introduced and blsp_dma is
unconditionally enabled. Per-sensor calibration data is provided for the
thermal sensor (tsens) block. The GPLUS FL8005A device is introduced and
gains support for touchscreen and flash LED. An additional Samsung
Galaxy J5 variant is added, and support is added for hall sensor and
MUIC.
Per-sensor calibration information is introduced for the thermal sensor
on MSM8956 as well.
On MSM8996, GPLL0 is added as a possible Kryo clock controller input, a
carveout is added to get modem metadata out of System RAM. Missing bus
clocks are added for agnoc2.
SDHCI1 is enabled on the Sony Xperia Tone platform and USB is limited to
high-speed, to make USB work.
MSM8998 gains the same modem carveout as other platforms, and the
description of the clock hierarchy is improved.
On QCS404 the clock hierarchy description is improved, the CDSP PAS node
is adjusted to match the binding and the thermal sensor (tsens) gains
per-sensor calibration information.
On SC7180 the Data Capture and Compare block is intorduced, and a
carveout for the modem metadata is introduced, to get this out of System
RAM. Pazquel360 gains touchscreen support, the regulator off-on-time is
adjusted for the Trogdor eDP and touchscreen.
Data lane and frequency properties are introduced for the DisplayPort
links.
SC7280 also gets Data Capture and Compare support, as well as the
dedicated modem metadata region. Herobrine gains DP audio support.
IPA description is updated so that it's only active on boards with a
modem.
On SC8280XP the display subsystem is introduced, currently with support
for most of the DisplayPort controllers. GPR, SoundWire and LPASS is
introduced, for audio support. Missing I2C and SPI controllers are
introduced.
Support for EDP is introduced for the CRD, the Lenovo ThinkPad X13s and
the SA8295P ADP automotive board. The SA8540P Ride platform enables one
i2c and pcie controllers.
A CMA region is defined for the CRD and X13s, to avoid allocation issues
from the NVMe support.
Fairphone FP3 gains NFC support and the Sony Xperia Nile platform gains
a description of simplefb.
SDM670 gains QFPROM definition.
SDM845 gains a carveout for the modem metadata and support for the Data
Capture and Compare block is introduced. Lenovo Yoga C630 firmware
paths are aligned with all other Qualcomm platforms.
On SM6125 apss SMMU is introduced and streams are defined for USB and
SDHCI controllers. GPI DMA description is introduced, as well as missing
SPI and I2C serial engines.
On Sony Xperia 10 IIa regulator definitions are improved, SDHCI2 is
introduced, and I2C and related GPI DMA blocks are enabled.
On SM6350 IPA is introduced. DDR and L3 scaling is introduced based on
CPUfreq.
Fairphone FP4, on SM7225 also has IPA enabled, and the Flash LED is
enabled as well.
On SM8150 the display subsystem is introduced, with clock controller,
DPU and two DSI controllers. The Data Capture and Compare block is
introduced.
For the Sony Xperia Kumano platform, GPIO keys and NFC support is
introduced.
For SM8350 PCIe is introduced, as is the display subsystem with display
clock controller, DPU and two DSI controllers. #interconnect-cells is
changed to 2, to align with other platforms and allow for active-only
votes. The display is enabled and the LT9611uxc found on the SM8350
Hardware Development Kit board is described, to provide HDMI output.
On SM8450 the display subsystem is introduced, with DPU and two DSI
controllers. GIC-ITS support is introduced for both PCIe0 and PCIe1.
SPMI bus support is introduced and pmics are wired up across the various
devices.
The display subsystem is enabled and the LT9611uxc is described to
provide HDMI output on the SM8450 Hardware Development Kit.
On Sony Xperia Nagara platform, GPIO keys and GPIO line names are
introduced. As is the SLG51000 PMIC and camera regulators are defined.
Support for SM8550 is introduced, with support for storage, USB,
remoteprocs, PCIe, low-speed buses, crypto and display subsystem. These
blocks are enabled on the MTP.
Lastly, the work continue to align Devicetree source with bindings
across all platforms.
* tag 'qcom-arm64-for-6.3' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (320 commits)
arm64: dts: qcom: sc7280: Add a carveout for modem metadata
arm64: dts: qcom: sc7180: Add a carveout for modem metadata
arm64: dts: qcom: sdm845: Add a carveout for modem metadata
arm64: dts: qcom: msm8998: Add a carveout for modem metadata
arm64: dts: qcom: msm8996: Add a carveout for modem metadata
arm64: dts: qcom: ipq8074: correct PCIe QMP PHY output clock names
arm64: dts: qcom: ipq8074: fix Gen3 PCIe node
arm64: dts: qcom: ipq8074: set Gen2 PCIe pcie max-link-speed
arm64: dts: qcom: ipq8074: correct Gen2 PCIe ranges
arm64: dts: qcom: ipq8074: fix Gen3 PCIe QMP PHY
arm64: dts: qcom: ipq8074: fix Gen2 PCIe QMP PHY
arm64: dts: qcom: sdm845-db845c: drop label from I2C controllers
arm64: dts: qcom: msm8996: support using GPLL0 as kryocc input
arm64: dts: qcom: sm8450: Allow both GIC-ITS and internal MSI controller
arm64: dts: qcom: sm8550-mtp: Add USB PHYs and HC nodes
arm64: dts: qcom: sm8550: Add USB PHYs and controller nodes
arm64: dts: qcom: sm8250: drop unused properties from tx-macro
arm64: dts: qcom: sm8250: drop unused clock-frequency from wsa-macro
arm64: dts: qcom: align OPP table node name with DT schema
arm64: dts: qcom: rename mdp nodes to display-controller
...
Arnd Bergmann [Mon, 30 Jan 2023 16:48:54 +0000 (17:48 +0100)]
Merge tag 'riscv-dt-for-v6.3-mw0' of https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux into arm/dt
RISC-V Devicetrees for v6.3-mw0
Microchip:
A vendor prefix for Aldec and both a binding and Devicetree for the
Aldec TySoM devkit for PolarFire SoC. This Devicetree corresponds to
what they are shipping in the SDK for rev2 boards.
StarFive:
Just the binding for the new StarFive JH7110 SoC and its first-party
SDC the VisionFive 2.
Other:
I was expecting the Devicetree for the aforementioned board to be ready
for this window, as the pinctrl driver had seem some review prior to
v6.2 and both it & the base clock drivers are heavily based on the
existing drivers for the JH7110.
That didn't come to be.. Christmas, the RISC-V Summit in December and
the Lunar New Year all playing a part perhaps.
Because of that, both Palmer and I have the Kconfig.socs work in our
branches, although in hindsight it probably wasn't needed here as I
only added the TySoM Devicetree & the conflict would've been trivial.
Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
* tag 'riscv-dt-for-v6.3-mw0' of https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux:
riscv: dts: microchip: add the Aldec TySoM's devicetree
dt-bindings: riscv: microchip: document the Aldec TySoM
dt-bindings: vendor-prefixes: Add entry for Aldec
RISC-V: stop directly selecting drivers for SOC_CANAAN
RISC-V: stop selecting SiFive clock and serial drivers directly
RISC-V: stop selecting the PolarFire SoC clock driver
RISC-V: kbuild: convert all use of SOC_FOO to ARCH_FOO
RISC-V: kconfig.socs: convert usage of SOC_CANAAN to ARCH_CANAAN
RISC-V: introduce ARCH_FOO kconfig aliases for SOC_FOO symbols
dt-bindings: riscv: Add StarFive JH7110 SoC and VisionFive 2 board
Krzysztof Kozlowski [Fri, 27 Jan 2023 21:27:11 +0000 (22:27 +0100)]
ARM: dts: exynos: add unit address to DWC3 node wrapper in Exynos54xx
Neither simple-bus bindings nor dtc W=1 accept device nodes in soc@ node
which do not have unit address. Therefore usethe address space
of child device (actual DWC3 Controller) as the wrapper's address to
fix:
exynos5422-odroidhc1.dtb: soc: usb3-0: {'compatible': ['samsung,exynos5250-dwusb3'],
... } should not be valid under {'type': 'object'}
exynos54xx.dtsi:145.21-159.5: Warning (simple_bus_reg): /soc/usb3-0: missing or empty reg/ranges property
Krzysztof Kozlowski [Fri, 27 Jan 2023 21:27:10 +0000 (22:27 +0100)]
ARM: dts: exynos: add unit address to DWC3 node wrapper in Exynos5250
Neither simple-bus bindings nor dtc W=1 accept device nodes in soc@ node
which do not have unit address. Therefore usethe address space
of child device (actual DWC3 Controller) as the wrapper's address to
fix:
exynos5250-smdk5250.dtb: soc: usb3: {'compatible': ['samsung,exynos5250-dwusb3'],
... } should not be valid under {'type': 'object'}
exynos5250.dtsi:638.16-653.5: Warning (simple_bus_reg): /soc/usb3: missing or empty reg/ranges property
Krzysztof Kozlowski [Wed, 25 Jan 2023 09:45:09 +0000 (10:45 +0100)]
ARM: dts: exynos: move exynos-bus nodes out of soc in Exynos4412
The soc node is supposed to have only device nodes with MMIO addresses,
as reported by dtc W=1:
exynos4412.dtsi:407.20-413.5:
Warning (simple_bus_reg): /soc/bus-acp: missing or empty reg/ranges property
and dtbs_check:
exynos4412-i9300.dtb: soc: bus-acp:
{'compatible': ['samsung,exynos-bus'], 'clocks': [[7, 456]], 'clock-names': ['bus'], 'operating-points-v2': [[132]], 'status': ['okay'], 'devfreq': [[117]]} should not be valid under {'type': 'object'}
Move the bus nodes and their OPP tables out of SoC to fix this.
Re-order them alphabetically while moving and put some of the OPP tables
in device nodes (if they are not shared).
Krzysztof Kozlowski [Wed, 25 Jan 2023 09:45:08 +0000 (10:45 +0100)]
ARM: dts: exynos: move exynos-bus nodes out of soc in Exynos4210
The soc node is supposed to have only device nodes with MMIO addresses,
as reported by dtc W=1:
exynos4210.dtsi:218.20-224.5:
Warning (simple_bus_reg): /soc/bus-dmc: missing or empty reg/ranges property
and dtbs_check:
exynos4210-i9100.dtb: soc: bus-dmc:
{'compatible': ['samsung,exynos-bus'], 'clocks': [[5, 457]], 'clock-names': ['bus'], 'operating-points-v2': [[82]], 'status': ['disabled']} should not be valid under {'type': 'object'}
Move the bus nodes and their OPP tables out of SoC to fix this.
Re-order them alphabetically while moving and put some of the OPP tables
in device nodes (if they are not shared).
Krzysztof Kozlowski [Wed, 25 Jan 2023 09:45:07 +0000 (10:45 +0100)]
ARM: dts: exynos: move exynos-bus nodes out of soc in Exynos3250
The soc node is supposed to have only device nodes with MMIO addresses,
as reported by dtc W=1:
exynos3250.dtsi:775.20-781.5:
Warning (simple_bus_reg): /soc/bus-dmc: missing or empty reg/ranges property
and dtbs_check:
exynos3250-artik5-eval.dtb: soc: bus-dmc:
{'compatible': ['samsung,exynos-bus'], 'clocks': [[67, 16]], 'clock-names': ['bus'], 'operating-points-v2': [[68]], 'status': ['disabled']} should not be valid under {'type': 'object'}
Move the bus nodes and their OPP tables out of SoC to fix this.
Re-order them alphabetically while moving and put some of the OPP tables
in device nodes (if they are not shared).
Krzysztof Kozlowski [Wed, 25 Jan 2023 09:45:06 +0000 (10:45 +0100)]
ARM: dts: exynos: move exynos-bus nodes out of soc in Exynos5420
The soc node is supposed to have only device nodes with MMIO addresses,
as reported by dtc W=1:
arch/arm/boot/dts/exynos5420.dtsi:1070.24-1075.5:
Warning (simple_bus_reg): /soc/bus-wcore: missing or empty reg/ranges property
and dtbs_check:
exynos5420-arndale-octa.dtb: soc: bus-wcore:
{'compatible': ['samsung,exynos-bus'], 'clocks': [[2, 769]], 'clock-names': ['bus'], 'status': ['disabled']} should not be valid under {'type': 'object'}
Move the bus nodes and their OPP tables out of SoC to fix this.
Re-order them alphabetically while moving and put some of the OPP tables
in device nodes (if they are not shared).
Samuel Holland [Thu, 26 Jan 2023 06:34:19 +0000 (00:34 -0600)]
riscv: dts: allwinner: d1: Add power controller node
The Allwinner D1 family of SoCs contain a PPU power domain controller
separate from the PRCM. It can power down the video engine and DSP, and
it contains special logic for hardware-assisted CPU idle.
Samuel Holland [Thu, 26 Jan 2023 04:57:37 +0000 (22:57 -0600)]
riscv: Add the Allwinner SoC family Kconfig option
Allwinner manufactures the sunxi family of application processors. This
includes the "sun8i" series of ARMv7 SoCs, the "sun50i" series of ARMv8
SoCs, and now the "sun20i" series of 64-bit RISC-V SoCs.
The first SoC in the sun20i series is D1, containing a single T-HEAD
C906 core. D1s is a low-pin-count variant of D1 with co-packaged DRAM.
Most peripherals are shared across the entire chip family. In fact, the
ARMv7 T113 SoC is pin-compatible and almost entirely register-compatible
with the D1s.
This means many existing device drivers can be reused. To facilitate
this reuse, name the symbol ARCH_SUNXI, since that is what the existing
drivers have as their dependency.
Samuel Holland [Thu, 26 Jan 2023 04:57:36 +0000 (22:57 -0600)]
riscv: dts: allwinner: Add Dongshan Nezha STU devicetree
The 100ask Dongshan Nezha STU is a system-on-module that can be used
standalone or with a carrier board. The SoM provides gigabit Ethernet,
HDMI, a USB peripheral port, and WiFi/Bluetooth via an RTL8723DS chip.
The "DIY" carrier board exposes almost every pin from the D1 SoC to 0.1"
headers, but contains no digital circuitry, so it does not have its own
devicetree.
Samuel Holland [Thu, 26 Jan 2023 04:57:35 +0000 (22:57 -0600)]
riscv: dts: allwinner: Add MangoPi MQ Pro devicetree
The MangoPi MQ Pro is a tiny SBC with a layout compatible to the
Raspberry Pi Zero. It includes the Allwinner D1 SoC, 512M or 1G of DDR3,
and an RTL8723DS-based WiFi/Bluetooth module.
The board also exposes GPIO Port E via a connector on the end of the
board, which can support either a camera or an RMII Ethernet PHY. The
additional regulators supply that connector.
Sipeed manufactures a "Lichee RV" system-on-module, which provides a
minimal working system on its own, as well as a few carrier boards. The
"Dock" board provides audio, USB, and WiFi. The "86 Panel" additionally
provides 100M Ethernet and a built-in display panel.
The 86 Panel repurposes the USB ID and VBUS detection GPIOs for its RGB
panel interface, since the USB OTG port is inaccessible inside the case.
"D1 Nezha" is Allwinner's first-party development board for the D1 SoC.
It was shipped with 512M, 1G, or 2G of DDR3. It supports onboard audio,
HDMI, gigabit Ethernet, WiFi and Bluetooth, USB 2.0 host and OTG ports,
plus low-speed I/O from the SoC and a GPIO expander chip.
Samuel Holland [Thu, 26 Jan 2023 04:57:32 +0000 (22:57 -0600)]
riscv: dts: allwinner: Add MangoPi MQ devicetree
The MangoPi MQ is a tiny SBC built around the Allwinner D1s. Its
onboard peripherals include two USB Type-C ports (1 device, 1 host)
and RTL8189FTV WLAN.
A MangoPi MQ-R variant of the board also exists. The MQ-R has a
different form factor, but the onboard peripherals are the same.
Most D1 and D1s boards use a similar power tree, with the 1.8V rail
powered by the SoC's internal LDOA, analog domains powered by ALDO,
and the rest of the board powered by always-on fixed regulators. To
avoid duplication, factor out the regulator information that is
common across boards.
The board also exposes GPIO Port E via a FPC connector, which can
support either a camera or an RMII Ethernet PHY. The additional
regulators supply that connector.
Samuel Holland [Thu, 26 Jan 2023 04:57:31 +0000 (22:57 -0600)]
riscv: dts: allwinner: Add the D1/D1s SoC devicetree
D1 (aka D1-H), D1s (aka F133), R528, and T113 are a family of SoCs based
on a single die, or at a pair of dies derived from the same design.
D1 and D1s contain a single T-HEAD Xuantie C906 CPU, whereas R528 and
T113 contain a pair of Cortex-A7's. D1 and R528 are the full version of
the chip with a BGA package, whereas D1s and T113 are low-pin-count QFP
variants.
Because the original design supported both ARM and RISC-V CPUs, some
peripherals are duplicated. In addition, all variants except D1s contain
a HiFi 4 DSP with its own set of peripherals.
The devicetrees are organized to minimize duplication:
- Common perhiperals are described in sunxi-d1s-t113.dtsi
- DSP-related peripherals are described in sunxi-d1-t113.dtsi
- RISC-V specific hardware is described in sun20i-d1s.dtsi
- Functionality unique to the D1 variant is described in sun20i-d1.dtsi
The SOC_PERIPHERAL_IRQ macro handles the different #interrupt-cells
values between the ARM (GIC) and RISC-V (PLIC) versions of the SoC.
Andre Przywara [Fri, 20 Jan 2023 01:26:16 +0000 (01:26 +0000)]
ARM: dts: sun8i: a83t: bananapi-m3: describe SATA disk regulator
The Bananapi-M3 has a SATA connector, driven by a USB-to-SATA bridge
soldered on the board. The power for the SATA device is provided by a
GPIO controlled regulator. Since the SATA device is behind USB, it has
no DT node, so we never described this regulator. Instead U-Boot was
turning this on in a rather hackish way, which we now want to get rid of.
On top of that it seems fragile to leave this GPIO undescribed, as
userland could claim it and turn the disk off.
Add a fixed regulator, controlled by the PD25 GPIO, and mark it as
always-on. This would mimic the current situation, but in a safer way,
and would allow U-Boot to drop the CONFIG_SATAPWR enable hack.
The property named in the schema is 'enable-gpios', not 'enable-gpio'.
This makes no difference at runtime, because the regulator is marked as
always-on, but it breaks validation.
Fixes: 4701fc6e5dd9 ("ARM: dts: sun8i: add FriendlyARM NanoPi Duo2") Reviewed-by: Andre Przywara <andre.przywara@arm.com> Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com> Signed-off-by: Samuel Holland <samuel@sholland.org> Link: https://lore.kernel.org/r/20221231225854.16320-2-samuel@sholland.org Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Thierry Reding [Mon, 17 Oct 2022 17:03:39 +0000 (19:03 +0200)]
arm64: tegra: Drop I2C iommus and dma-coherent properties
Drop the iommus and dma-coherent properties for the I2C controller
device tree nodes. These are only needed for the device tree nodes
that represent the GPC DMA controller, since that is the device
performing the direct memory accesses.
Fabrizio Castro [Wed, 18 Jan 2023 14:47:45 +0000 (14:47 +0000)]
arm64: dts: renesas: r9a09g011: Add PWC support
The RZ/V2M SoC contains an External Power Sequence Controller (PWC)
module. This module provides an external power supply on/off
sequence, on/off signal for the LPDDR4 core power supply, General
Purpose Outputs, and key input signals.
This patch adds PWC support to the SoC specific device tree.
Fabrizio Castro [Wed, 18 Jan 2023 13:52:59 +0000 (13:52 +0000)]
arm64: dts: renesas: r9a09g011: Reword ethernet status
Although of_fdt_device_is_available returns true when the DT
property "status" is assigned "ok" or "okay", and false for every
other value, it's become common practice to assign "disabled"
when we want of_fdt_device_is_available to return false.
For some reason, the status property of the ethernet node was
assigned "disable" when originally added to the kernel. Change
it to "disabled" for consistency.
Adam Ford [Tue, 17 Jan 2023 23:26:08 +0000 (17:26 -0600)]
arm64: dts: renesas: r8a774[be]1-beacon: Sync aliases with RZ/G2M
The Beacon Embedded RZ/G2[MNH] boards all have the same baseboard
and all share the same PCB. To make sure all instances appear
the same, make the aliases for RZ/G2N and RZ/G2H match RZ/G2M to keep
them consistent.
The WM8962 is configured so the SoC is driving the clock, and it's
currently set to 24 MHz. However, when playing audio it shows the
following message:
wm8962 5-001a: Unsupported sysclk ratio 500
While not harmful, a better clock ratio is 512. It makes the
message disappear, and it still plays sound.
Adam Ford [Sat, 14 Jan 2023 22:56:46 +0000 (16:56 -0600)]
arm64: dts: renesas: beacon-renesom: Update Ethernet PHY ID
Due to the part shortage, the AR8031 PHY was replaced with a Micrel
KSZ9131. Hard-coding the ID of the PHY makes this new PHY
non-operational on newer hardware. Since previous hardware had only
shipped to a limited number of people, and they have not gone to
production, it should be safe to update the PHY ID.
The board used to originally introduce the Beacon Embedded RZ/G2[M/N/H]
boards had a GPIO expander with address 20, but this was changed when
the final board went to production.
The production boards changed both the part itself and the address.
With the incorrect address, the LCD cannot come up. If the LCD fails,
the rcar-du driver fails to come up, and that also breaks HDMI.
Pre-release board were not shipped to the general public, so it should
be safe to push this as a fix. Anyone with a production board would
have video fail due to this GPIO expander change.
Enable UFS device for R-Car S4-8 Spider CPU board.
Note that the conditions of RC21012 on the Spider are:
- OUT11 (for UFS30_REFCLK_V) is disabled as default.
- OUT11 is controlled by GPIO0 pin.
- The GPIO0 pin is inverted sense (low active) and pull-up enabled.
To output the clock, pin 4 of TCA9554 on the Spider board needs to
output low level so that using "gpio-gate-clock" for it.
ALSA SoC has many types of Generic Audio Card drivers (Simple Audio
Card, Audio Graph Card, Audio Graph Card2), and Renesas/Kuninori
Morimoto wants to test these.
The Generic Audio Card driver had been requested on ALSA SoC.
It supports many types of device connection methods, and historically,
the requested connection support range of the generic driver has been
upgraded.
Upgrading the connection support range itself could not be implemented
in the generic driver, because we need to keep compatibility with old
DTBs. This is one of the reasons why we have many types of Generic Audio
Card driver.
The ULCB/KF combo is a good board stack to test these.
Kuninori has been testing these Generic Audio Card drivers by using his
local patches to switching drivers. But from an information sharing
point of view, it is a good idea to upstream these, because the DT
configuration is complex. Hence this can be a good sample for the user.
Hence add a "Simple Audio Card + MIXer + TDM Split" DT setting file for
ULCB/KF. Because of the limited number of subdevices, the HDMI output
is ignored.
This setting can be enabled by updating ulcb.dtsi / ulcb-kf.dtsi.
From a normal user point of view who doesn't need to test the driver,
everything should stay as-is, and nothing changes.
Note that because this needs "switching driver", and not "adding extra
feature", this does not use a Device Tree overlay.
ALSA SoC has many types of Generic Audio Card drivers (Simple Audio
Card, Audio Graph Card, Audio Graph Card2), and Renesas/Kuninori
Morimoto wants to test these.
The Generic Audio Card driver had been requested on ALSA SoC.
It supports many types of device connection methods, and historically,
the requested connection support range of the generic driver has been
upgraded.
Upgrading the connection support range itself could not be implemented
in the generic driver, because we need to keep compatibility with old
DTBs. This is one of the reasons why we have many types of Generic Audio
Card driver.
The ULCB/KF combo is a good board stack to test these.
Kuninori has been testing these Generic Audio Card drivers by using his
local patches to switching drivers. But from an information sharing
point of view, it is a good idea to upstream these, because the DT
configuration is complex. Hence this can be a good sample for the user.
Hence add an "Audio Graph Card + MIXer + TDM Split" DT setting file for
ULCB/KF. Because of the limited number of subdevices, the HDMI output
is ignored.
This setting can be enabled by updating ulcb.dtsi / ulcb-kf.dtsi.
From a normal user point of view who doesn't need to test the driver,
everything should stay as-is, and nothing changes.
Note that because this needs "switching driver", and not "adding extra
feature", this does not use a Device Tree overlay.
ALSA SoC has many types of Generic Audio Card drivers (Simple Audio
Card, Audio Graph Card, Audio Graph Card2), and Renesas/Kuninori
Morimoto wants to test these.
The Generic Audio Card driver had been requested on ALSA SoC.
It supports many types of device connection methods, and historically,
the requested connection support range of the generic driver has been
upgraded.
Upgrading the connection support range itself could not be implemented
in the generic driver, because we need to keep compatibility with old
DTBs. This is one of the reasons why we have many types of Generic Audio
Card driver.
The ULCB/KF combo is a good board stack to test these.
Kuninori has been testing these Generic Audio Card drivers by using his
local patches to switching drivers. But from an information sharing
point of view, it is a good idea to upstream these, because the DT
configuration is complex. Hence this can be a good sample for the user.
Hence add an "Audio Graph Card2 + MIXer + TDM Split" DT setting file
for ULCB/KF. Because of the limited number of subdevices, the HDMI
output is ignored.
This setting can be enabled by updating ulcb.dtsi / ulcb-kf.dtsi.
From a normal user point of view who doesn't need to test the driver,
everything should stay as-is, and nothing changes.
Note that because this needs "switching driver", and not "adding extra
feature", this does not use a Device Tree overlay.
ALSA SoC has many types of Generic Audio Card drivers (Simple Audio
Card, Audio Graph Card, Audio Graph Card2), and Renesas/Kuninori
Morimoto wants to test these.
The Generic Audio Card driver had been requested on ALSA SoC.
It supports many types of device connection methods, and historically,
the requested connection support range of the generic driver has been
upgraded.
Upgrading the connection support range itself could not be implemented
in the generic driver, because we need to keep compatibility with old
DTBs. This is one of the reasons why we have many types of Generic Audio
Card driver.
The ULCB/KF combo is a good board stack to test these.
Kuninori has been testing these Generic Audio Card drivers by using his
local patches to switching drivers. But from an information sharing
point of view, it is a good idea to upstream these, because the DT
configuration is complex. Hence this can be a good sample for the user.
Hence add a "Simple Audio Card" DT setting file for ULCB/KF.
This can be enabled by updating ulcb.dtsi / ulcb-kf.dtsi.
From a normal user point of view who doesn't need to test the driver,
everything should stay as-is, and nothing changes.
Note that because this needs "switching driver", and not "adding extra
feature", this does not use a Device Tree overlay.
ALSA SoC has many types of Generic Audio Card drivers (Simple Audio
Card, Audio Graph Card, Audio Graph Card2), and Renesas/Kuninori
Morimoto wants to test these.
The Generic Audio Card driver had been requested on ALSA SoC.
It supports many types of device connection methods, and historically,
the requested connection support range of the generic driver has been
upgraded.
Upgrading the connection support range itself could not be implemented
in the generic driver, because we need to keep compatibility with old
DTBs. This is one of the reasons why we have many types of Generic Audio
Card driver.
The ULCB/KF combo is a good board stack to test these.
Kuninori has been testing these Generic Audio Card drivers by using his
local patches to switching drivers. But from an information sharing
point of view, it is a good idea to upstream these, because the DT
configuration is complex. Hence this can be a good sample for the user.
Hence add an "Audio Graph Card2" DT setting file for ULCB/KF,
and switch to use it. You can switch to a different Generic Audio Graph
driver by updating ulcb.dtsi / ulcb-kf.dtsi.
From a normal user point of view who doesn't need to test the driver,
everything should stay as-is, and nothing changes.
Note that because this needs "switching driver", and not "adding extra
feature", this does not use a Device Tree overlay.
ALSA SoC has many types of Generic Audio Card drivers (Simple Audio
Card, Audio Graph Card, Audio Graph Card2), and Renesas/Kuninori
Morimoto wants to test these.
The Generic Audio Card driver had been requested on ALSA SoC.
It supports many types of device connection methods, and historically,
the requested connection support range of the generic driver has been
upgraded.
Upgrading the connection support range itself could not be implemented
in the generic driver, because we need to keep compatibility with old
DTBs. This is one of the reasons why we have many types of Generic Audio
Card driver.
The ULCB/KF combo is a good board stack to test these.
Kuninori has been testing these Generic Audio Card drivers by using his
local patches to switching drivers. But from an information sharing
point of view, it is a good idea to upstream these, because the DT
configuration is complex. Hence this can be a good sample for the user.
Hence add an "Audio Graph Card" DT setting file for ULCB/KF.
This can be enabled by updating ulcb.dtsi / ulcb-kf.dtsi.
From a normal user point of view who doesn't need to test the driver,
everything should stay as-is, and nothing changes.
Note that because this needs "switching driver", and not "adding extra
feature", this does not use a Device Tree overlay.
Kuninori Morimoto [Fri, 13 Jan 2023 02:04:03 +0000 (02:04 +0000)]
arm64: dts: renesas: #sound-dai-cells is used when simple-card
Current sound comment is indicating that #sound-dai-cells is required,
but it is needed only if board is using "simple-card".
Hence tidy up the comments.
As ulcb.dtsi and salvator-common.dtsi are already using "audio-graph",
the unneeded #sound-dai-cells are removed.
Kuninori Morimoto [Fri, 13 Jan 2023 02:03:58 +0000 (02:03 +0000)]
ARM: dts: renesas: #sound-dai-cells is used when simple-card
Current sound comment is indicating that #sound-dai-cells is required,
but it is needed only if the board is using "simple-card".
Hence tidy up the comments.
Add required properties in pinctrl node to handle GPIO interrupts.
Note as IRQC is not enabled in RZ/Five the phandle for interrupt-parent
is added in RZ/G2UL specific dtsi so that RZ/Five pinctrl driver
continues without waiting for IRQC to probe.
Arnd Bergmann [Thu, 26 Jan 2023 09:06:05 +0000 (10:06 +0100)]
Merge tag 'ux500-dts-v6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik into arm/dt
Some Ux500 DTS updates for the v6.3 kernel:
- Fix up LED node names
- Add a clkout-node for the external clock
* tag 'ux500-dts-v6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik:
ARM: dts: ux500: Add clkout-clock node
ARM: dts: ste: align LED node names with dtschema
Arnd Bergmann [Wed, 25 Jan 2023 16:00:47 +0000 (17:00 +0100)]
Merge tag 'dt-cleanup-6.3' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-dt into arm/dt
Minor improvements in ARM DTS for v6.3
1. Drop 0x from unit address (socpfga).
2. Align HDMI CEC and LED nodes with bindings (stih410, keystone, dove,
at91).
* tag 'dt-cleanup-6.3' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-dt:
ARM: dts: at91: align LED node names with dtschema
ARM: dts: dove: align LED node names with dtschema
ARM: dts: keystone: align LED node names with dtschema
ARM: dts: stih410: align HDMI CEC node names with dtschema
ARM: dts: socfpga: drop 0x from unit address
Conor Dooley [Wed, 25 Jan 2023 11:09:32 +0000 (11:09 +0000)]
Merge patch series "Add a devicetree for the Aldec PolarFire SoC TySoM"
As it says on the tin, add a DT for this board. It's been sitting on my
desk for a while, so may as well have it upstream...
The DT is only partially complete, as it needs the fabric content added.
Unfortunately, I don't have a reference design in RTL or SmartDesign
for it and therefore don't know what that fabric content is.
Arnd Bergmann [Tue, 24 Jan 2023 20:57:52 +0000 (21:57 +0100)]
Merge tag 'samsung-drivers-6.3' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into arm/dt
Samsung SoC bindings changes for v6.3
1. System Controller: use dedicated/specific compatibles to identify
different controllers with different register layout (Exynos, Tesla
FSD). Extend the bindings with missing clocks.
2. Correct maintainers entry for Tesla FSD DTS.
* tag 'samsung-drivers-6.3' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
MAINTAINERS: arm64: tesla: correct pattern for directory
dt-bindings: soc: samsung: exynos-sysreg: correct indentation for deprecated
dt-bindings: soc: samsung: exynos-sysreg: add dedicated SYSREG compatibles to Exynosautov9
dt-bindings: soc: samsung: exynos-sysreg: add dedicated SYSREG compatibles to Exynos850
dt-bindings: soc: samsung: exynos-sysreg: Add tesla FSD sysreg compatibles
dt-bindings: soc: samsung: exynos-sysreg: add clocks for Exynos850
dt-bindings: soc: samsung: exynos-sysreg: add dedicated SYSREG compatibles to Exynos5433
dt-bindings: soc: samsung: exynos-sysreg: split from syscon
Arnd Bergmann [Tue, 24 Jan 2023 17:07:12 +0000 (18:07 +0100)]
Merge tag 'samsung-dt64-6.3' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into arm/dt
Samsung DTS ARM64 changes for v6.3
1. Add L2 cache properties (Exynos, Tesla FSD).
2. Tesla FSD: add Bosch MCAN (CAN bus), sound card (audio card with
codec and I2S controllers), system controller nodes.
3. Tesla FSD: correct pin pull up/down properties to match
recommendation in user manual.
4. Minor cleanups: use dedicated/specific sysreg compatibles, fix
dtbs_check warnings, drop unsupported properties1
* tag 'samsung-dt64-6.3' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
arm64: dts: fsd: Add sound card node for Tesla FSD
arm64: dts: fsd: Add codec node for Tesla FSD
arm64: dts: fsd: Add I2S DAI node for Tesla FSD
arm64: dts: exynos: drop unsupported I2C properties in Espresso
arm64: dts: fsd: fix PUD values as per FSD HW UM
arm64: dts: exynos: add dedicated SYSREG compatibles to Exynosautov9
arm64: dts: exynos: add dedicated SYSREG compatibles to Exynos850
arm64: dts: fsd: add sysreg device node
arm64: dts: exynos: correct properties of MAX98504 in TM2
arm64: dts: exynos: drop clock-frequency from CPU nodes in TM2
arm64: dts: exynos: drop pwm-names from MAX77843 haptic in TM2
arm64: dts: exynos: use 8-bit for SPI IR LED duty-cycle in TM2
arm64: dts: exynos: add dedicated SYSREG compatibles to Exynos5433
arm64: dts: fsd: Add MCAN device node
arm64: dts: fsd: Update cache properties
arm64: dts: exynos: Update cache properties
Arnd Bergmann [Tue, 24 Jan 2023 17:06:42 +0000 (18:06 +0100)]
Merge tag 'dt64-cleanup-6.3' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-dt into arm/dt
Minor improvements in ARM64 DTS for v6.3
1. Drop 0x from unit address (microchip).
2. Align HDMI CEC and LED nodes with bindings (hisilicon).
* tag 'dt64-cleanup-6.3' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-dt:
arm64: dts: hisilicon: align LED node names with dtschema
arm64: dts: microchip: drop 0x from unit address
Arnd Bergmann [Tue, 24 Jan 2023 17:03:20 +0000 (18:03 +0100)]
Merge tag 'renesas-dts-for-v6.3-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into arm/dt
Renesas DT updates for v6.3
- Enable watchdog and timer (OSTM) support for the RZ/Five SMARC EVK
development board,
- Add operating points for the Cortex-A55 CPU cores on the R-Car S4-8
SoC,
- Add display support for the R-Car V4H SoC and the White-Hawk
development board,
- Add eMMC and SDHI support for the RZ/V2M SoC,
- Miscellaneous fixes and improvements.
* tag 'renesas-dts-for-v6.3-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
arm64: dts: renesas: condor-i: add HS400 support for eMMC
arm64: boot: dts: r8a774[a/b/e]1-beacon: Consolidate sound clocks
riscv: dts: renesas: rzfive-smarc-som: Enable OSTM nodes
arm64: dts: renesas: ulcb-kf: Fix pca9548 i2c-mux node names
arm64: dts: renesas: r9a09g011: Add eMMC and SDHI support
arm64: dts: renesas: white-hawk-cpu: Add DP output support
arm64: dts: renesas: r8a779g0: Add display related nodes
arm64: dts: renesas: r8a779f0: Add CA55 operating points
riscv: dts: renesas: rzfive-smarc-som: Enable WDT
Samsung Galaxy S5 (SM-G900H) was sold alongside Samsung Galaxy S5
with Snapdragon SoC, however the Exynos version features a 3G
capable Intel modem instead of Qualcomm version featuring LTE modem.
This phone is based on Exynos5422. Currently, the touchscreen,
USB, eMMC and the PMIC are enabled in the device-tree.
Markuss Broks [Sat, 21 Jan 2023 20:18:42 +0000 (22:18 +0200)]
ARM: dts: exynos: Use Exynos5420 compatible for the MIPI video phy
For some reason, the driver adding support for Exynos5420 MIPI phy
back in 2016 wasn't used on Exynos5420, which caused a kernel panic.
Add the proper compatible for it.
Krzysztof Kozlowski [Fri, 20 Jan 2023 15:54:02 +0000 (16:54 +0100)]
ARM: dts: exynos: correct SATA clocks in Exynos5250
The DT schema expects clock name matching certain patterns:
exynos5250-smdk5250.dtb: sata@122f0000: clock-names:1: 'oneOf' conditional failed, one must be fixed:
'sclk_sata' is not one of ['pclk', 'aclk', 'hclk', 'sata']
'pmalive' was expected
'rxoob' was expected
'ref' was expected
Krzysztof Kozlowski [Fri, 20 Jan 2023 15:53:58 +0000 (16:53 +0100)]
ARM: dts: exynos: add ports in HDMI bridge in Exynos4412 Midas
The SII9234 HDMI bridge expects ports property:
exynos4412-i9305.dtb: hdmi-bridge@39: 'ports' is a required property
exynos4412-i9305.dtb: hdmi-bridge@39: 'port' does not match any of the regexes: 'pinctrl-[0-9]+'
Thierry Reding [Tue, 22 Nov 2022 10:21:18 +0000 (11:21 +0100)]
ARM: tegra: Sort nodes by unit-address, then alphabetically
Nodes in device tree should be sorted by unit-address, followed by nodes
without a unit-address, sorted alphabetically. Some exceptions are the
top-level aliases, chosen, firmware, memory and reserved-memory nodes,
which are expected to come first.
These rules apply recursively with some exceptions, such as pinmux nodes
or regulator nodes, which often follow more complicated ordering (often
by "importance").
While at it, change the name of some of the nodes to follow standard
naming conventions, which helps with the sorting order and reduces the
amount of warnings from the DT validation tools.