1e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/****************************************************************************** 2e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 35c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen * Copyright (C) 2003-2013 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 195c65c3a0f42e174e47fecd4e569606003217ff4eMartijn Coenen 20e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/****************************************************************************** 21e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 22e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * This is the interface file for the synchronization server call-out 23e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * functions. 24e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project * 25e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project ******************************************************************************/ 26e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#ifndef NFA_NV_CO_H 27e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define NFA_NV_CO_H 28e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 29e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#include <time.h> 30e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 31e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#include "nfa_api.h" 32e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 33e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/***************************************************************************** 34e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Constants and Data Types 35e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project*****************************************************************************/ 36e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 37e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 38e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/************************** 39e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Common Definitions 40e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project***************************/ 41e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 42e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/* Status codes returned by call-out functions, or in call-in functions as status */ 43e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define NFA_NV_CO_OK 0x00 44e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define NFA_NV_CO_FAIL 0x01 /* Used to pass all other errors */ 45e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define NFA_NV_CO_EACCES 0x02 46e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define NFA_NV_CO_ENOTEMPTY 0x03 47e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define NFA_NV_CO_EOF 0x04 48e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define NFA_NV_CO_EODIR 0x05 49e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define NFA_NV_CO_ENOSPACE 0x06 /* Returned in nfa_nv_ci_open if no room */ 50e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define NFA_NV_CO_EIS_DIR 0x07 51e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define NFA_NV_CO_RESUME 0x08 /* used in nfa_nv_ci_open, on resume */ 52e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define NFA_NV_CO_NONE 0x09 /* used in nfa_nv_ci_open, on resume (no file to resume) */ 53e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 54e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Projecttypedef UINT8 tNFA_NV_CO_STATUS; 55e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 56e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 57e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define DH_NV_BLOCK 0x01 58e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define HC_F3_NV_BLOCK 0x02 59e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define HC_F4_NV_BLOCK 0x03 60e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#define HC_DH_NV_BLOCK 0x04 61e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 62e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/***************************************************************************** 63e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Function Declarations 64e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project*****************************************************************************/ 65e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/************************** 66e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Common Functions 67e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project***************************/ 68e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 69e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/******************************************************************************* 70e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 71e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Function nfa_nv_co_read 72e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 73e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Description This function is called by NFA to read in data from the 74e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** previously opened file. 75e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 76e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Parameters p_buf - buffer to read the data into. 77e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** nbytes - number of bytes to read into the buffer. 78e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 79e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Returns void 80e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 81e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Note: Upon completion of the request, nfa_nv_ci_read () is 82e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** called with the buffer of data, along with the number 83e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** of bytes read into the buffer, and a status. The 84e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** call-in function should only be called when ALL requested 85e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** bytes have been read, the end of file has been detected, 86e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** or an error has occurred. 87e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 88e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project*******************************************************************************/ 89e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source ProjectNFC_API extern void nfa_nv_co_read (UINT8 *p_buf, UINT16 nbytes, UINT8 block); 90e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 91e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project/******************************************************************************* 92e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 93e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Function nfa_nv_co_write 94e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 95e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Description This function is called by io to send file data to the 96e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** phone. 97e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 98e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Parameters p_buf - buffer to read the data from. 99e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** nbytes - number of bytes to write out to the file. 100e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 101e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Returns void 102e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 103e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** Note: Upon completion of the request, nfa_nv_ci_write () is 104e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** called with the file descriptor and the status. The 105e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** call-in function should only be called when ALL requested 106e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** bytes have been written, or an error has been detected, 107e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project** 108e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project*******************************************************************************/ 109e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source ProjectNFC_API extern void nfa_nv_co_write (const UINT8 *p_buf, UINT16 nbytes, UINT8 block); 110e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 111e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project 112e9df6ba5a8fcccf306a80b1670b423be8fe7746The Android Open Source Project#endif /* NFA_NV_CO_H */ 113