#
# Near Field Communication (NFC) devices
#

menu "Near Field Communication (NFC) devices"
	depends on NFC

config PN544_NFC
	tristate "PN544 NFC driver"
	depends on I2C
	select CRC_CCITT
	default n
	---help---
	  Say yes if you want PN544 Near Field Communication driver.
	  This is for i2c connected version. If unsure, say N here.

	  To compile this driver as a module, choose m here. The module will
	  be called pn544.

config PN544_HCI_NFC
	tristate "HCI PN544 NFC driver"
	depends on I2C && NFC_SHDLC
	select CRC_CCITT
	default n
	---help---
	  NXP PN544 i2c driver.
	  This is a driver based on the SHDLC and HCI NFC kernel layers and
	  will thus not work with NXP libnfc library.

	  To compile this driver as a module, choose m here. The module will
	  be called pn544_hci.

config NFC_PN533
	tristate "NXP PN533 USB driver"
	depends on USB
	help
	  NXP PN533 USB driver.
	  This driver provides support for NFC NXP PN533 devices.

	  Say Y here to compile support for PN533 devices into the
	  kernel or say M to compile it as module (pn533).

config NFC_WILINK
	tristate "Texas Instruments NFC WiLink driver"
	depends on TI_ST && NFC_NCI
	help
	  This enables the NFC driver for Texas Instrument's BT/FM/GPS/NFC
	  combo devices. This makes use of shared transport line discipline
	  core driver to communicate with the NFC core of the combo chip.

	  Say Y here to compile support for Texas Instrument's NFC WiLink driver
	  into the kernel or say M to compile it as module.

endmenu
