Kinetis SDK v.1.3 API Reference Manual  Rev. 0
Freescale Semiconductor, Inc.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
fsl_mmau_hal.h File Reference
#include <stdint.h>
#include <stdbool.h>
#include <assert.h>
#include "fsl_device_registers.h"
#include "fsl_mmau_ins.h"

Data Structures

struct  mmau_user_config_t
 Defines the structure to configure the MMAU. More...
 
struct  mmau_reg_state_t
 Defines the structure to hold states of the MMAU registers. More...
 

Macros

#define INT_MMAU_QIE   (1U<<12)
 Accumulation Overflow Interrupt Enable. More...
 
#define INT_MMAU_VIE   (1U<<13)
 Multiply or Divide Overflow Interrupt Enable. More...
 
#define INT_MMAU_DZIE   (1U<<14)
 Divide by Zero Interrupt Enable. More...
 
#define INT_MMAU_QIF   (1U<<4)
 Accumulation Overflow Interrupt Flag. More...
 
#define INT_MMAU_VIF   (1U<<5)
 Multiply or Divide Overflow Interrupt Flag. More...
 
#define INT_MMAU_DZIF   (1U<<6)
 Divide by Zero Interrupt Flag. More...
 
#define INS_MMAU_Q   (1U<<0)
 Accumulation Overflow. More...
 
#define INS_MMAU_V   (1U<<1)
 Multiply or Divide Overflow. More...
 
#define INS_MMAU_DZ   (1U<<2)
 Divide by Zero. More...
 
#define INS_MMAU_N   (1U<<3)
 Signed calculation result is negative. More...
 
#define MMAU_HAL_StoreRegStateCmd(base)   volatile mmau_reg_state_t tmp; _store_mmau_state(base, &tmp)
 Stores the MMAU operand and control registers to the software stack. More...
 
#define MMAU_HAL_RestoreRegStateCmd(base)   _restore_mmau_reg_state(base, &tmp)
 Restores the MMAU operand and control registers from the software stack. More...
 

Enumerations

enum  mmau_status_t {
  kStatus_MMAU_Success = 0U,
  kStatus_MMAU_InvalidArgument = 1U,
  kStatus_MMAU_Failed = 2U
}
 MMAU status return codes. More...
 

Functions

void MMAU_HAL_Init (MMAU_Type *base)
 Resets the control/status register into a reset state. More...
 
void MMAU_HAL_Config (MMAU_Type *base, const mmau_user_config_t *configStructPtr)
 Configures the MMAU. More...
 
static void MMAU_HAL_SetIntCmd (MMAU_Type *base, uint32_t mask)
 Sets the interrupt request sources. More...
 
static uint32_t MMAU_HAL_GetInstrFlagsCmd (MMAU_Type *base)
 Gets the instruction result flags. More...
 
static void MMAU_HAL_WriteInstrFlagsCmd (MMAU_Type *base, uint32_t mask)
 Writes the instruction result flags. More...
 
static uint32_t MMAU_HAL_GetStateCmd (MMAU_Type *base)
 Gets MMAU state. More...
 
static uint32_t MMAU_HAL_GetIntStatusFlagsCmd (MMAU_Type *base)
 Gets interrupt flags. More...
 
static void MMAU_HAL_ConfigStateCmd (MMAU_Type *base, uint32_t state)
 Configures MMAU state. More...
 
static void MMAU_HAL_ClearIntStatusFlagsCmd (MMAU_Type *base, uint32_t mask)
 Clears the interrupt flags. More...
 
static void MMAU_HAL_SetDmaCmd (MMAU_Type *base, bool enable)
 Asserts the DMA request when in IDLE (not busy) state. More...
 
static void MMAU_HAL_SetSupervisorOnlyCmd (MMAU_Type *base, bool enable)
 Sets access mode to the MMAU operand accumulator and control/status registers. More...
 
static uint32_t MMAU_HAL_GetHwRevCmd (MMAU_Type *base)
 Gets the hardware revision level. More...
 
static void _store_mmau_state (MMAU_Type *base, volatile mmau_reg_state_t *p)
 Stores the MMAU operand and the control registers. More...
 
static void _restore_mmau_reg_state (MMAU_Type *base, volatile mmau_reg_state_t *p)
 Restores the MMAU operand and control registers. More...