On Thu, Jun 27, 2024 at 06:08:15AM +0000, Manikandan.M@xxxxxxxxxxxxx wrote: > 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@xxxxxxxxxx> > > Date: > > 26/06/24, 2:29 pm > > > > To: > > Manikandan.M@xxxxxxxxxxxxx > > CC: > > linus.walleij@xxxxxxxxxx, brgl@xxxxxxxx, robh@xxxxxxxxxx, > > krzk+dt@xxxxxxxxxx, conor+dt@xxxxxxxxxx, Nicolas.Ferre@xxxxxxxxxxxxx, > > alexandre.belloni@xxxxxxxxxxx, claudiu.beznea@xxxxxxxxx, arnd@xxxxxxxx, > > Durai.ManickamKR@xxxxxxxxxxxxx, linux-gpio@xxxxxxxxxxxxxxx, > > devicetree@xxxxxxxxxxxxxxx, linux-arm-kernel@xxxxxxxxxxxxxxxxxxx, > > linux-kernel@xxxxxxxxxxxxxxx > > > > > > On Wed, Jun 26, 2024 at 08:32:41AM +0000,Manikandan.M@xxxxxxxxxxxxx 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@xxxxxxxxxx> > >>> 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@xxxxxxxxxxxxx> > >>>> --- > >>>> 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@xxxxxxxxxxxxx> > >>>> + > >>>> +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. Right. The compatible setup makes sense then, just an explanation for why should go into your commit message. Thanks, Conor.
Attachment:
signature.asc
Description: PGP signature