MCUX CLNS
MCUX Crypto Library Normal Secure
mcuxClCss_Common.h File Reference

CSSv2 header for common functionality. More...

Go to the source code of this file.

Data Structures

union  mcuxClCss_HwVersion_t
 Result type of mcuxClCss_GetHwVersion. More...
 
union  mcuxClCss_HwState_t
 Result type of mcuxClCss_GetHwState. More...
 
union  mcuxClCss_InterruptOptionEn_t
 Command option type for mcuxClCss_SetIntEnableFlags and mcuxClCss_GetIntEnableFlags. More...
 
union  mcuxClCss_InterruptOptionRst_t
 Type to control which CSS interrupts should be reset when calling mcuxClCss_ResetIntFlags. More...
 
union  mcuxClCss_InterruptOptionSet_t
 Type to control which CSS interrupts should be set when calling mcuxClCss_SetIntFlags. More...
 
union  mcuxClCss_HwConfig_t
 Result type of mcuxClCss_GetHwConfig. More...
 

Macros

#define MCUXCLCSS_API
 Marks a function as a public API function of the mcuxClCss component. More...
 
#define MCUXCLCSS_HW_VERSION
 Compatible CSS hardware IP version for the CLNS release that this header is part of. More...
 
#define MCUXCLCSS_CSS_INTERRUPT_ENABLE
 Set this option at mcuxClCss_InterruptOptionEn_t.cssint to allow CSS to trigger an interrupt. More...
 
#define MCUXCLCSS_CSS_INTERRUPT_DISABLE
 Set this option at mcuxClCss_InterruptOptionEn_t.cssint to prevent CSS from triggering an interrupt. More...
 
#define MCUXCLCSS_CSS_RESET_CLEAR
 Set this option at mcuxClCss_InterruptOptionRst_t.cssint to reset the CSS interrupt flag. More...
 
#define MCUXCLCSS_CSS_RESET_KEEP
 Set this option at mcuxClCss_InterruptOptionRst_t.cssint to keep the CSS interrupt flag. More...
 
#define MCUXCLCSS_CSS_INTERRUPT_SET
 Set this option at mcuxClCss_InterruptOptionSet_t.cssint to set the CSS interrupt flag. More...
 
#define MCUXCLCSS_CSS_INTERRUPT_KEEP
 Set this option at mcuxClCss_InterruptOptionSet_t.cssint to leave the CSS interrupt flag unchanged. More...
 
#define MCUXCLCSS_ERROR_FLAGS_KEEP
 Set this option at mcuxClCss_ErrorHandling_t to not clear any error flags. More...
 
#define MCUXCLCSS_ERROR_FLAGS_CLEAR
 Set this option at mcuxClCss_ErrorHandling_t to clear all CSS error flags. More...
 
#define MCUXCLCSS_RESET_DO_NOT_CANCEL
 Set this option at mcuxClCss_ResetOption_t to abort the requested command if another CSS operation is still running. More...
 
#define MCUXCLCSS_RESET_CANCEL
 Set this option at mcuxClCss_ResetOption_t to execute the requested command even if another CSS operation is still running. More...
 
#define MCUXCLCSS_STATUS_PPROT_UNPRIVILEGED_SECURE
 This value of mcuxClCss_HwState_t.pprot means that the most recently started CSS operation was or is running in unprivileged secure mode. More...
 
#define MCUXCLCSS_STATUS_PPROT_PRIVILEGED_SECURE
 This value of mcuxClCss_HwState_t.pprot means that the most recently started CSS operation was or is running in privileged secure mode. More...
 
#define MCUXCLCSS_STATUS_PPROT_UNPRIVILEGED_NONSECURE
 This value of mcuxClCss_HwState_t.pprot means that the most recently started CSS operation was or is running in unprivileged non-secure mode. More...
 
#define MCUXCLCSS_STATUS_PPROT_PRIVILEGED_NONSECURE
 This value of mcuxClCss_HwState_t.pprot means that the most recently started CSS operation was or is running in privileged non-secure mode. More...
 
#define MCUXCLCSS_STATUS_ECDSAVFY_NORUN
 This value of mcuxClCss_HwState_t.ecdsavfy means that no ECDSA verify operation has been executed. More...
 
#define MCUXCLCSS_STATUS_ECDSAVFY_FAIL
 This value of mcuxClCss_HwState_t.ecdsavfy means that the most recently finished ECDSA signature verification failed. More...
 
#define MCUXCLCSS_STATUS_ECDSAVFY_OK
 This value of mcuxClCss_HwState_t.ecdsavfy means that the most recently finished ECDSA signature verification passed. More...
 
#define MCUXCLCSS_STATUS_ECDSAVFY_ERROR
 This value of mcuxClCss_HwState_t.ecdsavfy means that an error has occurred. More...
 
#define MCUXCLCSS_STATUS_DRBGENTLVL_NONE
 This value of mcuxClCss_HwState_t.drbgentlvl means that the DRBG is not running. More...
 
#define MCUXCLCSS_STATUS_DRBGENTLVL_LOW
 This value of mcuxClCss_HwState_t.drbgentlvl means that the DRBG can generate random numbers with a low security strength (sufficient for commands with a low DRBG security strength requirement, see the function description to check which level is required) More...
 
#define MCUXCLCSS_STATUS_DRBGENTLVL_HIGH
 This value of mcuxClCss_HwState_t.drbgentlvl means that the DRBG can generate random numbers with 128 bits of security strength (sufficient for commands with a high DRBG security strength requirement, see the function description to check which level is required) More...
 
#define drbgreqsub
 Deprecated name for mcuxClCss_HwConfig_t.drbgreqsup. More...
 

Typedefs

typedef uint32_t mcuxClCss_ErrorHandling_t
 Type to handle CSS error clearing options. More...
 
typedef uint32_t mcuxClCss_ResetOption_t
 Type to handle CSS reset options. More...
 

Functions

MCUXCLCSS_API mcuxClCss_Status_Protected_t mcuxClCss_GetHwVersion (mcuxClCss_HwVersion_t *result)
 Determines the version of the underlying CSS hardware IP. More...
 
MCUXCLCSS_API mcuxClCss_Status_Protected_t mcuxClCss_GetHwConfig (mcuxClCss_HwConfig_t *result)
 Determines the hardware configuration of the underlying CSS hardware IP. More...
 
MCUXCLCSS_API mcuxClCss_Status_Protected_t mcuxClCss_GetHwState (mcuxClCss_HwState_t *result)
 Determines the current state of the CSS. More...
 
MCUXCLCSS_API mcuxClCss_Status_Protected_t mcuxClCss_Enable_Async (void)
 Enables the CSS. More...
 
MCUXCLCSS_API mcuxClCss_Status_Protected_t mcuxClCss_Reset_Async (mcuxClCss_ResetOption_t options)
 Perform a synchronous reset of the CSS. More...
 
MCUXCLCSS_API mcuxClCss_Status_Protected_t mcuxClCss_Disable (void)
 Disable the CSSv2. More...
 
MCUXCLCSS_API mcuxClCss_Status_Protected_t mcuxClCss_SetIntEnableFlags (mcuxClCss_InterruptOptionEn_t options)
 Set interrupt enable flags. More...
 
MCUXCLCSS_API mcuxClCss_Status_Protected_t mcuxClCss_GetIntEnableFlags (mcuxClCss_InterruptOptionEn_t *result)
 Get interrupt enable flags. More...
 
MCUXCLCSS_API mcuxClCss_Status_Protected_t mcuxClCss_ResetIntFlags (mcuxClCss_InterruptOptionRst_t options)
 Clear the interrupt status register. More...
 
MCUXCLCSS_API mcuxClCss_Status_Protected_t mcuxClCss_SetIntFlags (mcuxClCss_InterruptOptionSet_t options)
 Set the interrupt status register, for debug and testing purposes. More...
 
MCUXCLCSS_API mcuxClCss_Status_Protected_t mcuxClCss_WaitForOperation (mcuxClCss_ErrorHandling_t errorHandling)
 Wait for a CSS operation and optionally clear the error status. More...
 
MCUXCLCSS_API mcuxClCss_Status_Protected_t mcuxClCss_LimitedWaitForOperation (uint32_t counterLimit, mcuxClCss_ErrorHandling_t errorHandling)
 Await the completion of a CSS operation for a limited amount of time and optionally clear the error status. More...
 
MCUXCLCSS_API mcuxClCss_Status_Protected_t mcuxClCss_ResetErrorFlags (void)
 Resets all error flags that have been set by a previous operation. More...
 
MCUXCLCSS_API mcuxClCss_Status_Protected_t mcuxClCss_GetErrorCode (mcuxClCss_ErrorHandling_t errorHandling)
 Get the last CSS error code and optionally clear the error status. More...
 
MCUXCLCSS_API mcuxClCss_Status_Protected_t mcuxClCss_GetErrorLevel (mcuxClCss_ErrorHandling_t errorHandling, uint32_t *errorLevel)
 Get the last CSS error code and level and optionally clear the error status. More...
 
MCUXCLCSS_API mcuxClCss_Status_Protected_t mcuxClCss_SetRandomStartDelay (uint32_t delay)
 Set the random start delay for AES based operations. More...
 
MCUXCLCSS_API mcuxClCss_Status_Protected_t mcuxClCss_GetRandomStartDelay (uint32_t *delay)
 Get the random start delay for AES based operations. More...
 

Detailed Description

CSSv2 header for common functionality.

This header exposes functions that support hardware state management for other CSSv2 commands.