Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 023033b1 authored by David S. Miller's avatar David S. Miller
Browse files


Samuel Ortiz says:

====================
NFC 4.2 pull request

This is the NFC pull request for 4.2.

- NCI drivers can now define their own handlers for processing
  proprietary NCI responses and notifications.

- NFC vendors can use a dedicated netlink API to send their own
  proprietary commands, like e.g. all commands needed to implement
  vendor specific manufacturing tools.

- A new generic NCI over UART driver against which any NCI chipset
  running on top of a serial interface can register.

- The st21nfcb driver is renamed to st-nci as it can and will support
  most of ST Microelectronics NCI chipsets.

- The st21nfcb driver can put its CLF in hibernate mode and save
  significant amount of power.

- A few st21nfcb minor fixes.

- The NXP NCI driver now supports ACPI enumeration.

- The Marvell NCI driver now supports both USB and serial
  physical interfaces.

- The Marvell NCI drivers also supports NCI frames being muxed
  over HCI. This is a setting that can be defined by a DT property.
====================

Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parents cadfaf43 d0dcad8b
Loading
Loading
Loading
Loading
+29 −0
Original line number Original line Diff line number Diff line
* Marvell International Ltd. NCI NFC Controller

Required properties:
- compatible: Should be "mrvl,nfc-uart".

Optional SoC specific properties:
- pinctrl-names: Contains only one value - "default".
- pintctrl-0: Specifies the pin control groups used for this controller.
- reset-n-io: Output GPIO pin used to reset the chip (active low).
- hci-muxed: Specifies that the chip is muxing NCI over HCI frames.

Optional UART-based chip specific properties:
- flow-control: Specifies that the chip is using RTS/CTS.
- break-control: Specifies that the chip needs specific break management.

Example (for ARM-based BeagleBoard Black with 88W8887 on UART5):

&uart5 {
	status = "okay";

	nfcmrvluart: nfcmrvluart@5 {
		compatible = "mrvl,nfc-uart";

		reset-n-io = <&gpio3 16 0>;

		hci-muxed;
		flow-control;
        }
};
+2 −2
Original line number Original line Diff line number Diff line
* STMicroelectronics SAS. ST21NFCB NFC Controller
* STMicroelectronics SAS. ST NCI NFC Controller


Required properties:
Required properties:
- compatible: Should be "st,st21nfcb-i2c".
- compatible: Should be "st,st21nfcb-i2c" or "st,st21nfcc-i2c".
- clock-frequency: I²C work frequency.
- clock-frequency: I²C work frequency.
- reg: address on the bus
- reg: address on the bus
- interrupt-parent: phandle for the interrupt gpio controller
- interrupt-parent: phandle for the interrupt gpio controller
+4 −0
Original line number Original line Diff line number Diff line
@@ -18,6 +18,9 @@ Optional SoC Specific Properties:
  "IRQ Status Read" erratum.
  "IRQ Status Read" erratum.
- en2-rf-quirk: Specify that the trf7970a being used has the "EN2 RF"
- en2-rf-quirk: Specify that the trf7970a being used has the "EN2 RF"
  erratum.
  erratum.
- t5t-rmb-extra-byte-quirk: Specify that the trf7970a has the erratum
  where an extra byte is returned by Read Multiple Block commands issued
  to Type 5 tags.


Example (for ARM-based BeagleBone with TRF7970A on SPI1):
Example (for ARM-based BeagleBone with TRF7970A on SPI1):


@@ -39,6 +42,7 @@ Example (for ARM-based BeagleBone with TRF7970A on SPI1):
		autosuspend-delay = <30000>;
		autosuspend-delay = <30000>;
		irq-status-read-quirk;
		irq-status-read-quirk;
		en2-rf-quirk;
		en2-rf-quirk;
		t5t-rmb-extra-byte-quirk;
		status = "okay";
		status = "okay";
	};
	};
};
};
+1 −1
Original line number Original line Diff line number Diff line
@@ -122,7 +122,7 @@ This must be done from a context that can sleep.
PHY Management
PHY Management
--------------
--------------


The physical link (i2c, ...) management is defined by the following struture:
The physical link (i2c, ...) management is defined by the following structure:


struct nfc_phy_ops {
struct nfc_phy_ops {
	int (*write)(void *dev_id, struct sk_buff *skb);
	int (*write)(void *dev_id, struct sk_buff *skb);
+1 −1
Original line number Original line Diff line number Diff line
@@ -72,6 +72,6 @@ source "drivers/nfc/pn544/Kconfig"
source "drivers/nfc/microread/Kconfig"
source "drivers/nfc/microread/Kconfig"
source "drivers/nfc/nfcmrvl/Kconfig"
source "drivers/nfc/nfcmrvl/Kconfig"
source "drivers/nfc/st21nfca/Kconfig"
source "drivers/nfc/st21nfca/Kconfig"
source "drivers/nfc/st21nfcb/Kconfig"
source "drivers/nfc/st-nci/Kconfig"
source "drivers/nfc/nxp-nci/Kconfig"
source "drivers/nfc/nxp-nci/Kconfig"
endmenu
endmenu
Loading