Merge tag 'ti-k3-dt-for-v6.11' of https://git.kernel.org/pub/scm/linux/kernel/git/ti/linux into soc/dt
TI K3 device tree updates for v6.11
Generic Fixups/Cleanups:
- main_pktdma reg ranges fixes
- dtbs_check warning cleanups with addition of cpsw-mac-efuse node and
dropping "syscon", "simple-mfd" compatibles in favor of simple-bus
- Disable McASP FIFOs across SoCs for better latency
- Add memory node to bootloader stage with bootph-all
- Restructure am62p and j722s dtsi for share nodes across these SoCs
- DT warning fixes around USB type-C connector node (AM62/AM62P)
SoC Specific features and Fixes:
AM62
- GPMC and ELM addition
AM62A
- Enable RTC by default
- Crypto accelerator support
AM64 and AM65
- PRU system event support
AM69/J784S4:
- CPSW2G and CPSW9G addition with QSGMII and UXSGMII board support
- PCIe, USB, McASP, EHRPWM node additions
AM67/J722s
- Fix to update GPIO count
- Add gpio-ranges definition
- McASP support for audio
- PCIe, USB, Serdes support
Merge tag 'stm32-dt-for-v6.11-1' of https://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32 into soc/dt
STM32 DT for v6.11, round 1
Highlights:
----------
-MCU:
- Add syscfg missing clock on stm32f429.
- MPU:
- STM32MP13:
- Add camera support on stm32mp135f-dk bord using DCMIPP and
GC2145 sensor.
- Document PWM output for stm32mp135f-dk
- Add goodix touchscreen support on stm32mp135f-dk board.
- Add new DH DHCOR / DHSBC board (Som + carrier board) based on
STM32MP135F SoC.
SOM part contains: STM32MP135F SoC, 512MB DDR2L RAM and
eMMC/SDIO wifi module.
The carrier boards embedds 2 RGMII ETH ports, USB-A,USB-C
and an extansion connector.
- Add Ethernet controller support on stm32mp135f-dk.
It uses LAN8742A PHY based on RMII.
- STMP32MP15:
- Rework Octavo OSD32MP1 split for USB phy.
- Add OP-TEE IRQ for asynchronous notification support.
It allows OP-TEE to trig Linux.
- STM32MP25:
- Add OP-TEE IRQ for asynchronous notification support.
It allows OP-TEE to trig Linux.
- Enable firewall for RCC.
- Add all U(s)ART nodes for stm32mp25.
- Add 3 power domains for low power modes.
- Add HPDMA support.
- Add Ethernet controller (ETH2) support on stm32mp257f-ev1.
It uses Realtek PHY based on RGMII.
- Add and enable SCMI regulator support.
* tag 'stm32-dt-for-v6.11-1' of https://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32: (31 commits)
arm64: dts: st: describe power supplies for stm32mp257f-ev1 board
arm64: dts: st: add scmi regulators on stm32mp25
regulator: Add STM32MP25 regulator bindings
ARM: dts: stm32: omit unused pinctrl groups from stm32mp13 dtb files
arm64: dts: st: enable Ethernet2 on stm32mp257f-ev1 board
arm64: dts: st: add eth2 pinctrl entries in stm32mp25-pinctrl.dtsi
arm64: dts: st: add ethernet1 and ethernet2 support on stm32mp25
arm64: dts: st: add HPDMA nodes on stm32mp251
ARM: dts: stm32: Add ethernet support for DH STM32MP13xx DHCOR DHSBC board
ARM: dts: stm32: order stm32mp13-pinctrl nodes
ARM: dts: stm32: add ethernet1 for STM32MP135F-DK board
ARM: dts: stm32: add ethernet1/2 RMII pins for STM32MP13F-DK board
ARM: dts: stm32: add ethernet1 and ethernet2 support on stm32mp13
ARM: dts: stm32: Document output pins for PWMs on stm32mp135f-dk
ARM: dts: stm32: OP-TEE async notif interrupt for ST STM32MP15x boards
ARM: dts: stm32: Missing clocks for stm32f429's syscfg.
ARM: dts: stm32: Add support for STM32MP13xx DHCOR SoM and DHSBC board
ARM: dts: stm32: Add pinmux nodes for DH electronics STM32MP13xx DHCOR SoM and DHSBC board
dt-bindings: arm: stm32: Add compatible string for DH electronics STM32MP13xx DHCOR DHSBC board
ARM: dts: stm32: osd32: move pwr_regulators to common
...
Merge tag 'qcom-arm32-for-6.11' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into soc/dt
Qualcomm Arm32 DeviceTree updates for v6.11
This introduces new support for the Sony Xperia Z3 Compact, HTC One
(M8), Samsung Galaxy Tab 4 8.0 Wi-Fi, Samsung Galaxy Grand 2, and
Samsung Galaxy Note 3 devices.
The Motorola Moto G and Motorola Moto G 4G gains accelerometer and
magnetometer support, with the latter also getting framebuffer supplies
and a temperature sensor wired up.
The SMBB (charger block) is enabled across all MSM8x26 Lumia devices, as
this is used for USB state changes.
The operating mode for SDC regulator is set to HPM on Sony Xperia
"Shinano" family to avoid brownouts on uSD-cards.
The panel on LGE Nexus 5 is connected to the backlight, to make this
turn off on blanking.
MSM8974 is transitioned to use the mailbox-abstraction for invoking
PC interrupts on remote processors.
* tag 'qcom-arm32-for-6.11' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (24 commits)
ARM: dts: qcom: qcom-msm8226-samsung-ms013g: Add initial device tree
ARM: dts: qcom: apq8064: drop incorrect ranges from QFPROM
ARM: dts: qcom: msm8926-motorola-peregrine: Add framebuffer supplies
ARM: dts: qcom: msm8926-motorola-peregrine: Update temperature sensor
ARM: dts: qcom: msm8926-motorola-peregrine: Add accelerometer, magnetometer, regulator
ARM: dts: qcom: msm8974: Use mboxes in smsm node
ARM: dts: qcom: msm8974-sony-shinano: increase load on l21 for sdhc2
ARM: dts: qcom: Add Sony Xperia Z3 Compact smartphone
ARM: dts: qcom: use generic node names for Adreno and QFPROM
ARM: dts: qcom: motorola-falcon: add accelerometer, magnetometer
ARM: dts: qcom: Add initial support for HTC One (M8)
ARM: dts: qcom: msm8974: Use mboxes properties for APCS
ARM: dts: qcom: mdm9615: drop #power-domain-cells property of GCC
ARM: dts: qcom: ipq8064: drop #power-domain-cells property of GCC
ARM: dts: qcom: ipq4019: drop #power-domain-cells property of GCC
ARM: dts: qcom: msm8960: drop #power-domain-cells property of GCC
ARM: dts: qcom: msm8660: drop #power-domain-cells property of GCC
ARM: dts: qcom: apq8064: drop #power-domain-cells property of GCC
ARM: dts: qcom: msm8974: Use proper compatible for APCS syscon
ARM: dts: qcom: msm8974-hammerhead: Update gpio hog node name
...
Merge tag 'sunxi-dt-for-6.11' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into soc/dt
Allwinner SoC device tree changes for 6.11
This includes a commit shared with the clk tree. This commit adds clock
and reset indices to the device tree binding, and thus is needed for
both the device tree and driver changes.
ARM64 device tree and binding-only changes
- Add LRADC (low resolution ADC for resistor network based keys) for H616 SoC
- Add cache information for A64, H6, and H616 SoCs
- Correct model names and descriptions for Pine64 boards
- Add GPADC (general purpose ADC) for H616 SoC
- Add ADC joysticks based on GPADC for anbernic-rg35xx-h board
- Add additional CPU OPPs for the H700 on top of existing H616 ones
- Enable DVFS for rg35xx boards
- Add IOMMU for H616 SoC
RISC-V device tree changes
- Add system LDOs to D1s/T113 SoC
- Add ClockworkPi and DevTerm device trees
* tag 'sunxi-dt-for-6.11' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
riscv: dts: allwinner: Add ClockworkPi and DevTerm devicetrees
riscv: dts: allwinner: d1s-t113: Add system LDOs
arm64: dts: allwinner: h616: add IOMMU node
arm64: dts: allwinner: rg35xx: Enable DVFS CPU frequency scaling
arm64: dts: allwinner: h616: add additional CPU OPPs for the H700
arm64: dts: allwinner: anbernic-rg35xx-h: Add ADC joysticks
arm64: dts: allwinner: h616: Add GPADC device node
dt-bindings: clock: sun50i-h616-ccu: Add GPADC clocks
ARM: dts: sunxi: remove duplicated entries in makefile
arm64: dts: allwinner: Add cache information to the SoC dtsi for H616
arm64: dts: allwinner: Add cache information to the SoC dtsi for A64
arm64: dts: allwinner: Correct the model names for Pine64 boards
dt-bindings: arm: sunxi: Correct the descriptions for Pine64 boards
arm64: dts: allwinner: Add cache information to the SoC dtsi for H6
ARM: dts: sun50i: Add LRADC node
dt-bindings: input: sun4i-lradc-keys: Add H616 compatible
Merge tag 'imx-dt64-6.11' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into soc/dt
i.MX arm64 device tree change for 6.11:
- New board support: imx8mm-iot-gateway, imx93-9x9-qsb, imx95-19x19-evk,
imx8mp-tqma8mpql-mba8mp-ras314, etc.
- A series from Adam Ford that improves imx8mp-beacon-kit support by
fixing dtschema issues and enabling HDMI bridge HPD
- A set of changes from Alexander Stein that adds partitions subnode
to spi-nor
- A great number of changes from Frank Li that add audio, flexcan, gpmi
related devices for imx8dxl, imx8qm based boards
- A bunch of layerscape dtschema issue fixes from Frank Li
- A series from Krzysztof Kozlowski to use defines for interrupts
- A number of improvements on i.MX8MP DHCOM devices from Marek Vasut
- A couple of changes from Parthiban Nallathambi that add PCIe PHY and
RS232/RS485 overlays for phygate-tauri-l board
- A series from Shengjiu Wang that adds bt-sco and XCVR sound card
support for imx8mp-evk
- A series from Tim Harvey that fixes dt-schema warnings and adds DP83867
configuration for i.MX8M Venice devices
- Other random feature additions and improvments on various boards
* tag 'imx-dt64-6.11' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (91 commits)
arm64: dts: imx8mp: Remove 'snps,rx-sched-sp'
arm64: dts: imx8mm-verdin: add TPM device
arm64: dts: imx8mp-evk: Add audio XCVR sound card
arm64: dts: imx8mp: Add audio XCVR device node
arm64: dts: imx8mp: Update Fast ethernet PHY MDIO addresses to match DH i.MX8MP DHCOM rev.200
arm64: dts: imx8mp: Do not reconfigure Audio PLL2 on DH i.MX8M Plus DHCOM SoM
arm64: dts: layerscape: rename b(q)man-portals to b(q)man-portals-bus
arm64: dts: fsl-ls1046a: rename thermal node name
arm64: dts: fsl-ls1043a: remove unused clk-name at watchdog node
arm64: dts: layerscape: rename aux_bus to aux-bus
arm64: dts: layerscape: change pcie interrupt order
arm64: dts: layerscape: rename node name "wdt" to "watchdog"
arm64: dts: layerscape: add #dma-cells for qdma
arm64: dts: layerscape: remove compatible string 'fsl,fman-xmdio' for fman3
arm64: dts: layerscape: replace node name 'nor' with 'flash'
arm64: dts: fsl-ls1012a: remove property 'snps,host-vbus-glitches'
arm64: dts: fsl-lx2160a: fix #address-cells for pinctrl-single
arm64: dts: layerscape: add platform special compatible string for gpio
arm64: dts: layerscape: rename node 'timer' as 'rtc'
arm64: dts: imx8qxp-mek: Pass memory-region to the DSP node
...
Merge tag 'imx-dt-6.11' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into soc/dt
i.MX ARM device tree change for 6.11:
- A few changes from Krzysztof Kozlowski to fix dtschema issues
- A series from Michael Walle to improve kontron-samx6i SoM support by
fixing various errors and add kontron-samx6i-ads2 board
- Add LVDS port data mapping for M53 Menlo board
- Convert NVMEM usage to layout syntax on MBA6 boards
* tag 'imx-dt-6.11' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
ARM: dts: imx6qdl-kontron-samx6i: add actual device trees
ARM: dts: imx6qdl-kontron-samx6i: remove wake-up-gpio property
ARM: dts: imx6qdl-kontron-samx6i: fix PCIe reset polarity
ARM: dts: imx6qdl-kontron-samx6i: fix node names
ARM: dts: imx6qdl-kontron-samx6i: add SDIO_PWR_EN support
ARM: dts: imx6qdl-kontron-samx6i: always enable eMMC
ARM: dts: imx6qdl-kontron-samx6i: fix product name
ARM: dts: imx6qdl-kontron-samx6i: fix SPI0 chip selects
ARM: dts: imx6qdl-kontron-samx6i: cleanup the PMIC node
ARM: dts: imx6qdl-kontron-samx6i: fix board reset
ARM: dts: imx6qdl-kontron-samx6i: fix PHY reset
ARM: dts: imx6qdl-kontron-samx6i: fix phy-mode
ARM: dts: nxp: imx6: convert NVMEM content to layout syntax
ARM: dts: e60k02: fix aliases for mmc
ARM: dts: imx: Add LVDS port data mapping on M53 Menlo
ARM: dts: imx28-tx28: drop redundant 'panel-name' property
ARM: dts: imx: drop redundant 'u-boot,panel-name' property
ARM: dts: imx6dl-aristainetos2_4: drop redundant 'power-on-delay' property
ARM: dts: imx: correct choice of panel native mode
ARM: dts: imx: align panel timings node name with dtschema
Merge tag 'dt-cleanup-6.11' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-dt into soc/dt
Minor improvements in ARM DTS for v6.11
Few cleanups and improvements which were missed by their maintainers:
1. Add Krzysztof as odd-fixer for old ARM platforms: Alphascale, AXM
LSI, Moxa, TI Nspire and VT8500 (with Alexey Charkov).
2. VT8500: align node names with bindings (USB, panel timings).
3. Cirrus: align node names with bindings (panel timings).
4. TI Nspire: correct unit addresses, correct watchdog compatible and
properties while making it disabled (never tested).
5. Nuvoton, Aspeed: align node names with bindings (I2C).
IMPORTANT: At least for Aspeed it is known to affect some user-space
tools, because that user-space looks for specific node path via
/sys/firmware/devicetree. The /sys/firmware/devicetree is not the ABI
and any user-space relying on it:
- Prevents any changes in DTS, e.g. node renaming or moving,
changing unit addresses (re-arranging child bus addressing).
- Is using undocumented interface.
- Is neither reliable nor understandable.
6. TI OMAP and Davinci: align node names with bindings (panel timings),
drop incorrect property.
7. STI: document in bindings codec child to fix dtbs_checks.
* tag 'dt-cleanup-6.11' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-dt:
ARM: dts: omap am5729-beagleboneai: drop unneeded ti,enable-id-detection
dt-bindings: soc: sti: st,sti-syscon: document codec node
ARM: dts: ti: align panel timings node name with dtschema
arm: dts: aspeed: Use standard 'i2c' bus node name
arm: dts: nuvoton: Use standard 'i2c' bus node name
MAINTAINERS: ARM: alphascale: add Krzysztof Kozlowski as maintainer
ARM: dts: nspire: Add full compatible for watchdog node
ARM: dts: nspire: Add unit name addresses to memory nodes
MAINTAINERS: ARM: nspire: add Krzysztof Kozlowski as maintainer
MAINTAINERS: ARM: vt8500: add Alexey and Krzysztof as maintainers
MAINTAINERS: ARM: axm: add Krzysztof Kozlowski as maintainer
MAINTAINERS: ARM: moxa: add Krzysztof Kozlowski as maintainer
ARM: dts: cirrus: align panel timings node name with dtschema
ARM: dts: vt8500: align panel timings node name with dtschema
ARM: dts: vt8500: replace "uhci" nodename with generic name "usb"
Merge tag 'dt64-cleanup-6.11' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-dt into soc/dt
Minor improvements in ARM64 DTS for v6.11
Few cleanups and improvements which were missed by their maintainers:
1. Spreadtrum: correct PMU nodes - split per clusters.
2. HiSilicon: add dedicated compatible to syscon node ("syscon" alone is
not allowed).
3. APM: add dedicated compatible to syscon node (binding applied to MFD
tree).
Merge tag 'samsung-dt64-6.11' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into soc/dt
Samsung DTS ARM64 changes for v6.10
1. Google GS101: Minor cleanup and add fake regulators to USB phy, to
satisfy dtbs_check. The PMIC providing these regulators is not yet
implemented.
2. Exynos850: Add True Random Number Generator.
* tag 'samsung-dt64-6.11' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
arm64: dts: exynos850: Enable TRNG
arm64: dts: exynos: gs101-oriole: add placeholder regulators for USB phy
arm64: dts: exynos: gs101: reorder properties as per guidelines
Merge tag 'tegra-for-6.11-arm64-dt' of https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into soc/dt
arm64: tegra: Device tree changes for v6.11-rc1
This contains one patch that reworks the device tree structure for
Jetson Orin NX and Jetson Orin Nano, which are both within the same
family. This restructuring makes it easier to extend both platforms
in a consistent way in the future.
* tag 'tegra-for-6.11-arm64-dt' of https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
arm64: tegra: Restructure Orin NX/Nano device tree
ARM: dts: stm32: omit unused pinctrl groups from stm32mp13 dtb files
stm32mp13-pinctrl.dtsi contains nearly all pinctrl groups collected from
all boards. Most of them end up unused by a board and only waste binary
space. Add /omit-if-no-ref/ to the groups to scrub the unused groups
from the dtbs.
Use the following regex to update the file and drop two useless newlines too:
s@^\t[^:]\+: [^ ]\+ {$@\t/omit-if-no-ref/\r&@
Signed-off-by: Marek Vasut <marex@denx.de> Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
Amelie Delaunay [Fri, 31 May 2024 15:07:12 +0000 (17:07 +0200)]
arm64: dts: st: add HPDMA nodes on stm32mp251
The High Performance Direct Memory Access (HPDMA) controller is used to
perform programmable data transfers between memory-mapped peripherals
and memories (or between memories) via linked-lists.
There are 3 instances of HPDMA on stm32mp251, using stm32-dma3 driver, with
16 channels per instance and with one interrupt per channel.
Channels 0 to 7 are implemented with a FIFO of 8 bytes.
Channels 8 to 11 are implemented with a FIFO of 32 bytes.
Channels 12 to 15 are implemented with a FIFO of 128 bytes.
Thanks to stm32-dma3 bindings, the user can ask for a channel with specific
FIFO size.
Marek Vasut [Sun, 23 Jun 2024 19:51:56 +0000 (21:51 +0200)]
ARM: dts: stm32: Add ethernet support for DH STM32MP13xx DHCOR DHSBC board
Add ethernet support for the DH STM32MP13xx DHCOR DHSBC carrier board.
This carrier board is populated with two gigabit ethernet ports and two
Realtek RTL8211F PHYs, both are described in this DT patch.
Signed-off-by: Marek Vasut <marex@denx.de> Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
ARM: dts: stm32: add ethernet1 for STM32MP135F-DK board
Ethernet1: RMII with crystal
Ethernet2: RMII with no cristal, need "phy-supply" property to work,
today this property was managed by Ethernet glue, but should be present
and managed in PHY node. So I will push second Ethernet in next step.
ARM: dts: stm32: add ethernet1/2 RMII pins for STM32MP13F-DK board
Those pins are used for Ethernet 1 and 2 on STM32MP13F-DK board.
ethernet1: RMII with crystal.
ethernet2: RMII without crystal.
Add analog gpio pin configuration ("sleep") to manage power mode on
stm32mp13.
Uwe Kleine-König [Thu, 13 Jun 2024 08:02:28 +0000 (10:02 +0200)]
ARM: dts: stm32: Document output pins for PWMs on stm32mp135f-dk
To simplify identifying the pins where the PWM output is routed to,
add a comment to each PWM device about the respective pin on the
expansion connector.
Devarsh Thakkar [Thu, 13 Jun 2024 15:09:01 +0000 (20:39 +0530)]
arm64: dts: ti: k3-am62a7-sk: Reserve 576MiB of global CMA
Reserve 576MiB of CMA as global CMA pool starting after initial 1GiB of
DDR.
AM62ax has different multimedia components such as Camera, Display, H.264
VPU and JPEG Encoder which use CMA for buffer allocations.
The 12x 720x480 realtime VPU decode use-case requires 544MiB of CMA,
additional 32MiB is kept as buffer in case some other peripheral also
require it while VPU is running.
The reason to choose latter 1GiB is to not overlap with existing memory map
which is utilizing initial 1GiB for remoteproc firmwares as shared here
[1].
Also some drivers such as JPEG require 32bit addressing so not allocating
from higher DDR address.
Devarsh Thakkar [Thu, 13 Jun 2024 15:09:00 +0000 (20:39 +0530)]
arm64: dts: ti: k3-am62x-sk-common: Reserve 128MiB of global CMA
Reserve 128MiB of global CMA which is also marked as re-usable
so that OS can also use the same if peripheral drivers are not using the
same.
AM62x supports multimedia components such as GPU, dual Display and Camera.
Assuming the worst-case scenario where all 3 are run in parallel below
is the calculation :
1) OV5640 camera sensor supports 1920x1080 resolution
-> 1920 width x 1080 height x 2 bytesperpixel x 8 buffers
(default in yavta) : 32MiB
2) 1920x1200 Microtips LVDS panel supported
-> 1920 width x 1080 height x 4 bytesperpixel x 2 buffers :
16 MiB
3) 1920x1080 HDMI display supported
-> 1920 width x 1080 height x 4 bytesperpixel x 2 buffers :
15.82 MiB which is ~16 MiB
4) IMG GPU shares with display allocated buffers while rendering
but in case some dedicated operation viz color conversion,
keeping same window of ~16 MiB for GPU too.
Total is 80 MiB and adding 32 MiB for other peripherals and extra
16 MiB to keep as buffer for fragmentation thus rounding total to 128
MiB.
Raymond Hackley [Sun, 30 Jun 2024 13:29:41 +0000 (13:29 +0000)]
ARM: dts: qcom: qcom-msm8226-samsung-ms013g: Add initial device tree
Samsung Galaxy Grand 2 is a phone based on MSM8226. It's similar to the
other Samsung devices based on MSM8226 with only a few minor differences.
The device trees contain initial support with:
- GPIO keys
- Regulator haptic
- SDHCI (internal and external storage)
- UART (on USB connector via the TI TSU6721 MUIC)
- Regulators
- Touchscreen
- Accelerometer
Fix the following warnings when compiling dtbs with W=1:
../arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi:343.10-353.6: Warning (graph_child_address): /bus@f0000/i2c@20000000/tps6598x@3f/connector/ports: graph node has single child node 'port@0', #address-cells/#size-cells are not necessary
../arch/arm64/boot/dts/ti/k3-am62-main.dtsi:633.22-643.5: Warning (graph_child_address): /bus@f0000/dwc3-usb@f900000/usb@31000000: graph node has single child node 'port@0', #address-cells/#size-cells are not necessary
Fix the following warnings that are thrown when building dtbs with W=1:
../arch/arm64/boot/dts/ti/k3-am62p5-sk.dts:367.10-376.6: Warning (graph_child_address): /bus@f0000/i2c@20000000/usb-power-controller@3f/connector/ports: graph node has single child node 'port@0', #address-cells/#size-cells are not necessary
../arch/arm64/boot/dts/ti/k3-am62p-j722s-common-main.dtsi:647.22-657.5: Warning (graph_child_address): /bus@f0000/usb@f900000/usb@31000000: graph node has single child node 'port@0', #address-cells/#size-cells are not necessary
also defined at ../arch/arm64/boot/dts/ti/k3-am62p5-sk.dts:517.7-528.3
The AM67A/J722S/TDA4AEN platform is a derivative of AM62P platform
and we have no single 1:1 relation regarding index of GPIO and pin
controller. The GPIOs and pin controller registers have mapping and
holes in the map. These have been extracted from the J722S data
sheet. The MCU mapping is carried forward as is with J722S, however the
main GPIO block has differences that needs to be accounted for.
Mux mode input is selected as it is bi-directional. In case a specific
pull type or a specific pin level drive setting is desired, the board
device tree files will have to explicitly mux those pins for the GPIO
with the desired setting.
Ref: J722S Data sheet https://www.ti.com/lit/gpn/tda4aen-q1
On the AM62P platform we have no single 1:1 relation regarding index
of GPIO and pin controller. The GPIOs and pin controller registers
have mapping and holes in the map. These have been extracted from the
AM62P data sheet.
MCU pinctrl definition is shared as it is common between AM62P and
J722S, but that is not the case for main domain.
Ref: AM62P Data sheet https://www.ti.com/lit/gpn/am62p
Nishanth Menon [Thu, 27 Jun 2024 16:25:37 +0000 (11:25 -0500)]
arm64: dts: ti: k3-pinctrl: Define a generic GPIO MUX Mode
Introduce a GPIO mux mode macro for easier readability. All K3 devices
use mux mode 7 to switch to GPIO mux and this allows the gpio-ranges to
be defined for pinctrl-single clearly.
Andrew Davis [Fri, 28 Jun 2024 15:15:18 +0000 (10:15 -0500)]
arm64: dts: ti: k3-am62: Add cpsw-mac-efuse node to wkup_conf
The WKUP system controller address region contains an eFuse block with
MAC addresses to be used by the Ethernet controller. The property
“ti,syscon-efuse” contains a phandle to a syscon region and an offset
into this region where the MAC addresses can be found. Currently
"ti,syscon-efuse" points to the entire system controller address space
node with an offset to the eFuse IP address.
Instead add a cpsw-mac-efuse node to describe the exact eFuse area. Then
point the Ethernet controller directly to this region, no offset needed.
Andrew Davis [Fri, 28 Jun 2024 15:15:17 +0000 (10:15 -0500)]
arm64: dts: ti: k3-am62a: Add cpsw-mac-efuse node to wkup_conf
The WKUP system controller address region contains an eFuse block with
MAC addresses to be used by the Ethernet controller. The property
“ti,syscon-efuse” contains a phandle to a syscon region and an offset
into this region where the MAC addresses can be found. Currently
"ti,syscon-efuse" points to the entire system controller address space
node with an offset to the eFuse IP address.
Instead add a cpsw-mac-efuse node to describe the exact eFuse area. Then
point the Ethernet controller directly to this region, no offset needed.
This makes it so the system controller memory area does not need to be one
big syscon area, describe this bus address area as the simple-bus it is.
Andrew Davis [Fri, 28 Jun 2024 15:15:16 +0000 (10:15 -0500)]
arm64: dts: ti: k3-j784s4: Add cpsw-mac-efuse node to mcu_conf
The MCU system controller address region contains an eFuse block with
MAC addresses to be used by the Ethernet controller. The property
“ti,syscon-efuse” contains a phandle to a syscon region and an offset
into this region where the MAC addresses can be found. Currently
"ti,syscon-efuse" points to the entire system controller address space
node with an offset to the eFuse IP address.
Instead add a cpsw-mac-efuse node to describe the exact eFuse area. Then
point the Ethernet controller directly to this region, no offset needed.
This makes it so the system controller memory area does not need to be one
big syscon area, describe this bus address area as the simple-bus it is.
Andrew Davis [Fri, 28 Jun 2024 15:15:15 +0000 (10:15 -0500)]
arm64: dts: ti: k3-j721s2: Add cpsw-mac-efuse node to mcu_conf
The MCU system controller address region contains an eFuse block with
MAC addresses to be used by the Ethernet controller. The property
“ti,syscon-efuse” contains a phandle to a syscon region and an offset
into this region where the MAC addresses can be found. Currently
"ti,syscon-efuse" points to the entire system controller address space
node with an offset to the eFuse IP address.
Instead add a cpsw-mac-efuse node to describe the exact eFuse area. Then
point the Ethernet controller directly to this region, no offset needed.
This makes it so the system controller memory area does not need to be one
big syscon area, describe this bus address area as the simple-bus it is.
Andrew Davis [Fri, 28 Jun 2024 15:15:14 +0000 (10:15 -0500)]
arm64: dts: ti: k3-j721e: Add cpsw-mac-efuse node to mcu_conf
The MCU system controller address region contains an eFuse block with
MAC addresses to be used by the Ethernet controller. The property
“ti,syscon-efuse” contains a phandle to a syscon region and an offset
into this region where the MAC addresses can be found. Currently
"ti,syscon-efuse" points to the entire system controller address space
node with an offset to the eFuse IP address.
Instead add a cpsw-mac-efuse node to describe the exact eFuse area. Then
point the Ethernet controller directly to this region, no offset needed.
This makes it so the system controller memory area does not need to be one
big syscon area, describe this bus address area as the simple-bus it is.
Andrew Davis [Fri, 28 Jun 2024 15:15:13 +0000 (10:15 -0500)]
arm64: dts: ti: k3-j7200: Add cpsw-mac-efuse node to mcu_conf
The MCU system controller address region contains an eFuse block with
MAC addresses to be used by the Ethernet controller. The property
“ti,syscon-efuse” contains a phandle to a syscon region and an offset
into this region where the MAC addresses can be found. Currently
"ti,syscon-efuse" points to the entire system controller address space
node with an offset to the eFuse IP address.
Instead add a cpsw-mac-efuse node to describe the exact eFuse area. Then
point the Ethernet controller directly to this region, no offset needed.
This makes it so the system controller memory area does not need to be one
big syscon area, describe this bus address area as the simple-bus it is.
Andrew Davis [Fri, 28 Jun 2024 15:15:12 +0000 (10:15 -0500)]
arm64: dts: ti: k3-am65: Add cpsw-mac-efuse node to mcu_conf
The MCU system controller address region contains an eFuse block with
MAC addresses to be used by the Ethernet controller. The property
“ti,syscon-efuse” contains a phandle to a syscon region and an offset
into this region where the MAC addresses can be found. Currently
"ti,syscon-efuse" points to the entire system controller address space
node with an offset to the eFuse IP address.
Instead add a cpsw-mac-efuse node to describe the exact eFuse area. Then
point the Ethernet controller directly to this region, no offset needed.
This makes it so the system controller memory area does not need to be one
big syscon area, describe this bus address area as the simple-bus it is.
Garrett Giordano [Wed, 26 Jun 2024 15:52:44 +0000 (08:52 -0700)]
arm64: dts: ti: Add basic support for phyBOARD-Lyra-AM62Ax
The phyCORE-AM62Ax [1] is a SoM (System on Module) featuring TI's AM62Ax SoC.
It can be used in combination with different carrier boards.
This module can come with different sizes and models for
DDR, eMMC, SPI NOR Flash and various SoCs from the AM62Ax family.
A development Kit, called phyBOARD-Lyra [2] is used as a carrier board
reference design with a mapper board being used to allow the phyCORE-AM62Ax
to fit the phyBOARD-Lyra.
PHYTECs phyBOARD-Lyra carrier board is able to accomidate multiple SoMs.
Refactor k3-am625-phyboard-lyra-rdk.dts into an include file so it can
be reused in combination with our phyCORE-AM62Ax SoM.
Jayesh Choudhary [Wed, 26 Jun 2024 10:16:45 +0000 (15:46 +0530)]
arm64: dts: ti: k3-j784s4-evm: Enable analog audio support
The audio support on J784S4-EVM is using PCM3168A[0] codec
connected to McASP0 serializers.
- Add the nodes for sound-card, audio codec, MAIN_I2C3 and
McASP0.
- Add pinmux for I2C3, McASP0 and AUDIO_EXT_REFCLK1.
- Add necessary GPIO hogs to route the MAIN_I2C3 lines and
McASP serializer.
- Add idle-state as 1 in mux1 to route McASP clock signals.
On J784S4 SoC, the AUDIO_REFCLK1 can be used as input to external
peripherals when configured through CTRL_MMR.
Add audio_refclk1 node which would be used as system clock for
audio codec PCM3168A.
Jayesh Choudhary [Tue, 25 Jun 2024 11:33:01 +0000 (17:03 +0530)]
arm64: dts: ti: k3-j722s-evm: Enable analog audio support
The audio support on J722S-EVM is using TLV320AIC3106[0] codec
connected to McASP1 serializers.
- Add the nodes for sound-card, audio codec and McASP1.
- Add hog for TRC_MUX_SEL to select between McASP and TRACE signals
- Add hogs for GPIO_AUD_RSTn and MCASP1_FET_SEL which is used to
switch between HDMI audio and codec audio.
- Add pinmux for MCASP1 and AUDIO_EXT_REFCLK1.
On J722S SoC, the AUDIO_REFCLK1 can be used as input to external
peripherals when configured through CTRL_MMR.
Add audio_refclk1 node which would be used as system clock for the
audio codec TLV320AIC3106.
Sinthu Raja [Sat, 22 Jun 2024 16:18:35 +0000 (21:48 +0530)]
arm64: dts: ti: k3-am68-sk-som: Add support for OSPI flash
AM68 SK has an OSPI NOR flash on its SOM connected to OSPI0 instance.
Enable support for the same. Also, describe the OSPI flash partition
information through the device tree, according to the offsets in the
bootloader.
Nathan Morrisson [Fri, 21 Jun 2024 23:31:43 +0000 (16:31 -0700)]
arm64: dts: ti: k3-am6xx-phycore-qspi-nor: Add overlay to enable QSPI NOR
Add an overlay to change from the default OSPI NOR to QSPI NOR
for all am6xx-phycore-som boards.
The EEPROM on am6xx-phycore-soms contains information about the
configuration of the SOM. The standard configuration of the SOM
has an ospi nor, but if qspi nor is populated, the EEPROM will
indicate that change and we can use this overlay to cleanly change to
qspi nor.
arm64: dts: ti: k3-am64-tqma64xxl: relicense to GPL-2.0-only OR MIT
MIT license was added to the AM64x SoC DTSIs in commit 6248b20e3203
("arm64: dts: ti: k3-am64: Add MIT license along with GPL-2.0"). Apply
the same license change to the TQMa64xxL SoM and MBaX4XxL baseboard
Device Trees.
The copyright year is updated to indicate the license change.
In current configuration, nau8822 codec on development carrier board
provides distorted audio output. This happens due to reference clock
is fixed to 25MHz and no PLL is enabled. Following is the calculation
of deviation error for different frequencies:
Enabling nau822 PLL via providing mclk-fs property to simple-audio-card
configures clocks properly, but also adjusts audio reference clock
(mclk), which in case of TI AM62 should be avoided, as it only
supports 25MHz output [1][2].
This change enables PLL on nau8822 by providing mclk-fs, and moves
away audio reference clock from DAI configuration, which prevents
simple-audio-card to adjust it before every playback [3].
Marek Vasut [Thu, 27 Jun 2024 23:30:09 +0000 (01:30 +0200)]
arm64: dts: imx8mp: Update Fast ethernet PHY MDIO addresses to match DH i.MX8MP DHCOM rev.200
The production DH i.MX8MP DHCOM SoM rev.200 uses updated PHY MDIO addresses
for the Fast ethernet PHYs. Update the base SoM DT to cater for this change.
Prototype rev.100 SoM was never publicly available and was manufactured in
limited series, anything currently available is rev.200 or newer, so it is
safe to update the DT this way.
Signed-off-by: Marek Vasut <marex@denx.de> Reviewed-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Marek Vasut [Tue, 25 Jun 2024 12:11:09 +0000 (14:11 +0200)]
arm64: dts: imx8mp: Do not reconfigure Audio PLL2 on DH i.MX8M Plus DHCOM SoM
The DH i.MX8M Plus DHCOM SoM uses Audio PLL2 to supply clock to CLKOUT2
output. Those clock are used to supply on-SoM TC9595 DSI-to-(e)DP bridge
with RefClk and must not be reconfigured, otherwise the bridge cannot
work correctly. Stop reconfiguring Audio PLL2 on this SoM.
Fixes: f560da940e32 ("arm64: dts: imx8mp: Initialize audio PLLs from audiomix subsystem") Signed-off-by: Marek Vasut <marex@denx.de> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Frank Li [Wed, 26 Jun 2024 20:25:33 +0000 (16:25 -0400)]
arm64: dts: layerscape: rename b(q)man-portals to b(q)man-portals-bus
Rename b(q)man-portals to b(q)man-portals-bus to fix below CHECK_DTB
warnings.
arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dtb:
bman-portals@508000000: $nodename:0: 'bman-portals@508000000' does not match '^([a-z][a-z0-9\\-]+-bus|bus|localbus|soc|axi|ahb|apb)(@.+)?$'
Signed-off-by: Frank Li <Frank.Li@nxp.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Frank Li [Wed, 26 Jun 2024 20:25:31 +0000 (16:25 -0400)]
arm64: dts: fsl-ls1043a: remove unused clk-name at watchdog node
clk-name is undocument property and never used in watchdog driver. Remove
it and fix below CHECK_DTB warning.
arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dtb: watchdog@2ad0000: Unevaluated properties are not allowed ('big-endian', 'clock-names' were unexpected)
Signed-off-by: Frank Li <Frank.Li@nxp.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Frank Li [Wed, 26 Jun 2024 20:25:30 +0000 (16:25 -0400)]
arm64: dts: layerscape: rename aux_bus to aux-bus
Rename aux_bus to aux-bus to fix below CHECK_DTBS warning.
arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dtb:
aux_bus: $nodename:0: 'aux_bus' does not match '^([a-z][a-z0-9\\-]+-bus|bus|localbus|soc|axi|ahb|apb)(@.+)?$'
from schema $id: http://devicetree.org/schemas/simple-bus.yam
Signed-off-by: Frank Li <Frank.Li@nxp.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Frank Li [Wed, 26 Jun 2024 20:25:29 +0000 (16:25 -0400)]
arm64: dts: layerscape: change pcie interrupt order
Change pcie interrupt order to fix below warning.
arch/arm64/boot/dts/freescale/fsl-ls1012a-frdm.dtb: pcie@3400000: interrupt-names:0: 'pme' was expected
from schema $id: http://devicetree.org/schemas/pci/fsl,layerscape-pcie.yaml#
arch/arm64/boot/dts/freescale/fsl-ls1012a-frdm.dtb: pcie@3400000: interrupt-names:1: 'aer' was expected
from schema $id: http://devicetree.org/schemas/pci/fsl,layerscape-pcie.yaml#
Signed-off-by: Frank Li <Frank.Li@nxp.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Frank Li [Wed, 26 Jun 2024 20:25:28 +0000 (16:25 -0400)]
arm64: dts: layerscape: rename node name "wdt" to "watchdog"
Rename node name "wdt" to "watchdog" to fix below warning:
arch/arm64/boot/dts/freescale/fsl-ls1088a-qds.dtb:
wdt@c000000: $nodename:0: 'wdt@c000000' does not match '^(timer|watchdog)(@.*|-([0-9]|[1-9][0-9]+))?$
Signed-off-by: Frank Li <Frank.Li@nxp.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Frank Li [Wed, 26 Jun 2024 20:25:26 +0000 (16:25 -0400)]
arm64: dts: layerscape: remove compatible string 'fsl,fman-xmdio' for fman3
Fman3 should use 'fsl,fman-memac-mdio'. 'fsl,fman-xmdio' is for fman2.
Fix below CHECK_DTBS warning.
fman@1a00000: mdio@eb000:compatible: ['fsl,fman-memac-mdio', 'fsl,fman-xmdio'] is too long
Signed-off-by: Frank Li <Frank.Li@nxp.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Frank Li [Wed, 26 Jun 2024 20:25:22 +0000 (16:25 -0400)]
arm64: dts: layerscape: add platform special compatible string for gpio
Add platform special compatible string for all gpio controller to fix
below warning.
gpio@2300000: compatible: 'oneOf' conditional failed, one must be fixed:
['fsl,qoriq-gpio'] is too short
'fsl,qoriq-gpio' is not one of ['fsl,mpc5121-gpio', 'fsl,mpc5125-gpio', 'fsl,mpc8349-gpio', 'fsl,mpc8572-gpio', 'fsl,mpc8610-gpio', 'fsl,pq3-gpio']
'fsl,qoriq-gpio' is not one of ['fsl,ls1021a-gpio', 'fsl,ls1028a-gpio', 'fsl,ls1043a-gpio', 'fsl,ls1088a-gpio', 'fsl,ls2080a-gpio']
Signed-off-by: Frank Li <Frank.Li@nxp.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Frank Li [Wed, 26 Jun 2024 20:25:21 +0000 (16:25 -0400)]
arm64: dts: layerscape: rename node 'timer' as 'rtc'
ftm_alarm is rtc. Correct the name as 'rtc' to fix DTB_CHECK warning.
timer@29d0000: $nodename:0: 'timer@29d0000' does not match '^rtc(@.*|-([0-9]|[1-9][0-9]+))?$'
from schema $id: http://devicetree.org/schemas/rtc/fsl,ls-ftm-alarm.yaml
Signed-off-by: Frank Li <Frank.Li@nxp.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Frank Li [Mon, 24 Jun 2024 18:55:29 +0000 (14:55 -0400)]
arm64: dts: fsl-ls1043a-rdb: use common spi-cs-setup(hold)-delay-ns
Use SPI common properties 'spi-cs-setup-delay-ns' and
'spi-cs-hold-delay-ns', mark private properties 'fsl,spi-cs-sck-delay'
and 'fsl,spi-sck-cs-delay' as deprecated.
Signed-off-by: Frank Li <Frank.Li@nxp.com> Reviewed-by: Vladimir Oltean <olteanv@gmail.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
- Fix GPIO number for reg_usdhc2_vmmc on imx8qm-mek board.
- Enable hysteresis for SODIMM_17 pin on imx8mm-verdin board to increase
immunity against noise.
- Remove 'no-sdio' property for uSDHC2 on imx93-11x11-evk board, so that
SDIO cards could also work.
- Fix BT shutdown GPIO for imx8mp-venice-gw73xx-2x board.
- Fix panel node deleting on imx53-qsb-hdmi, as /delete-node/ directive
doesn't really delete a node in a DT overlay.
- Fix TC9595 input clock on DH i.MX8M Plus DHCOM SoM.
- Fix GPU speed for imx8mm-verdin board by enabling overdrive mode in
the SOM dtsi.
Adam Ford [Wed, 19 Jun 2024 10:10:44 +0000 (05:10 -0500)]
arm64: dts: imx8mp: Fix pgc vpu locations
The various pgv_vpu nodes have a mismatch between the value after
the @ symbol and what is referenced by 'reg' so reorder the nodes
to align.
Fixes: df680992dd62 ("arm64: dts: imx8mp: add vpu pgc nodes") Suggested-by: Alexander Stein <alexander.stein@ew.tq-group.com> Signed-off-by: Adam Ford <aford173@gmail.com> Reviewd-by: Alexander Stein <alexander.stein@ew.tq-group.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
The GW7400 has an onboard DP83867 RGMII GbE PHY:
- add RGMII delay and FIFO configuration
- add LED configuration required to use them via netdev trigger:
two LED's (LED1 and LED2, skipping LED0).
Signed-off-by: Tim Harvey <tharvey@gateworks.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Tim Harvey [Tue, 18 Jun 2024 20:05:52 +0000 (13:05 -0700)]
arm64: dts: imx8mp-venice-gw702x: add support for PHY LED's
The GW702x SoM has an onboard DP83867 RGMII GbE PHY that drives two
LED's (LED1 and LED2, skipping LED0). Add the appropriate dt bindings to
allow these PHY LED's to be controlled via a netdev trigger.
Signed-off-by: Tim Harvey <tharvey@gateworks.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Tim Harvey [Tue, 18 Jun 2024 20:02:54 +0000 (13:02 -0700)]
arm64: dts: imx8mm-venice-gw700x: add support for PHY LED's
The GW700x SoM has an onboard DP83867 RGMII GbE PHY that drives two
LED's (LED1 and LED2, skipping LED0). Add the appropriate dt bindings to
allow these PHY LED's to be controlled via a netdev trigger.
Signed-off-by: Tim Harvey <tharvey@gateworks.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
arm/arm64: dts: arm: Use generic clock and regulator nodenames
With the recent defining of preferred naming for fixed clock and
regulator nodes, convert the Arm Ltd. boards to use the preferred
names. In the cases which had a unit-address, warnings about missing
"reg" property are fixed.