RTEMS  5.0.0
Functions
icm.c File Reference
#include "chip.h"

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. More...
 
void ICM_EnableMonitor (uint8_t region)
 Enable region monitoring for given region. More...
 
void ICM_DisableMonitor (uint8_t region)
 Disable region monitoring for given region. More...
 
void ICM_Configure (uint32_t mode)
 Configures an ICM peripheral with the specified parameters. More...
 
void ICM_EnableIt (uint32_t sources)
 Enables the selected interrupts sources on a ICM peripheral. More...
 
void ICM_DisableIt (uint32_t sources)
 Disables the selected interrupts sources on a ICM peripheral. More...
 
uint32_t ICM_GetIntStatus (void)
 Get the current interrupt status register of the given ICM peripheral. More...
 
uint32_t ICM_GetStatus (void)
 Get the current status register of the given ICM peripheral. More...
 
uint32_t ICM_GetUStatus (void)
 Get the undefined access status register of the given ICM peripheral. More...
 
void ICM_SetDescStartAddress (uint32_t addr)
 Set descriptor area start address register. More...
 
void ICM_SetHashStartAddress (uint32_t addr)
 Set hash area start address register. More...
 
void ICM_SetInitHashValue (uint32_t val)
 Set ICM user initial Hash value register. More...
 

Detailed Description

Implementation of True Random Number Generator (ICM)

Function Documentation

◆ ICM_Configure()

void ICM_Configure ( uint32_t  mode)

Configures an ICM peripheral with the specified parameters.

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

◆ ICM_DisableIt()

void ICM_DisableIt ( uint32_t  sources)

Disables the selected interrupts sources on a ICM peripheral.

Parameters
sourcesBitwise OR of selected interrupt sources.

◆ ICM_DisableMonitor()

void ICM_DisableMonitor ( uint8_t  region)

Disable region monitoring for given region.

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

◆ ICM_EnableIt()

void ICM_EnableIt ( uint32_t  sources)

Enables the selected interrupts sources on a ICM peripheral.

Parameters
sourcesBitwise OR of selected interrupt sources.

◆ ICM_EnableMonitor()

void ICM_EnableMonitor ( uint8_t  region)

Enable region monitoring for given region.

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

◆ ICM_GetIntStatus()

uint32_t ICM_GetIntStatus ( void  )

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

Returns
ICM status register.

◆ ICM_GetStatus()

uint32_t ICM_GetStatus ( void  )

Get the current status register of the given ICM peripheral.

Returns
ICM status register.

◆ ICM_GetUStatus()

uint32_t ICM_GetUStatus ( void  )

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

Returns
ICM status register.

◆ ICM_ReComputeHash()

void ICM_ReComputeHash ( uint8_t  region)

Recompute Internal hash.

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

◆ ICM_SetDescStartAddress()

void ICM_SetDescStartAddress ( uint32_t  addr)

Set descriptor area start address register.

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

◆ ICM_SetHashStartAddress()

void ICM_SetHashStartAddress ( uint32_t  addr)

Set hash area start address register.

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

◆ ICM_SetInitHashValue()

void ICM_SetInitHashValue ( uint32_t  val)

Set ICM user initial Hash value register.

Parameters
valInitial Hash Value