syscon.yaml 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  1. # SPDX-License-Identifier: GPL-2.0
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/mfd/syscon.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: System Controller Devices
  7. description: |
  8. System controller node represents a register region containing a set
  9. of miscellaneous registers. The registers are not cohesive enough to
  10. represent as any specific type of device. The typical use-case is
  11. for some other node's driver, or platform-specific code, to acquire
  12. a reference to the syscon node (e.g. by phandle, node path, or
  13. search using a specific compatible value), interrogate the node (or
  14. associated OS driver) to determine the location of the registers,
  15. and access the registers directly.
  16. maintainers:
  17. - Lee Jones <lee@kernel.org>
  18. # Need a select with all compatibles listed for compatibility with older
  19. # dtschema (<2024.02), so this will not be selected for other schemas having
  20. # syscon fallback.
  21. select:
  22. properties:
  23. compatible:
  24. contains:
  25. enum:
  26. - al,alpine-sysfabric-servic
  27. - allwinner,sun8i-a83t-system-controller
  28. - allwinner,sun8i-h3-system-controller
  29. - allwinner,sun8i-v3s-system-controller
  30. - allwinner,sun50i-a64-system-controller
  31. - altr,l3regs
  32. - altr,sdr-ctl
  33. - amd,pensando-elba-syscon
  34. - amlogic,meson-mx-assist
  35. - amlogic,meson-mx-bootrom
  36. - amlogic,meson8-analog-top
  37. - amlogic,meson8b-analog-top
  38. - amlogic,meson8-pmu
  39. - amlogic,meson8b-pmu
  40. - apm,merlin-poweroff-mailbox
  41. - apm,mustang-poweroff-mailbox
  42. - apm,xgene-csw
  43. - apm,xgene-efuse
  44. - apm,xgene-mcb
  45. - apm,xgene-rb
  46. - apm,xgene-scu
  47. - atmel,sama5d2-sfrbu
  48. - atmel,sama5d3-nfc-io
  49. - atmel,sama5d3-sfrbu
  50. - atmel,sama5d4-sfrbu
  51. - axis,artpec6-syscon
  52. - brcm,cru-clkset
  53. - brcm,sr-cdru
  54. - brcm,sr-mhb
  55. - cirrus,ep7209-syscon1
  56. - cirrus,ep7209-syscon2
  57. - cirrus,ep7209-syscon3
  58. - cnxt,cx92755-uc
  59. - freecom,fsg-cs2-system-controller
  60. - fsl,imx93-aonmix-ns-syscfg
  61. - fsl,imx93-wakeupmix-syscfg
  62. - fsl,ls1088a-reset
  63. - fsl,vf610-anatop
  64. - fsl,vf610-mscm-cpucfg
  65. - hisilicon,dsa-subctrl
  66. - hisilicon,hi6220-sramctrl
  67. - hisilicon,hip04-ppe
  68. - hisilicon,pcie-sas-subctrl
  69. - hisilicon,peri-subctrl
  70. - hpe,gxp-sysreg
  71. - loongson,ls1b-syscon
  72. - loongson,ls1c-syscon
  73. - lsi,axxia-syscon
  74. - marvell,armada-3700-cpu-misc
  75. - marvell,armada-3700-nb-pm
  76. - marvell,armada-3700-avs
  77. - marvell,armada-3700-usb2-host-misc
  78. - marvell,dove-global-config
  79. - mediatek,mt2701-pctl-a-syscfg
  80. - mediatek,mt2712-pctl-a-syscfg
  81. - mediatek,mt6397-pctl-pmic-syscfg
  82. - mediatek,mt8135-pctl-a-syscfg
  83. - mediatek,mt8135-pctl-b-syscfg
  84. - mediatek,mt8173-pctl-a-syscfg
  85. - mediatek,mt8365-syscfg
  86. - microchip,lan966x-cpu-syscon
  87. - microchip,sam9x60-sfr
  88. - microchip,sama7g5-ddr3phy
  89. - mscc,ocelot-cpu-syscon
  90. - mstar,msc313-pmsleep
  91. - nuvoton,ma35d1-sys
  92. - nuvoton,wpcm450-shm
  93. - rockchip,px30-qos
  94. - rockchip,rk3036-qos
  95. - rockchip,rk3066-qos
  96. - rockchip,rk3128-qos
  97. - rockchip,rk3228-qos
  98. - rockchip,rk3288-qos
  99. - rockchip,rk3368-qos
  100. - rockchip,rk3399-qos
  101. - rockchip,rk3568-qos
  102. - rockchip,rk3576-qos
  103. - rockchip,rk3588-qos
  104. - rockchip,rv1126-qos
  105. - st,spear1340-misc
  106. - stericsson,nomadik-pmu
  107. - starfive,jh7100-sysmain
  108. - ti,am62-opp-efuse-table
  109. - ti,am62-usb-phy-ctrl
  110. - ti,am625-dss-oldi-io-ctrl
  111. - ti,am62p-cpsw-mac-efuse
  112. - ti,am654-dss-oldi-io-ctrl
  113. - ti,j784s4-acspcie-proxy-ctrl
  114. - ti,j784s4-pcie-ctrl
  115. - ti,keystone-pllctrl
  116. required:
  117. - compatible
  118. properties:
  119. compatible:
  120. items:
  121. - enum:
  122. - al,alpine-sysfabric-service
  123. - allwinner,sun8i-a83t-system-controller
  124. - allwinner,sun8i-h3-system-controller
  125. - allwinner,sun8i-v3s-system-controller
  126. - allwinner,sun50i-a64-system-controller
  127. - altr,l3regs
  128. - altr,sdr-ctl
  129. - amd,pensando-elba-syscon
  130. - amlogic,meson-mx-assist
  131. - amlogic,meson-mx-bootrom
  132. - amlogic,meson8-analog-top
  133. - amlogic,meson8b-analog-top
  134. - amlogic,meson8-pmu
  135. - amlogic,meson8b-pmu
  136. - apm,merlin-poweroff-mailbox
  137. - apm,mustang-poweroff-mailbox
  138. - apm,xgene-csw
  139. - apm,xgene-efuse
  140. - apm,xgene-mcb
  141. - apm,xgene-rb
  142. - apm,xgene-scu
  143. - atmel,sama5d2-sfrbu
  144. - atmel,sama5d3-nfc-io
  145. - atmel,sama5d3-sfrbu
  146. - atmel,sama5d4-sfrbu
  147. - axis,artpec6-syscon
  148. - brcm,cru-clkset
  149. - brcm,sr-cdru
  150. - brcm,sr-mhb
  151. - cirrus,ep7209-syscon1
  152. - cirrus,ep7209-syscon2
  153. - cirrus,ep7209-syscon3
  154. - cnxt,cx92755-uc
  155. - freecom,fsg-cs2-system-controller
  156. - fsl,imx93-aonmix-ns-syscfg
  157. - fsl,imx93-wakeupmix-syscfg
  158. - fsl,ls1088a-reset
  159. - fsl,vf610-anatop
  160. - fsl,vf610-mscm-cpucfg
  161. - hisilicon,dsa-subctrl
  162. - hisilicon,hi6220-sramctrl
  163. - hisilicon,hip04-ppe
  164. - hisilicon,pcie-sas-subctrl
  165. - hisilicon,peri-subctrl
  166. - hpe,gxp-sysreg
  167. - loongson,ls1b-syscon
  168. - loongson,ls1c-syscon
  169. - lsi,axxia-syscon
  170. - marvell,armada-3700-cpu-misc
  171. - marvell,armada-3700-nb-pm
  172. - marvell,armada-3700-avs
  173. - marvell,armada-3700-usb2-host-misc
  174. - marvell,dove-global-config
  175. - mediatek,mt2701-pctl-a-syscfg
  176. - mediatek,mt2712-pctl-a-syscfg
  177. - mediatek,mt6397-pctl-pmic-syscfg
  178. - mediatek,mt8135-pctl-a-syscfg
  179. - mediatek,mt8135-pctl-b-syscfg
  180. - mediatek,mt8173-pctl-a-syscfg
  181. - mediatek,mt8365-syscfg
  182. - microchip,lan966x-cpu-syscon
  183. - microchip,sam9x60-sfr
  184. - microchip,sama7g5-ddr3phy
  185. - mscc,ocelot-cpu-syscon
  186. - mstar,msc313-pmsleep
  187. - nuvoton,ma35d1-sys
  188. - nuvoton,wpcm450-shm
  189. - rockchip,px30-qos
  190. - rockchip,rk3036-qos
  191. - rockchip,rk3066-qos
  192. - rockchip,rk3128-qos
  193. - rockchip,rk3228-qos
  194. - rockchip,rk3288-qos
  195. - rockchip,rk3368-qos
  196. - rockchip,rk3399-qos
  197. - rockchip,rk3568-qos
  198. - rockchip,rk3576-qos
  199. - rockchip,rk3588-qos
  200. - rockchip,rv1126-qos
  201. - st,spear1340-misc
  202. - stericsson,nomadik-pmu
  203. - starfive,jh7100-sysmain
  204. - ti,am62-opp-efuse-table
  205. - ti,am62-usb-phy-ctrl
  206. - ti,am625-dss-oldi-io-ctrl
  207. - ti,am62p-cpsw-mac-efuse
  208. - ti,am654-dss-oldi-io-ctrl
  209. - ti,j784s4-pcie-ctrl
  210. - ti,keystone-pllctrl
  211. - const: syscon
  212. reg:
  213. maxItems: 1
  214. resets:
  215. maxItems: 1
  216. required:
  217. - compatible
  218. - reg
  219. allOf:
  220. - $ref: syscon-common.yaml#
  221. unevaluatedProperties: false
  222. examples:
  223. - |
  224. syscon: syscon@1c00000 {
  225. compatible = "allwinner,sun8i-h3-system-controller", "syscon";
  226. reg = <0x01c00000 0x1000>;
  227. };
  228. ...