mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
To: Rob Herring <robh@kernel.org>
Cc: Linus Walleij <linus.walleij@linaro.org>,
	Masami Hiramatsu <mhiramat@kernel.org>,
	linux-gpio@vger.kernel.org, devicetree@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2] dt-bindings: pinctrl: uniphier: Add child node definitions to describe pin mux and configuration
Date: Thu, 4 Nov 2021 16:32:24 +0900	[thread overview]
Message-ID: <138d4e8f-b63e-8118-2d66-23384af9cc6d@socionext.com> (raw)
In-Reply-To: <YYGmT9zLiqpb1fH8@robh.at.kernel.org>

On 2021/11/03 5:57, Rob Herring wrote:
> On Thu, Oct 28, 2021 at 10:46:39AM +0900, Kunihiko Hayashi wrote:
>> In arch/arm/boot/dts/uniphier-pinctrl.dtsi, there are child nodes of
>> pinctrl that defines pinmux and pincfg, however, there are no rules about
>> that in dt-bindings.
>>
>> 'make dtbs_check' results an error with the following message:
>>
>>     pinctrl: 'ain1', 'ain2', 'ainiec1', 'aout', 'aout1', 'aout2', ...
>>     ... 'usb2', 'usb3' do not match any of the regexes: 'pinctrl-[0-9]+'
>>
>> To avoid this issue, add the rules of pinmux and pincfg in each child node
>> and grandchild node.
>>
>> Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
>> ---
>> Changes since v1:
>> - Replace additionalProperties with unevaluatedProperties
>> - Add additionalProperties for child and grandchild nodes
>>
>>   .../pinctrl/socionext,uniphier-pinctrl.yaml        | 50 +++++++++++++++++++++-
>>   1 file changed, 49 insertions(+), 1 deletion(-)
>>
>> diff --git a/Documentation/devicetree/bindings/pinctrl/socionext,uniphier-pinctrl.yaml
> b/Documentation/devicetree/bindings/pinctrl/socionext,uniphier-pinctrl.yaml
>> index a804d9bc1602..7e504e003181 100644
>> --- a/Documentation/devicetree/bindings/pinctrl/socionext,uniphier-pinctrl.yaml
>> +++ b/Documentation/devicetree/bindings/pinctrl/socionext,uniphier-pinctrl.yaml
>> @@ -26,10 +26,58 @@ properties:
>>         - socionext,uniphier-pxs3-pinctrl
>>         - socionext,uniphier-nx1-pinctrl
>>   
>> +additionalProperties:
>> +  type: object
>> +
>> +patternProperties:
>> +  "^.*$":
>> +    if:
>> +      type: object
>> +    then:
>> +      allOf:
> 
> All of the above should be:
> 
> additionalProperties:
>    type: object
>    allOf:
>    ...

I see. I'll rewrite it instead of "patternProperties".

> 
>> +        - $ref: pincfg-node.yaml#
>> +        - $ref: pinmux-node.yaml#
>> +
>> +      properties:
>> +        phandle: true
>> +        function: true
>> +        groups: true
>> +        pins: true
>> +        bias-pull-up: true
>> +        bias-pull-down: true
>> +        bias-pull-pin-default: true
>> +        drive-strength: true
>> +
>> +      additionalProperties:
>> +        type: object
>> +
>> +      patternProperties:
>> +        "^.*$":
>> +          if:
>> +            type: object
>> +          then:
>> +            allOf:
>> +              - $ref: pincfg-node.yaml#
>> +              - $ref: pinmux-node.yaml#
>> +
>> +            properties:
>> +              phandle: true
>> +              function: true
>> +              groups: true
>> +              pins: true
>> +              bias-pull-up: true
>> +              bias-pull-down: true
>> +              bias-pull-pin-default: true
>> +              drive-strength: true
>> +
>> +            unevaluatedProperties: false
>> +
>> +      unevaluatedProperties: false
>> +
>>   required:
>>     - compatible
>>   
>> -additionalProperties: false
>> +unevaluatedProperties: false
> 
> Drop +unevaluatedProperties.

I understand that "additionalProperties" has already been used at the top
level, so this "unevaluatedProperties" is unnecessary.

For the same reason, "unevaluatedProperties" at the child node is also unnecessary.

I think "unevaluatedProperties" at the grandchild node should be left because
the grandchild node doesn't have "additionalProperties".


additionalProperties:
   type: object
   allOf:
     ...
     additionalProperties:
       type: object
       allOf:
         ...
         unevaluatedProperties: false
     [X]
[X]

Thank you,

---
Best Regards
Kunihiko Hayashi

      reply	other threads:[~2021-11-04  7:32 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-28  1:46 Kunihiko Hayashi
2021-11-02 20:57 ` Rob Herring
2021-11-04  7:32   ` Kunihiko Hayashi [this message]

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=138d4e8f-b63e-8118-2d66-23384af9cc6d@socionext.com \
    --to=hayashi.kunihiko@socionext.com \
    --cc=devicetree@vger.kernel.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mhiramat@kernel.org \
    --cc=robh@kernel.org \
    /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

all inboxes | Powered by JetHome®