NFC: st21nfcb: Add driver for STMicroelectronics ST21NFCB NFC chip
authorChristophe Ricard <christophe.ricard@gmail.com>
Sun, 25 May 2014 20:35:38 +0000 (22:35 +0200)
committerSamuel Ortiz <sameo@linux.intel.com>
Tue, 22 Jul 2014 22:49:28 +0000 (00:49 +0200)
commit35630df68d6030daf12dde12ed07bbe26324e6ac
treeda7a3c8ed7ed6d31d9f9f02582be7d673c21716a
parent55537c7e7d76417303c32f84a8dd1a12e02c4409
NFC: st21nfcb: Add driver for STMicroelectronics ST21NFCB NFC chip

Add driver for STMicroelectronics ST21NFCB NFC controller.
ST21NFCB is using NCI protocol and a proprietary low level transport
protocol called NDLC used on top.

NDLC:
The protocol defines 2 types of frame:
- One type carrying NCI data (referred as DATAFRAME frames).
- One type carrying protocol information used for flow control and error
control mechanisms (referred as SUPERVISOR frames).

After each frame transmission to the NFC controller, the device host
SHALL waitfor  an ACK (SUPERVISOR frame) reception before sending a
new frame.
The NFC controller MAY send a frame at anytime to the device host.
The NFC controller MAY send a specific WAIT supervisor frame to indicate
to device host that a NCI data packet has been received but that it could
take significant time before the NFC controller sends an ACK and thus
allows next data reception.

Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
drivers/nfc/Kconfig
drivers/nfc/Makefile
drivers/nfc/st21nfcb/Kconfig [new file with mode: 0644]
drivers/nfc/st21nfcb/Makefile [new file with mode: 0644]
drivers/nfc/st21nfcb/i2c.c [new file with mode: 0644]
drivers/nfc/st21nfcb/ndlc.c [new file with mode: 0644]
drivers/nfc/st21nfcb/ndlc.h [new file with mode: 0644]
drivers/nfc/st21nfcb/st21nfcb.c [new file with mode: 0644]
drivers/nfc/st21nfcb/st21nfcb.h [new file with mode: 0644]
include/linux/platform_data/st21nfcb.h [new file with mode: 0644]