lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Fri, 28 Feb 2020 23:13:03 +0100
From:   Linus Walleij <linus.walleij@...aro.org>
To:     Masahiro Yamada <yamada.masahiro@...ionext.com>
Cc:     "open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS" 
        <devicetree@...r.kernel.org>, Rob Herring <robh+dt@...nel.org>,
        Frank Rowand <frowand.list@...il.com>,
        "David S. Miller" <davem@...emloft.net>,
        Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        Jonathan Cameron <Jonathan.Cameron@...wei.com>,
        Mark Rutland <mark.rutland@....com>,
        Mauro Carvalho Chehab <mchehab+samsung@...nel.org>,
        Linux ARM <linux-arm-kernel@...ts.infradead.org>,
        "open list:GPIO SUBSYSTEM" <linux-gpio@...r.kernel.org>,
        "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 3/3] dt-bingings: pinctrl: Convert UniPhier pin controller
 to json-schema

On Fri, Feb 21, 2020 at 3:10 AM Masahiro Yamada
<yamada.masahiro@...ionext.com> wrote:

> Convert the UniPhier pin controller binding to DT schema format.
>
> Signed-off-by: Masahiro Yamada <yamada.masahiro@...ionext.com>

Nice!

> In the original .txt file, there is a description:
> The UniPhier pinctrl should be a subnode of a "syscon" compatible node
>
> I did not figure out how to represent (or check) it in dt-schema.
> I just moved it to a comment line in 'examples'.
> If there is a better way, please let me know.

There is no way to do that AFAICT, we are checking nodes from
one node and downwards, never upwards. The syscon needs to
have its own binding file: if it has another specific compatible
such as compatible = "foo", "syscon"; then for the DT bindings
for foo, make sure to add this subnode as optional/compulsory
if you want to tie up the whole thing.

> -Required properties:
> -- compatible: should be one of the following:
> -    "socionext,uniphier-ld4-pinctrl"  - for LD4 SoC
> -    "socionext,uniphier-pro4-pinctrl" - for Pro4 SoC
> -    "socionext,uniphier-sld8-pinctrl" - for sLD8 SoC
> -    "socionext,uniphier-pro5-pinctrl" - for Pro5 SoC
> -    "socionext,uniphier-pxs2-pinctrl" - for PXs2 SoC
> -    "socionext,uniphier-ld6b-pinctrl" - for LD6b SoC
> -    "socionext,uniphier-ld11-pinctrl" - for LD11 SoC
> -    "socionext,uniphier-ld20-pinctrl" - for LD20 SoC
> -    "socionext,uniphier-pxs3-pinctrl" - for PXs3 SoC

But:

> +    soc-glue@...00000 {
> +        compatible = "socionext,uniphier-pro4-soc-glue", "simple-mfd", "syscon";
> +        reg = <0x5f800000 0x2000>;
> +
> +        pinctrl: pinctrl {
> +            compatible = "socionext,uniphier-pro4-pinctrl";
> +        };
> +    };

It looks like you want to check also for "simple-mfd" and "syscon"
following after the enum (two consts)

It seems you want to check that reg is there.

It seems the subnode pinctrl is also compulsory.

All of this have examples in example-schema.yaml IIRC.

Yours,
Linus Walleij

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ