[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250218161352.269237-1-simeddon@gmail.com>
Date: Tue, 18 Feb 2025 21:39:35 +0530
From: Siddharth Menon <simeddon@...il.com>
To: devicetree@...r.kernel.org,
andersson@...nel.org,
robh@...nel.org,
krzk+dt@...nel.org,
conor+dt@...nel.org
Cc: baolin.wang@...ux.alibaba.com,
linux-remoteproc@...r.kernel.org,
linux-kernel@...r.kernel.org,
BiscuitBobby <simeddon@...il.com>
Subject: [PATCH] dt-bindings: hwlock: Convert to dtschema
From: BiscuitBobby <simeddon@...il.com>
Convert the generic hwspinlock bindings to DT schema.
---
This is my first time converting bindings to dt schema, please let me
know if I have overlooked anything.
.../devicetree/bindings/hwlock/hwlock.txt | 59 -----------------
.../devicetree/bindings/hwlock/hwlock.yaml | 65 +++++++++++++++++++
2 files changed, 65 insertions(+), 59 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/hwlock/hwlock.txt
create mode 100644 Documentation/devicetree/bindings/hwlock/hwlock.yaml
diff --git a/Documentation/devicetree/bindings/hwlock/hwlock.txt b/Documentation/devicetree/bindings/hwlock/hwlock.txt
deleted file mode 100644
index 085d1f5c916a..000000000000
--- a/Documentation/devicetree/bindings/hwlock/hwlock.txt
+++ /dev/null
@@ -1,59 +0,0 @@
-Generic hwlock bindings
-=======================
-
-Generic bindings that are common to all the hwlock platform specific driver
-implementations.
-
-Please also look through the individual platform specific hwlock binding
-documentations for identifying any additional properties specific to that
-platform.
-
-hwlock providers:
-=================
-
-Required properties:
-- #hwlock-cells: Specifies the number of cells needed to represent a
- specific lock.
-
-hwlock users:
-=============
-
-Consumers that require specific hwlock(s) should specify them using the
-property "hwlocks", and an optional "hwlock-names" property.
-
-Required properties:
-- hwlocks: List of phandle to a hwlock provider node and an
- associated hwlock args specifier as indicated by
- #hwlock-cells. The list can have just a single hwlock
- or multiple hwlocks, with each hwlock represented by
- a phandle and a corresponding args specifier.
-
-Optional properties:
-- hwlock-names: List of hwlock name strings defined in the same order
- as the hwlocks, with one name per hwlock. Consumers can
- use the hwlock-names to match and get a specific hwlock.
-
-
-1. Example of a node using a single specific hwlock:
-
-The following example has a node requesting a hwlock in the bank defined by
-the node hwlock1. hwlock1 is a hwlock provider with an argument specifier
-of length 1.
-
- node {
- ...
- hwlocks = <&hwlock1 2>;
- ...
- };
-
-2. Example of a node using multiple specific hwlocks:
-
-The following example has a node requesting two hwlocks, a hwlock within
-the hwlock device node 'hwlock1' with #hwlock-cells value of 1, and another
-hwlock within the hwlock device node 'hwlock2' with #hwlock-cells value of 2.
-
- node {
- ...
- hwlocks = <&hwlock1 2>, <&hwlock2 0 3>;
- ...
- };
diff --git a/Documentation/devicetree/bindings/hwlock/hwlock.yaml b/Documentation/devicetree/bindings/hwlock/hwlock.yaml
new file mode 100644
index 000000000000..2492fdad3c6e
--- /dev/null
+++ b/Documentation/devicetree/bindings/hwlock/hwlock.yaml
@@ -0,0 +1,65 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/hwlock/hwlock.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Generic Hardware Lock (hwlock)
+
+description: |
+ Generic bindings that are common to all the hwlock platform specific driver
+ implementations.
+ Please also look through the individual platform specific hwlock binding
+ documentations for identifying any additional properties specific to that
+ platform.
+
+maintainers:
+ - Bjorn Andersson <andersson@...nel.org>
+ - Rob Herring <robh@...nel.org>
+ - Krzysztof Kozlowski <krzk+dt@...nel.org>
+ - Conor Dooley <conor+dt@...nel.org>
+
+properties:
+ $nodename:
+ pattern: "^hwlock(@.*)?"
+
+ "#hwlock-cells":
+ description: |
+ Specifies the number of cells needed to represent a specific lock.
+ minimum: 1
+
+ hwlocks:
+ description: |
+ List of phandle to a hwlock provider node and an associated hwlock args
+ specifier as indicated by #hwlock-cells. The list can have just a single
+ hwlock or multiple hwlocks, with each hwlock represented by a phandle and
+ a corresponding args specifier.
+
+ hwlock-names:
+ description: |
+ List of hwlock name strings defined in the same order as the hwlocks,
+ with one name per hwlock. Consumers can use the hwlock-names to match
+ and get a specific hwlock.
+
+patternProperties:
+ "^hwlock@[0-9a-f]+$":
+ type: object
+ description: Hardware lock provider node
+
+required:
+ - "#hwlock-cells"
+
+additionalProperties: true
+
+examples:
+ # Example 1: A node using a single specific hwlock
+ - |
+ node {
+ hwlocks = <&hwlock1 2>;
+ };
+
+ # Example 2: A node using multiple specific hwlocks
+ - |
+ node {
+ hwlocks = <&hwlock1 2>, <&hwlock2 0 3>;
+ };
--
2.48.1
Powered by blists - more mailing lists