From: <Manikandan.M@microchip.com>
To: <conor@kernel.org>
Cc: <linus.walleij@linaro.org>, <brgl@bgdev.pl>, <robh@kernel.org>,
<krzk+dt@kernel.org>, <conor+dt@kernel.org>,
<Nicolas.Ferre@microchip.com>, <alexandre.belloni@bootlin.com>,
<claudiu.beznea@tuxon.dev>, <arnd@arndb.de>,
<Durai.ManickamKR@microchip.com>, <linux-gpio@vger.kernel.org>,
<devicetree@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
<linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v2 4/5] dt-bindings: gpio: convert Atmel GPIO to json-schema
Date: Thu, 27 Jun 2024 06:08:15 +0000 [thread overview]
Message-ID: <cb42c36c-6496-441a-a6c5-e4fdb512292e@microchip.com> (raw)
In-Reply-To: <20240626-fondly-batboy-e99846fd6c45@spud>
Hi Conor,
On 26/06/24 2:29 pm, Conor Dooley wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>
>
> ForwardedMessage.eml
>
> Subject:
> Re: [PATCH v2 4/5] dt-bindings: gpio: convert Atmel GPIO to json-schema
> From:
> Conor Dooley <conor@kernel.org>
> Date:
> 26/06/24, 2:29 pm
>
> To:
> Manikandan.M@microchip.com
> CC:
> linus.walleij@linaro.org, brgl@bgdev.pl, robh@kernel.org,
> krzk+dt@kernel.org, conor+dt@kernel.org, Nicolas.Ferre@microchip.com,
> alexandre.belloni@bootlin.com, claudiu.beznea@tuxon.dev, arnd@arndb.de,
> Durai.ManickamKR@microchip.com, linux-gpio@vger.kernel.org,
> devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
> linux-kernel@vger.kernel.org
>
>
> On Wed, Jun 26, 2024 at 08:32:41AM +0000,Manikandan.M@microchip.com wrote:
>> On 25/06/24 10:04 pm, Conor Dooley wrote:
>>> Re: [PATCH v2 4/5] dt-bindings: gpio: convert Atmel GPIO to json-schema
>>> From: Conor Dooley<conor@kernel.org>
>>> On Tue, Jun 25, 2024 at 10:05:24AM +0530, Manikandan Muralidharan wrote:
>>>> Convert the Atmel GPIO controller binding document to DT schema format
>>>> using json-schema.
>>>> The compatible string "microchip,sam9x7-gpio" is added as well.
>>>>
>>>> Signed-off-by: Manikandan Muralidharan<manikandan.m@microchip.com>
>>>> ---
>>>> changes in v2:
>>>> - Fix bot errors with 'make dt_binding_check', missed to add
>>>> "atmel,at91rm9200-gpio" as separate compatible for devices that uses it
>>>> - Remove label from example
>>>> - Add default entry for #gpio-lines property
>>>> - Add new compatible string details in commit message
>>>> ---
>>>> .../bindings/gpio/atmel,at91rm9200-gpio.yaml | 81 +++++++++++++++++++
>>>> .../devicetree/bindings/gpio/gpio_atmel.txt | 31 -------
>>>> 2 files changed, 81 insertions(+), 31 deletions(-)
>>>> create mode 100644 Documentation/devicetree/bindings/gpio/atmel,at91rm9200-gpio.yaml
>>>> delete mode 100644 Documentation/devicetree/bindings/gpio/gpio_atmel.txt
>>>>
>>>> diff --git a/Documentation/devicetree/bindings/gpio/atmel,at91rm9200-gpio.yaml b/Documentation/devicetree/bindings/gpio/atmel,at91rm9200-gpio.yaml
>>>> new file mode 100644
>>>> index 000000000000..3dd70933ed8e
>>>> --- /dev/null
>>>> +++ b/Documentation/devicetree/bindings/gpio/atmel,at91rm9200-gpio.yaml
>>>> @@ -0,0 +1,81 @@
>>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>>>> +%YAML 1.2
>>>> +---
>>>> +$id:http://devicetree.org/schemas/gpio/atmel,at91rm9200-gpio.yaml#
>>>> +$schema:http://devicetree.org/meta-schemas/core.yaml#
>>>> +
>>>> +title: Microchip GPIO controller (PIO)
>>>> +
>>>> +maintainers:
>>>> + - Manikandan Muralidharan<manikandan.m@microchip.com>
>>>> +
>>>> +properties:
>>>> + compatible:
>>>> + oneOf:
>>>> + - items:
>>>> + - enum:
>>>> + - atmel,at91sam9x5-gpio
>>>> + - microchip,sam9x60-gpio
>>>> + - const: atmel,at91rm9200-gpio
>>>> + - items:
>>>> + - enum:
>>>> + - microchip,sam9x7-gpio
>>>> + - const: microchip,sam9x60-gpio
>>>> + - const: atmel,at91rm9200-gpio
>>> It's worth pointing out that this is required, because the driver
>>> implements a different set of ops for the sam9x60. There's not just more
>>> of them, they're different too.
>>> Are the sam9x60 and at91rm9200 are actually compatible, or is the
>>> fallback here some mistake that originated in the dts?
>>>
>> The PIO3 pinctrl driver uses the compatible "atmel,at91rm9200-gpio" to
>> find the number of active GPIO banks and also to differentiate them from
>> the pinmux child nodes.The driver probe fails if the at91rm9200 is not
>> present in the GPIO bank compatible property list.
>> For sam9x7, "microchip,sam9x60-gpio" is used as the fallback compatible
>> and "atmel,at91rm9200-gpio" is added by default to avoid probe issues
>> and help find the number of GPIO banks by the driver.
> That's unfortunately not what I asked. Forget about
> at91_pinctrl_child_count() for a minute and answer the question again:
> Are the sam9x60 and at91rm9200 actually compatible?
>
> Hints:
> - Do the registers that are in the at91rm9200 have the same behaviour in
> the sam9x60?
The registers in at91rm9200 have the same behavior as sam9x60 expect
that the former supports only 2 Peripheral function per pin while
sam9x60 supports 4.
> - Are the new registers in sam9x60 optional, so that if all sam9x60 code
> was deleted from the driver, the driver would still work for the subset
> of features that the at91rm9200 already supports?
at91rm9200 function will work for sam9x60 but not up-to its full
potential.The new registers in sam9x60 for drive-strength, slew-rate,
debounce, pull-down will help drive the the current pinmux configs for
sam9x60/9x7 board DT.
>
> Thanks,
> Conor.
>
--
Thanks and Regards,
Manikandan M.
WARNING: multiple messages have this Message-ID (diff)
From: <Manikandan.M@microchip.com>
To: <conor@kernel.org>
Cc: robh@kernel.org, conor+dt@kernel.org, arnd@arndb.de,
alexandre.belloni@bootlin.com, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, linus.walleij@linaro.org,
claudiu.beznea@tuxon.dev, linux-gpio@vger.kernel.org,
Durai.ManickamKR@microchip.com, krzk+dt@kernel.org,
brgl@bgdev.pl, linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v2 4/5] dt-bindings: gpio: convert Atmel GPIO to json-schema
Date: Thu, 27 Jun 2024 06:08:15 +0000 [thread overview]
Message-ID: <cb42c36c-6496-441a-a6c5-e4fdb512292e@microchip.com> (raw)
In-Reply-To: <20240626-fondly-batboy-e99846fd6c45@spud>
Hi Conor,
On 26/06/24 2:29 pm, Conor Dooley wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>
>
> ForwardedMessage.eml
>
> Subject:
> Re: [PATCH v2 4/5] dt-bindings: gpio: convert Atmel GPIO to json-schema
> From:
> Conor Dooley <conor@kernel.org>
> Date:
> 26/06/24, 2:29 pm
>
> To:
> Manikandan.M@microchip.com
> CC:
> linus.walleij@linaro.org, brgl@bgdev.pl, robh@kernel.org,
> krzk+dt@kernel.org, conor+dt@kernel.org, Nicolas.Ferre@microchip.com,
> alexandre.belloni@bootlin.com, claudiu.beznea@tuxon.dev, arnd@arndb.de,
> Durai.ManickamKR@microchip.com, linux-gpio@vger.kernel.org,
> devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
> linux-kernel@vger.kernel.org
>
>
> On Wed, Jun 26, 2024 at 08:32:41AM +0000,Manikandan.M@microchip.com wrote:
>> On 25/06/24 10:04 pm, Conor Dooley wrote:
>>> Re: [PATCH v2 4/5] dt-bindings: gpio: convert Atmel GPIO to json-schema
>>> From: Conor Dooley<conor@kernel.org>
>>> On Tue, Jun 25, 2024 at 10:05:24AM +0530, Manikandan Muralidharan wrote:
>>>> Convert the Atmel GPIO controller binding document to DT schema format
>>>> using json-schema.
>>>> The compatible string "microchip,sam9x7-gpio" is added as well.
>>>>
>>>> Signed-off-by: Manikandan Muralidharan<manikandan.m@microchip.com>
>>>> ---
>>>> changes in v2:
>>>> - Fix bot errors with 'make dt_binding_check', missed to add
>>>> "atmel,at91rm9200-gpio" as separate compatible for devices that uses it
>>>> - Remove label from example
>>>> - Add default entry for #gpio-lines property
>>>> - Add new compatible string details in commit message
>>>> ---
>>>> .../bindings/gpio/atmel,at91rm9200-gpio.yaml | 81 +++++++++++++++++++
>>>> .../devicetree/bindings/gpio/gpio_atmel.txt | 31 -------
>>>> 2 files changed, 81 insertions(+), 31 deletions(-)
>>>> create mode 100644 Documentation/devicetree/bindings/gpio/atmel,at91rm9200-gpio.yaml
>>>> delete mode 100644 Documentation/devicetree/bindings/gpio/gpio_atmel.txt
>>>>
>>>> diff --git a/Documentation/devicetree/bindings/gpio/atmel,at91rm9200-gpio.yaml b/Documentation/devicetree/bindings/gpio/atmel,at91rm9200-gpio.yaml
>>>> new file mode 100644
>>>> index 000000000000..3dd70933ed8e
>>>> --- /dev/null
>>>> +++ b/Documentation/devicetree/bindings/gpio/atmel,at91rm9200-gpio.yaml
>>>> @@ -0,0 +1,81 @@
>>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>>>> +%YAML 1.2
>>>> +---
>>>> +$id:http://devicetree.org/schemas/gpio/atmel,at91rm9200-gpio.yaml#
>>>> +$schema:http://devicetree.org/meta-schemas/core.yaml#
>>>> +
>>>> +title: Microchip GPIO controller (PIO)
>>>> +
>>>> +maintainers:
>>>> + - Manikandan Muralidharan<manikandan.m@microchip.com>
>>>> +
>>>> +properties:
>>>> + compatible:
>>>> + oneOf:
>>>> + - items:
>>>> + - enum:
>>>> + - atmel,at91sam9x5-gpio
>>>> + - microchip,sam9x60-gpio
>>>> + - const: atmel,at91rm9200-gpio
>>>> + - items:
>>>> + - enum:
>>>> + - microchip,sam9x7-gpio
>>>> + - const: microchip,sam9x60-gpio
>>>> + - const: atmel,at91rm9200-gpio
>>> It's worth pointing out that this is required, because the driver
>>> implements a different set of ops for the sam9x60. There's not just more
>>> of them, they're different too.
>>> Are the sam9x60 and at91rm9200 are actually compatible, or is the
>>> fallback here some mistake that originated in the dts?
>>>
>> The PIO3 pinctrl driver uses the compatible "atmel,at91rm9200-gpio" to
>> find the number of active GPIO banks and also to differentiate them from
>> the pinmux child nodes.The driver probe fails if the at91rm9200 is not
>> present in the GPIO bank compatible property list.
>> For sam9x7, "microchip,sam9x60-gpio" is used as the fallback compatible
>> and "atmel,at91rm9200-gpio" is added by default to avoid probe issues
>> and help find the number of GPIO banks by the driver.
> That's unfortunately not what I asked. Forget about
> at91_pinctrl_child_count() for a minute and answer the question again:
> Are the sam9x60 and at91rm9200 actually compatible?
>
> Hints:
> - Do the registers that are in the at91rm9200 have the same behaviour in
> the sam9x60?
The registers in at91rm9200 have the same behavior as sam9x60 expect
that the former supports only 2 Peripheral function per pin while
sam9x60 supports 4.
> - Are the new registers in sam9x60 optional, so that if all sam9x60 code
> was deleted from the driver, the driver would still work for the subset
> of features that the at91rm9200 already supports?
at91rm9200 function will work for sam9x60 but not up-to its full
potential.The new registers in sam9x60 for drive-strength, slew-rate,
debounce, pull-down will help drive the the current pinmux configs for
sam9x60/9x7 board DT.
>
> Thanks,
> Conor.
>
--
Thanks and Regards,
Manikandan M.
next prev parent reply other threads:[~2024-06-27 6:08 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-25 4:35 [PATCH v2 0/5] Convert Atmel PIO3 Pinctrl and GPIO bindings to yaml Manikandan Muralidharan
2024-06-25 4:35 ` [PATCH v2 1/5] ARM: dts: microchip: change to simple-mfd from simple-bus for PIO3 pinumux controller Manikandan Muralidharan
2024-06-25 4:35 ` [PATCH v2 2/5] ARM: dts: microchip: Remove additional compatible string from PIO3 pinctrl nodes Manikandan Muralidharan
2024-06-25 4:35 ` [PATCH v2 3/5] ARM: dts: microchip: sam9x60: Remove additional compatible string from GPIO node Manikandan Muralidharan
2024-06-25 4:35 ` [PATCH v2 4/5] dt-bindings: gpio: convert Atmel GPIO to json-schema Manikandan Muralidharan
2024-06-25 16:34 ` Conor Dooley
2024-06-25 16:34 ` Conor Dooley
2024-06-26 8:32 ` Manikandan.M
2024-06-26 8:32 ` Manikandan.M
2024-06-26 8:59 ` Conor Dooley
2024-06-26 8:59 ` Conor Dooley
2024-06-27 6:08 ` Manikandan.M [this message]
2024-06-27 6:08 ` Manikandan.M
2024-06-27 15:42 ` Conor Dooley
2024-06-27 15:42 ` Conor Dooley
2024-06-27 15:44 ` Conor Dooley
2024-06-27 15:44 ` Conor Dooley
2024-06-25 4:35 ` [PATCH v2 5/5] dt-bindings: pinctrl: Convert Atmel PIO3 pinctrl " Manikandan Muralidharan
2024-07-01 15:03 ` Rob Herring
2024-07-01 15:03 ` Rob Herring
2024-07-02 4:54 ` Manikandan.M
2024-07-02 4:54 ` Manikandan.M
2024-07-09 9:21 ` Manikandan.M
2024-07-09 9:21 ` Manikandan.M
2024-06-26 12:08 ` [PATCH v2 0/5] Convert Atmel PIO3 Pinctrl and GPIO bindings to yaml Linus Walleij
2024-06-26 12:08 ` Linus Walleij
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=cb42c36c-6496-441a-a6c5-e4fdb512292e@microchip.com \
--to=manikandan.m@microchip.com \
--cc=Durai.ManickamKR@microchip.com \
--cc=Nicolas.Ferre@microchip.com \
--cc=alexandre.belloni@bootlin.com \
--cc=arnd@arndb.de \
--cc=brgl@bgdev.pl \
--cc=claudiu.beznea@tuxon.dev \
--cc=conor+dt@kernel.org \
--cc=conor@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=krzk+dt@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=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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.