linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/2] dt-bindings: irqchip: convert Samsung Exynos IRQ combiner to dtschema
@ 2021-08-11  8:43 Krzysztof Kozlowski
  2021-08-11  8:43 ` [PATCH 2/2] dt-bindings: rng: convert Samsung Exynos TRNG " Krzysztof Kozlowski
  2021-08-17 21:13 ` [PATCH 1/2] dt-bindings: irqchip: convert Samsung Exynos IRQ combiner " Rob Herring
  0 siblings, 2 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2021-08-11  8:43 UTC (permalink / raw)
  To: Thomas Gleixner, Marc Zyngier, Rob Herring, Krzysztof Kozlowski,
	Matt Mackall, Herbert Xu, Łukasz Stelmach, linux-kernel,
	devicetree, linux-arm-kernel, linux-samsung-soc, linux-crypto

Convert Samsung Exynos SoC Interrupt Combiner Controller bindings to DT
schema format using json-schema.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
---
 .../samsung,exynos4210-combiner.txt           | 50 ----------
 .../samsung,exynos4210-combiner.yaml          | 96 +++++++++++++++++++
 2 files changed, 96 insertions(+), 50 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/interrupt-controller/samsung,exynos4210-combiner.txt
 create mode 100644 Documentation/devicetree/bindings/interrupt-controller/samsung,exynos4210-combiner.yaml

diff --git a/Documentation/devicetree/bindings/interrupt-controller/samsung,exynos4210-combiner.txt b/Documentation/devicetree/bindings/interrupt-controller/samsung,exynos4210-combiner.txt
deleted file mode 100644
index 19af687858a1..000000000000
--- a/Documentation/devicetree/bindings/interrupt-controller/samsung,exynos4210-combiner.txt
+++ /dev/null
@@ -1,50 +0,0 @@
-* Samsung Exynos Interrupt Combiner Controller
-
-Samsung's Exynos4 architecture includes a interrupt combiner controller which
-can combine interrupt sources as a group and provide a single interrupt request
-for the group. The interrupt request from each group are connected to a parent
-interrupt controller, such as GIC in case of Exynos4210.
-
-The interrupt combiner controller consists of multiple combiners. Up to eight
-interrupt sources can be connected to a combiner. The combiner outputs one
-combined interrupt for its eight interrupt sources. The combined interrupt
-is usually connected to a parent interrupt controller.
-
-A single node in the device tree is used to describe the interrupt combiner
-controller module (which includes multiple combiners). A combiner in the
-interrupt controller module shares config/control registers with other
-combiners. For example, a 32-bit interrupt enable/disable config register
-can accommodate up to 4 interrupt combiners (with each combiner supporting
-up to 8 interrupt sources).
-
-Required properties:
-- compatible: should be "samsung,exynos4210-combiner".
-- interrupt-controller: Identifies the node as an interrupt controller.
-- #interrupt-cells: should be <2>. The meaning of the cells are
-	* First Cell: Combiner Group Number.
-	* Second Cell: Interrupt number within the group.
-- reg: Base address and size of interrupt combiner registers.
-- interrupts: The list of interrupts generated by the combiners which are then
-    connected to a parent interrupt controller. The format of the interrupt
-    specifier depends in the interrupt parent controller.
-
-Optional properties:
-- samsung,combiner-nr: The number of interrupt combiners supported. If this
-  property is not specified, the default number of combiners is assumed
-  to be 16.
-
-
-Example:
-
-	The following is a an example from the Exynos4210 SoC dtsi file.
-
-	combiner:interrupt-controller@10440000 {
-		compatible = "samsung,exynos4210-combiner";
-		interrupt-controller;
-		#interrupt-cells = <2>;
-		reg = <0x10440000 0x1000>;
-		interrupts = <0 0 0>, <0 1 0>, <0 2 0>, <0 3 0>,
-			     <0 4 0>, <0 5 0>, <0 6 0>, <0 7 0>,
-			     <0 8 0>, <0 9 0>, <0 10 0>, <0 11 0>,
-			     <0 12 0>, <0 13 0>, <0 14 0>, <0 15 0>;
-	};
diff --git a/Documentation/devicetree/bindings/interrupt-controller/samsung,exynos4210-combiner.yaml b/Documentation/devicetree/bindings/interrupt-controller/samsung,exynos4210-combiner.yaml
new file mode 100644
index 000000000000..d631b7589d50
--- /dev/null
+++ b/Documentation/devicetree/bindings/interrupt-controller/samsung,exynos4210-combiner.yaml
@@ -0,0 +1,96 @@
+# SPDX-License-Identifier: GPL-2.0
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/interrupt-controller/samsung,exynos4210-combiner.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Samsung Exynos SoC Interrupt Combiner Controller
+
+maintainers:
+  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
+
+description: |
+  Samsung's Exynos4 architecture includes a interrupt combiner controller which
+  can combine interrupt sources as a group and provide a single interrupt
+  request for the group. The interrupt request from each group are connected to
+  a parent interrupt controller, such as GIC in case of Exynos4210.
+
+  The interrupt combiner controller consists of multiple combiners. Up to eight
+  interrupt sources can be connected to a combiner. The combiner outputs one
+  combined interrupt for its eight interrupt sources. The combined interrupt is
+  usually connected to a parent interrupt controller.
+
+  A single node in the device tree is used to describe the interrupt combiner
+  controller module (which includes multiple combiners). A combiner in the
+  interrupt controller module shares config/control registers with other
+  combiners. For example, a 32-bit interrupt enable/disable config register can
+  accommodate up to 4 interrupt combiners (with each combiner supporting up to
+  8 interrupt sources).
+
+allOf:
+  - $ref: /schemas/interrupt-controller.yaml#
+
+properties:
+  compatible:
+    const: samsung,exynos4210-combiner
+
+  interrupt-controller: true
+
+  interrupts:
+    minItems: 8
+    maxItems: 32
+
+  "#interrupt-cells":
+    description: |
+      The meaning of the cells are:
+        * First Cell: Combiner Group Number.
+        * Second Cell: Interrupt number within the group.
+    const: 2
+
+  reg:
+    maxItems: 1
+
+  samsung,combiner-nr:
+    description: |
+      The number of interrupt combiners supported.  Should match number
+      of interrupts set in "interrupts" property.
+    $ref: /schemas/types.yaml#/definitions/uint32
+    minimum: 8
+    maximum: 32
+    default: 16
+
+required:
+  - compatible
+  - interrupt-controller
+  - interrupts
+  - "#interrupt-cells"
+  - reg
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/interrupt-controller/arm-gic.h>
+
+    interrupt-controller@10440000 {
+        compatible = "samsung,exynos4210-combiner";
+        interrupt-controller;
+        #interrupt-cells = <2>;
+        reg = <0x10440000 0x1000>;
+        interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
+                     <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
+                     <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
+                     <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
+                     <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
+                     <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
+                     <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
+                     <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,
+                     <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
+                     <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
+                     <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
+                     <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
+                     <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
+                     <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
+                     <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
+                     <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
+    };
-- 
2.30.2


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 2/2] dt-bindings: rng: convert Samsung Exynos TRNG to dtschema
  2021-08-11  8:43 [PATCH 1/2] dt-bindings: irqchip: convert Samsung Exynos IRQ combiner to dtschema Krzysztof Kozlowski
@ 2021-08-11  8:43 ` Krzysztof Kozlowski
       [not found]   ` <CGME20210817095553eucas1p174e68fc6d7cfad9c2fd34f729272b01a@eucas1p1.samsung.com>
  2021-08-17 21:15   ` Rob Herring
  2021-08-17 21:13 ` [PATCH 1/2] dt-bindings: irqchip: convert Samsung Exynos IRQ combiner " Rob Herring
  1 sibling, 2 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2021-08-11  8:43 UTC (permalink / raw)
  To: Thomas Gleixner, Marc Zyngier, Rob Herring, Krzysztof Kozlowski,
	Matt Mackall, Herbert Xu, Łukasz Stelmach, linux-kernel,
	devicetree, linux-arm-kernel, linux-samsung-soc, linux-crypto

Convert Samsung Exynos SoC True Random Number Generator bindings to DT
schema format using json-schema.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
---
 .../bindings/rng/samsung,exynos5250-trng.txt  | 17 -------
 .../bindings/rng/samsung,exynos5250-trng.yaml | 44 +++++++++++++++++++
 MAINTAINERS                                   |  2 +-
 3 files changed, 45 insertions(+), 18 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
 create mode 100644 Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml

diff --git a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
deleted file mode 100644
index 5a613a4ec780..000000000000
--- a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
+++ /dev/null
@@ -1,17 +0,0 @@
-Exynos True Random Number Generator
-
-Required properties:
-
-- compatible  : Should be "samsung,exynos5250-trng".
-- reg         : Specifies base physical address and size of the registers map.
-- clocks      : Phandle to clock-controller plus clock-specifier pair.
-- clock-names : "secss" as a clock name.
-
-Example:
-
-	rng@10830600 {
-		compatible = "samsung,exynos5250-trng";
-		reg = <0x10830600 0x100>;
-		clocks = <&clock CLK_SSS>;
-		clock-names = "secss";
-	};
diff --git a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
new file mode 100644
index 000000000000..a50c34d5d199
--- /dev/null
+++ b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
@@ -0,0 +1,44 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/rng/samsung,exynos5250-trng.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Samsung Exynos SoC True Random Number Generator
+
+maintainers:
+  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
+  - Łukasz Stelmach <l.stelmach@samsung.com>
+
+properties:
+  compatible:
+    const: samsung,exynos5250-trng
+
+  clocks:
+    maxItems: 1
+
+  clock-names:
+    items:
+      - const: secss
+
+  reg:
+    maxItems: 1
+
+required:
+  - compatible
+  - clocks
+  - clock-names
+  - reg
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/exynos5250.h>
+
+    rng@10830600 {
+        compatible = "samsung,exynos5250-trng";
+        reg = <0x10830600 0x100>;
+        clocks = <&clock CLK_SSS>;
+        clock-names = "secss";
+    };
diff --git a/MAINTAINERS b/MAINTAINERS
index 4477215ef649..ebdb07a49b02 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -16398,7 +16398,7 @@ SAMSUNG EXYNOS TRUE RANDOM NUMBER GENERATOR (TRNG) DRIVER
 M:	Łukasz Stelmach <l.stelmach@samsung.com>
 L:	linux-samsung-soc@vger.kernel.org
 S:	Maintained
-F:	Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
+F:	Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
 F:	drivers/char/hw_random/exynos-trng.c
 
 SAMSUNG FRAMEBUFFER DRIVER
-- 
2.30.2


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH 2/2] dt-bindings: rng: convert Samsung Exynos TRNG to dtschema
       [not found]   ` <CGME20210817095553eucas1p174e68fc6d7cfad9c2fd34f729272b01a@eucas1p1.samsung.com>
@ 2021-08-17  9:55     ` Lukasz Stelmach
  2021-08-17 10:05       ` Krzysztof Kozlowski
  0 siblings, 1 reply; 11+ messages in thread
From: Lukasz Stelmach @ 2021-08-17  9:55 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Thomas Gleixner, Marc Zyngier, Rob Herring, Matt Mackall,
	Herbert Xu, linux-kernel, devicetree, linux-arm-kernel,
	linux-samsung-soc, linux-crypto

[-- Attachment #1: Type: text/plain, Size: 3940 bytes --]

It was <2021-08-11 śro 10:43>, when Krzysztof Kozlowski wrote:
> Convert Samsung Exynos SoC True Random Number Generator bindings to DT
> schema format using json-schema.
>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
> ---
>  .../bindings/rng/samsung,exynos5250-trng.txt  | 17 -------
>  .../bindings/rng/samsung,exynos5250-trng.yaml | 44 +++++++++++++++++++
>  MAINTAINERS                                   |  2 +-
>  3 files changed, 45 insertions(+), 18 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>  create mode 100644 Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>
> diff --git
> a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
> b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
> deleted file mode 100644
> index 5a613a4ec780..000000000000
> --- a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
> +++ /dev/null
> @@ -1,17 +0,0 @@
> -Exynos True Random Number Generator
> -
> -Required properties:
> -
> -- compatible  : Should be "samsung,exynos5250-trng".
> -- reg         : Specifies base physical address and size of the registers map.
> -- clocks      : Phandle to clock-controller plus clock-specifier pair.
> -- clock-names : "secss" as a clock name.
> -
> -Example:
> -
> -	rng@10830600 {
> -		compatible = "samsung,exynos5250-trng";
> -		reg = <0x10830600 0x100>;
> -		clocks = <&clock CLK_SSS>;
> -		clock-names = "secss";
> -	};
> diff --git
> a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
> b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
> new file mode 100644
> index 000000000000..a50c34d5d199
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
> @@ -0,0 +1,44 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id:
> https://protect2.fireeye.com/v1/url?k=f38ca35b-ac179a0d-f38d2814-0cc47a31ce52-1faa1ecb65482b8a&q=1&e=8b3490f9-a5fc-4da0-b2ee-7b0aec781403&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2Frng%2Fsamsung%2Cexynos5250-trng.yaml%23
> +$schema:
> https://protect2.fireeye.com/v1/url?k=9409519d-cb9268cb-9408dad2-0cc47a31ce52-12394c4409905980&q=1&e=8b3490f9-a5fc-4da0-b2ee-7b0aec781403&u=http%3A%2F%2Fdevicetree.org%2Fmeta-schemas%2Fcore.yaml%23
> +
> +title: Samsung Exynos SoC True Random Number Generator
> +
> +maintainers:
> +  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
> +  - Łukasz Stelmach <l.stelmach@samsung.com>
> +
> +properties:
> +  compatible:
> +    const: samsung,exynos5250-trng
> +
> +  clocks:
> +    maxItems: 1

How about copying description from above into the description: property?

> +
> +  clock-names:
> +    items:
> +      - const: secss
> +
> +  reg:
> +    maxItems: 1

ditto.

> +
> +required:
> +  - compatible
> +  - clocks
> +  - clock-names
> +  - reg
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/clock/exynos5250.h>
> +
> +    rng@10830600 {
> +        compatible = "samsung,exynos5250-trng";
> +        reg = <0x10830600 0x100>;
> +        clocks = <&clock CLK_SSS>;
> +        clock-names = "secss";
> +    };
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 4477215ef649..ebdb07a49b02 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -16398,7 +16398,7 @@ SAMSUNG EXYNOS TRUE RANDOM NUMBER GENERATOR (TRNG) DRIVER
>  M:	Łukasz Stelmach <l.stelmach@samsung.com>
>  L:	linux-samsung-soc@vger.kernel.org
>  S:	Maintained
> -F:	Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
> +F:	Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>  F:	drivers/char/hw_random/exynos-trng.c
>  
>  SAMSUNG FRAMEBUFFER DRIVER

-- 
Łukasz Stelmach
Samsung R&D Institute Poland
Samsung Electronics

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2/2] dt-bindings: rng: convert Samsung Exynos TRNG to dtschema
  2021-08-17  9:55     ` Lukasz Stelmach
@ 2021-08-17 10:05       ` Krzysztof Kozlowski
       [not found]         ` <CGME20210817123507eucas1p120be1e5cc942e20bed39b6d810ccdbd1@eucas1p1.samsung.com>
  0 siblings, 1 reply; 11+ messages in thread
From: Krzysztof Kozlowski @ 2021-08-17 10:05 UTC (permalink / raw)
  To: Lukasz Stelmach
  Cc: Thomas Gleixner, Marc Zyngier, Rob Herring, Matt Mackall,
	Herbert Xu, linux-kernel, devicetree, linux-arm-kernel,
	linux-samsung-soc, linux-crypto

On 17/08/2021 11:55, Lukasz Stelmach wrote:
> It was <2021-08-11 śro 10:43>, when Krzysztof Kozlowski wrote:
>> Convert Samsung Exynos SoC True Random Number Generator bindings to DT
>> schema format using json-schema.
>>
>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>> ---
>>  .../bindings/rng/samsung,exynos5250-trng.txt  | 17 -------
>>  .../bindings/rng/samsung,exynos5250-trng.yaml | 44 +++++++++++++++++++
>>  MAINTAINERS                                   |  2 +-
>>  3 files changed, 45 insertions(+), 18 deletions(-)
>>  delete mode 100644 Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>>  create mode 100644 Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>>
>> diff --git
>> a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>> b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>> deleted file mode 100644
>> index 5a613a4ec780..000000000000
>> --- a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>> +++ /dev/null
>> @@ -1,17 +0,0 @@
>> -Exynos True Random Number Generator
>> -
>> -Required properties:
>> -
>> -- compatible  : Should be "samsung,exynos5250-trng".
>> -- reg         : Specifies base physical address and size of the registers map.
>> -- clocks      : Phandle to clock-controller plus clock-specifier pair.
>> -- clock-names : "secss" as a clock name.
>> -
>> -Example:
>> -
>> -	rng@10830600 {
>> -		compatible = "samsung,exynos5250-trng";
>> -		reg = <0x10830600 0x100>;
>> -		clocks = <&clock CLK_SSS>;
>> -		clock-names = "secss";
>> -	};
>> diff --git
>> a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>> b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>> new file mode 100644
>> index 000000000000..a50c34d5d199
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>> @@ -0,0 +1,44 @@
>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id:
>> https://protect2.fireeye.com/v1/url?k=f38ca35b-ac179a0d-f38d2814-0cc47a31ce52-1faa1ecb65482b8a&q=1&e=8b3490f9-a5fc-4da0-b2ee-7b0aec781403&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2Frng%2Fsamsung%2Cexynos5250-trng.yaml%23
>> +$schema:
>> https://protect2.fireeye.com/v1/url?k=9409519d-cb9268cb-9408dad2-0cc47a31ce52-12394c4409905980&q=1&e=8b3490f9-a5fc-4da0-b2ee-7b0aec781403&u=http%3A%2F%2Fdevicetree.org%2Fmeta-schemas%2Fcore.yaml%23
>> +
>> +title: Samsung Exynos SoC True Random Number Generator
>> +
>> +maintainers:
>> +  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>> +  - Łukasz Stelmach <l.stelmach@samsung.com>
>> +
>> +properties:
>> +  compatible:
>> +    const: samsung,exynos5250-trng
>> +
>> +  clocks:
>> +    maxItems: 1
> 
> How about copying description from above into the description: property?

But what to copy? There is no description except generic clock bindings.

> 
>> +
>> +  clock-names:
>> +    items:
>> +      - const: secss
>> +
>> +  reg:
>> +    maxItems: 1
> 
> ditto.

The same, I have no clue what to copy. It's obvious that reg contains
"physical address and size of the registers map".


Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2/2] dt-bindings: rng: convert Samsung Exynos TRNG to dtschema
       [not found]         ` <CGME20210817123507eucas1p120be1e5cc942e20bed39b6d810ccdbd1@eucas1p1.samsung.com>
@ 2021-08-17 12:34           ` Lukasz Stelmach
  2021-08-17 14:07             ` Krzysztof Kozlowski
  0 siblings, 1 reply; 11+ messages in thread
From: Lukasz Stelmach @ 2021-08-17 12:34 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Thomas Gleixner, Marc Zyngier, Rob Herring, Matt Mackall,
	Herbert Xu, linux-kernel, devicetree, linux-arm-kernel,
	linux-samsung-soc, linux-crypto

[-- Attachment #1: Type: text/plain, Size: 3562 bytes --]

It was <2021-08-17 wto 12:05>, when Krzysztof Kozlowski wrote:
> On 17/08/2021 11:55, Lukasz Stelmach wrote:
>> It was <2021-08-11 śro 10:43>, when Krzysztof Kozlowski wrote:
>>> Convert Samsung Exynos SoC True Random Number Generator bindings to DT
>>> schema format using json-schema.
>>>
>>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>>> ---
>>>  .../bindings/rng/samsung,exynos5250-trng.txt  | 17 -------
>>>  .../bindings/rng/samsung,exynos5250-trng.yaml | 44 +++++++++++++++++++
>>>  MAINTAINERS                                   |  2 +-
>>>  3 files changed, 45 insertions(+), 18 deletions(-)
>>>  delete mode 100644 Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>>>  create mode 100644 Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>>>
>>> diff --git
>>> a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>>> b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>>> deleted file mode 100644
>>> index 5a613a4ec780..000000000000
>>> --- a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>>> +++ /dev/null
>>> @@ -1,17 +0,0 @@
>>> -Exynos True Random Number Generator
>>> -
>>> -Required properties:
>>> -
>>> -- compatible  : Should be "samsung,exynos5250-trng".
>>> -- reg         : Specifies base physical address and size of the registers map.
>>> -- clocks      : Phandle to clock-controller plus clock-specifier pair.
>>> -- clock-names : "secss" as a clock name.
>>> -
>>> -Example:
>>> -
>>> -	rng@10830600 {
>>> -		compatible = "samsung,exynos5250-trng";
>>> -		reg = <0x10830600 0x100>;
>>> -		clocks = <&clock CLK_SSS>;
>>> -		clock-names = "secss";
>>> -	};
>>> diff --git
>>> a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>>> b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>>> new file mode 100644
>>> index 000000000000..a50c34d5d199
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>>> @@ -0,0 +1,44 @@
>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>>> +%YAML 1.2
>>> +---
>>> +$id:
>>> https://protect2.fireeye.com/v1/url?k=f38ca35b-ac179a0d-f38d2814-0cc47a31ce52-1faa1ecb65482b8a&q=1&e=8b3490f9-a5fc-4da0-b2ee-7b0aec781403&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2Frng%2Fsamsung%2Cexynos5250-trng.yaml%23
>>> +$schema:
>>> https://protect2.fireeye.com/v1/url?k=9409519d-cb9268cb-9408dad2-0cc47a31ce52-12394c4409905980&q=1&e=8b3490f9-a5fc-4da0-b2ee-7b0aec781403&u=http%3A%2F%2Fdevicetree.org%2Fmeta-schemas%2Fcore.yaml%23
>>> +
>>> +title: Samsung Exynos SoC True Random Number Generator
>>> +
>>> +maintainers:
>>> +  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>>> +  - Łukasz Stelmach <l.stelmach@samsung.com>
>>> +
>>> +properties:
>>> +  compatible:
>>> +    const: samsung,exynos5250-trng
>>> +
>>> +  clocks:
>>> +    maxItems: 1
>> 
>> How about copying description from above into the description: property?
>
> But what to copy? There is no description except generic clock bindings.
>

The description that "was" in the txt file.

>> 
>>> +
>>> +  clock-names:
>>> +    items:
>>> +      - const: secss
>>> +
>>> +  reg:
>>> +    maxItems: 1
>> 
>> ditto.
>
> The same, I have no clue what to copy. It's obvious that reg contains
> "physical address and size of the registers map".
>
>
> Best regards,
> Krzysztof
>
>

-- 
Łukasz Stelmach
Samsung R&D Institute Poland
Samsung Electronics

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2/2] dt-bindings: rng: convert Samsung Exynos TRNG to dtschema
  2021-08-17 12:34           ` Lukasz Stelmach
@ 2021-08-17 14:07             ` Krzysztof Kozlowski
       [not found]               ` <CGME20210817221734eucas1p2e4a0aa41406137b90e49230371b92ac6@eucas1p2.samsung.com>
  0 siblings, 1 reply; 11+ messages in thread
From: Krzysztof Kozlowski @ 2021-08-17 14:07 UTC (permalink / raw)
  To: Lukasz Stelmach
  Cc: Thomas Gleixner, Marc Zyngier, Rob Herring, Matt Mackall,
	Herbert Xu, linux-kernel, devicetree, linux-arm-kernel,
	linux-samsung-soc, linux-crypto

On 17/08/2021 14:34, Lukasz Stelmach wrote:
> It was <2021-08-17 wto 12:05>, when Krzysztof Kozlowski wrote:
>> On 17/08/2021 11:55, Lukasz Stelmach wrote:
>>> It was <2021-08-11 śro 10:43>, when Krzysztof Kozlowski wrote:
>>>> Convert Samsung Exynos SoC True Random Number Generator bindings to DT
>>>> schema format using json-schema.
>>>>
>>>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>>>> ---
>>>>  .../bindings/rng/samsung,exynos5250-trng.txt  | 17 -------
>>>>  .../bindings/rng/samsung,exynos5250-trng.yaml | 44 +++++++++++++++++++
>>>>  MAINTAINERS                                   |  2 +-
>>>>  3 files changed, 45 insertions(+), 18 deletions(-)
>>>>  delete mode 100644 Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>>>>  create mode 100644 Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>>>>
>>>> diff --git
>>>> a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>>>> b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>>>> deleted file mode 100644
>>>> index 5a613a4ec780..000000000000
>>>> --- a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>>>> +++ /dev/null
>>>> @@ -1,17 +0,0 @@
>>>> -Exynos True Random Number Generator
>>>> -
>>>> -Required properties:
>>>> -
>>>> -- compatible  : Should be "samsung,exynos5250-trng".
>>>> -- reg         : Specifies base physical address and size of the registers map.
>>>> -- clocks      : Phandle to clock-controller plus clock-specifier pair.
>>>> -- clock-names : "secss" as a clock name.
>>>> -
>>>> -Example:
>>>> -
>>>> -	rng@10830600 {
>>>> -		compatible = "samsung,exynos5250-trng";
>>>> -		reg = <0x10830600 0x100>;
>>>> -		clocks = <&clock CLK_SSS>;
>>>> -		clock-names = "secss";
>>>> -	};
>>>> diff --git
>>>> a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>>>> b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>>>> new file mode 100644
>>>> index 000000000000..a50c34d5d199
>>>> --- /dev/null
>>>> +++ b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>>>> @@ -0,0 +1,44 @@
>>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>>>> +%YAML 1.2
>>>> +---
>>>> +$id:
>>>> https://protect2.fireeye.com/v1/url?k=f38ca35b-ac179a0d-f38d2814-0cc47a31ce52-1faa1ecb65482b8a&q=1&e=8b3490f9-a5fc-4da0-b2ee-7b0aec781403&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2Frng%2Fsamsung%2Cexynos5250-trng.yaml%23
>>>> +$schema:
>>>> https://protect2.fireeye.com/v1/url?k=9409519d-cb9268cb-9408dad2-0cc47a31ce52-12394c4409905980&q=1&e=8b3490f9-a5fc-4da0-b2ee-7b0aec781403&u=http%3A%2F%2Fdevicetree.org%2Fmeta-schemas%2Fcore.yaml%23
>>>> +
>>>> +title: Samsung Exynos SoC True Random Number Generator
>>>> +
>>>> +maintainers:
>>>> +  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>>>> +  - Łukasz Stelmach <l.stelmach@samsung.com>
>>>> +
>>>> +properties:
>>>> +  compatible:
>>>> +    const: samsung,exynos5250-trng
>>>> +
>>>> +  clocks:
>>>> +    maxItems: 1
>>>
>>> How about copying description from above into the description: property?
>>
>> But what to copy? There is no description except generic clock bindings.
>>
> 
> The description that "was" in the txt file.

But there was no description of fields except copy&paste of the core
schema. Do you describe C code like:

...
/* unsigned int is a integer number greater or equal 0 */
unsigned int i;
...


Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 1/2] dt-bindings: irqchip: convert Samsung Exynos IRQ combiner to dtschema
  2021-08-11  8:43 [PATCH 1/2] dt-bindings: irqchip: convert Samsung Exynos IRQ combiner to dtschema Krzysztof Kozlowski
  2021-08-11  8:43 ` [PATCH 2/2] dt-bindings: rng: convert Samsung Exynos TRNG " Krzysztof Kozlowski
@ 2021-08-17 21:13 ` Rob Herring
  1 sibling, 0 replies; 11+ messages in thread
From: Rob Herring @ 2021-08-17 21:13 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Matt Mackall, linux-arm-kernel, Marc Zyngier, linux-kernel,
	linux-crypto, Rob Herring, devicetree, Thomas Gleixner,
	Łukasz Stelmach, Herbert Xu, linux-samsung-soc

On Wed, 11 Aug 2021 10:43:05 +0200, Krzysztof Kozlowski wrote:
> Convert Samsung Exynos SoC Interrupt Combiner Controller bindings to DT
> schema format using json-schema.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
> ---
>  .../samsung,exynos4210-combiner.txt           | 50 ----------
>  .../samsung,exynos4210-combiner.yaml          | 96 +++++++++++++++++++
>  2 files changed, 96 insertions(+), 50 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/interrupt-controller/samsung,exynos4210-combiner.txt
>  create mode 100644 Documentation/devicetree/bindings/interrupt-controller/samsung,exynos4210-combiner.yaml
> 

Applied, thanks!

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2/2] dt-bindings: rng: convert Samsung Exynos TRNG to dtschema
  2021-08-11  8:43 ` [PATCH 2/2] dt-bindings: rng: convert Samsung Exynos TRNG " Krzysztof Kozlowski
       [not found]   ` <CGME20210817095553eucas1p174e68fc6d7cfad9c2fd34f729272b01a@eucas1p1.samsung.com>
@ 2021-08-17 21:15   ` Rob Herring
  1 sibling, 0 replies; 11+ messages in thread
From: Rob Herring @ 2021-08-17 21:15 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Herbert Xu, linux-arm-kernel, linux-kernel, linux-samsung-soc,
	linux-crypto, Matt Mackall, Łukasz Stelmach, devicetree,
	Marc Zyngier, Rob Herring, Thomas Gleixner

On Wed, 11 Aug 2021 10:43:06 +0200, Krzysztof Kozlowski wrote:
> Convert Samsung Exynos SoC True Random Number Generator bindings to DT
> schema format using json-schema.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
> ---
>  .../bindings/rng/samsung,exynos5250-trng.txt  | 17 -------
>  .../bindings/rng/samsung,exynos5250-trng.yaml | 44 +++++++++++++++++++
>  MAINTAINERS                                   |  2 +-
>  3 files changed, 45 insertions(+), 18 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>  create mode 100644 Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
> 

Applied, thanks!

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2/2] dt-bindings: rng: convert Samsung Exynos TRNG to dtschema
       [not found]               ` <CGME20210817221734eucas1p2e4a0aa41406137b90e49230371b92ac6@eucas1p2.samsung.com>
@ 2021-08-17 22:17                 ` Lukasz Stelmach
  2021-08-18  6:37                   ` Krzysztof Kozlowski
  2021-08-20 18:27                   ` Rob Herring
  0 siblings, 2 replies; 11+ messages in thread
From: Lukasz Stelmach @ 2021-08-17 22:17 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Thomas Gleixner, Marc Zyngier, Rob Herring, Matt Mackall,
	Herbert Xu, linux-kernel, devicetree, linux-arm-kernel,
	linux-samsung-soc, linux-crypto

[-- Attachment #1: Type: text/plain, Size: 4102 bytes --]

It was <2021-08-17 wto 16:07>, when Krzysztof Kozlowski wrote:
> On 17/08/2021 14:34, Lukasz Stelmach wrote:
>> It was <2021-08-17 wto 12:05>, when Krzysztof Kozlowski wrote:
>>> On 17/08/2021 11:55, Lukasz Stelmach wrote:
>>>> It was <2021-08-11 śro 10:43>, when Krzysztof Kozlowski wrote:
>>>>> Convert Samsung Exynos SoC True Random Number Generator bindings to DT
>>>>> schema format using json-schema.
>>>>>
>>>>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>>>>> ---
>>>>>  .../bindings/rng/samsung,exynos5250-trng.txt  | 17 -------
>>>>>  .../bindings/rng/samsung,exynos5250-trng.yaml | 44 +++++++++++++++++++
>>>>>  MAINTAINERS                                   |  2 +-
>>>>>  3 files changed, 45 insertions(+), 18 deletions(-)
>>>>>  delete mode 100644 Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>>>>>  create mode 100644 Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>>>>>
>>>>> diff --git
>>>>> a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>>>>> b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>>>>> deleted file mode 100644
>>>>> index 5a613a4ec780..000000000000
>>>>> --- a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>>>>> +++ /dev/null
>>>>> @@ -1,17 +0,0 @@
>>>>> -Exynos True Random Number Generator
>>>>> -
>>>>> -Required properties:
>>>>> -
>>>>> -- compatible  : Should be "samsung,exynos5250-trng".
>>>>> -- reg         : Specifies base physical address and size of the registers map.
>>>>> -- clocks      : Phandle to clock-controller plus clock-specifier pair.
>>>>> -- clock-names : "secss" as a clock name.
>>>>> -
>>>>> -Example:
>>>>> -
>>>>> -	rng@10830600 {
>>>>> -		compatible = "samsung,exynos5250-trng";
>>>>> -		reg = <0x10830600 0x100>;
>>>>> -		clocks = <&clock CLK_SSS>;
>>>>> -		clock-names = "secss";
>>>>> -	};
>>>>> diff --git
>>>>> a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>>>>> b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>>>>> new file mode 100644
>>>>> index 000000000000..a50c34d5d199
>>>>> --- /dev/null
>>>>> +++ b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>>>>> @@ -0,0 +1,44 @@
>>>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>>>>> +%YAML 1.2
>>>>> +---
>>>>> +$id:
>>>>> https://protect2.fireeye.com/v1/url?k=f38ca35b-ac179a0d-f38d2814-0cc47a31ce52-1faa1ecb65482b8a&q=1&e=8b3490f9-a5fc-4da0-b2ee-7b0aec781403&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2Frng%2Fsamsung%2Cexynos5250-trng.yaml%23
>>>>> +$schema:
>>>>> https://protect2.fireeye.com/v1/url?k=9409519d-cb9268cb-9408dad2-0cc47a31ce52-12394c4409905980&q=1&e=8b3490f9-a5fc-4da0-b2ee-7b0aec781403&u=http%3A%2F%2Fdevicetree.org%2Fmeta-schemas%2Fcore.yaml%23
>>>>> +
>>>>> +title: Samsung Exynos SoC True Random Number Generator
>>>>> +
>>>>> +maintainers:
>>>>> +  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>>>>> +  - Łukasz Stelmach <l.stelmach@samsung.com>
>>>>> +
>>>>> +properties:
>>>>> +  compatible:
>>>>> +    const: samsung,exynos5250-trng
>>>>> +
>>>>> +  clocks:
>>>>> +    maxItems: 1
>>>>
>>>> How about copying description from above into the description: property?
>>>
>>> But what to copy? There is no description except generic clock bindings.
>>>
>> 
>> The description that "was" in the txt file.
>
> But there was no description of fields except copy&paste of the core
> schema. Do you describe C code like:
>
> ...
> /* unsigned int is a integer number greater or equal 0 */
> unsigned int i;
> ...

I believe having descriptions for reg and clocks

>>>>> -- reg         : Specifies base physical address and size of the registers map.
>>>>> -- clocks      : Phandle to clock-controller plus clock-specifier pair.

right next to properties' formal definitions is beneficial for anyone
browsing the YAML file. If you think otherwise, oh well, I am fine with
that.

-- 
Łukasz Stelmach
Samsung R&D Institute Poland
Samsung Electronics

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2/2] dt-bindings: rng: convert Samsung Exynos TRNG to dtschema
  2021-08-17 22:17                 ` Lukasz Stelmach
@ 2021-08-18  6:37                   ` Krzysztof Kozlowski
  2021-08-20 18:27                   ` Rob Herring
  1 sibling, 0 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2021-08-18  6:37 UTC (permalink / raw)
  To: Lukasz Stelmach
  Cc: Thomas Gleixner, Marc Zyngier, Rob Herring, Matt Mackall,
	Herbert Xu, linux-kernel, devicetree, linux-arm-kernel,
	linux-samsung-soc, linux-crypto

On 18/08/2021 00:17, Lukasz Stelmach wrote:
> It was <2021-08-17 wto 16:07>, when Krzysztof Kozlowski wrote:
>> On 17/08/2021 14:34, Lukasz Stelmach wrote:
>>> It was <2021-08-17 wto 12:05>, when Krzysztof Kozlowski wrote:
>>>> On 17/08/2021 11:55, Lukasz Stelmach wrote:
>>>>> It was <2021-08-11 śro 10:43>, when Krzysztof Kozlowski wrote:
>>>>>> Convert Samsung Exynos SoC True Random Number Generator bindings to DT
>>>>>> schema format using json-schema.
>>>>>>
>>>>>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>>>>>> ---
>>>>>>  .../bindings/rng/samsung,exynos5250-trng.txt  | 17 -------
>>>>>>  .../bindings/rng/samsung,exynos5250-trng.yaml | 44 +++++++++++++++++++
>>>>>>  MAINTAINERS                                   |  2 +-
>>>>>>  3 files changed, 45 insertions(+), 18 deletions(-)
>>>>>>  delete mode 100644 Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>>>>>>  create mode 100644 Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>>>>>>
>>>>>> diff --git
>>>>>> a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>>>>>> b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>>>>>> deleted file mode 100644
>>>>>> index 5a613a4ec780..000000000000
>>>>>> --- a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
>>>>>> +++ /dev/null
>>>>>> @@ -1,17 +0,0 @@
>>>>>> -Exynos True Random Number Generator
>>>>>> -
>>>>>> -Required properties:
>>>>>> -
>>>>>> -- compatible  : Should be "samsung,exynos5250-trng".
>>>>>> -- reg         : Specifies base physical address and size of the registers map.
>>>>>> -- clocks      : Phandle to clock-controller plus clock-specifier pair.
>>>>>> -- clock-names : "secss" as a clock name.
>>>>>> -
>>>>>> -Example:
>>>>>> -
>>>>>> -	rng@10830600 {
>>>>>> -		compatible = "samsung,exynos5250-trng";
>>>>>> -		reg = <0x10830600 0x100>;
>>>>>> -		clocks = <&clock CLK_SSS>;
>>>>>> -		clock-names = "secss";
>>>>>> -	};
>>>>>> diff --git
>>>>>> a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>>>>>> b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>>>>>> new file mode 100644
>>>>>> index 000000000000..a50c34d5d199
>>>>>> --- /dev/null
>>>>>> +++ b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
>>>>>> @@ -0,0 +1,44 @@
>>>>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>>>>>> +%YAML 1.2
>>>>>> +---
>>>>>> +$id:
>>>>>> https://protect2.fireeye.com/v1/url?k=f38ca35b-ac179a0d-f38d2814-0cc47a31ce52-1faa1ecb65482b8a&q=1&e=8b3490f9-a5fc-4da0-b2ee-7b0aec781403&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2Frng%2Fsamsung%2Cexynos5250-trng.yaml%23
>>>>>> +$schema:
>>>>>> https://protect2.fireeye.com/v1/url?k=9409519d-cb9268cb-9408dad2-0cc47a31ce52-12394c4409905980&q=1&e=8b3490f9-a5fc-4da0-b2ee-7b0aec781403&u=http%3A%2F%2Fdevicetree.org%2Fmeta-schemas%2Fcore.yaml%23
>>>>>> +
>>>>>> +title: Samsung Exynos SoC True Random Number Generator
>>>>>> +
>>>>>> +maintainers:
>>>>>> +  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
>>>>>> +  - Łukasz Stelmach <l.stelmach@samsung.com>
>>>>>> +
>>>>>> +properties:
>>>>>> +  compatible:
>>>>>> +    const: samsung,exynos5250-trng
>>>>>> +
>>>>>> +  clocks:
>>>>>> +    maxItems: 1
>>>>>
>>>>> How about copying description from above into the description: property?
>>>>
>>>> But what to copy? There is no description except generic clock bindings.
>>>>
>>>
>>> The description that "was" in the txt file.
>>
>> But there was no description of fields except copy&paste of the core
>> schema. Do you describe C code like:
>>
>> ...
>> /* unsigned int is a integer number greater or equal 0 */
>> unsigned int i;
>> ...
> 
> I believe having descriptions for reg and clocks
> 
>>>>>> -- reg         : Specifies base physical address and size of the registers map.
>>>>>> -- clocks      : Phandle to clock-controller plus clock-specifier pair.
> 
> right next to properties' formal definitions is beneficial for anyone
> browsing the YAML file. If you think otherwise, oh well, I am fine with
> that.

Useful descriptions would be beneficial. Descriptions which are copy of
schema, therefore equal to explaining unsigned int, are not beneficial.
Make the document just unnecessarily bigger, are irrelevant and hide
actual important information. One of the principles is to keep things
simple. Duplicating description from schema into specific bindings is
rather the opposite of such approach.


Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2/2] dt-bindings: rng: convert Samsung Exynos TRNG to dtschema
  2021-08-17 22:17                 ` Lukasz Stelmach
  2021-08-18  6:37                   ` Krzysztof Kozlowski
@ 2021-08-20 18:27                   ` Rob Herring
  1 sibling, 0 replies; 11+ messages in thread
From: Rob Herring @ 2021-08-20 18:27 UTC (permalink / raw)
  To: Lukasz Stelmach
  Cc: Krzysztof Kozlowski, Thomas Gleixner, Marc Zyngier, Matt Mackall,
	Herbert Xu, linux-kernel, devicetree, linux-arm-kernel,
	linux-samsung-soc,
	open list:HARDWARE RANDOM NUMBER GENERATOR CORE

On Tue, Aug 17, 2021 at 5:17 PM Lukasz Stelmach <l.stelmach@samsung.com> wrote:
>
> It was <2021-08-17 wto 16:07>, when Krzysztof Kozlowski wrote:
> > On 17/08/2021 14:34, Lukasz Stelmach wrote:
> >> It was <2021-08-17 wto 12:05>, when Krzysztof Kozlowski wrote:
> >>> On 17/08/2021 11:55, Lukasz Stelmach wrote:
> >>>> It was <2021-08-11 śro 10:43>, when Krzysztof Kozlowski wrote:
> >>>>> Convert Samsung Exynos SoC True Random Number Generator bindings to DT
> >>>>> schema format using json-schema.
> >>>>>
> >>>>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
> >>>>> ---
> >>>>>  .../bindings/rng/samsung,exynos5250-trng.txt  | 17 -------
> >>>>>  .../bindings/rng/samsung,exynos5250-trng.yaml | 44 +++++++++++++++++++
> >>>>>  MAINTAINERS                                   |  2 +-
> >>>>>  3 files changed, 45 insertions(+), 18 deletions(-)
> >>>>>  delete mode 100644 Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
> >>>>>  create mode 100644 Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
> >>>>>
> >>>>> diff --git
> >>>>> a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
> >>>>> b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
> >>>>> deleted file mode 100644
> >>>>> index 5a613a4ec780..000000000000
> >>>>> --- a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
> >>>>> +++ /dev/null
> >>>>> @@ -1,17 +0,0 @@
> >>>>> -Exynos True Random Number Generator
> >>>>> -
> >>>>> -Required properties:
> >>>>> -
> >>>>> -- compatible  : Should be "samsung,exynos5250-trng".
> >>>>> -- reg         : Specifies base physical address and size of the registers map.
> >>>>> -- clocks      : Phandle to clock-controller plus clock-specifier pair.
> >>>>> -- clock-names : "secss" as a clock name.
> >>>>> -
> >>>>> -Example:
> >>>>> -
> >>>>> - rng@10830600 {
> >>>>> -         compatible = "samsung,exynos5250-trng";
> >>>>> -         reg = <0x10830600 0x100>;
> >>>>> -         clocks = <&clock CLK_SSS>;
> >>>>> -         clock-names = "secss";
> >>>>> - };
> >>>>> diff --git
> >>>>> a/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
> >>>>> b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
> >>>>> new file mode 100644
> >>>>> index 000000000000..a50c34d5d199
> >>>>> --- /dev/null
> >>>>> +++ b/Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.yaml
> >>>>> @@ -0,0 +1,44 @@
> >>>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> >>>>> +%YAML 1.2
> >>>>> +---
> >>>>> +$id:
> >>>>> https://protect2.fireeye.com/v1/url?k=f38ca35b-ac179a0d-f38d2814-0cc47a31ce52-1faa1ecb65482b8a&q=1&e=8b3490f9-a5fc-4da0-b2ee-7b0aec781403&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2Frng%2Fsamsung%2Cexynos5250-trng.yaml%23
> >>>>> +$schema:
> >>>>> https://protect2.fireeye.com/v1/url?k=9409519d-cb9268cb-9408dad2-0cc47a31ce52-12394c4409905980&q=1&e=8b3490f9-a5fc-4da0-b2ee-7b0aec781403&u=http%3A%2F%2Fdevicetree.org%2Fmeta-schemas%2Fcore.yaml%23
> >>>>> +
> >>>>> +title: Samsung Exynos SoC True Random Number Generator
> >>>>> +
> >>>>> +maintainers:
> >>>>> +  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
> >>>>> +  - Łukasz Stelmach <l.stelmach@samsung.com>
> >>>>> +
> >>>>> +properties:
> >>>>> +  compatible:
> >>>>> +    const: samsung,exynos5250-trng
> >>>>> +
> >>>>> +  clocks:
> >>>>> +    maxItems: 1
> >>>>
> >>>> How about copying description from above into the description: property?
> >>>
> >>> But what to copy? There is no description except generic clock bindings.
> >>>
> >>
> >> The description that "was" in the txt file.
> >
> > But there was no description of fields except copy&paste of the core
> > schema. Do you describe C code like:
> >
> > ...
> > /* unsigned int is a integer number greater or equal 0 */
> > unsigned int i;
> > ...
>
> I believe having descriptions for reg and clocks
>
> >>>>> -- reg         : Specifies base physical address and size of the registers map.
> >>>>> -- clocks      : Phandle to clock-controller plus clock-specifier pair.
>
> right next to properties' formal definitions is beneficial for anyone
> browsing the YAML file. If you think otherwise, oh well, I am fine with
> that.

We have 2000 schemas currently (and 2300 still to convert). Of the
~2000, 1646 have 'reg' and 1005 have 'clocks' (I was going to guess
3/4 and 1/2, respectively, but with a nice uniform, parsable format we
don't have to guess). Do we need that many copies of variations of the
same description?

What I would like to have is generated documentation from the schemas.
With that we could either insert a description or a link on all the
common properties. There are already tools that generate documentation
out of json-schema, but I don't have the time to investigate them or
work on any of that.

My other idea is some sort of property grepping utility. While grep
generally works, it would be nice to have some tools aware of the
schema structure where you could just run 'dt-grep clocks' and have it
spit out the description. Another example would be to list all the
valid properties for a given compatible string. Lots of possibilities
with machine readable bindings.

Rob

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2021-08-20 18:27 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-11  8:43 [PATCH 1/2] dt-bindings: irqchip: convert Samsung Exynos IRQ combiner to dtschema Krzysztof Kozlowski
2021-08-11  8:43 ` [PATCH 2/2] dt-bindings: rng: convert Samsung Exynos TRNG " Krzysztof Kozlowski
     [not found]   ` <CGME20210817095553eucas1p174e68fc6d7cfad9c2fd34f729272b01a@eucas1p1.samsung.com>
2021-08-17  9:55     ` Lukasz Stelmach
2021-08-17 10:05       ` Krzysztof Kozlowski
     [not found]         ` <CGME20210817123507eucas1p120be1e5cc942e20bed39b6d810ccdbd1@eucas1p1.samsung.com>
2021-08-17 12:34           ` Lukasz Stelmach
2021-08-17 14:07             ` Krzysztof Kozlowski
     [not found]               ` <CGME20210817221734eucas1p2e4a0aa41406137b90e49230371b92ac6@eucas1p2.samsung.com>
2021-08-17 22:17                 ` Lukasz Stelmach
2021-08-18  6:37                   ` Krzysztof Kozlowski
2021-08-20 18:27                   ` Rob Herring
2021-08-17 21:15   ` Rob Herring
2021-08-17 21:13 ` [PATCH 1/2] dt-bindings: irqchip: convert Samsung Exynos IRQ combiner " Rob Herring

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).