syscon.yaml 9.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284
  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. - airoha,en7581-pbus-csr
  27. - al,alpine-sysfabric-service
  28. - allwinner,sun8i-a83t-system-controller
  29. - allwinner,sun8i-h3-system-controller
  30. - allwinner,sun8i-v3s-system-controller
  31. - allwinner,sun50i-a64-system-controller
  32. - altr,l3regs
  33. - altr,sdr-ctl
  34. - amd,pensando-elba-syscon
  35. - amlogic,meson-mx-assist
  36. - amlogic,meson-mx-bootrom
  37. - amlogic,meson8-analog-top
  38. - amlogic,meson8b-analog-top
  39. - amlogic,meson8-pmu
  40. - amlogic,meson8b-pmu
  41. - apm,merlin-poweroff-mailbox
  42. - apm,mustang-poweroff-mailbox
  43. - apm,xgene-csw
  44. - apm,xgene-efuse
  45. - apm,xgene-mcb
  46. - apm,xgene-rb
  47. - apm,xgene-scu
  48. - atmel,sama5d2-sfrbu
  49. - atmel,sama5d3-nfc-io
  50. - atmel,sama5d3-sfrbu
  51. - atmel,sama5d4-sfrbu
  52. - axis,artpec6-syscon
  53. - brcm,cru-clkset
  54. - brcm,sr-cdru
  55. - brcm,sr-mhb
  56. - cirrus,ep7209-syscon1
  57. - cirrus,ep7209-syscon2
  58. - cirrus,ep7209-syscon3
  59. - cnxt,cx92755-uc
  60. - freecom,fsg-cs2-system-controller
  61. - fsl,imx93-aonmix-ns-syscfg
  62. - fsl,imx93-wakeupmix-syscfg
  63. - fsl,ls1088a-reset
  64. - fsl,vf610-anatop
  65. - fsl,vf610-mscm-cpucfg
  66. - hisilicon,dsa-subctrl
  67. - hisilicon,hi6220-sramctrl
  68. - hisilicon,hip04-ppe
  69. - hisilicon,pcie-sas-subctrl
  70. - hisilicon,peri-subctrl
  71. - hpe,gxp-sysreg
  72. - loongson,ls1b-syscon
  73. - loongson,ls1c-syscon
  74. - lsi,axxia-syscon
  75. - marvell,armada-3700-cpu-misc
  76. - marvell,armada-3700-nb-pm
  77. - marvell,armada-3700-avs
  78. - marvell,armada-3700-usb2-host-device-misc
  79. - marvell,armada-3700-usb2-host-misc
  80. - marvell,dove-global-config
  81. - mediatek,mt2701-pctl-a-syscfg
  82. - mediatek,mt2712-pctl-a-syscfg
  83. - mediatek,mt6397-pctl-pmic-syscfg
  84. - mediatek,mt7981-topmisc
  85. - mediatek,mt7988-topmisc
  86. - mediatek,mt8135-pctl-a-syscfg
  87. - mediatek,mt8135-pctl-b-syscfg
  88. - mediatek,mt8173-pctl-a-syscfg
  89. - mediatek,mt8365-syscfg
  90. - microchip,lan966x-cpu-syscon
  91. - microchip,mpfs-control-scb
  92. - microchip,mpfs-sysreg-scb
  93. - microchip,sam9x60-sfr
  94. - microchip,sama7d65-ddr3phy
  95. - microchip,sama7d65-sfrbu
  96. - microchip,sama7g5-ddr3phy
  97. - mscc,ocelot-cpu-syscon
  98. - mstar,msc313-pmsleep
  99. - nuvoton,ma35d1-sys
  100. - nuvoton,wpcm450-shm
  101. - nxp,s32g2-gpr
  102. - nxp,s32g3-gpr
  103. - qcom,apq8064-mmss-sfpb
  104. - qcom,apq8064-sps-sic
  105. - rockchip,px30-qos
  106. - rockchip,rk3036-qos
  107. - rockchip,rk3066-qos
  108. - rockchip,rk3128-qos
  109. - rockchip,rk3228-qos
  110. - rockchip,rk3288-qos
  111. - rockchip,rk3368-qos
  112. - rockchip,rk3399-qos
  113. - rockchip,rk3528-qos
  114. - rockchip,rk3562-qos
  115. - rockchip,rk3568-qos
  116. - rockchip,rk3576-qos
  117. - rockchip,rk3588-qos
  118. - rockchip,rv1126-qos
  119. - st,spear1340-misc
  120. - stericsson,nomadik-pmu
  121. - starfive,jh7100-sysmain
  122. - ti,am62-opp-efuse-table
  123. - ti,am62-usb-phy-ctrl
  124. - ti,am625-dss-oldi-io-ctrl
  125. - ti,am62p-cpsw-mac-efuse
  126. - ti,am654-dss-oldi-io-ctrl
  127. - ti,j784s4-acspcie-proxy-ctrl
  128. - ti,j784s4-pcie-ctrl
  129. - ti,keystone-pllctrl
  130. required:
  131. - compatible
  132. properties:
  133. compatible:
  134. oneOf:
  135. - items:
  136. - enum:
  137. - airoha,en7581-pbus-csr
  138. - al,alpine-sysfabric-service
  139. - allwinner,sun8i-a83t-system-controller
  140. - allwinner,sun8i-h3-system-controller
  141. - allwinner,sun8i-v3s-system-controller
  142. - allwinner,sun50i-a64-system-controller
  143. - altr,l3regs
  144. - altr,sdr-ctl
  145. - amd,pensando-elba-syscon
  146. - amlogic,meson-mx-assist
  147. - amlogic,meson-mx-bootrom
  148. - amlogic,meson8-analog-top
  149. - amlogic,meson8b-analog-top
  150. - amlogic,meson8-pmu
  151. - amlogic,meson8b-pmu
  152. - apm,merlin-poweroff-mailbox
  153. - apm,mustang-poweroff-mailbox
  154. - apm,xgene-csw
  155. - apm,xgene-efuse
  156. - apm,xgene-mcb
  157. - apm,xgene-rb
  158. - apm,xgene-scu
  159. - atmel,sama5d2-sfrbu
  160. - atmel,sama5d3-nfc-io
  161. - atmel,sama5d3-sfrbu
  162. - atmel,sama5d4-sfrbu
  163. - axis,artpec6-syscon
  164. - brcm,cru-clkset
  165. - brcm,sr-cdru
  166. - brcm,sr-mhb
  167. - cirrus,ep7209-syscon1
  168. - cirrus,ep7209-syscon2
  169. - cirrus,ep7209-syscon3
  170. - cnxt,cx92755-uc
  171. - freecom,fsg-cs2-system-controller
  172. - fsl,imx93-aonmix-ns-syscfg
  173. - fsl,imx93-wakeupmix-syscfg
  174. - fsl,ls1088a-reset
  175. - fsl,vf610-anatop
  176. - fsl,vf610-mscm-cpucfg
  177. - hisilicon,dsa-subctrl
  178. - hisilicon,hi6220-sramctrl
  179. - hisilicon,hip04-ppe
  180. - hisilicon,pcie-sas-subctrl
  181. - hisilicon,peri-subctrl
  182. - hpe,gxp-sysreg
  183. - loongson,ls1b-syscon
  184. - loongson,ls1c-syscon
  185. - lsi,axxia-syscon
  186. - marvell,armada-3700-cpu-misc
  187. - marvell,armada-3700-nb-pm
  188. - marvell,armada-3700-avs
  189. - marvell,armada-3700-usb2-host-device-misc
  190. - marvell,armada-3700-usb2-host-misc
  191. - marvell,dove-global-config
  192. - mediatek,mt2701-pctl-a-syscfg
  193. - mediatek,mt2712-pctl-a-syscfg
  194. - mediatek,mt6397-pctl-pmic-syscfg
  195. - mediatek,mt7981-topmisc
  196. - mediatek,mt7988-topmisc
  197. - mediatek,mt8135-pctl-a-syscfg
  198. - mediatek,mt8135-pctl-b-syscfg
  199. - mediatek,mt8173-pctl-a-syscfg
  200. - mediatek,mt8365-infracfg-nao
  201. - mediatek,mt8365-syscfg
  202. - microchip,lan966x-cpu-syscon
  203. - microchip,mpfs-control-scb
  204. - microchip,mpfs-sysreg-scb
  205. - microchip,sam9x60-sfr
  206. - microchip,sama7d65-ddr3phy
  207. - microchip,sama7d65-sfrbu
  208. - microchip,sama7g5-ddr3phy
  209. - mscc,ocelot-cpu-syscon
  210. - mstar,msc313-pmsleep
  211. - nuvoton,ma35d1-sys
  212. - nuvoton,wpcm450-shm
  213. - nxp,s32g2-gpr
  214. - nxp,s32g3-gpr
  215. - qcom,apq8064-mmss-sfpb
  216. - qcom,apq8064-sps-sic
  217. - rockchip,px30-qos
  218. - rockchip,rk3036-qos
  219. - rockchip,rk3066-qos
  220. - rockchip,rk3128-qos
  221. - rockchip,rk3228-qos
  222. - rockchip,rk3288-qos
  223. - rockchip,rk3368-qos
  224. - rockchip,rk3399-qos
  225. - rockchip,rk3528-qos
  226. - rockchip,rk3562-qos
  227. - rockchip,rk3568-qos
  228. - rockchip,rk3576-qos
  229. - rockchip,rk3588-qos
  230. - rockchip,rv1126-qos
  231. - st,spear1340-misc
  232. - stericsson,nomadik-pmu
  233. - starfive,jh7100-sysmain
  234. - ti,am62-opp-efuse-table
  235. - ti,am62-usb-phy-ctrl
  236. - ti,am625-dss-oldi-io-ctrl
  237. - ti,am62p-cpsw-mac-efuse
  238. - ti,am654-dss-oldi-io-ctrl
  239. - ti,j784s4-acspcie-proxy-ctrl
  240. - ti,j784s4-pcie-ctrl
  241. - ti,keystone-pllctrl
  242. - const: syscon
  243. - items:
  244. - enum:
  245. - microchip,sama7g5-sfrbu
  246. - microchip,sama7d65-sfrbu
  247. - const: atmel,sama5d2-sfrbu
  248. - const: syscon
  249. - items:
  250. - const: microchip,pic64gx-control-scb
  251. - const: microchip,mpfs-control-scb
  252. - const: syscon
  253. - items:
  254. - const: microchip,pic64gx-sysreg-scb
  255. - const: microchip,mpfs-sysreg-scb
  256. - const: syscon
  257. reg:
  258. maxItems: 1
  259. resets:
  260. maxItems: 1
  261. required:
  262. - compatible
  263. - reg
  264. allOf:
  265. - $ref: syscon-common.yaml#
  266. unevaluatedProperties: false
  267. examples:
  268. - |
  269. syscon: syscon@1c00000 {
  270. compatible = "allwinner,sun8i-h3-system-controller", "syscon";
  271. reg = <0x01c00000 0x1000>;
  272. };
  273. ...