soc: devicetree updates for 6.15

There is new support for additional on-chip devices on Apple, Mediatek,
 Renesas, Rockchip, Samsung, Google, TI, ST, Nvidia and Amlogic devices.
 
 The Arm Morello reference platform gets a devicetree for booting in
 normal aarch64 mode. The hardware supports experimental CHERI support,
 which requires a modified kernel.
 
 The AMD (formerly Xilinx) Versal NET SoC gets added, this is a combined
 FPGA with Cortex-A78 CPUs in a SoC.
 
 Six new ST STM32MP2 SoC variants are added. Like the earlier STM32MP25,
 the MP211, MP213, MP215, MP231, MP233 and MP235 models are based on one
 or two Cortex-A35 cores but each feature a different set of I/O devices.
 
 Mediatek MT8370 is a minor variation of MT8390 with fewer CPU and
 GPU cores
 
 Apple T2 is the baseboard management controller on earlier Intel CPU
 based Macs, with 16 models now gaining initial support.
 
 All the above come with dts files for the reference boards. In
 addition, these boards are added for the SoCs that are already supported.
 
  - The Milk-V Jupiter board based on SpacemiT K1/M1
 
  - NetCube Systems Kumquat board based on the 32-bit Allwinner V3s SoC
 
  - Three boards based on 32-bit stm32mp1
 
  - 11 distinct board variants from Toradex and one from Variscite,
    all based on i.MX6
 
  - Google Pixel Pro 6 phone based on gs101 (Tensor)
 
  - Three additional variants of the i.MX8MP based "Skov" board
 
  - A second variant of the i.MX95 EVK board
 
  - Two boards based on Renesas SoCs
 
  - Four boards based the Rockchip RK35xx series, plus the RK3588
    "MNT Reform 2" laptop
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmfkN4kACgkQYKtH/8kJ
 Uied/g/+OA7VTWS9K9DMjmrDvrMn73GPRRuC3Se7NutHt5kQeQ8I0oFk3VILxiLx
 /Rck8imIac65ANejy7M0omPYbVak6lyC0PRT9v/gZT++3rQzbd5/MAXHyKftVk6V
 aEgIcFcbu3805dPf+ioIsyk5DshhlqRg0o3u9iMIJlzaykoLapSirnOW0/dcbz8V
 kZlxuJRkQopx/+7/sbOtKXcL6ybif9jmgflQHUdGBT7Z7lAnhnIceelfKWPCQPki
 TrQXG5YITJXEebyM399SwnAOl9pXs6z4KSYsULAfCONKOGwIXmcD1wDhZOtDUvoH
 tu/V07R70fbEhJMTY5eZEc4Ym0firfk3IU3VRGxxOZJEuBOXN49snZzutNZEyqjX
 WOjy4jgHTHhQQKc7++mB+5G7zfBPI2gcMnLWgU18Bq8LRcdLGOYPfQ6+PvkMJI8K
 Vn/otYr80cSoJIPAmJZ9KvZiRmdqkK1YLxfOcNNjmFwk2YJxta7wmnbYX4g+zkkT
 ZdlU5+iQp0BQnd37m3WU+b4Ed60dH/g5bflj6TzXEYqiHY4Kxoud9Z7AQTPj4FIu
 PJiz+7J1p4a/uKK8BbVMjvnomARggdacrVDTB2mCfr6Av6c9RifAcREm0x6hZ2L8
 dTR5fnh8zJ7sbmFwoS6ncUp4hgqotfZ/fYfK91xJ9rpyucOpnTE=
 =6ZZ6
 -----END PGP SIGNATURE-----

Merge tag 'soc-dt-6.15' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull SoC devicetree updates from Arnd Bergmann:
 "There is new support for additional on-chip devices on Apple,
  Mediatek, Renesas, Rockchip, Samsung, Google, TI, ST, Nvidia and
  Amlogic devices.

  The Arm Morello reference platform gets a devicetree for booting in
  normal aarch64 mode. The hardware supports experimental CHERI support,
  which requires a modified kernel.

  The AMD (formerly Xilinx) Versal NET SoC gets added, this is a
  combined FPGA with Cortex-A78 CPUs in a SoC.

  Six new ST STM32MP2 SoC variants are added. Like the earlier
  STM32MP25, the MP211, MP213, MP215, MP231, MP233 and MP235 models are
  based on one or two Cortex-A35 cores but each feature a different set
  of I/O devices.

  Mediatek MT8370 is a minor variation of MT8390 with fewer CPU and GPU
  cores

  Apple T2 is the baseboard management controller on earlier Intel CPU
  based Macs, with 16 models now gaining initial support.

  All the above come with dts files for the reference boards. In
  addition, these boards are added for the SoCs that are already
  supported:

   - The Milk-V Jupiter board based on SpacemiT K1/M1

   - NetCube Systems Kumquat board based on the 32-bit Allwinner V3s SoC

   - Three boards based on 32-bit stm32mp1

   - 11 distinct board variants from Toradex and one from Variscite, all
     based on i.MX6

   - Google Pixel Pro 6 phone based on gs101 (Tensor)

   - Three additional variants of the i.MX8MP based "Skov" board

   - A second variant of the i.MX95 EVK board

   - Two boards based on Renesas SoCs

   - Four boards based the Rockchip RK35xx series, plus the RK3588 'MNT
     Reform 2' laptop"

* tag 'soc-dt-6.15' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (538 commits)
  arm64: dts: Add gpio_intc node for Amlogic A5 SoCs
  arm64: dts: Add gpio_intc node for Amlogic A4 SoCs
  arm64: dts: hi3660: Add property for fixing CPUIdle
  arm64: dts: rockchip: remove ethm0_clk0_25m_out from Sige5 gmac0
  arm64: dts: marvell: Use preferred node names for "simple-bus"
  arm64: dts: marvell: Drop unused CP11X_TYPE define
  arm64: dts: marvell: Move arch timer and pmu nodes to top-level
  arm64: dts: rockchip: Fix PWM pinctrl names
  arm64: dts: rockchip: fix RK3576 SCMI clock IDs
  dt-bindings: clock: rk3576: add SCMI clocks
  arm64: dts: rockchip: Fix pcie reset gpio on Orange Pi 5 Max
  arm64: dts: amd/seattle: Drop undocumented "spi-controller" properties
  arm64: dts: amd/seattle: Fix bus, mmc, and ethernet node names
  arm64: dts: amd/seattle: Move and simplify fixed clocks
  arm64: dts: amd/seattle: Base Overdrive B1 on top of B0 version
  arm64: dts: rockchip: Enable HDMI audio output for ArmSoM Sige7
  arm64: dts: rockchip: Enable onboard eMMC on Radxa E20C
  arm64: dts: rockchip: Add SDHCI controller for RK3528
  arm64: dts: rockchip: Remove bluetooth node from rock-3a
  arm64: dts: rockchip: Move rk356x scmi SHMEM to reserved memory
  ...
This commit is contained in:
Linus Torvalds 2025-03-27 09:01:37 -07:00
commit 2f24482304
646 changed files with 35691 additions and 2995 deletions

View File

@ -57,6 +57,25 @@ description: |
- iPad Pro (2nd Generation) (10.5 Inch)
- iPad Pro (2nd Generation) (12.9 Inch)
Devices based on the "T2" SoC:
- Apple T2 MacBookPro15,2 (j132)
- Apple T2 iMacPro1,1 (j137)
- Apple T2 MacBookAir8,2 (j140a)
- Apple T2 MacBookAir8,1 (j140k)
- Apple T2 MacBookPro16,1 (j152f)
- Apple T2 MacPro7,1 (j160)
- Apple T2 Macmini8,1 (j174)
- Apple T2 iMac20,1 (j185)
- Apple T2 iMac20,2 (j185f)
- Apple T2 MacBookPro15,4 (j213)
- Apple T2 MacBookPro16,2 (j214k)
- Apple T2 MacBookPro16,4 (j215)
- Apple T2 MacBookPro16,3 (j223)
- Apple T2 MacBookAir9,1 (j230k)
- Apple T2 MacBookPro15,1 (j680)
- Apple T2 MacBookPro15,3 (j780)
Devices based on the "A11" SoC:
- iPhone 8
@ -211,6 +230,28 @@ properties:
- const: apple,t8011
- const: apple,arm-platform
- description: Apple T2 SoC based platforms
items:
- enum:
- apple,j132 # Apple T2 MacBookPro15,2 (j132)
- apple,j137 # Apple T2 iMacPro1,1 (j137)
- apple,j140a # Apple T2 MacBookAir8,2 (j140a)
- apple,j140k # Apple T2 MacBookAir8,1 (j140k)
- apple,j152f # Apple T2 MacBookPro16,1 (j152f)
- apple,j160 # Apple T2 MacPro7,1 (j160)
- apple,j174 # Apple T2 Macmini8,1 (j174)
- apple,j185 # Apple T2 iMac20,1 (j185)
- apple,j185f # Apple T2 iMac20,2 (j185f)
- apple,j213 # Apple T2 MacBookPro15,4 (j213)
- apple,j214k # Apple T2 MacBookPro16,2 (j214k)
- apple,j215 # Apple T2 MacBookPro16,4 (j215)
- apple,j223 # Apple T2 MacBookPro16,3 (j223)
- apple,j230k # Apple T2 MacBookAir9,1 (j230k)
- apple,j680 # Apple T2 MacBookPro15,1 (j680)
- apple,j780 # Apple T2 MacBookPro15,3 (j780)
- const: apple,t8012
- const: apple,arm-platform
- description: Apple A11 SoC based platforms
items:
- enum:

View File

@ -22,6 +22,11 @@ properties:
compatible:
items:
- enum:
- apple,s5l8960x-pmgr
- apple,t7000-pmgr
- apple,s8000-pmgr
- apple,t8010-pmgr
- apple,t8015-pmgr
- apple,t8103-pmgr
- apple,t8112-pmgr
- apple,t6000-pmgr

View File

@ -0,0 +1,35 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/arm/arm,morello.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: ARM Morello Platforms
maintainers:
- Vincenzo Frascino <vincenzo.frascino@arm.com>
description: |+
The Morello architecture is an experimental extension to Armv8.2-A,
which extends the AArch64 state with the principles proposed in
version 7 of the Capability Hardware Enhanced RISC Instructions
(CHERI) ISA.
ARM's Morello Platforms are built as a research project to explore
capability architectures based on arm.
properties:
$nodename:
const: '/'
compatible:
oneOf:
- description: Arm Morello System Platforms
items:
- enum:
- arm,morello-sdp
- arm,morello-fvp
- const: arm,morello
additionalProperties: true
...

View File

@ -177,6 +177,7 @@ properties:
- arm,neoverse-v2
- arm,neoverse-v3
- arm,neoverse-v3ae
- arm,rainier
- brcm,brahma-b15
- brcm,brahma-b53
- brcm,vulcan

View File

@ -97,6 +97,7 @@ properties:
- i2se,duckbill
- i2se,duckbill-2
- karo,tx28 # Ka-Ro electronics TX28 module
- lwn,imx28-btt3
- lwn,imx28-xea
- msr,m28cu3 # M28 SoM with custom base board
- schulercontrol,imx28-sps1
@ -296,7 +297,6 @@ properties:
- technexion,imx6q-pico-pi # TechNexion i.MX6Q Pico-Pi
- technologic,imx6q-ts4900
- technologic,imx6q-ts7970
- toradex,apalis_imx6q # Apalis iMX6 Modules
- udoo,imx6q-udoo # Udoo i.MX6 Quad Board
- uniwest,imx6q-evi # Uniwest Evi
- variscite,dt6customboard
@ -490,7 +490,6 @@ properties:
- technexion,imx6dl-pico-pi # TechNexion i.MX6DL Pico-Pi
- technologic,imx6dl-ts4900
- technologic,imx6dl-ts7970
- toradex,colibri_imx6dl # Colibri iMX6 Modules
- udoo,imx6dl-udoo # Udoo i.MX6 Dual-lite Board
- vdl,lanmcu # Van der Laan LANMCU board
- wand,imx6dl-wandboard # Wandboard i.MX6 Dual Lite Board
@ -688,6 +687,12 @@ properties:
- const: phytec,imx6ul-pcl063 # PHYTEC phyCORE-i.MX 6UL
- const: fsl,imx6ul
- description: i.MX6UL Variscite VAR-SOM-MX6 Boards
items:
- const: variscite,mx6ulconcerto
- const: variscite,var-som-imx6ul
- const: fsl,imx6ul
- description: Kontron BL i.MX6UL (N631X S) Board
items:
- const: kontron,bl-imx6ul # Kontron BL i.MX6UL Carrier Board
@ -730,9 +735,6 @@ properties:
- joz,jozacp # JOZ Access Point
- kontron,sl-imx6ull # Kontron SL i.MX6ULL SoM
- myir,imx6ull-mys-6ulx-eval # MYiR Tech iMX6ULL Evaluation Board
- toradex,colibri-imx6ull # Colibri iMX6ULL Modules
- toradex,colibri-imx6ull-emmc # Colibri iMX6ULL 1GB (eMMC) Module
- toradex,colibri-imx6ull-wifi # Colibri iMX6ULL Wi-Fi / BT Modules
- uni-t,uti260b # UNI-T UTi260B Thermal Camera
- const: fsl,imx6ull
@ -891,8 +893,6 @@ properties:
- technexion,imx7d-pico-hobbit # TechNexion i.MX7D Pico-Hobbit
- technexion,imx7d-pico-nymph # TechNexion i.MX7D Pico-Nymph
- technexion,imx7d-pico-pi # TechNexion i.MX7D Pico-Pi
- toradex,colibri-imx7d # Colibri iMX7D Module
- toradex,colibri-imx7d-emmc # Colibri iMX7D 1GB (eMMC) Module
- zii,imx7d-rmu2 # ZII RMU2 Board
- zii,imx7d-rpu2 # ZII RPU2 Board
- const: fsl,imx7d
@ -962,9 +962,6 @@ properties:
- innocomm,wb15-evk # i.MX8MM Innocomm EVK board with WB15 SoM
- kontron,imx8mm-sl # i.MX8MM Kontron SL (N801X) SOM
- kontron,imx8mm-osm-s # i.MX8MM Kontron OSM-S (N802X) SOM
- toradex,verdin-imx8mm # Verdin iMX8M Mini Modules
- toradex,verdin-imx8mm-nonwifi # Verdin iMX8M Mini Modules without Wi-Fi / BT
- toradex,verdin-imx8mm-wifi # Verdin iMX8M Mini Wi-Fi / BT Modules
- prt,prt8mm # i.MX8MM Protonic PRT8MM Board
- const: fsl,imx8mm
@ -1098,12 +1095,12 @@ properties:
- gateworks,imx8mp-gw74xx # i.MX8MP Gateworks Board
- gateworks,imx8mp-gw75xx-2x # i.MX8MP Gateworks Board
- gateworks,imx8mp-gw82xx-2x # i.MX8MP Gateworks Board
- skov,imx8mp-skov-basic # SKOV i.MX8MP baseboard without frontplate
- skov,imx8mp-skov-revb-hdmi # SKOV i.MX8MP climate control without panel
- skov,imx8mp-skov-revb-lt6 # SKOV i.MX8MP climate control with 7” panel
- skov,imx8mp-skov-revb-mi1010ait-1cp1 # SKOV i.MX8MP climate control with 10.1" panel
- toradex,verdin-imx8mp # Verdin iMX8M Plus Modules
- toradex,verdin-imx8mp-nonwifi # Verdin iMX8M Plus Modules without Wi-Fi / BT
- toradex,verdin-imx8mp-wifi # Verdin iMX8M Plus Wi-Fi / BT Modules
- skov,imx8mp-skov-revc-bd500 # SKOV i.MX8MP climate control with LED frontplate
- skov,imx8mp-skov-revc-tian-g07017 # SKOV i.MX8MP climate control with 7" panel
- ysoft,imx8mp-iota2-lumpy # Y Soft i.MX8MP IOTA2 Lumpy Board
- const: fsl,imx8mp
@ -1273,8 +1270,6 @@ properties:
- enum:
- fsl,imx8qm-mek # i.MX8QM MEK Board
- fsl,imx8qm-mek-revd # i.MX8QM MEK Rev D Board
- toradex,apalis-imx8 # Apalis iMX8 Modules
- toradex,apalis-imx8-v1.1 # Apalis iMX8 V1.1 Modules
- const: fsl,imx8qm
- description: i.MX8QM Boards with Toradex Apalis iMX8 Modules
@ -1355,6 +1350,7 @@ properties:
- description: i.MX95 based Boards
items:
- enum:
- fsl,imx95-15x15-evk # i.MX95 15x15 EVK Board
- fsl,imx95-19x19-evk # i.MX95 19x19 EVK Board
- const: fsl,imx95
@ -1435,7 +1431,6 @@ properties:
- fsl,vf610-twr # VF610 Tower Board
- lwn,bk4 # Liebherr BK4 controller
- phytec,vf610-cosmic # PHYTEC Cosmic/Cosmic+ Board
- toradex,vf610-colibri_vf61 # Colibri VF61 Modules
- const: fsl,vf610
- description: Toradex Colibri VF61 Module on Colibri Evaluation Board

View File

@ -34,10 +34,11 @@ properties:
const: '/'
compatible:
oneOf:
- description: Google Pixel 6 / Oriole
- description: Google Pixel 6 or 6 Pro (Oriole or Raven)
items:
- enum:
- google,gs101-oriole
- google,gs101-raven
- const: google,gs101
# Bootloader requires empty ect node to be present

View File

@ -18,6 +18,7 @@ properties:
items:
- enum:
- cznic,turris-mox
- glinet,gl-mv1000
- globalscale,espressobin
- marvell,armada-3720-db
- methode,edpu

View File

@ -23,6 +23,9 @@ properties:
- description: Armada 7040 SoC
items:
- enum:
- globalscale,mochabin
- marvell,armada7040-db
- const: marvell,armada7040
- const: marvell,armada-ap806-quad
- const: marvell,armada-ap806
@ -35,10 +38,32 @@ properties:
- description: Armada 8040 SoC
items:
- enum:
- iei,puzzle-m801
- marvell,armada8040-db
- solidrun,clearfog-gt-8k
- const: marvell,armada8040
- const: marvell,armada-ap806-quad
- const: marvell,armada-ap806
- description: Armada 8040 SoC MACCHIATOBin Boards
items:
- enum:
- marvell,armada8040-mcbin-doubleshot
- marvell,armada8040-mcbin-singleshot
- const: marvell,armada8040-mcbin
- const: marvell,armada8040
- const: marvell,armada-ap806-quad
- const: marvell,armada-ap806
- description: Armada 8080 SoC
items:
- enum:
- marvell,armada-8080-db
- const: marvell,armada-8080
- const: marvell,armada-ap810-octa
- const: marvell,armada-ap810
- description: Armada CN9130 SoC with no external CP
items:
- const: marvell,cn9130

View File

@ -1,15 +0,0 @@
Marvell Armada 8KPlus Platforms Device Tree Bindings
----------------------------------------------------
Boards using a SoC of the Marvell Armada 8KP families must carry
the following root node property:
- compatible, with one of the following values:
- "marvell,armada-8080", "marvell,armada-ap810-octa", "marvell,armada-ap810"
when the SoC being used is the Armada 8080
Example:
compatible = "marvell,armada-8080-db", "marvell,armada-8080",
"marvell,armada-ap810-octa", "marvell,armada-ap810"

View File

@ -412,6 +412,11 @@ properties:
- enum:
- mediatek,mt8365-evk
- const: mediatek,mt8365
- items:
- enum:
- mediatek,mt8370-evk
- const: mediatek,mt8370
- const: mediatek,mt8188
- items:
- enum:
- mediatek,mt8390-evk

View File

@ -67,6 +67,7 @@ properties:
- arm,neoverse-v2-pmu
- arm,neoverse-v3-pmu
- arm,neoverse-v3ae-pmu
- arm,rainier-pmu
- brcm,vulcan-pmu
- cavium,thunder-pmu
- nvidia,denver-pmu

View File

@ -49,6 +49,11 @@ properties:
- anbernic,rg-arc-s
- const: rockchip,rk3566
- description: Ariaboard Photonicat
items:
- const: ariaboard,photonicat
- const: rockchip,rk3568
- description: ArmSoM Sige5 board
items:
- const: armsom,sige5
@ -178,6 +183,13 @@ properties:
- const: engicam,px30-core
- const: rockchip,px30
- description: Firefly iCore-3588Q-based boards
items:
- enum:
- mntre,reform2-rcore
- const: firefly,icore-3588q
- const: rockchip,rk3588
- description: Firefly Core-3588J-based boards
items:
- enum:
@ -236,6 +248,11 @@ properties:
- firefly,roc-rk3399-pc-plus
- const: rockchip,rk3399
- description: Firefly ROC-RK3576-PC
items:
- const: firefly,roc-rk3576-pc
- const: rockchip,rk3576
- description: Firefly Station M2
items:
- const: firefly,rk3566-roc-pc
@ -862,6 +879,11 @@ properties:
- const: radxa,rock-4c-plus
- const: rockchip,rk3399
- description: Radxa ROCK 4D
items:
- const: radxa,rock-4d
- const: rockchip,rk3576
- description: Radxa ROCK 4SE
items:
- const: radxa,rock-4se
@ -1136,11 +1158,12 @@ properties:
- const: xunlong,orangepi-3b
- const: rockchip,rk3566
- description: Xunlong Orange Pi 5 Max/Plus
- description: Xunlong Orange Pi 5 Max/Plus/Ultra
items:
- enum:
- xunlong,orangepi-5-max
- xunlong,orangepi-5-plus
- xunlong,orangepi-5-ultra
- const: rockchip,rk3588
- description: Xunlong Orange Pi R1 Plus / LTS

View File

@ -21,6 +21,8 @@ properties:
- st,stm32f4-gcan
- st,stm32mp151-pwr-mcu
- st,stm32mp157-syscfg
- st,stm32mp21-syscfg
- st,stm32mp23-syscfg
- st,stm32mp25-syscfg
- const: syscon
- items:

View File

@ -51,9 +51,16 @@ properties:
- st,stm32mp135f-dk
- const: st,stm32mp135
- description: ST STM32MP133 based Boards
items:
- enum:
- pri,prihmb # Priva E-Measuringbox board
- const: st,stm32mp133
- description: ST STM32MP151 based Boards
items:
- enum:
- ply,plyaqm # Plymovent AQM board
- prt,mecio1r0 # Protonic MECIO1r0
- prt,mect1s # Protonic MECT1S
- prt,prtt1a # Protonic PRTT1A
@ -94,6 +101,8 @@ properties:
- description: Octavo OSD32MP153 System-in-Package based boards
items:
- enum:
- lxa,stm32mp153c-fairytux2-gen1 # Linux Automation FairyTux 2 (Generation 1)
- lxa,stm32mp153c-fairytux2-gen2 # Linux Automation FairyTux 2 (Generation 2)
- lxa,stm32mp153c-tac-gen3 # Linux Automation TAC (Generation 3)
- const: oct,stm32mp153x-osd32
- const: st,stm32mp153
@ -178,9 +187,22 @@ properties:
- description: ST STM32MP257 based Boards
items:
- enum:
- st,stm32mp257f-dk
- st,stm32mp257f-ev1
- const: st,stm32mp257
- description: ST STM32MP235 based Boards
items:
- enum:
- st,stm32mp235f-dk
- const: st,stm32mp235
- description: ST STM32MP215 based Boards
items:
- enum:
- st,stm32mp215f-dk
- const: st,stm32mp215
additionalProperties: true
...

View File

@ -589,6 +589,11 @@ properties:
- const: emlid,neutis-n5h3
- const: allwinner,sun8i-h3
- description: NetCube Systems Kumquat
items:
- const: netcube,kumquat
- const: allwinner,sun8i-v3s
- description: NextThing Co. CHIP
items:
- const: nextthing,chip

View File

@ -141,6 +141,13 @@ properties:
- const: ti,omap4430
- const: ti,omap4
- description: OMAP4 PandaBoard Revision A4 and later
items:
- const: ti,omap4-panda-a4
- const: ti,omap4-panda
- const: ti,omap4430
- const: ti,omap4
- description: OMAP4 DuoVero with Parlor expansion board/daughter board
items:
- const: gumstix,omap4-duovero-parlor

View File

@ -163,11 +163,9 @@ additionalProperties: false
examples:
- |
#include <dt-bindings/clock/xlnx-zynqmp-clk.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/power/xlnx-zynqmp-power.h>
#include <dt-bindings/reset/xlnx-zynqmp-resets.h>
#include <dt-bindings/clock/xlnx-zynqmp-clk.h>
#include <dt-bindings/phy/phy.h>
sata: ahci@fd0c0000 {
@ -175,7 +173,7 @@ examples:
reg = <0xfd0c0000 0x200>;
interrupt-parent = <&gic>;
interrupts = <0 133 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&zynqmp_clk SATA_REF>;
clocks = <&zynqmp_clk 22>;
ceva,p0-cominit-params = /bits/ 8 <0x0F 0x25 0x18 0x29>;
ceva,p0-comwake-params = /bits/ 8 <0x04 0x0B 0x08 0x0F>;
ceva,p0-burst-params = /bits/ 8 <0x0A 0x08 0x4A 0x06>;

View File

@ -0,0 +1,64 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/clock/rockchip,rk3528-cru.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Rockchip RK3528 Clock and Reset Controller
maintainers:
- Yao Zi <ziyao@disroot.org>
description: |
The RK3528 clock controller generates the clock and also implements a reset
controller for SoC peripherals. For example, it provides SCLK_UART0 and
PCLK_UART0 as well as SRST_P_UART0 and SRST_S_UART0 for the first UART
module.
Each clock is assigned an identifier, consumer nodes can use it to specify
the clock. All available clock and reset IDs are defined in dt-binding
headers.
properties:
compatible:
const: rockchip,rk3528-cru
reg:
maxItems: 1
clocks:
items:
- description: External 24MHz oscillator clock
- description: >
50MHz clock generated by PHY module, for generating GMAC0 clocks only.
clock-names:
items:
- const: xin24m
- const: gmac0
"#clock-cells":
const: 1
"#reset-cells":
const: 1
required:
- compatible
- reg
- clocks
- clock-names
- "#clock-cells"
- "#reset-cells"
additionalProperties: false
examples:
- |
clock-controller@ff4a0000 {
compatible = "rockchip,rk3528-cru";
reg = <0xff4a0000 0x30000>;
clocks = <&xin24m>, <&gmac0_clk>;
clock-names = "xin24m", "gmac0";
#clock-cells = <1>;
#reset-cells = <1>;
};

View File

@ -31,6 +31,7 @@ properties:
compatible:
enum:
- samsung,exynos990-cmu-hsi0
- samsung,exynos990-cmu-peris
- samsung,exynos990-cmu-top
clocks:
@ -79,6 +80,24 @@ allOf:
- const: usbdp_debug
- const: dpgtc
- if:
properties:
compatible:
contains:
const: samsung,exynos990-cmu-peris
then:
properties:
clocks:
items:
- description: External reference clock (26 MHz)
- description: CMU_PERIS BUS clock (from CMU_TOP)
clock-names:
items:
- const: oscclk
- const: bus
- if:
properties:
compatible:

View File

@ -17,6 +17,7 @@ properties:
compatible:
enum:
- nvidia,tegra114-mipi
- nvidia,tegra124-mipi
- nvidia,tegra210-mipi
- nvidia,tegra186-mipi

View File

@ -75,7 +75,6 @@ additionalProperties: false
examples:
- |
#include <dt-bindings/clock/xlnx-zynqmp-clk.h>
fpd_dma_chan1: dma-controller@fd500000 {
compatible = "xlnx,zynqmp-dma-1.0";
@ -84,7 +83,7 @@ examples:
interrupts = <0 117 0x4>;
#dma-cells = <1>;
clock-names = "clk_main", "clk_apb";
clocks = <&zynqmp_clk GDMA_REF>, <&zynqmp_clk LPD_LSBUS>;
clocks = <&zynqmp_clk 19>, <&zynqmp_clk 31>;
xlnx,bus-width = <128>;
dma-coherent;
};

View File

@ -193,7 +193,6 @@ additionalProperties: false
examples:
- |
#include <dt-bindings/clock/xlnx-zynqmp-clk.h>
bus {
#address-cells = <2>;
@ -204,7 +203,7 @@ examples:
interrupt-parent = <&gic>;
interrupts = <0 56 4>;
reg = <0x0 0xffa50000 0x0 0x800>;
clocks = <&zynqmp_clk AMS_REF>;
clocks = <&zynqmp_clk 70>;
#address-cells = <1>;
#size-cells = <1>;
#io-channel-cells = <1>;

View File

@ -103,6 +103,7 @@ select:
- rockchip,rk3288-qos
- rockchip,rk3368-qos
- rockchip,rk3399-qos
- rockchip,rk3528-qos
- rockchip,rk3562-qos
- rockchip,rk3568-qos
- rockchip,rk3576-qos
@ -202,6 +203,7 @@ properties:
- rockchip,rk3288-qos
- rockchip,rk3368-qos
- rockchip,rk3399-qos
- rockchip,rk3528-qos
- rockchip,rk3562-qos
- rockchip,rk3568-qos
- rockchip,rk3576-qos

View File

@ -197,7 +197,6 @@ examples:
};
- |
#include <dt-bindings/clock/xlnx-zynqmp-clk.h>
#include <dt-bindings/power/xlnx-zynqmp-power.h>
#include <dt-bindings/reset/xlnx-zynqmp-resets.h>
#include <dt-bindings/phy/phy.h>
@ -210,9 +209,9 @@ examples:
interrupt-parent = <&gic>;
interrupts = <0 59 4>, <0 59 4>;
reg = <0x0 0xff0c0000 0x0 0x1000>;
clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM1_REF>,
<&zynqmp_clk GEM1_TX>, <&zynqmp_clk GEM1_RX>,
<&zynqmp_clk GEM_TSU>;
clocks = <&zynqmp_clk 31>, <&zynqmp_clk 105>,
<&zynqmp_clk 51>, <&zynqmp_clk 50>,
<&zynqmp_clk 44>;
clock-names = "pclk", "hclk", "tx_clk", "rx_clk", "tsu_clk";
#address-cells = <1>;
#size-cells = <0>;

View File

@ -31,6 +31,11 @@ properties:
compatible:
items:
- enum:
- apple,s5l8960x-pmgr-pwrstate
- apple,t7000-pmgr-pwrstate
- apple,s8000-pmgr-pwrstate
- apple,t8010-pmgr-pwrstate
- apple,t8015-pmgr-pwrstate
- apple,t8103-pmgr-pwrstate
- apple,t8112-pmgr-pwrstate
- apple,t6000-pmgr-pwrstate

View File

@ -21,6 +21,7 @@ properties:
- items:
- enum:
- bananapi,bpi-f3
- milkv,jupiter
- const: spacemit,k1
additionalProperties: true

View File

@ -22,7 +22,10 @@ description: |
properties:
compatible:
const: renesas,r9a09g057-sys
items:
- enum:
- renesas,r9a09g047-sys # RZ/G3E
- renesas,r9a09g057-sys # RZ/V2H
reg:
maxItems: 1

View File

@ -493,6 +493,13 @@ properties:
- renesas,r9a07g044l2 # Dual Cortex-A55 RZ/G2L
- const: renesas,r9a07g044
- items:
- enum:
# MYIR Remi Pi SBC (MYB-YG2LX-REMI)
- myir,remi-pi
- const: renesas,r9a07g044l2
- const: renesas,r9a07g044
- description: RZ/V2L (R9A07G054)
items:
- enum:
@ -552,6 +559,15 @@ properties:
- renesas,r9a09g057h41 # RZ/V2H
- renesas,r9a09g057h42 # RZ/V2H with Mali-G31 support
- renesas,r9a09g057h44 # RZ/V2HP with Mali-G31 + Mali-C55 support
- renesas,r9a09g057h45 # RZ/V2H with cryptographic extension support
- renesas,r9a09g057h46 # RZ/V2H with Mali-G31 + cryptographic extension support
- renesas,r9a09g057h48 # RZ/V2HP with Mali-G31 + Mali-C55 + cryptographic extension support
- const: renesas,r9a09g057
- description: Yuridenki-Shokai RZ/V2H Kakip
items:
- const: yuridenki,kakip
- const: renesas,r9a09g057h48
- const: renesas,r9a09g057
additionalProperties: true

View File

@ -15,6 +15,9 @@ properties:
- items:
- enum:
- rockchip,rk3288-sgrf
- rockchip,rk3528-ioc-grf
- rockchip,rk3528-vo-grf
- rockchip,rk3528-vpu-grf
- rockchip,rk3566-pipe-grf
- rockchip,rk3568-pcie3-phy-grf
- rockchip,rk3568-pipe-grf

View File

@ -11,11 +11,21 @@ maintainers:
- Krzysztof Kozlowski <krzk@kernel.org>
description: |
USI IP-core provides selectable serial protocol (UART, SPI or High-Speed I2C).
USI shares almost all internal circuits within each protocol, so only one
protocol can be chosen at a time. USI is modeled as a node with zero or more
child nodes, each representing a serial sub-node device. The mode setting
selects which particular function will be used.
The USI IP-core provides configurable support for serial protocols, enabling
different serial communication modes depending on the version.
In USIv1, configurations are available to enable either one or two protocols
simultaneously in select combinations - High-Speed I2C0, High-Speed
I2C1, SPI, UART, High-Speed I2C0 and I2C1 or both High-Speed
I2C1 and UART.
In USIv2, only one protocol can be active at a time, either UART, SPI, or
High-Speed I2C.
The USI core shares internal circuits across protocols, meaning only the
selected configuration is active at any given time. USI is modeled as a node
with zero or more child nodes, each representing a serial sub-node device. The
mode setting selects which particular function will be used.
properties:
$nodename:
@ -31,6 +41,7 @@ properties:
- const: samsung,exynos850-usi
- enum:
- samsung,exynos850-usi
- samsung,exynos8895-usi
reg:
maxItems: 1
@ -64,7 +75,7 @@ properties:
samsung,mode:
$ref: /schemas/types.yaml#/definitions/uint32
enum: [0, 1, 2, 3]
enum: [0, 1, 2, 3, 4, 5, 6]
description:
Selects USI function (which serial protocol to use). Refer to
<include/dt-bindings/soc/samsung,exynos-usi.h> for valid USI mode values.
@ -101,37 +112,59 @@ required:
- samsung,sysreg
- samsung,mode
if:
properties:
compatible:
contains:
enum:
- samsung,exynos850-usi
allOf:
- if:
properties:
compatible:
contains:
enum:
- samsung,exynos850-usi
then:
properties:
reg:
maxItems: 1
then:
properties:
reg:
maxItems: 1
clocks:
items:
- description: Bus (APB) clock
- description: Operating clock for UART/SPI/I2C protocol
clocks:
items:
- description: Bus (APB) clock
- description: Operating clock for UART/SPI/I2C protocol
clock-names:
maxItems: 2
clock-names:
maxItems: 2
required:
- reg
- clocks
- clock-names
samsung,mode:
enum: [0, 1, 2, 3]
else:
properties:
reg: false
clocks: false
clock-names: false
samsung,clkreq-on: false
required:
- reg
- clocks
- clock-names
- if:
properties:
compatible:
contains:
enum:
- samsung,exynos8895-usi
then:
properties:
reg: false
clocks:
items:
- description: Bus (APB) clock
- description: Operating clock for UART/SPI protocol
clock-names:
maxItems: 2
samsung,clkreq-on: false
required:
- clocks
- clock-names
additionalProperties: false
@ -144,7 +177,7 @@ examples:
compatible = "samsung,exynos850-usi";
reg = <0x138200c0 0x20>;
samsung,sysreg = <&sysreg_peri 0x1010>;
samsung,mode = <USI_V2_UART>;
samsung,mode = <USI_MODE_UART>;
samsung,clkreq-on; /* needed for UART mode */
#address-cells = <1>;
#size-cells = <1>;

View File

@ -9,8 +9,8 @@ title: Xilinx Zynq Platforms
maintainers:
- Michal Simek <michal.simek@amd.com>
description: |
Xilinx boards with Zynq-7000 SOC or Zynq UltraScale+ MPSoC
description:
AMD/Xilinx boards with ARM 32/64bits cores
properties:
$nodename:
@ -187,6 +187,13 @@ properties:
- const: qemu,mbv
- const: amd,mbv
- description: Xilinx Versal NET VN-X revA platform
items:
enum:
- xlnx,versal-net-vnx-revA
- xlnx,versal-net-vnx
- xlnx,versal-net
additionalProperties: true
...

View File

@ -1,19 +0,0 @@
Invensense ICS-43432-compatible MEMS microphone with I2S output.
There are no software configuration options for this device, indeed, the only
host connection is the I2S interface. Apart from requirements on clock
frequency (460 kHz to 3.379 MHz according to the data sheet) there must be
64 clock cycles in each stereo output frame; 24 of the 32 available bits
contain audio data. A hardware pin determines if the device outputs data
on the left or right channel of the I2S frame.
Required properties:
- compatible: should be one of the following.
"invensense,ics43432": For the Invensense ICS43432
"cui,cmm-4030d-261": For the CUI CMM-4030D-261-I2S-TR
Example:
ics43432: ics43432 {
compatible = "invensense,ics43432";
};

View File

@ -0,0 +1,51 @@
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/sound/invensense,ics43432.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Invensense ICS-43432-compatible MEMS Microphone with I2S Output
maintainers:
- Oleksij Rempel <o.rempel@pengutronix.de>
description:
The ICS-43432 and compatible MEMS microphones output audio over an I2S
interface and require no software configuration. The only host connection
is the I2S bus. The microphone requires an I2S clock frequency between
460 kHz and 3.379 MHz and 64 clock cycles per stereo frame. Each frame
contains 32-bit slots per channel, with 24 bits carrying audio data.
A hardware pin determines whether the microphone outputs audio on the
left or right channel of the I2S frame.
allOf:
- $ref: dai-common.yaml#
properties:
compatible:
enum:
- invensense,ics43432
- cui,cmm-4030d-261
port:
$ref: audio-graph-port.yaml#
unevaluatedProperties: false
required:
- compatible
unevaluatedProperties: false
examples:
- |
ics43432: ics43432 {
compatible = "invensense,ics43432";
port {
endpoint {
remote-endpoint = <&i2s1_endpoint>;
dai-format = "i2s";
};
};
};

View File

@ -28,6 +28,7 @@ properties:
- nvidia,tegra186-hda
- nvidia,tegra210-hda
- nvidia,tegra124-hda
- nvidia,tegra114-hda
- const: nvidia,tegra30-hda
- items:
- const: nvidia,tegra132-hda

View File

@ -65,14 +65,13 @@ allOf:
examples:
- |
#include <dt-bindings/clock/xlnx-zynqmp-clk.h>
soc {
#address-cells = <2>;
#size-cells = <2>;
qspi: spi@ff0f0000 {
compatible = "xlnx,zynqmp-qspi-1.0";
clocks = <&zynqmp_clk QSPI_REF>, <&zynqmp_clk LPD_LSBUS>;
clocks = <&zynqmp_clk 53>, <&zynqmp_clk 82>;
clock-names = "ref_clk", "pclk";
interrupts = <0 15 4>;
interrupt-parent = <&gic>;

View File

@ -101,7 +101,6 @@ examples:
#include <dt-bindings/dma/xlnx-zynqmp-dpdma.h>
#include <dt-bindings/power/xlnx-zynqmp-power.h>
#include <dt-bindings/reset/xlnx-zynqmp-resets.h>
#include <dt-bindings/clock/xlnx-zynqmp-clk.h>
#include <dt-bindings/reset/xlnx-zynqmp-resets.h>
#include <dt-bindings/phy/phy.h>
axi {
@ -113,7 +112,7 @@ examples:
#size-cells = <0x2>;
compatible = "xlnx,zynqmp-dwc3";
reg = <0x0 0xff9d0000 0x0 0x100>;
clocks = <&zynqmp_clk USB0_BUS_REF>, <&zynqmp_clk USB3_DUAL_REF>;
clocks = <&zynqmp_clk 32>, <&zynqmp_clk 34>;
clock-names = "bus_clk", "ref_clk";
power-domains = <&zynqmp_firmware PD_USB_0>;
resets = <&zynqmp_reset ZYNQMP_RESET_USB1_CORERESET>,

View File

@ -106,6 +106,10 @@ properties:
- description: USB3/SS(P) PHY
- description: USB2/HS PHY
port:
$ref: /schemas/graph.yaml#/properties/port
description: Super Speed (SS) Output endpoint to a Type-C connector
vusb33-supply:
description: Regulator of USB AVDD3.3v

View File

@ -155,6 +155,18 @@ properties:
property is used. See graph.txt
$ref: /schemas/graph.yaml#/properties/port
ports:
$ref: /schemas/graph.yaml#/properties/ports
properties:
port@0:
$ref: /schemas/graph.yaml#/properties/port
description: High Speed (HS) data bus.
port@1:
$ref: /schemas/graph.yaml#/properties/port
description: Super Speed (SS) data bus.
enable-manual-drd:
$ref: /schemas/types.yaml#/definitions/flag
description:

View File

@ -147,6 +147,8 @@ patternProperties:
description: Arctic Sand
"^arcx,.*":
description: arcx Inc. / Archronix Inc.
"^ariaboard,.*":
description: Shanghai Novotech Co., Ltd. (Ariaboard)
"^aries,.*":
description: Aries Embedded GmbH
"^arm,.*":
@ -1033,6 +1035,8 @@ patternProperties:
description: Neofidelity Inc.
"^neonode,.*":
description: Neonode Inc.
"^netcube,.*":
description: NetCube Systems Austria
"^netgear,.*":
description: NETGEAR
"^netlogic,.*":
@ -1204,6 +1208,8 @@ patternProperties:
description: Primux Trading, S.L.
"^probox2,.*":
description: PROBOX2 (by W2COMP Co., Ltd.)
"^pri,.*":
description: Priva
"^prt,.*":
description: Protonic Holland
"^pulsedlight,.*":
@ -1269,7 +1275,7 @@ patternProperties:
"^riscv,.*":
description: RISC-V Foundation
"^rockchip,.*":
description: Fuzhou Rockchip Electronics Co., Ltd
description: Rockchip Electronics Co., Ltd.
"^rocktech,.*":
description: ROCKTECH DISPLAYS LIMITED
"^rohm,.*":
@ -1739,6 +1745,8 @@ patternProperties:
description: Shenzhen Yashi Changhua Intelligent Technology Co., Ltd.
"^ysoft,.*":
description: Y Soft Corporation a.s.
"^yuridenki,.*":
description: Yuridenki-Shokai Co. Ltd.
"^zarlink,.*":
description: Zarlink Semiconductor
"^zealz,.*":

View File

@ -2757,6 +2757,13 @@ F: arch/arm/boot/dts/socionext/milbeaut*
F: arch/arm/mach-milbeaut/
N: milbeaut
ARM/MORELLO PLATFORM
M: Vincenzo Frascino <vincenzo.frascino@arm.com>
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
S: Maintained
F: Documentation/devicetree/bindings/arm/arm,morello.yaml
F: arch/arm64/boot/dts/arm/morello*
ARM/MOXA ART SOC
M: Krzysztof Kozlowski <krzk@kernel.org>
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@ -20528,7 +20535,10 @@ F: drivers/perf/riscv_pmu_sbi.c
RISC-V SPACEMIT SoC Support
M: Yixun Lan <dlan@gentoo.org>
L: linux-riscv@lists.infradead.org
L: spacemit@lists.linux.dev
S: Maintained
W: https://github.com/spacemit-com/linux/wiki
C: irc://irc.libera.chat/spacemit
T: git https://github.com/spacemit-com/linux
F: arch/riscv/boot/dts/spacemit/
N: spacemit
@ -22285,7 +22295,9 @@ F: include/linux/sony-laptop.h
SOPHGO DEVICETREES and DRIVERS
M: Chen Wang <unicorn_wang@outlook.com>
M: Inochi Amaoto <inochiama@outlook.com>
M: Inochi Amaoto <inochiama@gmail.com>
L: sophgo@lists.linux.dev
W: https://github.com/sophgo/linux/wiki
T: git https://github.com/sophgo/linux.git
S: Maintained
N: sophgo

View File

@ -199,6 +199,7 @@ DTC_FLAGS_sun8i-h3-nanopi-r1 := -@
DTC_FLAGS_sun8i-h3-orangepi-pc := -@
DTC_FLAGS_sun8i-h3-bananapi-m2-plus-v1.2 := -@
DTC_FLAGS_sun8i-h3-orangepi-pc-plus := -@
DTC_FLAGS_sun8i-v3s-netcube-kumquat := -@
dtb-$(CONFIG_MACH_SUN8I) += \
sun8i-a23-evb.dtb \
sun8i-a23-gt90h-v4.dtb \
@ -261,6 +262,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \
sun8i-v3s-anbernic-rg-nano.dtb \
sun8i-v3s-licheepi-zero.dtb \
sun8i-v3s-licheepi-zero-dock.dtb \
sun8i-v3s-netcube-kumquat.dtb \
sun8i-v40-bananapi-m2-berry.dtb
dtb-$(CONFIG_MACH_SUN9I) += \
sun9i-a80-optimus.dtb \

View File

@ -0,0 +1,276 @@
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
* Copyright (C) 2025 Lukas Schmid <lukas.schmid@netcube.li>
*/
/dts-v1/;
#include "sun8i-v3s.dtsi"
#include <dt-bindings/input/input.h>
#include <dt-bindings/leds/common.h>
#include <dt-bindings/gpio/gpio.h>
/{
model = "NetCube Systems Kumquat";
compatible = "netcube,kumquat", "allwinner,sun8i-v3s";
aliases {
serial0 = &uart0;
ethernet0 = &emac;
rtc0 = &ds3232;
rtc1 = &rtc; /* not battery backed */
};
chosen {
stdout-path = "serial0:115200n8";
};
/* 40 MHz Crystal Oscillator on PCB */
clk_can0: clock-can0 {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <40000000>;
};
gpio-keys {
compatible = "gpio-keys";
autorepeat;
key-user {
label = "GPIO Key User";
linux,code = <KEY_PROG1>;
gpios = <&pio 1 2 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PB2 */
};
};
leds {
compatible = "gpio-leds";
led-heartbeat {
gpios = <&pio 4 4 GPIO_ACTIVE_HIGH>; /* PE4 */
linux,default-trigger = "heartbeat";
color = <LED_COLOR_ID_GREEN>;
function = LED_FUNCTION_HEARTBEAT;
};
led-mmc0-act {
gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>; /* PF6 */
linux,default-trigger = "mmc0";
color = <LED_COLOR_ID_GREEN>;
function = LED_FUNCTION_DISK;
};
};
/* EA3036C Switching 3 Channel Regulator - Channel 2 */
reg_vcc3v3: regulator-3v3 {
compatible = "regulator-fixed";
regulator-name = "vcc3v3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
vin-supply = <&reg_vcc5v0>;
};
/* K7805-1000R3 Switching Regulator supplied from main 12/24V terminal block */
reg_vcc5v0: regulator-5v0 {
compatible = "regulator-fixed";
regulator-name = "vcc5v0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
};
};
&codec {
allwinner,audio-routing =
"Headphone", "HP",
"Headphone", "HPCOM",
"MIC1", "Mic",
"Mic", "HBIAS";
status = "okay";
};
&ehci {
status = "okay";
};
&emac {
allwinner,leds-active-low;
nvmem-cells = <&eth0_macaddress>;
nvmem-cell-names = "mac-address";
status = "okay";
};
&i2c0 {
status = "okay";
eeprom0: eeprom@50 {
compatible = "atmel,24c02"; /* actually it's a 24AA02E48 */
reg = <0x50>;
pagesize = <16>;
read-only;
vcc-supply = <&reg_vcc3v3>;
#address-cells = <1>;
#size-cells = <1>;
eth0_macaddress: macaddress@fa {
reg = <0xfa 0x06>;
};
};
tusb320: typec@60 {
compatible = "ti,tusb320";
reg = <0x60>;
interrupts-extended = <&pio 1 5 IRQ_TYPE_LEVEL_LOW>; /* PB5 */
};
ds3232: rtc@68 {
compatible = "dallas,ds3232";
reg = <0x68>;
};
};
/* Exposed as the Flash/SD Header on the board */
&mmc0 {
vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>;
broken-cd;
status = "okay";
};
/* Connected to the on-board ESP32 */
&mmc1 {
vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>;
broken-cd;
status = "okay";
};
&ohci {
status = "okay";
};
/* Disable external 32k osc as it is broken on current revision */
&osc32k {
status = "disabled";
};
&pio {
vcc-pb-supply = <&reg_vcc3v3>;
vcc-pc-supply = <&reg_vcc3v3>;
vcc-pe-supply = <&reg_vcc3v3>;
vcc-pf-supply = <&reg_vcc3v3>;
vcc-pg-supply = <&reg_vcc3v3>;
gpio-line-names = "", "", "", "", // PA
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"CAN_nCS", "CAN_nINT", "USER_SW", "PB3", // PB
"USB_ID", "USBC_nINT", "I2C0_SCL", "I2C0_SDA",
"UART0_TX", "UART0_RX", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"SPI_MISO", "SPI_SCK", "FLASH_nCS", "SPI_MOSI", // PC
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "", // PD
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"Q12", "Q11", "Q10", "Q9", // PE
"LED_SYS0", "I1", "Q1", "Q2",
"I2", "I3", "Q3", "Q4",
"I4", "I5", "Q5", "Q6",
"I6", "I7", "Q7", "Q8",
"I8", "UART1_TXD", "UART1_RXD", "ESP_nRST",
"ESP_nBOOT", "", "", "",
"", "", "", "",
"SD_D1", "SD_D0", "SD_CLK", "SD_CMD", // PF
"SD_D3", "SD_D2", "LED_SYS1", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"ESP_CLK", "ESP_CMD", "ESP_D0", "ESP_D1", // PG
"ESP_D2", "ESP_D3", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "";
};
/* Disable external 32k osc as it is broken on current revision */
&rtc {
/delete-property/ clocks;
};
/* Exposed as a USB-C connector with USB-Serial converter */
&uart0 {
pinctrl-0 = <&uart0_pb_pins>;
pinctrl-names = "default";
status = "okay";
};
/* Connected to the Bootloader/Console of the ESP32 */
&uart1 {
pinctrl-0 = <&uart1_pe_pins>;
pinctrl-names = "default";
status = "okay";
};
&usb_otg {
extcon = <&tusb320 0>;
dr_mode = "otg";
status = "okay";
};
&usbphy {
usb0_id_det-gpios = <&pio 1 4 GPIO_ACTIVE_HIGH>; /* PB4 */
status = "okay";
};
&spi0 {
#address-cells = <1>;
#size-cells = <0>;
cs-gpios = <0>, <&pio 1 0 GPIO_ACTIVE_LOW>; /* PB0 */
status = "okay";
flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
#address-cells = <1>;
#size-cells = <1>;
label = "firmware";
spi-max-frequency = <40000000>;
};
can@1 {
compatible = "microchip,mcp2518fd";
reg = <1>;
clocks = <&clk_can0>;
interrupts-extended = <&pio 1 1 IRQ_TYPE_LEVEL_LOW>; /* PB1 */
spi-max-frequency = <20000000>;
vdd-supply = <&reg_vcc3v3>;
xceiver-supply = <&reg_vcc3v3>;
};
};

View File

@ -416,6 +416,12 @@
function = "uart0";
};
/omit-if-no-ref/
uart1_pe_pins: uart1-pe-pins {
pins = "PE21", "PE22";
function = "uart1";
};
uart2_pins: uart2-pins {
pins = "PB0", "PB1";
function = "uart2";

View File

@ -449,7 +449,11 @@
};
pwm_ef: pwm@86c0 {
compatible = "amlogic,meson8-pwm", "amlogic,meson8b-pwm";
compatible = "amlogic,meson8-pwm-v2";
clocks = <&xtal>,
<>, /* unknown/untested, the datasheet calls it "Video PLL" */
<&clkc CLKID_FCLK_DIV4>,
<&clkc CLKID_FCLK_DIV3>;
reg = <0x86c0 0x10>;
#pwm-cells = <3>;
status = "disabled";
@ -699,11 +703,19 @@
};
&pwm_ab {
compatible = "amlogic,meson8-pwm", "amlogic,meson8b-pwm";
compatible = "amlogic,meson8-pwm-v2";
clocks = <&xtal>,
<>, /* unknown/untested, the datasheet calls it "Video PLL" */
<&clkc CLKID_FCLK_DIV4>,
<&clkc CLKID_FCLK_DIV3>;
};
&pwm_cd {
compatible = "amlogic,meson8-pwm", "amlogic,meson8b-pwm";
compatible = "amlogic,meson8-pwm-v2";
clocks = <&xtal>,
<>, /* unknown/untested, the datasheet calls it "Video PLL" */
<&clkc CLKID_FCLK_DIV4>,
<&clkc CLKID_FCLK_DIV3>;
};
&rtc {

View File

@ -443,8 +443,6 @@
status = "okay";
pinctrl-0 = <&pwm_c1_pins>, <&pwm_d_pins>;
pinctrl-names = "default";
clocks = <&xtal>, <&xtal>;
clock-names = "clkin0", "clkin1";
};
&rtc {

View File

@ -162,8 +162,6 @@
status = "okay";
pinctrl-0 = <&pwm_c1_pins>, <&pwm_d_pins>;
pinctrl-names = "default";
clocks = <&xtal>, <&xtal>;
clock-names = "clkin0", "clkin1";
};
&uart_AO {

View File

@ -347,8 +347,6 @@
status = "okay";
pinctrl-0 = <&pwm_c1_pins>, <&pwm_d_pins>;
pinctrl-names = "default";
clocks = <&xtal>, <&xtal>;
clock-names = "clkin0", "clkin1";
};
&rtc {

View File

@ -403,8 +403,12 @@
};
pwm_ef: pwm@86c0 {
compatible = "amlogic,meson8b-pwm";
compatible = "amlogic,meson8b-pwm-v2", "amlogic,meson8-pwm-v2";
reg = <0x86c0 0x10>;
clocks = <&xtal>,
<>, /* unknown/untested, the datasheet calls it "Video PLL" */
<&clkc CLKID_FCLK_DIV4>,
<&clkc CLKID_FCLK_DIV3>;
#pwm-cells = <3>;
status = "disabled";
};
@ -674,11 +678,19 @@
};
&pwm_ab {
compatible = "amlogic,meson8b-pwm";
compatible = "amlogic,meson8b-pwm-v2", "amlogic,meson8-pwm-v2";
clocks = <&xtal>,
<>, /* unknown/untested, the datasheet calls it "Video PLL" */
<&clkc CLKID_FCLK_DIV4>,
<&clkc CLKID_FCLK_DIV3>;
};
&pwm_cd {
compatible = "amlogic,meson8b-pwm";
compatible = "amlogic,meson8b-pwm-v2", "amlogic,meson8-pwm-v2";
clocks = <&xtal>,
<>, /* unknown/untested, the datasheet calls it "Video PLL" */
<&clkc CLKID_FCLK_DIV4>,
<&clkc CLKID_FCLK_DIV3>;
};
&rtc {

View File

@ -88,7 +88,7 @@
};
&portd {
lcden {
lcden-hog {
gpio-hog;
gpios = <2 GPIO_ACTIVE_HIGH>;
output-high;

View File

@ -8,6 +8,7 @@
#include "intel-ixp42x.dtsi"
#include <dt-bindings/input/input.h>
#include <dt-bindings/leds/common.h>
/ {
model = "Netgear WG302 v1";
@ -32,6 +33,35 @@
serial0 = &uart1;
};
leds {
compatible = "gpio-leds";
test_led: led-test {
color = <LED_COLOR_ID_AMBER>;
function = "test";
gpios = <&gpio0 4 GPIO_ACTIVE_LOW>;
default-state = "off";
};
wlan_led: led-wlan {
color = <LED_COLOR_ID_GREEN>;
function = LED_FUNCTION_WLAN;
gpios = <&gpio0 5 GPIO_ACTIVE_LOW>;
default-state = "off";
linux,default-trigger = "phy0tx";
};
};
gpio_keys {
/* RESET is on GPIO13 which can't fire interrupts */
compatible = "gpio-keys-polled";
poll-interval = <100>;
button-reset {
linux,code = <KEY_RESTART>;
label = "reset";
gpios = <&gpio0 13 GPIO_ACTIVE_LOW>;
};
};
soc {
bus@c4000000 {
flash@0,0 {
@ -57,7 +87,7 @@
status = "okay";
/*
* Taken from WG302 v2 PCI boardfile (wg302v2-pci.c)
* Taken from WG302 v1 PCI boardfile (wg302v1-pci.c)
* We have slots (IDSEL) 1 and 2 with one assigned IRQ
* each handling all IRQs.
*/
@ -70,10 +100,10 @@
<0x0800 0 0 3 &gpio0 8 IRQ_TYPE_LEVEL_LOW>, /* INT C on slot 1 is irq 8 */
<0x0800 0 0 4 &gpio0 8 IRQ_TYPE_LEVEL_LOW>, /* INT D on slot 1 is irq 8 */
/* IDSEL 2 */
<0x1000 0 0 1 &gpio0 9 IRQ_TYPE_LEVEL_LOW>, /* INT A on slot 2 is irq 9 */
<0x1000 0 0 2 &gpio0 9 IRQ_TYPE_LEVEL_LOW>, /* INT B on slot 2 is irq 9 */
<0x1000 0 0 3 &gpio0 9 IRQ_TYPE_LEVEL_LOW>, /* INT C on slot 2 is irq 9 */
<0x1000 0 0 4 &gpio0 9 IRQ_TYPE_LEVEL_LOW>; /* INT D on slot 2 is irq 9 */
<0x1000 0 0 1 &gpio0 10 IRQ_TYPE_LEVEL_LOW>, /* INT A on slot 2 is irq 10 */
<0x1000 0 0 2 &gpio0 10 IRQ_TYPE_LEVEL_LOW>, /* INT B on slot 2 is irq 10 */
<0x1000 0 0 3 &gpio0 10 IRQ_TYPE_LEVEL_LOW>, /* INT C on slot 2 is irq 10 */
<0x1000 0 0 4 &gpio0 10 IRQ_TYPE_LEVEL_LOW>; /* INT D on slot 2 is irq 10 */
};
ethernet@c8009000 {

View File

@ -193,10 +193,10 @@
compatible = "intel,ixp4xx-ethernet";
reg = <0xc800c000 0x1000>;
status = "disabled";
intel,npe = <0>;
/* Dummy values that depend on firmware */
queue-rx = <&qmgr 0>;
queue-txready = <&qmgr 0>;
intel,npe-handle = <&npe 0>;
};
};
};

View File

@ -453,7 +453,7 @@
pinctrl-0 = <&cf_gtr_fan_pwm &cf_gtr_wifi_disable_pins>;
pinctrl-names = "default";
wifi-disable {
wifi-disable-hog {
gpio-hog;
gpios = <30 GPIO_ACTIVE_LOW>, <31 GPIO_ACTIVE_LOW>;
output-low;
@ -465,7 +465,7 @@
pinctrl-0 = <&cf_gtr_isolation_pins &cf_gtr_poe_reset_pins &cf_gtr_lte_disable_pins>;
pinctrl-names = "default";
lte-disable {
lte-disable-hog {
gpio-hog;
gpios = <2 GPIO_ACTIVE_LOW>;
output-low;
@ -476,14 +476,14 @@
* This signal, when asserted, isolates Armada 38x sample at reset pins
* from control of external devices. Should be de-asserted after reset.
*/
sar-isolation {
sar-isolation-hog {
gpio-hog;
gpios = <15 GPIO_ACTIVE_LOW>;
output-low;
line-name = "sar-isolation";
};
poe-reset {
poe-reset-hog {
gpio-hog;
gpios = <16 GPIO_ACTIVE_LOW>;
output-low;

View File

@ -34,7 +34,7 @@
};
&gpio0 {
phy1_reset {
phy1-reset-hog {
gpio-hog;
gpios = <19 GPIO_ACTIVE_LOW>;
output-low;

View File

@ -53,7 +53,7 @@
cd-gpios = <&gpio0 29 9>;
};
gpio@10100 {
p28 {
p28-hog {
gpio-hog;
gpios = <28 GPIO_ACTIVE_HIGH>;
/*
@ -71,7 +71,7 @@
};
};
gpio@10140 {
p2 {
p2-hog {
gpio-hog;
gpios = <2 GPIO_ACTIVE_HIGH>;
/*

View File

@ -56,7 +56,7 @@
};
};
usb0: ohci@500000 {
usb0: usb@500000 {
num-ports = <2>;
status = "okay";
};

View File

@ -136,7 +136,7 @@
};
};
usb0: ohci@500000 {
usb0: usb@500000 {
num-ports = <2>;
atmel,vbus-gpio = <&pioB 15 GPIO_ACTIVE_LOW>;
status = "okay";

View File

@ -131,7 +131,7 @@
};
};
usb0: ohci@500000 {
usb0: usb@500000 {
num-ports = <2>;
status = "okay";
};

View File

@ -114,7 +114,7 @@
};
};
usb0: ohci@500000 {
usb0: usb@500000 {
num-ports = <2>;
status = "okay";
};

View File

@ -105,7 +105,7 @@
status = "okay";
};
usb0: ohci@500000 {
usb0: usb@500000 {
status = "okay";
};

View File

@ -37,7 +37,7 @@
status = "okay";
};
usb1: ohci@400000 {
usb1: usb@400000 {
num-ports = <3>;
atmel,vbus-gpio = <0 /* &pioA PIN_PD20 GPIO_ACTIVE_HIGH */
&pioA PIN_PA27 GPIO_ACTIVE_HIGH
@ -48,7 +48,7 @@
status = "okay";
};
usb2: ehci@500000 {
usb2: usb@500000 {
status = "okay";
};

View File

@ -47,7 +47,7 @@
status = "okay";
};
usb1: ohci@400000 {
usb1: usb@400000 {
num-ports = <3>;
atmel,vbus-gpio = <0
&pioA PIN_PB12 GPIO_ACTIVE_HIGH
@ -58,7 +58,7 @@
status = "okay";
};
usb2: ehci@500000 {
usb2: usb@500000 {
status = "okay";
};

View File

@ -46,7 +46,7 @@
status = "okay";
};
usb1: ohci@400000 {
usb1: usb@400000 {
num-ports = <3>;
atmel,vbus-gpio = <0 /* &pioA PIN_PB9 GPIO_ACTIVE_HIGH */
&pioA PIN_PB10 GPIO_ACTIVE_HIGH
@ -57,7 +57,7 @@
status = "okay";
};
usb2: ehci@500000 {
usb2: usb@500000 {
status = "okay";
};

View File

@ -283,7 +283,7 @@
status = "okay";
};
usb1: ohci@600000 {
usb1: usb@600000 {
num-ports = <3>;
atmel,vbus-gpio = <0
&pioE 3 GPIO_ACTIVE_LOW
@ -294,7 +294,7 @@
status = "okay";
};
usb2: ehci@700000 {
usb2: usb@700000 {
status = "okay";
};

View File

@ -22,7 +22,7 @@
status = "okay";
};
usb1: ohci@500000 {
usb1: usb@500000 {
num-ports = <3>;
atmel,vbus-gpio = <0
&pioE 11 GPIO_ACTIVE_LOW
@ -31,7 +31,7 @@
status = "okay";
};
usb2: ehci@600000 {
usb2: usb@600000 {
status = "okay";
};

View File

@ -164,7 +164,7 @@
status = "okay";
};
usb1: ohci@500000 {
usb1: usb@500000 {
num-ports = <3>;
atmel,vbus-gpio = <0
&pioE 11 GPIO_ACTIVE_HIGH
@ -175,7 +175,7 @@
status = "okay";
};
usb2: ehci@600000 {
usb2: usb@600000 {
status = "okay";
};

View File

@ -198,7 +198,7 @@
status = "okay";
};
usb1: ohci@500000 {
usb1: usb@500000 {
num-ports = <3>;
atmel,vbus-gpio = <0 /* &pioE 10 GPIO_ACTIVE_LOW */
&pioE 11 GPIO_ACTIVE_LOW
@ -207,7 +207,7 @@
status = "okay";
};
usb2: ehci@600000 {
usb2: usb@600000 {
status = "okay";
};

View File

@ -32,6 +32,18 @@
};
};
&dma0 {
status = "okay";
};
&dma1 {
status = "okay";
};
&dma2 {
status = "okay";
};
&flx6 {
atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>;
status = "okay";
@ -43,11 +55,63 @@
status = "okay";
};
&flx10 {
atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>;
status = "okay";
};
&i2c10 {
dmas = <0>, <0>;
i2c-analog-filter;
i2c-digital-filter;
i2c-digital-filter-width-ns = <35>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_i2c10_default>;
status = "okay";
power-monitor@10 {
compatible = "microchip,pac1934";
reg = <0x10>;
#address-cells = <1>;
#size-cells = <0>;
channel@1 {
reg = <0x1>;
shunt-resistor-micro-ohms = <47000>;
label = "VDD3V3";
};
channel@2 {
reg = <0x2>;
shunt-resistor-micro-ohms = <47000>;
label = "VDDIODDR";
};
channel@3 {
reg = <0x3>;
shunt-resistor-micro-ohms = <47000>;
label = "VDDCORE";
};
channel@4 {
reg = <0x4>;
shunt-resistor-micro-ohms = <47000>;
label = "VDDCPU";
};
};
};
&main_xtal {
clock-frequency = <24000000>;
};
&pioa {
pinctrl_i2c10_default: i2c10-default{
pinmux = <PIN_PB19__FLEXCOM10_IO1>,
<PIN_PB20__FLEXCOM10_IO0>;
bias-pull-up;
};
pinctrl_sdmmc1_default: sdmmc1-default {
cmd-data {
pinmux = <PIN_PB22__SDMMC1_CMD>,
@ -84,6 +148,15 @@
status = "okay";
};
&shdwc {
debounce-delay-us = <976>;
status = "okay";
input@0 {
reg = <0>;
};
};
&slow_xtal {
clock-frequency = <32768>;
};

View File

@ -137,6 +137,7 @@
vref-supply = <&vddout25>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_mikrobus1_an_default &pinctrl_mikrobus2_an_default>;
atmel,trigger-edge-type = <IRQ_TYPE_EDGE_RISING>;
status = "okay";
};

View File

@ -162,7 +162,7 @@
status = "disabled";
};
usb1: ohci@500000 {
usb1: usb@500000 {
num-ports = <3>;
atmel,vbus-gpio = <0
&pioE 11 GPIO_ACTIVE_LOW
@ -171,7 +171,7 @@
status = "disabled";
};
usb2: ehci@600000 {
usb2: usb@600000 {
/* 4G Modem */
status = "okay";
};

View File

@ -702,7 +702,7 @@
status = "disabled";
};
usb0: ohci@300000 {
usb0: usb@300000 {
compatible = "atmel,at91rm9200-ohci", "usb-ohci";
reg = <0x00300000 0x100000>;
interrupts = <23 IRQ_TYPE_LEVEL_HIGH 2>;

View File

@ -89,7 +89,7 @@
};
};
usb0: ohci@300000 {
usb0: usb@300000 {
num-ports = <2>;
status = "okay";
};

View File

@ -742,7 +742,7 @@
};
};
usb0: ohci@500000 {
usb0: usb@500000 {
compatible = "atmel,at91rm9200-ohci", "usb-ohci";
reg = <0x00500000 0x100000>;
interrupts = <20 IRQ_TYPE_LEVEL_HIGH 2>;

View File

@ -131,7 +131,7 @@
};
};
usb0: ohci@500000 {
usb0: usb@500000 {
num-ports = <2>;
status = "okay";
};

View File

@ -77,7 +77,7 @@
#size-cells = <1>;
ranges;
usb0: ohci@500000 {
usb0: usb@500000 {
compatible = "atmel,at91rm9200-ohci", "usb-ohci";
reg = <0x00500000 0x100000>;
interrupts = <20 IRQ_TYPE_LEVEL_HIGH 2>;

View File

@ -31,7 +31,7 @@
};
ahb {
usb0: ohci@500000 {
usb0: usb@500000 {
status = "okay";
};

View File

@ -768,7 +768,7 @@
status = "disabled";
};
usb0: ohci@a00000 {
usb0: usb@a00000 {
compatible = "atmel,at91rm9200-ohci", "usb-ohci";
reg = <0x00a00000 0x100000>;
interrupts = <29 IRQ_TYPE_LEVEL_HIGH 2>;

View File

@ -207,7 +207,7 @@
};
};
usb0: ohci@a00000 {
usb0: usb@a00000 {
num-ports = <2>;
status = "okay";
atmel,vbus-gpio = <&pioA 24 GPIO_ACTIVE_HIGH

View File

@ -211,7 +211,7 @@
};
};
usb0: ohci@500000 {
usb0: usb@500000 {
num-ports = <2>;
status = "okay";
};

View File

@ -964,7 +964,7 @@
status = "disabled";
};
usb0: ohci@700000 {
usb0: usb@700000 {
compatible = "atmel,at91rm9200-ohci", "usb-ohci";
reg = <0x00700000 0x100000>;
interrupts = <22 IRQ_TYPE_LEVEL_HIGH 2>;
@ -973,7 +973,7 @@
status = "disabled";
};
usb1: ehci@800000 {
usb1: usb@800000 {
compatible = "atmel,at91sam9g45-ehci", "usb-ehci";
reg = <0x00800000 0x100000>;
interrupts = <22 IRQ_TYPE_LEVEL_HIGH 2>;

View File

@ -303,14 +303,14 @@
};
};
usb0: ohci@700000 {
usb0: usb@700000 {
status = "okay";
num-ports = <2>;
atmel,vbus-gpio = <&pioD 1 GPIO_ACTIVE_LOW
&pioD 3 GPIO_ACTIVE_LOW>;
};
usb1: ehci@800000 {
usb1: usb@800000 {
status = "okay";
};
};

View File

@ -748,7 +748,7 @@
};
};
usb0: ohci@500000 {
usb0: usb@500000 {
compatible = "atmel,at91rm9200-ohci", "usb-ohci";
reg = <0x00500000 0x00100000>;
interrupts = <22 IRQ_TYPE_LEVEL_HIGH 2>;

View File

@ -180,7 +180,7 @@
};
};
usb0: ohci@500000 {
usb0: usb@500000 {
num-ports = <1>;
atmel,vbus-gpio = <&pioB 7 GPIO_ACTIVE_LOW>;
status = "okay";

View File

@ -886,7 +886,7 @@
};
};
usb0: ohci@600000 {
usb0: usb@600000 {
compatible = "atmel,at91rm9200-ohci", "usb-ohci";
reg = <0x00600000 0x100000>;
interrupts = <22 IRQ_TYPE_LEVEL_HIGH 2>;
@ -895,7 +895,7 @@
status = "disabled";
};
usb1: ehci@700000 {
usb1: usb@700000 {
compatible = "atmel,at91sam9g45-ehci", "usb-ehci";
reg = <0x00700000 0x100000>;
interrupts = <22 IRQ_TYPE_LEVEL_HIGH 2>;

View File

@ -101,7 +101,7 @@
};
};
usb0: ohci@500000 {
usb0: usb@500000 {
num-ports = <2>;
status = "okay";
};

View File

@ -45,7 +45,7 @@
};
};
usb0: ohci@500000 {
usb0: usb@500000 {
num-ports = <2>;
status = "okay";
};

View File

@ -57,7 +57,7 @@
};
};
usb0: ohci@300000 {
usb0: usb@300000 {
num-ports = <1>;
status = "okay";
};

View File

@ -139,12 +139,12 @@
};
};
usb0: ohci@700000 {
usb0: usb@700000 {
status = "okay";
num-ports = <2>;
};
usb1: ehci@800000 {
usb1: usb@800000 {
status = "okay";
};
};

View File

@ -88,7 +88,7 @@
status = "disabled";
};
usb1: ohci@600000 {
usb1: usb@600000 {
compatible = "atmel,at91rm9200-ohci", "usb-ohci";
reg = <0x00600000 0x100000>;
interrupts = <22 IRQ_TYPE_LEVEL_HIGH 2>;
@ -97,7 +97,7 @@
status = "disabled";
};
usb2: ehci@700000 {
usb2: usb@700000 {
compatible = "atmel,at91sam9g45-ehci", "usb-ehci";
reg = <0x00700000 0x100000>;
interrupts = <22 IRQ_TYPE_LEVEL_HIGH 2>;

View File

@ -136,7 +136,7 @@
status = "disabled";
};
usb1: ohci@400000 {
usb1: usb@400000 {
compatible = "atmel,at91rm9200-ohci", "usb-ohci";
reg = <0x00400000 0x100000>;
interrupts = <41 IRQ_TYPE_LEVEL_HIGH 2>;
@ -145,7 +145,7 @@
status = "disabled";
};
usb2: ehci@500000 {
usb2: usb@500000 {
compatible = "atmel,at91sam9g45-ehci", "usb-ehci";
reg = <0x00500000 0x100000>;
interrupts = <41 IRQ_TYPE_LEVEL_HIGH 2>;

View File

@ -1074,7 +1074,7 @@
status = "disabled";
};
usb1: ohci@600000 {
usb1: usb@600000 {
compatible = "atmel,at91rm9200-ohci", "usb-ohci";
reg = <0x00600000 0x100000>;
interrupts = <32 IRQ_TYPE_LEVEL_HIGH 2>;
@ -1083,7 +1083,7 @@
status = "disabled";
};
usb2: ehci@700000 {
usb2: usb@700000 {
compatible = "atmel,at91sam9g45-ehci", "usb-ehci";
reg = <0x00700000 0x100000>;
interrupts = <32 IRQ_TYPE_LEVEL_HIGH 2>;

View File

@ -172,7 +172,7 @@
status = "okay";
};
usb1: ohci@600000 {
usb1: usb@600000 {
num-ports = <3>;
atmel,vbus-gpio = <&pioD 25 GPIO_ACTIVE_HIGH
&pioD 26 GPIO_ACTIVE_LOW
@ -181,7 +181,7 @@
status = "okay";
};
usb2: ehci@700000 {
usb2: usb@700000 {
status = "okay";
};
};

View File

@ -119,7 +119,7 @@
status = "disabled";
};
usb1: ohci@500000 {
usb1: usb@500000 {
compatible = "atmel,at91rm9200-ohci", "usb-ohci";
reg = <0x00500000 0x100000>;
interrupts = <46 IRQ_TYPE_LEVEL_HIGH 2>;
@ -128,7 +128,7 @@
status = "disabled";
};
usb2: ehci@600000 {
usb2: usb@600000 {
compatible = "atmel,at91sam9g45-ehci", "usb-ehci";
reg = <0x00600000 0x100000>;
interrupts = <46 IRQ_TYPE_LEVEL_HIGH 2>;

View File

@ -9,6 +9,7 @@
*/
#include <dt-bindings/clock/at91.h>
#include <dt-bindings/dma/at91.h>
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/interrupt-controller/irq.h>
@ -52,6 +53,11 @@
#address-cells = <1>;
#size-cells = <1>;
sfrbu: sfr@e0008000 {
compatible ="microchip,sama7d65-sfrbu", "atmel,sama5d2-sfrbu", "syscon";
reg = <0xe0008000 0x20>;
};
pioa: pinctrl@e0014000 {
compatible = "microchip,sama7d65-pinctrl", "microchip,sama7g5-pinctrl";
reg = <0xe0014000 0x800>;
@ -76,6 +82,31 @@
clock-names = "td_slck", "md_slck", "main_xtal";
};
ps_wdt: watchdog@e001d000 {
compatible = "microchip,sama7d65-wdt", "microchip,sama7g5-wdt";
reg = <0xe001d000 0x30>;
interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clk32k 0>;
};
reset_controller: reset-controller@e001d100 {
compatible = "microchip,sama7d65-rstc", "microchip,sama7g5-rstc";
reg = <0xe001d100 0xc>, <0xe001d1e4 0x4>;
#reset-cells = <1>;
clocks = <&clk32k 0>;
};
shdwc: poweroff@e001d200 {
compatible = "microchip,sama7d65-shdwc", "microchip,sama7g5-shdwc", "syscon";
reg = <0xe001d200 0x20>;
clocks = <&clk32k 0>;
#address-cells = <1>;
#size-cells = <0>;
atmel,wakeup-rtc-timer;
atmel,wakeup-rtt-timer;
status = "disabled";
};
clk32k: clock-controller@e001d500 {
compatible = "microchip,sama7d65-sckc", "microchip,sam9x60-sckc";
reg = <0xe001d500 0x4>;
@ -83,6 +114,29 @@
#clock-cells = <1>;
};
rtc: rtc@e001d800 {
compatible = "microchip,sama7d65-rtc", "microchip,sam9x60-rtc";
reg = <0xe001d800 0x30>;
interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clk32k 1>;
};
chipid@e0020000 {
compatible = "microchip,sama7d65-chipid";
reg = <0xe0020000 0x8>;
};
dma2: dma-controller@e1200000 {
compatible = "microchip,sama7d65-dma", "microchip,sama7g5-dma";
reg = <0xe1200000 0x1000>;
interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
#dma-cells = <1>;
clocks = <&pmc PMC_TYPE_PERIPHERAL 23>;
clock-names = "dma_clk";
dma-requests = <0>;
status = "disabled";
};
sdmmc1: mmc@e1208000 {
compatible = "microchip,sama7d65-sdhci", "microchip,sam9x60-sdhci";
reg = <0xe1208000 0x400>;
@ -95,6 +149,26 @@
status = "disabled";
};
dma0: dma-controller@e1610000 {
compatible = "microchip,sama7d65-dma", "microchip,sama7g5-dma";
reg = <0xe1610000 0x1000>;
interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
#dma-cells = <1>;
clocks = <&pmc PMC_TYPE_PERIPHERAL 21>;
clock-names = "dma_clk";
status = "disabled";
};
dma1: dma-controller@e1614000 {
compatible = "microchip,sama7d65-dma", "microchip,sama7g5-dma";
reg = <0xe1614000 0x1000>;
interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
#dma-cells = <1>;
clocks = <&pmc PMC_TYPE_PERIPHERAL 22>;
clock-names = "dma_clk";
status = "disabled";
};
pit64b0: timer@e1800000 {
compatible = "microchip,sama7d65-pit64b", "microchip,sam9x60-pit64b";
reg = <0xe1800000 0x100>;
@ -132,6 +206,27 @@
};
};
flx10: flexcom@e2824000 {
compatible = "microchip,sama7d65-flexcom", "atmel,sama5d2-flexcom";
reg = <0xe2824000 0x200>;
ranges = <0x0 0xe2824000 0x800>;
clocks = <&pmc PMC_TYPE_PERIPHERAL 44>;
#address-cells = <1>;
#size-cells = <1>;
status = "disabled";
i2c10: i2c@600 {
compatible = "microchip,sama7d65-i2c", "microchip,sam9x60-i2c";
reg = <0x600 0x200>;
interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&pmc PMC_TYPE_PERIPHERAL 44>;
#address-cells = <1>;
#size-cells = <0>;
atmel,fifo-size = <32>;
status = "disabled";
};
};
gic: interrupt-controller@e8c11000 {
compatible = "arm,cortex-a7-gic";
reg = <0xe8c11000 0x1000>,

View File

@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-only
/*
* tny_a9260.dts - Device Tree file for Caloa TNY A9260 board
* tny_a9260.dts - Device Tree file for Calao TNY A9260 board
*
* Copyright (C) 2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
*/

View File

@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-only
/*
* tny_a9260_common.dtsi - Device Tree file for Caloa TNY A926x board
* tny_a9260_common.dtsi - Device Tree file for Calao TNY A926x board
*
* Copyright (C) 2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
*/

View File

@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-only
/*
* usb_a9263.dts - Device Tree file for Caloa USB A9293 board
* usb_a9263.dts - Device Tree file for Calao USB A9293 board
*
* Copyright (C) 2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
*/

View File

@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-only
/*
* tny_a9g20.dts - Device Tree file for Caloa TNY A9G20 board
* tny_a9g20.dts - Device Tree file for Calao TNY A9G20 board
*
* Copyright (C) 2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
*/

View File

@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-or-later
/*
* usb_a9260.dts - Device Tree file for Caloa USB A9260 board
* usb_a9260.dts - Device Tree file for Calao USB A9260 board
*
* Copyright (C) 2011-2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
*/

View File

@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-or-later
/*
* usb_a926x.dts - Device Tree file for Caloa USB A926x board
* usb_a926x.dts - Device Tree file for Calao USB A926x board
*
* Copyright (C) 2011-2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
*/
@ -111,7 +111,7 @@
};
};
usb0: ohci@500000 {
usb0: usb@500000 {
num-ports = <2>;
status = "okay";
};
@ -122,17 +122,14 @@
user_led {
label = "user_led";
gpios = <&pioB 21 GPIO_ACTIVE_LOW>;
linux,default-trigger = "heartbeat";
gpios = <&pioB 21 GPIO_ACTIVE_HIGH>;
};
};
gpio_keys {
compatible = "gpio-keys";
#address-cells = <1>;
#size-cells = <0>;
user_pb {
button-user-pb {
label = "user_pb";
gpios = <&pioB 10 GPIO_ACTIVE_LOW>;
linux,code = <28>;

View File

@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-only
/*
* usb_a9263.dts - Device Tree file for Caloa USB A9293 board
* usb_a9263.dts - Device Tree file for Calao USB A9293 board
*
* Copyright (C) 2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
*/
@ -9,7 +9,7 @@
/ {
model = "Calao USB A9263";
compatible = "atmel,usb-a9263", "atmel,at91sam9263", "atmel,at91sam9";
compatible = "calao,usb-a9263", "atmel,at91sam9263", "atmel,at91sam9";
chosen {
bootargs = "mem=64M console=ttyS0,115200 root=/dev/mtdblock5 rw rootfstype=ubifs";
@ -139,7 +139,7 @@
};
};
usb0: ohci@a00000 {
usb0: usb@a00000 {
num-ports = <2>;
status = "okay";
};
@ -151,16 +151,13 @@
user_led {
label = "user_led";
gpios = <&pioB 21 GPIO_ACTIVE_HIGH>;
linux,default-trigger = "heartbeat";
};
};
gpio_keys {
compatible = "gpio-keys";
#address-cells = <1>;
#size-cells = <0>;
user_pb {
button-user-pb {
label = "user_pb";
gpios = <&pioB 10 GPIO_ACTIVE_LOW>;
linux,code = <28>;

Some files were not shown because too many files have changed in this diff Show More