Classes | Macros | Typedefs | Functions
gr55xx_ll_pkc.h File Reference

Header file containing functions prototypes of PKC LL library. More...

`#include "gr55xx.h"`
Include dependency graph for gr55xx_ll_pkc.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Classes
struct | _ll_ecc_point
| LL PKC ECC Point Structure definition. More...
struct | _ll_ecc_curve_init
| LL PKC ECC P-256 Elliptic Curve Init Structure definition. More...
struct | _ll_pkc_init
| LL PKC Init Structure definition. More...

## Macros
#define | ECC_U32_LENGTH (8)
| ECC Array Length. More...
#define | RSA_U32_LENGTH (64)
| RSA Array Length. More...
#define | LL_PKC_WORKSTAT_BUSY PKC_WORKSTAT_BUSY
| Busy flag. More...
#define | LL_PKC_INTEN_DONE PKC_INTEN_DONE
| Operation Done Interrupt source More...
#define | LL_PKC_INTEN_ERR PKC_INTEN_ERR
| Operation Error Interrupt source More...
#define | LL_PKC_INTEN_BAOVF PKC_INTEN_BAOVF
| Big Integer Result Overflow Interrupt source. More...
#define | LL_PKC_BITS_LENGTH_MIN (256U)
| Bits length min value More...
#define | LL_PKC_BITS_LENGTH_MAX (2048U)
| Bits length max value More...
#define | LL_PKC_BIGMULTI_BITS_LENGTH_MAX (1024U)
| Big number multiplication bits Length max value. More...
#define | LL_PKC_operation_mode_MULTIPLY (0x00000000U)
| Multiplication operation mode More...
#define | LL_PKC_operation_mode_INVERTION (1UL << PKC_SW_CTRL_OPMODE_Pos)
| Inversion operation mode More...
#define | LL_PKC_operation_mode_ADD (2UL << PKC_SW_CTRL_OPMODE_Pos)
| Addition operation mode More...
#define | LL_PKC_operation_mode_SUB (3UL << PKC_SW_CTRL_OPMODE_Pos)
| Subtraction operation mode More...
#define | LL_PKC_operation_mode_COMPARE (4UL << PKC_SW_CTRL_OPMODE_Pos)
| Comparison operation mode More...
#define | LL_PKC_operation_mode_LEFTSHIFT (5UL << PKC_SW_CTRL_OPMODE_Pos)
| Left Shift operation mode More...
#define | LL_PKC_operation_mode_BIGINTEGERMULTIPLY (6UL << PKC_SW_CTRL_OPMODE_Pos)
| Big Number Multiplication operation mode More...
#define | LL_PKC_operation_mode_BIGINTEGERADD (7UL << PKC_SW_CTRL_OPMODE_Pos)
| Big Number Addition operation mode More...
#define | LL_ECC_CURVE_DEFAULT_CONFIG LL_ECC_CURVE_SECP256R1_CONFIG
| LL PKC ECC Curve default configuretion. More...
#define | LL_ECC_CURVE_SECP256R1_CONFIG
| LL PKC ECC Curve SECP256R1 configuretion. More...
#define | LL_ECC_CURVE_SECP256K1_CONFIG
| LL PKC ECC Curve SECP256K1 configuretion. More...
#define | LL_PKC_WriteReg(__INSTANCE__, __REG__, __VALUE__) WRITE_REG(__INSTANCE__->__REG__, (__VALUE__))
| Write a value in PKC register. More...
#define | LL_PKC_ReadReg(__INSTANCE__, __REG__) READ_REG(__INSTANCE__->__REG__)
| Read a value in PKC register. More...

## Typedefs
typedef struct _ll_ecc_point | ll_ecc_point_t
| LL PKC ECC Point Structure definition. More...
typedef struct _ll_ecc_curve_init | ll_ecc_curve_init_t
| LL PKC ECC P-256 Elliptic Curve Init Structure definition. More...
typedef struct _ll_pkc_init | ll_pkc_init_t
| LL PKC Init Structure definition. More...

## Functions
__STATIC_INLINE void | ll_pkc_enable (pkc_regs_t *PKCx)
| Enable pkc. More...
__STATIC_INLINE void | ll_pkc_disable (pkc_regs_t *PKCx)
| Disable pkc. More...
__STATIC_INLINE uint32_t | ll_pkc_is_enabled (pkc_regs_t *PKCx)
| Indicate whether the pkc is enabled. More...
__STATIC_INLINE void | ll_pkc_enable_hardware_start (pkc_regs_t *PKCx)
| Enable pkc start in hardware mode. More...
__STATIC_INLINE void | ll_pkc_disable_hardware_start (pkc_regs_t *PKCx)
| Disable pkc start in hardware mode. More...
__STATIC_INLINE uint32_t | ll_pkc_is_enabled_hardware_start (pkc_regs_t *PKCx)
| Indicate whether the pkc start in hardware mode is enabled. More...
__STATIC_INLINE void | ll_pkc_enable_software (pkc_regs_t *PKCx)
| Enable pkc software mode. More...
__STATIC_INLINE void | ll_pkc_disable_software (pkc_regs_t *PKCx)
| Disable pkc software mode. More...
__STATIC_INLINE uint32_t | ll_pkc_is_enabled_software (pkc_regs_t *PKCx)
| Indicate whether the pkc software mode is enabled. More...
__STATIC_INLINE void | ll_pkc_enable_reset (pkc_regs_t *PKCx)
| Enable pkc reset. More...
__STATIC_INLINE void | ll_pkc_disable_reset (pkc_regs_t *PKCx)
| Disable pkc reset. More...
__STATIC_INLINE uint32_t | ll_pkc_is_enabled_reset (pkc_regs_t *PKCx)
| Indicate whether the pkc reset is enabled. More...
__STATIC_INLINE void | ll_pkc_set_k_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter k pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_k_pointer (pkc_regs_t *PKCx)
| Get PKC parameter k pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_r_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter r pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_r_pointer (pkc_regs_t *PKCx)
| Get PKC parameter r pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_p_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter p pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_p_pointer (pkc_regs_t *PKCx)
| Get PKC parameter p pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_rsq_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter R^2 pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_rsq_pointer (pkc_regs_t *PKCx)
| Get PKC parameter R^2 pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_gx_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter Gx pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_gx_pointer (pkc_regs_t *PKCx)
| Get PKC parameter Gx pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_gy_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter Gy pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_gy_pointer (pkc_regs_t *PKCx)
| Get PKC parameter Gy pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_gz_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter Gz pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_gz_pointer (pkc_regs_t *PKCx)
| Get PKC parameter Gz pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_r0x_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter R0x pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_r0x_pointer (pkc_regs_t *PKCx)
| Get PKC parameter R0x pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_r0y_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter R0y pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_r0y_pointer (pkc_regs_t *PKCx)
| Get PKC parameter R0y pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_r0z_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter R0z pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_r0z_pointer (pkc_regs_t *PKCx)
| Get PKC parameter R0z pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_r1x_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter R1x pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_r1x_pointer (pkc_regs_t *PKCx)
| Get PKC parameter R1x pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_r1y_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter R1y pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_r1y_pointer (pkc_regs_t *PKCx)
| Get PKC parameter R1y pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_r1z_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter R1z pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_r1z_pointer (pkc_regs_t *PKCx)
| Get PKC parameter R1z pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_tmp1_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter Tmp1 pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_tmp1_pointer (pkc_regs_t *PKCx)
| Get PKC parameter Tmp1 pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_tmp2_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter Tmp2 pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_tmp2_pointer (pkc_regs_t *PKCx)
| Get PKC parameter Tmp2 pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_tmp3_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter Tmp3 pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_tmp3_pointer (pkc_regs_t *PKCx)
| Get PKC parameter Tmp3 pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_tmp4_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter Tmp4 pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_tmp4_pointer (pkc_regs_t *PKCx)
| Get PKC parameter Tmp4 pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_tmp5_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter Tmp5 pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_tmp5_pointer (pkc_regs_t *PKCx)
| Get PKC parameter Tmp5 pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_tmp6_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter Tmp6 pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_tmp6_pointer (pkc_regs_t *PKCx)
| Get PKC parameter Tmp6 pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_constant1_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter Constant1 pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_constant1_pointer (pkc_regs_t *PKCx)
| Get PKC parameter Constant1 pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_x1_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter X1 pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_x1_pointer (pkc_regs_t *PKCx)
| Get PKC parameter X1 pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_x2_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter X2 pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_x2_pointer (pkc_regs_t *PKCx)
| Get PKC parameter X2 pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_mitmp_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter MITmp pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_mitmp_pointer (pkc_regs_t *PKCx)
| Get PKC parameter MITmp pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_tmpk_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set PKC parameter TmpK pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_tmpk_pointer (pkc_regs_t *PKCx)
| Get PKC parameter TmpK pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_ecc_a_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set ECC parameter A pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_ecc_a_pointer (pkc_regs_t *PKCx)
| Get ECC parameter A pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_ecc_b_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set ECC parameter B pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_ecc_b_pointer (pkc_regs_t *PKCx)
| Get ECC parameter B pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_constp (pkc_regs_t *PKCx, uint32_t ConstP)
| Set constant value for montgomery multiply in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_constp (pkc_regs_t *PKCx)
| Get constant value for montgomery multiply in pkc sram. More...
__STATIC_INLINE void | ll_pkc_enable_software_start (pkc_regs_t *PKCx)
| Enable pkc start in software mode. More...
__STATIC_INLINE void | ll_pkc_disable_software_start (pkc_regs_t *PKCx)
| Disable pkc start in software mode. More...
__STATIC_INLINE uint32_t | ll_pkc_is_enabled_software_start (pkc_regs_t *PKCx)
| Indicate whether the pkc start in software mode is enabled. More...
__STATIC_INLINE void | ll_pkc_set_operation_mode (pkc_regs_t *PKCx, uint32_t operation_mode)
| Set operation mode in software mode. More...
__STATIC_INLINE uint32_t | ll_pkc_get_operation_mode (pkc_regs_t *PKCx)
| Get operation mode in software mode. More...
__STATIC_INLINE void | ll_pkc_enable_dummy_multi (pkc_regs_t *PKCx)
| Enable Dummy Multi in software mode. More...
__STATIC_INLINE void | ll_pkc_disable_dummy_multi (pkc_regs_t *PKCx)
| Disable Dummy Multi in software mode. More...
__STATIC_INLINE uint32_t | ll_pkc_is_enabled_dummy_multi (pkc_regs_t *PKCx)
| Indicate whether the Dummy Multi in software mode is enabled. More...
__STATIC_INLINE void | ll_pkc_enable_random_clock_gating (pkc_regs_t *PKCx)
| Enable Random Clock Gating in software mode. More...
__STATIC_INLINE void | ll_pkc_disable_random_clock_gating (pkc_regs_t *PKCx)
| Disable Random Clock Gating in software mode. More...
__STATIC_INLINE uint32_t | ll_pkc_is_enabled_random_clock_gating (pkc_regs_t *PKCx)
| Indicate whether the Random Clock Gating in software mode is enabled. More...
__STATIC_INLINE void | ll_pkc_set_mm_a_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set modular multiplication parameter A pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_mm_a_pointer (pkc_regs_t *PKCx)
| Get modular multiplication parameter A pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_mm_b_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set modular multiplication parameter B pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_mm_b_pointer (pkc_regs_t *PKCx)
| Get modular multiplication parameter B pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_mm_p_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set modular multiplication parameter P pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_mm_p_pointer (pkc_regs_t *PKCx)
| Get modular multiplication parameter P pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_mm_c_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set modular multiplication parameter C pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_mm_c_pointer (pkc_regs_t *PKCx)
| Get modular multiplication parameter C pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_mas_a_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set modular add/sub parameter A pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_mas_a_pointer (pkc_regs_t *PKCx)
| Get modular add/sub parameter A pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_mas_b_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set modular add/sub parameter B pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_mas_b_pointer (pkc_regs_t *PKCx)
| Get modular add/sub parameter B pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_mas_p_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set modular add/sub parameter P pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_mas_p_pointer (pkc_regs_t *PKCx)
| Get modular add/sub parameter P pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_mas_c_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set modular add/sub parameter C pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_mas_c_pointer (pkc_regs_t *PKCx)
| Get modular add/sub parameter C pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_mi_u_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set modular invertion parameter U pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_mi_u_pointer (pkc_regs_t *PKCx)
| Get modular invertion parameter U pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_mi_v_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set modular invertion parameter V pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_mi_v_pointer (pkc_regs_t *PKCx)
| Get modular invertion parameter V pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_mi_x1_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set modular invertion parameter X1 pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_mi_x1_pointer (pkc_regs_t *PKCx)
| Get modular invertion parameter X1 pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_mi_x2_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set modular invertion parameter X1 pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_mi_x2_pointer (pkc_regs_t *PKCx)
| Get modular invertion parameter X1 pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_swmi_tmp_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set modular invertion parameter Tmp pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_swmi_tmp_pointer (pkc_regs_t *PKCx)
| Get modular invertion parameter Tmp pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_operation_word_length (pkc_regs_t *PKCx, uint32_t WordLength)
| Set operation word length-bits. More...
__STATIC_INLINE uint32_t | ll_pkc_get_operation_word_length (pkc_regs_t *PKCx)
| Get operation word length-bits. More...
__STATIC_INLINE uint32_t | ll_pkc_get_mik_output (pkc_regs_t *PKCx)
| Get K output in invertion operation. More...
__STATIC_INLINE void | ll_pkc_set_dummy_multiply_seed (pkc_regs_t *PKCx, uint32_t seed)
| Set dummy multiply seed. More...
__STATIC_INLINE uint32_t | ll_pkc_get_dummy_multiply_seed (pkc_regs_t *PKCx)
| Get dummy multiply seed. More...
__STATIC_INLINE void | ll_pkc_set_bm_a_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set big integer operand A pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_bm_a_pointer (pkc_regs_t *PKCx)
| Get big integer operand A pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_bm_b_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set big integer operand B pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_bm_b_pointer (pkc_regs_t *PKCx)
| Get big integer operand B pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_bm_c_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set big integer result C pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_bm_c_pointer (pkc_regs_t *PKCx)
| Get big integer result C pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_ba_a_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set big integer operand A pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_ba_a_pointer (pkc_regs_t *PKCx)
| Get big integer operand A pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_ba_b_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set big integer operand B pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_ba_b_pointer (pkc_regs_t *PKCx)
| Get big integer operand B pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_ba_c_pointer (pkc_regs_t *PKCx, uint32_t pointer)
| Set big integer result C pointer in pkc sram. More...
__STATIC_INLINE uint32_t | ll_pkc_get_ba_c_pointer (pkc_regs_t *PKCx)
| Get big integer result C pointer in pkc sram. More...
__STATIC_INLINE void | ll_pkc_set_random_clock_gating_seed (pkc_regs_t *PKCx, uint32_t seed)
| Set random clock gating seed. More...
__STATIC_INLINE uint32_t | ll_pkc_get_random_clock_gating_seed (pkc_regs_t *PKCx)
| Get random clock gating seed. More...
__STATIC_INLINE void | ll_pkc_enable_it_done (pkc_regs_t *PKCx)
| Enable the operation done interrupt. More...
__STATIC_INLINE void | ll_pkc_enable_it_err (pkc_regs_t *PKCx)
| Enable the operation error interrupt. More...
__STATIC_INLINE void | ll_pkc_enable_it_big_add_overflow (pkc_regs_t *PKCx)
| Enable the big integer overflow interrupt. More...
__STATIC_INLINE void | ll_pkc_disable_it_done (pkc_regs_t *PKCx)
| Disable the operation done interrupt. More...
__STATIC_INLINE void | ll_pkc_disable_it_err (pkc_regs_t *PKCx)
| Disable the operation error interrupt. More...
__STATIC_INLINE void | ll_pkc_disable_it_big_add_overflow (pkc_regs_t *PKCx)
| Disable the big integer overflow interrupt. More...
__STATIC_INLINE uint32_t | ll_pkc_is_enable_it_done (pkc_regs_t *PKCx)
| Indicate whether the operation done interrupt is enable. More...
__STATIC_INLINE uint32_t | ll_pkc_is_enable_it_err (pkc_regs_t *PKCx)
| Indicate whether the operation error interrupt is enable. More...
__STATIC_INLINE uint32_t | ll_pkc_is_enable_it_big_add_overflow (pkc_regs_t *PKCx)
| Indicate whether the big integer overflow interrupt is enable. More...
__STATIC_INLINE uint32_t | ll_pkc_is_action_flag_it_done (pkc_regs_t *PKCx)
| Indicate whether the operation done interrupt is pending. More...
__STATIC_INLINE uint32_t | ll_pkc_is_action_flag_it_err (pkc_regs_t *PKCx)
| Indicate whether the operation error interrupt is pending. More...
__STATIC_INLINE uint32_t | ll_pkc_is_action_flag_it_big_add_overflow (pkc_regs_t *PKCx)
| Indicate whether the big integer overflow interrupt is pending. More...
__STATIC_INLINE void | ll_pkc_clear_flag_it_done (pkc_regs_t *PKCx)
| Clear the operation done interrupt flag. More...
__STATIC_INLINE void | ll_pkc_clear_flag_it_err (pkc_regs_t *PKCx)
| Clear the operation error interrupt flag. More...
__STATIC_INLINE void | ll_pkc_clear_flag_it_big_add_overflow (pkc_regs_t *PKCx)
| Clear the big integer overflow interrupt flag. More...
__STATIC_INLINE uint32_t | ll_pkc_is_action_flag_busy (pkc_regs_t *PKCx)
| Indicate whether the busy flag is set. More...
error_status_t | ll_pkc_deinit (pkc_regs_t *PKCx)
| De-initialize PKC registers (Registers restored to their default values). More...
error_status_t | ll_pkc_init (pkc_regs_t *PKCx, ll_pkc_init_t *p_pkc_init)
| Initialize PKC registers according to the specified parameters in p_pkc_init. More...
void | ll_pkc_struct_init (ll_pkc_init_t *p_pkc_init)
| Set each field of a ll_pkc_init_t type structure to default value. More...

## Detailed Description

Header file containing functions prototypes of PKC LL library.

Author
  BLE Driver Team

Attention

  ##### Copyright (c) 2019 GOODIX

All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of GOODIX nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Definition in file gr55xx_ll_pkc.h.