aboutsummaryrefslogtreecommitdiffstats
path: root/net/nfc/nci
diff options
context:
space:
mode:
authorVincent Cuissard <cuissard@marvell.com>2014-07-22 13:48:40 -0400
committerSamuel Ortiz <sameo@linux.intel.com>2014-09-01 08:40:43 -0400
commit83724c3329c93f9efc7f53498edd4c538e724366 (patch)
tree77a9be0fcb87ba1ecc565d7682e44f49452dcf14 /net/nfc/nci
parent3c1c0f5dc80bbde5baef2403cc6a0d33c9824d2d (diff)
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/nci')
-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)
241 /* strip the nci data header */ 241 /* strip the nci data header */
242 skb_pull(skb, NCI_DATA_HDR_SIZE); 242 skb_pull(skb, NCI_DATA_HDR_SIZE);
243 243
244 if (ndev->target_active_prot == NFC_PROTO_MIFARE) { 244 if (ndev->target_active_prot == NFC_PROTO_MIFARE ||
245 ndev->target_active_prot == NFC_PROTO_JEWEL ||
246 ndev->target_active_prot == NFC_PROTO_FELICA ||
247 ndev->target_active_prot == NFC_PROTO_ISO15693) {
245 /* frame I/F => remove the status byte */ 248 /* frame I/F => remove the status byte */
246 pr_debug("NFC_PROTO_MIFARE => remove the status byte\n"); 249 pr_debug("frame I/F => remove the status byte\n");
247 skb_trim(skb, (skb->len - 1)); 250 skb_trim(skb, (skb->len - 1));
248 } 251 }
249 252