2 * Copyright (C) 2010 NXP Semiconductors
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
18 * =========================================================================== *
21 * \file phHciNfc_PollingLoop.h *
22 * \brief HCI Header for the Polling loop Management. *
25 * Project: NFC-FRI-1.1 *
27 * $Date: Mon Mar 29 17:34:49 2010 $ *
28 * $Author: ing04880 $ *
30 * $Aliases: 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 $ *
32 * =========================================================================== *
36 #ifndef PHHCINFC_POLLINGLOOP_H
37 #define PHHCINFC_POLLINGLOOP_H
45 * File: \ref phHciNfc_PollingLoop.h
49 #define PHHCINFC_POLLINGLOOP_FILEREVISION "$Revision: 1.6 $" /**< \ingroup grp_file_attributes */
50 #define PHHCINFC_POLLINGLOOP_FILEALIASES "$Aliases: 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 */
54 ***************************** Header File Inclusion ****************************
57 #include <phHciNfc_Generic.h>
60 ****************************** Macro Definitions *******************************
62 #define PL_DURATION 0x00U
63 #define PL_RD_PHASES 0x01U
64 #define PL_DISABLE_TARGET 0x02U
68 #define PL_RD_PHASES_DISABLE 0x80U
71 ******************** Enumeration and Structure Definition **********************
74 /** \defgroup grp_hci_nfc HCI Component
81 *********************** Function Prototype Declaration *************************
85 * \ingroup grp_hci_nfc
87 * The phHciNfc_PollLoop_Initialise function Initialises the polling loop and opens the
90 * \param[in] psHciContext psHciContext is the pointer to HCI Layer
92 * \param[in] pHwRef pHwRef is the Information of
93 * the Device Interface Link .
95 * \retval NFCSTATUS_PENDING Polling loop gate Initialisation is pending.
96 * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters
97 * could not be interpreted properly.
98 * \retval Other errors Errors related to the other layers
104 phHciNfc_PollLoop_Initialise(
105 phHciNfc_sContext_t *psHciContext,
110 * \ingroup grp_hci_nfc
112 * The phHciNfc_PollLoop_Release function closes the polling loop gate pipe
113 * between the Host Controller Device and the NFC Device.
115 * \param[in] psHciContext psHciContext is the pointer to HCI Layer
117 * \param[in] pHwRef pHwRef is the Information of
118 * the Device Interface Link .
120 * \retval NFCSTATUS_PENDING Release of the Polling loop gate resources are
122 * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters
123 * could not be interpreted properly.
124 * \retval Other errors Errors related to the other layers
130 phHciNfc_PollLoop_Release(
131 phHciNfc_sContext_t *psHciContext,
137 * \ingroup grp_hci_nfc
139 * The phHciNfc_PollLoop_Update_PipeInfo function updates the pipe_id of the polling
140 * loop gate Managment Struction.
142 * \param[in] psHciContext psHciContext is the pointer to HCI Layer
144 * \param[in] pHwRef pHwRef is the Information of
145 * the Device Interface Link
146 * \param[in] cfg_type Poll configuration type
148 * \param[in] pcfg_info Poll configuration info.
150 * \retval NFCSTATUS_SUCCESS Polling loop gate Response received Successfully.
151 * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters
152 * could not be interpreted properly.
157 phHciNfc_PollLoop_Cfg (
165 * \ingroup grp_hci_nfc
167 * The phHciNfc_PollLoop_Update_PipeInfo function updates the pipe_id of the polling
168 * loop gate management structure. This function is used by the pipe management to
171 * \param[in] psHciContext psHciContext is the pointer to HCI Layer
173 * \param[in] pipeID pipeID of the polling loop gate
174 * \param[in] pPipeInfo Update the pipe Information of the polling loop
177 * \retval NFCSTATUS_SUCCESS Polling loop gate Response received Successfully.
178 * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters
179 * could not be interpreted properly.
185 phHciNfc_PollLoop_Update_PipeInfo(
186 phHciNfc_sContext_t *psHciContext,
188 phHciNfc_Pipe_Info_t *pPipeInfo
193 * \brief Allocates the resources of Polling loop Managment Gate.
195 * This function Allocates the resources of the Polling loop management
196 * gate Information Structure.
201 phHciNfc_PollLoop_Init_Resources(
202 phHciNfc_sContext_t *psHciContext
207 * \brief Get the pipe_id of Polling loop managment Gate.
209 * This function Get the pipe_id of Polling loop managment Gate.
215 phHciNfc_PollLoop_Get_PipeID(
216 phHciNfc_sContext_t *psHciContext,
220 #endif /* PHHCINFC_POLLINGLOOP_H */