mirror of
https://github.com/torvalds/linux.git
synced 2026-04-28 19:42:31 -04:00
Add bcm2712-pm compatible and update the bindings to satisfy it's requirements. The PM hardware block inside bcm2712 lacks the "asb" and "rpivid_asb" register ranges and also does not have clocks, update the bindings accordingly. Signed-off-by: Stanimir Varbanov <svarbanov@suse.de> Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com> Acked-by: Conor Dooley <conor.dooley@microchip.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
113 lines
2.1 KiB
YAML
113 lines
2.1 KiB
YAML
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/soc/bcm/brcm,bcm2835-pm.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: BCM2835 PM (Power domains, watchdog)
|
|
|
|
description: |
|
|
The PM block controls power domains and some reset lines, and includes a
|
|
watchdog timer.
|
|
|
|
maintainers:
|
|
- Nicolas Saenz Julienne <nsaenz@kernel.org>
|
|
|
|
properties:
|
|
compatible:
|
|
items:
|
|
- enum:
|
|
- brcm,bcm2835-pm
|
|
- brcm,bcm2711-pm
|
|
- brcm,bcm2712-pm
|
|
- const: brcm,bcm2835-pm-wdt
|
|
|
|
reg:
|
|
minItems: 1
|
|
maxItems: 3
|
|
|
|
reg-names:
|
|
minItems: 1
|
|
items:
|
|
- const: pm
|
|
- const: asb
|
|
- const: rpivid_asb
|
|
|
|
"#power-domain-cells":
|
|
const: 1
|
|
|
|
"#reset-cells":
|
|
const: 1
|
|
|
|
clocks:
|
|
minItems: 4
|
|
maxItems: 4
|
|
|
|
clock-names:
|
|
items:
|
|
- const: v3d
|
|
- const: peri_image
|
|
- const: h264
|
|
- const: isp
|
|
|
|
system-power-controller:
|
|
type: boolean
|
|
|
|
timeout-sec: true
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- "#power-domain-cells"
|
|
- "#reset-cells"
|
|
|
|
allOf:
|
|
- $ref: /schemas/watchdog/watchdog.yaml#
|
|
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
enum:
|
|
- brcm,bcm2835-pm
|
|
- brcm,bcm2711-pm
|
|
then:
|
|
required:
|
|
- clocks
|
|
|
|
properties:
|
|
reg:
|
|
minItems: 2
|
|
|
|
reg-names:
|
|
minItems: 2
|
|
|
|
else:
|
|
properties:
|
|
reg:
|
|
maxItems: 1
|
|
|
|
reg-names:
|
|
maxItems: 1
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/clock/bcm2835.h>
|
|
|
|
watchdog@7e100000 {
|
|
compatible = "brcm,bcm2835-pm", "brcm,bcm2835-pm-wdt";
|
|
#power-domain-cells = <1>;
|
|
#reset-cells = <1>;
|
|
reg = <0x7e100000 0x114>,
|
|
<0x7e00a000 0x24>;
|
|
reg-names = "pm", "asb";
|
|
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;
|
|
};
|