# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/soc/loongson/loongson,ls2k-pmc.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Loongson-2 Power Manager controller maintainers: - Yinbo Zhu <zhuyinbo@loongson.cn> properties: compatible: oneOf: - items: - const: loongson,ls2k0500-pmc - const: syscon - items: - enum: - loongson,ls2k1000-pmc - loongson,ls2k2000-pmc - const: loongson,ls2k0500-pmc - const: syscon reg: maxItems: 1 interrupts: maxItems: 1 loongson,suspend-address: $ref: /schemas/types.yaml#/definitions/uint64 description: The "loongson,suspend-address" is a deep sleep state (Suspend To RAM) firmware entry address which was jumped from kernel and it's value was dependent on specific platform firmware code. In addition, the PM need according to it to indicate that current SoC whether support Suspend To RAM. syscon-poweroff: $ref: /schemas/power/reset/syscon-poweroff.yaml# type: object description: Node for power off method syscon-reboot: $ref: /schemas/power/reset/syscon-reboot.yaml# type: object description: Node for reboot method required: - compatible - reg - interrupts additionalProperties: false examples: - | #include <dt-bindings/interrupt-controller/irq.h> power-management@1fe27000 { compatible = "loongson,ls2k1000-pmc", "loongson,ls2k0500-pmc", "syscon"; reg = <0x1fe27000 0x58>; interrupt-parent = <&liointc1>; interrupts = <11 IRQ_TYPE_LEVEL_LOW>; loongson,suspend-address = <0x0 0x1c000500>; syscon-reboot { compatible = "syscon-reboot"; offset = <0x30>; mask = <0x1>; }; syscon-poweroff { compatible = "syscon-poweroff"; regmap = <&pmc>; offset = <0x14>; mask = <0x3c00>; value = <0x3c00>; }; };