Subject: Re: [PATCH v4] dt-bindings: net: nfc: nxp,pn544: Convert txt bindings to yaml

From: Rob Herring <[email-masked]>
Date: Tue, 26 Oct 2021 18:32:47 -0500

On Sun, Oct 17, 2021 at 06:02:10PM +0200, David Heidelberg wrote:
> Convert bindings for NXP PN544 NFC driver to YAML syntax.
> 
> Signed-off-by: David Heidelberg <[email-masked]>
> ---
> v2
>  - Krzysztof is a maintainer
>  - pintctrl dropped
>  - 4 space indent for example
>  - nfc node name
> v3
>  - remove whole pinctrl
> v4
>  - drop clock-frequency, which is inherited by i2c bus
> 
>  .../bindings/net/nfc/nxp,pn544.yaml           | 56 +++++++++++++++++++
>  .../devicetree/bindings/net/nfc/pn544.txt     | 33 -----------
>  2 files changed, 56 insertions(+), 33 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/net/nfc/nxp,pn544.yaml
>  delete mode 100644 Documentation/devicetree/bindings/net/nfc/pn544.txt
> 
> diff --git a/Documentation/devicetree/bindings/net/nfc/nxp,pn544.yaml b/Documentation/devicetree/bindings/net/nfc/nxp,pn544.yaml
> new file mode 100644
> index 000000000000..4592d1194a71
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/net/nfc/nxp,pn544.yaml
> @@ -0,0 +1,56 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/net/nfc/nxp,pn544.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: NXP Semiconductors PN544 NFC Controller
> +
> +maintainers:
> +  - Krzysztof Kozlowski <[email-masked]>
> +
> +properties:
> +  compatible:
> +    const: nxp,pn544-i2c
> +
> +  reg:
> +    maxItems: 1
> +
> +  interrupts:
> +    maxItems: 1
> +
> +  enable-gpios:
> +    description: Output GPIO pin used for enabling/disabling the PN544
> +
> +  firmware-gpios:
> +    description: Output GPIO pin used to enter firmware download mode

*-gpios needs to say how many (maxItems: 1). I'll fix when applying.

> +
> +required:
> +  - compatible
> +  - reg
> +  - interrupts
> +  - enable-gpios
> +  - firmware-gpios
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/gpio/gpio.h>
> +    #include <dt-bindings/interrupt-controller/irq.h>
> +
> +    i2c {
> +        #address-cells = <1>;
> +        #size-cells = <0>;
> +
> +        nfc@28 {
> +            compatible = "nxp,pn544-i2c";
> +            reg = <0x28>;
> +
> +            interrupt-parent = <&gpio1>;
> +            interrupts = <17 IRQ_TYPE_LEVEL_HIGH>;
> +
> +            enable-gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>;
> +            firmware-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>;
> +        };
> +    };
> diff --git a/Documentation/devicetree/bindings/net/nfc/pn544.txt b/Documentation/devicetree/bindings/net/nfc/pn544.txt
> deleted file mode 100644
> index 2bd82562ce8e..000000000000
> --- a/Documentation/devicetree/bindings/net/nfc/pn544.txt
> +++ /dev/null
> @@ -1,33 +0,0 @@
> -* NXP Semiconductors PN544 NFC Controller
> -
> -Required properties:
> -- compatible: Should be "nxp,pn544-i2c".
> -- clock-frequency: I²C work frequency.
> -- reg: address on the bus
> -- interrupts: GPIO interrupt to which the chip is connected
> -- enable-gpios: Output GPIO pin used for enabling/disabling the PN544
> -- firmware-gpios: Output GPIO pin used to enter firmware download mode
> -
> -Optional SoC Specific Properties:
> -- pinctrl-names: Contains only one value - "default".
> -- pintctrl-0: Specifies the pin control groups used for this controller.
> -
> -Example (for ARM-based BeagleBone with PN544 on I2C2):
> -
> -&i2c2 {
> -
> -
> -	pn544: pn544@28 {
> -
> -		compatible = "nxp,pn544-i2c";
> -
> -		reg = <0x28>;
> -		clock-frequency = <400000>;
> -
> -		interrupt-parent = <&gpio1>;
> -		interrupts = <17 IRQ_TYPE_LEVEL_HIGH>;
> -
> -		enable-gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>;
> -		firmware-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>;
> -	};
> -};
> -- 
> 2.33.0
> 
>