NFC: Add ISO/IEC 15693 header definitions
authorMark A. Greer <mgreer@animalcreek.com>
Wed, 15 Jan 2014 00:52:09 +0000 (17:52 -0700)
committerSamuel Ortiz <sameo@linux.intel.com>
Sun, 16 Feb 2014 22:49:53 +0000 (23:49 +0100)
Add the header definitions required by upcoming
patches that add support for ISO/IEC 15693.

Signed-off-by: Mark A. Greer <mgreer@animalcreek.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
include/net/nfc/digital.h
include/net/nfc/nfc.h
include/uapi/linux/nfc.h

index 81af21e9bcd49b141f799fca231bbf7b1deb08ec..1f0528d3350040a56551d978f6275832704c23d4 100644 (file)
@@ -35,6 +35,7 @@ enum {
        NFC_DIGITAL_RF_TECH_106A = 0,
        NFC_DIGITAL_RF_TECH_212F,
        NFC_DIGITAL_RF_TECH_424F,
+       NFC_DIGITAL_RF_TECH_ISO15693,
 
        NFC_DIGITAL_RF_TECH_LAST,
 };
@@ -57,6 +58,9 @@ enum {
        NFC_DIGITAL_FRAMING_NFCF_NFC_DEP,
        NFC_DIGITAL_FRAMING_NFC_DEP_ACTIVATED,
 
+       NFC_DIGITAL_FRAMING_ISO15693_INVENTORY,
+       NFC_DIGITAL_FRAMING_ISO15693_TVT,       /* Type V Tag (ISO/IEC 15693) */
+
        NFC_DIGITAL_FRAMING_LAST,
 };
 
index e80894bca1d042201c01c854df897ccc2607b72e..2e8b40c16274f73d1ef98d6ee17fa17da172354e 100644 (file)
@@ -111,6 +111,9 @@ struct nfc_target {
        u8 sensf_res[NFC_SENSF_RES_MAXSIZE];
        u8 hci_reader_gate;
        u8 logical_idx;
+       u8 is_iso15693;
+       u8 iso15693_dsfid;
+       u8 iso15693_uid[NFC_ISO15693_UID_MAXSIZE];
 };
 
 /**
index 6ad6cc03ccd3aeec4074f187836efac62ed31a0f..9789dc95b6a8fb775a16e4fff1612101cae879c7 100644 (file)
@@ -150,6 +150,8 @@ enum nfc_commands {
  * @NFC_ATTR_SE_TYPE: Secure element type (UICC or EMBEDDED)
  * @NFC_ATTR_FIRMWARE_DOWNLOAD_STATUS: Firmware download operation status
  * @NFC_ATTR_APDU: Secure element APDU
+ * @NFC_ATTR_TARGET_ISO15693_DSFID: ISO 15693 Data Storage Format Identifier
+ * @NFC_ATTR_TARGET_ISO15693_UID: ISO 15693 Unique Identifier
  */
 enum nfc_attrs {
        NFC_ATTR_UNSPEC,
@@ -178,6 +180,8 @@ enum nfc_attrs {
        NFC_ATTR_SE_AID,
        NFC_ATTR_FIRMWARE_DOWNLOAD_STATUS,
        NFC_ATTR_SE_APDU,
+       NFC_ATTR_TARGET_ISO15693_DSFID,
+       NFC_ATTR_TARGET_ISO15693_UID,
 /* private: internal use only */
        __NFC_ATTR_AFTER_LAST
 };
@@ -200,6 +204,7 @@ enum nfc_sdp_attr {
 #define NFC_SENSF_RES_MAXSIZE 18
 #define NFC_GB_MAXSIZE        48
 #define NFC_FIRMWARE_NAME_MAXSIZE 32
+#define NFC_ISO15693_UID_MAXSIZE 8
 
 /* NFC protocols */
 #define NFC_PROTO_JEWEL                1
@@ -208,8 +213,9 @@ enum nfc_sdp_attr {
 #define NFC_PROTO_ISO14443     4
 #define NFC_PROTO_NFC_DEP      5
 #define NFC_PROTO_ISO14443_B   6
+#define NFC_PROTO_ISO15693     7
 
-#define NFC_PROTO_MAX          7
+#define NFC_PROTO_MAX          8
 
 /* NFC communication modes */
 #define NFC_COMM_ACTIVE  0
@@ -227,6 +233,7 @@ enum nfc_sdp_attr {
 #define NFC_PROTO_ISO14443_MASK          (1 << NFC_PROTO_ISO14443)
 #define NFC_PROTO_NFC_DEP_MASK   (1 << NFC_PROTO_NFC_DEP)
 #define NFC_PROTO_ISO14443_B_MASK (1 << NFC_PROTO_ISO14443_B)
+#define NFC_PROTO_ISO15693_MASK          (1 << NFC_PROTO_ISO15693)
 
 /* NFC Secure Elements */
 #define NFC_SE_UICC     0x1