Zephyr API Documentation  2.7.0-rc2
A Scalable Open Source RTOS
Entropy Interface

Entropy Interface. More...

Data Structures

struct  entropy_driver_api
 

Macros

#define ENTROPY_BUSYWAIT   BIT(0)
 

Typedefs

typedef int(* entropy_get_entropy_t) (const struct device *dev, uint8_t *buffer, uint16_t length)
 Callback API to get entropy. More...
 
typedef int(* entropy_get_entropy_isr_t) (const struct device *dev, uint8_t *buffer, uint16_t length, uint32_t flags)
 Callback API to get entropy from an ISR. More...
 

Functions

int entropy_get_entropy (const struct device *dev, uint8_t *buffer, uint16_t length)
 Fills a buffer with entropy. Blocks if required in order to generate the necessary random data. More...
 
static int entropy_get_entropy_isr (const struct device *dev, uint8_t *buffer, uint16_t length, uint32_t flags)
 Fills a buffer with entropy in a non-blocking or busy-wait manner. Callable from ISRs. More...
 

Detailed Description

Entropy Interface.

Macro Definition Documentation

◆ ENTROPY_BUSYWAIT

#define ENTROPY_BUSYWAIT   BIT(0)

Typedef Documentation

◆ entropy_get_entropy_isr_t

entropy_get_entropy_isr_t

#include <include/drivers/entropy.h>

Callback API to get entropy from an ISR.

See entropy_get_entropy_isr() for argument description

◆ entropy_get_entropy_t

entropy_get_entropy_t

#include <include/drivers/entropy.h>

Callback API to get entropy.

See entropy_get_entropy() for argument description

Function Documentation

◆ entropy_get_entropy()

int entropy_get_entropy ( const struct device dev,
uint8_t buffer,
uint16_t  length 
)

#include <include/drivers/entropy.h>

Fills a buffer with entropy. Blocks if required in order to generate the necessary random data.

Parameters
devPointer to the entropy device.
bufferBuffer to fill with entropy.
lengthBuffer length.
Return values
0on success.
-ERRNOerrno code on error.

◆ entropy_get_entropy_isr()

static int entropy_get_entropy_isr ( const struct device dev,
uint8_t buffer,
uint16_t  length,
uint32_t  flags 
)
inlinestatic

#include <include/drivers/entropy.h>

Fills a buffer with entropy in a non-blocking or busy-wait manner. Callable from ISRs.

Parameters
devPointer to the device structure.
bufferBuffer to fill with entropy.
lengthBuffer length.
flagsFlags to modify the behavior of the call.
Return values
numberof bytes filled with entropy or -error.