xilsecure
Vitis Drivers API Documentation
xsecure_defs.h File Reference

Overview

This file contains the xsecure API IDs.

MODIFICATION HISTORY:
Ver   Who  Date     Changes


1.0 kal 03/23/20 Initial release 4.5 kal 03/23/20 Updated file version to sync with library version 4.6 har 07/14/21 Fixed doxygen warnings 4.7 kpt 11/29/21 Added macro XSecure_DCacheFlushRange 5.0 bm 07/06/22 Refactor versal and versal_net code kpt 07/24/22 Added XSecure_EccCrvClass 5.1 skg 12/16/22 Added XSecure_AesAllParams yog 05/03/23 Fixed MISRA C violation of Rule 12.2 5.2 yog 06/07/23 Added support for P-256 Curve vss 07/14/23 Added enum for resource availability and also ipi mask macro ng 07/15/23 Added support for system device tree flow har 07/26/23 Renamed members of XSecure_EccCrvClass and added macros for backward compatibility vss 09/11/23 Fixed Coverity warning EXPRESSION_WITH_MAGIC_NUMBERS 5.3 ng 01/28/24 Added SDT support ng 03/26/24 Fixed header include in SDT flow 5.4 yog 04/29/24 Fixed doxygen warnings. mb 05/23/24 Added support for P-192 Curve mb 05/23/24 Added support for P-224 Curve Pre 03/02/25 Removed macros and structures related to data context setting yog 03/18/25 Added XSecure_EcdhParams

 

Data Structures

struct  XSecure_RsaInParam
 Structure for input parameters for RSA Encryption and Decryption. More...
 
struct  XSecure_RsaSignParams
 Structure for input parameters for RSA Sign verification. More...
 
struct  XSecure_EllipticSignGenParams
 Structure for input parameters for Ellitic Sign generation. More...
 
struct  XSecure_EllipticSignVerifyParams
 Structure for input parameters for Ellitic Sign Verification. More...
 
struct  XSecure_AesInitOps
 Structure for input parameters for Initialisation of AES Encryption and Decryption. More...
 
struct  XSecure_AesInParams
 Structure for input parameters for AES Encryption and Decryption. More...
 
struct  XSecure_EcdhParams
 Structure for input parameters for ECDH. More...
 
struct  XSecure_AesDataBlockParams
 Structure for input parameters for AES Encryption and Decryption of single block of data. More...
 

Macros

#define XSecure_Printf(DebugType,...)   if ((DebugType) == 1U) {xil_printf (__VA_ARGS__);}
 For prints in XilSecure library. More...
 
#define XSecure_DCacheFlushRange(SrcAddr, Len)   Xil_DCacheFlushRange((INTPTR)SrcAddr, Len)
 Cache Invalidate function. More...
 
#define XSECURE_API(ApiId)   ((u32)ApiId)
 Macro to typecast XILSECURE API ID. More...
 
#define XSECURE_API_ID_MASK   (0xFFU)
 Mask for API ID in Secure IPI command. More...
 
#define XILSECURE_MODULE_ID   (0x05U)
 XilSecure Module Id. More...
 
#define XSECURE_KAT_API_ERR_ID   (((u32)XILSECURE_MODULE_ID << 8U) | ((u32)XSECURE_API_KAT))
 XilSecure KAT API error id. More...
 
#define XSECURE_KAT_MAJOR_ERROR
 Xilsecure KAT major error for client APIs. More...
 
#define XSECURE_ADDR_HIGH_SHIFT   (32U)
 Shift to get higher address. More...
 
#define XSECURE_IPI_MASK_DEF_VAL   (0U)
 Default IPI mask value. More...
 
#define XSECURE_ECDSA_PRIME   (XSECURE_ECC_PRIME)
 This macro is for backward compatibility. More...
 
#define XSecure_EllipticCrvClass   XSecure_EccCrvClass
 Alias for XSecure_EccCrvClass enum for backward compatibility. More...
 
Debug related macros
#define XSECURE_DEBUG   (0U)
 < Enable client printfs by setting XSECURE_DEBUG to 1 More...
 
#define XSECURE_DEBUG_GENERAL   (0U)
 

Enumerations

enum  XSecure_AesOp { XSECURE_ENCRYPT, XSECURE_DECRYPT, XSECURE_ENCRYPT, XSECURE_DECRYPT }
 
enum  XSecure_EllipticCrvTyp {
  XSECURE_ECC_NIST_P192 = 1, XSECURE_ECC_NIST_P224 = 2, XSECURE_ECC_NIST_P256 = 3, XSECURE_ECC_NIST_P384 = 4,
  XSECURE_ECC_NIST_P521 = 5
}
 
enum  XSecure_EccCrvClass { XSECURE_ECC_PRIME = 0, XSECURE_ECC_BINARY = 1 }
 
enum  XSecure_KatOp { XSECURE_API_KAT_SET = 0U, XSECURE_API_KAT_CLEAR }