libopencm3
A free/libre/open-source firmware library for various ARM Cortex-M3 microcontrollers.
rng_common_v1.h File Reference
#include <stdbool.h>
#include <stdint.h>
Include dependency graph for rng_common_v1.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define RNG_CR   MMIO32(RNG_BASE + 0x00)
 
#define RNG_SR   MMIO32(RNG_BASE + 0x04)
 
#define RNG_DR   MMIO32(RNG_BASE + 0x08)
 
#define RNG_CR_RNGEN   (1 << 2)
 
#define RNG_CR_IE   (1 << 3)
 
#define RNG_SR_DRDY   (1 << 0)
 
#define RNG_SR_CECS   (1 << 1)
 
#define RNG_SR_SECS   (1 << 2)
 
#define RNG_SR_CEIS   (1 << 5)
 
#define RNG_SR_SEIS   (1 << 6)
 

Functions

void rng_enable (void)
 Enable the Random Number Generator peripheral. More...
 
void rng_disable (void)
 Disable the Random Number Generator peripheral. More...
 
void rng_interrupt_enable (void)
 Enable the Random Number Generator error interrupt. More...
 
void rng_interrupt_disable (void)
 Disable the Random Number Generator error interrupt. More...
 
bool rng_get_random (uint32_t *rand_nr)
 Randomizes a number (non-blocking). More...
 
uint32_t rng_get_random_blocking (void)
 Get a random number and block until it works. More...