SemiDrive SSDK Appication Program Interface PTG3.0
trng.h File Reference
#include "register_base_addr.h"

Go to the source code of this file.

Detailed Description

Macro Definition Documentation

◆ RO_SRC_EN1

#define RO_SRC_EN1   (*(volatile uint32_t *)(TRNG_BASE_ADDR + 0x0080))

◆ RO_SRC_EN2

#define RO_SRC_EN2   (*(volatile uint32_t *)(TRNG_BASE_ADDR + 0x0084))

◆ SCLK_FREQ

#define SCLK_FREQ   (*(volatile uint32_t *)(TRNG_BASE_ADDR + 0x0088))

◆ TERO_CNT

#define TERO_CNT (   i)    (*(volatile uint32_t *)(TRNG_BASE_ADDR + 0x00C0 + 4 * i))

◆ TERO_CR

#define TERO_CR   (*(volatile uint32_t *)(TRNG_BASE_ADDR + 0x00B0))

◆ TERO_DR

#define TERO_DR   (*(volatile uint32_t *)(TRNG_BASE_ADDR + 0x00D4))

◆ TERO_RCR

#define TERO_RCR (   i)    (*(volatile uint32_t *)(TRNG_BASE_ADDR + 0x00E0 + 4 * i))

◆ TERO_SR

#define TERO_SR   (*(volatile uint32_t *)(TRNG_BASE_ADDR + 0x00D0))

◆ TERO_THOLD

#define TERO_THOLD   (*(volatile uint32_t *)(TRNG_BASE_ADDR + 0x00B4))

◆ TRNG_CR

#define TRNG_CR   (*(volatile uint32_t *)(TRNG_BASE_ADDR + 0x0000))

◆ TRNG_DATA_INT_OFFSET

#define TRNG_DATA_INT_OFFSET   (16)

◆ TRNG_DR

#define TRNG_DR   (*(volatile uint32_t *)(TRNG_BASE_ADDR + 0x000C))

◆ TRNG_GLOBAL_INT_OFFSET

#define TRNG_GLOBAL_INT_OFFSET   (24)

◆ TRNG_HT_CR

#define TRNG_HT_CR   (*(volatile uint32_t *)(TRNG_BASE_ADDR + 0x0060))

◆ TRNG_HT_SR

#define TRNG_HT_SR   (*(volatile uint32_t *)(TRNG_BASE_ADDR + 0x0070))

◆ TRNG_MSEL

#define TRNG_MSEL   (*(volatile uint32_t *)(TRNG_BASE_ADDR + 0x0004))

◆ TRNG_READ_EMPTY_INT_OFFSET

#define TRNG_READ_EMPTY_INT_OFFSET   (17)

◆ TRNG_RESEED

#define TRNG_RESEED   (*(volatile uint32_t *)(TRNG_BASE_ADDR + 0x0040))

◆ TRNG_RO_ENTROPY_OFFSET

#define TRNG_RO_ENTROPY_OFFSET   (4)

◆ TRNG_RO_FREQ_16

#define TRNG_RO_FREQ_16   (2)

◆ TRNG_RO_FREQ_32

#define TRNG_RO_FREQ_32   (3)

◆ TRNG_RO_FREQ_4

#define TRNG_RO_FREQ_4   (0)

◆ TRNG_RO_FREQ_8

#define TRNG_RO_FREQ_8   (1)

◆ TRNG_SR

#define TRNG_SR   (*(volatile uint32_t *)(TRNG_BASE_ADDR + 0x0008))

◆ TRNG_TERO_ENTROPY_OFFSET

#define TRNG_TERO_ENTROPY_OFFSET   (8)

◆ TRNG_TERO_THRESHOLD_OFFSET

#define TRNG_TERO_THRESHOLD_OFFSET   (24)

◆ TRNG_VERSION

#define TRNG_VERSION   (*(volatile uint32_t *)(TRNG_BASE_ADDR + 0x0010))

Enumeration Type Documentation

◆ TRNG_RET_CODE

Enumerator
TRNG_SUCCESS 
TRNG_BUFFER_NULL 
TRNG_INVALID_INPUT 
TRNG_INVALID_CONFIG 
TRNG_HT_ERROR 
TRNG_ERROR 

Function Documentation

◆ get_hrng()

uint32_t get_hrng ( uint8_t *  dst,
uint32_t  size 
)

◆ get_rand()

uint32_t get_rand ( uint8_t *  rand,
uint32_t  bytes 
)

◆ get_rand_fast()

uint32_t get_rand_fast ( uint8_t *  rand,
uint32_t  bytes 
)

◆ get_rand_internal()

uint32_t get_rand_internal ( uint8_t *  a,
uint32_t  bytes 
)

◆ get_tero_rand()

uint32_t get_tero_rand ( uint8_t *  a,
uint32_t  bytes 
)

◆ tero_disable()

void tero_disable ( void  )

◆ tero_enable()

void tero_enable ( void  )

◆ tero_entropy_config()

uint32_t tero_entropy_config ( uint8_t  cfg)

◆ tero_set_osc_sel()

void tero_set_osc_sel ( uint8_t  cfg)

◆ tero_set_osc_times_lower_limit()

void tero_set_osc_times_lower_limit ( uint16_t  value)

◆ tero_set_osc_times_upper_limit()

void tero_set_osc_times_upper_limit ( uint16_t  value)

◆ tero_set_output_osc_times()

void tero_set_output_osc_times ( void  )

◆ tero_set_output_rng()

void tero_set_output_rng ( void  )

◆ tero_set_stop_threshold()

uint32_t tero_set_stop_threshold ( uint8_t  threshold_value)

◆ trng_data_int_disable()

void trng_data_int_disable ( void  )

◆ trng_data_int_enable()

void trng_data_int_enable ( void  )

◆ trng_disable()

void trng_disable ( void  )

◆ trng_empty_read_int_disable()

void trng_empty_read_int_disable ( void  )

◆ trng_empty_read_int_enable()

void trng_empty_read_int_enable ( void  )

◆ trng_enable()

void trng_enable ( void  )

◆ trng_get_version()

uint32_t trng_get_version ( void  )

◆ trng_global_int_disable()

void trng_global_int_disable ( void  )

◆ trng_global_int_enable()

void trng_global_int_enable ( void  )

◆ trng_reseed()

void trng_reseed ( void  )

◆ trng_ro_entropy_config()

uint32_t trng_ro_entropy_config ( uint8_t  cfg)

◆ trng_ro_sub_entropy_config()

uint32_t trng_ro_sub_entropy_config ( uint8_t  sn,
uint16_t  cfg 
)

◆ trng_set_freq()

uint32_t trng_set_freq ( uint8_t  freq)

◆ trng_set_mode()

void trng_set_mode ( uint8_t  with_post_processing)