linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Andreas Färber" <afaerber@suse.de>
To: Rob Herring <robh@kernel.org>
Cc: linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linuxppc-dev@lists.ozlabs.org,
	Grant Likely <glikely@secretlab.ca>,
	Kumar Gala <kumar.gala@linaro.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Mark Rutland <mark.rutland@arm.com>,
	Linus Walleij <linus.walleij@linaro.org>,
	Olof Johansson <olof@lixom.net>, Arnd Bergmann <arnd@arndb.de>,
	Mark Brown <broonie@kernel.org>, Tom Rini <trini@konsulko.com>,
	Pantelis Antoniou <pantelis.antoniou@konsulko.com>,
	Geert Uytterhoeven <geert@linux-m68k.org>,
	Jonathan Cameron <jic23@kernel.org>,
	Bjorn Andersson <bjorn.andersson@linaro.org>,
	Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Subject: Re: [PATCH 15/36] dt-bindings: arm: Convert Actions Semi bindings to jsonschema
Date: Sat, 6 Oct 2018 12:40:52 +0200	[thread overview]
Message-ID: <c4909f78-bfa1-9253-e436-1159392b45a9@suse.de> (raw)
In-Reply-To: <20181005165848.3474-16-robh@kernel.org>

Hi Rob,

Am 05.10.18 um 18:58 schrieb Rob Herring:
> Convert Actions Semi SoC bindings to DT schema format using json-schema.

This sounds like the next Yanny vs. Laurel... I fail to see any json. ;)

Also, it may help my understanding to be CC'ed on the cover letter, too?

> 
> Cc: "Andreas Färber" <afaerber@suse.de>
> Cc: Mark Rutland <mark.rutland@arm.com>
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: devicetree@vger.kernel.org
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---
>  .../devicetree/bindings/arm/actions.txt       | 56 -------------------
>  .../devicetree/bindings/arm/actions.yaml      | 34 +++++++++++
>  2 files changed, 34 insertions(+), 56 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/arm/actions.txt
>  create mode 100644 Documentation/devicetree/bindings/arm/actions.yaml
> 
> diff --git a/Documentation/devicetree/bindings/arm/actions.txt b/Documentation/devicetree/bindings/arm/actions.txt
> deleted file mode 100644
> index d54f33c4e0da..000000000000
> --- a/Documentation/devicetree/bindings/arm/actions.txt
> +++ /dev/null
> @@ -1,56 +0,0 @@
> -Actions Semi platforms device tree bindings
> --------------------------------------------
> -
> -
> -S500 SoC
> -========
> -
> -Required root node properties:
> -
> - - compatible :  must contain "actions,s500"
> -
> -
> -Modules:
> -
> -Root node property compatible must contain, depending on module:
> -
> - - LeMaker Guitar: "lemaker,guitar"
> -
> -
> -Boards:
> -
> -Root node property compatible must contain, depending on board:
> -
> - - Allo.com Sparky: "allo,sparky"
> - - Cubietech CubieBoard6: "cubietech,cubieboard6"
> - - LeMaker Guitar Base Board rev. B: "lemaker,guitar-bb-rev-b", "lemaker,guitar"
> -
> -
> -S700 SoC
> -========
> -
> -Required root node properties:
> -
> -- compatible :  must contain "actions,s700"
> -
> -
> -Boards:
> -
> -Root node property compatible must contain, depending on board:
> -
> - - Cubietech CubieBoard7: "cubietech,cubieboard7"
> -
> -
> -S900 SoC
> -========
> -
> -Required root node properties:
> -
> -- compatible :  must contain "actions,s900"
> -
> -
> -Boards:
> -
> -Root node property compatible must contain, depending on board:
> -
> - - uCRobotics Bubblegum-96: "ucrobotics,bubblegum-96"
> diff --git a/Documentation/devicetree/bindings/arm/actions.yaml b/Documentation/devicetree/bindings/arm/actions.yaml
> new file mode 100644
> index 000000000000..af9345a228b4
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/arm/actions.yaml
> @@ -0,0 +1,34 @@
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/soc/arm/actions.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#

404 for the schema. Where does one find an explanation?

> +
> +title: Actions Semi platforms device tree bindings
> +
> +maintainers:
> +  - Andreas Färber <afaerber@suse.de>

Mani is now officially reviewer and the closest I have to a
co-maintainer. I suggest we add him here in some form. I assume this is
independent of MAINTAINERS patterns though, or will get_maintainers.pl
parse this, too?

> +
> +description: |

Does the | have any meaning, or a stray typo?

> +  The Actions Semi S500 is a quad-core ARM Cortex-A9 SoC. The Actions Semi
> +  S900 is a quad-core ARM Cortex-A53 SoC.

You forgot the S700 as another quad-core Cortex-A53 SoC.
Also, arm or Arm rather than ARM these days?

> +
> +properties:
> +  compatible:
> +    oneOf:
> +      - items:
> +          - enum:
> +              - lemaker,guitar-bb-rev-b
> +          - enum:
> +              - lemaker,guitar
> +              - allo,sparky
> +              - cubietech,cubieboard6
> +          - const: actions,s500
> +        minItems: 2
> +        maxItems: 3
> +        additionalItems: false

Objection. You've managed to turn a perfectly human-comprehensible text
into a machine-parseable representation incomprehensible for humans.

First, there should remain some free-text explanation of the values
defined here. Are comments allowed after the value or indented maybe?
Alternatively we could have a per-vendor file à la vendor-prefixes.txt,
but that would seem inefficient.

Next, the above items construct is horrible. What about nested oneOf:

+      - items:
+          - oneOf:
+              - items:
+                  - enum:
+                      - lemaker,guitar-bb-rev-b
+                  - const: lemaker,guitar
+              - items:
+                  - enum:
+                      - allo,sparky
+                      - cubietech,cubieboard6
+          - const: actions,s500

This grouping is much clearer to me and hopefully to anyone adding
further base boards for the module.
We will have the same issue for the BPi-S64 module with S700 below.

> +      - items:
> +          - const: cubietech,cubieboard7
> +          - const: actions,s700
> +      - items:
> +          - const: ucrobotics,bubblegum-96
> +          - const: actions,s900

Please make the board compatible an enum, even if only one is listed
today. That makes it clearer where/how (and easier) to add new boards.

Regards,
Andreas

-- 
SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)

  reply	other threads:[~2018-10-06 10:41 UTC|newest]

Thread overview: 79+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-05 16:58 [PATCH 00/36] Devicetree schema Rob Herring
2018-10-05 16:58 ` [PATCH 01/36] dt-bindings: arm: alpine: Move CPU control related binding to cpu-enable-method/al,alpine-smp Rob Herring
2018-10-05 16:58 ` [PATCH 02/36] dt-bindings: arm: amlogic: Move 'amlogic,meson-gx-ao-secure' binding to its own file Rob Herring
2018-10-05 16:58 ` [PATCH 03/36] dt-bindings: arm: atmel: Move various sys registers out of SoC binding doc Rob Herring
2018-10-05 16:58 ` [PATCH 04/36] dt-bindings: arm: fsl: Move DCFG and SCFG bindings to their own docs Rob Herring
2018-10-08  6:25   ` Shawn Guo
2018-10-05 16:58 ` [PATCH 05/36] dt-bindings: arm: renesas: Move 'renesas,prr' binding to its own doc Rob Herring
2018-10-08  7:05   ` Geert Uytterhoeven
2018-10-08 14:59     ` Rob Herring
2018-10-18 13:04       ` Simon Horman
2018-10-05 16:58 ` [PATCH 06/36] dt-bindings: arm: zte: Move sysctrl bindings to their " Rob Herring
2018-10-08  6:30   ` Shawn Guo
2018-10-05 16:58 ` [PATCH 07/36] kbuild: Add support for DT binding schema checks Rob Herring
2018-10-05 16:58 ` [PATCH 08/36] dt-bindings: Add a writing DT schemas how-to and annotated example Rob Herring
2018-10-05 16:58 ` [PATCH 09/36] dt-bindings: Convert trivial-devices.txt to json-schema Rob Herring
2018-10-05 16:58 ` [PATCH 10/36] dt-bindings: altera: Convert clkmgr binding " Rob Herring
2018-10-05 16:58 ` [PATCH 11/36] dt-bindings: timer: Convert ARM timer bindings " Rob Herring
2018-10-05 16:58 ` [PATCH 12/36] dt-bindings: arm: Convert cpu binding " Rob Herring
2018-11-08  8:48   ` Michal Simek
2018-11-30 18:00     ` Rob Herring
2018-12-03 12:40       ` Will Deacon
2018-12-03 14:24         ` Rob Herring
2018-10-05 16:58 ` [PATCH 13/36] dt-bindings: arm: Convert PMU " Rob Herring
2018-10-09 11:57   ` Will Deacon
2018-10-09 18:14     ` Rob Herring
2018-10-10 16:50       ` Will Deacon
2018-10-10 18:51         ` Rob Herring
2018-10-19 10:34           ` Will Deacon
2018-11-01 19:32     ` Rob Herring
2018-11-08 15:54       ` Robin Murphy
2018-11-08 15:59         ` Thomas Petazzoni
2018-11-08 16:10           ` Robin Murphy
2018-10-05 16:58 ` [PATCH 14/36] dt-bindings: arm: Convert primecell " Rob Herring
2018-10-05 16:58 ` [PATCH 15/36] dt-bindings: arm: Convert Actions Semi bindings to jsonschema Rob Herring
2018-10-06 10:40   ` Andreas Färber [this message]
2018-10-07 20:11     ` Rob Herring
2018-10-10  1:41     ` Joe Perches
2018-10-05 16:58 ` [PATCH 16/36] dt-bindings: arm: Convert Alpine board/soc bindings to json-schema Rob Herring
2018-10-05 16:58 ` [PATCH 17/36] dt-bindings: arm: Convert Altera " Rob Herring
2018-10-05 16:58 ` [PATCH 18/36] dt-bindings: arm: Convert Amlogic " Rob Herring
2018-10-05 16:58 ` [PATCH 19/36] dt-bindings: arm: Convert Atmel " Rob Herring
2018-10-05 18:07   ` Alexandre Belloni
2018-10-05 18:32     ` Rob Herring
2018-10-05 16:58 ` [PATCH 20/36] dt-bindings: arm: Convert Calxeda " Rob Herring
2018-10-05 16:58 ` [PATCH 21/36] dt-bindings: arm: Convert TI davinci " Rob Herring
2018-10-09 11:59   ` Sekhar Nori
2018-10-05 16:58 ` [PATCH 22/36] dt-bindings: arm: Convert FSL " Rob Herring
2018-10-08  7:01   ` Shawn Guo
2018-10-08 13:30     ` Rob Herring
2018-10-05 16:58 ` [PATCH 23/36] dt-bindings: arm: Convert MediaTek " Rob Herring
2018-10-05 16:58 ` [PATCH 24/36] dt-bindings: arm: Convert TI nspire " Rob Herring
2018-10-05 16:58 ` [PATCH 25/36] dt-bindings: arm: Convert Oxford Semi " Rob Herring
2018-10-05 16:58 ` [PATCH 26/36] dt-bindings: arm: Convert QCom " Rob Herring
2018-10-05 16:58 ` [PATCH 27/36] dt-bindings: arm: Convert Realtek " Rob Herring
2018-10-06 10:54   ` Andreas Färber
2018-10-07 19:20     ` Rob Herring
2018-10-05 16:58 ` [PATCH 28/36] dt-bindings: arm: Convert Rockchip " Rob Herring
2018-10-08  9:45   ` Heiko Stuebner
2018-10-08 13:46     ` Rob Herring
2018-10-05 16:58 ` [PATCH 29/36] dt-bindings: arm: Convert Renesas " Rob Herring
2018-10-08  7:47   ` Geert Uytterhoeven
2018-10-08 14:57     ` Rob Herring
2018-10-08 15:12       ` Geert Uytterhoeven
2018-10-08 16:54         ` Rob Herring
2018-10-08  8:02   ` Simon Horman
2018-10-08 14:05     ` Rob Herring
2018-10-18 13:01       ` Simon Horman
2018-10-05 16:58 ` [PATCH 30/36] dt-bindings: arm: Convert CSR SiRF " Rob Herring
2018-10-05 16:58 ` [PATCH 31/36] dt-bindings: arm: Convert SPEAr " Rob Herring
2018-10-05 16:58 ` [PATCH 32/36] dt-bindings: arm: Convert ST STi " Rob Herring
2018-10-10  9:19   ` Patrice CHOTARD
2018-10-05 16:58 ` [PATCH 33/36] dt-bindings: arm: Convert Tegra " Rob Herring
2018-10-05 22:19   ` Marcel Ziswiler
2018-10-05 23:36     ` Rob Herring
2018-10-05 16:58 ` [PATCH 34/36] dt-bindings: arm: Convert VIA " Rob Herring
2018-10-05 16:58 ` [PATCH 35/36] dt-bindings: arm: Convert Xilinx " Rob Herring
2018-11-08 13:34   ` Michal Simek
2018-10-05 16:58 ` [PATCH 36/36] dt-bindings: arm: Convert ZTE " Rob Herring
2018-10-08  7:16   ` Shawn Guo

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=c4909f78-bfa1-9253-e436-1159392b45a9@suse.de \
    --to=afaerber@suse.de \
    --cc=arnd@arndb.de \
    --cc=bjorn.andersson@linaro.org \
    --cc=broonie@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=frowand.list@gmail.com \
    --cc=geert@linux-m68k.org \
    --cc=glikely@secretlab.ca \
    --cc=jic23@kernel.org \
    --cc=kumar.gala@linaro.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=manivannan.sadhasivam@linaro.org \
    --cc=mark.rutland@arm.com \
    --cc=olof@lixom.net \
    --cc=pantelis.antoniou@konsulko.com \
    --cc=robh@kernel.org \
    --cc=trini@konsulko.com \
    /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;
as well as URLs for NNTP newsgroup(s).