162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 262306a36Sopenharmony_ci%YAML 1.2 362306a36Sopenharmony_ci--- 462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/arm/apple/apple,pmgr.yaml# 562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 662306a36Sopenharmony_ci 762306a36Sopenharmony_cititle: Apple SoC Power Manager (PMGR) 862306a36Sopenharmony_ci 962306a36Sopenharmony_cimaintainers: 1062306a36Sopenharmony_ci - Hector Martin <marcan@marcan.st> 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_cidescription: | 1362306a36Sopenharmony_ci Apple SoCs include PMGR blocks responsible for power management, 1462306a36Sopenharmony_ci which can control various clocks, resets, power states, and 1562306a36Sopenharmony_ci performance features. This node represents the PMGR as a syscon, 1662306a36Sopenharmony_ci with sub-nodes representing individual features. 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_ciproperties: 1962306a36Sopenharmony_ci $nodename: 2062306a36Sopenharmony_ci pattern: "^power-management@[0-9a-f]+$" 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ci compatible: 2362306a36Sopenharmony_ci items: 2462306a36Sopenharmony_ci - enum: 2562306a36Sopenharmony_ci - apple,t8103-pmgr 2662306a36Sopenharmony_ci - apple,t8112-pmgr 2762306a36Sopenharmony_ci - apple,t6000-pmgr 2862306a36Sopenharmony_ci - const: apple,pmgr 2962306a36Sopenharmony_ci - const: syscon 3062306a36Sopenharmony_ci - const: simple-mfd 3162306a36Sopenharmony_ci 3262306a36Sopenharmony_ci reg: 3362306a36Sopenharmony_ci maxItems: 1 3462306a36Sopenharmony_ci 3562306a36Sopenharmony_ci "#address-cells": 3662306a36Sopenharmony_ci const: 1 3762306a36Sopenharmony_ci 3862306a36Sopenharmony_ci "#size-cells": 3962306a36Sopenharmony_ci const: 1 4062306a36Sopenharmony_ci 4162306a36Sopenharmony_cipatternProperties: 4262306a36Sopenharmony_ci "power-controller@[0-9a-f]+$": 4362306a36Sopenharmony_ci description: 4462306a36Sopenharmony_ci The individual power management domains within this controller 4562306a36Sopenharmony_ci type: object 4662306a36Sopenharmony_ci $ref: /schemas/power/apple,pmgr-pwrstate.yaml# 4762306a36Sopenharmony_ci 4862306a36Sopenharmony_cirequired: 4962306a36Sopenharmony_ci - compatible 5062306a36Sopenharmony_ci - reg 5162306a36Sopenharmony_ci 5262306a36Sopenharmony_ciadditionalProperties: false 5362306a36Sopenharmony_ci 5462306a36Sopenharmony_ciexamples: 5562306a36Sopenharmony_ci - | 5662306a36Sopenharmony_ci soc { 5762306a36Sopenharmony_ci #address-cells = <2>; 5862306a36Sopenharmony_ci #size-cells = <2>; 5962306a36Sopenharmony_ci 6062306a36Sopenharmony_ci power-management@23b700000 { 6162306a36Sopenharmony_ci compatible = "apple,t8103-pmgr", "apple,pmgr", "syscon", "simple-mfd"; 6262306a36Sopenharmony_ci #address-cells = <1>; 6362306a36Sopenharmony_ci #size-cells = <1>; 6462306a36Sopenharmony_ci reg = <0x2 0x3b700000 0x0 0x14000>; 6562306a36Sopenharmony_ci 6662306a36Sopenharmony_ci ps_sio: power-controller@1c0 { 6762306a36Sopenharmony_ci compatible = "apple,t8103-pmgr-pwrstate", "apple,pmgr-pwrstate"; 6862306a36Sopenharmony_ci reg = <0x1c0 8>; 6962306a36Sopenharmony_ci #power-domain-cells = <0>; 7062306a36Sopenharmony_ci #reset-cells = <0>; 7162306a36Sopenharmony_ci label = "sio"; 7262306a36Sopenharmony_ci apple,always-on; 7362306a36Sopenharmony_ci }; 7462306a36Sopenharmony_ci 7562306a36Sopenharmony_ci ps_uart_p: power-controller@220 { 7662306a36Sopenharmony_ci compatible = "apple,t8103-pmgr-pwrstate", "apple,pmgr-pwrstate"; 7762306a36Sopenharmony_ci reg = <0x220 8>; 7862306a36Sopenharmony_ci #power-domain-cells = <0>; 7962306a36Sopenharmony_ci #reset-cells = <0>; 8062306a36Sopenharmony_ci label = "uart_p"; 8162306a36Sopenharmony_ci power-domains = <&ps_sio>; 8262306a36Sopenharmony_ci }; 8362306a36Sopenharmony_ci 8462306a36Sopenharmony_ci ps_uart0: power-controller@270 { 8562306a36Sopenharmony_ci compatible = "apple,t8103-pmgr-pwrstate", "apple,pmgr-pwrstate"; 8662306a36Sopenharmony_ci reg = <0x270 8>; 8762306a36Sopenharmony_ci #power-domain-cells = <0>; 8862306a36Sopenharmony_ci #reset-cells = <0>; 8962306a36Sopenharmony_ci label = "uart0"; 9062306a36Sopenharmony_ci power-domains = <&ps_uart_p>; 9162306a36Sopenharmony_ci }; 9262306a36Sopenharmony_ci }; 9362306a36Sopenharmony_ci 9462306a36Sopenharmony_ci power-management@23d280000 { 9562306a36Sopenharmony_ci compatible = "apple,t8103-pmgr", "apple,pmgr", "syscon", "simple-mfd"; 9662306a36Sopenharmony_ci #address-cells = <1>; 9762306a36Sopenharmony_ci #size-cells = <1>; 9862306a36Sopenharmony_ci reg = <0x2 0x3d280000 0x0 0xc000>; 9962306a36Sopenharmony_ci 10062306a36Sopenharmony_ci ps_aop_filter: power-controller@4000 { 10162306a36Sopenharmony_ci compatible = "apple,t8103-pmgr-pwrstate", "apple,pmgr-pwrstate"; 10262306a36Sopenharmony_ci reg = <0x4000 8>; 10362306a36Sopenharmony_ci #power-domain-cells = <0>; 10462306a36Sopenharmony_ci #reset-cells = <0>; 10562306a36Sopenharmony_ci label = "aop_filter"; 10662306a36Sopenharmony_ci }; 10762306a36Sopenharmony_ci 10862306a36Sopenharmony_ci ps_aop_base: power-controller@4010 { 10962306a36Sopenharmony_ci compatible = "apple,t8103-pmgr-pwrstate", "apple,pmgr-pwrstate"; 11062306a36Sopenharmony_ci reg = <0x4010 8>; 11162306a36Sopenharmony_ci #power-domain-cells = <0>; 11262306a36Sopenharmony_ci #reset-cells = <0>; 11362306a36Sopenharmony_ci label = "aop_base"; 11462306a36Sopenharmony_ci power-domains = <&ps_aop_filter>; 11562306a36Sopenharmony_ci }; 11662306a36Sopenharmony_ci 11762306a36Sopenharmony_ci ps_aop_shim: power-controller@4038 { 11862306a36Sopenharmony_ci compatible = "apple,t8103-pmgr-pwrstate", "apple,pmgr-pwrstate"; 11962306a36Sopenharmony_ci reg = <0x4038 8>; 12062306a36Sopenharmony_ci #power-domain-cells = <0>; 12162306a36Sopenharmony_ci #reset-cells = <0>; 12262306a36Sopenharmony_ci label = "aop_shim"; 12362306a36Sopenharmony_ci power-domains = <&ps_aop_base>; 12462306a36Sopenharmony_ci }; 12562306a36Sopenharmony_ci 12662306a36Sopenharmony_ci ps_aop_uart0: power-controller@4048 { 12762306a36Sopenharmony_ci compatible = "apple,t8103-pmgr-pwrstate", "apple,pmgr-pwrstate"; 12862306a36Sopenharmony_ci reg = <0x4048 8>; 12962306a36Sopenharmony_ci #power-domain-cells = <0>; 13062306a36Sopenharmony_ci #reset-cells = <0>; 13162306a36Sopenharmony_ci label = "aop_uart0"; 13262306a36Sopenharmony_ci power-domains = <&ps_aop_shim>; 13362306a36Sopenharmony_ci }; 13462306a36Sopenharmony_ci }; 13562306a36Sopenharmony_ci }; 136