SAMV71 Xplained Ultra Software Package 1.3

icm.c File Reference

#include "chip.h"

Go to the source code of this file.

Functions

void ICM_Enable (void)
 Enable ICM, the ICM controller is activated.
void ICM_Disable (void)
 Disable ICM, if a region is active, this region is terminated.
void ICM_SoftReset (void)
 Resets the ICM controller.
void ICM_ReComputeHash (uint8_t region)
 Recompute Internal hash.
void ICM_EnableMonitor (uint8_t region)
 Enable region monitoring for given region.
void ICM_DisableMonitor (uint8_t region)
 Disable region monitoring for given region.
void ICM_Configure (uint32_t mode)
 Configures an ICM peripheral with the specified parameters.
void ICM_EnableIt (uint32_t sources)
 Enables the selected interrupts sources on a ICM peripheral.
void ICM_DisableIt (uint32_t sources)
 Disables the selected interrupts sources on a ICM peripheral.
uint32_t ICM_GetIntStatus (void)
 Get the current interrupt status register of the given ICM peripheral.
uint32_t ICM_GetStatus (void)
 Get the current status register of the given ICM peripheral.
uint32_t ICM_GetUStatus (void)
 Get the undefined access status register of the given ICM peripheral.
void ICM_SetDescStartAddress (uint32_t addr)
 Set descriptor area start address register.
void ICM_SetHashStartAddress (uint32_t addr)
 Set hash area start address register.
void ICM_SetInitHashValue (uint32_t val)
 Set ICM user initial Hash value register.

Detailed Description

Implementation of True Random Number Generator (ICM)

Definition in file icm.c.


Function Documentation

void ICM_Configure ( uint32_t  mode  ) 

Configures an ICM peripheral with the specified parameters.

Parameters:
mode Desired value for the ICM mode register (see the datasheet).

Definition at line 152 of file icm.c.

void ICM_DisableIt ( uint32_t  sources  ) 

Disables the selected interrupts sources on a ICM peripheral.

Parameters:
sources Bitwise OR of selected interrupt sources.

Definition at line 170 of file icm.c.

void ICM_DisableMonitor ( uint8_t  region  ) 

Disable region monitoring for given region.

Parameters:
region,When bit RMDIS[region] is set to one, the monitoring of Region is disabled.

Definition at line 143 of file icm.c.

void ICM_EnableIt ( uint32_t  sources  ) 

Enables the selected interrupts sources on a ICM peripheral.

Parameters:
sources Bitwise OR of selected interrupt sources.

Definition at line 161 of file icm.c.

void ICM_EnableMonitor ( uint8_t  region  ) 

Enable region monitoring for given region.

Parameters:
region,When bit RMEN[region] is set to one, the monitoring of Region is activated.

Definition at line 133 of file icm.c.

uint32_t ICM_GetIntStatus ( void   ) 

Get the current interrupt status register of the given ICM peripheral.

Returns:
ICM status register.

Definition at line 179 of file icm.c.

uint32_t ICM_GetStatus ( void   ) 

Get the current status register of the given ICM peripheral.

Returns:
ICM status register.

Definition at line 188 of file icm.c.

uint32_t ICM_GetUStatus ( void   ) 

Get the undefined access status register of the given ICM peripheral.

Returns:
ICM status register.

Definition at line 198 of file icm.c.

void ICM_ReComputeHash ( uint8_t  region  ) 

Recompute Internal hash.

Parameters:
region,When REHASH[region] is set to one, the region digest is re-computed.
Note:
This bit is only available when Region monitoring is disabled.

Definition at line 123 of file icm.c.

void ICM_SetDescStartAddress ( uint32_t  addr  ) 

Set descriptor area start address register.

Parameters:
addr start address
Note:
The start address is a multiple of the total size of the data structure (64 bytes).

Definition at line 209 of file icm.c.

void ICM_SetHashStartAddress ( uint32_t  addr  ) 

Set hash area start address register.

Parameters:
addr start address
Note:
This field points at the Hash memory location. The address must be a multiple of 128 bytes.

Definition at line 220 of file icm.c.

void ICM_SetInitHashValue ( uint32_t  val  ) 

Set ICM user initial Hash value register.

Parameters:
val Initial Hash Value

Definition at line 229 of file icm.c.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines