1 # SPDX-License-Identifier: (GPL-2.0-only OR BS 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/power/fsl,i 4 $id: http://devicetree.org/schemas/power/fsl,imx-gpcv2.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: Freescale i.MX General Power Controller 7 title: Freescale i.MX General Power Controller v2 8 8 9 maintainers: 9 maintainers: 10 - Andrey Smirnov <andrew.smirnov@gmail.com> 10 - Andrey Smirnov <andrew.smirnov@gmail.com> 11 11 12 description: | 12 description: | 13 The i.MX7S/D General Power Control (GPC) blo 13 The i.MX7S/D General Power Control (GPC) block contains Power Gating 14 Control (PGC) for various power domains. 14 Control (PGC) for various power domains. 15 15 16 Power domains contained within GPC node are 16 Power domains contained within GPC node are generic power domain 17 providers, documented in 17 providers, documented in 18 Documentation/devicetree/bindings/power/powe 18 Documentation/devicetree/bindings/power/power-domain.yaml, which are 19 described as subnodes of the power gating co 19 described as subnodes of the power gating controller 'pgc' node. 20 20 21 IP cores belonging to a power domain should 21 IP cores belonging to a power domain should contain a 'power-domains' 22 property that is a phandle for PGC node repr 22 property that is a phandle for PGC node representing the domain. 23 23 24 properties: 24 properties: 25 compatible: 25 compatible: 26 enum: 26 enum: 27 - fsl,imx7d-gpc 27 - fsl,imx7d-gpc 28 - fsl,imx8mn-gpc 28 - fsl,imx8mn-gpc 29 - fsl,imx8mq-gpc 29 - fsl,imx8mq-gpc 30 - fsl,imx8mm-gpc 30 - fsl,imx8mm-gpc 31 - fsl,imx8mp-gpc << 32 31 33 reg: 32 reg: 34 maxItems: 1 33 maxItems: 1 35 34 36 interrupts: 35 interrupts: 37 maxItems: 1 36 maxItems: 1 38 37 39 interrupt-controller: true 38 interrupt-controller: true 40 '#interrupt-cells': 39 '#interrupt-cells': 41 const: 3 40 const: 3 42 41 43 pgc: 42 pgc: 44 type: object 43 type: object 45 additionalProperties: false << 46 description: list of power domains provide 44 description: list of power domains provided by this controller. 47 45 48 properties: << 49 '#address-cells': << 50 const: 1 << 51 << 52 '#size-cells': << 53 const: 0 << 54 << 55 patternProperties: 46 patternProperties: 56 "power-domain@[0-9a-f]+$": !! 47 "power-domain@[0-9]$": 57 type: object 48 type: object 58 additionalProperties: false << 59 << 60 properties: 49 properties: 61 50 62 '#power-domain-cells': 51 '#power-domain-cells': 63 const: 0 52 const: 0 64 53 65 reg: 54 reg: 66 description: | 55 description: | 67 Power domain index. Valid values 56 Power domain index. Valid values are defined in 68 include/dt-bindings/power/imx7-p 57 include/dt-bindings/power/imx7-power.h for fsl,imx7d-gpc and 69 include/dt-bindings/power/imx8m- 58 include/dt-bindings/power/imx8m-power.h for fsl,imx8mq-gpc 70 include/dt-bindings/power/imx8mm 59 include/dt-bindings/power/imx8mm-power.h for fsl,imx8mm-gpc 71 include/dt-bindings/power/imx8mp << 72 maxItems: 1 60 maxItems: 1 73 61 74 clocks: 62 clocks: 75 description: | 63 description: | 76 A number of phandles to clocks t 64 A number of phandles to clocks that need to be enabled during domain 77 power-up sequencing to ensure re 65 power-up sequencing to ensure reset propagation into devices located 78 inside this power domain. 66 inside this power domain. 79 minItems: 1 67 minItems: 1 80 maxItems: 5 68 maxItems: 5 81 69 82 power-supply: true 70 power-supply: true 83 71 84 power-domains: << 85 maxItems: 1 << 86 << 87 resets: 72 resets: 88 description: | 73 description: | 89 A number of phandles to resets t 74 A number of phandles to resets that need to be asserted during 90 power-up sequencing of the domai 75 power-up sequencing of the domain. The resets belong to devices 91 located inside the power domain, 76 located inside the power domain, which need to be held in reset 92 across the power-up sequence. So 77 across the power-up sequence. So no means to specify what each 93 reset is in a generic power-doma 78 reset is in a generic power-domain binding. 94 minItems: 1 79 minItems: 1 95 maxItems: 4 80 maxItems: 4 96 81 97 required: 82 required: 98 - '#power-domain-cells' 83 - '#power-domain-cells' 99 - reg 84 - reg 100 << 101 required: << 102 - '#address-cells' << 103 - '#size-cells' << 104 85 105 required: 86 required: 106 - compatible 87 - compatible 107 - reg 88 - reg 108 - interrupts 89 - interrupts 109 - pgc 90 - pgc 110 91 111 additionalProperties: false 92 additionalProperties: false 112 93 113 examples: 94 examples: 114 - | 95 - | 115 #include <dt-bindings/interrupt-controller 96 #include <dt-bindings/interrupt-controller/arm-gic.h> 116 97 117 gpc@303a0000 { 98 gpc@303a0000 { 118 compatible = "fsl,imx7d-gpc"; 99 compatible = "fsl,imx7d-gpc"; 119 reg = <0x303a0000 0x1000>; 100 reg = <0x303a0000 0x1000>; 120 interrupts = <GIC_SPI 87 IRQ_TYPE_LEVE 101 interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>; 121 102 122 pgc { 103 pgc { 123 #address-cells = <1>; 104 #address-cells = <1>; 124 #size-cells = <0>; 105 #size-cells = <0>; 125 106 126 pgc_mipi_phy: power-domain@0 { 107 pgc_mipi_phy: power-domain@0 { 127 #power-domain-cells = <0>; 108 #power-domain-cells = <0>; 128 reg = <0>; 109 reg = <0>; 129 power-supply = <®_1p0d>; 110 power-supply = <®_1p0d>; 130 }; 111 }; 131 112 132 pgc_pcie_phy: power-domain@1 { 113 pgc_pcie_phy: power-domain@1 { 133 #power-domain-cells = <0>; 114 #power-domain-cells = <0>; 134 reg = <1>; 115 reg = <1>; 135 power-supply = <®_1p0d>; 116 power-supply = <®_1p0d>; 136 }; 117 }; 137 118 138 pgc_hsic_phy: power-domain@2 { 119 pgc_hsic_phy: power-domain@2 { 139 #power-domain-cells = <0>; 120 #power-domain-cells = <0>; 140 reg = <2>; 121 reg = <2>; 141 power-supply = <®_1p2>; 122 power-supply = <®_1p2>; 142 }; 123 }; 143 }; 124 }; 144 }; 125 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.