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

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
...@@ -17,6 +17,19 @@ config PN544_NFC ...@@ -17,6 +17,19 @@ config PN544_NFC
To compile this driver as a module, choose m here. The module will To compile this driver as a module, choose m here. The module will
be called pn544. 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 config NFC_PN533
tristate "NXP PN533 USB driver" tristate "NXP PN533 USB driver"
depends on USB depends on USB
......
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
# #
obj-$(CONFIG_PN544_NFC) += pn544.o obj-$(CONFIG_PN544_NFC) += pn544.o
obj-$(CONFIG_PN544_HCI_NFC) += pn544_hci.o
obj-$(CONFIG_NFC_PN533) += pn533.o obj-$(CONFIG_NFC_PN533) += pn533.o
obj-$(CONFIG_NFC_WILINK) += nfcwilink.o obj-$(CONFIG_NFC_WILINK) += nfcwilink.o
......
This diff is collapsed.
...@@ -84,6 +84,12 @@ struct pn544_fw_packet { ...@@ -84,6 +84,12 @@ struct pn544_fw_packet {
}; };
#ifdef __KERNEL__ #ifdef __KERNEL__
enum {
NFC_GPIO_ENABLE,
NFC_GPIO_FW_RESET,
NFC_GPIO_IRQ
};
/* board config */ /* board config */
struct pn544_nfc_platform_data { struct pn544_nfc_platform_data {
int (*request_resources) (struct i2c_client *client); int (*request_resources) (struct i2c_client *client);
...@@ -91,6 +97,7 @@ struct pn544_nfc_platform_data { ...@@ -91,6 +97,7 @@ struct pn544_nfc_platform_data {
void (*enable) (int fw); void (*enable) (int fw);
int (*test) (void); int (*test) (void);
void (*disable) (void); void (*disable) (void);
int (*get_gpio)(int type);
}; };
#endif /* __KERNEL__ */ #endif /* __KERNEL__ */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment