1e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/****************************************************************************** 2e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 3e9629bad30a9f478b336ab46b8e6e02f7f87af46Evan Chu * Copyright (C) 2009-2014 Broadcom Corporation 4e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 5e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 6e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * you may not use this file except in compliance with the License. 7e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * You may obtain a copy of the License at: 8e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 9e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 10e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 11e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * Unless required by applicable law or agreed to in writing, software 12e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 13e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * See the License for the specific language governing permissions and 15e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * limitations under the License. 16e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 17e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project ******************************************************************************/ 18e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 19e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/****************************************************************************** 20e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 21e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * This file contains the Near Field Communication (NFC) Card Emulation 22e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * mode related API function external definitions. 23e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 24e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project ******************************************************************************/ 25e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 26e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#ifndef CE_API_H 27e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define CE_API_H 28e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 296fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi#include <stdbool.h> 30a6eddd86a10fc3d7e72e589f874bffdfab6d6933Ruchi Kandoi#include "nfc_api.h" 31a6eddd86a10fc3d7e72e589f874bffdfab6d6933Ruchi Kandoi#include "nfc_types.h" 32e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#include "tags_defs.h" 33e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 346fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi#define CE_T3T_FIRST_EVT 0x60 356fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi#define CE_T4T_FIRST_EVT 0x80 36e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 376fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoienum { 386fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi CE_T3T_NDEF_UPDATE_START_EVT = CE_T3T_FIRST_EVT, 396fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi CE_T3T_NDEF_UPDATE_CPLT_EVT, 406fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi CE_T3T_UPDATE_EVT, 416fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi CE_T3T_CHECK_EVT, 426fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi CE_T3T_RAW_FRAME_EVT, 436fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi CE_T3T_MAX_EVT, 44e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 456fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi CE_T4T_NDEF_UPDATE_START_EVT = CE_T4T_FIRST_EVT, 466fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi CE_T4T_NDEF_UPDATE_CPLT_EVT, 476fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi CE_T4T_NDEF_UPDATE_ABORT_EVT, 486fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi CE_T4T_RAW_FRAME_EVT, 496fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi CE_T4T_MAX_EVT 50e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project}; 51e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 526fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi#define CE_RAW_FRAME_EVT 0xFF 53e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 54512ee63c7cc8feb016863e507a5d33cd0f4242bfRuchi Kandoitypedef uint8_t tCE_EVENT; 55e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 566fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoitypedef struct { 576fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi tNFC_STATUS status; 586fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi NFC_HDR* p_data; 59e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project} tCE_T2T_DATA; 60e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 616fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoitypedef struct { 626fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi tNFC_STATUS status; 636fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi uint8_t* p_data; 646fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi bool b_updated; 656fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi uint32_t length; 66e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project} tCE_UPDATE_INFO; 67e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 686fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoitypedef struct { 696fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi tNFC_STATUS status; 706fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi uint8_t aid_handle; 716fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi NFC_HDR* p_data; 72e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project} tCE_RAW_FRAME; 73e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 746fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoitypedef union { 756fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi tNFC_STATUS status; 766fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi tCE_UPDATE_INFO update_info; 776fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi tCE_RAW_FRAME raw_frame; 78e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project} tCE_DATA; 79e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 806fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoitypedef void(tCE_CBACK)(tCE_EVENT event, tCE_DATA* p_data); 81e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 82e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/* T4T definitions */ 836fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoitypedef uint8_t tCE_T4T_AID_HANDLE; /* Handle for AID registration */ 8446e6e28414b5e37ffad65353916520fc56ea3a86Ruchi Kandoi/* Invalid tCE_T4T_AID_HANDLE */ 8546e6e28414b5e37ffad65353916520fc56ea3a86Ruchi Kandoi#define CE_T4T_AID_HANDLE_INVALID 0xFF 8646e6e28414b5e37ffad65353916520fc56ea3a86Ruchi Kandoi/* reserved handle for wildcard aid */ 8746e6e28414b5e37ffad65353916520fc56ea3a86Ruchi Kandoi#define CE_T4T_WILDCARD_AID_HANDLE (CE_T4T_MAX_REG_AID) 88e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 89e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/******************************************************************************* 90e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 91e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Function CE_T3tSetLocalNDEFMsg 92e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 93e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Description Initialise CE Type 3 Tag with mandatory NDEF message 94e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 95e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Returns NFC_STATUS_OK if success 96e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 97e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project*******************************************************************************/ 986fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoiextern tNFC_STATUS CE_T3tSetLocalNDEFMsg(bool read_only, uint32_t size_max, 996fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi uint32_t size_current, uint8_t* p_buf, 1006fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi uint8_t* p_scratch_buf); 101e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 102e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/******************************************************************************* 103e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 104e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Function CE_T3tSetLocalNDefParams 105e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 106e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Description Sets T3T-specific NDEF parameters. (Optional - if not 107e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** called, then CE will use default parameters) 108e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 109e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Returns NFC_STATUS_OK if success 110e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 111e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project*******************************************************************************/ 1126fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoiextern tNFC_STATUS CE_T3tSetLocalNDefParams(uint8_t nbr, uint8_t nbw); 113e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 114e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/******************************************************************************* 115e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 116e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Function CE_T3tSendCheckRsp 117e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 118e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Description Send CHECK response message 119e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 120e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Returns NFC_STATUS_OK if success 121e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 122e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project*******************************************************************************/ 1236fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoiextern tNFC_STATUS CE_T3tSendCheckRsp(uint8_t status1, uint8_t status2, 1246fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi uint8_t num_blocks, 1256fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi uint8_t* p_block_data); 126e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 127e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/******************************************************************************* 128e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 129e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Function CE_T3tSendUpdateRsp 130e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 131e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Description Send UPDATE response message 132e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 133e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Returns NFC_STATUS_OK if success 134e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 135e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project*******************************************************************************/ 1366fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoiextern tNFC_STATUS CE_T3tSendUpdateRsp(uint8_t status1, uint8_t status2); 137e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 138e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/******************************************************************************* 139e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 140e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Function CE_T4tSetLocalNDEFMsg 141e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 142e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Description Initialise CE Type 4 Tag with mandatory NDEF message 143e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 144e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** The following event may be returned 145e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** CE_T4T_UPDATE_START_EVT for starting update 146e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** CE_T4T_UPDATE_CPLT_EVT for complete update 147e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** CE_T4T_UPDATE_ABORT_EVT for failure of update 148e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** CE_T4T_RAW_FRAME_EVT for raw frame 149e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 150e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** read_only: TRUE if read only 151e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** ndef_msg_max: Max NDEF message size 152e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** ndef_msg_len: NDEF message size 153e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** p_ndef_msg: NDEF message (excluding NLEN) 154e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** p_scratch_buf: temp storage for update 155e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 156e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Returns NFC_STATUS_OK if success 157e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 158e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project*******************************************************************************/ 1596fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoiextern tNFC_STATUS CE_T4tSetLocalNDEFMsg(bool read_only, uint16_t ndef_msg_max, 1606fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi uint16_t ndef_msg_len, 1616fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi uint8_t* p_ndef_msg, 1626fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi uint8_t* p_scratch_buf); 163e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 164e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/******************************************************************************* 165e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 166e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Function CE_T4tRegisterAID 167e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 168e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Description Register AID in CE T4T 169e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 170e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** aid_len: length of AID (up to NFC_MAX_AID_LEN) 171e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** p_aid: AID 172e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** p_cback: Raw frame will be forwarded with CE_RAW_FRAME_EVT 173e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 174e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Returns tCE_T4T_AID_HANDLE if successful, 175e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** CE_T4T_AID_HANDLE_INVALID otherwisse 176e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 177e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project*******************************************************************************/ 1786fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoiextern tCE_T4T_AID_HANDLE CE_T4tRegisterAID(uint8_t aid_len, uint8_t* p_aid, 1796fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi tCE_CBACK* p_cback); 180e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 181e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/******************************************************************************* 182e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 183e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Function CE_T4tDeregisterAID 184e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 185e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Description Deregister AID in CE T4T 186e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 187e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** aid_len: length of AID (up to NFC_MAX_AID_LEN) 188e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** p_aid: AID 189e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 190e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Returns NFC_STATUS_OK if success 191e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 192e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project*******************************************************************************/ 1936fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoiextern void CE_T4tDeregisterAID(tCE_T4T_AID_HANDLE aid_handle); 194e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 195e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/******************************************************************************* 196e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 197e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Function CE_T4TTestSetCC 198e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 199e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Description Set fields in Capability Container File for testing 200e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 201e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Returns NFC_STATUS_OK if success 202e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 203e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project*******************************************************************************/ 2046fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoiextern tNFC_STATUS CE_T4TTestSetCC(uint16_t cc_len, uint8_t version, 2056fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi uint16_t max_le, uint16_t max_lc); 206e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 207e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/******************************************************************************* 208e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 209e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Function CE_T4TTestSetNDEFCtrlTLV 210e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 211e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Description Set fields in NDEF File Control TLV for testing 212e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 213e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Returns NFC_STATUS_OK if success 214e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 215e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project*******************************************************************************/ 2166fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoiextern tNFC_STATUS CE_T4TTestSetNDEFCtrlTLV(uint8_t type, uint8_t length, 2176fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi uint16_t file_id, 2186fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi uint16_t max_file_size, 2196fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi uint8_t read_access, 2206fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi uint8_t write_access); 221e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 222e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/******************************************************************************* 223e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 224e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Function CE_SendRawFrame 225e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 226e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Description This function sends a raw frame to the peer device. 227e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 228e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Returns tNFC_STATUS 229e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 230e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project*******************************************************************************/ 2316fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoiextern tNFC_STATUS CE_SendRawFrame(uint8_t* p_raw_data, uint16_t data_len); 232e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 233e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/******************************************************************************* 234e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 235e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Function CE_SetActivatedTagType 236e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 237e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Description This function selects the tag type for Reader/Writer mode. 238e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 239e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Returns tNFC_STATUS 240e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 241e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project*******************************************************************************/ 2426fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoiextern tNFC_STATUS CE_SetActivatedTagType(tNFC_ACTIVATE_DEVT* p_activate_params, 2436fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi uint16_t t3t_system_code, 2446fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoi tCE_CBACK* p_cback); 245e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 246e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/******************************************************************************* 247e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 248e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Function CE_SetTraceLevel 249e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 250e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Description This function sets the trace level for Card Emulation mode. 251e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** If called with a value of 0xFF, 252e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** it simply returns the current trace level. 253e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 254e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Returns The new or current trace level 255e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 256e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project*******************************************************************************/ 2576fca02d5010de7bd31d83b853c32138021da5f29Ruchi Kandoiextern uint8_t CE_SetTraceLevel(uint8_t new_level); 258e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 259e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#endif /* CE_API_H */ 260