summaryrefslogtreecommitdiffstats
path: root/net/nfc/digital_core.c
diff options
context:
space:
mode:
authorThierry Escande <thierry.escande@linux.intel.com>2014-01-27 00:31:31 +0100
committerSamuel Ortiz <sameo@linux.intel.com>2014-02-16 23:49:54 +0100
commit12e3d241e42956da168fd499347855af799f62fb (patch)
tree8308212156ce23e3778c7745d58bc8a9583dca76 /net/nfc/digital_core.c
parentd3815ea95c67e62a2c651e7b5b4e08e95a4cbb13 (diff)
downloadlinux-12e3d241e42956da168fd499347855af799f62fb.tar.gz
linux-12e3d241e42956da168fd499347855af799f62fb.tar.bz2
linux-12e3d241e42956da168fd499347855af799f62fb.zip
NFC: digital: Add poll support for type 4A tag platform
This adds support for ATS request and response handling for type 4A tag activation. Signed-off-by: Thierry Escande <thierry.escande@linux.intel.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Diffstat (limited to 'net/nfc/digital_core.c')
-rw-r--r--net/nfc/digital_core.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/net/nfc/digital_core.c b/net/nfc/digital_core.c
index 48906ca60540..e1f240266adf 100644
--- a/net/nfc/digital_core.c
+++ b/net/nfc/digital_core.c
@@ -337,6 +337,11 @@ int digital_target_found(struct nfc_digital_dev *ddev,
framing = NFC_DIGITAL_FRAMING_ISO15693_TVT;
check_crc = digital_skb_check_crc_b;
add_crc = digital_skb_add_crc_b;
+
+ case NFC_PROTO_ISO14443:
+ framing = NFC_DIGITAL_FRAMING_NFCA_T4T;
+ check_crc = digital_skb_check_crc_a;
+ add_crc = digital_skb_add_crc_a;
break;
default:
@@ -714,6 +719,8 @@ struct nfc_digital_dev *nfc_digital_allocate_device(struct nfc_digital_ops *ops,
ddev->protocols |= NFC_PROTO_NFC_DEP_MASK;
if (supported_protocols & NFC_PROTO_ISO15693_MASK)
ddev->protocols |= NFC_PROTO_ISO15693_MASK;
+ if (supported_protocols & NFC_PROTO_ISO14443_MASK)
+ ddev->protocols |= NFC_PROTO_ISO14443_MASK;
ddev->tx_headroom = tx_headroom + DIGITAL_MAX_HEADER_LEN;
ddev->tx_tailroom = tx_tailroom + DIGITAL_CRC_LEN;