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.h * 225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HCI Header for the Generic HCI Management. * 235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* * 245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* * 255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* Project: NFC-FRI-1.1 * 265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* * 275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* $Date: Mon Apr 5 14:37:06 2010 $ * 285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* $Author: ing04880 $ * 295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* $Revision: 1.39 $ * 305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* $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 $ 315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* * 325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* =========================================================================== * 335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*@{*/ 375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#ifndef PHHCINFC_H 395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define PHHCINFC_H 405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*@}*/ 425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** 435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \name HCI 445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * File: \ref phHciNfc.h 465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*@{*/ 495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define PH_HCINFC_FILEREVISION "$Revision: 1.39 $" /**< \ingroup grp_file_attributes */ 505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define PH_HCINFC_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 */ 515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*@}*/ 525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/* 545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly################################################################################ 555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly***************************** Header File Inclusion **************************** 565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly################################################################################ 575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#include <phNfcStatus.h> 605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#include <phNfcInterface.h> 615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#ifdef ANDROID 625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#include <string.h> 635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#endif 645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/* 665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly################################################################################ 675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly****************************** Macro Definitions ******************************* 685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly################################################################################ 695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/* 735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly################################################################################ 745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly******************** Enumeration and Structure Definition ********************** 755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly################################################################################ 765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef enum phHciNfc_Init 795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly HCI_SESSION = 0x00, 816dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren HCI_NFC_DEVICE_TEST, 826dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren HCI_CUSTOM_INIT, 836dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren HCI_SELF_TEST 845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHciNfc_Init_t; 855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_hci 875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \if hal 895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief HCI Tag Exchange Information 905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \else 915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief HCI-Specific 925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \endif 935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The <em> Tag Exchange Info Structure </em> holds the exchange information to 955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the connected tag . 965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \note All members of this structure are in parameters [in]. 985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 1005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHciNfc_Tag_XchgInfo 1025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 1035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /** \internal RF Reader Command Type */ 1045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t cmd_type; 1055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /** \internal Address Field required for only Mifare 1065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * Family Proprietary Cards. 1075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The Address Size is Valid only upto 255 Blocks limit 1085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * i:e for Mifare 4K 1095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 1105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t addr; 1115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHciNfc_Tag_XchgInfo_t; 1125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_hci 1145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \if hal 1165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief HCI NFC-IP Exchange Information 1175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \else 1185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief HCI-Specific 1195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \endif 1205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The <em> NFC-IP Exchange Info Structure </em> holds the exchange information to 1225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the connected NFC-IP target . 1235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \note All members of this structure are in parameters [in]. 1255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 1275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHciNfc_NfcIP_XchgInfo 1295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 1305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /** \internal NFC-IP DEP Meta Chining Information */ 1315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t more_info; 1325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHciNfc_NfcIP_XchgInfo_t; 1345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_hci 1365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \if hal 1385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief HCI Target Exchange Information 1395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \else 1405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief HCI-Specific 1415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \endif 1425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The <em> Target Exchange Info Structure </em> holds all the exchange information to 1445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the connected target . 1455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \note All members of this structure are in parameters [in]. 1475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 1495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHciNfc_XchgInfo 1525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 1535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /** \internal Exchange Data/NFC-IP DEP 1545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * Exchange Buffer */ 1555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t *tx_buffer; 1565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /** \internal Exchange Data/NFC-IP DEP 1575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * Exchange Buffer Length*/ 1585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint16_t tx_length; 1595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly union 1615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly { 1625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHciNfc_Tag_XchgInfo_t tag_info; 1635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHciNfc_NfcIP_XchgInfo_t nfc_info; 1645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly }params; 1655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHciNfc_XchgInfo_t; 1675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/* 1715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly################################################################################ 1725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*********************** Function Prototype Declaration ************************* 1735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly################################################################################ 1745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 1755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** 1775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hci_nfc 1785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The phHciNfc_Initialise function initialises the HCI context and all other 1805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * resources used in the HCI Layer for the corresponding interface link. 1815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in,out] psHciHandle psHciHandle is the handle or the context 1835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * of the HCI Layer. 1845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHwRef pHwRef is the Information of 1855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Device Interface Link . 1865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] init_mode init_mode specifies the kind of the 1875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * Initialisation for the HCI layer . 1885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHwConfig pHwConfig is the Information required 1895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * to configure the parameters of the 1905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * NFC Device . 1915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHalNotify Upper layer Notification function 1925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * pointer. 1935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psContext psContext is the context of 1945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Upper Layer. 1955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psHciLayerCfg Pointer to the HCI Layer configuration 1965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * Structure. 1975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_PENDING Initialisation of HCI Layer is in Progress. 1995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 2005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * could not be interpreted properly. 2015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval Other errors Errors related to the other layers 2025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 2045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly extern 2065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFCSTATUS 2075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHciNfc_Initialise ( 2085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 2095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef, 2105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHciNfc_Init_t init_mode, 2115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sHwConfig_t *pHwConfig, 2125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly pphNfcIF_Notification_CB_t pHalNotify, 2135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psContext, 2145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phNfcLayer_sCfg_t *psHciLayerCfg 2155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 2165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** 2185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hci_nfc 2195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The phHciNfc_Release function releases all the resources used in the HCI 2215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * Layer for the corresponding interface link, described by the HCI handle. 2225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psHciHandle psHciHandle is the handle or the context 2245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * of the HCI Layer. 2255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHwRef pHwRef is the Information of 2265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Device Interface Link . 2275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHalReleaseCB Upper layer release callback function 2285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * pointer . 2295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psContext psContext is the context of 2305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Upper Layer. 2315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_PENDING Releasing of HCI Resources are in Progress. 2335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 2345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * could not be interpreted properly. 2355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval Other errors Errors related to the other layers 2365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 2385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly extern 2405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFCSTATUS 2415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHciNfc_Release ( 2425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 2435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef, 2445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly pphNfcIF_Notification_CB_t pHalReleaseCB, 2455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psContext 2465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 2475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellyextern 2505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyNFCSTATUS 2515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyphHciNfc_Config_Discovery ( 2525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 2535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef, 2545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sADD_Cfg_t *pPollConfig 2555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 2565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** 2595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hci_nfc 2605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The phHciNfc_Restart_Discovery function restarts the Polling Wheel. 2625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psHciHandle psHciHandle is the handle or the context 2645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * of the HCI Layer. 2655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHwRef pHwRef is the Information of 2665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Device Interface Link . 2676dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren * \param[in] discovery_type If True: Start re-polling of the target 2685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * after the Target Device is de-activated 2695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * or else - continue discovery with next 2705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * technology. 2715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_PENDING The Discovery Wheel retarted. 2725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 2735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * could not be interpreted properly. 2745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval Other errors Errors related to the other layers 2755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 2775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly extern 2795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFCSTATUS 2805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHciNfc_Restart_Discovery ( 2815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 2825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef, 2836dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren uint8_t discovery_type 2845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 2855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /** 2885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hci_nfc 2895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The phHciNfc_Start_Discovery function Starts the Polling Wheel. 2915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psHciHandle psHciHandle is the handle or the context 2935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * of the HCI Layer. 2945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHwRef pHwRef is the Information of 2955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Device Interface Link . 2965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_PENDING The Discovery Wheel Started. 2975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 2985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * could not be interpreted properly. 2995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval Other errors Errors related to the other layers 3005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 3015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 3025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly extern 3045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFCSTATUS 3055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHciNfc_Start_Discovery ( 3065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 3075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef 3085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 3095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /** 3125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hci_nfc 3135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 3145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The phHciNfc_Stop_Discovery function Stops the Polling Wheel. 3155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 3165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psHciHandle psHciHandle is the handle or the context 3175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * of the HCI Layer. 3185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHwRef pHwRef is the Information of 3195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Device Interface Link . 3205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_PENDING The Discovery Wheel Stopped. 3215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 3225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * could not be interpreted properly. 3235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval Other errors Errors related to the other layers 3245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 3255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 3265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly extern 3285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFCSTATUS 3295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHciNfc_Stop_Discovery ( 3305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 3315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef 3325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 3335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /** 3365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hci_nfc 3375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 3385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The phHciNfc_Configure function Configures Configures the Polling Wheel to 3395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * select the kind of Tags to be polled. This also allows to enable/disable 3405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Tag Emulation. This also configures the Secure elements the UICC, WI and 3415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * Target to Emulate the Tag or Target. 3425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 3435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 3445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psHciHandle psHciHandle is the handle or the context 3455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * of the HCI Layer. 3465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHwRef pHwRef is the Information of 3475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Device Interface Link . 3485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] config_type config_type specifies the type of the 3495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * Parameter configuration. 3505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pConfig pConfig is the Information for 3515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * Configuring the Device. 3525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_PENDING The Emulation configuration pending. 3535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 3545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * could not be interpreted properly. 3555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval Other errors Errors related to the other layers 3565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 3575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 3585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly extern 3605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFCSTATUS 3615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHciNfc_Configure ( 3625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 3635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef, 3645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_eConfigType_t config_type, 3655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_uConfig_t *pConfig 3665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 3675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /** 3695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hci_nfc 3705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 3715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The phHciNfc_Switch_SmxMode function Switches the WI(S2C) interface 3725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * from Wired/Virtual to vice versa. 3735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 3745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 3755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psHciHandle psHciHandle is the handle or the context 3765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * of the HCI Layer. 3775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHwRef pHwRef is the Information of 3785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Device Interface Link . 3795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] smx_mode smx_mode specifies the type of the switch 3805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * configuration. 3815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pPollConfig pPollConfig is the Information for 3825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * polling the SmartMX Device. 3835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_PENDING The SmartMX Mode Switch pending. 3845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 3855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * could not be interpreted properly. 3865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval Other errors Errors related to the other layers 3875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 3885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 3895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFCSTATUS 3915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHciNfc_Switch_SmxMode ( 3925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 3935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef, 3945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_eSmartMX_Mode_t smx_mode, 3955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sADD_Cfg_t *pPollConfig 3965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 3975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /** 4005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hci_nfc 4015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 4025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The phHciNfc_Switch_SwpMode function Switches the SWP Link 4035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * from On/Off to vice versa. 4045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 4055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 4065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psHciHandle psHciHandle is the handle or the context 4075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * of the HCI Layer. 4085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHwRef pHwRef is the Information of 4095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Device Interface Link . 4105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] swp_mode swp_mode specifies to switch on/off the 4115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * SWP Link. 4125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_PENDING The SWP Mode Switch pending. 4135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 4145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * could not be interpreted properly. 4155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval Other errors Errors related to the other layers 4165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 4175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 4185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFCSTATUS 4205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHciNfc_Switch_SwpMode ( 4215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 4225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef, 4235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_eSWP_Mode_t swp_mode /* , 4245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pSwpCfg */ 4255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 4265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** 4305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hci_nfc 4315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 4325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The phHciNfc_Connect function selects the discovered target to 4335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * perform the transactions on it. 4345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 4355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 4365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psHciHandle psHciHandle is the handle or the context 4375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * of the HCI Layer. 4385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHwRef pHwRef is the Information of 4395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Device Interface Link . 4405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] p_remote_dev_info p_remote_dev_info is the information 4415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * of the Target Device to be connected . 4425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_PENDING To select the remote target pending. 4435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 4445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * could not be interpreted properly. 4455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval Other errors Errors related to the other layers 4465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 4475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 4485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly extern 4505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFCSTATUS 4515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHciNfc_Connect ( 4525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 4535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef, 4545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sRemoteDevInformation_t *p_remote_dev_info 4555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 4565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** 4595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hci_nfc 4605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 4615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The phHciNfc_Reactiavte function reactivates the discovered target to 4625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * and selects that target perform the transactions on it. 4635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 4645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 4655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psHciHandle psHciHandle is the handle or the context 4665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * of the HCI Layer. 4675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHwRef pHwRef is the Information of 4685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Device Interface Link . 4695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] p_remote_dev_info p_remote_dev_info is the information 4705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * of the Target Device to be reactivated . 4715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_PENDING To reactivate the remote target pending. 4725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 4735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * could not be interpreted properly. 4745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval Other errors Errors related to the other layers 4755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 4765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 4775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly extern 4805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFCSTATUS 4815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHciNfc_Reactivate ( 4825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 4835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef, 4845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sRemoteDevInformation_t *p_target_info 4855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 4865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** 4895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hci_nfc 4905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 4915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The phHciNfc_Disconnect function de-selects the selected target and 4925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * any ongoing transactions . 4935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 4945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 4955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psHciHandle psHciHandle is the handle or the context 4965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * of the HCI Layer. 4975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHwRef pHwRef is the Information of 4985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Device Interface Link . 4996dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren * \param[in] discovery_type If NFC_RF_DISCOVERY_REPOLL: Start re-polling of 5006dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren * the target after the Target Device is 5016dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren * de-activatedor if NFC_RF_DISCOVERY_CONTINUE - 5026dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren * continue discovery with next technology or 5036dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren * stop the discovery wheel. 5045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_PENDING To De-select the remote target pending. 5065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 5075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * could not be interpreted properly. 5085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval Other errors Errors related to the other layers 5095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 5115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly extern 5135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFCSTATUS 5145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHciNfc_Disconnect ( 5155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 5165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef, 5176dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren uint8_t discovery_type 5185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 5195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** 5225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hci_nfc 5235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The phHciNfc_Presence_Check function checks for the presence of the target 5255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * selected in the vicinity of the Reader's RF Field . 5265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psHciHandle psHciHandle is the handle or the context 5295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * of the HCI Layer. 5305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHwRef pHwRef is the Information of 5315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Device Interface Link . 5325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_PENDING Presence Check of the remote target 5335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * pending. 5345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 5355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * could not be interpreted properly. 5365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval Other errors Errors related to the other layers 5375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 5395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellyextern 5415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyNFCSTATUS 5425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyphHciNfc_Presence_Check ( 5435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 5445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef 5455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 5465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** 5495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hci_nfc 5505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The phHciNfc_Select_Next_Target function selects and activates the 5525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * next target present in the the Reader's RF Field . 5535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psHciHandle psHciHandle is the handle or the 5565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * context of the HCI Layer. 5575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHwRef pHwRef is the Information of 5585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Device Interface Link . 5595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_PENDING selection and activation of the next 5605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * remote target pending. 5615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 5625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * could not be interpreted properly. 5635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval Other errors Errors related to the other layers 5645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 5665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellyextern 5685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyNFCSTATUS 5695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyphHciNfc_Select_Next_Target ( 5705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 5715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef 5725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 5735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /** 5765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hci_nfc 5775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The phHciNfc_Exchange_Data function exchanges the data 5795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * to/from the selected remote target device. 5805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psHciHandle psHciHandle is the handle or the context 5835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * of the HCI Layer. 5845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHwRef pHwRef is the Information of 5855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Device Interface Link . 5865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] p_remote_dev_info p_remote_dev_info is the information of the 5875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * selected target to which data 5885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * should be sent. 5895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] p_xchg_info The exchange info contains the command type, 5905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * addr and data to be sent to the connected 5915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * remote target device. 5925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_PENDING Data to remote target pending. 5935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 5945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * could not be interpreted properly. 5955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval Other errors Errors related to the other layers 5965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 5985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly extern 6005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFCSTATUS 6015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHciNfc_Exchange_Data ( 6025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 6035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef, 6045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sRemoteDevInformation_t *p_remote_dev_info, 6055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHciNfc_XchgInfo_t *p_xchg_info 6065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 6075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /** 6095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hci_nfc 6105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 6115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The phHciNfc_Send_Data function Sends the data provided 6125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * to the appropriate remote target device. 6135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 6145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 6155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psHciHandle psHciHandle is the handle or the context 6165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * of the HCI Layer. 6175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHwRef pHwRef is the Information of 6185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Device Interface Link . 6195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] p_remote_dev_info p_remote_dev_info is the information 6205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * of the selected target to which data 6215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * should be sent. 6225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] p_send_param The send param contains the 6235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * data to be sent to the 6245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * remote device. 6255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_PENDING Data to remote device pending. 6265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 6275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * could not be interpreted properly. 6285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval Other errors Errors related to the other layers 6295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 6305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 6315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly extern 6335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFCSTATUS 6345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHciNfc_Send_Data ( 6355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 6365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef, 6375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sRemoteDevInformation_t *p_remote_dev_info, 6385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHciNfc_XchgInfo_t *p_send_param 6395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 6405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /** 6425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hci_nfc 6435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 6445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The phHciNfc_System_Test function performs the System Management Tests 6455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * provided by the NFC Peripheral device. 6465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 6475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psContext psContext is the pointer to HCI Layer 6485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * context Structure. 6495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHwRef pHwRef is the Information of 6505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Device Interface Link . 6515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] test_type test_type is the type of the Self Test 6525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * that needs to be performed on the device. 6535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] test_param test_param is the parameter for the Self Test 6545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * that needs to be performed on the device. 6555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 6565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 6575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_PENDING System Test on the System Management 6585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * is pending. 6595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 6605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * could not be interpreted properly. 6615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval Other errors Errors related to the other layers 6625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 6635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 6645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellyextern 6665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyNFCSTATUS 6675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyphHciNfc_System_Test( 6685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psContext, 6695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef, 6705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint32_t test_type, 6715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phNfc_sData_t *test_param 6725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 6735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /** 6755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hci_nfc 6765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 6775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The phHciNfc_System_Configure function performs the System Management 6785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * Configuration with the value provided. 6795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 6805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psContext psContext is the pointer to HCI Layer 6815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * context Structure. 6825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHwRef pHwRef is the Information of 6835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Device Interface Link . 6845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] config_type config_type is the type of the configuration 6855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * that needs to be performed on the device. 6865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] config_value config_value is the value for the configuring 6875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * that needs to be performed on the device. 6885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 6895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 6905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_PENDING Configuration of the provided information to 6915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the is pending. 6925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 6935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * could not be interpreted properly. 6945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval Other errors Errors related to the other layers 6955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 6965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 6975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellyextern 6985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyNFCSTATUS 6995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyphHciNfc_System_Configure ( 7005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 7015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef, 7025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint32_t config_type, 7035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t config_value 7045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 7055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 7065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /** 7075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hci_nfc 7085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 7095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The phHciNfc_System_Get_Info function obtains the System Management 7105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * information from the address provided. 7115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 7125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] psContext psContext is the pointer to HCI Layer 7135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * context Structure. 7145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] pHwRef pHwRef is the Information of 7155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the Device Interface Link . 7165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in] info_type info_type is the type of the Information 7175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * that needs to be obtained from the device. 7185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \param[in,out] p_val p_val is the pointer to which the 7195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * information need to be updated. 7205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 7215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 7225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_PENDING Get information from the NFC Device 7235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * is pending. 7245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval NFCSTATUS_INVALID_PARAMETER One or more of the supplied parameters 7255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * could not be interpreted properly. 7265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \retval Other errors Errors related to the other layers 7275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 7285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 7295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellyextern 7305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyNFCSTATUS 7315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyphHciNfc_System_Get_Info( 7325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 7335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef, 7345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint32_t info_type, 7355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t *p_val 7365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 7375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 7385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellyextern 7395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyNFCSTATUS 7405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick PellyphHciNfc_PRBS_Test ( 7415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 7425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef, 7435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint32_t test_type, 7445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phNfc_sData_t *test_param 7455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 7465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 7475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#if 0 7485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly extern 7495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFCSTATUS 7505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHciNfc_Receive_Data ( 7515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *psHciHandle, 7525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *pHwRef, 7535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t *p_data, 7545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t length 7555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ); 7565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 7575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#endif 7585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 7595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 7605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#endif 7615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 762