18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 28c2ecf20Sopenharmony_ci%YAML 1.2 38c2ecf20Sopenharmony_ci--- 48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/mfd/syscon.yaml# 58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_cititle: System Controller Registers R/W Device Tree Bindings 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_cidescription: | 108c2ecf20Sopenharmony_ci System controller node represents a register region containing a set 118c2ecf20Sopenharmony_ci of miscellaneous registers. The registers are not cohesive enough to 128c2ecf20Sopenharmony_ci represent as any specific type of device. The typical use-case is 138c2ecf20Sopenharmony_ci for some other node's driver, or platform-specific code, to acquire 148c2ecf20Sopenharmony_ci a reference to the syscon node (e.g. by phandle, node path, or 158c2ecf20Sopenharmony_ci search using a specific compatible value), interrogate the node (or 168c2ecf20Sopenharmony_ci associated OS driver) to determine the location of the registers, 178c2ecf20Sopenharmony_ci and access the registers directly. 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_cimaintainers: 208c2ecf20Sopenharmony_ci - Lee Jones <lee.jones@linaro.org> 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ciselect: 238c2ecf20Sopenharmony_ci properties: 248c2ecf20Sopenharmony_ci compatible: 258c2ecf20Sopenharmony_ci contains: 268c2ecf20Sopenharmony_ci enum: 278c2ecf20Sopenharmony_ci - syscon 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ci required: 308c2ecf20Sopenharmony_ci - compatible 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ciproperties: 338c2ecf20Sopenharmony_ci compatible: 348c2ecf20Sopenharmony_ci anyOf: 358c2ecf20Sopenharmony_ci - items: 368c2ecf20Sopenharmony_ci - enum: 378c2ecf20Sopenharmony_ci - allwinner,sun8i-a83t-system-controller 388c2ecf20Sopenharmony_ci - allwinner,sun8i-h3-system-controller 398c2ecf20Sopenharmony_ci - allwinner,sun8i-v3s-system-controller 408c2ecf20Sopenharmony_ci - allwinner,sun50i-a64-system-controller 418c2ecf20Sopenharmony_ci - hisilicon,dsa-subctrl 428c2ecf20Sopenharmony_ci - hisilicon,hi6220-sramctrl 438c2ecf20Sopenharmony_ci - hisilicon,pcie-sas-subctrl 448c2ecf20Sopenharmony_ci - hisilicon,peri-subctrl 458c2ecf20Sopenharmony_ci - microchip,sparx5-cpu-syscon 468c2ecf20Sopenharmony_ci - mstar,msc313-pmsleep 478c2ecf20Sopenharmony_ci - samsung,exynos3-sysreg 488c2ecf20Sopenharmony_ci - samsung,exynos4-sysreg 498c2ecf20Sopenharmony_ci - samsung,exynos5-sysreg 508c2ecf20Sopenharmony_ci - samsung,exynos5433-sysreg 518c2ecf20Sopenharmony_ci 528c2ecf20Sopenharmony_ci - const: syscon 538c2ecf20Sopenharmony_ci 548c2ecf20Sopenharmony_ci - contains: 558c2ecf20Sopenharmony_ci const: syscon 568c2ecf20Sopenharmony_ci minItems: 2 578c2ecf20Sopenharmony_ci maxItems: 4 # Should be enough 588c2ecf20Sopenharmony_ci 598c2ecf20Sopenharmony_ci reg: 608c2ecf20Sopenharmony_ci maxItems: 1 618c2ecf20Sopenharmony_ci 628c2ecf20Sopenharmony_ci reg-io-width: 638c2ecf20Sopenharmony_ci description: | 648c2ecf20Sopenharmony_ci The size (in bytes) of the IO accesses that should be performed 658c2ecf20Sopenharmony_ci on the device. 668c2ecf20Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32 678c2ecf20Sopenharmony_ci enum: [1, 2, 4, 8] 688c2ecf20Sopenharmony_ci 698c2ecf20Sopenharmony_ci hwlocks: 708c2ecf20Sopenharmony_ci maxItems: 1 718c2ecf20Sopenharmony_ci description: 728c2ecf20Sopenharmony_ci Reference to a phandle of a hardware spinlock provider node. 738c2ecf20Sopenharmony_ci 748c2ecf20Sopenharmony_cirequired: 758c2ecf20Sopenharmony_ci - compatible 768c2ecf20Sopenharmony_ci - reg 778c2ecf20Sopenharmony_ci 788c2ecf20Sopenharmony_ciadditionalProperties: true 798c2ecf20Sopenharmony_ci 808c2ecf20Sopenharmony_ciexamples: 818c2ecf20Sopenharmony_ci - | 828c2ecf20Sopenharmony_ci syscon: syscon@1c00000 { 838c2ecf20Sopenharmony_ci compatible = "allwinner,sun8i-h3-system-controller", "syscon"; 848c2ecf20Sopenharmony_ci reg = <0x01c00000 0x1000>; 858c2ecf20Sopenharmony_ci }; 868c2ecf20Sopenharmony_ci 878c2ecf20Sopenharmony_ci - | 888c2ecf20Sopenharmony_ci gpr: iomuxc-gpr@20e0000 { 898c2ecf20Sopenharmony_ci compatible = "fsl,imx6q-iomuxc-gpr", "syscon"; 908c2ecf20Sopenharmony_ci reg = <0x020e0000 0x38>; 918c2ecf20Sopenharmony_ci hwlocks = <&hwlock1 1>; 928c2ecf20Sopenharmony_ci }; 938c2ecf20Sopenharmony_ci 948c2ecf20Sopenharmony_ci... 95