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 * \file phNfcHalTypes.h 195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief Structure declarations/type definitions belonging to the HAL subsystem. 205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * Project: NFC MW / HAL 225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * $Date: Thu Apr 8 17:11:39 2010 $ 245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * $Author: ing04880 $ 255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * $Revision: 1.106 $ 265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * $Aliases: NFC_FRI1.1_WK1007_SDK,NFC_FRI1.1_WK1017_PREP1,NFC_FRI1.1_WK1017_R34_1,NFC_FRI1.1_WK1017_R34_2,NFC_FRI1.1_WK1023_R35_1 $ 275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#ifndef PHNFCHALTYPES_H /* */ 325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define PHNFCHALTYPES_H /* */ 335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** 355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \name HAL Types 365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * File: \ref phNfcHalTypes.h 385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*@{*/ 425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define PHNFCHALTYPES_FILEREVISION "$Revision: 1.106 $" /**< \ingroup grp_file_attributes */ 435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define PHNFCHALTYPES_FILEALIASES "$Aliases: NFC_FRI1.1_WK1007_SDK,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 */ 445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*@}*/ 455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#include <phNfcTypes.h> 475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#include <phNfcCompId.h> 485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#include <phNfcConfig.h> 495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 506dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren#ifndef NXP_HAL_MEM_INFO_SIZE 516dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren#define NXP_HAL_MEM_INFO_SIZE 0x01U 526dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren#endif 536dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren 546dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren#if (NXP_HAL_MEM_INFO_SIZE > 0x01) 556dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren#define NXP_FW_UPLOAD_PROGRESS 0x965AU 566dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren#define NXP_FW_UPLOAD_SUCCESS 0x0000U 576dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren#else 586dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren#define NXP_FW_UPLOAD_PROGRESS 0x5AU 596dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren#define NXP_FW_UPLOAD_SUCCESS 0x00U 606dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren#endif 616dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren 626dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren 636dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behrentypedef struct phHal_sMemInfo 646dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren{ 656dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren uint16_t fw_magic; 666dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren uint16_t fw_rfu; 676dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren uint32_t hal_version; 686dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren}phHal_sMemInfo_t; 696dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren 705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \if hal 745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief Protocol Support Information 755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \else 765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief HAL-Specific 775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \endif 785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The <em> Supported Protocols Structure </em> holds all protocol supported by the current NFC 805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * device. 815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \note All members of this structure are output parameters [out]. 835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_sSupProtocol_t phHal_sSupProtocol_t; 865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \if hal 925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief Information related to the NFC Device 935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \else 945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief HAL-Specific 955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \endif 965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The <em> Device Information Structure </em> holds information 985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * related to the NFC IC read during initialization time. 995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * It allows the caller firware, hardware version, the model id, 1005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * HCI verison supported and vendor name. Refer to the NFC Device 1015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * User Manual on how to interpret each of the values. In addition 1025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * it also contains capabilities of the NFC Device such as the 1035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * protocols supported in Reader and emulation mode 1045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 1065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_sDeviceCapabilities_t phHal_sDeviceCapabilities_t; 1085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** 1115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hal_common 1125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \if hal 1145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief Hardware Reference - The Peripheral Representation 1155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \else 1165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief HAL-Specific 1175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \endif 1185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The Hardware Reference structure is filled as part of the open function and 1205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * contains information regarding connected peripheral NFC device. It also 1215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * stores the refernce to the communication driver passed by the HAL client 1225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * for usage during communication with the NFC Device 1235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \note The caller can consider this structure atomic, no interpretation is required 1255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * for HAL operation. 1265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \sa phHal4Nfc_Open . 1285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 1305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** 1325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \ingroup grp_hal_common 1335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief Hardware Reference - The Peripheral Representation 1355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The Hardware Reference structure is filled as part of the open function and 1375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * contains information regarding connected peripheral NFC device. It also 1385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * stores the refernce to the communication driver passed by the HAL client 1395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * for usage during communication with the NFC Device 1405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \note The caller can consider this structure atomic, no interpretation is required 1425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * for HAL operation. 1435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 1455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHal_sHwReference 1465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 1475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /**< Will be usable/valid after the Open function. */ 1485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *p_board_driver; 1495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /**< Session Identifier for the established session */ 1505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t session_id[SESSIONID_SIZE]; 1515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /**< SMX Connected TRUE/FALSE */ 1525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t smx_connected; 1535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /**< UICC Connected TRUE/FALSE */ 1545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t uicc_connected; 1555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /**< UICC Reader Mode is Active TRUE/FALSE */ 1565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t uicc_rdr_active; 1575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /**< Device information. */ 1585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phNfc_sDeviceCapabilities_t device_info; 1595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /**< Context of the HAL Layer */ 1605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *hal_context; 1615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /**< Context of the DAL Layer */ 1625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly void *dal_context; 1635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly} phHal_sHwReference_t; 1645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 1675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \if hal 1695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief Hardware configuration - Configuration Parameters for the NFC Device 1705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \else 1715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief HAL-Specific 1725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \endif 1735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The parameters used to configure the device during the initialisation. 1755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * This structure is used internally by the HAL implementation and is filled 1765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * up based on various configuration parameters from the config file 1775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \note None. 1785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 1795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 1805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHal_sHwConfig 1825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 1835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t session_id[SESSIONID_SIZE]; /**< Session Identifier for 1855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly the established session */ 1865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t clk_req; /**< Clock Request Setting */ 1885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t input_clk; /**< Input Clock Setting */ 1905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly} phHal_sHwConfig_t; 1925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/ 1965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 1975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/* This data structure is not used anymore and will be removed in subsequent 1985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly release */ 1995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHal_sDepFlags 2005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 2015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly unsigned int MetaChaining : 1; 2025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly unsigned int NADPresent : 1; 2035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly} phHal_sDepFlags_t; 2045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/* This data structure is not used anymore and will be removed in subsequent 2065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly release */ 2075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHal_sDepAdditionalInfo 2095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 2105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sDepFlags_t DepFlags; 2115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t NAD; 2125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly} phHal_sDepAdditionalInfo_t; 2135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/ 2165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 2205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \if hal 2225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief Enumerated MIFARE Commands 2235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \else 2245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief HAL-Specific 2255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \endif 2265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The <em> Mifare Command List Enumerator </em> lists all available Mifare native commands. 2285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \note None. 2305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 2325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_eMifareCmdList_t phHal_eMifareCmdList_t; 2345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eMifareRaw phNfc_eMifareRaw 2365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eMifareAuthentA phNfc_eMifareAuthentA 2375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eMifareAuthentB phNfc_eMifareAuthentB 2385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eMifareRead16 phNfc_eMifareRead16 2395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eMifareRead phNfc_eMifareRead 2405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eMifareWrite16 phNfc_eMifareWrite16 2415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eMifareWrite4 phNfc_eMifareWrite4 2425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eMifareInc phNfc_eMifareInc 2435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eMifareDec phNfc_eMifareDec 2445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eMifareTransfer phNfc_eMifareTransfer 2455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eMifareRestore phNfc_eMifareRestore 2465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eMifareReadSector phNfc_eMifareReadSector 2475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eMifareWriteSector phNfc_eMifareWriteSector 2485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eMifareInvalidCmd phNfc_eMifareInvalidCmd 2495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 2525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The <em> T=Cl Command List Enumerator </em> lists all available T=Cl Commands. 2545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \note None. 2565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 2585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_eIso14443_4_CmdList_t phHal_eIso14443_4_CmdList_t; 2595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eIso14443_4_Raw phNfc_eIso14443_4_Raw 2615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 2645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The <em> NFCIP1 Command List Enumerator </em> lists all available NFCIP1 Commands. 2665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \note None. 2685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 2705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_eNfcIP1CmdList_t phHal_eNfcIP1CmdList_t; 2715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eNfcIP1_Raw phNfc_eNfcIP1_Raw 2735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 2765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The <em> ISO15693 Command List Enumerator </em> lists all available ISO15693 Commands. 2785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \note None. 2805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 2825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_eIso15693_CmdList_t phHal_eIso15693_CmdList_t; 2845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#if 0 2865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eIso15693_Raw phNfc_eIso15693_Raw 2875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#endif 2885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eIso15693_Cmd phNfc_eIso15693_Cmd 2895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eIso15693_Invalid phNfc_eIso15693_Invalid 2905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 2925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The <em> Felica Command List Enumerator </em> lists all available Felica Commands. 2945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \note None. 2965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 2975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 2985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 2995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef enum phHal_eFelicaCmdList 3005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 3015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_eFelica_Raw = 0xF0U, /**< Felica Raw command:\n 3025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly - This command sends the data buffer directly 3035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly to the remote device */ 3045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_eFelica_Check = 0x00, /**< Felica Check command:\n 3055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly - This command checks the data from the Felica 3065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly remote device */ 3075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_eFelica_Update = 0x01, /**< Felica Update command:\n 3085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly - This command updates the data onto the Felica 3095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly remote device */ 3105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_eFelica_Invalid = 0xFFU /**< Invalid Command */ 3115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly} phHal_eFelicaCmdList_t; 3125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef enum phHal_eJewelCmdList 3155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 3165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_eJewel_Raw = 0x00U, /**< Jewel command:\n 3175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly - This command sends the data buffer directly 3185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly to the remote device */ 3195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_eJewel_Invalid = 0xFFU /**< Invalid jewel command */ 3205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHal_eJewelCmdList_t; 3215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_nfci 3255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 3265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 3275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Remote Device Reader A RF Gate Information Container 3285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 3295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 3305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 3315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 3325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> Reader A structure </em> includes the available information 3335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* related to the discovered ISO14443A remote device. This information 3345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* is updated for every device discovery. 3355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 3365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 3375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 3385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_sIso14443AInfo_t phHal_sIso14443AInfo_t; 3395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_nfci 3415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 3425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 3435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Remote Device Reader B RF Gate Information Container 3445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 3455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 3465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 3475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 3485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> Reader B structure </em> includes the available information 3495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* related to the discovered ISO14443B remote device. This information 3505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* is updated for every device discovery. 3515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 3525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 3535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 3545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_sIso14443BInfo_t phHal_sIso14443BInfo_t; 3565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_sIso14443BPrimeInfo_t phHal_sIso14443BPrimeInfo; 3585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_nfci 3615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 3625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 3635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Remote Device Jewel Reader RF Gate Information Container 3645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 3655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 3665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 3675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 3685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> Jewel Reader structure </em> includes the available information 3695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* related to the discovered Jewel remote device. This information 3705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* is updated for every device discovery. 3715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 3725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 3735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 3745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_sJewelInfo_t phHal_sJewelInfo_t; 3775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_nfci 3795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 3805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 3815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Remote Device Felica Reader RF Gate Information Container 3825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 3835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 3845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 3855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 3865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> Felica Reader structure </em> includes the available information 3875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* related to the discovered Felica remote device. This information 3885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* is updated for every device discovery. 3895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 3905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 3915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 3925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_sFelicaInfo_t phHal_sFelicaInfo_t; 3945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 3965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_nfci 3975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 3985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 3995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Remote Device Reader 15693 RF Gate Information Container 4005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 4015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 4025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 4035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 4045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> Reader A structure </em> includes the available information 4055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* related to the discovered ISO15693 remote device. This information 4065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* is updated for every device discovery. 4075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 4085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 4095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 4105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_sIso15693Info_t phHal_sIso15693Info_t; 4125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_nfci 4155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 4165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 4175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief NFC Data Rate Supported between the Reader and the Target 4185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 4195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 4205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 4215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 4225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> \ref phHalNfc_eDataRate enum </em> lists all the Data Rate 4235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* values to be used to determine the rate at which the data is transmitted 4245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* to the target. 4255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 4265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 4275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 4285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_eDataRate_t phHalNfc_eDataRate_t; 4315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_nfci 4345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 4355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 4365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief NFCIP1 Gate Information Container 4375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 4385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 4395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 4405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 4415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> NFCIP1 structure </em> includes the available information 4425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* related to the discovered NFCIP1 remote device. This information 4435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* is updated for every device discovery. 4445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 4455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 4465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 4475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_sNfcIPInfo_t phHal_sNfcIPInfo_t; 4495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_nfci 4525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 4535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 4545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Remote Device Specific Information Container 4555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 4565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 4575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 4585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 4595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> Remote Device Information Union </em> includes the available Remote Device Information 4605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* structures. Following the device detected, the corresponding data structure is used. 4615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 4625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 4635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 4645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 4655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_uRemoteDevInfo_t phHal_uRemoteDevInfo_t; 4675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_nfci 4695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 4705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 4715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief RF Device Type Listing 4725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 4735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 4745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 4755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 4765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> RF Device Type List </em> is used to identify the type of 4775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* remote device that is discovered/connected. There seperate 4785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* types to identify a Remote Reader (denoted by _PCD) and 4795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* Remote Tag (denoted by _PICC) 4805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 4815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 4825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 4835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_eRFDevType_t phHal_eRFDevType_t; 4855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eUnknown_DevType phNfc_eUnknown_DevType 4875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* Specific PCD Devices */ 4895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eISO14443_A_PCD phNfc_eISO14443_A_PCD 4905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eISO14443_B_PCD phNfc_eISO14443_B_PCD 4915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eISO14443_BPrime_PCD phNfc_eISO14443_BPrime_PCD 4925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eFelica_PCD phNfc_eFelica_PCD 4935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eJewel_PCD phNfc_eJewel_PCD 4945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eISO15693_PCD phNfc_eISO15693_PCD 4955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* Generic PCD Type */ 4965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_ePCD_DevType phNfc_ePCD_DevType 4975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 4985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* Generic PICC Type */ 4995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_ePICC_DevType phNfc_ePICC_DevType 5005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* Specific PICC Devices */ 5015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eISO14443_A_PICC phNfc_eISO14443_A_PICC 5025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eISO14443_4A_PICC phNfc_eISO14443_4A_PICC 5035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eISO14443_3A_PICC phNfc_eISO14443_3A_PICC 5045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eMifare_PICC phNfc_eMifare_PICC 5055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eISO14443_B_PICC phNfc_eISO14443_B_PICC 5065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eISO14443_4B_PICC phNfc_eISO14443_4B_PICC 5075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eISO14443_BPrime_PICC phNfc_eISO14443_BPrime_PICC 5085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eFelica_PICC phNfc_eFelica_PICC 5095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eJewel_PICC phNfc_eJewel_PICC 5105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eISO15693_PICC phNfc_eISO15693_PICC 5115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* NFC-IP1 Device Types */ 5135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eNfcIP1_Target phNfc_eNfcIP1_Target 5145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eNfcIP1_Initiator phNfc_eNfcIP1_Initiator 5155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* Other Sources */ 5175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eInvalid_DevType phNfc_eInvalid_DevType 5185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_nfci 5205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 5215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 5225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Remote Device Type Listing 5235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 5245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 5255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 5265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 5275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> Remote Device Type List </em> is used to identify the type of 5285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* remote device that is discovered/connected 5295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note This is same as RF Device Type List. 5305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 5315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 5325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_eRemDevType_t phHal_eRemDevType_t; 5335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 5355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \if hal 5385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief Common Command Attribute 5395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \else 5405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief HAL-Specific 5415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \endif 5425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The <em> Hal Command Union </em> includes each available type of Commands. 5445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \note None. 5465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 5485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_uCmdList_t phHal_uCmdList_t; 5505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_nfci 5535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \if hal 5555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief Remote Device Information Structure 5565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \else 5575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief HAL-Specific 5585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \endif 5595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The <em> Remote Device Information Structure </em> holds information about one single Remote 5615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * Device detected by the polling function .\n 5625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * It lists parameters common to all supported remote devices. 5635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \note 5655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \if hal 5675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \sa \ref phHal4Nfc_ConfigureDiscovery and \ref phHal4Nfc_Connect 5685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \else 5695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \sa 5705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \endif 5715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 5725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 5735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_sRemoteDevInformation_t phHal_sRemoteDevInformation_t; 5755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/ 5795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/* This data structure is not used anymore and will be removed in subsequent 5815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly release */ 5825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHal_sDevInputParam 5845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 5855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t FelicaPollPayload[5]; 5865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t NfcPollPayload[5]; 5895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t NFCIDAuto; 5925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t NFCID3i[PHHAL_NFCID_LENGTH]; 5955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 5985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t DIDiUsed; 5995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t CIDiUsed; 6015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t NfcNADiUsed; 6035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /*+ MantisId : 31 - JP - 09-01-2006 */ 6055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /*uint8_t TClNADiUsed; */ 6065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /*- MantisId : 31 - JP - 09-01-2006 */ 6085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t GeneralByte[48]; 6095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t GeneralByteLength; 6125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t ISO14443_4B_AFI; 6155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly} phHal_sDevInputParam_t; 6175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/ 6225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/ 6255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/* TARGET STRUCTURES */ 6265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 6295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 6305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \if hal 6315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief Transceive Information Data Structure for sending commands/response 6325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * to the remote device 6335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \else 6345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief HAL-Specific 6355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \endif 6365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 6375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The <em> Transceive Information Data Structure </em> is used to pass the 6385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * Command, Address (only required for MIFARE) and the send and receive data 6395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * data structure (buffer and length) for communication with remote device 6405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 6415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 6425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 6435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_sTransceiveInfo_t phHal_sTransceiveInfo_t; 6455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_nfci 6485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 6495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 6505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Input information for the Type A tags 6515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 6525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 6535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 6545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 6555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> \ref phHal_sIso14443ACfg structure </em> holds the information 6565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* required for the NFC device to be used during ISO14443A target discovery 6575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 6585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 6595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 6605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHal_sIso14443ACfg 6615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 6625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t Auto_Activation; /**< Enable Auto Activation for 6635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly Technology A \n 6645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly If set to 0, the activation procedure will stop 6655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly after Select (SAK has been received). 6665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly The host could evaluate SAK value and then decide: 6675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly - to start communicating with the remote card 6685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly using proprietary commands (see NXP_MIFARE_RAW 6695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly and NXP_MIFARE_CMD) 6705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly or 6715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly - to activate the remote card up to ISO14443-4 6725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly level (RATS and PPS) using 6735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly CONTINUE ACTIVATION command 6745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly If set to 1, activation follows the flow described in 6755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ETSI HCI specification (restrict detection to 6765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly ISO14443-4 compliant cards). 6775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 6785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHal_sIso14443ACfg_t; 6795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 6815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_nfci 6825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 6835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 6845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Input information for the Type B tags 6855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 6865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 6875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 6885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 6895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> \ref phHal_sIso14443BCfg structure </em> holds the information 6905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* required for the NFC device to be used during ISO14443B target discovery 6915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 6925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 6935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 6945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHal_sIso14443BCfg 6955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 6965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t AppFamily_ID; /**< Application Family Identifier for 6975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly Technology B, 0x00 means all application */ 6985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHal_sIso14443BCfg_t; 6995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 7005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_nfci 7015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 7025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 7035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Input information for the Felica tags 7045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 7055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 7065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 7075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 7085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> \ref phHal_sFelicaCfg_t structure </em> holds the information 7095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* required for the NFC device to be used during Felica target discovery 7105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 7115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 7125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 7135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 7145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHal_sFelicaCfg 7155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 7165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t SystemCode[PHHAL_FEL_SYS_CODE_LEN]; /**< System code for Felica tags */ 7175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 7185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHal_sFelicaCfg_t; 7195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 7205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 7215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_nfci 7225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 7235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 7245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Poll Device Information for conifiguring the discovery wheel 7255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly Reader and Card Emulation Phases 7265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 7275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 7285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 7295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 7305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> \ref phHal_sPollDevInfo_t enum </em> is used to enable/disable 7315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* phases of the discovery wheel related to specific reader types and 7325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* card emulation phase 7335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note Enabling specific Reader technology when NFCIP1 speed is set in the 7345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* phNfc_sADD_Cfg_t is implicitly done in HAL. Use this structure to only 7355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* enable/disable Card Reader Functionality 7365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 7375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_sPollDevInfo_t phHal_sPollDevInfo_t; 7385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 7395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 7405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 7415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 7425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 7435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Identifies Type of Host 7445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 7455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 7465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 7475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 7485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* This enumeration is used to identify the type of the host providing the 7495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* information or the notification to the Terminal host. 7505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 7515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 7525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 7535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef enum phHal_HostType { 7545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* 7555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * This type identifies the host controller 7565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * in the NFC device 7575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 7585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_eHostController = 0x00U, 7595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* 7605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * This type identifies the Host Device 7615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * controlling the NFC device. 7625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 7635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_eTerminalHost = 0x01U, 7645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* 7655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * This type identifies the uicc host 7665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * connnected to the NFC device 7675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 7685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_eUICCHost = 0x02U, 7695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* Host type is unknown */ 7705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_eUnknownHost = 0xFFU 7715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHal_HostType_t; 7725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 7735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 7745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_nfci 7755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 7765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 7775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief P2P speed for the Initiator 7785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 7795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 7805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 7815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 7825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> \ref phHal_eP2PMode enum </em> lists all the NFCIP1 speeds 7835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* to be used for configuring the NFCIP1 discovery 7845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 7855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 7865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 7875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 7885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eDefaultP2PMode phNfc_eDefaultP2PMode 7895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_ePassive106 phNfc_ePassive106 7905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_ePassive212 phNfc_ePassive212 7915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_ePassive424 phNfc_ePassive424 7925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eActive phNfc_eActive 7935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eP2P_ALL phNfc_eP2P_ALL 7945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#define phHal_eInvalidP2PMode phNfc_eInvalidP2PMode 7955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 7965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 7975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 7985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 7995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 8005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Identities the type of Notification 8015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 8025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 8035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 8045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 8055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* This enumeration is used to specify the type of notification notified 8065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* to the upper layer. This classifies the notification into two types 8075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* one for the discovery notifications and the other for all the remaining 8085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* event notifications 8095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 8105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 8115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 8125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 8135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_eNotificationType_t phHal_eNotificationType_t; 8145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 8155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 8165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 8175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 8185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 8195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Identifies the type of event notification 8205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 8215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 8225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 8235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 8245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* This enumeration is used to identify the type of the event notified 8255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* to the Terminal host. 8265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 8275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 8285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 8295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef enum phHal_Event { 8305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 8315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 8325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* Transaction Events */ 8335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_EVT_END_OF_TRANSACTION = 0x11U , 8345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_EVT_TRANSACTION = 0x12U , 8355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_EVT_START_OF_TRANSACTION = 0x20U , 8365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 8375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* Field Events */ 8385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_EVT_FIELD_ON = 0x31U, 8395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_EVT_FIELD_OFF = 0x34U, 8405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 8415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* Card/Target Activation Events */ 8425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_EVT_ACTIVATED = 0x33U, 8435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_EVT_DEACTIVATED = 0x32U, 8445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 8455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_EVT_PROTECTED = 0x24U , 8465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 8475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* Reader Phases configuration request by UICC */ 8485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_UICC_RDPHASES_ACTIVATE_REQ = 0x43U, 8495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_UICC_RDPHASES_DEACTIVATE_REQ = 0x44U, 8505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 8515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* Connectivity and Triggering Events - Future Use */ 8525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_EVT_CONNECTIVITY = 0x10U , 8535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_EVT_OPERATION_ENDED = 0x13U , 8545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 8555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* NXP Specific System Information Events */ 8565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_INFO_TXLDO_OVERCUR = 0x71U, 8575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_INFO_MEM_VIOLATION = 0x73U, 858967359c892ff74962b4f4243d989f447ffe4ae11Daniel Tomas NFC_INFO_TEMP_OVERHEAT = 0x74U, 8596dd948323de0f31b413c9f19a905f1c145c9c456Rob von Behren NFC_INFO_LLC_ERROR = 0x75U, 860967359c892ff74962b4f4243d989f447ffe4ae11Daniel Tomas 861967359c892ff74962b4f4243d989f447ffe4ae11Daniel Tomas /* NXP EVENTS */ 862967359c892ff74962b4f4243d989f447ffe4ae11Daniel Tomas NFC_EVT_MIFARE_ACCESS = 0x35, 863967359c892ff74962b4f4243d989f447ffe4ae11Daniel Tomas NFC_EVT_APDU_RECEIVED = 0x36, 864967359c892ff74962b4f4243d989f447ffe4ae11Daniel Tomas NFC_EVT_EMV_CARD_REMOVAL = 0x37 8655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 8665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHal_Event_t; 8675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 8685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_sUiccInfo_t phHal_sUiccInfo_t; 8695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 8705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 8715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 8725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 8735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Event notification Information 8745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 8755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 8765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 8775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 8785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* This structure provides the information about the event notified 8795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* to the terminal host. 8805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 8815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 8825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 8835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHal_sEventInfo 8845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 8855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* Type of the host issuing the event */ 8865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_HostType_t eventHost; 8875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* Type of the source issuing the event */ 8885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_eRFDevType_t eventSource; 8895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* Type of the source issuing the event */ 8905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_Event_t eventType; 8915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly union uEventInfo 8925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly { 8935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* Parameter information Information is obtained if the eventType is 8945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * NFC_EVT_TRANSACTION for UICC. 8955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 8965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sUiccInfo_t uicc_info; 8975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* AID Information is obtained if the eventType is 8985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * NFC_EVT_TRANSACTION. 8995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 9005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phNfc_sData_t aid; 9015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* Overheat Status Information is obtained if the eventType is 9025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * NFC_INFO_TEMP_OVERHEAT. 9035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 9045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t overheat_status; 9055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* rd_phases Information is obtained if the eventType is 9065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * NFC_UICC_RDPHASES_ACTIVATE_REQ. 9075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 9085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t rd_phases; 9095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* Remote Device Information is obtained if the eventType is 9105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * NFC_EVT_ACTIVATED. 9115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 9125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sRemoteDevInformation_t *pRemoteDevInfo; 9135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly }eventInfo; 9145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHal_sEventInfo_t; 9155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 9165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 9175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 9185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 9195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 9205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Information for the Host/Uicc Emulation Support 9215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 9225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 9235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 9245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 9255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> \ref phHal_sEmuSupport structure </em> holds the type 9265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* of the target emulation supported. 9275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 9285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 9295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 9305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 9315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHal_sEmuSupport 9325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 9335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly unsigned int TypeA:1; 9345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly unsigned int TypeB:1; 9355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly unsigned int TypeBPrime:1; 9365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly unsigned int TypeFelica:1; 9375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly unsigned int TypeMifare:1; 9385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly unsigned int TypeNfcIP1:1; 9395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly unsigned int RFU:2; 9405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 9415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHal_sEmuSupport_t; 9425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 9435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 9445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_nfci 9455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 9465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 9475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief P2P Information for the Initiator 9485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 9495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 9505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 9515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 9525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> \ref phHal_sNfcIPCfg </em> holds the P2P related information 9535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* use by the NFC Device during P2P Discovery and connection 9545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 9555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 9565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 9575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 9585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_sNfcIPCfg_t phHal_sNfcIPCfg_t; 9595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 9605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 9615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 9625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 9635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Enumeration used to choose which type of parameters 9645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* are to be configured 9655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 9665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 9675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 9685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 9695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 9705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 9715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 9725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef enum phHal_eConfigType 9735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 9745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_INVALID_CONFIG = 0x00U, /**< Invalid Configuration */ 9755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_RF_READER_CONFIG, /**< Reader Parmaeters */ 9765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_P2P_CONFIG, /**< NFCIP1 Parameters */ 9775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_SE_PROTECTION_CONFIG, /**< Secure Element 9785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly Protection Cofiguration */ 9795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_EMULATION_CONFIG /**< Emulation Parameters */ 9805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHal_eConfigType_t; 9815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 9825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 9835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 9845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 9855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Discovery Configuration Mode 9865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 9875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 9885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 9895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 9905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* This enumeration is used to choose the Discovery Configuration 9915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* Mode :- Configure and Start, Stop or Start with last set 9925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* configuration 9935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 9945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 9955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 9965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_eDiscoveryConfigMode_t phHal_eDiscoveryConfigMode_t; 9975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 9985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 9995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 10005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 10015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 10025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Target or Tag Release Mode 10035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 10045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 10055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 10065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 10075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* This enumeration defines various modes of releasing an acquired target 10085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* or tag. 10095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 10105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 10115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_eReleaseType_t phHal_eReleaseType_t; 10125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 10135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 10145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 10155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 10165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 10175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Configuration of specific Emulation Feature 10185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 10195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 10205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 10215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 10225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* This enumeration is used to choose configuration for a specific 10235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* emulation feature. 10245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 10255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 10265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 10275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef enum phHal_eEmulationType 10285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 10295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_UNKNOWN_EMULATION = 0x00U, /**< Invalid Configuration */ 10305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_HOST_CE_A_EMULATION = 0x01U, /**< Configure parameters for Type A 10315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly card emulation from host */ 10325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_HOST_CE_B_EMULATION = 0x02U, /**< Configure parameters for Type B 10335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly card emulation from host */ 10345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_B_PRIME_EMULATION = 0x03U, /**< Configure parameters for Type B' 10355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly card emulation from host */ 10365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_FELICA_EMULATION = 0x04U, /**< Configure parameters for Type F 10375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly card emulation from host */ 10385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_MIFARE_EMULATION = 0x06U, /**< Configure parameters for MIFARE 10395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly card emulation - For Future Use */ 10405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_SMARTMX_EMULATION = 0x07U, /**< Configure parameters for SmartMX 10415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 10425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly NFC_UICC_EMULATION = 0x08U /**< Configure parameters for UICC 10435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly emulation */ 10445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHal_eEmulationType_t; 10455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 10465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#if 0 10475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_nfct 10485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 10495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \if hal 10505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief Information for Target Mode Start-Up 10515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \else 10525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \brief HAL-Specific 10535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \endif 10545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 10555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * The <em> Target Information Structure </em> required to start Target mode. 10565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * It contains all the information for the Target mode. 10575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 10585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * \note None. 10595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * 10605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 10615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 10625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHal_sTargetInfo 10635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 10645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t enableEmulation; 10655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sNfcIPCfg_t targetConfig; 10665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly} phHal_sTargetInfo_t; 10675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#endif 10685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 10695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 10705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 10715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 10725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 10735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Mode of operation for SmartMX 10745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 10755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 10765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 10775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 10785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* This enumeration is used to choose the mode of operation for the SmartMx Module. 10795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* Default static configuration at initialization time. 10805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 10815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 10825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 10835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef enum phHal_eSmartMX_Mode{ 10845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly eSmartMx_Wired = 0x00U, /* SmartMX is in Wired Mode */ 10855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly eSmartMx_Default, /* SmartMX is in Default Configuration Mode */ 10865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly eSmartMx_Virtual, /* SmartMx in the Virutal Mode */ 10875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly eSmartMx_Off /* SmartMx Feature is Switched off */ 10885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly} phHal_eSmartMX_Mode_t; 10895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 10905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 10915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 10925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 10935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 10945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Mode of operation for SWP 10955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 10965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 10975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 10985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 10995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* This enumeration is used to choose the mode of operation for the SWP Link 11005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* for UICC Module. Default static configuration at initialization time. 11015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 11025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 11035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 11045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef enum phHal_eSWP_Mode{ 11055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly eSWP_Switch_Off = 0x00U, /* SWP Link is Switched off */ 11065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly eSWP_Switch_Default, /* SWP is in Default Configuration Mode */ 11075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly eSWP_Switch_On /* SWP Link is Switched on */ 11085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly} phHal_eSWP_Mode_t; 11095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 11105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 11115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 11125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 11135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 11145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Information for the Configuring the SmartMX 11155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 11165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 11175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 11185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 11195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> \ref phHal_sSmartMX_Cfg structure </em> holds the information 11205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* to configure the SmartMX Module in the NFC Device. 11215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 11225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 11235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 11245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 11255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 11265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHal_sSmartMX_Cfg 11275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 11285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t enableEmulation; 11295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t lowPowerMode; 11305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_eSmartMX_Mode_t smxMode; 11315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHal_sSmartMX_Cfg_t; 11325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 11335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 11345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 11355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 11365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 11375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Information for the Configuring the UICC 11385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 11395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 11405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 11415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 11425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> \ref phHal_sUiccEmuCfg structure </em> holds the information 11435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* to configure the UICC Host. 11445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 11455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 11465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 11475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 11485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 11495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHal_sUiccEmuCfg 11505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 11515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t enableUicc; 11525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t uiccEmuSupport; 11535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t uiccReaderSupport; 11545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t lowPowerMode; 11555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly /* TODO: This will be updated later */ 11565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHal_sUiccEmuCfg_t; 11575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 11585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 11595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 11605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 11615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Information for the Configuring the Type A Host Emulation Feature 11625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 11635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 11645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 11655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 11665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> \ref phHal_sHostEmuCfg_A structure </em> holds the information 11675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* to configure the Host Emulation for Type A. 11685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 11695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 11705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 11715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 11725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHal_sHostEmuCfg_A 11735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 11745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t enableEmulation; 11755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phNfc_sIso14443AInfo_t hostEmuCfgInfo; 11765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t enableCID; 11775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHal_sHostEmuCfg_A_t; 11785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 11795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 11805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 11815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 11825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 11835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Information for the Configuring the Type B Host Emulation Feature 11845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 11855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 11865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 11875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 11885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> \ref phHal_sHostEmuCfg_B structure </em> holds the information 11895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* to configure the Host Emulation for Type B. 11905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 11915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 11925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 11935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 11945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHal_sHostEmuCfg_B 11955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 11965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t enableEmulation; 11975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phNfc_sIso14443BInfo_t hostEmuCfgInfo; 11985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHal_sHostEmuCfg_B_t; 11995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 12005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 12015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 12025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 12035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Information for the Configuring the Felica Host Emulation Feature 12045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 12055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 12065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 12075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 12085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> \ref phHal_sHostEmuCfg_F structure </em> holds the information 12095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* to configure the Felica Host Emulation. 12105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 12115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 12125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 12135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 12145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 12155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHal_sHostEmuCfg_F 12165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 12175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t enableEmulation; 12185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHal_sHostEmuCfg_F_t; 12195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 12205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 12215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 12225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 12235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 12245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Information for the Configuring the Emulation 12255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 12265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 12275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 12285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 12295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> \ref phHal_sEmulationCfg structure </em> holds the information 12305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* required for the device to act as a Tag or NFCIP1 Target. 12315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 12325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note phHal_sHostEmuCfg_F_t Type F emulation is not presently supported 12335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* is reserved for future use. 12345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 12355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 12365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHal_sEmulationCfg 12375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 12385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_HostType_t hostType; 12395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_eEmulationType_t emuType; 12405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly union phHal_uEmuConfig 12415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly { 12425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sSmartMX_Cfg_t smartMxCfg; 12435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sHostEmuCfg_A_t hostEmuCfg_A; 12445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sHostEmuCfg_B_t hostEmuCfg_B; 12455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sHostEmuCfg_F_t hostEmuCfg_F; 12465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sUiccEmuCfg_t uiccEmuCfg; 12475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly }config; 12485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHal_sEmulationCfg_t; 12495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 12505d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 12515d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 12525d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 12535d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Information for the Configuring the Reader parameters 12545d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 12555d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 12565d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 12575d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 12585d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> \ref phHal_sReaderCfg structure </em> holds the information 12595d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* to configure the Reader A or Reader B parameters. 12605d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 12615d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 12625d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 12635d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 12645d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHal_sReaderCfg 12655d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 12665d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_eRFDevType_t readerType; 12675d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly union phHal_uReaderCfg 12685d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly { 12695d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sIso14443ACfg_t Iso14443ACfg; 12705d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sIso14443BCfg_t Iso14443BCfg; 12715d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly }config; 12725d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHal_sReaderCfg_t; 12735d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 12745d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 12755d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 12765d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 12775d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 12785d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Information for Configuring the Protected Mode for 12795d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* the Secure Elements. 12805d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 12815d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 12825d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 12835d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 12845d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> \ref phHal_sSEProtectionCfg structure </em> holds the 12855d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* information to configure the Secure Element Protection configuration. 12865d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 12875d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 12885d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 12895d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 12905d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef struct phHal_sSEProtectionCfg 12915d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 12925d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly uint8_t mode; 12935d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHal_sSEProtectionCfg_t; 12945d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 12955d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 12965d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 12975d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 12985d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 12995d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Poll configuration structure 13005d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 13015d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 13025d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 13035d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 13045d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> Poll configuration structure </em> holds information about the 13055d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* enabling the the type of discovery required by the application. This 13065d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* structure is the input parameter for the discovery call 13075d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 13085d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note All members of this structure are input parameters [out]. 13095d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 13105d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 13115d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \sa \ref phHal4Nfc_Connect, \ref phHal4Nfc_ConfigParameters, 13125d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \ref phHal_eP2PMode_t and \ref phHal4Nfc_Disconnect. 13135d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 13145d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 13155d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 13165d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 13175d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef phNfc_sADD_Cfg_t phHal_sADD_Cfg_t; 13185d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 13195d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 13205d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/** \ingroup grp_hal_common 13215d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 13225d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \if hal 13235d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief Configuration information. 13245d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \else 13255d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \brief HAL-Specific 13265d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \endif 13275d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 13285d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* The <em> \ref phHal_uConfig structure </em> holds the information 13295d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* required for Configuring the Device. 13305d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* 13315d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly* \note None. 13325d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly*/ 13335d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 13345d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 13355d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pellytypedef union phHal_uConfig 13365d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly{ 13375d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sEmulationCfg_t emuConfig; 13385d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sNfcIPCfg_t nfcIPConfig; /**< Gives the information about 13395d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * the General Bytes for NFC-IP 13405d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly * Communication. 13415d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly */ 13425d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sReaderCfg_t readerConfig; 13435d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly phHal_sSEProtectionCfg_t protectionConfig; 13445d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly}phHal_uConfig_t; 13455d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 13465d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 13475d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly#endif 13485d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly 13495d9927ba30ba449badb9f6df0fbeb4d6aedc6e2aNick Pelly/* EOF */ 1350