1 /* 2 * Copyright (C) 2010 NXP Semiconductors 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 /*! 18 * =========================================================================== * 19 * * 20 * * 21 * \file phHciNfc_IDMgmt.h * 22 * \brief HCI Header for the Identity Management Gate. * 23 * * 24 * * 25 * Project: NFC-FRI-1.1 * 26 * * 27 * $Date: Fri Aug 14 17:01:26 2009 $ * 28 * $Author: ing04880 $ * 29 * $Revision: 1.5 $ * 30 * $Aliases: NFC_FRI1.1_WK934_R31_1,NFC_FRI1.1_WK941_PREP1,NFC_FRI1.1_WK941_PREP2,NFC_FRI1.1_WK941_1,NFC_FRI1.1_WK943_R32_1,NFC_FRI1.1_WK949_PREP1,NFC_FRI1.1_WK943_R32_10,NFC_FRI1.1_WK943_R32_13,NFC_FRI1.1_WK943_R32_14,NFC_FRI1.1_WK1007_R33_1,NFC_FRI1.1_WK1007_R33_4,NFC_FRI1.1_WK1017_PREP1,NFC_FRI1.1_WK1017_R34_1,NFC_FRI1.1_WK1017_R34_2,NFC_FRI1.1_WK1023_R35_1 $ * 31 * * 32 * =========================================================================== * 33 */ 34 35 36 #ifndef PHHCINFC_IDMGMT_H 37 #define PHHCINFC_IDMGMT_H 38 39 /*@}*/ 40 41 42 /** 43 * \name HCI 44 * 45 * File: \ref phHciNfc_IDMgmt.h 46 * 47 */ 48 /*@{*/ 49 #define PHHCINFC_IDMGMT_FILEREVISION "$Revision: 1.5 $" /**< \ingroup grp_file_attributes */ 50 #define PHHCINFC_IDMGMT_FILEALIASES "$Aliases: NFC_FRI1.1_WK934_R31_1,NFC_FRI1.1_WK941_PREP1,NFC_FRI1.1_WK941_PREP2,NFC_FRI1.1_WK941_1,NFC_FRI1.1_WK943_R32_1,NFC_FRI1.1_WK949_PREP1,NFC_FRI1.1_WK943_R32_10,NFC_FRI1.1_WK943_R32_13,NFC_FRI1.1_WK943_R32_14,NFC_FRI1.1_WK1007_R33_1,NFC_FRI1.1_WK1007_R33_4,NFC_FRI1.1_WK1017_PREP1,NFC_FRI1.1_WK1017_R34_1,NFC_FRI1.1_WK1017_R34_2,NFC_FRI1.1_WK1023_R35_1 $" /**< \ingroup grp_file_attributes */ 51 /*@}*/ 52 53 /* 54 ***************************** Header File Inclusion **************************** 55 */ 56 57 #include <phHciNfc_Generic.h> 58 59 /* 60 ****************************** Macro Definitions ******************************* 61 */ 62 63 /* 64 ******************** Enumeration and Structure Definition ********************** 65 */ 66 67 68 69 /* 70 *********************** Function Prototype Declaration ************************* 71 */ 72 73 /** 74 * \ingroup grp_hci_nfc 75 * 76 * The phHciNfc_IDMgmt_Initialise function creates and the opens Identity 77 * Management Gate 78 * 79 * \param[in] psHciContext psHciContext is the pointer to HCI Layer 80 * context Structure. 81 * \param[in] pHwRef pHwRef is the Information of 82 * the Device Interface Link . 83 * 84 * \retval NFCSTATUS_PENDING Identity Mgmt Gate Initialisation is pending. 85 * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 86 * could not be interpreted properly. 87 * \retval Other errors Errors related to the other layers 88 * 89 */ 90 extern 91 NFCSTATUS 92 phHciNfc_IDMgmt_Initialise( 93 phHciNfc_sContext_t *psHciContext, 94 void *pHwRef 95 ); 96 /** 97 * \ingroup grp_hci_nfc 98 * 99 * The phHciNfc_IDMgmt_Info_Sequence function obtains the information 100 * from the Identity Management Gate 101 * 102 * \param[in] psHciContext psHciContext is the pointer to HCI Layer 103 * context Structure. 104 * \param[in] pHwRef pHwRef is the Information of 105 * the Device Interface Link . 106 * 107 * \retval NFCSTATUS_PENDING Identity Mgmt Gate Information is pending. 108 * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 109 * could not be interpreted properly. 110 * \retval Other errors Errors related to the other layers 111 * 112 */ 113 extern 114 NFCSTATUS 115 phHciNfc_IDMgmt_Info_Sequence( 116 phHciNfc_sContext_t *psHciContext, 117 void *pHwRef 118 ); 119 120 /** 121 * \ingroup grp_hci_nfc 122 * 123 * The phHciNfc_IDMgmt_Release function closes the opened pipes between 124 * the Host Controller Device and the NFC Device. 125 * 126 * \param[in] psHciContext psHciContext is the pointer to HCI Layer 127 * context Structure. 128 * \param[in] pHwRef pHwRef is the Information of 129 * the Device Interface Link . 130 * 131 * \retval NFCSTATUS_PENDING Release of the Identity Management gate 132 * resources are pending. 133 * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 134 * could not be interpreted properly. 135 * \retval Other errors Errors related to the other layers 136 * 137 */ 138 extern 139 NFCSTATUS 140 phHciNfc_IDMgmt_Release( 141 phHciNfc_sContext_t *psHciContext, 142 void *pHwRef 143 ); 144 145 /** 146 * \ingroup grp_hci_nfc 147 * 148 * The phHciNfc_IDMgmt_Update_PipeInfo function updates the pipe_id of the Idetity 149 * Gate Managment Struction. 150 * 151 * \param[in] psHciContext psHciContext is the pointer to HCI Layer 152 * context Structure. 153 * \param[in] pipeID pipeID of the Identity management Gate 154 * \param[in] pPipeInfo Update the pipe Information of the Identity 155 * Management Gate. 156 * 157 * \retval NFCSTATUS_SUCCESS AdminGate Response received Successfully. 158 * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 159 * could not be interpreted properly. 160 * 161 */ 162 163 extern 164 NFCSTATUS 165 phHciNfc_IDMgmt_Update_PipeInfo( 166 phHciNfc_sContext_t *psHciContext, 167 uint8_t pipeID, 168 phHciNfc_Pipe_Info_t *pPipeInfo 169 ); 170 171 172 /*! 173 * \brief Updates the Sequence of Identity Managment Gate. 174 * 175 * This function Updates the Sequence of the Identity Management 176 * gate Information Structure. 177 * 178 */ 179 extern 180 NFCSTATUS 181 phHciNfc_IDMgmt_Update_Sequence( 182 phHciNfc_sContext_t *psHciContext, 183 phHciNfc_eSeqType_t reader_seq 184 ); 185 186 /*! 187 * \brief Allocates the resources of Identity Managment Gate. 188 * 189 * This function Allocates the resources of the Identity Management 190 * gate Information Structure. 191 * 192 */ 193 extern 194 NFCSTATUS 195 phHciNfc_IDMgmt_Init_Resources( 196 phHciNfc_sContext_t *psHciContext 197 ); 198 199 200 /*! 201 * \brief Get the pipe_id of Identity Managment Gate. 202 * 203 * This function Get the pipe_id of Identity Managment Gate. 204 * 205 */ 206 207 extern 208 NFCSTATUS 209 phHciNfc_IDMgmt_Get_PipeID( 210 phHciNfc_sContext_t *psHciContext, 211 uint8_t *ppipe_id 212 ); 213 214 215 216 #endif 217 218