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