Kinetis SDK v.2.0 API Reference Manual
Rev. 0
Freescale Semiconductor, Inc.
|
Files | |
file | fsl_smartcard_ucosii.h |
Data Structures | |
struct | rtos_smartcard_context_t |
Runtime RTOS smart card driver context. More... | |
Macros | |
#define | RTOS_SMARTCARD_COMPLETE 0x1u |
Smart card RTOS transfer complete flag. | |
#define | RTOS_SMARTCARD_TIMEOUT 0x2u |
Smart card RTOS transfer time-out flag. | |
#define | SMARTCARD_Control(base, context, control, param) SMARTCARD_UART_Control(base, context, control, 0) |
Common Smart card driver API defines. More... | |
#define | SMARTCARD_Transfer(base, context, xfer) SMARTCARD_UART_TransferNonBlocking(base, context, xfer) |
Common Smart card API macro. | |
#define | SMARTCARD_Init(base, context, sourceClockHz) SMARTCARD_UART_Init(base, context, sourceClockHz) |
Common Smart card API macro. | |
#define | SMARTCARD_Deinit(base) SMARTCARD_UART_Deinit(base) |
Common Smart card API macro. | |
#define | SMARTCARD_GetTransferRemainingBytes(base, context) SMARTCARD_UART_GetTransferRemainingBytes(base, context) |
Common Smart card API macro. | |
#define | SMARTCARD_GetDefaultConfig(cardParams) SMARTCARD_UART_GetDefaultConfig(cardParams) |
Common Smart card API macro. | |
Functions | |
int | SMARTCARD_RTOS_Init (void *base, rtos_smartcard_context_t *ctx, uint32_t sourceClockHz) |
Initializes an Smart card (EMVSIM/UART) peripheral for Smart card/ISO-7816 operation. More... | |
int | SMARTCARD_RTOS_Deinit (rtos_smartcard_context_t *ctx) |
This function disables the Smart card (EMVSIM/UART) interrupts, disables the transmitter and receiver, and flushes the FIFOs (for modules that support FIFOs) and gates Smart card clock in SIM. More... | |
int | SMARTCARD_RTOS_Transfer (rtos_smartcard_context_t *ctx, smartcard_xfer_t *xfer) |
Transfers data using interrupts. More... | |
int | SMARTCARD_RTOS_WaitForXevent (rtos_smartcard_context_t *ctx) |
Waits until transfer is finished. More... | |
int | SMARTCARD_RTOS_Control (rtos_smartcard_context_t *ctx, smartcard_control_t control, uint32_t param) |
Controls Smart card module as per different user request. More... | |
int | SMARTCARD_RTOS_PHY_Control (rtos_smartcard_context_t *ctx, smartcard_interface_control_t control, uint32_t param) |
Controls the Smart card module as per different user request. More... | |
int | SMARTCARD_RTOS_PHY_Activate (rtos_smartcard_context_t *ctx, smartcard_reset_type_t resetType) |
Activates the Smart card interface. More... | |
int | SMARTCARD_RTOS_PHY_Deactivate (rtos_smartcard_context_t *ctx) |
Deactivates the Smart card interface. More... | |
struct rtos_smartcard_context_t |
Runtime RTOS Smart card driver context.
Data Fields | |
SemaphoreHandle_t | x_sem |
RTOS unique access assurance object. | |
EventGroupHandle_t | x_event |
RTOS synchronization object. | |
smartcard_context_t | x_context |
transactional layer state More... | |
OS_EVENT * | x_sem |
RTOS unique access assurance object. | |
OS_FLAG_GRP * | x_event |
RTOS synchronization object. | |
OS_SEM | x_sem |
RTOS unique access assurance object. | |
OS_FLAG_GRP | x_event |
RTOS synchronization object. | |
smartcard_context_t rtos_smartcard_context_t::x_context |
Transactional layer state.
#define SMARTCARD_Control | ( | base, | |
context, | |||
control, | |||
param | |||
) | SMARTCARD_UART_Control(base, context, control, 0) |
Common Smart card API macro
int SMARTCARD_RTOS_Init | ( | void * | base, |
rtos_smartcard_context_t * | ctx, | ||
uint32_t | sourceClockHz | ||
) |
Also initialize Smart card PHY interface .
This function ungates the Smart card clock, initializes the module to EMV default settings, configures the IRQ state structure, and enables the module-level interrupt to the core. Initialize RTOS synchronization objects and context.
base | The Smart card peripheral base address. |
ctx | The Smart card RTOS structure. |
sourceClockHz | Smart card clock generation module source clock. |
int SMARTCARD_RTOS_Deinit | ( | rtos_smartcard_context_t * | ctx | ) |
Deactivates also Smart card PHY interface, stops Smart card clocks. Free all synchronization objects allocated in RTOS Smart card context.
ctx | The Smart card RTOS state. |
int SMARTCARD_RTOS_Transfer | ( | rtos_smartcard_context_t * | ctx, |
smartcard_xfer_t * | xfer | ||
) |
A blocking (also known as synchronous) function means that the function returns after the transfer is done. User can cancel this transfer by calling function AbortTransfer.
ctx | A pointer to the RTOS Smart card driver context. |
xfer | Smart card transfer structure. |
int SMARTCARD_RTOS_WaitForXevent | ( | rtos_smartcard_context_t * | ctx | ) |
Task waits on the transfer finish event. Don't initialize transfer, just wait for transfer callback. Can be used while waiting on initial TS character.
ctx | A pointer to the RTOS Smart card driver context. |
int SMARTCARD_RTOS_Control | ( | rtos_smartcard_context_t * | ctx, |
smartcard_control_t | control, | ||
uint32_t | param | ||
) |
ctx | The Smart card RTOS context pointer. |
control | Control type |
param | Integer value of specific to control command. |
int SMARTCARD_RTOS_PHY_Control | ( | rtos_smartcard_context_t * | ctx, |
smartcard_interface_control_t | control, | ||
uint32_t | param | ||
) |
ctx | The Smart card RTOS context pointer. |
control | Control type |
param | Integer value of specific to control command. |
int SMARTCARD_RTOS_PHY_Activate | ( | rtos_smartcard_context_t * | ctx, |
smartcard_reset_type_t | resetType | ||
) |
ctx | The Smart card RTOS driver context structure. |
resetType | type of reset to be performed, possible values = kSmartcardColdReset, kSmartcardWarmReset |
int SMARTCARD_RTOS_PHY_Deactivate | ( | rtos_smartcard_context_t * | ctx | ) |
ctx | The Smart card RTOS driver context structure. |