Commit bbed0dee authored by Eric Lapuyade's avatar Eric Lapuyade Committed by John W. Linville
Browse files

NFC: HCI based pn544 driver



This is an NFC driver for NXP pn544.
Unlike pn544.c, this one is based on the NFC HCI and SHDLC kernel layers.

Signed-off-by: default avatarEric Lapuyade <eric.lapuyade@intel.com>
Signed-off-by: default avatarSamuel Ortiz <sameo@linux.intel.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent e5fe4cf8
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -17,6 +17,19 @@ config PN544_NFC
	  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
+1 −0
Original line number Diff line number Diff line
@@ -3,6 +3,7 @@
#

obj-$(CONFIG_PN544_NFC)		+= pn544.o
obj-$(CONFIG_PN544_HCI_NFC)	+= pn544_hci.o
obj-$(CONFIG_NFC_PN533)		+= pn533.o
obj-$(CONFIG_NFC_WILINK)	+= nfcwilink.o

+947 −0

File added.

Preview size limit exceeded, changes collapsed.

+7 −0
Original line number Diff line number Diff line
@@ -84,6 +84,12 @@ struct pn544_fw_packet {
};

#ifdef __KERNEL__
enum {
	NFC_GPIO_ENABLE,
	NFC_GPIO_FW_RESET,
	NFC_GPIO_IRQ
};

/* board config */
struct pn544_nfc_platform_data {
	int (*request_resources) (struct i2c_client *client);
@@ -91,6 +97,7 @@ struct pn544_nfc_platform_data {
	void (*enable) (int fw);
	int (*test) (void);
	void (*disable) (void);
	int (*get_gpio)(int type);
};
#endif /* __KERNEL__ */