/* * * Copyright 2018-2020 NXP * SPDX-License-Identifier: Apache-2.0 */ /** * @par Description * This file provides the API of the SmCom T1oI2C communication layer. * *****************************************************************************/ #ifndef _SMCOMT1OI2C_H_ #define _SMCOMT1OI2C_H_ #include "smCom.h" /** * \ingroup spi_libese * \brief Ese Channel mode * */ typedef enum { ESE_MODE_NORMAL = 0, /*!< All wired transaction other OSU */ ESE_MODE_OSU /*!< Jcop Os update mode */ } phNxpEse_initMode; #if defined(__cplusplus) extern "C" { #endif /** * closes the T=1 o I2C communication layer. * @param conn_ctx connection context * @param mode Ese Communication mode either * ESE_MODE_NORMAL: All wired transaction other OSU or * ESE_MODE_OSU :Jcop Os update mode * @return */ U16 smComT1oI2C_Close(void *conn_ctx, U8 mode); /** * @param conn_ctx connection context * Reset the T=1 o protocol instance. * @return */ U16 smComT1oI2C_ComReset(void *conn_ctx); /** * Initializes or resumes the T=1 o I2C communication layer. * @param conn_ctx IN: connection context * @param mode Ese Communication mode either ESE_MODE_NORMAL: All wired transaction other OSU or ESE_MODE_OSU :Jcop Os update mode * @param T1oI2Catr IN: Pointer to buffer to contain SCI2C_ATR value * @param T1oI2CatrLen IN: Size of buffer provided; OUT: Actual length of atr retrieved * @return */ U16 smComT1oI2C_Open(void *conn_ctx, U8 mode, U8 seqCnt, U8 *T1oI2Catr, U16 *T1oI2CatrLen); /** * Open I2C device. * @param conn_ctx IN: pointer connection context * @param pConnParam IN: I2C address * @return */ U16 smComT1oI2C_Init(void **conn_ctx, const char *pConnString); #if defined(__cplusplus) } #endif #endif /* _SMCOMT1OI2C_H_ */