Microchip® Advanced Software Framework

cmcc.h File Reference

CMCC software driver for SAM.

This file defines a useful set of functions for the CMCC on SAM devices.

Copyright (c) 2013-2018 Microchip Technology Inc. and its subsidiaries.

#include "compiler.h"

Data Structures

struct  cmcc_config
 CMCC Configuration structure. More...
 

Enumerations

enum  cmcc_monitor_mode {
  CMCC_CYCLE_COUNT_MODE = 0,
  CMCC_IHIT_COUNT_MODE,
  CMCC_DHIT_COUNT_MODE
}
 Cache Controller Monitor Counter Mode. More...
 

Functions

static void cmcc_disable (Cmcc *const p_cmcc)
 Disable Cache Controller. More...
 
static void cmcc_disable_monitor (Cmcc *const p_cmcc)
 Disable Cache Controller monitor. More...
 
void cmcc_enable (Cmcc *const p_cmcc)
 Enable Cache Controller. More...
 
static void cmcc_enable_monitor (Cmcc *const p_cmcc)
 Enable Cache Controller monitor. More...
 
void cmcc_get_config_defaults (struct cmcc_config *const cfg)
 Initializes a CMCC configuration structure to defaults. More...
 
static uint32_t cmcc_get_monitor_cnt (Cmcc *const p_cmcc)
 Get the Cache Controller monitor status. More...
 
static uint32_t cmcc_get_status (Cmcc *const p_cmcc)
 Get the Cache Controller status. More...
 
bool cmcc_init (Cmcc *const p_cmcc, struct cmcc_config *const cfg)
 Initialize the CMCC module. More...
 
static void cmcc_invalidate_all (Cmcc *const p_cmcc)
 Cache Controller Invalidate All. More...
 
void cmcc_invalidate_line (Cmcc *const p_cmcc, uint32_t cmcc_way, uint32_t cmcc_index)
 Cache Controller Invalidate by Line Operation. More...
 
static void cmcc_reset_monitor (Cmcc *const p_cmcc)
 Reset event counter register. More...
 
static void cmcc_set_config (Cmcc *const p_cmcc, struct cmcc_config *const cfg)
 Configure the CMCC. More...