rw_api.h revision c95c79ccb65d82a65b960919077d5c359cf28ced
1ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org/****************************************************************************** 248dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang * 3ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org * Copyright (C) 2009-2013 Broadcom Corporation 4ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org * 5ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org * Licensed under the Apache License, Version 2.0 (the "License"); 6ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org * you may not use this file except in compliance with the License. 7ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org * You may obtain a copy of the License at: 8ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org * 9ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org * http://www.apache.org/licenses/LICENSE-2.0 106f1796f3ea2d67d5c91a17eeb5865442b5ccd188apatrick@chromium.org * 11ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org * Unless required by applicable law or agreed to in writing, software 1204fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang * distributed under the License is distributed on an "AS IS" BASIS, 13aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie Madill * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1404fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang * See the License for the specific language governing permissions and 15d2811d688721a729f514bd78f7fd12a43beeb0a6shannon.woods@transgaming.com * limitations under the License. 16ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org * 17ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org ******************************************************************************/ 1890080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org 19a2ecfcccf1d1a85e6054a7314ce1f9de0648ac7fshannonwoods@chromium.org 200b7eef7c469bf717f7e1b57c6273f00d88e8b1d9Geoff Lang/****************************************************************************** 21ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org * 22ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org * This file contains the Near Field Communication (NFC) Reader/Writer mode 23ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org * related API function external definitions. 24d2811d688721a729f514bd78f7fd12a43beeb0a6shannon.woods@transgaming.com * 25c9610c51e9c02ba67c735ff449a70164cda12a60Brandon Jones ******************************************************************************/ 26486d9e9b6b4ed31f66d2624b8e822020fe40a1f7shannon.woods@transgaming.com 27d8d72434e51896c79b117229624ffed341da89a6Brandon Jones#ifndef RW_API_H 28f05cdee4ce4adc73e79adb1d01ba76e742b3f892Brandon Jones#define RW_API_H 29c7a4104957aa1f6fa36e4e9cf65d36b699eb05bdBrandon Jones#include "tags_defs.h" 30e60508840c2cf59c0fd6f8986d8c80c9f7425615Nicolas Capens 311bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org#define RW_T1T_BLD_ADD(a, k, y) a = ((k & 0xF) << 3) | (y&0x7); 32c600c8c337e6c83ee476399729136a09b272078fJamie Madill#define RW_T1T_BLD_ADDS(a, s) a = ((s & 0xF) << 4); 33c2141fb314ecb6aa36861de57b7744649e51ea1bJamie Madill 34ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org#define RW_T1T_FIRST_EVT 0x20 35ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org#define RW_T2T_FIRST_EVT 0x40 36b4e07b899053bc100f01162dff09b2a577ff8afbshannonwoods@chromium.org#define RW_T3T_FIRST_EVT 0x60 371b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill#define RW_T4T_FIRST_EVT 0x80 386d7b61c2e986dd4fc394097e792bb910324c5ed4shannonwoods@chromium.org#define RW_I93_FIRST_EVT 0xA0 396d7b61c2e986dd4fc394097e792bb910324c5ed4shannonwoods@chromium.org 4076b10c9a9735c27627065d9fe68f78374ef48934Geoff Langenum 4166d43d24c7560d5812e1adc3491578a783379c9fJamie Madill{ 4266d43d24c7560d5812e1adc3491578a783379c9fJamie Madill /* Note: the order of these events can not be changed */ 4366d43d24c7560d5812e1adc3491578a783379c9fJamie Madill /* Type 1 tag events for tRW_CBACK */ 4466d43d24c7560d5812e1adc3491578a783379c9fJamie Madill RW_T1T_RID_EVT = RW_T1T_FIRST_EVT, /* Read ID command completd */ 4566d43d24c7560d5812e1adc3491578a783379c9fJamie Madill RW_T1T_RALL_CPLT_EVT, /* Read All command completed */ 4666d43d24c7560d5812e1adc3491578a783379c9fJamie Madill RW_T1T_READ_CPLT_EVT, /* Read byte completed */ 4766d43d24c7560d5812e1adc3491578a783379c9fJamie Madill RW_T1T_WRITE_E_CPLT_EVT, /* Write byte after erase completed */ 4876b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang RW_T1T_WRITE_NE_CPLT_EVT, /* Write byte with no erase completed */ 4966d43d24c7560d5812e1adc3491578a783379c9fJamie Madill RW_T1T_RSEG_CPLT_EVT, /* Read segment completed */ 5066d43d24c7560d5812e1adc3491578a783379c9fJamie Madill RW_T1T_READ8_CPLT_EVT, /* Read block completed */ 5166d43d24c7560d5812e1adc3491578a783379c9fJamie Madill RW_T1T_WRITE_E8_CPLT_EVT, /* Write block after erase completed */ 5276b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang RW_T1T_WRITE_NE8_CPLT_EVT, /* Write block with no erase completed */ 5366d43d24c7560d5812e1adc3491578a783379c9fJamie Madill RW_T1T_TLV_DETECT_EVT, /* Lock/Mem/Prop tlv detection complete */ 5466d43d24c7560d5812e1adc3491578a783379c9fJamie Madill RW_T1T_NDEF_DETECT_EVT, /* NDEF detection complete */ 5576b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang RW_T1T_NDEF_READ_EVT, /* NDEF read completed */ 5666d43d24c7560d5812e1adc3491578a783379c9fJamie Madill RW_T1T_NDEF_WRITE_EVT, /* NDEF write complete */ 5766d43d24c7560d5812e1adc3491578a783379c9fJamie Madill RW_T1T_SET_TAG_RO_EVT, /* Tag is set as read only */ 5876b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang RW_T1T_RAW_FRAME_EVT, /* Response of raw frame sent */ 5966d43d24c7560d5812e1adc3491578a783379c9fJamie Madill RW_T1T_PRESENCE_CHECK_EVT, /* Response to RW_T1tPresenceCheck */ 6066d43d24c7560d5812e1adc3491578a783379c9fJamie Madill RW_T1T_FORMAT_CPLT_EVT, /* Tag Formated */ 6166d43d24c7560d5812e1adc3491578a783379c9fJamie Madill RW_T1T_INTF_ERROR_EVT, /* RF Interface error event */ 6266d43d24c7560d5812e1adc3491578a783379c9fJamie Madill RW_T1T_MAX_EVT, 6376b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang 6466d43d24c7560d5812e1adc3491578a783379c9fJamie Madill /* Type 2 tag events */ 6566d43d24c7560d5812e1adc3491578a783379c9fJamie Madill RW_T2T_READ_CPLT_EVT = RW_T2T_FIRST_EVT, /* Read completed */ 6666d43d24c7560d5812e1adc3491578a783379c9fJamie Madill RW_T2T_WRITE_CPLT_EVT, /* Write completed */ 6776b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang RW_T2T_SELECT_CPLT_EVT, /* Sector select completed */ 6866d43d24c7560d5812e1adc3491578a783379c9fJamie Madill RW_T2T_NDEF_DETECT_EVT, /* NDEF detection complete */ 6966d43d24c7560d5812e1adc3491578a783379c9fJamie Madill RW_T2T_TLV_DETECT_EVT, /* Lock/Mem/Prop tlv detection complete */ 708ff21aeaabebd0877c1cc48fdac718509f23617aJamie Madill RW_T2T_NDEF_READ_EVT, /* NDEF read completed */ 716d7b61c2e986dd4fc394097e792bb910324c5ed4shannonwoods@chromium.org RW_T2T_NDEF_WRITE_EVT, /* NDEF write complete */ 726d7b61c2e986dd4fc394097e792bb910324c5ed4shannonwoods@chromium.org RW_T2T_SET_TAG_RO_EVT, /* Tag is set as read only */ 736d7b61c2e986dd4fc394097e792bb910324c5ed4shannonwoods@chromium.org RW_T2T_RAW_FRAME_EVT, /* Response of raw frame sent */ 746d7b61c2e986dd4fc394097e792bb910324c5ed4shannonwoods@chromium.org RW_T2T_PRESENCE_CHECK_EVT, /* Response to RW_T2tPresenceCheck */ 756d7b61c2e986dd4fc394097e792bb910324c5ed4shannonwoods@chromium.org RW_T2T_FORMAT_CPLT_EVT, /* Tag Formated */ 766d7b61c2e986dd4fc394097e792bb910324c5ed4shannonwoods@chromium.org RW_T2T_INTF_ERROR_EVT, /* RF Interface error event */ 776d7b61c2e986dd4fc394097e792bb910324c5ed4shannonwoods@chromium.org RW_T2T_MAX_EVT, 786d7b61c2e986dd4fc394097e792bb910324c5ed4shannonwoods@chromium.org 796d7b61c2e986dd4fc394097e792bb910324c5ed4shannonwoods@chromium.org /* Type 3 tag events for tRW_CBACK */ 806d7b61c2e986dd4fc394097e792bb910324c5ed4shannonwoods@chromium.org RW_T3T_CHECK_CPLT_EVT = RW_T3T_FIRST_EVT, /* Read completed */ 816d7b61c2e986dd4fc394097e792bb910324c5ed4shannonwoods@chromium.org RW_T3T_UPDATE_CPLT_EVT, /* Write completed */ 826d7b61c2e986dd4fc394097e792bb910324c5ed4shannonwoods@chromium.org RW_T3T_CHECK_EVT, /* Segment of data received from type 3 tag */ 836d7b61c2e986dd4fc394097e792bb910324c5ed4shannonwoods@chromium.org RW_T3T_RAW_FRAME_EVT, /* SendRawFrame response */ 846d7b61c2e986dd4fc394097e792bb910324c5ed4shannonwoods@chromium.org RW_T3T_NDEF_DETECT_EVT, /* NDEF detection complete */ 856d7b61c2e986dd4fc394097e792bb910324c5ed4shannonwoods@chromium.org RW_T3T_PRESENCE_CHECK_EVT, /* Response to RW_T3tPresenceCheck */ 863f2e61dea6c447ed7b98483fa0ce9ccc3cb5cc3cJamie Madill RW_T3T_POLL_EVT, /* Response to RW_T3tPoll */ 87c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill RW_T3T_GET_SYSTEM_CODES_EVT, /* Response to RW_T3tGetSystemCodes */ 883b7e205c444055b296ef12c94cf0f0114ba56497Jamie Madill RW_T3T_FORMAT_CPLT_EVT, /* Tag Formated (Felica-Lite only) */ 89c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill RW_T3T_SET_READ_ONLY_CPLT_EVT, /* Tag is set as Read only */ 90c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill RW_T3T_INTF_ERROR_EVT, /* RF Interface error event */ 913b7e205c444055b296ef12c94cf0f0114ba56497Jamie Madill RW_T3T_MAX_EVT, 923b7e205c444055b296ef12c94cf0f0114ba56497Jamie Madill 93f257598999faf907a50d8a9f9eff28dad0ff2628Jamie Madill /* Type 4 tag events for tRW_CBACK */ 94c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill RW_T4T_NDEF_DETECT_EVT = RW_T4T_FIRST_EVT, /* Result of NDEF detection procedure */ 95c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill /* Mandatory NDEF file is selected */ 96c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill RW_T4T_NDEF_READ_EVT, /* Segment of data received from type 4 tag */ 97ac0a267bd3b2205f310e502fe4ecf9d710af298aJamie Madill RW_T4T_NDEF_READ_CPLT_EVT, /* Read operation completed */ 98ac0a267bd3b2205f310e502fe4ecf9d710af298aJamie Madill RW_T4T_NDEF_READ_FAIL_EVT, /* Read operation failed */ 99ac0a267bd3b2205f310e502fe4ecf9d710af298aJamie Madill RW_T4T_NDEF_UPDATE_CPLT_EVT, /* Update operation completed */ 1003b7e205c444055b296ef12c94cf0f0114ba56497Jamie Madill RW_T4T_NDEF_UPDATE_FAIL_EVT, /* Update operation failed */ 1013b7e205c444055b296ef12c94cf0f0114ba56497Jamie Madill RW_T4T_SET_TO_RO_EVT, /* Tag is set as read only */ 1023b7e205c444055b296ef12c94cf0f0114ba56497Jamie Madill RW_T4T_PRESENCE_CHECK_EVT, /* Response to RW_T4tPresenceCheck */ 103f257598999faf907a50d8a9f9eff28dad0ff2628Jamie Madill RW_T4T_RAW_FRAME_EVT, /* Response of raw frame sent */ 1043b7e205c444055b296ef12c94cf0f0114ba56497Jamie Madill RW_T4T_INTF_ERROR_EVT, /* RF Interface error event */ 1053b7e205c444055b296ef12c94cf0f0114ba56497Jamie Madill RW_T4T_MAX_EVT, 106ac0a267bd3b2205f310e502fe4ecf9d710af298aJamie Madill 1073b7e205c444055b296ef12c94cf0f0114ba56497Jamie Madill /* ISO 15693 tag events for tRW_CBACK */ 108c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill RW_I93_NDEF_DETECT_EVT = RW_I93_FIRST_EVT, /* Result of NDEF detection procedure */ 109c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill RW_I93_NDEF_READ_EVT, /* Segment of data received from tag */ 110c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill RW_I93_NDEF_READ_CPLT_EVT, /* Read operation completed */ 111c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill RW_I93_NDEF_READ_FAIL_EVT, /* Read operation failed */ 112f6be8d7cbd3abf50ca848cb3a975b86e74c37c2dJamie Madill RW_I93_NDEF_UPDATE_CPLT_EVT, /* Update operation completed */ 1133f2e61dea6c447ed7b98483fa0ce9ccc3cb5cc3cJamie Madill RW_I93_NDEF_UPDATE_FAIL_EVT, /* Update operation failed */ 1143f2e61dea6c447ed7b98483fa0ce9ccc3cb5cc3cJamie Madill RW_I93_FORMAT_CPLT_EVT, /* Format procedure complete */ 1153f2e61dea6c447ed7b98483fa0ce9ccc3cb5cc3cJamie Madill RW_I93_SET_TAG_RO_EVT, /* Set read-only procedure complete */ 1163f2e61dea6c447ed7b98483fa0ce9ccc3cb5cc3cJamie Madill RW_I93_INVENTORY_EVT, /* Response of Inventory */ 1173f2e61dea6c447ed7b98483fa0ce9ccc3cb5cc3cJamie Madill RW_I93_DATA_EVT, /* Response of Read, Get Multi Security */ 1183f2e61dea6c447ed7b98483fa0ce9ccc3cb5cc3cJamie Madill RW_I93_SYS_INFO_EVT, /* Response of System Information */ 1193f2e61dea6c447ed7b98483fa0ce9ccc3cb5cc3cJamie Madill RW_I93_CMD_CMPL_EVT, /* Command complete */ 1203f2e61dea6c447ed7b98483fa0ce9ccc3cb5cc3cJamie Madill RW_I93_PRESENCE_CHECK_EVT, /* Response to RW_I93PresenceCheck */ 1213f2e61dea6c447ed7b98483fa0ce9ccc3cb5cc3cJamie Madill RW_I93_RAW_FRAME_EVT, /* Response of raw frame sent */ 122a6f267f99e5c49e136511d787e69dd9dcc492be7Jamie Madill RW_I93_INTF_ERROR_EVT, /* RF Interface error event */ 123a6f267f99e5c49e136511d787e69dd9dcc492be7Jamie Madill RW_I93_MAX_EVT 124a6f267f99e5c49e136511d787e69dd9dcc492be7Jamie Madill}; 125a6f267f99e5c49e136511d787e69dd9dcc492be7Jamie Madill 126a6f267f99e5c49e136511d787e69dd9dcc492be7Jamie Madill#define RW_RAW_FRAME_EVT 0xFF 127a6f267f99e5c49e136511d787e69dd9dcc492be7Jamie Madill 128a6f267f99e5c49e136511d787e69dd9dcc492be7Jamie Madilltypedef UINT8 tRW_EVENT; 129a6f267f99e5c49e136511d787e69dd9dcc492be7Jamie Madill 130a6f267f99e5c49e136511d787e69dd9dcc492be7Jamie Madill#define RW_NDEF_FL_READ_ONLY 0x01 /* Tag is read only */ 131a6f267f99e5c49e136511d787e69dd9dcc492be7Jamie Madill#define RW_NDEF_FL_FORMATED 0x02 /* Tag formated for NDEF */ 1326d7b61c2e986dd4fc394097e792bb910324c5ed4shannonwoods@chromium.org#define RW_NDEF_FL_SUPPORTED 0x04 /* NDEF supported by the tag */ 1336d7b61c2e986dd4fc394097e792bb910324c5ed4shannonwoods@chromium.org#define RW_NDEF_FL_UNKNOWN 0x08 /* Unable to find if tag is ndef capable/formated/read only */ 1341b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill#define RW_NDEF_FL_FORMATABLE 0x10 /* Tag supports format operation */ 135db019952466bf83aafd333554dc550fdb6a1c2dfdaniel@transgaming.com#define RW_NDEF_FL_SOFT_LOCKABLE 0x20 /* Tag can be soft locked */ 136ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org#define RW_NDEF_FL_HARD_LOCKABLE 0x40 /* Tag can be hard locked */ 137ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org#define RW_NDEF_FL_OTP 0x80 /* Tag is one time programmable */ 138ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org 13904fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Langtypedef UINT8 tRW_NDEF_FLAG; 1407a29e4ae3d067afce9779eefc9a67a180da82129Jamie Madill 141c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madilltypedef struct 142c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill{ 143c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill tNFC_STATUS status; 144c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill UINT8 hr[T1T_HR_LEN]; 145c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill UINT8 uid[T1T_CMD_UID_LEN]; 146c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill} tRW_T1T_RID_EVT; 1477a29e4ae3d067afce9779eefc9a67a180da82129Jamie Madill 148c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madilltypedef struct 149c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill{ 150c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill tNFC_STATUS status; 1518b4f8f8450e0ff89efaca4758406acd06dbd30feJamie Madill UINT16 msg_len; /* Length of the NDEF message */ 1528b4f8f8450e0ff89efaca4758406acd06dbd30feJamie Madill} tRW_T2T_DETECT; 15304fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang 1548b4f8f8450e0ff89efaca4758406acd06dbd30feJamie Madilltypedef struct 1558b4f8f8450e0ff89efaca4758406acd06dbd30feJamie Madill{ 1567a29e4ae3d067afce9779eefc9a67a180da82129Jamie Madill tNFC_STATUS status; /* Status of the POLL request */ 157c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill UINT8 rc; /* RC (request code) used in the POLL request */ 1587a29e4ae3d067afce9779eefc9a67a180da82129Jamie Madill UINT8 response_num; /* Number of SENSF_RES responses */ 159c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill UINT8 response_bufsize; /* Size of SENSF_RES responses */ 1607a29e4ae3d067afce9779eefc9a67a180da82129Jamie Madill UINT8 *response_buf; /* Buffer of responses (length + SENSF_RES) see $8.1.2.2 of NCI specs */ 161c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill} tRW_T3T_POLL; 162c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill 163c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madilltypedef struct 164c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill{ 165c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill tNFC_STATUS status; /* Status of the Get System Codes request */ 166c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill UINT8 num_system_codes; /* Number of system codes */ 167c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill UINT16 *p_system_codes; /* Table of system codes */ 168c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill} tRW_T3T_SYSTEM_CODES; 16904fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang 17004fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Langtypedef struct 17104fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang{ 17204fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang tNFC_STATUS status; /* status of NDEF detection */ 17304fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang tNFC_PROTOCOL protocol; /* protocol used to detect NDEF */ 17404fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang UINT32 max_size; /* max number of bytes available for NDEF data */ 17504fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang UINT32 cur_size; /* current size of stored NDEF data (in bytes) */ 17604fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang tRW_NDEF_FLAG flags; /* Flags to indicate NDEF capability,formated,formatable and read only */ 17704fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang} tRW_DETECT_NDEF_DATA; 17804fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang 17904fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Langtypedef struct 18048dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang{ 18148dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang tNFC_STATUS status; /* status of NDEF detection */ 18248dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang tNFC_PROTOCOL protocol; /* protocol used to detect TLV */ 18348dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang UINT8 num_bytes; /* number of reserved/lock bytes based on the type of tlv */ 18448dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang} tRW_DETECT_TLV_DATA; 18548dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang 18648dcae7b217420a7387c84a76651989e6f5f3576Geoff Langtypedef struct 18748dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang{ 18848dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang tNFC_STATUS status; 18948dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang BT_HDR *p_data; 190e87ca0000e1ef1068db2a972f81f55579705f162daniel@transgaming.com} tRW_READ_DATA; 191e87ca0000e1ef1068db2a972f81f55579705f162daniel@transgaming.com 192c9610c51e9c02ba67c735ff449a70164cda12a60Brandon Jonestypedef struct 1938ff21aeaabebd0877c1cc48fdac718509f23617aJamie Madill{ 194c9610c51e9c02ba67c735ff449a70164cda12a60Brandon Jones tNFC_STATUS status; 1958ff21aeaabebd0877c1cc48fdac718509f23617aJamie Madill UINT8 sw1; 1968ff21aeaabebd0877c1cc48fdac718509f23617aJamie Madill UINT8 sw2; 1978ff21aeaabebd0877c1cc48fdac718509f23617aJamie Madill} tRW_T4T_SW; 1988ff21aeaabebd0877c1cc48fdac718509f23617aJamie Madill 1998ff21aeaabebd0877c1cc48fdac718509f23617aJamie Madilltypedef struct /* RW_I93_INVENTORY_EVT */ 200d4cfa57df4df85546a969f66ec50d364f6e6d4feJamie Madill{ 2018ff21aeaabebd0877c1cc48fdac718509f23617aJamie Madill tNFC_STATUS status; /* status of Inventory command */ 2028ff21aeaabebd0877c1cc48fdac718509f23617aJamie Madill UINT8 dsfid; /* DSFID */ 203ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org UINT8 uid[I93_UID_BYTE_LEN]; /* UID[0]:MSB, ... UID[7]:LSB */ 204c9610c51e9c02ba67c735ff449a70164cda12a60Brandon Jones} tRW_I93_INVENTORY; 205c9610c51e9c02ba67c735ff449a70164cda12a60Brandon Jones 206ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.orgtypedef struct /* RW_I93_DATA_EVT */ 207ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org{ 208ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org tNFC_STATUS status; /* status of Read/Get security status command */ 209ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org UINT8 command; /* sent command */ 210ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org BT_HDR *p_data; /* block data of security status */ 211ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org} tRW_I93_DATA; 212ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org 213ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.orgtypedef struct /* RW_I93_SYS_INFO_EVT */ 21404fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang{ 215c9610c51e9c02ba67c735ff449a70164cda12a60Brandon Jones tNFC_STATUS status; /* status of Get Sys Info command */ 216ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org UINT8 info_flags; /* information flags */ 217ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org UINT8 uid[I93_UID_BYTE_LEN]; /* UID[0]:MSB, ... UID[7]:LSB */ 218e87ca0000e1ef1068db2a972f81f55579705f162daniel@transgaming.com UINT8 dsfid; /* DSFID if I93_INFO_FLAG_DSFID */ 219e87ca0000e1ef1068db2a972f81f55579705f162daniel@transgaming.com UINT8 afi; /* AFI if I93_INFO_FLAG_AFI */ 220e87ca0000e1ef1068db2a972f81f55579705f162daniel@transgaming.com UINT16 num_block; /* number of blocks if I93_INFO_FLAG_MEM_SIZE */ 221e87ca0000e1ef1068db2a972f81f55579705f162daniel@transgaming.com UINT8 block_size; /* block size in byte if I93_INFO_FLAG_MEM_SIZE */ 222e87ca0000e1ef1068db2a972f81f55579705f162daniel@transgaming.com UINT8 IC_reference; /* IC Reference if I93_INFO_FLAG_IC_REF */ 22383ac5e827a3c0ff305dea7ecd37d065ed420c93cshannonwoods@chromium.org} tRW_I93_SYS_INFO; 22483ac5e827a3c0ff305dea7ecd37d065ed420c93cshannonwoods@chromium.org 22583ac5e827a3c0ff305dea7ecd37d065ed420c93cshannonwoods@chromium.orgtypedef struct /* RW_I93_CMD_CMPL_EVT */ 22683ac5e827a3c0ff305dea7ecd37d065ed420c93cshannonwoods@chromium.org{ 22783ac5e827a3c0ff305dea7ecd37d065ed420c93cshannonwoods@chromium.org tNFC_STATUS status; /* status of sent command */ 228e87ca0000e1ef1068db2a972f81f55579705f162daniel@transgaming.com UINT8 command; /* sent command */ 229e87ca0000e1ef1068db2a972f81f55579705f162daniel@transgaming.com UINT8 error_code; /* error code; I93_ERROR_CODE_XXX */ 230e87ca0000e1ef1068db2a972f81f55579705f162daniel@transgaming.com} tRW_I93_CMD_CMPL; 231e87ca0000e1ef1068db2a972f81f55579705f162daniel@transgaming.com 232e87ca0000e1ef1068db2a972f81f55579705f162daniel@transgaming.comtypedef struct 23304fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang{ 234ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org tNFC_STATUS status; 235aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie Madill BT_HDR *p_data; 236aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie Madill} tRW_RAW_FRAME; 237aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie Madill 238aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie Madilltypedef union 239aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie Madill{ 24004fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang tNFC_STATUS status; 241aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie Madill tRW_T3T_POLL t3t_poll; /* Response to t3t poll command */ 242aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie Madill tRW_T3T_SYSTEM_CODES t3t_sc; /* Received system codes from t3 tag */ 243aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie Madill tRW_DETECT_TLV_DATA tlv; /* The information of detected TLV data */ 24404fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang tRW_DETECT_NDEF_DATA ndef; /* The information of detected NDEF data */ 245aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie Madill tRW_READ_DATA data; /* The received data from a tag */ 24604fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang tRW_RAW_FRAME raw_frame; /* Response of raw frame sent */ 24704fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang tRW_T4T_SW t4t_sw; /* Received status words from a tag */ 24804fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang tRW_I93_INVENTORY i93_inventory; /* ISO 15693 Inventory response */ 249aef95dec1cb82857fbe0dd88ad92eb3451e482f2Jamie Madill tRW_I93_DATA i93_data; /* ISO 15693 Data response */ 25004fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang tRW_I93_SYS_INFO i93_sys_info; /* ISO 15693 System Information */ 25104fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang tRW_I93_CMD_CMPL i93_cmd_cmpl; /* ISO 15693 Command complete */ 25204fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang} tRW_DATA; 25304fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang 25404fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang 25504fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Langtypedef void (tRW_CBACK) (tRW_EVENT event, tRW_DATA *p_data); 25604fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang 25704fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang/******************************************************************************* 25804fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** 25904fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** Function RW_T1tRid 26004fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** 26104fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** Description This function send a RID command for Reader/Writer mode. 26204fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** 26304fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** Returns tNFC_STATUS 26404fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** 26504fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang*******************************************************************************/ 26604fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff LangNFC_API extern tNFC_STATUS RW_T1tRid (void); 26722502d52956364879e2bd2feb8516a983714eb45Brandon Jones 26822502d52956364879e2bd2feb8516a983714eb45Brandon Jones/******************************************************************************* 26904fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** 27004fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** Function RW_T1tReadAll 27104fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** 27204fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** Description This function send a RALL command for Reader/Writer mode. 27304fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** 27404fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** Returns tNFC_STATUS 27504fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** 27604fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang*******************************************************************************/ 27704fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff LangNFC_API extern tNFC_STATUS RW_T1tReadAll (void); 27804fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang 27904fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang/******************************************************************************* 28004fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** 28104fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** Function RW_T1tRead 282ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 283ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Description This function send a READ command for Reader/Writer mode. 2847a29e4ae3d067afce9779eefc9a67a180da82129Jamie Madill** 285ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Returns tNFC_STATUS 2867a29e4ae3d067afce9779eefc9a67a180da82129Jamie Madill** 287c9610c51e9c02ba67c735ff449a70164cda12a60Brandon Jones*******************************************************************************/ 2887a29e4ae3d067afce9779eefc9a67a180da82129Jamie MadillNFC_API extern tNFC_STATUS RW_T1tRead (UINT8 block, UINT8 byte); 289c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill 290c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill/******************************************************************************* 2917a29e4ae3d067afce9779eefc9a67a180da82129Jamie Madill** 292c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** Function RW_T1tWriteErase 293c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** 294c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** Description This function send a WRITE-E command for Reader/Writer mode. 295c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** 296c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** Returns tNFC_STATUS 297c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** 29822502d52956364879e2bd2feb8516a983714eb45Brandon Jones*******************************************************************************/ 29922502d52956364879e2bd2feb8516a983714eb45Brandon JonesNFC_API extern tNFC_STATUS RW_T1tWriteErase (UINT8 block, UINT8 byte, UINT8 new_byte); 300c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill 301c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill/******************************************************************************* 302c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** 303c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** Function RW_T1tWriteNoErase 304c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** 305c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** Description This function send a WRITE-NE command for Reader/Writer mode. 306c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** 307c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** Returns tNFC_STATUS 308c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** 30904fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang*******************************************************************************/ 310c5a8300026be5bd38ca022211ce7e078e92b9377Jamie MadillNFC_API extern tNFC_STATUS RW_T1tWriteNoErase (UINT8 block, UINT8 byte, UINT8 new_byte); 311c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill 312c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill/******************************************************************************* 313ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 314ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_T1tReadSeg 3158ff21aeaabebd0877c1cc48fdac718509f23617aJamie Madill** 3163e773bb4f1a2202d02a546d18ca6e8d9d2440006shannon.woods@transgaming.com** Description This function send a RSEG command for Reader/Writer mode. 3173e773bb4f1a2202d02a546d18ca6e8d9d2440006shannon.woods@transgaming.com** 3183e773bb4f1a2202d02a546d18ca6e8d9d2440006shannon.woods@transgaming.com** Returns tNFC_STATUS 3193e773bb4f1a2202d02a546d18ca6e8d9d2440006shannon.woods@transgaming.com** 320ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org*******************************************************************************/ 321ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.orgNFC_API extern tNFC_STATUS RW_T1tReadSeg (UINT8 segment); 322ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org 323ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org/******************************************************************************* 324ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 325ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_T1tRead8 326ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 327ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Description This function send a READ8 command for Reader/Writer mode. 328ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 329ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Returns tNFC_STATUS 330ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 331ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org*******************************************************************************/ 332ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.orgNFC_API extern tNFC_STATUS RW_T1tRead8 (UINT8 block); 333ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org 334ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org/******************************************************************************* 335ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 336ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_T1tWriteErase8 337ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 338ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Description This function send a WRITE-E8 command for Reader/Writer mode. 3391b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 340ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Returns tNFC_STATUS 341ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 342ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org*******************************************************************************/ 343ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.orgNFC_API extern tNFC_STATUS RW_T1tWriteErase8 (UINT8 block, UINT8 *p_new_dat); 344ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org 345ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org/******************************************************************************* 346ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 347ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_T1tWriteNoErase8 348ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 349ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Description This function send a WRITE-NE8 command for Reader/Writer mode. 350ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 351ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Returns tNFC_STATUS 352ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 353ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org*******************************************************************************/ 354ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.orgNFC_API extern tNFC_STATUS RW_T1tWriteNoErase8 (UINT8 block, UINT8 *p_new_dat); 355ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org 356ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org/******************************************************************************* 357ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 358087e57890abbf89bc36e8769abdb1354ba6aeb06daniel@transgaming.com** Function RW_T1tLocateTlv 359087e57890abbf89bc36e8769abdb1354ba6aeb06daniel@transgaming.com** 360087e57890abbf89bc36e8769abdb1354ba6aeb06daniel@transgaming.com** Description This function is called to find the start of the given TLV 361087e57890abbf89bc36e8769abdb1354ba6aeb06daniel@transgaming.com** 362087e57890abbf89bc36e8769abdb1354ba6aeb06daniel@transgaming.com** Parameters: void 3633e773bb4f1a2202d02a546d18ca6e8d9d2440006shannon.woods@transgaming.com** 3643e773bb4f1a2202d02a546d18ca6e8d9d2440006shannon.woods@transgaming.com** Returns NCI_STATUS_OK, if detection was started. Otherwise, error status. 365c9610c51e9c02ba67c735ff449a70164cda12a60Brandon Jones** 3663e773bb4f1a2202d02a546d18ca6e8d9d2440006shannon.woods@transgaming.com*******************************************************************************/ 3673e773bb4f1a2202d02a546d18ca6e8d9d2440006shannon.woods@transgaming.comNFC_API extern tNFC_STATUS RW_T1tLocateTlv (UINT8 tlv_type); 3683e773bb4f1a2202d02a546d18ca6e8d9d2440006shannon.woods@transgaming.com 3693e773bb4f1a2202d02a546d18ca6e8d9d2440006shannon.woods@transgaming.com/******************************************************************************* 3703e773bb4f1a2202d02a546d18ca6e8d9d2440006shannon.woods@transgaming.com** 3713e773bb4f1a2202d02a546d18ca6e8d9d2440006shannon.woods@transgaming.com** Function RW_T1tDetectNDef 3723e773bb4f1a2202d02a546d18ca6e8d9d2440006shannon.woods@transgaming.com** 37343a53e2434f4fe042bee061fc369a93314b710deBrandon Jones** Description This function can be called to detect if there is an NDEF 374ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** message on the tag. 375ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 376ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Parameters: void 377ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 378ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Returns NCI_STATUS_OK, if detection was started. Otherwise, error status. 379ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 38076b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang*******************************************************************************/ 38176b10c9a9735c27627065d9fe68f78374ef48934Geoff LangNFC_API extern tNFC_STATUS RW_T1tDetectNDef (void); 382ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org 383ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org/******************************************************************************* 384ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 385ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_T1tReadNDef 386ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 38776b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang** Description This function can be called to read the NDEF message on the tag. 38876b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang** 389ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Parameters: p_buffer: The buffer into which to read the NDEF message 390ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** buf_len: The length of the buffer 391ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 392ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Returns NCI_STATUS_OK, if read was started. Otherwise, error status. 393ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 394ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org*******************************************************************************/ 395ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.orgNFC_API extern tNFC_STATUS RW_T1tReadNDef (UINT8 *p_buffer, UINT16 buf_len); 39643a53e2434f4fe042bee061fc369a93314b710deBrandon Jones 397ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org/******************************************************************************* 398ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 399ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_T1tWriteNDef 400ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 401ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Description This function can be called to write an NDEF message to the tag. 402ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 403ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Parameters: msg_len: The length of the buffer 404ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** p_msg: The NDEF message to write 405ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 40676b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang** Returns NCI_STATUS_OK, if write was started. Otherwise, error status. 407ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 408ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org*******************************************************************************/ 409ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.orgNFC_API extern tNFC_STATUS RW_T1tWriteNDef (UINT16 msg_len, UINT8 *p_msg); 410ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org 41176b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang/******************************************************************************* 412ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 413ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_T1tSetTagReadOnly 414ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 41576b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang** Description This function can be called to set the tag in to read only 416ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** state 417ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 418ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Parameters: b_hard_lock: To hard lock or just soft lock the tag 419ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 420ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Returns NCI_STATUS_OK, if set readonly operation started. 42176b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang** Otherwise, error status. 422ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 423ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org*******************************************************************************/ 424ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.orgNFC_API extern tNFC_STATUS RW_T1tSetTagReadOnly (BOOLEAN b_hard_lock); 425ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org 4268ff21aeaabebd0877c1cc48fdac718509f23617aJamie Madill/***************************************************************************** 427ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 428ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_T1tPresenceCheck 429ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 430ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Description 4310ee85f8899cec0aa73463562aedca464883b4018shannonwoods@chromium.org** Check if the tag is still in the field. 432ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 4330ee85f8899cec0aa73463562aedca464883b4018shannonwoods@chromium.org** The RW_T1T_PRESENCE_CHECK_EVT w/ status is used to indicate presence 4340ee85f8899cec0aa73463562aedca464883b4018shannonwoods@chromium.org** or non-presence. 4350ee85f8899cec0aa73463562aedca464883b4018shannonwoods@chromium.org** 4361b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** Returns 4370ee85f8899cec0aa73463562aedca464883b4018shannonwoods@chromium.org** NFC_STATUS_OK, if raw data frame sent 4380ee85f8899cec0aa73463562aedca464883b4018shannonwoods@chromium.org** NFC_STATUS_NO_BUFFERS: unable to allocate a buffer for this operation 4390ee85f8899cec0aa73463562aedca464883b4018shannonwoods@chromium.org** NFC_STATUS_FAILED: other error 4400ee85f8899cec0aa73463562aedca464883b4018shannonwoods@chromium.org** 441ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org*****************************************************************************/ 442ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.orgNFC_API extern tNFC_STATUS RW_T1tPresenceCheck (void); 443ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org 444ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org/***************************************************************************** 445ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 446ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_T1tFormatNDef 447c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org** 448c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org** Description 4498ff21aeaabebd0877c1cc48fdac718509f23617aJamie Madill** Format Tag content 450c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org** 451c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org** Returns 452c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org** NFC_STATUS_OK, Command sent to format Tag 453c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org** NFC_STATUS_REJECTED: Invalid HR0 and cannot format the tag 454c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org** NFC_STATUS_FAILED: other error 455c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org** 456c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org*****************************************************************************/ 457c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.orgtNFC_STATUS RW_T1tFormatNDef (void); 458c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org 459c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org/******************************************************************************* 460c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org** 461c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org** Function RW_T2tLocateTlv 462c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org** 463c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org** Description This function is called to find the start of the given TLV 464c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org** 465c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org** Returns Pointer to the TLV, if successful. Otherwise, NULL. 466c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org** 467c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org*******************************************************************************/ 468c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.orgNFC_API extern tNFC_STATUS RW_T2tLocateTlv(UINT8 tlv_type); 469c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org 470c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org/******************************************************************************* 471c2ed991c7d844ff347ab4ce5945843a39f3bea47shannonwoods@chromium.org** 4724276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.org** Function RW_T2tRead 4734276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.org** 4748ff21aeaabebd0877c1cc48fdac718509f23617aJamie Madill** Description This function issues the Type 2 Tag READ command. When the 4754276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.org** operation is complete the callback function will be called 4764276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.org** with a RW_T2T_READ_EVT. 4774276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.org** 4784276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.org** Returns tNFC_STATUS 4794276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.org** 4804276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.org*******************************************************************************/ 4814276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.orgNFC_API extern tNFC_STATUS RW_T2tRead (UINT16 block); 4824276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.org 4834276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.org/******************************************************************************* 4844276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.org** 4854276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.org** Function RW_T2tWrite 4864276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.org** 4874276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.org** Description This function issues the Type 2 Tag WRITE command. When the 4884276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.org** operation is complete the callback function will be called 4894276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.org** with a RW_T2T_WRITE_EVT. 4904276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.org** 4914276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.org** p_write_data points to the array of 4 bytes to be written 4924276625286ffa9f4f481e721e8df51844036ea76shannonwoods@chromium.org** 4931bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** Returns tNFC_STATUS 4941bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** 4951bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org*******************************************************************************/ 4961bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.orgNFC_API extern tNFC_STATUS RW_T2tWrite (UINT16 block, UINT8 *p_write_data); 4971bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org 4981bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org/******************************************************************************* 499d1e78c9cf69e98abdf4b8bbc385b951ab3b99d4bJamie Madill** 500d1e78c9cf69e98abdf4b8bbc385b951ab3b99d4bJamie Madill** Function RW_T2tSectorSelect 501d1e78c9cf69e98abdf4b8bbc385b951ab3b99d4bJamie Madill** 502d1e78c9cf69e98abdf4b8bbc385b951ab3b99d4bJamie Madill** Description This function issues the Type 2 Tag SECTOR-SELECT command 5038ff21aeaabebd0877c1cc48fdac718509f23617aJamie Madill** packet 1. If a NACK is received as the response, the callback 504d1e78c9cf69e98abdf4b8bbc385b951ab3b99d4bJamie Madill** function will be called with a RW_T2T_SECTOR_SELECT_EVT. If 505d1e78c9cf69e98abdf4b8bbc385b951ab3b99d4bJamie Madill** an ACK is received as the response, the command packet 2 with 506d1e78c9cf69e98abdf4b8bbc385b951ab3b99d4bJamie Madill** the given sector number is sent to the peer device. When the 507d1e78c9cf69e98abdf4b8bbc385b951ab3b99d4bJamie Madill** response for packet 2 is received, the callback function will 508d1e78c9cf69e98abdf4b8bbc385b951ab3b99d4bJamie Madill** be called with a RW_T2T_SECTOR_SELECT_EVT. 509d1e78c9cf69e98abdf4b8bbc385b951ab3b99d4bJamie Madill** 510d1e78c9cf69e98abdf4b8bbc385b951ab3b99d4bJamie Madill** A sector is 256 contiguous blocks (1024 bytes). 511d1e78c9cf69e98abdf4b8bbc385b951ab3b99d4bJamie Madill** 512d1e78c9cf69e98abdf4b8bbc385b951ab3b99d4bJamie Madill** Returns tNFC_STATUS 513d1e78c9cf69e98abdf4b8bbc385b951ab3b99d4bJamie Madill** 514d1e78c9cf69e98abdf4b8bbc385b951ab3b99d4bJamie Madill*******************************************************************************/ 515d1e78c9cf69e98abdf4b8bbc385b951ab3b99d4bJamie MadillNFC_API extern tNFC_STATUS RW_T2tSectorSelect (UINT8 sector); 516d1e78c9cf69e98abdf4b8bbc385b951ab3b99d4bJamie Madill 517d1e78c9cf69e98abdf4b8bbc385b951ab3b99d4bJamie Madill/******************************************************************************* 51848dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang** 51948dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang** Function RW_T2tDetectNDef 52048dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang** 52148dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang** Description This function will find NDEF message if any in the Tag 52248dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang** 52348dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang** Returns tNFC_STATUS 52448dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang** 52548dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang*******************************************************************************/ 52648dcae7b217420a7387c84a76651989e6f5f3576Geoff LangNFC_API extern tNFC_STATUS RW_T2tDetectNDef (BOOLEAN skip_dyn_locks); 52748dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang 52848dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang/******************************************************************************* 52948dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang** 53048dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang** Function RW_T2tReadNDef 53148dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang** 53248dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang** Description This function can be called to read the NDEF message on the tag. 5338a19eed917b5f0354937567ca15fa755e0116ffashannon.woods%transgaming.com@gtempaccount.com** 534ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang** Parameters: p_buffer: The buffer into which to read the NDEF message 535ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang** buf_len: The length of the buffer 536ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang** 537ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang** Returns NCI_STATUS_OK, if read was started. Otherwise, error status. 538ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang** 539ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang*******************************************************************************/ 540ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff LangNFC_API extern tNFC_STATUS RW_T2tReadNDef (UINT8 *p_buffer, UINT16 buf_len); 541ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang 542ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang/******************************************************************************* 543ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang** 5443639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** Function RW_T2tWriteNDef 545ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 546f257598999faf907a50d8a9f9eff28dad0ff2628Jamie Madill** Description This function can be called to write an NDEF message to the tag. 547f257598999faf907a50d8a9f9eff28dad0ff2628Jamie Madill** 5488a19eed917b5f0354937567ca15fa755e0116ffashannon.woods%transgaming.com@gtempaccount.com** Parameters: msg_len: The length of the buffer 5493639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** p_msg: The NDEF message to write 550ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 55115de0f9be8120f2a09c1eb36e0b059b65561c9e2shannon.woods@transgaming.com** Returns NCI_STATUS_OK, if write was started. Otherwise, error status. 552ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 55315de0f9be8120f2a09c1eb36e0b059b65561c9e2shannon.woods@transgaming.com*******************************************************************************/ 55415de0f9be8120f2a09c1eb36e0b059b65561c9e2shannon.woods@transgaming.comNFC_API extern tNFC_STATUS RW_T2tWriteNDef (UINT16 msg_len, UINT8 *p_msg ); 5558a19eed917b5f0354937567ca15fa755e0116ffashannon.woods%transgaming.com@gtempaccount.com 55615de0f9be8120f2a09c1eb36e0b059b65561c9e2shannon.woods@transgaming.com/******************************************************************************* 557be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** 558ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_T2tSetTagReadOnly 559ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 560ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Description This function can be called to set the tag in to read only 56161f541802f0aecd106f8feaf4ef6dd003cc4aee9Geoff Lang** state 56261f541802f0aecd106f8feaf4ef6dd003cc4aee9Geoff Lang** 56361f541802f0aecd106f8feaf4ef6dd003cc4aee9Geoff Lang** Parameters: b_hard_lock: To indicate hard lock the tag or not 5648a19eed917b5f0354937567ca15fa755e0116ffashannon.woods%transgaming.com@gtempaccount.com** 5658a19eed917b5f0354937567ca15fa755e0116ffashannon.woods%transgaming.com@gtempaccount.com** Returns NCI_STATUS_OK, if set readonly operation started. 56661f541802f0aecd106f8feaf4ef6dd003cc4aee9Geoff Lang** Otherwise, error status. 5678a19eed917b5f0354937567ca15fa755e0116ffashannon.woods%transgaming.com@gtempaccount.com** 5688a19eed917b5f0354937567ca15fa755e0116ffashannon.woods%transgaming.com@gtempaccount.com*******************************************************************************/ 5698a19eed917b5f0354937567ca15fa755e0116ffashannon.woods%transgaming.com@gtempaccount.comNFC_API extern tNFC_STATUS RW_T2tSetTagReadOnly (BOOLEAN b_hard_lock); 57061f541802f0aecd106f8feaf4ef6dd003cc4aee9Geoff Lang 5718a19eed917b5f0354937567ca15fa755e0116ffashannon.woods%transgaming.com@gtempaccount.com/***************************************************************************** 572ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 573ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_T2tPresenceCheck 5748a19eed917b5f0354937567ca15fa755e0116ffashannon.woods%transgaming.com@gtempaccount.com** 575ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Description 576be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** Check if the tag is still in the field. 577ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 5782494c97a0e266f7c7795bd71e1686904a75087e3shannon.woods@transgaming.com** The RW_T2T_PRESENCE_CHECK_EVT w/ status is used to indicate presence 579ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** or non-presence. 58061f541802f0aecd106f8feaf4ef6dd003cc4aee9Geoff Lang** 58161f541802f0aecd106f8feaf4ef6dd003cc4aee9Geoff Lang** Returns 58261f541802f0aecd106f8feaf4ef6dd003cc4aee9Geoff Lang** NFC_STATUS_OK, if raw data frame sent 5838a19eed917b5f0354937567ca15fa755e0116ffashannon.woods%transgaming.com@gtempaccount.com** NFC_STATUS_NO_BUFFERS: unable to allocate a buffer for this operation 5848a19eed917b5f0354937567ca15fa755e0116ffashannon.woods%transgaming.com@gtempaccount.com** NFC_STATUS_FAILED: other error 58561f541802f0aecd106f8feaf4ef6dd003cc4aee9Geoff Lang** 5868a19eed917b5f0354937567ca15fa755e0116ffashannon.woods%transgaming.com@gtempaccount.com*****************************************************************************/ 5878a19eed917b5f0354937567ca15fa755e0116ffashannon.woods%transgaming.com@gtempaccount.comNFC_API extern tNFC_STATUS RW_T2tPresenceCheck (void); 5888a19eed917b5f0354937567ca15fa755e0116ffashannon.woods%transgaming.com@gtempaccount.com 58961f541802f0aecd106f8feaf4ef6dd003cc4aee9Geoff Lang/***************************************************************************** 5908a19eed917b5f0354937567ca15fa755e0116ffashannon.woods%transgaming.com@gtempaccount.com** 591ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_T2tFormatNDef 592ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 593be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** Description 594be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** Format Tag content 595be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** 596be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** Returns 597be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** NFC_STATUS_OK, Command sent to format Tag 598be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** NFC_STATUS_FAILED: otherwise 599be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** 600be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang*****************************************************************************/ 601be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff LangtNFC_STATUS RW_T2tFormatNDef (void); 602be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang 603be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang/***************************************************************************** 604be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** 605be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** Function RW_T3tDetectNDef 606be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** 607be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** Description 608be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** This function is used to perform NDEF detection on a Type 3 tag, and 609be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** retrieve the tag's NDEF attribute information (block 0). 610be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** 611be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** Before using this API, the application must call RW_SelectTagType to 612be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** indicate that a Type 3 tag has been activated, and to provide the 613be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** tag's Manufacture ID (IDm) . 614be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** 615be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** Returns 616be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** NFC_STATUS_OK: ndef detection procedure started 6173639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** NFC_STATUS_NO_BUFFERS: unable to allocate a buffer for this operation 618ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** NFC_STATUS_FAILED: other error 619ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 6203639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill*****************************************************************************/ 621ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.orgNFC_API extern tNFC_STATUS RW_T3tDetectNDef (void); 6223639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill 6238a19eed917b5f0354937567ca15fa755e0116ffashannon.woods%transgaming.com@gtempaccount.com/***************************************************************************** 624ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 6253639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** Function RW_T3tFormatNDef 6268a19eed917b5f0354937567ca15fa755e0116ffashannon.woods%transgaming.com@gtempaccount.com** 6273639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** Description 628ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Format a type-3 tag for NDEF. 629ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 6303639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** Only Felica-Lite tags are supported by this API. The 631ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** RW_T3T_FORMAT_CPLT_EVT is used to notify the status of the operation. 6323639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** 633ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Returns 634ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** NFC_STATUS_OK: ndef detection procedure started 6353639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** NFC_STATUS_NO_BUFFERS: unable to allocate a buffer for this operation 636ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** NFC_STATUS_FAILED: other error 6373639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** 638ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org*****************************************************************************/ 639ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.orgNFC_API extern tNFC_STATUS RW_T3tFormatNDef (void); 640cc62facbe9c5188cd7d71059d58b4d9f9f2a3c99shannon.woods%transgaming.com@gtempaccount.com 641ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang/***************************************************************************** 642ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 643ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang** Function RW_T3tSetReadOnly 6442c2b82bd10bd0136613cf30a0977966abf5aa257shannonwoods@chromium.org** 6452c2b82bd10bd0136613cf30a0977966abf5aa257shannonwoods@chromium.org** Description 646ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Set a type-3 tag to Read Only 647ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 648ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Only Felica-Lite tags are supported by this API. 649ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** RW_T3tDetectNDef() must be called before using this 650ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** The RW_T3T_SET_READ_ONLY_CPLT_EVT event will be returned. 651ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang** 652ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Returns 653ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** NFC_STATUS_OK if success 654ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** NFC_STATUS_FAILED if T3T is busy or other error 655cc62facbe9c5188cd7d71059d58b4d9f9f2a3c99shannon.woods%transgaming.com@gtempaccount.com** 656ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org*****************************************************************************/ 657cc62facbe9c5188cd7d71059d58b4d9f9f2a3c99shannon.woods%transgaming.com@gtempaccount.comNFC_API extern tNFC_STATUS RW_T3tSetReadOnly (BOOLEAN b_hard_lock); 658ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org 659ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang/***************************************************************************** 660ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 661ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_T3tCheckNDef 662ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 663cc62facbe9c5188cd7d71059d58b4d9f9f2a3c99shannon.woods%transgaming.com@gtempaccount.com** Description 664ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Retrieve NDEF contents from a Type3 tag. 665ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 666ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** The RW_T3T_CHECK_EVT event is used to notify the application for each 667ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang** segment of NDEF data received. The RW_T3T_CHECK_CPLT_EVT event is used to 668ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** notify the application all segments have been received. 669ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 670ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang** Before using this API, the RW_T3tDetectNDef function must be called to 671ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang** verify that the tag contains NDEF data, and to retrieve the NDEF 672ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** attributes. 673ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 674a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** Internally, this command will be separated into multiple Tag 3 Check 675ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang** commands (if necessary) - depending on the tag's Nbr (max number of 676a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** blocks per read) attribute. 677ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang** 678a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** Returns 679a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** NFC_STATUS_OK: check command started 680a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** NFC_STATUS_NO_BUFFERS: unable to allocate a buffer for this operation 681a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** NFC_STATUS_FAILED: other error 682a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** 683a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com*****************************************************************************/ 684a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.comNFC_API extern tNFC_STATUS RW_T3tCheckNDef (void); 685ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang 686a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com/***************************************************************************** 687a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** 688a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** Function RW_T3tUpdateNDef 689a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** 690a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** Description 691a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** Write NDEF contents to a Type3 tag. 692a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** 693ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang** The RW_T3T_UPDATE_CPLT_EVT callback event will be used to notify the 694a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** application of the response. 695a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** 696a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** Before using this API, the RW_T3tDetectNDef function must be called to 697a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** verify that the tag contains NDEF data, and to retrieve the NDEF 698a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** attributes. 699a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** 700a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** Internally, this command will be separated into multiple Tag 3 Update 701ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang** commands (if necessary) - depending on the tag's Nbw (max number of 702a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** blocks per write) attribute. 703a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** 704ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang** Returns 705ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang** NFC_STATUS_OK: check command started 706a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** NFC_STATUS_NO_BUFFERS: unable to allocate a buffer for this operation 707a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** NFC_STATUS_REFUSED: tag is read-only 70836c76a9156161c560cb923a4041416a230baafd6shannon.woods%transgaming.com@gtempaccount.com** NFC_STATUS_BUFFER_FULL: len exceeds tag's maximum size 7093639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** NFC_STATUS_FAILED: other error 710ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 7113639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill*****************************************************************************/ 712ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.orgNFC_API extern tNFC_STATUS RW_T3tUpdateNDef (UINT32 len, UINT8 *p_data); 713e6d12e9d68141460f9adfe135a5741673a41eae5daniel@transgaming.com 714ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org/***************************************************************************** 715e6d12e9d68141460f9adfe135a5741673a41eae5daniel@transgaming.com** 7162c2b82bd10bd0136613cf30a0977966abf5aa257shannonwoods@chromium.org** Function RW_T3tCheck 7172c2b82bd10bd0136613cf30a0977966abf5aa257shannonwoods@chromium.org** 7182494c97a0e266f7c7795bd71e1686904a75087e3shannon.woods@transgaming.com** Description 719ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Read (non-NDEF) contents from a Type3 tag. 720ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 721a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** The RW_READ_EVT event is used to notify the application for each 722a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** segment of NDEF data received. The RW_READ_CPLT_EVT event is used to 723a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** notify the application all segments have been received. 724ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang** 725a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** Before using this API, the application must call RW_SelectTagType to 726a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** indicate that a Type 3 tag has been activated, and to provide the 727a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** tag's Manufacture ID (IDm) . 728ae1990c8a5faddcc0fb3d137b389fa6f22ba826bGeoff Lang** 729a741b641ed8120c7f3b42ef5f22f4b268db9722eshannon.woods%transgaming.com@gtempaccount.com** Returns 7302c2b82bd10bd0136613cf30a0977966abf5aa257shannonwoods@chromium.org** NFC_STATUS_OK: check command started 73136c76a9156161c560cb923a4041416a230baafd6shannon.woods%transgaming.com@gtempaccount.com** NFC_STATUS_NO_BUFFERS: unable to allocate a buffer for this operation 732ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** NFC_STATUS_FAILED: other error 733ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 734ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org*****************************************************************************/ 7353639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie MadillNFC_API extern tNFC_STATUS RW_T3tCheck (UINT8 num_blocks, tT3T_BLOCK_DESC *t3t_blocks); 736ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org 7373639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill/***************************************************************************** 738ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 739ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_T3tUpdate 7403639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** 74136c76a9156161c560cb923a4041416a230baafd6shannon.woods%transgaming.com@gtempaccount.com** Description 7423639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** Write (non-NDEF) contents to a Type3 tag. 74336c76a9156161c560cb923a4041416a230baafd6shannon.woods%transgaming.com@gtempaccount.com** 744ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** The RW_WRITE_CPLT_EVT event is used to notify the application all 7453639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** segments have been received. 746ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 7473639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** Before using this API, the application must call RW_SelectTagType to 748ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** indicate that a Type 3 tag has been activated, and to provide the tag's 749ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Manufacture ID (IDm) . 7503639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** 751f130616e19a84f5b991aec4327ab041094d47b02shannon.woods%transgaming.com@gtempaccount.com** Returns 7523639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** NFC_STATUS_OK: check command started 753f130616e19a84f5b991aec4327ab041094d47b02shannon.woods%transgaming.com@gtempaccount.com** NFC_STATUS_NO_BUFFERS: unable to allocate a buffer for this operation 754f130616e19a84f5b991aec4327ab041094d47b02shannon.woods%transgaming.com@gtempaccount.com** NFC_STATUS_FAILED: other error 7553639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** 756f130616e19a84f5b991aec4327ab041094d47b02shannon.woods%transgaming.com@gtempaccount.com*****************************************************************************/ 7573639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie MadillNFC_API extern tNFC_STATUS RW_T3tUpdate (UINT8 num_blocks, tT3T_BLOCK_DESC *t3t_blocks, UINT8 *p_data); 758f130616e19a84f5b991aec4327ab041094d47b02shannon.woods%transgaming.com@gtempaccount.com 759f130616e19a84f5b991aec4327ab041094d47b02shannon.woods%transgaming.com@gtempaccount.com/***************************************************************************** 7603639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** 761f130616e19a84f5b991aec4327ab041094d47b02shannon.woods%transgaming.com@gtempaccount.com** Function RW_T3tSendRawFrame 7623639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** 763f130616e19a84f5b991aec4327ab041094d47b02shannon.woods%transgaming.com@gtempaccount.com** Description 764f130616e19a84f5b991aec4327ab041094d47b02shannon.woods%transgaming.com@gtempaccount.com** This function is called to send a raw data frame to the peer device. 7653639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** When type 3 tag receives response from peer, the callback function 766f130616e19a84f5b991aec4327ab041094d47b02shannon.woods%transgaming.com@gtempaccount.com** will be called with a RW_T3T_RAW_FRAME_EVT [Table 6]. 7673639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** 768f130616e19a84f5b991aec4327ab041094d47b02shannon.woods%transgaming.com@gtempaccount.com** Before using this API, the application must call RW_SelectTagType to 769f130616e19a84f5b991aec4327ab041094d47b02shannon.woods%transgaming.com@gtempaccount.com** indicate that a Type 3 tag has been activated. 7703639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** 771f130616e19a84f5b991aec4327ab041094d47b02shannon.woods%transgaming.com@gtempaccount.com** The raw frame should be a properly formatted Type 3 tag message. 7723639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** 773f130616e19a84f5b991aec4327ab041094d47b02shannon.woods%transgaming.com@gtempaccount.com** Returns 774f130616e19a84f5b991aec4327ab041094d47b02shannon.woods%transgaming.com@gtempaccount.com** NFC_STATUS_OK, if raw data frame sent 7753639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** NFC_STATUS_NO_BUFFERS: unable to allocate a buffer for this operation 776f130616e19a84f5b991aec4327ab041094d47b02shannon.woods%transgaming.com@gtempaccount.com** NFC_STATUS_FAILED: other error 7773639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** 778f130616e19a84f5b991aec4327ab041094d47b02shannon.woods%transgaming.com@gtempaccount.com*****************************************************************************/ 779f130616e19a84f5b991aec4327ab041094d47b02shannon.woods%transgaming.com@gtempaccount.comNFC_API extern tNFC_STATUS RW_T3tSendRawFrame (UINT16 len, UINT8 *p_data); 7803639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill 781ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org/***************************************************************************** 782be4fdb3f5a1c2a3250a4b8351e3b09cc639a0672Geoff Lang** 783ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_T3tPoll 784ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 7853639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** Description 786ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Send POLL command 7873639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** 788ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Returns 789ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** NFC_STATUS_OK, if raw data frame sent 7903639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** NFC_STATUS_NO_BUFFERS: unable to allocate a buffer for this operation 791ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** NFC_STATUS_FAILED: other error 7923639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** 793ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org*****************************************************************************/ 794ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.orgNFC_API extern tNFC_STATUS RW_T3tPoll (UINT16 system_code, tT3T_POLL_RC rc, UINT8 tsn); 7953639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill 796ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org/***************************************************************************** 7973639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** 798ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_T3tPresenceCheck 799ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 8003639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** Description 80150ea4ab5e484f7d95e4d47a0bef50ca851acd63eshannon.woods%transgaming.com@gtempaccount.com** Check if the tag is still in the field. 8023639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** 80350ea4ab5e484f7d95e4d47a0bef50ca851acd63eshannon.woods%transgaming.com@gtempaccount.com** The RW_T3T_PRESENCE_CHECK_EVT w/ status is used to indicate presence 80450ea4ab5e484f7d95e4d47a0bef50ca851acd63eshannon.woods%transgaming.com@gtempaccount.com** or non-presence. 8053639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** 80650ea4ab5e484f7d95e4d47a0bef50ca851acd63eshannon.woods%transgaming.com@gtempaccount.com** Returns 8073639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** NFC_STATUS_OK, if raw data frame sent 80850ea4ab5e484f7d95e4d47a0bef50ca851acd63eshannon.woods%transgaming.com@gtempaccount.com** NFC_STATUS_NO_BUFFERS: unable to allocate a buffer for this operation 80950ea4ab5e484f7d95e4d47a0bef50ca851acd63eshannon.woods%transgaming.com@gtempaccount.com** NFC_STATUS_FAILED: other error 8103639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** 81150ea4ab5e484f7d95e4d47a0bef50ca851acd63eshannon.woods%transgaming.com@gtempaccount.com*****************************************************************************/ 8123639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie MadillNFC_API extern tNFC_STATUS RW_T3tPresenceCheck (void); 81350ea4ab5e484f7d95e4d47a0bef50ca851acd63eshannon.woods%transgaming.com@gtempaccount.com 81450ea4ab5e484f7d95e4d47a0bef50ca851acd63eshannon.woods%transgaming.com@gtempaccount.com/***************************************************************************** 8153639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** 81650ea4ab5e484f7d95e4d47a0bef50ca851acd63eshannon.woods%transgaming.com@gtempaccount.com** Function RW_T3tGetSystemCodes 8173639892dee8ec8cecf4bae4b0585a7cefde98d80Jamie Madill** 81850ea4ab5e484f7d95e4d47a0bef50ca851acd63eshannon.woods%transgaming.com@gtempaccount.com** Description 81950ea4ab5e484f7d95e4d47a0bef50ca851acd63eshannon.woods%transgaming.com@gtempaccount.com** Get systems codes supported by the activated tag: 8204590d89dd7903aa9e809bdca8bcbe5af422c8710shannon.woods%transgaming.com@gtempaccount.com** Poll for wildcard (FFFF): 82199a1e985196cab0ab309209fe8319f6bdbe1dd20Jamie Madill** - If felica-lite code then poll for ndef (12fc) 822ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** - Otherwise send RequestSystmCode command to get 823834e8b7715c25e299c07c9d63f5be0a0ee6c5856Jamie Madill** system codes. 824ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 825f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com** Before using this API, the application must call RW_SelectTagType to 826ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** indicate that a Type 3 tag has been activated. 827f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com** 828f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com** Returns 829f07558ac8c3b30950cbd899d72da56692d2725f1Jamie Madill** NFC_STATUS_OK, if raw data frame sent 830f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com** NFC_STATUS_NO_BUFFERS: unable to allocate a buffer for this operation 831f257598999faf907a50d8a9f9eff28dad0ff2628Jamie Madill** NFC_STATUS_FAILED: other error 8324590d89dd7903aa9e809bdca8bcbe5af422c8710shannon.woods%transgaming.com@gtempaccount.com** 833f257598999faf907a50d8a9f9eff28dad0ff2628Jamie Madill*****************************************************************************/ 8344590d89dd7903aa9e809bdca8bcbe5af422c8710shannon.woods%transgaming.com@gtempaccount.comNFC_API extern tNFC_STATUS RW_T3tGetSystemCodes (void); 8354590d89dd7903aa9e809bdca8bcbe5af422c8710shannon.woods%transgaming.com@gtempaccount.com 8364590d89dd7903aa9e809bdca8bcbe5af422c8710shannon.woods%transgaming.com@gtempaccount.com/******************************************************************************* 837f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com** 838f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com** Function RW_T4tDetectNDef 839f257598999faf907a50d8a9f9eff28dad0ff2628Jamie Madill** 840f257598999faf907a50d8a9f9eff28dad0ff2628Jamie Madill** Description This function performs NDEF detection procedure 841f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com** 842f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com** RW_T4T_NDEF_DETECT_EVT will be returned 843ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 844f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com** Returns NFC_STATUS_OK if success 845ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** NFC_STATUS_FAILED if T4T is busy or other error 846f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com** 847ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org*******************************************************************************/ 8484590d89dd7903aa9e809bdca8bcbe5af422c8710shannon.woods%transgaming.com@gtempaccount.comNFC_API extern tNFC_STATUS RW_T4tDetectNDef (void); 849f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com 850f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com/******************************************************************************* 851f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com** 8524590d89dd7903aa9e809bdca8bcbe5af422c8710shannon.woods%transgaming.com@gtempaccount.com** Function RW_T4tReadNDef 853f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com** 854f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com** Description This function performs NDEF read procedure 8554590d89dd7903aa9e809bdca8bcbe5af422c8710shannon.woods%transgaming.com@gtempaccount.com** Note: RW_T4tDetectNDef() must be called before using this 856ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 857f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com** The following event will be returned 858f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com** RW_T4T_NDEF_READ_EVT for each segmented NDEF message 8594590d89dd7903aa9e809bdca8bcbe5af422c8710shannon.woods%transgaming.com@gtempaccount.com** RW_T4T_NDEF_READ_CPLT_EVT for the last segment or complete NDEF 860ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** RW_T4T_NDEF_READ_FAIL_EVT for failure 861ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 862f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com** Returns NFC_STATUS_OK if success 863ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** NFC_STATUS_FAILED if T4T is busy or other error 8644590d89dd7903aa9e809bdca8bcbe5af422c8710shannon.woods%transgaming.com@gtempaccount.com** 865ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org*******************************************************************************/ 8664590d89dd7903aa9e809bdca8bcbe5af422c8710shannon.woods%transgaming.com@gtempaccount.comNFC_API extern tNFC_STATUS RW_T4tReadNDef (void); 867ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org 868f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com/******************************************************************************* 869ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 8704590d89dd7903aa9e809bdca8bcbe5af422c8710shannon.woods%transgaming.com@gtempaccount.com** Function RW_T4tUpdateNDef 871f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com** 872f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com** Description This function performs NDEF update procedure 873f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com** Note: RW_T4tDetectNDef() must be called before using this 8741b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** Updating data must not be removed until returning event 875e229012c1479ef9e93fa6f3078619142104455dbshannon.woods%transgaming.com@gtempaccount.com** 876e229012c1479ef9e93fa6f3078619142104455dbshannon.woods%transgaming.com@gtempaccount.com** The following event will be returned 877e229012c1479ef9e93fa6f3078619142104455dbshannon.woods%transgaming.com@gtempaccount.com** RW_T4T_NDEF_UPDATE_CPLT_EVT for complete 878ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** RW_T4T_NDEF_UPDATE_FAIL_EVT for failure 879e229012c1479ef9e93fa6f3078619142104455dbshannon.woods%transgaming.com@gtempaccount.com** 880e229012c1479ef9e93fa6f3078619142104455dbshannon.woods%transgaming.com@gtempaccount.com** Returns NFC_STATUS_OK if success 881e229012c1479ef9e93fa6f3078619142104455dbshannon.woods%transgaming.com@gtempaccount.com** NFC_STATUS_FAILED if T4T is busy or other error 882e229012c1479ef9e93fa6f3078619142104455dbshannon.woods%transgaming.com@gtempaccount.com** 883e229012c1479ef9e93fa6f3078619142104455dbshannon.woods%transgaming.com@gtempaccount.com*******************************************************************************/ 884e229012c1479ef9e93fa6f3078619142104455dbshannon.woods%transgaming.com@gtempaccount.comNFC_API extern tNFC_STATUS RW_T4tUpdateNDef (UINT16 length, UINT8 *p_data); 8851b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill 886f48956196a4ee245ae682d0c99dd2403de6db425shannon.woods%transgaming.com@gtempaccount.com/***************************************************************************** 887ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 888ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_T4tPresenceCheck 889ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 890ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Description 89199a1e985196cab0ab309209fe8319f6bdbe1dd20Jamie Madill** Check if the tag is still in the field. 8924590d89dd7903aa9e809bdca8bcbe5af422c8710shannon.woods%transgaming.com@gtempaccount.com** 89399a1e985196cab0ab309209fe8319f6bdbe1dd20Jamie Madill** The RW_T4T_PRESENCE_CHECK_EVT w/ status is used to indicate presence 8944590d89dd7903aa9e809bdca8bcbe5af422c8710shannon.woods%transgaming.com@gtempaccount.com** or non-presence. 8954590d89dd7903aa9e809bdca8bcbe5af422c8710shannon.woods%transgaming.com@gtempaccount.com** 89699a1e985196cab0ab309209fe8319f6bdbe1dd20Jamie Madill** Returns 8974590d89dd7903aa9e809bdca8bcbe5af422c8710shannon.woods%transgaming.com@gtempaccount.com** NFC_STATUS_OK, if raw data frame sent 89899a1e985196cab0ab309209fe8319f6bdbe1dd20Jamie Madill** NFC_STATUS_NO_BUFFERS: unable to allocate a buffer for this operation 8994590d89dd7903aa9e809bdca8bcbe5af422c8710shannon.woods%transgaming.com@gtempaccount.com** NFC_STATUS_FAILED: other error 9004590d89dd7903aa9e809bdca8bcbe5af422c8710shannon.woods%transgaming.com@gtempaccount.com** 90199a1e985196cab0ab309209fe8319f6bdbe1dd20Jamie Madill*****************************************************************************/ 902e229012c1479ef9e93fa6f3078619142104455dbshannon.woods%transgaming.com@gtempaccount.comNFC_API extern tNFC_STATUS RW_T4tPresenceCheck (void); 90399a1e985196cab0ab309209fe8319f6bdbe1dd20Jamie Madill 904e229012c1479ef9e93fa6f3078619142104455dbshannon.woods%transgaming.com@gtempaccount.com/***************************************************************************** 905e229012c1479ef9e93fa6f3078619142104455dbshannon.woods%transgaming.com@gtempaccount.com** 906ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_T4tSetNDefReadOnly 907ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 908ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Description This function performs NDEF read-only procedure 909ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Note: RW_T4tDetectNDef() must be called before using this 910ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 911ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** The RW_T4T_SET_TO_RO_EVT event will be returned. 912ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 913ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Returns NFC_STATUS_OK if success 914ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** NFC_STATUS_FAILED if T4T is busy or other error 915d4cfa57df4df85546a969f66ec50d364f6e6d4feJamie Madill** 916ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org*****************************************************************************/ 917d4cfa57df4df85546a969f66ec50d364f6e6d4feJamie MadillNFC_API extern tNFC_STATUS RW_T4tSetNDefReadOnly (void); 918d4cfa57df4df85546a969f66ec50d364f6e6d4feJamie Madill 919d4cfa57df4df85546a969f66ec50d364f6e6d4feJamie Madill/******************************************************************************* 920d4cfa57df4df85546a969f66ec50d364f6e6d4feJamie Madill** 921d4cfa57df4df85546a969f66ec50d364f6e6d4feJamie Madill** Function RW_I93Inventory 922d4cfa57df4df85546a969f66ec50d364f6e6d4feJamie Madill** 923d4cfa57df4df85546a969f66ec50d364f6e6d4feJamie Madill** Description This function send Inventory command with/without AFI 924b6e55102440fb32157ee2cbc2d35aa21d46454f7daniel@transgaming.com** If UID is provided then set UID[0]:MSB, ... UID[7]:LSB 9258ff21aeaabebd0877c1cc48fdac718509f23617aJamie Madill** 92677fbf973b3da9d411e6e1bba47d7f2ebd5aa6c11daniel@transgaming.com** RW_I93_RESPONSE_EVT will be returned 927834e8b7715c25e299c07c9d63f5be0a0ee6c5856Jamie Madill** 928ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Returns NFC_STATUS_OK if success 929ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** NFC_STATUS_NO_BUFFERS if out of buffer 930ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** NFC_STATUS_FAILED if T4T is busy or other error 931e60508840c2cf59c0fd6f8986d8c80c9f7425615Nicolas Capens** 932ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org*******************************************************************************/ 933e6d12e9d68141460f9adfe135a5741673a41eae5daniel@transgaming.comNFC_API extern tNFC_STATUS RW_I93Inventory (BOOLEAN including_afi, UINT8 afi, UINT8 *p_uid); 934d4cfa57df4df85546a969f66ec50d364f6e6d4feJamie Madill 935f956186f22421fb77a27e59b91c48d155a1351d7daniel@transgaming.com/******************************************************************************* 93638676dc14bd6136e9607e05825890ecf5cb402f1shannonwoods@chromium.org** 937b6e55102440fb32157ee2cbc2d35aa21d46454f7daniel@transgaming.com** Function RW_I93StayQuiet 938e76b64b216e9f286210c6b1badd791909cca47bddaniel@transgaming.com** 939b6e55102440fb32157ee2cbc2d35aa21d46454f7daniel@transgaming.com** Description This function send Inventory command 940f956186f22421fb77a27e59b91c48d155a1351d7daniel@transgaming.com** 941f956186f22421fb77a27e59b91c48d155a1351d7daniel@transgaming.com** RW_I93_CMD_CMPL_EVT will be returned 942f956186f22421fb77a27e59b91c48d155a1351d7daniel@transgaming.com** 943b6e55102440fb32157ee2cbc2d35aa21d46454f7daniel@transgaming.com** Returns NFC_STATUS_OK if success 94476b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang** NFC_STATUS_NO_BUFFERS if out of buffer 945f956186f22421fb77a27e59b91c48d155a1351d7daniel@transgaming.com** NFC_STATUS_BUSY if busy 946f956186f22421fb77a27e59b91c48d155a1351d7daniel@transgaming.com** NFC_STATUS_FAILED if other error 9472494c97a0e266f7c7795bd71e1686904a75087e3shannon.woods@transgaming.com** 948b6e55102440fb32157ee2cbc2d35aa21d46454f7daniel@transgaming.com*******************************************************************************/ 949b6e55102440fb32157ee2cbc2d35aa21d46454f7daniel@transgaming.comNFC_API extern tNFC_STATUS RW_I93StayQuiet (void); 950f956186f22421fb77a27e59b91c48d155a1351d7daniel@transgaming.com 951b6e55102440fb32157ee2cbc2d35aa21d46454f7daniel@transgaming.com/******************************************************************************* 95238676dc14bd6136e9607e05825890ecf5cb402f1shannonwoods@chromium.org** 953f956186f22421fb77a27e59b91c48d155a1351d7daniel@transgaming.com** Function RW_I93ReadSingleBlock 954e76b64b216e9f286210c6b1badd791909cca47bddaniel@transgaming.com** 955b6e55102440fb32157ee2cbc2d35aa21d46454f7daniel@transgaming.com** Description This function send Read Single Block command 956f956186f22421fb77a27e59b91c48d155a1351d7daniel@transgaming.com** 957f956186f22421fb77a27e59b91c48d155a1351d7daniel@transgaming.com** RW_I93_RESPONSE_EVT will be returned 958f956186f22421fb77a27e59b91c48d155a1351d7daniel@transgaming.com** 959ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Returns NFC_STATUS_OK if success 96076b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang** NFC_STATUS_NO_BUFFERS if out of buffer 961f956186f22421fb77a27e59b91c48d155a1351d7daniel@transgaming.com** NFC_STATUS_BUSY if busy 962f956186f22421fb77a27e59b91c48d155a1351d7daniel@transgaming.com** NFC_STATUS_FAILED if other error 9632494c97a0e266f7c7795bd71e1686904a75087e3shannon.woods@transgaming.com** 964b6e55102440fb32157ee2cbc2d35aa21d46454f7daniel@transgaming.com*******************************************************************************/ 965b6e55102440fb32157ee2cbc2d35aa21d46454f7daniel@transgaming.comNFC_API extern tNFC_STATUS RW_I93ReadSingleBlock (UINT16 block_number); 966b6e55102440fb32157ee2cbc2d35aa21d46454f7daniel@transgaming.com 967b6e55102440fb32157ee2cbc2d35aa21d46454f7daniel@transgaming.com/******************************************************************************* 968ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 969ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_I93WriteSingleBlock 970d4cfa57df4df85546a969f66ec50d364f6e6d4feJamie Madill** 971d4cfa57df4df85546a969f66ec50d364f6e6d4feJamie Madill** Description This function send Write Single Block command 972d4cfa57df4df85546a969f66ec50d364f6e6d4feJamie Madill** Application must get block size first by calling RW_I93GetSysInfo(). 973d4cfa57df4df85546a969f66ec50d364f6e6d4feJamie Madill** 974d4cfa57df4df85546a969f66ec50d364f6e6d4feJamie Madill** RW_I93_CMD_CMPL_EVT will be returned 975d4cfa57df4df85546a969f66ec50d364f6e6d4feJamie Madill** 976b6e55102440fb32157ee2cbc2d35aa21d46454f7daniel@transgaming.com** Returns NFC_STATUS_OK if success 977c9610c51e9c02ba67c735ff449a70164cda12a60Brandon Jones** NFC_STATUS_NO_BUFFERS if out of buffer 9788ff21aeaabebd0877c1cc48fdac718509f23617aJamie Madill** NFC_STATUS_BUSY if busy 9798ff21aeaabebd0877c1cc48fdac718509f23617aJamie Madill** NFC_STATUS_FAILED if other error 9808ff21aeaabebd0877c1cc48fdac718509f23617aJamie Madill** 9818ff21aeaabebd0877c1cc48fdac718509f23617aJamie Madill*******************************************************************************/ 9828ff21aeaabebd0877c1cc48fdac718509f23617aJamie MadillNFC_API extern tNFC_STATUS RW_I93WriteSingleBlock (UINT16 block_number, 983ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org UINT8 *p_data); 984ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org 98543a53e2434f4fe042bee061fc369a93314b710deBrandon Jones/******************************************************************************* 9861bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** 9871bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** Function RW_I93LockBlock 9881bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** 9891bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** Description This function send Lock Block command 990c9610c51e9c02ba67c735ff449a70164cda12a60Brandon Jones** 991c9610c51e9c02ba67c735ff449a70164cda12a60Brandon Jones** RW_I93_CMD_CMPL_EVT will be returned 9921bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** 9931bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** Returns NFC_STATUS_OK if success 9941bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** NFC_STATUS_NO_BUFFERS if out of buffer 9951bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** NFC_STATUS_BUSY if busy 9961bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** NFC_STATUS_FAILED if other error 997f257598999faf907a50d8a9f9eff28dad0ff2628Jamie Madill** 9981bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org*******************************************************************************/ 9991bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.orgNFC_API extern tNFC_STATUS RW_I93LockBlock (UINT8 block_number); 10001bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org 10011bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org/******************************************************************************* 1002d38f926ad0a14e8927db2468df840a3ecf330924Brandon Jones** 10031bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** Function RW_I93ReadMultipleBlocks 10041bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** 10051bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** Description This function send Read Multiple Blocks command 10061bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** 10071bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** RW_I93_RESPONSE_EVT will be returned 100804668675302d0ca0249dd6d84e34eb449758909aJamie Madill** 100904668675302d0ca0249dd6d84e34eb449758909aJamie Madill** Returns NFC_STATUS_OK if success 101004668675302d0ca0249dd6d84e34eb449758909aJamie Madill** NFC_STATUS_NO_BUFFERS if out of buffer 101104668675302d0ca0249dd6d84e34eb449758909aJamie Madill** NFC_STATUS_BUSY if busy 101204668675302d0ca0249dd6d84e34eb449758909aJamie Madill** NFC_STATUS_FAILED if other error 10131bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** 10141bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org*******************************************************************************/ 10151bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.orgNFC_API extern tNFC_STATUS RW_I93ReadMultipleBlocks (UINT16 first_block_number, 10161bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org UINT16 number_blocks); 10171bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org 101843a53e2434f4fe042bee061fc369a93314b710deBrandon Jones/******************************************************************************* 10191bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** 10201bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** Function RW_I93WriteMultipleBlocks 10211bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** 10221bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** Description This function send Write Multiple Blocks command 10231bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** 10241bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** RW_I93_CMD_CMPL_EVT will be returned 10251bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** 102643a53e2434f4fe042bee061fc369a93314b710deBrandon Jones** Returns NFC_STATUS_OK if success 10271bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** NFC_STATUS_NO_BUFFERS if out of buffer 10281bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** NFC_STATUS_BUSY if busy 10291bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** NFC_STATUS_FAILED if other error 10301bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org** 1031c9610c51e9c02ba67c735ff449a70164cda12a60Brandon Jones*******************************************************************************/ 10321bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.orgNFC_API extern tNFC_STATUS RW_I93WriteMultipleBlocks (UINT8 first_block_number, 10331bddfb984b4ce6f8422a877097e60aca956f5661shannonwoods@chromium.org UINT16 number_blocks, 10347162096ee6cfcb0fa797eb3503154f39ec53ef09Brandon Jones UINT8 *p_data); 1035ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org 1036d15250e62703537195df41ea6c2412d92aee120aJamie Madill/******************************************************************************* 1037d15250e62703537195df41ea6c2412d92aee120aJamie Madill** 10385f562735860c4415b09db11c27070d3503d687aaJamie Madill** Function RW_I93Select 10395f562735860c4415b09db11c27070d3503d687aaJamie Madill** 1040ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Description This function send Select command 1041ff0d2ba6c7fb23c9dca60801d3f12a79d360fef3Jamie Madill** 1042ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** UID[0]: 0xE0, MSB 1043ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** UID[1]: IC Mfg Code 104454ad4f8174593fe4854a9ef5952d4b02f1a82e35Jamie Madill** ... 104554ad4f8174593fe4854a9ef5952d4b02f1a82e35Jamie Madill** UID[7]: LSB 104654ad4f8174593fe4854a9ef5952d4b02f1a82e35Jamie Madill** 104754ad4f8174593fe4854a9ef5952d4b02f1a82e35Jamie Madill** RW_I93_CMD_CMPL_EVT will be returned 104854ad4f8174593fe4854a9ef5952d4b02f1a82e35Jamie Madill** 104954ad4f8174593fe4854a9ef5952d4b02f1a82e35Jamie Madill** Returns NFC_STATUS_OK if success 10505f562735860c4415b09db11c27070d3503d687aaJamie Madill** NFC_STATUS_NO_BUFFERS if out of buffer 1051ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** NFC_STATUS_BUSY if busy 1052ff0d2ba6c7fb23c9dca60801d3f12a79d360fef3Jamie Madill** NFC_STATUS_FAILED if other error 1053ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 1054ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org*******************************************************************************/ 105542bcf32e9d61f877b8e6bd089ab86382a3b7c9fdJamie MadillNFC_API extern tNFC_STATUS RW_I93Select (UINT8 *p_uid); 1056ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org 1057ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org/******************************************************************************* 1058ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 1059ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_I93ResetToReady 1060139b90912c38ecf3f0c6d4e76d3595bd7463cefaJamie Madill** 1061af875527dd30df822016ff90307de938195176c3Austin Kinross** Description This function send Reset To Ready command 1062ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 1063ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** RW_I93_CMD_CMPL_EVT will be returned 1064ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 1065ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Returns NFC_STATUS_OK if success 1066ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** NFC_STATUS_NO_BUFFERS if out of buffer 1067ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** NFC_STATUS_BUSY if busy 106854ad4f8174593fe4854a9ef5952d4b02f1a82e35Jamie Madill** NFC_STATUS_FAILED if other error 106954ad4f8174593fe4854a9ef5952d4b02f1a82e35Jamie Madill** 1070ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org*******************************************************************************/ 1071253b8d209be72a28891636af156f39874a0dd75aapatrick@chromium.orgNFC_API extern tNFC_STATUS RW_I93ResetToReady (void); 1072ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org 1073ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org/******************************************************************************* 1074ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 1075ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Function RW_I93WriteAFI 1076ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 1077ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** Description This function send Write AFI command 1078ea09f9b400d2ef6d2761e0a81471ee5221995a13apatrick@chromium.org** 1079900013cd6b1d0ed2cdc5ee5ca0f4210624b0d8efGeoff Lang** RW_I93_CMD_CMPL_EVT will be returned 108090080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** 10819c4b24a52e0ff478aa170d33e26c44acd8c68be3Jamie Madill** Returns NFC_STATUS_OK if success 10829c4b24a52e0ff478aa170d33e26c44acd8c68be3Jamie Madill** NFC_STATUS_NO_BUFFERS if out of buffer 10839c4b24a52e0ff478aa170d33e26c44acd8c68be3Jamie Madill** NFC_STATUS_BUSY if busy 108422502d52956364879e2bd2feb8516a983714eb45Brandon Jones** NFC_STATUS_FAILED if other error 1085900013cd6b1d0ed2cdc5ee5ca0f4210624b0d8efGeoff Lang** 108604fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang*******************************************************************************/ 108704fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff LangNFC_API extern tNFC_STATUS RW_I93WriteAFI (UINT8 afi); 10886f1796f3ea2d67d5c91a17eeb5865442b5ccd188apatrick@chromium.org 108990080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org/******************************************************************************* 109022502d52956364879e2bd2feb8516a983714eb45Brandon Jones** 109122502d52956364879e2bd2feb8516a983714eb45Brandon Jones** Function RW_I93LockAFI 109290080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** 109390080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** Description This function send Lock AFI command 109490080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** 109590080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** RW_I93_CMD_CMPL_EVT will be returned 109690080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** 10971b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** Returns NFC_STATUS_OK if success 10981b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** NFC_STATUS_NO_BUFFERS if out of buffer 10990aa84f6338a42ec8f3ea23c3da27c3c86e21d846Jamie Madill** NFC_STATUS_BUSY if busy 1100049108df24a19eb51a17a9e157c24fc099660af8Jamie Madill** NFC_STATUS_FAILED if other error 1101049108df24a19eb51a17a9e157c24fc099660af8Jamie Madill** 1102049108df24a19eb51a17a9e157c24fc099660af8Jamie Madill*******************************************************************************/ 1103049108df24a19eb51a17a9e157c24fc099660af8Jamie MadillNFC_API extern tNFC_STATUS RW_I93LockAFI (void); 1104049108df24a19eb51a17a9e157c24fc099660af8Jamie Madill 11050aa84f6338a42ec8f3ea23c3da27c3c86e21d846Jamie Madill/******************************************************************************* 11061b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 11070aa84f6338a42ec8f3ea23c3da27c3c86e21d846Jamie Madill** Function RW_I93WriteDSFID 110890080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** 110990080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** Description This function send Write DSFID command 111090080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** 111190080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** RW_I93_CMD_CMPL_EVT will be returned 111290080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** 11131b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** Returns NFC_STATUS_OK if success 1114f97a084f94833c5028b3b1db1b149511d56c49edshannonwoods@chromium.org** NFC_STATUS_NO_BUFFERS if out of buffer 1115f97a084f94833c5028b3b1db1b149511d56c49edshannonwoods@chromium.org** NFC_STATUS_BUSY if busy 1116f97a084f94833c5028b3b1db1b149511d56c49edshannonwoods@chromium.org** NFC_STATUS_FAILED if other error 1117f97a084f94833c5028b3b1db1b149511d56c49edshannonwoods@chromium.org** 1118f97a084f94833c5028b3b1db1b149511d56c49edshannonwoods@chromium.org*******************************************************************************/ 1119f97a084f94833c5028b3b1db1b149511d56c49edshannonwoods@chromium.orgNFC_API extern tNFC_STATUS RW_I93WriteDSFID (UINT8 dsfid); 112090080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org 112190080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org/******************************************************************************* 11221b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 11231b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** Function RW_I93LockDSFID 11241b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 11251b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** Description This function send Lock DSFID command 11261b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 112790080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** RW_I93_CMD_CMPL_EVT will be returned 112890080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** 11293f2daa89f20362549ebd2d85ceb513e20503bcd9Al Patrick** Returns NFC_STATUS_OK if success 11303f2daa89f20362549ebd2d85ceb513e20503bcd9Al Patrick** NFC_STATUS_NO_BUFFERS if out of buffer 113176b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang** NFC_STATUS_BUSY if busy 113276b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang** NFC_STATUS_FAILED if other error 113390080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** 113476b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang*******************************************************************************/ 113576b10c9a9735c27627065d9fe68f78374ef48934Geoff LangNFC_API extern tNFC_STATUS RW_I93LockDSFID (void); 113676b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang 113776b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang/******************************************************************************* 113876b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang** 113990080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** Function RW_I93GetSysInfo 114076b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang** 114176b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang** Description This function send Get System Information command 114290080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** If UID is provided then set UID[0]:MSB, ... UID[7]:LSB 114376b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang** 114476b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang** RW_I93_RESPONSE_EVT will be returned 114576b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang** 114676b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang** Returns NFC_STATUS_OK if success 114776b10c9a9735c27627065d9fe68f78374ef48934Geoff Lang** NFC_STATUS_NO_BUFFERS if out of buffer 114890080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** NFC_STATUS_BUSY if busy 114990080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** NFC_STATUS_FAILED if other error 11501b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 11511b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill*******************************************************************************/ 11521b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie MadillNFC_API extern tNFC_STATUS RW_I93GetSysInfo (UINT8 *p_uid); 11531b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill 115490080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org/******************************************************************************* 11551b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 11566f1796f3ea2d67d5c91a17eeb5865442b5ccd188apatrick@chromium.org** Function RW_I93GetMultiBlockSecurityStatus 115790080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** 115890080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** Description This function send Get Multiple Block Security Status command 115990080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** 116090080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** RW_I93_RESPONSE_EVT will be returned 116190080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** 11621b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** Returns NFC_STATUS_OK if success 11631b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** NFC_STATUS_NO_BUFFERS if out of buffer 116490080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** NFC_STATUS_BUSY if busy 11651b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** NFC_STATUS_FAILED if other error 11661b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 11671b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill*******************************************************************************/ 11681b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie MadillNFC_API extern tNFC_STATUS RW_I93GetMultiBlockSecurityStatus (UINT16 first_block_number, 11691b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill UINT16 number_blocks); 117011c3b30ffb6de1146e3432ada2f0773229943bfcGeoff Lang 11711b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill/******************************************************************************* 11721b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 11731b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** Function RW_I93DetectNDef 11741b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 1175d77841743376350e4e483a955cd94cf77d8bca63shannonwoods@chromium.org** Description This function performs NDEF detection procedure 1176f257598999faf907a50d8a9f9eff28dad0ff2628Jamie Madill** 117711c3b30ffb6de1146e3432ada2f0773229943bfcGeoff Lang** RW_I93_NDEF_DETECT_EVT will be returned 11781b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 117990080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** Returns NFC_STATUS_OK if success 11801b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** NFC_STATUS_FAILED if busy or other error 11811b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 11821b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill*******************************************************************************/ 11831b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie MadillNFC_API extern tNFC_STATUS RW_I93DetectNDef (void); 1184d77841743376350e4e483a955cd94cf77d8bca63shannonwoods@chromium.org 11851b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill/******************************************************************************* 118690080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** 118790080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** Function RW_I93ReadNDef 11881b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 11896f1796f3ea2d67d5c91a17eeb5865442b5ccd188apatrick@chromium.org** Description This function performs NDEF read procedure 119090080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** Note: RW_I93DetectNDef() must be called before using this 119190080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** 119290080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** The following event will be returned 119390080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** RW_I93_NDEF_READ_EVT for each segmented NDEF message 119490080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** RW_I93_NDEF_READ_CPLT_EVT for the last segment or complete NDEF 11951b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** RW_I93_NDEF_READ_FAIL_EVT for failure 11961b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 1197d77841743376350e4e483a955cd94cf77d8bca63shannonwoods@chromium.org** Returns NFC_STATUS_OK if success 11981b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** NFC_STATUS_FAILED if I93 is busy or other error 11991b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 12001b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill*******************************************************************************/ 1201d77841743376350e4e483a955cd94cf77d8bca63shannonwoods@chromium.orgNFC_API extern tNFC_STATUS RW_I93ReadNDef (void); 12021b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill 1203d77841743376350e4e483a955cd94cf77d8bca63shannonwoods@chromium.org/******************************************************************************* 12041b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 12051b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** Function RW_I93UpdateNDef 120611c3b30ffb6de1146e3432ada2f0773229943bfcGeoff Lang** 12071b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** Description This function performs NDEF update procedure 12081b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** Note: RW_I93DetectNDef() must be called before using this 1209d77841743376350e4e483a955cd94cf77d8bca63shannonwoods@chromium.org** Updating data must not be removed until returning event 1210d77841743376350e4e483a955cd94cf77d8bca63shannonwoods@chromium.org** 12111b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** The following event will be returned 1212d77841743376350e4e483a955cd94cf77d8bca63shannonwoods@chromium.org** RW_I93_NDEF_UPDATE_CPLT_EVT for complete 12131b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** RW_I93_NDEF_UPDATE_FAIL_EVT for failure 12141b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 1215d77841743376350e4e483a955cd94cf77d8bca63shannonwoods@chromium.org** Returns NFC_STATUS_OK if success 1216d77841743376350e4e483a955cd94cf77d8bca63shannonwoods@chromium.org** NFC_STATUS_FAILED if I93 is busy or other error 12171b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 1218d77841743376350e4e483a955cd94cf77d8bca63shannonwoods@chromium.org*******************************************************************************/ 1219d77841743376350e4e483a955cd94cf77d8bca63shannonwoods@chromium.orgNFC_API extern tNFC_STATUS RW_I93UpdateNDef (UINT16 length, UINT8 *p_data); 1220d77841743376350e4e483a955cd94cf77d8bca63shannonwoods@chromium.org 1221d77841743376350e4e483a955cd94cf77d8bca63shannonwoods@chromium.org/******************************************************************************* 1222d77841743376350e4e483a955cd94cf77d8bca63shannonwoods@chromium.org** 1223d77841743376350e4e483a955cd94cf77d8bca63shannonwoods@chromium.org** Function RW_I93FormatNDef 12241b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 12251b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** Description This function performs formatting procedure 122690080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** 12271b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** RW_I93_FORMAT_CPLT_EVT will be returned 12281b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 12291b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** Returns NFC_STATUS_OK if success 123090080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** NFC_STATUS_FAILED if busy or other error 123190080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** 12321b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill*******************************************************************************/ 12331b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie MadillNFC_API extern tNFC_STATUS RW_I93FormatNDef (void); 12341b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill 12351b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill/******************************************************************************* 123648dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang** 12371b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** Function RW_I93SetTagReadOnly 123848dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang** 12391b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** Description This function performs NDEF read-only procedure 12401b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** Note: RW_I93DetectNDef() must be called before using this 12411b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** Updating data must not be removed until returning event 12421b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 12431b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** The RW_I93_SET_TAG_RO_EVT event will be returned. 12441b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 124548dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang** Returns NFC_STATUS_OK if success 124648dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang** NFC_STATUS_FAILED if I93 is busy or other error 12471b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 1248c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill*******************************************************************************/ 1249c5a8300026be5bd38ca022211ce7e078e92b9377Jamie MadillNFC_API extern tNFC_STATUS RW_I93SetTagReadOnly (void); 12507a29e4ae3d067afce9779eefc9a67a180da82129Jamie Madill 12513e773bb4f1a2202d02a546d18ca6e8d9d2440006shannon.woods@transgaming.com/***************************************************************************** 12527a29e4ae3d067afce9779eefc9a67a180da82129Jamie Madill** 1253c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** Function RW_I93PresenceCheck 12547a29e4ae3d067afce9779eefc9a67a180da82129Jamie Madill** 12551b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** Description Check if the tag is still in the field. 12561b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** 12571b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** The RW_I93_PRESENCE_CHECK_EVT w/ status is used to indicate 12581b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** presence or non-presence. 1259c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** 126090080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** Returns NFC_STATUS_OK, if raw data frame sent 12611b2a8f964c70e7f404ded12e29cc999e3b9986f9Jamie Madill** NFC_STATUS_NO_BUFFERS: unable to allocate a buffer for this operation 126204fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** NFC_STATUS_FAILED: other error 1263c9610c51e9c02ba67c735ff449a70164cda12a60Brandon Jones** 126448dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang*****************************************************************************/ 126548dcae7b217420a7387c84a76651989e6f5f3576Geoff LangNFC_API extern tNFC_STATUS RW_I93PresenceCheck (void); 126648dcae7b217420a7387c84a76651989e6f5f3576Geoff Lang 1267c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill/******************************************************************************* 1268c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** 1269c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** Function RW_SendRawFrame 1270c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** 1271c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** Description This function sends a raw frame to the peer device. 1272c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** 12737a29e4ae3d067afce9779eefc9a67a180da82129Jamie Madill** Returns tNFC_STATUS 12747a29e4ae3d067afce9779eefc9a67a180da82129Jamie Madill** 1275c9610c51e9c02ba67c735ff449a70164cda12a60Brandon Jones*******************************************************************************/ 12767a29e4ae3d067afce9779eefc9a67a180da82129Jamie MadillNFC_API extern tNFC_STATUS RW_SendRawFrame (UINT8 *p_raw_data, UINT16 data_len); 12777a29e4ae3d067afce9779eefc9a67a180da82129Jamie Madill 127804fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang/******************************************************************************* 127990080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** 1280c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** Function RW_SetActivatedTagType 1281c5a8300026be5bd38ca022211ce7e078e92b9377Jamie Madill** 128290080e3b703883b871f862d5ceafa44d2d815b6aapatrick@chromium.org** Description This function sets tag type for Reader/Writer mode. 128304fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** 128404fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** Returns tNFC_STATUS 128504fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** 128604fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang*******************************************************************************/ 128704fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff LangNFC_API extern tNFC_STATUS RW_SetActivatedTagType (tNFC_ACTIVATE_DEVT *p_activate_params, tRW_CBACK *p_cback); 128804fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang 128904fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang/******************************************************************************* 129004fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** 129104fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** Function RW_SetTraceLevel 129204fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** 129304fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** Description This function sets the trace level for Reader/Writer mode. 129404fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang** If called with a value of 0xFF, 1295c9610c51e9c02ba67c735ff449a70164cda12a60Brandon Jones** it simply returns the current trace level. 1296c9610c51e9c02ba67c735ff449a70164cda12a60Brandon Jones** 1297c9610c51e9c02ba67c735ff449a70164cda12a60Brandon Jones** Returns The new or current trace level 1298c9610c51e9c02ba67c735ff449a70164cda12a60Brandon Jones** 1299c9610c51e9c02ba67c735ff449a70164cda12a60Brandon Jones*******************************************************************************/ 130004fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff LangNFC_API extern UINT8 RW_SetTraceLevel (UINT8 new_level); 130104fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang 130204fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang#endif /* RW_API_H */ 130304fb89ad059cba1fbd14507fe58c9a700fe0de08Geoff Lang