aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/nfc/nci.h
diff options
context:
space:
mode:
authorChristophe Ricard <christophe.ricard@gmail.com>2015-02-01 16:26:12 -0500
committerSamuel Ortiz <sameo@linux.intel.com>2015-02-02 15:50:39 -0500
commit736bb9577407d3556d81c3c3cd57581cd3ae10ea (patch)
treeab3473fc3494458a13b08e964916d71df3d69dc5 /include/net/nfc/nci.h
parentf7f793f31378d5e83276871339c2a8374b0e8657 (diff)
NFC: nci: Support logical connections management
In order to communicate with an NFCEE, we need to open a logical connection to it, by sending the NCI_OP_CORE_CONN_CREATE_CMD command to the NFCC. It's left up to the drivers to decide when to close an already opened logical connection. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Diffstat (limited to 'include/net/nfc/nci.h')
-rw-r--r--include/net/nfc/nci.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/include/net/nfc/nci.h b/include/net/nfc/nci.h
index 230f227bb319..deac78b9a53c 100644
--- a/include/net/nfc/nci.h
+++ b/include/net/nfc/nci.h
@@ -243,6 +243,26 @@ struct nci_core_set_config_cmd {
243 struct set_config_param param; /* support 1 param per cmd is enough */ 243 struct set_config_param param; /* support 1 param per cmd is enough */
244} __packed; 244} __packed;
245 245
246#define NCI_OP_CORE_CONN_CREATE_CMD nci_opcode_pack(NCI_GID_CORE, 0x04)
247struct dest_spec_params {
248 __u8 id;
249 __u8 protocol;
250} __packed;
251
252struct core_conn_create_dest_spec_params {
253 __u8 type;
254 __u8 length;
255 struct dest_spec_params value;
256} __packed;
257
258struct nci_core_conn_create_cmd {
259 __u8 destination_type;
260 __u8 number_destination_params;
261 struct core_conn_create_dest_spec_params params;
262} __packed;
263
264#define NCI_OP_CORE_CONN_CLOSE_CMD nci_opcode_pack(NCI_GID_CORE, 0x05)
265
246#define NCI_OP_RF_DISCOVER_MAP_CMD nci_opcode_pack(NCI_GID_RF_MGMT, 0x00) 266#define NCI_OP_RF_DISCOVER_MAP_CMD nci_opcode_pack(NCI_GID_RF_MGMT, 0x00)
247struct disc_map_config { 267struct disc_map_config {
248 __u8 rf_protocol; 268 __u8 rf_protocol;
@@ -327,6 +347,16 @@ struct nci_core_set_config_rsp {
327 __u8 params_id[0]; /* variable size array */ 347 __u8 params_id[0]; /* variable size array */
328} __packed; 348} __packed;
329 349
350#define NCI_OP_CORE_CONN_CREATE_RSP nci_opcode_pack(NCI_GID_CORE, 0x04)
351struct nci_core_conn_create_rsp {
352 __u8 status;
353 __u8 max_ctrl_pkt_payload_len;
354 __u8 credits;
355 __u8 conn_id;
356} __packed;
357
358#define NCI_OP_CORE_CONN_CLOSE_RSP nci_opcode_pack(NCI_GID_CORE, 0x05)
359
330#define NCI_OP_RF_DISCOVER_MAP_RSP nci_opcode_pack(NCI_GID_RF_MGMT, 0x00) 360#define NCI_OP_RF_DISCOVER_MAP_RSP nci_opcode_pack(NCI_GID_RF_MGMT, 0x00)
331 361
332#define NCI_OP_RF_DISCOVER_RSP nci_opcode_pack(NCI_GID_RF_MGMT, 0x03) 362#define NCI_OP_RF_DISCOVER_RSP nci_opcode_pack(NCI_GID_RF_MGMT, 0x03)