15d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*
25d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * Copyright (C) 2010 NXP Semiconductors
35d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly *
45d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * Licensed under the Apache License, Version 2.0 (the "License");
55d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * you may not use this file except in compliance with the License.
65d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * You may obtain a copy of the License at
75d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly *
85d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly *      http://www.apache.org/licenses/LICENSE-2.0
95d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly *
105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * Unless required by applicable law or agreed to in writing, software
115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * distributed under the License is distributed on an "AS IS" BASIS,
125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * See the License for the specific language governing permissions and
145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * limitations under the License.
155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */
165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*!
185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* =========================================================================== *
195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                                                             *
205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                                                             *
215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \file  phHciNfc_CE_A.h                                             *
225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HCI card emulation management routines.                              *
235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                                                             *
245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                                                             *
255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* Project: NFC-FRI-1.1                                                        *
265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                                                             *
275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* $Date: Fri Aug 14 17:01:27 2009 $                                           *
285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* $Author: ing04880 $                                                         *
295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* $Revision: 1.5 $                                                            *
305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* $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 $                                                                *
315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                                                             *
325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* =========================================================================== *
335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/
345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#ifndef PHHCINFC_CE_A_H
375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define PHHCINFC_CE_A_H
385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*@}*/
405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/**
435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \name HCI
445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* File: \ref phHciNfc_CE_A.h
465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/
485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*@{*/
495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define PHHCINFC_CE_A_FILEREVISION "$Revision: 1.5 $" /**< \ingroup grp_file_attributes */
505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define PHHCINFC_CE_A_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 */
515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*@}*/
525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*
545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly***************************** Header File Inclusion ****************************
555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/
565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#include <phHciNfc_Generic.h>
585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*
605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly****************************** Macro Definitions *******************************
615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/
625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define HOST_CE_A_MODE_INDEX                (0x01U)
645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define HOST_CE_A_UID_REG_INDEX             (0x02U)
655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define HOST_CE_A_SAK_INDEX                 (0x03U)
665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define HOST_CE_A_ATQA_INDEX                (0x04U)
675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define HOST_CE_A_APP_DATA_INDEX            (0x05U)
685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define HOST_CE_A_FWI_SFGT_INDEX            (0x06U)
695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define HOST_CE_A_CID_INDEX                 (0x07U)
705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define HOST_CE_A_CLT_INDEX                 (0x08U)
715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define HOST_CE_A_DATA_RATE_INDEX           (0x09U)
725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*
755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly******************** Enumeration and Structure Definition **********************
765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/
775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/* Sequence list */
795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef enum phHciNfc_CE_A_Seq{
805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly    HOST_CE_A_INVALID_SEQ,
815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly    HOST_CE_A_PIPE_OPEN,
825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly    HOST_CE_A_SAK_SEQ,
835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly    HOST_CE_A_ATQA_SEQ,
845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly    HOST_CE_A_ENABLE_SEQ,
855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly    HOST_CE_A_DISABLE_SEQ,
865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly    HOST_CE_A_PIPE_CLOSE,
875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly    HOST_CE_A_PIPE_DELETE
885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHciNfc_CE_A_Seq_t;
895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/* Information structure for the card emulation A Gate */
915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHciNfc_CE_A_Info{
925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly    phHciNfc_CE_A_Seq_t         current_seq;
945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly    phHciNfc_CE_A_Seq_t         next_seq;
955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly    /* Pointer to the card emulation A pipe information */
965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly    phHciNfc_Pipe_Info_t        *p_pipe_info;
975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly    uint8_t                     pipe_id;
985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly} phHciNfc_CE_A_Info_t;
1005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
1015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*
1025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*********************** Function Prototype Declaration *************************
1035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/
1045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
1055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*!
1065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief Allocates the resources of card emulation A management gate.
1075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly *
1085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * This function Allocates the resources of the card emulation A management
1095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * gate Information Structure.
1105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly *
1115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */
1125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellyextern
1135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyNFCSTATUS
1145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyphHciNfc_CE_A_Init_Resources(
1155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                                phHciNfc_sContext_t     *psHciContext
1165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                         );
1175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
1185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/**
1195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \ingroup grp_hci_nfc
1205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
1215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*   The phHciNfc_CE_A_Get_PipeID function gives the pipe id of the card
1225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*   emulation A gate
1235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
1245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*   \param[in]  psHciContext            psHciContext is the pointer to HCI Layer
1255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                       context Structure.
1265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*   \param[in]  pHwRef                  pHwRef is the Information of
1275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                       the Device Interface Link
1285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
1295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*   \retval NFCSTATUS_SUCCESS           Function execution is successful.
1305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*   \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters
1315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                       could not be interpreted properly.
1325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
1335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/
1345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellyextern
1355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyNFCSTATUS
1365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyphHciNfc_CE_A_Get_PipeID(
1375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                            phHciNfc_sContext_t     *psHciContext,
1385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                            uint8_t                 *ppipe_id
1395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                            );
1405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
1415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/**
1425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \ingroup grp_hci_nfc
1435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
1445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  The phHciNfc_CE_A_Update_PipeInfo function updates the pipe_id of the card
1455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  emulation A gate management Structure.
1465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
1475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \param[in]  psHciContext            psHciContext is the pointer to HCI Layer
1485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                      context Structure.
1495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \param[in]  pipeID                  pipeID of the card emulation A gate
1505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \param[in]  pPipeInfo               Update the pipe Information of the reader
1515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                      A gate
1525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
1535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \retval NFCSTATUS_SUCCESS           Function execution is successful.
1545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters
1555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                      could not be interpreted properly.
1565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
1575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/
1585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
1595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellyextern
1605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyNFCSTATUS
1615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyphHciNfc_CE_A_Update_PipeInfo(
1625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                                  phHciNfc_sContext_t     *psHciContext,
1635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                                  uint8_t                 pipeID,
1645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                                  phHciNfc_Pipe_Info_t    *pPipeInfo
1655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                                  );
1665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
1675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/**
1685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \ingroup grp_hci_nfc
1695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
1705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  The phHciNfc_CE_A_SendData_Event function sends data to the lo
1715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
1725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \param[in]  psHciContext            psHciContext is the pointer to HCI Layer
1735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                      context Structure.
1745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \param[in]  pHwRef                  pHwRef is the Information of
1755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                      the Device Interface Link
1765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \param[in]  pipeID                  pipeID of the card emulation A gate
1775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \param[in]  pPipeInfo               Update the pipe Information of the reader
1785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                      A gate
1795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
1805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \retval NFCSTATUS_SUCCESS           Function execution is successful.
1815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters
1825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                      could not be interpreted properly.
1835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
1845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/
1855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#ifdef CE_A_SEND_EVENT
1865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellyextern
1875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyNFCSTATUS
1885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyphHciNfc_CE_A_SendData_Event(
1895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                             void               *psContext,
1905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                             void               *pHwRef,
1915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                             uint8_t            *pEvent,
1925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                             uint8_t            length
1935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                       );
1945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#endif /* #ifdef CE_A_SEND_EVENT */
1955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
1965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/**
1975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \ingroup grp_hci_nfc
1985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
1995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  The phHciNfc_CE_A_Mode function sends data to the set the card emulation mode
2005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
2015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \param[in]  psHciContext            psHciContext is the pointer to HCI Layer
2025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                      context Structure.
2035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \param[in]  pHwRef                  pHwRef is the Information of
2045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                      the Device Interface Link
2055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \param[in]  enable_type             type to enable
2065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
2075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \retval NFCSTATUS_SUCCESS           Function execution is successful.
2085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters
2095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                      could not be interpreted properly.
2105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
2115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/
2125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellyextern
2135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyNFCSTATUS
2145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyphHciNfc_CE_A_Mode(
2155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                            void        *psHciHandle,
2165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                            void        *pHwRef,
2175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                            uint8_t     enable_type
2185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                  );
2195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
2205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/**
2215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \ingroup grp_hci_nfc
2225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
2235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  The phHciNfc_CE_A_Initialise function opens the CE A and set all the
2245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*   required parameters for CE A
2255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
2265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \param[in]  psHciContext            psHciContext is the pointer to HCI Layer
2275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                      context Structure.
2285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \param[in]  pHwRef                  pHwRef is the Information of
2295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                      the Device Interface Link
2305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
2315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \retval NFCSTATUS_SUCCESS           Function execution is successful.
2325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters
2335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                      could not be interpreted properly.
2345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
2355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/
2365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellyextern
2375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyNFCSTATUS
2385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyphHciNfc_CE_A_Initialise(
2395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                        phHciNfc_sContext_t     *psHciContext,
2405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                        void                    *pHwRef
2415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                        );
2425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
2435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/**
2445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \ingroup grp_hci_nfc
2455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
2465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  The phHciNfc_CE_A_Initialise function close the CE A and reset all the
2475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*   required parameters to default value of CE A
2485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
2495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \param[in]  psHciContext            psHciContext is the pointer to HCI Layer
2505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                      context Structure.
2515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \param[in]  pHwRef                  pHwRef is the Information of
2525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                      the Device Interface Link
2535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
2545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \retval NFCSTATUS_SUCCESS           Function execution is successful.
2555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters
2565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                      could not be interpreted properly.
2575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
2585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/
2595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellyextern
2605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyNFCSTATUS
2615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyphHciNfc_CE_A_Release(
2625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                        phHciNfc_sContext_t     *psHciContext,
2635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                        void                    *pHwRef
2645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                        );
2655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
2665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
2675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/**
2685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \ingroup grp_hci_nfc
2695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
2705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  The phHciNfc_CE_A_Update_Seq function to update CE A sequence depending on the
2715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  specified \ref seq_type
2725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
2735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \param[in]  psHciContext             psHciContext is the pointer to HCI Layer
2745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                       context Structure.
2755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \param[in]  seq_type                 sequence type specified in
2765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                       \ref phHciNfc_eSeqType_t
2775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
2785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \retval NFCSTATUS_SUCCESS           Function execution is successful.
2795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*  \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters
2805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*                                      could not be interpreted properly.
2815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*
2825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/
2835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellyextern
2845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyNFCSTATUS
2855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyphHciNfc_CE_A_Update_Seq(
2865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                        phHciNfc_sContext_t     *psHciContext,
2875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                        phHciNfc_eSeqType_t     seq_type
2885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly                    );
2895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#endif /* PHHCINFC_CE_A_H */
2905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
2915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly
292