dt-bindings: power: Add power-domains-child-ids property

Add binding documentation for the new power-domains-child-ids property,
which works in conjunction with the existing power-domains property to
establish parent-child relationships between a multi-domain power domain
provider and external parent domains.

Each element in the uint32 array identifies the child domain
ID (index) within the provider that should be made a child domain of
the corresponding phandle entry in power-domains. The two arrays must
have the same number of elements.

Signed-off-by: Kevin Hilman (TI) <khilman@baylibre.com>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
This commit is contained in:
Kevin Hilman (TI) 2026-04-20 16:51:17 -07:00 committed by Ulf Hansson
parent 5d6919055d
commit 53df57b3ae

View File

@ -68,6 +68,21 @@ properties:
by the given provider should be subdomains of the domain specified
by this binding.
power-domains-child-ids:
$ref: /schemas/types.yaml#/definitions/uint32-array
description:
An array of child domain IDs that correspond to the power-domains
property. This property is only applicable to power domain providers
with "#power-domain-cells" > 0 (i.e., providers that supply multiple
power domains). It specifies which of the provider's child domains
should be associated with each parent domain listed in the power-domains
property. The number of elements in this array must match the number of
phandles in the power-domains property. Each element specifies the child
domain ID (index) that should be made a child domain of the corresponding
parent domain. This enables hierarchical power domain structures where
different child domains from the same provider can have different
parent domains.
required:
- "#power-domain-cells"
@ -133,3 +148,22 @@ examples:
min-residency-us = <7000>;
};
};
- |
// Example: SCMI domain 15 -> MAIN_PD, SCMI domain 19 -> WKUP_PD
MAIN_PD: power-controller-main {
compatible = "foo,power-controller";
#power-domain-cells = <0>;
};
WKUP_PD: power-controller-wkup {
compatible = "foo,power-controller";
#power-domain-cells = <0>;
};
scmi_pds: power-controller-scmi {
compatible = "foo,power-controller";
#power-domain-cells = <1>;
power-domains = <&MAIN_PD>, <&WKUP_PD>;
power-domains-child-ids = <15>, <19>;
};