HPM SDK
HPMicro Software Development Kit
hpm_rng_drv.h File Reference
#include "hpm_common.h"
#include "hpm_rng_regs.h"

Go to the source code of this file.

Enumerations

enum  { status_rng_busy = ((uint32_t)( status_group_rng )*1000U + (uint32_t)( 1 )) , status_rng_selftest_failed = ((uint32_t)( status_group_rng )*1000U + (uint32_t)( 2 )) , status_rng_not_available = ((uint32_t)( status_group_rng )*1000U + (uint32_t)( 3 )) }
 

Functions

hpm_stat_t rng_init (RNG_Type *ptr)
 
hpm_stat_t rng_rand_wait (RNG_Type *ptr, void *buf, uint32_t count_in_byte)
 
hpm_stat_t rng_rand_no_wait (RNG_Type *ptr, void *buf, uint32_t count_in_byte)
 
hpm_stat_t rng_feed_rand_to_sdp (RNG_Type *ptr)
 
hpm_stat_t rng_run_selftest (RNG_Type *ptr)
 
static void rng_sw_reset (RNG_Type *ptr)
 
static void rng_clear_interrupt_error (RNG_Type *ptr)
 
static void rng_clear_interrupt (RNG_Type *ptr)
 
static bool rng_is_busy (RNG_Type *ptr)
 
static bool rng_need_reseed (RNG_Type *ptr)
 

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
status_rng_busy 
status_rng_selftest_failed 
status_rng_not_available 

Function Documentation

◆ rng_clear_interrupt()

static void rng_clear_interrupt ( RNG_Type ptr)
inlinestatic

◆ rng_clear_interrupt_error()

static void rng_clear_interrupt_error ( RNG_Type ptr)
inlinestatic

◆ rng_feed_rand_to_sdp()

hpm_stat_t rng_feed_rand_to_sdp ( RNG_Type ptr)

◆ rng_init()

hpm_stat_t rng_init ( RNG_Type ptr)

◆ rng_is_busy()

static bool rng_is_busy ( RNG_Type ptr)
inlinestatic

◆ rng_need_reseed()

static bool rng_need_reseed ( RNG_Type ptr)
inlinestatic

◆ rng_rand_no_wait()

hpm_stat_t rng_rand_no_wait ( RNG_Type ptr,
void *  buf,
uint32_t  count_in_byte 
)

◆ rng_rand_wait()

hpm_stat_t rng_rand_wait ( RNG_Type ptr,
void *  buf,
uint32_t  count_in_byte 
)

◆ rng_run_selftest()

hpm_stat_t rng_run_selftest ( RNG_Type ptr)

◆ rng_sw_reset()

static void rng_sw_reset ( RNG_Type ptr)
inlinestatic