RTEMS 6.1-rc1
fsl_smartcard_emvsim.h
1/*
2 * Copyright (c) 2015-2016, Freescale Semiconductor, Inc.
3 * Copyright 2016-2017 NXP
4 * All rights reserved.
5 *
6 * SPDX-License-Identifier: BSD-3-Clause
7 */
8
9#ifndef _FSL_SMARTCARD_EMVSIM_H_
10#define _FSL_SMARTCARD_EMVSIM_H_
11
12#include "fsl_smartcard.h"
13
19/*******************************************************************************
20 * Definitions
21 ******************************************************************************/
22
24#define SMARTCARD_EMV_RX_NACK_THRESHOLD (5u)
25
27#define SMARTCARD_EMV_TX_NACK_THRESHOLD (5u)
28
30#define SMARTCARD_WWT_ADJUSTMENT (160u)
31
33#define SMARTCARD_CWT_ADJUSTMENT (3u)
34
37{
43
46{
50
53{
57
58/*******************************************************************************
59 * API
60 ******************************************************************************/
61#if defined(__cplusplus)
62extern "C" {
63#endif
64
83
97
105
120
133
150
165 uint32_t param);
166
176#if defined(__cplusplus)
177}
178#endif
179
182#endif /* _FSL_SMARTCARD_EMVSIM_H_*/
int32_t status_t
Type used for all status and error return values.
Definition: fsl_common.h:225
void SMARTCARD_EMVSIM_Deinit(EMVSIM_Type *base)
This function disables the EMVSIM interrupts, disables the transmitter and receiver,...
Definition: fsl_smartcard_emvsim.c:480
status_t SMARTCARD_EMVSIM_Init(EMVSIM_Type *base, smartcard_context_t *context, uint32_t srcClock_Hz)
Initializes an EMVSIM peripheral for the Smart card/ISO-7816 operation.
Definition: fsl_smartcard_emvsim.c:414
enum _presence_detect_edge emvsim_presence_detect_edge_t
EMVSIM card presence detection edge control.
void SMARTCARD_EMVSIM_IRQHandler(EMVSIM_Type *base, smartcard_context_t *context)
Handles EMVSIM module interrupts.
Definition: fsl_smartcard_emvsim.c:662
_emvsim_gpc_clock_select
General Purpose Counter clock selections.
Definition: fsl_smartcard_emvsim.h:37
enum _emvsim_gpc_clock_select emvsim_gpc_clock_select_t
General Purpose Counter clock selections.
_presence_detect_status
EMVSIM card presence detection status.
Definition: fsl_smartcard_emvsim.h:53
int32_t SMARTCARD_EMVSIM_GetTransferRemainingBytes(EMVSIM_Type *base, smartcard_context_t *context)
Returns whether the previous EMVSIM transfer has finished.
Definition: fsl_smartcard_emvsim.c:592
enum _presence_detect_status emvsim_presence_detect_status_t
EMVSIM card presence detection status.
_presence_detect_edge
EMVSIM card presence detection edge control.
Definition: fsl_smartcard_emvsim.h:46
status_t SMARTCARD_EMVSIM_TransferNonBlocking(EMVSIM_Type *base, smartcard_context_t *context, smartcard_xfer_t *xfer)
Transfer data using interrupts.
Definition: fsl_smartcard_emvsim.c:525
void SMARTCARD_EMVSIM_GetDefaultConfig(smartcard_card_params_t *cardParams)
Fills in the smartcard_card_params structure with default values according to the EMV 4....
Definition: fsl_smartcard_emvsim.c:389
status_t SMARTCARD_EMVSIM_AbortTransfer(EMVSIM_Type *base, smartcard_context_t *context)
Terminates an asynchronous EMVSIM transfer early.
Definition: fsl_smartcard_emvsim.c:625
status_t SMARTCARD_EMVSIM_Control(EMVSIM_Type *base, smartcard_context_t *context, smartcard_control_t control, uint32_t param)
Controls the EMVSIM module per different user request.
Definition: fsl_smartcard_emvsim.c:981
@ kEMVSIM_GPCCardClock
Definition: fsl_smartcard_emvsim.h:39
@ kEMVSIM_GPCTxClock
Definition: fsl_smartcard_emvsim.h:41
@ kEMVSIM_GPCClockDisable
Definition: fsl_smartcard_emvsim.h:38
@ kEMVSIM_GPCRxClock
Definition: fsl_smartcard_emvsim.h:40
@ kEMVSIM_DetectPinIsHigh
Definition: fsl_smartcard_emvsim.h:55
@ kEMVSIM_DetectPinIsLow
Definition: fsl_smartcard_emvsim.h:54
@ kEMVSIM_DetectOnFallingEdge
Definition: fsl_smartcard_emvsim.h:47
@ kEMVSIM_DetectOnRisingEdge
Definition: fsl_smartcard_emvsim.h:48
enum _smartcard_control smartcard_control_t
Control codes for the Smart card protocol timers and misc.
rtems_termios_device_context * context
Definition: console-config.c:62
Definition: MIMXRT1166_cm4.h:33651
Defines card-specific parameters for Smart card driver.
Definition: fsl_smartcard.h:165
Runtime state of the Smart card driver.
Definition: fsl_smartcard.h:239
Defines user transfer structure used to initialize transfer.
Definition: fsl_smartcard.h:229
Definition: intercom.c:87