Icc_enable() or icc_enable_ext (), E 73) – Maxim Integrated 73S12xxF Software User Manual
Page 73

UG_12xxF_016
73S12xxF Software User Guide
Rev. 1.50
73
ICC_NONE,
ICC_NONE,
ICC_NONE
};
ICC_Enable() or ICC_Enable_Ext ()
Purpose
Activate the Smart Card interface slot specified by eIccId, and return the ATR to the
application. ICC_Enable_Ext() is the extended function. The extended version has
one additional parameter as input. This last parameter is a pointer to a callback
function to be called whenever the card sends a request for wait time extension
(S(WTX) in T=1 or 0x60 (NULL) in T=0 per the CCID Specification).
Synopsis
AR_ICC_RC ICC_Enable (
IN enum ICC_ID eIccId,
IN BOOLEAN bIccATRAutoCheck,
IN BOOLEAN bIccEMVCompliant,
IN BOOLEAN bIccHighSpeed,
IN BOOLEAN bIccClockStopEnable,
IN enum ICC_POWER ucIccPowerSelect,
OUT unsigned char *pucIccATR
OUT unsigned char *pucIccATRLength );
or
AR_ICC_RC ICC_Enable_Ext (
IN enum ICC_ID eIccId,
IN BOOLEAN bIccATRAutoCheck,
IN BOOLEAN bIccEMVCompliant,
IN BOOLEAN bIccHighSpeed,
IN BOOLEAN bIccClockStopEnable,
IN enum ICC_POWER ucIccPowerSelect,
OUT unsigned char *pucIccATR
OUT unsigned char *pucIccATRLength,
IN (Send_WTE) ( void ) );
Parameters
eIccId: Input parameter.
The lower (least significant) 4-bits specify which Smart Card interface is to be
activated. Possible values are:
ICC_1ST 0, (Internal)
ICC_2ND 1, (External)
…
ICC_9TH 8 (External).
The higher (most significant) 4-bits specify whether the card detect polarity is high
(CARD_DET_H) or low (CARD_DET_L). See additional details at the end of the
description for this function.
bIccATRAutoCheck: Input parameter
Specifies whether the Smart Card interface must be immediately de-activated in the
case of an unsupported ATR (TRUE) or if the ATR must be transmitted back to the
application, which will decide what needs to be done (e.g. performing a Warm
Reset). [The default value should be TRUE, but for the various test suites, it may be
necessary for the application to decide whether or not the interface is to be
deactivated.]
bIccEMVCompliant: Input parameter
Specifies whether the Smart Card interface is to be managed according to the EMV
Specification (TRUE) or to the ISO 7816-3 standard (FALSE). This is especially
important on TimeOut errors and on IFSD negotiation. On TimeOut errors in the T=1
protocol, EMV specifies that the IFD must de-activate the Smart Card interface,