RTEMS: bsps/arm/atsam/contrib/libraries/libchip/source/icm.c File Reference

| RTEMS 5.4-rc2

Loading...
Searching...
No Matches
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.
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)

## Function Documentation

## ◆ ICM_Configure()

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).

## ◆ ICM_DisableIt()

void ICM_DisableIt | ( | uint32_t | sources | ) |

Disables the selected interrupts sources on a ICM peripheral.

Parameters

  sources | Bitwise OR of selected interrupt sources.

## ◆ ICM_DisableMonitor()

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.

## ◆ ICM_EnableIt()

void ICM_EnableIt | ( | uint32_t | sources | ) |

Enables the selected interrupts sources on a ICM peripheral.

Parameters

  sources | Bitwise OR of selected interrupt sources.

## ◆ ICM_EnableMonitor()

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.

## ◆ 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,When | REHASH[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

  addr | start 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

  addr | start 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

  val | Initial Hash Value