linux/drivers/nfc
Christophe Ricard c97ffdbf51 NFC: st21nfca: Improved i2c Rx data correctness check
A frame starts with ST21NFCA_SOF_EOF(0x7e) + 0x00.
A frame ends with ST21NFCA_SOF_EOF(0x7e).
It is possible that the i2c macrocell is stopped for other
communication interfaces with highest priority(RF or SWP).
This can be seen with some 0xFF data at the end of a received shdlc buffer.
If this happen we need to discard the frame because the CLF will repeat it.

In order to push accurate data to hci layer, we add the following fix:
- Instead of looking for the first 0x7e in the frame, check that the last
received byte is 0x7e.
- Check that the first frame reception block start with start of
frame(0x7e 0x00). If not, clear the buffer.
- Check that the next frame reception block do not start with start of
frame(0x7e). If so, clear the buffer.

Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2014-05-05 01:00:34 +02:00
..
microread nfc: Fix FSF address in file headers 2013-12-11 10:56:21 -05:00
nfcmrvl NFC: nfcmrvl: Fix possible memory leak issue 2014-01-09 01:27:20 +01:00
pn544 NFC: pn544_i2c: Fix null pointer exception when not using platform data 2014-04-22 00:37:29 +02:00
st21nfca NFC: st21nfca: Improved i2c Rx data correctness check 2014-05-05 01:00:34 +02:00
Kconfig NFC: ST21NFCA: Add driver for STMicroelectronics ST21NFCA NFC Chip 2014-04-22 00:37:25 +02:00
Makefile NFC: ST21NFCA: Add driver for STMicroelectronics ST21NFCA NFC Chip 2014-04-22 00:37:25 +02:00
mei_phy.c NFC: mei_phy: Using kfree_skb() instead of kfree() 2014-01-04 03:32:26 +01:00
mei_phy.h
nfcsim.c NFC: Convert nfc_dev_info and nfc_dev_err to nfc_<level> 2013-09-25 01:35:39 +02:00
nfcwilink.c nfc: Fix FSF address in file headers 2013-12-11 10:56:21 -05:00
pn533.c NFC: pn533: Convert to use USB_DEVICE macro 2014-02-23 23:32:18 +01:00
port100.c NFC: port100: Convert to use USB_DEVICE macro 2014-02-23 23:32:18 +01:00
trf7970a.c NFC: trf7970a: Add support for the ISO/IEC 14443-B and Type 4B tags 2014-04-22 00:37:28 +02:00