summaryrefslogtreecommitdiff
path: root/net/nfc
diff options
context:
space:
mode:
authorVincent Cuissard <cuissard@marvell.com>2014-07-22 21:48:40 +0400
committerSamuel Ortiz <sameo@linux.intel.com>2014-09-01 16:40:43 +0400
commit83724c3329c93f9efc7f53498edd4c538e724366 (patch)
tree77a9be0fcb87ba1ecc565d7682e44f49452dcf14 /net/nfc
parent3c1c0f5dc80bbde5baef2403cc6a0d33c9824d2d (diff)
downloadlinux-83724c3329c93f9efc7f53498edd4c538e724366.tar.xz
NFC: NCI: Fix NCI RF FRAME interface usage
NCI RF FRAME interface is used for all kind of tags except ISODEP ones. So for all other kind of tags the status byte has to be removed. Signed-off-by: Vincent Cuissard <cuissard@marvell.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Diffstat (limited to 'net/nfc')
-rw-r--r--net/nfc/nci/data.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/net/nfc/nci/data.c b/net/nfc/nci/data.c
index 6c3aef852876..427ef2c7ab68 100644
--- a/net/nfc/nci/data.c
+++ b/net/nfc/nci/data.c
@@ -241,9 +241,12 @@ void nci_rx_data_packet(struct nci_dev *ndev, struct sk_buff *skb)
/* strip the nci data header */
skb_pull(skb, NCI_DATA_HDR_SIZE);
- if (ndev->target_active_prot == NFC_PROTO_MIFARE) {
+ if (ndev->target_active_prot == NFC_PROTO_MIFARE ||
+ ndev->target_active_prot == NFC_PROTO_JEWEL ||
+ ndev->target_active_prot == NFC_PROTO_FELICA ||
+ ndev->target_active_prot == NFC_PROTO_ISO15693) {
/* frame I/F => remove the status byte */
- pr_debug("NFC_PROTO_MIFARE => remove the status byte\n");
+ pr_debug("frame I/F => remove the status byte\n");
skb_trim(skb, (skb->len - 1));
}