Commit 4cc0246c authored by Krzysztof Kozlowski's avatar Krzysztof Kozlowski Committed by Rob Herring
Browse files

dt-bindings: nfc: nxp,pn532: convert to dtschema



Convert the NXP PN532 NFC controller to DT schema format.

Drop the "clock-frequency" property during conversion because it is a
property of I2C bus controller, not I2C slave device.  It was also never
used by the driver.

Signed-off-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Link: https://lore.kernel.org/r/20211011073934.34340-4-krzysztof.kozlowski@canonical.com


Signed-off-by: default avatarRob Herring <robh@kernel.org>
parent 54aed10d
Loading
Loading
Loading
Loading
+65 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/net/nfc/nxp,pn532.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: NXP Semiconductors PN532 NFC controller

maintainers:
  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>

properties:
  compatible:
    oneOf:
      - const: nxp,pn532
      - description: Deprecated bindings
        enum:
          - nxp,pn532-i2c
          - nxp,pn533-i2c
        deprecated: true

  interrupts:
    description: Required if connected via I2C
    maxItems: 1

  reg:
    description: Required if connected via I2C
    maxItems: 1

required:
  - compatible

dependencies:
  interrupts: [ 'reg' ]

additionalProperties: false

examples:
  # PN532 on I2C bus
  - |
    #include <dt-bindings/interrupt-controller/irq.h>

    i2c {
        #address-cells = <1>;
        #size-cells = <0>;

        nfc@24 {
            compatible = "nxp,pn532";

            reg = <0x24>;

            interrupt-parent = <&gpio1>;
            interrupts = <17 IRQ_TYPE_LEVEL_HIGH>;
        };
    };

  # PN532 connected via UART
  - |
    serial@49042000 {
        reg = <0x49042000 0x400>;

        nfc {
            compatible = "nxp,pn532";
        };
    };
+0 −46
Original line number Diff line number Diff line
* NXP Semiconductors PN532 NFC Controller

Required properties:
- compatible: Should be
    - "nxp,pn532" Place a node with this inside the devicetree node of the bus
                  where the NFC chip is connected to.
                  Currently the kernel has phy bindings for uart and i2c.
    - "nxp,pn532-i2c" (DEPRECATED) only works for the i2c binding.
    - "nxp,pn533-i2c" (DEPRECATED) only works for the i2c binding.

Required properties if connected on i2c:
- clock-frequency: I²C work frequency.
- reg: for the I²C bus address. This is fixed at 0x24 for the PN532.
- interrupts: GPIO interrupt to which the chip is connected

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 PN532 on I2C2):

&i2c2 {


	pn532: nfc@24 {

		compatible = "nxp,pn532";

		reg = <0x24>;
		clock-frequency = <400000>;

		interrupt-parent = <&gpio1>;
		interrupts = <17 IRQ_TYPE_EDGE_FALLING>;

	};
};

Example (for PN532 connected via uart):

uart4: serial@49042000 {
        compatible = "ti,omap3-uart";

        pn532: nfc {
                compatible = "nxp,pn532";
        };
};