Add power domain support to the Thead TH1520 clock controller bindings. This enables devices to specify their power domain dependencies, improving power management for components like the GPU. Signed-off-by: Michal Wilczynski <m.wilczynski@xxxxxxxxxxx> --- .../bindings/power/thead,th1520-power.yaml | 52 +++++++++++++++++++ MAINTAINERS | 1 + 2 files changed, 53 insertions(+) create mode 100644 Documentation/devicetree/bindings/power/thead,th1520-power.yaml diff --git a/Documentation/devicetree/bindings/power/thead,th1520-power.yaml b/Documentation/devicetree/bindings/power/thead,th1520-power.yaml new file mode 100644 index 000000000000..528af54f4ca6 --- /dev/null +++ b/Documentation/devicetree/bindings/power/thead,th1520-power.yaml @@ -0,0 +1,52 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/power/thead,th1520-power.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: T-HEAD TH1520 Power Domain Controller + +maintainers: + - Michal Wilczynski <m.wilczynski@xxxxxxxxxxx> + +description: | + The T-HEAD TH1520 SoC includes a power domain controller responsible for + managing the power states of various hardware domains such as the GPU. + + This binding describes the power domain controller node, which can be used by + devices to manage their power domains. + +properties: + compatible: + const: "thead,th1520-pd" + + thead,vosys-regmap: + $ref: /schemas/types.yaml#/definitions/phandle + description: | + Phandle to a syscon node representing the shared register space of the VO (Video Output) subsystem. + This register space includes both clock control registers and other control registers used for + operations like resetting the GPU. Since these registers reside in the same address space, + access to them is coordinated through a shared syscon regmap provided by the specified syscon node. + + '#power-domain-cells': + const: 1 + +required: + - compatible + - thead,vosys-regmap + - '#power-domain-cells' + +additionalProperties: false + +examples: + - | + vosys_regmap: vosys@ffef528000 { + compatible = "syscon"; + reg = <0xff 0xef528000 0x0 0x1000>; + }; + + power-controller { + compatible = "thead,th1520-pd"; + thead,vosys-regmap = <&vosys_regmap>; + #power-domain-cells = <1>; + }; diff --git a/MAINTAINERS b/MAINTAINERS index 16fb58aa74b1..acbe311087ad 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -20187,6 +20187,7 @@ F: Documentation/devicetree/bindings/clock/thead,th1520-clk.yaml F: Documentation/devicetree/bindings/mailbox/thead,th1520-mbox.yaml F: Documentation/devicetree/bindings/net/thead,th1520-gmac.yaml F: Documentation/devicetree/bindings/pinctrl/thead,th1520-pinctrl.yaml +F: Documentation/devicetree/bindings/power/thead,th1520-power.yaml F: arch/riscv/boot/dts/thead/ F: drivers/clk/thead/ F: drivers/mailbox/mailbox-th1520.c -- 2.34.1