BCM2835 PM (Power domains, watchdog) The PM block controls power domains and some reset lines, and includes a watchdog timer. This binding supersedes the brcm,bcm2835-pm-wdt binding which covered some of PM's register range and functionality. Required properties: - compatible: Should be "brcm,bcm2835-pm" - reg: Specifies base physical address and size of the two register ranges ("PM" and "ASYNC_BRIDGE" in that order) - clocks: a) v3d: The V3D clock from CPRMAN b) peri_image: The PERI_IMAGE clock from CPRMAN c) h264: The H264 clock from CPRMAN d) isp: The ISP clock from CPRMAN - #reset-cells: Should be 1. This property follows the reset controller bindings[1]. - #power-domain-cells: Should be 1. This property follows the power domain bindings[2]. Optional properties: - timeout-sec: Contains the watchdog timeout in seconds - system-power-controller: Whether the watchdog is controlling the system power. This node follows the power controller bindings[3]. [1] Documentation/devicetree/bindings/reset/reset.txt [2] Documentation/devicetree/bindings/power/power-domain.yaml [3] Documentation/devicetree/bindings/power/power-controller.txt Example: pm { compatible = "brcm,bcm2835-pm", "brcm,bcm2835-pm-wdt"; #power-domain-cells = <1>; #reset-cells = <1>; reg = <0x7e100000 0x114>, <0x7e00a000 0x24>; clocks = <&clocks BCM2835_CLOCK_V3D>, <&clocks BCM2835_CLOCK_PERI_IMAGE>, <&clocks BCM2835_CLOCK_H264>, <&clocks BCM2835_CLOCK_ISP>; clock-names = "v3d", "peri_image", "h264", "isp"; system-power-controller; };