mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-22 10:34:55 +08:00
dt-bindings: power: sysc-rmobile: Convert to json-schema
Convert the Renesas R-Mobile System Controller (SYSC) Device Tree binding documentation to json-schema. Document missing properties. Drop consumer example, as it does not belong here. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Link: https://lore.kernel.org/r/22150cfd2ef9d57e84eb53a5dfed8379627a9423.1620119210.git.geert+renesas@glider.be Signed-off-by: Rob Herring <robh@kernel.org>
This commit is contained in:
parent
4fa9ee2e65
commit
4d92239b65
@ -1,100 +0,0 @@
|
||||
DT bindings for the Renesas R-Mobile System Controller
|
||||
|
||||
== System Controller Node ==
|
||||
|
||||
The R-Mobile System Controller provides the following functions:
|
||||
- Boot mode management,
|
||||
- Reset generation,
|
||||
- Power management.
|
||||
|
||||
Required properties:
|
||||
- compatible: Should be "renesas,sysc-<soctype>", "renesas,sysc-rmobile" as
|
||||
fallback.
|
||||
Examples with soctypes are:
|
||||
- "renesas,sysc-r8a73a4" (R-Mobile APE6)
|
||||
- "renesas,sysc-r8a7740" (R-Mobile A1)
|
||||
- "renesas,sysc-sh73a0" (SH-Mobile AG5)
|
||||
- reg: Two address start and address range blocks for the device:
|
||||
- The first block refers to the normally accessible registers,
|
||||
- the second block refers to the registers protected by the HPB
|
||||
semaphore.
|
||||
|
||||
Optional nodes:
|
||||
- pm-domains: This node contains a hierarchy of PM domain nodes, which should
|
||||
match the Power Area Hierarchy in the Power Domain Specifications section of
|
||||
the device's datasheet.
|
||||
|
||||
|
||||
== PM Domain Nodes ==
|
||||
|
||||
Each of the PM domain nodes represents a PM domain, as documented by the
|
||||
generic PM domain bindings in
|
||||
Documentation/devicetree/bindings/power/power-domain.yaml.
|
||||
|
||||
The nodes should be named by the real power area names, and thus their names
|
||||
should be unique.
|
||||
|
||||
Required properties:
|
||||
- #power-domain-cells: Must be 0.
|
||||
|
||||
Optional properties:
|
||||
- reg: If the PM domain is not always-on, this property must contain the bit
|
||||
index number for the corresponding power area in the various Power
|
||||
Control and Status Registers. The parent's node must contain the
|
||||
following two properties:
|
||||
- #address-cells: Must be 1,
|
||||
- #size-cells: Must be 0.
|
||||
If the PM domain is always-on, this property must be omitted.
|
||||
|
||||
|
||||
Example:
|
||||
|
||||
This shows a subset of the r8a7740 PM domain hierarchy, containing the
|
||||
C5 "always-on" domain, 2 of its subdomains (A4S and A4SU), and the A3SP domain,
|
||||
which is a subdomain of A4S.
|
||||
|
||||
sysc: system-controller@e6180000 {
|
||||
compatible = "renesas,sysc-r8a7740", "renesas,sysc-rmobile";
|
||||
reg = <0xe6180000 0x8000>, <0xe6188000 0x8000>;
|
||||
|
||||
pm-domains {
|
||||
pd_c5: c5 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
#power-domain-cells = <0>;
|
||||
|
||||
pd_a4s: a4s@10 {
|
||||
reg = <10>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
#power-domain-cells = <0>;
|
||||
|
||||
pd_a3sp: a3sp@11 {
|
||||
reg = <11>;
|
||||
#power-domain-cells = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
pd_a4su: a4su@20 {
|
||||
reg = <20>;
|
||||
#power-domain-cells = <0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
== PM Domain Consumers ==
|
||||
|
||||
Hardware blocks belonging to a PM domain should contain a "power-domains"
|
||||
property that is a phandle pointing to the corresponding PM domain node.
|
||||
|
||||
Example:
|
||||
|
||||
tpu: pwm@e6600000 {
|
||||
compatible = "renesas,tpu-r8a7740", "renesas,tpu";
|
||||
reg = <0xe6600000 0x100>;
|
||||
clocks = <&mstp3_clks R8A7740_CLK_TPU0>;
|
||||
power-domains = <&pd_a3sp>;
|
||||
#pwm-cells = <3>;
|
||||
};
|
@ -0,0 +1,121 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/power/renesas,sysc-rmobile.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Renesas R-Mobile System Controller
|
||||
|
||||
maintainers:
|
||||
- Geert Uytterhoeven <geert+renesas@glider.be>
|
||||
- Magnus Damm <magnus.damm@gmail.com>
|
||||
|
||||
description: |
|
||||
The R-Mobile System Controller provides the following functions:
|
||||
- Boot mode management,
|
||||
- Reset generation,
|
||||
- Power management.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
items:
|
||||
- enum:
|
||||
- renesas,sysc-r8a73a4 # R-Mobile APE6
|
||||
- renesas,sysc-r8a7740 # R-Mobile A1
|
||||
- renesas,sysc-sh73a0 # SH-Mobile AG5
|
||||
- const: renesas,sysc-rmobile # Generic SH/R-Mobile
|
||||
|
||||
reg:
|
||||
items:
|
||||
- description: Normally accessible register block
|
||||
- description: Register block protected by the HPB semaphore
|
||||
|
||||
pm-domains:
|
||||
type: object
|
||||
description: |
|
||||
This node contains a hierarchy of PM domain nodes, which should match the
|
||||
Power Area Hierarchy in the Power Domain Specifications section of the
|
||||
device's datasheet.
|
||||
|
||||
properties:
|
||||
'#address-cells':
|
||||
const: 1
|
||||
|
||||
'#size-cells':
|
||||
const: 0
|
||||
|
||||
additionalProperties:
|
||||
$ref: "#/$defs/pd-node"
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- pm-domains
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
$defs:
|
||||
pd-node:
|
||||
type: object
|
||||
description:
|
||||
PM domain node representing a PM domain. This node hould be named by
|
||||
the real power area name, and thus its name should be unique.
|
||||
|
||||
properties:
|
||||
reg:
|
||||
maxItems: 1
|
||||
description:
|
||||
If the PM domain is not always-on, this property must contain the
|
||||
bit index number for the corresponding power area in the various
|
||||
Power Control and Status Registers.
|
||||
If the PM domain is always-on, this property must be omitted.
|
||||
|
||||
'#address-cells':
|
||||
const: 1
|
||||
|
||||
'#size-cells':
|
||||
const: 0
|
||||
|
||||
'#power-domain-cells':
|
||||
const: 0
|
||||
|
||||
required:
|
||||
- '#power-domain-cells'
|
||||
|
||||
additionalProperties:
|
||||
$ref: "#/$defs/pd-node"
|
||||
|
||||
examples:
|
||||
- |
|
||||
// This shows a subset of the r8a7740 PM domain hierarchy, containing the
|
||||
// C5 "always-on" domain, 2 of its subdomains (A4S and A4SU), and the A3SP
|
||||
// domain, which is a subdomain of A4S.
|
||||
sysc: system-controller@e6180000 {
|
||||
compatible = "renesas,sysc-r8a7740", "renesas,sysc-rmobile";
|
||||
reg = <0xe6180000 0x8000>, <0xe6188000 0x8000>;
|
||||
|
||||
pm-domains {
|
||||
pd_c5: c5 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
#power-domain-cells = <0>;
|
||||
|
||||
pd_a4s: a4s@10 {
|
||||
reg = <10>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
#power-domain-cells = <0>;
|
||||
|
||||
pd_a3sp: a3sp@11 {
|
||||
reg = <11>;
|
||||
#power-domain-cells = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
pd_a4su: a4su@20 {
|
||||
reg = <20>;
|
||||
#power-domain-cells = <0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
Loading…
Reference in New Issue
Block a user