[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <861cefe2-7bb6-c435-ab0d-483155852876@ti.com>
Date: Fri, 21 May 2021 11:31:56 +0300
From: Grygorii Strashko <grygorii.strashko@...com>
To: Rob Herring <robh@...nel.org>,
Aswath Govindraju <a-govindraju@...com>
CC: Vignesh Raghavendra <vigneshr@...com>,
Lokesh Vutla <lokeshvutla@...com>,
Kishon Vijay Abraham I <kishon@...com>,
Linus Walleij <linus.walleij@...aro.org>,
Bartosz Golaszewski <bgolaszewski@...libre.com>,
Keerthy <j-keerthy@...com>, <linux-gpio@...r.kernel.org>,
<devicetree@...r.kernel.org>, <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] dt-bindings: gpio: gpio-davinci: Convert to json-schema
Hi Rob, All
On 18/05/2021 01:15, Rob Herring wrote:
> On Tue, May 11, 2021 at 02:31:20PM +0530, Aswath Govindraju wrote:
>> Convert gpio-davinci dt-binding documentation from txt to yaml format.
>>
>> Signed-off-by: Aswath Govindraju <a-govindraju@...com>
>> ---
>> .../devicetree/bindings/gpio/gpio-davinci.txt | 167 ---------------
>> .../bindings/gpio/gpio-davinci.yaml | 193 ++++++++++++++++++
>> MAINTAINERS | 2 +-
>> 3 files changed, 194 insertions(+), 168 deletions(-)
>> delete mode 100644 Documentation/devicetree/bindings/gpio/gpio-davinci.txt
>> create mode 100644 Documentation/devicetree/bindings/gpio/gpio-davinci.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/gpio/gpio-davinci.txt b/Documentation/devicetree/bindings/gpio/gpio-davinci.txt
>> deleted file mode 100644
>> index 696ea46227d1..000000000000
>> --- a/Documentation/devicetree/bindings/gpio/gpio-davinci.txt
>> +++ /dev/null
>> @@ -1,167 +0,0 @@
>> -Davinci/Keystone GPIO controller bindings
>> -
>> -Required Properties:
>> -- compatible: should be "ti,dm6441-gpio": for Davinci da850 SoCs
>> - "ti,keystone-gpio": for Keystone 2 66AK2H/K, 66AK2L,
>> - 66AK2E SoCs
>> - "ti,k2g-gpio", "ti,keystone-gpio": for 66AK2G
>> - "ti,am654-gpio", "ti,keystone-gpio": for TI K3 AM654
>> - "ti,j721e-gpio", "ti,keystone-gpio": for J721E SoCs
>> - "ti,am64-gpio", "ti,keystone-gpio": for AM64 SoCs
>> -
[...]
>> -};
>> diff --git a/Documentation/devicetree/bindings/gpio/gpio-davinci.yaml b/Documentation/devicetree/bindings/gpio/gpio-davinci.yaml
>> new file mode 100644
>> index 000000000000..1e16172669c7
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/gpio/gpio-davinci.yaml
>> @@ -0,0 +1,193 @@
>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/gpio/gpio-davinci.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: GPIO controller for Davinci and keystone devices
>> +
>> +maintainers:
>> + - Keerthy <j-keerthy@...com>
>> +
>> +properties:
>> + compatible:
>> + oneOf:
>> + - items:
>> + - enum:
>> + - ti,k2g-gpio
>> + - ti,am654-gpio
>> + - ti,j721e-gpio
>> + - ti,am64-gpio
>> + - const: ti,keystone-gpio
>> +
>> + - items:
>> + - const: ti,dm6441-gpio
>> + - items:
>> + - const: ti,keystone-gpio
>
> These 2 can be expressed as an 'enum'.
>
>> +
>> + reg:
>> + maxItems: 1
>> + description:
>> + Physical base address of the controller and the size of memory mapped registers.
>
> Drop. That's every 'reg' property.
>
>> +
>> + gpio-controller: true
>> +
>> + gpio-ranges: true
>> +
>> + gpio-line-names:
>> + description: strings describing the names of each gpio line.
>
> Any constraints like min/max number of lines?
>
>> +
>> + "#gpio-cells":
>> + const: 2
>> + description:
>> + first cell is the pin number and second cell is used to specify optional parameters (unused).
>> +
>> + interrupts:
>> + description:
>> + Array of GPIO interrupt number. Only banked or unbanked IRQs are supported at a time.
>
> Needs constraints. How many items and what are they?
>
>> +
>> + ti,ngpio:
>> + $ref: /schemas/types.yaml#/definitions/uint32
>> + description: The number of GPIO pins supported consecutively.
>> + minimum: 1
>> +
>> + ti,davinci-gpio-unbanked:
>> + $ref: /schemas/types.yaml#/definitions/uint32
>> + description: The number of GPIOs that have an individual interrupt line to processor.
>> + minimum: 0
>> +
>> + clocks:
>> + maxItems: 1
>> + description:
>> + clock-specifier to represent input to the GPIO controller.
>
> Drop description.
>
>> +
>> + clock-names:
>> + const: gpio
>> +
>> + interrupt-controller: true
>> +
>> + power-domains:
>> + maxItems: 1
>> + description:
>> + Phandle to the power domain provider node.
>
> Drop.
>
>> +
>> + "#interrupt-cells":
>> + const: 2
>> +
>> +patternProperties:
>> + "-hog$":
>> + type: object
>> + properties:
>> + gpios: true
>> + gpio-hog: true
>> + input: true
>> + output-high: true
>> + output-low: true
>> + line-name: true
>> +
>> + required:
>> + - gpio-hog
>> + - gpios
I see that gpio-hog.yaml dtschema has been added.
Can it be reused here and how?
>> +
>> +required:
>> + - compatible
>> + - reg
>> + - gpio-controller
>> + - "#gpio-cells"
>> + - interrupts
>> + - ti,ngpio
>> + - ti,davinci-gpio-unbanked
>> + - clocks
>> + - clock-names
>> +
>> +additionalProperties: false
>> +
[...]
--
Best regards,
grygorii
Powered by blists - more mailing lists