Commit 20d83f24 authored by John W. Linville's avatar John W. Linville
Browse files


Samuel Ortiz <sameo@linux.intel.com> says:

"NFC: 3.15: First pull request

This is the NFC pull request for 3.15. With this one we have:

- Support for ISO 15693 a.k.a. NFC vicinity a.k.a. Type 5 tags. ISO
  15693 are long range (1 - 2 meters) vicinity tags/cards. The kernel
  now supports those through the NFC netlink and digital APIs.

- Support for TI's trf7970a chipset. This chipset relies on the NFC
  digital layer and the driver currently supports type 2, 4A and 5 tags.

- Support for NXP's pn544 secure firmare download. The pn544 C3 chipsets
  relies on a different firmware download protocal than the C2 one. We
  now support both and use the right one depending on the version we
  detect at runtime.

- Support for 4A tags from the NFC digital layer.

- A bunch of cleanups and minor fixes from Axel Lin and Thierry Escande."

Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parents 5f667642 29e27dd8
Loading
Loading
Loading
Loading
+34 −0
Original line number Diff line number Diff line
* Texas Instruments TRF7970A RFID/NFC/15693 Transceiver

Required properties:
- compatible: Should be "ti,trf7970a".
- spi-max-frequency: Maximum SPI frequency (<= 2000000).
- interrupt-parent: phandle of parent interrupt handler.
- interrupts: A single interrupt specifier.
- ti,enable-gpios: Two GPIO entries used for 'EN' and 'EN2' pins on the
  TRF7970A.
- vin-supply: Regulator for supply voltage to VIN pin

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 TRF7970A on SPI1):

&spi1 {
	status = "okay";

	nfc@0 {
		compatible = "ti,trf7970a";
		reg = <0>;
		pinctrl-names = "default";
		pinctrl-0 = <&trf7970a_default>;
		spi-max-frequency = <2000000>;
		interrupt-parent = <&gpio2>;
		interrupts = <14 0>;
		ti,enable-gpios = <&gpio2 2 GPIO_ACTIVE_LOW>,
				  <&gpio2 5 GPIO_ACTIVE_LOW>;
		vin-supply = <&ldo3_reg>;
		status = "okay";
	};
};
+1 −0
Original line number Diff line number Diff line
@@ -6067,6 +6067,7 @@ F: include/net/nfc/
F:	include/uapi/linux/nfc.h
F:	drivers/nfc/
F:	include/linux/platform_data/pn544.h
F:	Documentation/devicetree/bindings/net/nfc/

NFS, SUNRPC, AND LOCKD CLIENTS
M:	Trond Myklebust <trond.myklebust@primarydata.com>
+12 −0
Original line number Diff line number Diff line
@@ -26,6 +26,18 @@ config NFC_WILINK
	  Say Y here to compile support for Texas Instrument's NFC WiLink driver
	  into the kernel or say M to compile it as module.

config NFC_TRF7970A
	tristate "Texas Instruments TRF7970a NFC driver"
	depends on SPI && NFC_DIGITAL
	help
	  This option enables the NFC driver for Texas Instruments' TRF7970a
	  device. Such device supports 5 different protocols: ISO14443A,
	  ISO14443B, FeLiCa, ISO15693 and ISO18000-3.

	  Say Y here to compile support for TRF7970a into the kernel or
	  say M  to compile it as a module. The module will be called
	  trf7970a.ko.

config NFC_MEI_PHY
	tristate "MEI bus NFC device support"
	depends on INTEL_MEI && NFC_HCI
+1 −0
Original line number Diff line number Diff line
@@ -10,5 +10,6 @@ obj-$(CONFIG_NFC_MEI_PHY) += mei_phy.o
obj-$(CONFIG_NFC_SIM)		+= nfcsim.o
obj-$(CONFIG_NFC_PORT100)	+= port100.o
obj-$(CONFIG_NFC_MRVL)		+= nfcmrvl/
obj-$(CONFIG_NFC_TRF7970A)	+= trf7970a.o

ccflags-$(CONFIG_NFC_DEBUG) := -DDEBUG
+8 −20
Original line number Diff line number Diff line
@@ -55,26 +55,14 @@
				   NFC_PROTO_NFC_DEP_MASK)

static const struct usb_device_id pn533_table[] = {
	{ .match_flags		= USB_DEVICE_ID_MATCH_DEVICE,
	  .idVendor		= PN533_VENDOR_ID,
	  .idProduct		= PN533_PRODUCT_ID,
	  .driver_info		= PN533_DEVICE_STD,
	},
	{ .match_flags		= USB_DEVICE_ID_MATCH_DEVICE,
	  .idVendor		= SCM_VENDOR_ID,
	  .idProduct		= SCL3711_PRODUCT_ID,
	  .driver_info		= PN533_DEVICE_STD,
	},
	{ .match_flags		= USB_DEVICE_ID_MATCH_DEVICE,
	  .idVendor		= SONY_VENDOR_ID,
	  .idProduct		= PASORI_PRODUCT_ID,
	  .driver_info		= PN533_DEVICE_PASORI,
	},
	{ .match_flags		= USB_DEVICE_ID_MATCH_DEVICE,
	  .idVendor		= ACS_VENDOR_ID,
	  .idProduct		= ACR122U_PRODUCT_ID,
	  .driver_info		= PN533_DEVICE_ACR122U,
	},
	{ USB_DEVICE(PN533_VENDOR_ID, PN533_PRODUCT_ID),
	  .driver_info = PN533_DEVICE_STD },
	{ USB_DEVICE(SCM_VENDOR_ID, SCL3711_PRODUCT_ID),
	  .driver_info = PN533_DEVICE_STD },
	{ USB_DEVICE(SONY_VENDOR_ID, PASORI_PRODUCT_ID),
	  .driver_info = PN533_DEVICE_PASORI },
	{ USB_DEVICE(ACS_VENDOR_ID, ACR122U_PRODUCT_ID),
	  .driver_info = PN533_DEVICE_ACR122U },
	{ }
};
MODULE_DEVICE_TABLE(usb, pn533_table);
Loading