From: Andre Przywara <andre.przywara@arm.com>
To: Rob Herring <robh@kernel.org>, devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
Maxime Ripard <mripard@kernel.org>,
Corey Minyard <minyard@acm.org>,
openipmi-developer@lists.sourceforge.net
Subject: [PATCH v3 7/8] dt-bindings: ipmi: Convert IPMI-SMIC bindings to json-schema
Date: Thu, 30 Apr 2020 22:10:53 +0100 [thread overview]
Message-ID: <20200430211054.30466-8-andre.przywara@arm.com> (raw)
In-Reply-To: <20200430211054.30466-1-andre.przywara@arm.com>
Convert the generic IPMI controller bindings to DT schema format
using json-schema.
The device_type property is deprecated for most node per the DT spec,
but at least the Linux driver matches on it, so I keep it in.
The Linux driver parses for some additional and optional properties,
but there are no in-tree users. Let's allow extra properties to cover
any other users.
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
---
.../devicetree/bindings/ipmi/ipmi-smic.txt | 25 --------
.../devicetree/bindings/ipmi/ipmi-smic.yaml | 63 +++++++++++++++++++
2 files changed, 63 insertions(+), 25 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/ipmi/ipmi-smic.txt
create mode 100644 Documentation/devicetree/bindings/ipmi/ipmi-smic.yaml
diff --git a/Documentation/devicetree/bindings/ipmi/ipmi-smic.txt b/Documentation/devicetree/bindings/ipmi/ipmi-smic.txt
deleted file mode 100644
index d5f1a877ed3e..000000000000
--- a/Documentation/devicetree/bindings/ipmi/ipmi-smic.txt
+++ /dev/null
@@ -1,25 +0,0 @@
-IPMI device
-
-Required properties:
-- compatible: should be one of ipmi-kcs, ipmi-smic, or ipmi-bt
-- device_type: should be ipmi
-- reg: Address and length of the register set for the device
-
-Optional properties:
-- interrupts: The interrupt for the device. Without this the interface
- is polled.
-- reg-size - The size of the register. Defaults to 1
-- reg-spacing - The number of bytes between register starts. Defaults to 1
-- reg-shift - The amount to shift the registers to the right to get the data
- into bit zero.
-
-Example:
-
-smic@fff3a000 {
- compatible = "ipmi-smic";
- device_type = "ipmi";
- reg = <0xfff3a000 0x1000>;
- interrupts = <0 24 4>;
- reg-size = <4>;
- reg-spacing = <4>;
-};
diff --git a/Documentation/devicetree/bindings/ipmi/ipmi-smic.yaml b/Documentation/devicetree/bindings/ipmi/ipmi-smic.yaml
new file mode 100644
index 000000000000..f0bb157e9417
--- /dev/null
+++ b/Documentation/devicetree/bindings/ipmi/ipmi-smic.yaml
@@ -0,0 +1,63 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/ipmi/ipmi-smic.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: IPMI device bindings
+
+description: IPMI device bindings
+
+maintainers:
+ - Corey Minyard <cminyard@mvista.com>
+
+properties:
+ compatible:
+ enum:
+ - ipmi-kcs
+ - ipmi-smic
+ - ipmi-bt
+
+ device_type:
+ items:
+ - const: "ipmi"
+
+ reg:
+ maxItems: 1
+
+ interrupts:
+ description: Interface is polled if this property is omitted.
+ maxItems: 1
+
+ reg-size:
+ description: The access width of the register in bytes. Defaults to 1.
+ allOf:
+ - $ref: /schemas/types.yaml#/definitions/uint32
+ - enum: [1, 2, 4, 8]
+
+ reg-spacing:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: The number of bytes between register starts. Defaults to 1.
+
+ reg-shift:
+ description: |
+ The amount of bits to shift the register content to the right to get
+ the data into bit zero.
+ allOf:
+ - $ref: /schemas/types.yaml#/definitions/uint32
+ - maximum: 56
+
+required:
+ - compatible
+ - reg
+
+examples:
+ - |
+ smic@fff3a000 {
+ compatible = "ipmi-smic";
+ device_type = "ipmi";
+ reg = <0xfff3a000 0x1000>;
+ interrupts = <0 24 4>;
+ reg-size = <4>;
+ reg-spacing = <4>;
+ };
--
2.17.1
next prev parent reply other threads:[~2020-04-30 21:11 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-30 21:10 [PATCH v3 0/8] dt-bindings: calxeda: Convert bindings to json-schema Andre Przywara
2020-04-30 21:10 ` [PATCH v3 1/8] dt-bindings: clock: Convert Calxeda clock " Andre Przywara
2020-05-03 15:55 ` Rob Herring
2020-04-30 21:10 ` [PATCH v3 2/8] dt-bindings: sata: Convert Calxeda SATA controller " Andre Przywara
2020-05-03 15:55 ` Rob Herring
2020-04-30 21:10 ` [PATCH v3 3/8] dt-bindings: net: Convert Calxeda Ethernet binding " Andre Przywara
2020-05-03 15:55 ` Rob Herring
2020-04-30 21:10 ` [PATCH v3 4/8] dt-bindings: phy: Convert Calxeda ComboPHY " Andre Przywara
2020-05-03 15:55 ` Rob Herring
2020-04-30 21:10 ` [PATCH v3 5/8] dt-bindings: arm: Convert Calxeda L2 cache controller " Andre Przywara
2020-05-03 15:55 ` Rob Herring
2020-04-30 21:10 ` [PATCH v3 6/8] dt-bindings: memory-controllers: Convert Calxeda DDR " Andre Przywara
2020-05-03 15:56 ` Rob Herring
2020-04-30 21:10 ` Andre Przywara [this message]
2020-05-03 15:56 ` [PATCH v3 7/8] dt-bindings: ipmi: Convert IPMI-SMIC bindings " Rob Herring
2020-04-30 21:10 ` [PATCH v3 8/8] dt-bindings: arm: Add Calxeda system registers json-schema binding Andre Przywara
2020-05-03 15:56 ` Rob Herring
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200430211054.30466-8-andre.przywara@arm.com \
--to=andre.przywara@arm.com \
--cc=devicetree@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=minyard@acm.org \
--cc=mripard@kernel.org \
--cc=openipmi-developer@lists.sourceforge.net \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox