EXMIF HAL

group nrf_exmif_hal

Hardware access layer for managing the External Memory Interface (EXMIF) peripheral.

Defines

NRF_EXMIF_MAX_MEMORY_DEVICE_SIZE

Maximum EXMIF memory size.

NRF_EXMIF_MAX_NUMBER_OF_DEVICES

Maximum number of EXMIF memory devices.

Enums

enum nrf_exmif_task_t

EXMIF tasks.

Values:

enumerator NRF_EXMIF_TASK_START

Start EXMIF peripheral power and clocks.

enumerator NRF_EXMIF_TASK_STOP

Stop EXMIF peripheral power and clocks.

Functions

NRF_STATIC_INLINE void nrf_exmif_task_trigger(NRF_EXMIF_Type *p_reg, nrf_exmif_task_t task)

Function for activating the specified EXMIF task.

Parameters:
  • p_reg[in] Pointer to the structure of registers of the peripheral.

  • task[in] Task to be activated.

NRF_STATIC_INLINE uint32_t nrf_exmif_task_address_get(NRF_EXMIF_Type const *p_reg, nrf_exmif_task_t task)

Function for getting the address of the specified EXMIF task register.

Parameters:
  • p_reg[in] Pointer to the structure of registers of the peripheral.

  • task[in] The specified task.

Returns:

Address of the specified task register.

NRF_STATIC_INLINE void nrf_exmif_reset_set(NRF_EXMIF_Type *p_reg, bool enable)

Function for enabling or disabling EXMIF reset state.

Parameters:
  • p_reg[in] Pointer to the structure of registers of the peripheral.

  • enable[in] True if reset state is to be enabled, false otherwise.

NRF_STATIC_INLINE void nrf_exmif_locked_access_set(NRF_EXMIF_Type *p_reg, bool enable)

Function for enabling or disabling locked APB access to serial memory controller.

Parameters:
  • p_reg[in] Pointer to the structure of registers of the peripheral.

  • enable[in] True if locked APB access is to be enabled, false otherwise.

NRF_STATIC_INLINE void nrf_exmif_device_config(NRF_EXMIF_Type *p_reg, uint8_t device_idx, nrf_exmif_config_t const *p_device)

Function for configuring mapping of the memory device to EXMIF peripheral.

Parameters:
  • p_reg[in] Pointer to the structure of registers of the peripheral.

  • device_idx[in] Device number to configure.

  • p_device[in] Pointer to the configuration structure of the memory device.

NRF_STATIC_INLINE void nrf_exmif_device_enable(NRF_EXMIF_Type *p_reg, uint8_t device_idx)

Function for enabling the EXMIF memory device.

Parameters:
  • p_reg[in] Pointer to the structure of registers of the peripheral.

  • device_idx[in] Device number to enable.

NRF_STATIC_INLINE void nrf_exmif_device_disable(NRF_EXMIF_Type *p_reg, uint8_t device_idx)

Function for disabling the EXMIF memory device.

Parameters:
  • p_reg[in] Pointer to the structure of registers of the peripheral.

  • device_idx[in] Device number to disable.

struct nrf_exmif_config_t
#include <nrf_exmif.h>

Structure for configuration of mapping of the memory device to the EXMIF peripheral.

Note

offset is subtracted from incoming address to produce an address used for an external memory device. It can be calculated using following equation: offset = incoming AXI address - expected base address of the memory device

Public Members

uint32_t offset

EXMIF address mapping offset.

uint32_t size

EXMIF address mapping memory size.