Re: [PATCH v2 24/34] dt-bindings: arm: Convert Rockchip board/soc bindings to json-schema

2018-12-04 Thread Rob Herring
On Tue, Dec 4, 2018 at 8:16 AM Heiko Stuebner  wrote:
>
> Am Montag, 3. Dezember 2018, 22:32:13 CET schrieb Rob Herring:
> > Convert Rockchip SoC bindings to DT schema format using json-schema.
> >
> > Cc: Mark Rutland 
> > Cc: Heiko Stuebner 
> > Cc: devicet...@vger.kernel.org
> > Cc: linux-arm-ker...@lists.infradead.org
> > Cc: linux-rockc...@lists.infradead.org
> > Signed-off-by: Rob Herring 
>
> > diff --git a/Documentation/devicetree/bindings/arm/rockchip.yaml 
> > b/Documentation/devicetree/bindings/arm/rockchip.yaml
> > new file mode 100644
> > index ..3d30ec9adcd3
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/arm/rockchip.yaml
> > @@ -0,0 +1,251 @@
> > +# SPDX-License-Identifier: GPL-2.0
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/arm/rockchip.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Rockchip platforms device tree bindings
> > +
> > +maintainers:
> > +  - Beniamino Galvani 
>
> # scripts/get_maintainer.pl -f 
> Documentation/devicetree/bindings/arm/rockchip.txt
>
> doesn't list Beniamino at all and he hasn't been active on Rockchip stuff
> for a number of years, so I'm not really sure where this mention as
> maintainer comes from.

git history. get_maintainers.pl had too many cases where I ended up as
the maintainer.

I'll drop him.

> > +  - Heiko Stuebner 
> > +
> > +properties:
> > +  $nodename:
> > +const: '/'
> > +  compatible:
> > +oneOf:
> > +  - items:
> > +  - enum:
> > +  - amarula,vyasa-rk3288
> > +  - asus,rk3288-tinker
> > +  - asus,rk3288-tinker-s
> > +  - radxa,rock2-square
> > +  - chipspark,popmetal-rk3288
> > +  - netxeon,r89
> > +  - firefly,firefly-rk3288
> > +  - firefly,firefly-rk3288-beta
> > +  - firefly,firefly-rk3288-reload
> > +  - mqmaker,miqi
> > +  - rockchip,rk3288-fennec
> > +  - const: rockchip,rk3288
>
> [...]
>
> > +  - items:
> > +  - enum:
> > +  - firefly,firefly-rk3399
> > +  - firefly,roc-rk3399-pc
> > +  - pine64,rockpro64
> > +  - rockchip,rk3399-evb
> > +  - rockchip,rk3399-sapphire
> > +  - rockchip,rk3399-sapphire-excavator
> > +  - tsd,rk3399-q7-haikou
> > +  - vamrs,ficus
> > +  - vamrs,rock960 # 96boards RK3399 Rock960 (ROCK960 Consumer 
> > Edition)
> > +  - const: rockchip,rk3399
>
>
> as said before, loosing the description of the boards that get thrown
> into one listing really decreases the usability a lot.

Sorry, I thought I addressed these previous comments.

> Best example is maybe the rk3399 rock960, where the consumer-edition
> board is actually named "ficus" and the description actually brings the
> connection to the product-name.
>
> So here it may increase the machine-readability but definitly descreases
> the human readability of the file itself.
>
> I guess just using the format that all the Google-boards got for all boards
> would just be easiest, so for example the rock960 also would just become:
>
>   - description: 96boards RK3399 Ficus (ROCK960 Enterprise Edition)
> items:
>   - const: vamrs,ficus
>   - const: rockchip,rk3399
>
>   - description: 96boards RK3399 Ficus (ROCK960 Consumer Edition)
> items:
>   - const: vamrs,rock960
>   - const: rockchip,rk3399

Sure, you can do this if you like. I prefer the other way as it is a
one line change to add a board. The SoC maintainers can pick whatever
they like. You could split into a file per SoC too if you wanted.

> Looking at other socs, this is likely similar there. Like on Mediatek
> all the MT67xx eval boards loose the mapping to the
> socs marketing name "Helio Foobar" when the description is gone,
> which could've been helpful for people reading the binding.

Generally when we had just 'hello,foobar' with 'Hello Foobar' I
dropped the comment as I didn't think it added much.

Rob


Re: [PATCH v2 24/34] dt-bindings: arm: Convert Rockchip board/soc bindings to json-schema

2018-12-04 Thread Heiko Stuebner
Am Montag, 3. Dezember 2018, 22:32:13 CET schrieb Rob Herring:
> Convert Rockchip SoC bindings to DT schema format using json-schema.
> 
> Cc: Mark Rutland 
> Cc: Heiko Stuebner 
> Cc: devicet...@vger.kernel.org
> Cc: linux-arm-ker...@lists.infradead.org
> Cc: linux-rockc...@lists.infradead.org
> Signed-off-by: Rob Herring 

> diff --git a/Documentation/devicetree/bindings/arm/rockchip.yaml 
> b/Documentation/devicetree/bindings/arm/rockchip.yaml
> new file mode 100644
> index ..3d30ec9adcd3
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/arm/rockchip.yaml
> @@ -0,0 +1,251 @@
> +# SPDX-License-Identifier: GPL-2.0
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/arm/rockchip.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Rockchip platforms device tree bindings
> +
> +maintainers:
> +  - Beniamino Galvani 

# scripts/get_maintainer.pl -f 
Documentation/devicetree/bindings/arm/rockchip.txt

doesn't list Beniamino at all and he hasn't been active on Rockchip stuff
for a number of years, so I'm not really sure where this mention as
maintainer comes from.


> +  - Heiko Stuebner 
> +
> +properties:
> +  $nodename:
> +const: '/'
> +  compatible:
> +oneOf:
> +  - items:
> +  - enum:
> +  - amarula,vyasa-rk3288
> +  - asus,rk3288-tinker
> +  - asus,rk3288-tinker-s
> +  - radxa,rock2-square
> +  - chipspark,popmetal-rk3288
> +  - netxeon,r89
> +  - firefly,firefly-rk3288
> +  - firefly,firefly-rk3288-beta
> +  - firefly,firefly-rk3288-reload
> +  - mqmaker,miqi
> +  - rockchip,rk3288-fennec
> +  - const: rockchip,rk3288

[...]

> +  - items:
> +  - enum:
> +  - firefly,firefly-rk3399
> +  - firefly,roc-rk3399-pc
> +  - pine64,rockpro64
> +  - rockchip,rk3399-evb
> +  - rockchip,rk3399-sapphire
> +  - rockchip,rk3399-sapphire-excavator
> +  - tsd,rk3399-q7-haikou
> +  - vamrs,ficus
> +  - vamrs,rock960 # 96boards RK3399 Rock960 (ROCK960 Consumer 
> Edition)
> +  - const: rockchip,rk3399


as said before, loosing the description of the boards that get thrown 
into one listing really decreases the usability a lot.

Best example is maybe the rk3399 rock960, where the consumer-edition
board is actually named "ficus" and the description actually brings the
connection to the product-name.

So here it may increase the machine-readability but definitly descreases
the human readability of the file itself.

I guess just using the format that all the Google-boards got for all boards
would just be easiest, so for example the rock960 also would just become:

  - description: 96boards RK3399 Ficus (ROCK960 Enterprise Edition)
items:
  - const: vamrs,ficus
  - const: rockchip,rk3399

  - description: 96boards RK3399 Ficus (ROCK960 Consumer Edition)
items:
  - const: vamrs,rock960
  - const: rockchip,rk3399


Looking at other socs, this is likely similar there. Like on Mediatek
all the MT67xx eval boards loose the mapping to the
socs marketing name "Helio Foobar" when the description is gone,
which could've been helpful for people reading the binding.


Heiko


> +  - description: Google Bob (Asus Chromebook Flip C101PA)
> +items:
> +  - const: google,bob-rev13
> +  - const: google,bob-rev12
> +  - const: google,bob-rev11
> +  - const: google,bob-rev10
> +  - const: google,bob-rev9
> +  - const: google,bob-rev8
> +  - const: google,bob-rev7
> +  - const: google,bob-rev6
> +  - const: google,bob-rev5
> +  - const: google,bob-rev4
> +  - const: google,bob
> +  - const: google,gru
> +  - const: rockchip,rk3399






[PATCH v2 24/34] dt-bindings: arm: Convert Rockchip board/soc bindings to json-schema

2018-12-03 Thread Rob Herring
Convert Rockchip SoC bindings to DT schema format using json-schema.

Cc: Mark Rutland 
Cc: Heiko Stuebner 
Cc: devicet...@vger.kernel.org
Cc: linux-arm-ker...@lists.infradead.org
Cc: linux-rockc...@lists.infradead.org
Signed-off-by: Rob Herring 
---
 .../devicetree/bindings/arm/rockchip.txt  | 240 -
 .../devicetree/bindings/arm/rockchip.yaml | 251 ++
 2 files changed, 251 insertions(+), 240 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/arm/rockchip.txt
 create mode 100644 Documentation/devicetree/bindings/arm/rockchip.yaml

diff --git a/Documentation/devicetree/bindings/arm/rockchip.txt 
b/Documentation/devicetree/bindings/arm/rockchip.txt
deleted file mode 100644
index 0cc71236d639..
--- a/Documentation/devicetree/bindings/arm/rockchip.txt
+++ /dev/null
@@ -1,240 +0,0 @@
-Rockchip platforms device tree bindings

-
-- 96boards RK3399 Ficus (ROCK960 Enterprise Edition)
-Required root node properties:
-  - compatible = "vamrs,ficus", "rockchip,rk3399";
-
-- 96boards RK3399 Rock960 (ROCK960 Consumer Edition)
-Required root node properties:
-  - compatible = "vamrs,rock960", "rockchip,rk3399";
-
-- Amarula Vyasa RK3288 board
-Required root node properties:
-  - compatible = "amarula,vyasa-rk3288", "rockchip,rk3288";
-
-- Asus Tinker board
-Required root node properties:
-  - compatible = "asus,rk3288-tinker", "rockchip,rk3288";
-
-- Asus Tinker board S
-Required root node properties:
-  - compatible = "asus,rk3288-tinker-s", "rockchip,rk3288";
-
-- Kylin RK3036 board:
-Required root node properties:
-  - compatible = "rockchip,kylin-rk3036", "rockchip,rk3036";
-
-- MarsBoard RK3066 board:
-Required root node properties:
-  - compatible = "haoyu,marsboard-rk3066", "rockchip,rk3066a";
-
-- bq Curie 2 tablet:
-Required root node properties:
-  - compatible = "mundoreader,bq-curie2", "rockchip,rk3066a";
-
-- ChipSPARK Rayeager PX2 board:
-Required root node properties:
-  - compatible = "chipspark,rayeager-px2", "rockchip,rk3066a";
-
-- Radxa Rock board:
-Required root node properties:
-  - compatible = "radxa,rock", "rockchip,rk3188";
-
-- Radxa Rock2 Square board:
-Required root node properties:
-  - compatible = "radxa,rock2-square", "rockchip,rk3288";
-
-- Rikomagic MK808 v1 board:
-Required root node properties:
-  - compatible = "rikomagic,mk808", "rockchip,rk3066a";
-
-- Firefly Firefly-RK3288 board:
-Required root node properties:
-  - compatible = "firefly,firefly-rk3288", "rockchip,rk3288";
-or
-  - compatible = "firefly,firefly-rk3288-beta", "rockchip,rk3288";
-
-- Firefly Firefly-RK3288 Reload board:
-Required root node properties:
-  - compatible = "firefly,firefly-rk3288-reload", "rockchip,rk3288";
-
-- Firefly Firefly-RK3399 board:
-Required root node properties:
-  - compatible = "firefly,firefly-rk3399", "rockchip,rk3399";
-
-- Firefly roc-rk3328-cc board:
-Required root node properties:
-  - compatible = "firefly,roc-rk3328-cc", "rockchip,rk3328";
-
-- Firefly ROC-RK3399-PC board:
-Required root node properties:
-  - compatible = "firefly,roc-rk3399-pc", "rockchip,rk3399";
-
-- ChipSPARK PopMetal-RK3288 board:
-Required root node properties:
-  - compatible = "chipspark,popmetal-rk3288", "rockchip,rk3288";
-
-- Netxeon R89 board:
-Required root node properties:
-  - compatible = "netxeon,r89", "rockchip,rk3288";
-
-- GeekBuying GeekBox:
-Required root node properties:
-  - compatible = "geekbuying,geekbox", "rockchip,rk3368";
-
-- Google Bob (Asus Chromebook Flip C101PA):
-Required root node properties:
-   compatible = "google,bob-rev13", "google,bob-rev12",
-"google,bob-rev11", "google,bob-rev10",
-"google,bob-rev9", "google,bob-rev8",
-"google,bob-rev7", "google,bob-rev6",
-"google,bob-rev5", "google,bob-rev4",
-"google,bob", "google,gru", "rockchip,rk3399";
-
-- Google Brain (dev-board):
-Required root node properties:
-  - compatible = "google,veyron-brain-rev0", "google,veyron-brain",
-"google,veyron", "rockchip,rk3288";
-
-- Google Gru (dev-board):
-Required root node properties:
-  - compatible = "google,gru-rev15", "google,gru-rev14",
-"google,gru-rev13", "google,gru-rev12",
-"google,gru-rev11", "google,gru-rev10",
-"google,gru-rev9", "google,gru-rev8",
-"google,gru-rev7", "google,gru-rev6",
-"google,gru-rev5", "google,gru-rev4",
-"google,gru-rev3", "google,gru-rev2",
-"google,gru", "rockchip,rk3399";
-
-- Google Jaq (Haier Chromebook 11 and more):
-Required root node properties:
-  - compatible = "google,veyron-jaq-rev5",