xref: /freebsd/sys/contrib/device-tree/Bindings/mfd/syscon.yaml (revision b2d2a78ad80ec68d4a17f5aef97d21686cb1e29b)
1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0
2c66ec88fSEmmanuel Vadot%YAML 1.2
3c66ec88fSEmmanuel Vadot---
4c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/mfd/syscon.yaml#
5c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6c66ec88fSEmmanuel Vadot
70e8011faSEmmanuel Vadottitle: System Controller Devices
8c66ec88fSEmmanuel Vadot
9c66ec88fSEmmanuel Vadotdescription: |
10c66ec88fSEmmanuel Vadot  System controller node represents a register region containing a set
11c66ec88fSEmmanuel Vadot  of miscellaneous registers. The registers are not cohesive enough to
12c66ec88fSEmmanuel Vadot  represent as any specific type of device. The typical use-case is
13c66ec88fSEmmanuel Vadot  for some other node's driver, or platform-specific code, to acquire
14c66ec88fSEmmanuel Vadot  a reference to the syscon node (e.g. by phandle, node path, or
15c66ec88fSEmmanuel Vadot  search using a specific compatible value), interrogate the node (or
16c66ec88fSEmmanuel Vadot  associated OS driver) to determine the location of the registers,
17c66ec88fSEmmanuel Vadot  and access the registers directly.
18c66ec88fSEmmanuel Vadot
19c66ec88fSEmmanuel Vadotmaintainers:
20b97ee269SEmmanuel Vadot  - Lee Jones <lee@kernel.org>
21c66ec88fSEmmanuel Vadot
220e8011faSEmmanuel Vadot# Need a select with all compatibles listed for compatibility with older
230e8011faSEmmanuel Vadot# dtschema (<2024.02), so this will not be selected for other schemas having
240e8011faSEmmanuel Vadot# syscon fallback.
25c66ec88fSEmmanuel Vadotselect:
26c66ec88fSEmmanuel Vadot  properties:
27c66ec88fSEmmanuel Vadot    compatible:
28c66ec88fSEmmanuel Vadot      contains:
29c66ec88fSEmmanuel Vadot        enum:
300e8011faSEmmanuel Vadot          - al,alpine-sysfabric-servic
31c66ec88fSEmmanuel Vadot          - allwinner,sun8i-a83t-system-controller
32c66ec88fSEmmanuel Vadot          - allwinner,sun8i-h3-system-controller
33c66ec88fSEmmanuel Vadot          - allwinner,sun8i-v3s-system-controller
34c66ec88fSEmmanuel Vadot          - allwinner,sun50i-a64-system-controller
350e8011faSEmmanuel Vadot          - altr,l3regs
367d0873ebSEmmanuel Vadot          - altr,sdr-ctl
37cb7aa33aSEmmanuel Vadot          - amd,pensando-elba-syscon
380e8011faSEmmanuel Vadot          - amlogic,meson-mx-assist
390e8011faSEmmanuel Vadot          - amlogic,meson-mx-bootrom
400e8011faSEmmanuel Vadot          - amlogic,meson8-analog-top
410e8011faSEmmanuel Vadot          - amlogic,meson8b-analog-top
420e8011faSEmmanuel Vadot          - amlogic,meson8-pmu
430e8011faSEmmanuel Vadot          - amlogic,meson8b-pmu
440e8011faSEmmanuel Vadot          - apm,merlin-poweroff-mailbox
450e8011faSEmmanuel Vadot          - apm,mustang-poweroff-mailbox
467d0873ebSEmmanuel Vadot          - apm,xgene-csw
477d0873ebSEmmanuel Vadot          - apm,xgene-efuse
487d0873ebSEmmanuel Vadot          - apm,xgene-mcb
497d0873ebSEmmanuel Vadot          - apm,xgene-rb
507d0873ebSEmmanuel Vadot          - apm,xgene-scu
510e8011faSEmmanuel Vadot          - atmel,sama5d2-sfrbu
520e8011faSEmmanuel Vadot          - atmel,sama5d3-nfc-io
530e8011faSEmmanuel Vadot          - atmel,sama5d3-sfrbu
540e8011faSEmmanuel Vadot          - atmel,sama5d4-sfrbu
550e8011faSEmmanuel Vadot          - axis,artpec6-syscon
568cc087a1SEmmanuel Vadot          - brcm,cru-clkset
577d0873ebSEmmanuel Vadot          - brcm,sr-cdru
587d0873ebSEmmanuel Vadot          - brcm,sr-mhb
590e8011faSEmmanuel Vadot          - cirrus,ep7209-syscon1
600e8011faSEmmanuel Vadot          - cirrus,ep7209-syscon2
610e8011faSEmmanuel Vadot          - cirrus,ep7209-syscon3
620e8011faSEmmanuel Vadot          - cnxt,cx92755-uc
63e67e8565SEmmanuel Vadot          - freecom,fsg-cs2-system-controller
647ef62cebSEmmanuel Vadot          - fsl,imx93-aonmix-ns-syscfg
657ef62cebSEmmanuel Vadot          - fsl,imx93-wakeupmix-syscfg
667d0873ebSEmmanuel Vadot          - fsl,ls1088a-reset
670e8011faSEmmanuel Vadot          - fsl,vf610-anatop
680e8011faSEmmanuel Vadot          - fsl,vf610-mscm-cpucfg
696be33864SEmmanuel Vadot          - hisilicon,dsa-subctrl
706be33864SEmmanuel Vadot          - hisilicon,hi6220-sramctrl
710e8011faSEmmanuel Vadot          - hisilicon,hip04-ppe
726be33864SEmmanuel Vadot          - hisilicon,pcie-sas-subctrl
736be33864SEmmanuel Vadot          - hisilicon,peri-subctrl
74cb7aa33aSEmmanuel Vadot          - hpe,gxp-sysreg
7584943d6fSEmmanuel Vadot          - loongson,ls1b-syscon
7684943d6fSEmmanuel Vadot          - loongson,ls1c-syscon
770e8011faSEmmanuel Vadot          - lsi,axxia-syscon
787d0873ebSEmmanuel Vadot          - marvell,armada-3700-cpu-misc
797d0873ebSEmmanuel Vadot          - marvell,armada-3700-nb-pm
807d0873ebSEmmanuel Vadot          - marvell,armada-3700-avs
81c9ccf3a3SEmmanuel Vadot          - marvell,armada-3700-usb2-host-misc
820e8011faSEmmanuel Vadot          - marvell,dove-global-config
830e8011faSEmmanuel Vadot          - mediatek,mt2701-pctl-a-syscfg
847d0873ebSEmmanuel Vadot          - mediatek,mt2712-pctl-a-syscfg
857d0873ebSEmmanuel Vadot          - mediatek,mt6397-pctl-pmic-syscfg
86c9ccf3a3SEmmanuel Vadot          - mediatek,mt8135-pctl-a-syscfg
87c9ccf3a3SEmmanuel Vadot          - mediatek,mt8135-pctl-b-syscfg
887d0873ebSEmmanuel Vadot          - mediatek,mt8173-pctl-a-syscfg
89cb7aa33aSEmmanuel Vadot          - mediatek,mt8365-syscfg
90c9ccf3a3SEmmanuel Vadot          - microchip,lan966x-cpu-syscon
910e8011faSEmmanuel Vadot          - microchip,sam9x60-sfr
920e8011faSEmmanuel Vadot          - microchip,sama7g5-ddr3phy
930e8011faSEmmanuel Vadot          - mscc,ocelot-cpu-syscon
94c66ec88fSEmmanuel Vadot          - mstar,msc313-pmsleep
95fac71e4eSEmmanuel Vadot          - nuvoton,ma35d1-sys
968bab661aSEmmanuel Vadot          - nuvoton,wpcm450-shm
975def4c47SEmmanuel Vadot          - rockchip,px30-qos
98354d7675SEmmanuel Vadot          - rockchip,rk3036-qos
995def4c47SEmmanuel Vadot          - rockchip,rk3066-qos
10084943d6fSEmmanuel Vadot          - rockchip,rk3128-qos
101354d7675SEmmanuel Vadot          - rockchip,rk3228-qos
1025def4c47SEmmanuel Vadot          - rockchip,rk3288-qos
1038cc087a1SEmmanuel Vadot          - rockchip,rk3368-qos
1045def4c47SEmmanuel Vadot          - rockchip,rk3399-qos
105354d7675SEmmanuel Vadot          - rockchip,rk3568-qos
106*b2d2a78aSEmmanuel Vadot          - rockchip,rk3576-qos
1077ef62cebSEmmanuel Vadot          - rockchip,rk3588-qos
1087ef62cebSEmmanuel Vadot          - rockchip,rv1126-qos
1090e8011faSEmmanuel Vadot          - st,spear1340-misc
1100e8011faSEmmanuel Vadot          - stericsson,nomadik-pmu
111fac71e4eSEmmanuel Vadot          - starfive,jh7100-sysmain
1120e8011faSEmmanuel Vadot          - ti,am62-opp-efuse-table
11301950c46SEmmanuel Vadot          - ti,am62-usb-phy-ctrl
1140e8011faSEmmanuel Vadot          - ti,am625-dss-oldi-io-ctrl
1157d0873ebSEmmanuel Vadot          - ti,am62p-cpsw-mac-efuse
11684943d6fSEmmanuel Vadot          - ti,am654-dss-oldi-io-ctrl
117*b2d2a78aSEmmanuel Vadot          - ti,j784s4-acspcie-proxy-ctrl
11801950c46SEmmanuel Vadot          - ti,j784s4-pcie-ctrl
1190e8011faSEmmanuel Vadot          - ti,keystone-pllctrl
1200e8011faSEmmanuel Vadot  required:
1210e8011faSEmmanuel Vadot    - compatible
122c66ec88fSEmmanuel Vadot
1230e8011faSEmmanuel Vadotproperties:
1240e8011faSEmmanuel Vadot  compatible:
1250e8011faSEmmanuel Vadot    items:
1260e8011faSEmmanuel Vadot      - enum:
1270e8011faSEmmanuel Vadot          - al,alpine-sysfabric-service
1280e8011faSEmmanuel Vadot          - allwinner,sun8i-a83t-system-controller
1290e8011faSEmmanuel Vadot          - allwinner,sun8i-h3-system-controller
1300e8011faSEmmanuel Vadot          - allwinner,sun8i-v3s-system-controller
1310e8011faSEmmanuel Vadot          - allwinner,sun50i-a64-system-controller
1320e8011faSEmmanuel Vadot          - altr,l3regs
1330e8011faSEmmanuel Vadot          - altr,sdr-ctl
1340e8011faSEmmanuel Vadot          - amd,pensando-elba-syscon
1350e8011faSEmmanuel Vadot          - amlogic,meson-mx-assist
1360e8011faSEmmanuel Vadot          - amlogic,meson-mx-bootrom
1370e8011faSEmmanuel Vadot          - amlogic,meson8-analog-top
1380e8011faSEmmanuel Vadot          - amlogic,meson8b-analog-top
1390e8011faSEmmanuel Vadot          - amlogic,meson8-pmu
1400e8011faSEmmanuel Vadot          - amlogic,meson8b-pmu
1410e8011faSEmmanuel Vadot          - apm,merlin-poweroff-mailbox
1420e8011faSEmmanuel Vadot          - apm,mustang-poweroff-mailbox
1430e8011faSEmmanuel Vadot          - apm,xgene-csw
1440e8011faSEmmanuel Vadot          - apm,xgene-efuse
1450e8011faSEmmanuel Vadot          - apm,xgene-mcb
1460e8011faSEmmanuel Vadot          - apm,xgene-rb
1470e8011faSEmmanuel Vadot          - apm,xgene-scu
1480e8011faSEmmanuel Vadot          - atmel,sama5d2-sfrbu
1490e8011faSEmmanuel Vadot          - atmel,sama5d3-nfc-io
1500e8011faSEmmanuel Vadot          - atmel,sama5d3-sfrbu
1510e8011faSEmmanuel Vadot          - atmel,sama5d4-sfrbu
1520e8011faSEmmanuel Vadot          - axis,artpec6-syscon
1530e8011faSEmmanuel Vadot          - brcm,cru-clkset
1540e8011faSEmmanuel Vadot          - brcm,sr-cdru
1550e8011faSEmmanuel Vadot          - brcm,sr-mhb
1560e8011faSEmmanuel Vadot          - cirrus,ep7209-syscon1
1570e8011faSEmmanuel Vadot          - cirrus,ep7209-syscon2
1580e8011faSEmmanuel Vadot          - cirrus,ep7209-syscon3
1590e8011faSEmmanuel Vadot          - cnxt,cx92755-uc
1600e8011faSEmmanuel Vadot          - freecom,fsg-cs2-system-controller
1610e8011faSEmmanuel Vadot          - fsl,imx93-aonmix-ns-syscfg
1620e8011faSEmmanuel Vadot          - fsl,imx93-wakeupmix-syscfg
1630e8011faSEmmanuel Vadot          - fsl,ls1088a-reset
1640e8011faSEmmanuel Vadot          - fsl,vf610-anatop
1650e8011faSEmmanuel Vadot          - fsl,vf610-mscm-cpucfg
1660e8011faSEmmanuel Vadot          - hisilicon,dsa-subctrl
1670e8011faSEmmanuel Vadot          - hisilicon,hi6220-sramctrl
1680e8011faSEmmanuel Vadot          - hisilicon,hip04-ppe
1690e8011faSEmmanuel Vadot          - hisilicon,pcie-sas-subctrl
1700e8011faSEmmanuel Vadot          - hisilicon,peri-subctrl
1710e8011faSEmmanuel Vadot          - hpe,gxp-sysreg
1720e8011faSEmmanuel Vadot          - loongson,ls1b-syscon
1730e8011faSEmmanuel Vadot          - loongson,ls1c-syscon
1740e8011faSEmmanuel Vadot          - lsi,axxia-syscon
1750e8011faSEmmanuel Vadot          - marvell,armada-3700-cpu-misc
1760e8011faSEmmanuel Vadot          - marvell,armada-3700-nb-pm
1770e8011faSEmmanuel Vadot          - marvell,armada-3700-avs
1780e8011faSEmmanuel Vadot          - marvell,armada-3700-usb2-host-misc
1790e8011faSEmmanuel Vadot          - marvell,dove-global-config
1800e8011faSEmmanuel Vadot          - mediatek,mt2701-pctl-a-syscfg
1810e8011faSEmmanuel Vadot          - mediatek,mt2712-pctl-a-syscfg
1820e8011faSEmmanuel Vadot          - mediatek,mt6397-pctl-pmic-syscfg
1830e8011faSEmmanuel Vadot          - mediatek,mt8135-pctl-a-syscfg
1840e8011faSEmmanuel Vadot          - mediatek,mt8135-pctl-b-syscfg
1850e8011faSEmmanuel Vadot          - mediatek,mt8173-pctl-a-syscfg
1860e8011faSEmmanuel Vadot          - mediatek,mt8365-syscfg
1870e8011faSEmmanuel Vadot          - microchip,lan966x-cpu-syscon
1880e8011faSEmmanuel Vadot          - microchip,sam9x60-sfr
1890e8011faSEmmanuel Vadot          - microchip,sama7g5-ddr3phy
1900e8011faSEmmanuel Vadot          - mscc,ocelot-cpu-syscon
1910e8011faSEmmanuel Vadot          - mstar,msc313-pmsleep
1920e8011faSEmmanuel Vadot          - nuvoton,ma35d1-sys
1930e8011faSEmmanuel Vadot          - nuvoton,wpcm450-shm
1940e8011faSEmmanuel Vadot          - rockchip,px30-qos
1950e8011faSEmmanuel Vadot          - rockchip,rk3036-qos
1960e8011faSEmmanuel Vadot          - rockchip,rk3066-qos
1970e8011faSEmmanuel Vadot          - rockchip,rk3128-qos
1980e8011faSEmmanuel Vadot          - rockchip,rk3228-qos
1990e8011faSEmmanuel Vadot          - rockchip,rk3288-qos
2000e8011faSEmmanuel Vadot          - rockchip,rk3368-qos
2010e8011faSEmmanuel Vadot          - rockchip,rk3399-qos
2020e8011faSEmmanuel Vadot          - rockchip,rk3568-qos
203*b2d2a78aSEmmanuel Vadot          - rockchip,rk3576-qos
2040e8011faSEmmanuel Vadot          - rockchip,rk3588-qos
2050e8011faSEmmanuel Vadot          - rockchip,rv1126-qos
2060e8011faSEmmanuel Vadot          - st,spear1340-misc
2070e8011faSEmmanuel Vadot          - stericsson,nomadik-pmu
2080e8011faSEmmanuel Vadot          - starfive,jh7100-sysmain
2090e8011faSEmmanuel Vadot          - ti,am62-opp-efuse-table
2100e8011faSEmmanuel Vadot          - ti,am62-usb-phy-ctrl
2110e8011faSEmmanuel Vadot          - ti,am625-dss-oldi-io-ctrl
2120e8011faSEmmanuel Vadot          - ti,am62p-cpsw-mac-efuse
2130e8011faSEmmanuel Vadot          - ti,am654-dss-oldi-io-ctrl
2140e8011faSEmmanuel Vadot          - ti,j784s4-pcie-ctrl
2150e8011faSEmmanuel Vadot          - ti,keystone-pllctrl
216c66ec88fSEmmanuel Vadot      - const: syscon
217c66ec88fSEmmanuel Vadot
218c66ec88fSEmmanuel Vadot  reg:
219c66ec88fSEmmanuel Vadot    maxItems: 1
220c66ec88fSEmmanuel Vadot
221cb7aa33aSEmmanuel Vadot  resets:
222cb7aa33aSEmmanuel Vadot    maxItems: 1
223cb7aa33aSEmmanuel Vadot
224c66ec88fSEmmanuel Vadotrequired:
225c66ec88fSEmmanuel Vadot  - compatible
226c66ec88fSEmmanuel Vadot  - reg
227c66ec88fSEmmanuel Vadot
2287ef62cebSEmmanuel VadotallOf:
2290e8011faSEmmanuel Vadot  - $ref: syscon-common.yaml#
2307ef62cebSEmmanuel Vadot
2310e8011faSEmmanuel VadotunevaluatedProperties: false
232c66ec88fSEmmanuel Vadot
233c66ec88fSEmmanuel Vadotexamples:
234c66ec88fSEmmanuel Vadot  - |
235c66ec88fSEmmanuel Vadot    syscon: syscon@1c00000 {
236c66ec88fSEmmanuel Vadot        compatible = "allwinner,sun8i-h3-system-controller", "syscon";
237c66ec88fSEmmanuel Vadot        reg = <0x01c00000 0x1000>;
238c66ec88fSEmmanuel Vadot    };
239c66ec88fSEmmanuel Vadot...
240