2021-07-19 02:34:24

by Kunihiko Hayashi

[permalink] [raw]
Subject: [PATCH v2 0/2] dt-bindings: Update nvmem and UniPhier eFuse bindings

This patch series intend to convert UniPhier eFuse bindings to json-schema, and
extend expression of sub nodes to indicate bit position.

Changes in v1:
- Add patternProperties extension patch
- Remove "reg" and "bits" properties that exist in nvmem.yaml
- Replace "additionalProperties: false" with "unevaluatedProperties: false"

Kunihiko Hayashi (2):
dt-bindings: nvmem: Extend patternProperties to optionally indicate
bit position
dt-bindings: nvmem: Convert UniPhier eFuse bindings to json-schema

Documentation/devicetree/bindings/nvmem/nvmem.yaml | 2 +-
.../bindings/nvmem/socionext,uniphier-efuse.yaml | 95 ++++++++++++++++++++++
.../devicetree/bindings/nvmem/uniphier-efuse.txt | 49 -----------
3 files changed, 96 insertions(+), 50 deletions(-)
create mode 100644 Documentation/devicetree/bindings/nvmem/socionext,uniphier-efuse.yaml
delete mode 100644 Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt

--
2.7.4


2021-07-19 02:34:27

by Kunihiko Hayashi

[permalink] [raw]
Subject: [PATCH v2 2/2] dt-bindings: nvmem: Convert UniPhier eFuse bindings to json-schema

Convert the UniPhier eFuse binding to DT schema format.

Cc: Keiji Hayashibara <[email protected]>
Signed-off-by: Kunihiko Hayashi <[email protected]>
---
.../bindings/nvmem/socionext,uniphier-efuse.yaml | 95 ++++++++++++++++++++++
.../devicetree/bindings/nvmem/uniphier-efuse.txt | 49 -----------
2 files changed, 95 insertions(+), 49 deletions(-)
create mode 100644 Documentation/devicetree/bindings/nvmem/socionext,uniphier-efuse.yaml
delete mode 100644 Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt

diff --git a/Documentation/devicetree/bindings/nvmem/socionext,uniphier-efuse.yaml b/Documentation/devicetree/bindings/nvmem/socionext,uniphier-efuse.yaml
new file mode 100644
index 0000000..2578e39
--- /dev/null
+++ b/Documentation/devicetree/bindings/nvmem/socionext,uniphier-efuse.yaml
@@ -0,0 +1,95 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/nvmem/socionext,uniphier-efuse.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Socionext UniPhier eFuse bindings
+
+maintainers:
+ - Keiji Hayashibara <[email protected]>
+ - Kunihiko Hayashi <[email protected]>
+
+allOf:
+ - $ref: "nvmem.yaml#"
+
+properties:
+ "#address-cells": true
+ "#size-cells": true
+
+ compatible:
+ const: socionext,uniphier-efuse
+
+ reg:
+ maxItems: 1
+
+required:
+ - compatible
+ - reg
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ // The UniPhier eFuse should be a subnode of a "soc-glue" node.
+
+ soc-glue@5f900000 {
+ compatible = "simple-mfd";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges = <0x0 0x5f900000 0x2000>;
+
+ efuse@100 {
+ compatible = "socionext,uniphier-efuse";
+ reg = <0x100 0x28>;
+ };
+
+ efuse@200 {
+ compatible = "socionext,uniphier-efuse";
+ reg = <0x200 0x68>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ /* Data cells */
+ usb_rterm0: trim@54,4 {
+ reg = <0x54 1>;
+ bits = <4 2>;
+ };
+ usb_rterm1: trim@55,4 {
+ reg = <0x55 1>;
+ bits = <4 2>;
+ };
+ usb_rterm2: trim@58,4 {
+ reg = <0x58 1>;
+ bits = <4 2>;
+ };
+ usb_rterm3: trim@59,4 {
+ reg = <0x59 1>;
+ bits = <4 2>;
+ };
+ usb_sel_t0: trim@54,0 {
+ reg = <0x54 1>;
+ bits = <0 4>;
+ };
+ usb_sel_t1: trim@55,0 {
+ reg = <0x55 1>;
+ bits = <0 4>;
+ };
+ usb_sel_t2: trim@58,0 {
+ reg = <0x58 1>;
+ bits = <0 4>;
+ };
+ usb_sel_t3: trim@59,0 {
+ reg = <0x59 1>;
+ bits = <0 4>;
+ };
+ usb_hs_i0: trim@56,0 {
+ reg = <0x56 1>;
+ bits = <0 4>;
+ };
+ usb_hs_i2: trim@5a,0 {
+ reg = <0x5a 1>;
+ bits = <0 4>;
+ };
+ };
+ };
diff --git a/Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt b/Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt
deleted file mode 100644
index eccf490..0000000
--- a/Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt
+++ /dev/null
@@ -1,49 +0,0 @@
-= UniPhier eFuse device tree bindings =
-
-This UniPhier eFuse must be under soc-glue.
-
-Required properties:
-- compatible: should be "socionext,uniphier-efuse"
-- reg: should contain the register location and length
-
-= Data cells =
-Are child nodes of efuse, bindings of which as described in
-bindings/nvmem/nvmem.txt
-
-Example:
-
- soc-glue@5f900000 {
- compatible = "socionext,uniphier-ld20-soc-glue-debug",
- "simple-mfd";
- #address-cells = <1>;
- #size-cells = <1>;
- ranges = <0x0 0x5f900000 0x2000>;
-
- efuse@100 {
- compatible = "socionext,uniphier-efuse";
- reg = <0x100 0x28>;
- };
-
- efuse@200 {
- compatible = "socionext,uniphier-efuse";
- reg = <0x200 0x68>;
- #address-cells = <1>;
- #size-cells = <1>;
-
- /* Data cells */
- usb_mon: usb-mon@54 {
- reg = <0x54 0xc>;
- };
- };
- };
-
-= Data consumers =
-Are device nodes which consume nvmem data cells.
-
-Example:
-
- usb {
- ...
- nvmem-cells = <&usb_mon>;
- nvmem-cell-names = "usb_mon";
- }
--
2.7.4

2021-07-29 18:51:28

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH v2 2/2] dt-bindings: nvmem: Convert UniPhier eFuse bindings to json-schema

On Mon, 19 Jul 2021 11:31:04 +0900, Kunihiko Hayashi wrote:
> Convert the UniPhier eFuse binding to DT schema format.
>
> Cc: Keiji Hayashibara <[email protected]>
> Signed-off-by: Kunihiko Hayashi <[email protected]>
> ---
> .../bindings/nvmem/socionext,uniphier-efuse.yaml | 95 ++++++++++++++++++++++
> .../devicetree/bindings/nvmem/uniphier-efuse.txt | 49 -----------
> 2 files changed, 95 insertions(+), 49 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/nvmem/socionext,uniphier-efuse.yaml
> delete mode 100644 Documentation/devicetree/bindings/nvmem/uniphier-efuse.txt
>

Applied, thanks!