Re: [PATCH 28/36] dt-bindings: arm: Convert Rockchip board/soc bindings to json-schema

2018-10-08 Thread Rob Herring
On Mon, Oct 8, 2018 at 4:45 AM Heiko Stuebner  wrote:
>
> Hi Rob,
>
> either I'm misunderstanding that, or something did go a bit wrong during
> the conversion, as pointed out below:
>
> Am Freitag, 5. Oktober 2018, 18:58:40 CEST 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 
> > ---
> >  .../devicetree/bindings/arm/rockchip.txt  | 220 
> >  .../devicetree/bindings/arm/rockchip.yaml | 242 ++
> >  2 files changed, 242 insertions(+), 220 deletions(-)
> >  delete mode 100644 Documentation/devicetree/bindings/arm/rockchip.txt
> >  create mode 100644 Documentation/devicetree/bindings/arm/rockchip.yaml
> >
>
>
>
> > +properties:
> > +  $nodename:
> > +const: '/'
> > +  compatible:
> > +oneOf:
> > +  - items:
> > +  - enum:
> > +  - amarula,vyasa-rk3288
> > +  - asus,rk3288-tinker
> > +  - 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
>
> These are very much distinct boards, so shouldn't they also get
> individual entries including their existing description like the phytec
> or google boards below?

It is grouped by SoC compatible and # of compatible strings. So this
one is all the cases that have 2 compatible strings. It is simply
saying the 1st compatible string must be one of the enums and the 2nd
compatible string must be "rockchip,rk3288".

>
> Similarly why is it an enum for those, while the Google boards get a
> const for each compatible string?

Because each Google board is a fixed list of strings.

> Most non-google boards below also lost their description and where lumped
> together into combined entries. Was that intentional?

If the description was just repeating the compatible string with
spaces and capitalization, then yes it was intentional. If your
description matches what you have for 'model', then I'd prefer to see
model added as a property schema.

Rob


Re: [PATCH 28/36] dt-bindings: arm: Convert Rockchip board/soc bindings to json-schema

2018-10-08 Thread Heiko Stuebner
Hi Rob,

either I'm misunderstanding that, or something did go a bit wrong during
the conversion, as pointed out below:

Am Freitag, 5. Oktober 2018, 18:58:40 CEST 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 
> ---
>  .../devicetree/bindings/arm/rockchip.txt  | 220 
>  .../devicetree/bindings/arm/rockchip.yaml | 242 ++
>  2 files changed, 242 insertions(+), 220 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/arm/rockchip.txt
>  create mode 100644 Documentation/devicetree/bindings/arm/rockchip.yaml
> 



> +properties:
> +  $nodename:
> +const: '/'
> +  compatible:
> +oneOf:
> +  - items:
> +  - enum:
> +  - amarula,vyasa-rk3288
> +  - asus,rk3288-tinker
> +  - 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

These are very much distinct boards, so shouldn't they also get
individual entries including their existing description like the phytec
or google boards below?

Similarly why is it an enum for those, while the Google boards get a
const for each compatible string?


Most non-google boards below also lost their description and where lumped
together into combined entries. Was that intentional?


Thanks
Heiko

> +
> +  - description: Phytec phyCORE-RK3288 Rapid Development Kit
> +items:
> +  - const: phytec,rk3288-pcm-947
> +  - const: phytec,rk3288-phycore-som
> +  - const: rockchip,rk3288
> +
> +  - description: Google Mickey (Asus Chromebit CS10)
> +items:
> +  - const: google,veyron-mickey-rev8
> +  - const: google,veyron-mickey-rev7
> +  - const: google,veyron-mickey-rev6
> +  - const: google,veyron-mickey-rev5
> +  - const: google,veyron-mickey-rev4
> +  - const: google,veyron-mickey-rev3
> +  - const: google,veyron-mickey-rev2
> +  - const: google,veyron-mickey-rev1
> +  - const: google,veyron-mickey-rev0
> +  - const: google,veyron-mickey
> +  - const: google,veyron
> +  - const: rockchip,rk3288
> +
> +  - description: Google Minnie (Asus Chromebook Flip C100P)
> +items:
> +  - const: google,veyron-minnie-rev4
> +  - const: google,veyron-minnie-rev3
> +  - const: google,veyron-minnie-rev2
> +  - const: google,veyron-minnie-rev1
> +  - const: google,veyron-minnie-rev0
> +  - const: google,veyron-minnie
> +  - const: google,veyron
> +  - const: rockchip,rk3288
> +
> +  - description: Google Pinky (dev-board)
> +items:
> +  - const: google,veyron-pinky-rev2
> +  - const: google,veyron-pinky
> +  - const: google,veyron
> +  - const: rockchip,rk3288
> +
> +  - description: Google Speedy (Asus C201 Chromebook)
> +items:
> +  - const: google,veyron-speedy-rev9
> +  - const: google,veyron-speedy-rev8
> +  - const: google,veyron-speedy-rev7
> +  - const: google,veyron-speedy-rev6
> +  - const: google,veyron-speedy-rev5
> +  - const: google,veyron-speedy-rev4
> +  - const: google,veyron-speedy-rev3
> +  - const: google,veyron-speedy-rev2
> +  - const: google,veyron-speedy
> +  - const: google,veyron
> +  - const: rockchip,rk3288
> +
> +  - description: Google Jaq (Haier Chromebook 11 and more)
> +items:
> +  - const: google,veyron-jaq-rev5
> +  - const: google,veyron-jaq-rev4
> +  - const: google,veyron-jaq-rev3
> +  - const: google,veyron-jaq-rev2
> +  - const: google,veyron-jaq-rev1
> +  - const: google,veyron-jaq
> +  - const: google,veyron
> +  - const: rockchip,rk3288
> +
> +  - description: Google Jerry (Hisense Chromebook C11 and more)
> +items:
> +  - const: google,veyron-jerry-rev7
> +  - const: google,veyron-jerry-rev6
> +  - const: google,veyron-jerry-rev5
> +  - const: google,veyron-jerry-rev4
> +  - const: google,veyron-jerry-rev3
> +  - const: google,veyron-jerry
> +  - const: google,veyron
> +  - const: rockchip,rk3288
> +
> +  - description: Google Brain (dev-board)
> +items:
> +  - const: google,veyron-brain-rev0
> +  - const: google,veyron-brain
> +  - const: google,veyron
> +  - const: 

[PATCH 28/36] dt-bindings: arm: Convert Rockchip board/soc bindings to json-schema

2018-10-05 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  | 220 
 .../devicetree/bindings/arm/rockchip.yaml | 242 ++
 2 files changed, 242 insertions(+), 220 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 acfd3c773dd0..
--- a/Documentation/devicetree/bindings/arm/rockchip.txt
+++ /dev/null
@@ -1,220 +0,0 @@
-Rockchip platforms device tree bindings

-
-- 96boards RK3399 Ficus (ROCK960 Enterprise Edition)
-Required root node properties:
-  - compatible = "vamrs,ficus", "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";
-
-- 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";
-
-- 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", "google,veyron-jaq-rev4",
-"google,veyron-jaq-rev3", "google,veyron-jaq-rev2",
-"google,veyron-jaq-rev1", "google,veyron-jaq",
-"google,veyron", "rockchip,rk3288";
-
-- Google Jerry (Hisense Chromebook C11 and more):
-Required root node properties:
-  - compatible = "google,veyron-jerry-rev7", "google,veyron-jerry-rev6",
-