[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250509021605.26764-1-nick.hu@sifive.com>
Date: Fri, 9 May 2025 10:16:04 +0800
From: Nick Hu <nick.hu@...ive.com>
To: Cyan Yang <cyan.yang@...ive.com>,
Nick Hu <nick.hu@...ive.com>,
Samuel Holland <samuel.holland@...ive.com>,
devicetree@...r.kernel.org,
linux-riscv@...ts.infradead.org,
linux-kernel@...r.kernel.org
Cc: Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Paul Walmsley <paul.walmsley@...ive.com>
Subject: [PATCH] dt-bindings: power: Add SiFive Domain Management controllers
SiFive Domain Management controller includes the following components
- SiFive Tile Management Controller
- SiFive Cluster Management Controller
- SiFive Core Complex Management Controller
These controllers control the clock and power domain of the
corresponding domain.
Signed-off-by: Nick Hu <nick.hu@...ive.com>
Reviewed-by: Samuel Holland <samuel.holland@...ive.com>
---
.../devicetree/bindings/power/sifive,tmc.yaml | 89 +++++++++++++++++++
1 file changed, 89 insertions(+)
create mode 100644 Documentation/devicetree/bindings/power/sifive,tmc.yaml
diff --git a/Documentation/devicetree/bindings/power/sifive,tmc.yaml b/Documentation/devicetree/bindings/power/sifive,tmc.yaml
new file mode 100644
index 000000000000..7ed4f290b94b
--- /dev/null
+++ b/Documentation/devicetree/bindings/power/sifive,tmc.yaml
@@ -0,0 +1,89 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/power/sifive,tmc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: SiFive Domain Management Controller
+
+maintainers:
+ - Cyan Yang <cyan.yang@...ive.com>
+ - Nick Hu <nick.hu@...ive.com>
+ - Samuel Holland <samuel.holland@...ive.com>
+
+description: |
+ This is the device tree binding for the following SiFive Domain Management Controllers.
+ - Tile Management Controller
+ - TMC0
+ - TMC1
+ - TMC2
+ - TMC3
+ - Subsystem Management Controller
+ - SMC0
+ - SMC1
+ - SMC2
+ - SMC3
+ - Cluster Management Controller
+ - CMC2
+ - CMC3
+ SiFive Domain Management Controllers support the SiFive Quiet Interface
+ Protocol (SQIP) starting from the Version 1. The control method is
+ different from the Version 0, making them incompatible.
+
+allOf:
+ - $ref: power-domain.yaml#
+
+properties:
+ compatible:
+ oneOf:
+ - items:
+ - {}
+ - pattern: "^sifive,[ts]mc0$"
+ - items:
+ - {}
+ - pattern: "^sifive,[ts]mc3$"
+ - pattern: "^sifive,[ts]mc2$"
+ - pattern: "^sifive,[ts]mc1$"
+ - items:
+ - {}
+ - pattern: "^sifive,[ts]mc2$"
+ - pattern: "^sifive,[ts]mc1$"
+ - items:
+ - {}
+ - pattern: "^sifive,[ts]mc1$"
+ - items:
+ - {}
+ - const: sifive,cmc3
+ - const: sifive,cmc2
+ - items:
+ - {}
+ - const: sifive,cmc2
+
+ reg:
+ maxItems: 1
+
+ sifive,feature-level:
+ description: |
+ Supported power features. This property is absent if the full set of features
+ is supported
+ $ref: /schemas/types.yaml#/definitions/string
+ enum: ["nopg", "ceasepg", "runonlypg"]
+
+ "#power-domain-cells":
+ const: 0
+
+if:
+ not:
+ properties:
+ compatible:
+ contains:
+ pattern: "^sifive,[tsc]mc3$"
+then:
+ properties:
+ sifive,feature-level: false
+
+required:
+ - compatible
+ - reg
+
+additionalProperties: false
--
2.17.1
Powered by blists - more mailing lists