This document consists of sections titled with Driver Overview, Data Structures, Enumerations, Functions, etc., each with an overview list and detailed documentation. It is recommended to read the Driver Overview first for it includes a comprehensive description of the peripheral, driver and driver changes. Other sections give detailed information for APIs, enums, macros, etc., for your further reference.
|
struct | mcm_core_fault_attribute_t |
| The structure of core fault attributes, contains access type, access size, access direction, etc. More...
|
|
struct | mcm_resource_protection_config_t |
| The structure of the resource protection config, the set value can be used only when the resource protection is enabled, and this value can be changed only when the resource protection is disabled. More...
|
|
|
enum | _mcm_status_flags { kMCM_CoreFaultErrorInterruptFlag = MCM_CFISR_CFEI_MASK
} |
| The enumeration of status flags, including core fault error interrupt flag and core fault error data lost flag. More...
|
|
enum | mcm_datapath_width_t {
kMCM_Datapath32b = 0U,
kMCM_Datapath64b = 1U
} |
| The enumeration of datapath width, including 32 bits and 64 bits. More...
|
|
enum | mcm_axbs_dma_core_priority_t {
kMCM_AxbsPriorityCoreHigherThanDMA = 0U,
kMCM_AxbsPriorityCoreDMARoundRobin
} |
| The enumeration of DMA controller priority in the Crossbar switch arbitration scheme. More...
|
|
enum | mcm_last_fault_access_dir_t {
kMCM_CoreRead = 0U,
kMCM_CoreWrite = 1U
} |
| The enumeration of last faulted core access direction. More...
|
|
enum | mcm_last_fault_access_size_t {
kMCM_Access8b = 0U,
kMCM_Access16b = 1U,
kMCM_Access32b = 2U
} |
| The enumeration of last faulted core access size. More...
|
|
enum | mcm_last_fault_access_type_t {
kMCM_AccessInstruction = 0U,
kMCM_AccessData = 1U
} |
| The enumeration of last faulted core access type. More...
|
|
enum | mcm_last_fault_access_location_t {
kMCM_ErrOnInstructionBus = 0U,
kMCM_ErrOnOperandABus = 1U,
kMCM_ErrOnOperandBBus = 2U
} |
| The enumeration of last captured fault Location. More...
|
|
struct mcm_core_fault_attribute_t |
uint8_t mcm_core_fault_attribute_t::bitReserved1 |
bool mcm_core_fault_attribute_t::bBufferable |
- true Last faulted core access is bufferable.
- false Last faulted core access is non-bufferable.
uint8_t mcm_core_fault_attribute_t::bitReserved2 |
struct mcm_resource_protection_config_t |
bool mcm_resource_protection_config_t::bEnableResourceProtection |
- true Enable Resource protection.
- false Disable Resource protection.
uint8_t mcm_resource_protection_config_t::u8FlashBaseAddress |
uint8_t mcm_resource_protection_config_t::u8RamBaseAddress |
uint32_t mcm_resource_protection_config_t::u32ResourceProtectionOtherSP |
Enumerator |
---|
kMCM_CoreFaultErrorInterruptFlag |
A bus error has occurred.
|
Enumerator |
---|
kMCM_Datapath32b |
Datapath width is 32 bits.
|
kMCM_Datapath64b |
Datapath width is 64 bits.
|
Enumerator |
---|
kMCM_AxbsPriorityCoreHigherThanDMA |
Fixed-priority arbitration is selected: DSC core has a higher priority than the DMA Controller's priority.
|
kMCM_AxbsPriorityCoreDMARoundRobin |
Round-robin priority arbitration is selected: DMA Controller and DSC core have equal priority.
|
Enumerator |
---|
kMCM_CoreRead |
Core read access.
|
kMCM_CoreWrite |
Core write access.
|
Enumerator |
---|
kMCM_Access8b |
Last faulted core access size is 8-bit.
|
kMCM_Access16b |
Last faulted core access size is 16-bit.
|
kMCM_Access32b |
Last faulted core access size is 32-bit.
|
Enumerator |
---|
kMCM_AccessInstruction |
Last faulted core access is instruction.
|
kMCM_AccessData |
Last faulted core access is data.
|
Enumerator |
---|
kMCM_ErrOnInstructionBus |
Error occurred on M0 (instruction bus).
|
kMCM_ErrOnOperandABus |
Error occurred on M1 (operand A bus).
|
kMCM_ErrOnOperandBBus |
Error occurred on M2 (operand B bus).
|
static uint16_t MCM_GetCrossbarSwitchSlaveConfig |
( |
MCM_Type * |
base | ) |
|
|
inlinestatic |
- Parameters
-
- Returns
- Crossbar switch (AXBS) slave configuration, each bit in the return value indicates if there is a corresponding connection to the AXBS slave input port. For example if the result is 0x1, it means a bus slave connection to AXBS input port 0 is present.
static uint16_t MCM_GetCrossbarSwitchMasterConfig |
( |
MCM_Type * |
base | ) |
|
|
inlinestatic |
- Parameters
-
- Returns
- Crossbar switch (AXBS) master configuration, each bit in the return value indicates if there is a corresponding connection to the AXBS master input port. For example if the result is 0x1, it means a bus master connection to AXBS input port 0 is present.
static void MCM_DisableDSP56800EXCoreInstructions |
( |
MCM_Type * |
base, |
|
|
bool |
bDisable |
|
) |
| |
|
inlinestatic |
- Parameters
-
base | MCM peripheral base address. |
bDisable | Used to enable/disable 32-bit multiply and MAC instructions.
- true BFSC and 32-bit multiply and MAC instructions disabled.
- false BFSC and 32-bit multiply and MAC instructions enabled.
|
static void MCM_DisableCoreReverseCarry |
( |
MCM_Type * |
base, |
|
|
bool |
bDisable |
|
) |
| |
|
inlinestatic |
- Parameters
-
base | MCM peripheral base address. |
bDisable | Used to enable/disable reverse carry.
- true Disable bit-reverse addressing mode.
- false Enable bit-reverse addressing mode.
|
static void MCM_DisableDSP56800EXNewShadowRegion |
( |
MCM_Type * |
base, |
|
|
bool |
bDisable |
|
) |
| |
|
inlinestatic |
- Parameters
-
base | MCM peripheral base address. |
bDisable | Used to disable/enable the additional AGU shadow register on the DPS core.
- true Only the AGU shadow registers supported by the DSP56800E core are enabled.
- false The additional AGU shadow registers on the DSP56800EX core are also enabled.
|
static void MCM_DisableCoreInstructionBuffer |
( |
MCM_Type * |
base, |
|
|
bool |
bDisable |
|
) |
| |
|
inlinestatic |
- Parameters
-
base | MCM peripheral base address. |
bDisable | Used to disable/enable core longword instruction buffer.
- true Disable core longword instruction buffer.
- false Enable core longword instruction buffer.
|
static void MCM_DisableFlashMemoryControllerStall |
( |
MCM_Type * |
base, |
|
|
bool |
bDisable |
|
) |
| |
|
inlinestatic |
- Parameters
-
base | MCM peripheral base address. |
bDisable | Used to disable/enable stall logic.
- true Stall logic is disabled. While a flash memory command is executing, an attempted flash memory access causes a bus error.
- false Stall logic is disabled. While a flash memory command is executing, a flash memory access can occur without causing a bus error. The flash memory command completes execution, and then the flash memory access occurs.
|
static uint32_t MCM_GetCoreFaultAddr |
( |
MCM_Type * |
base | ) |
|
|
inlinestatic |
- Parameters
-
- Returns
- address of the last core access terminated with an error response.
static uint32_t MCM_GetCoreFaultData |
( |
MCM_Type * |
base | ) |
|
|
inlinestatic |
- Parameters
-
- Returns
- The data associated with the last faulted processor write data access.
static void MCM_EnableCoreFaultInterrupt |
( |
MCM_Type * |
base, |
|
|
bool |
bEnable |
|
) |
| |
|
inlinestatic |
- Parameters
-
base | MCM peripheral base address. |
bEnable | Used to enable/disable the core fault error interrupt.
- true Enables core fault error interrupt, so an error interrupt will be generated to the interrupt controller on a faulted system bus cycle.
- false Disables core fault error interrupt, so an error interrupt will not be generated to the interrupt controller on a faulted system bus cycle.
|
static uint8_t MCM_GetCoreFaultStatusFlags |
( |
MCM_Type * |
base | ) |
|
|
inlinestatic |
- Parameters
-
base | MCM peripheral base address. |
- Returns
- The current status flags, should be the OR'ed value of _mcm_status_flags.
static void MCM_ClearCoreFaultStatusFlags |
( |
MCM_Type * |
base, |
|
|
uint8_t |
u8StatusFlags |
|
) |
| |
|
inlinestatic |
- Parameters
-
base | MCM peripheral base address. |
u8StatusFlags | The status flags to be cleared, should be the OR'ed value of _mcm_status_flags. |
static void MCM_EnableResourceProtection |
( |
MCM_Type * |
base, |
|
|
bool |
bEnable |
|
) |
| |
|
inlinestatic |
- Parameters
-
base | MCM peripheral base address. |
bEnable | Used to enable/disable memory resource protection.
- true Enable memory resource protection.
- false Disable memory resource protection.
|
static void MCM_LockResourceProtectionRegisters |
( |
MCM_Type * |
base | ) |
|
|
inlinestatic |
- Parameters
-
base | MCM peripheral base address. |
- Parameters
-
- Return values
-
kStatus_Success | Succeed to setting resource protection related options. |
kStatus_Fail | Fail to set resource protection related options. |
static uint32_t MCM_GetResourceProtectionIllegalFaultPC |
( |
MCM_Type * |
base | ) |
|
|
inlinestatic |
- Parameters
-
base | MCM peripheral base address. |
- Returns
- The resource protection illegal faulting PC.
static bool MCM_IsResourceProtectionIllegalFaultValid |
( |
MCM_Type * |
base | ) |
|
|
inlinestatic |
- Parameters
-
base | MCM peripheral base address. |
- Return values
-
true | The resource protection illegal PC fault has occurred. |
false | The resource protection illegal PC fault has not occurred. |
static void MCM_ClearResourceProtectionIllegalFaultValid |
( |
MCM_Type * |
base | ) |
|
|
inlinestatic |
- Parameters
-
base | MCM peripheral base address. |
static uint32_t MCM_GetResourceProtectionMisalignedFaultPC |
( |
MCM_Type * |
base | ) |
|
|
inlinestatic |
- Parameters
-
base | MCM peripheral base address. |
- Returns
- The resource protection misaligned faulting PC.
static bool MCM_IsResourceProtectionMisalignedFaultValid |
( |
MCM_Type * |
base | ) |
|
|
inlinestatic |
- Parameters
-
base | MCM peripheral base address. |
- Return values
-
true | The resource protection misaligned PC fault has occurred. |
false | The resource protection misaligned PC fault has not occurred. |
static void MCM_ClearResourceProtectionMisalignedFaultValid |
( |
MCM_Type * |
base | ) |
|
|
inlinestatic |
- Parameters
-
base | MCM peripheral base address. |