This module contains the Low-Level APIs to program and use the MCRC module.
◆ SDL_MCRC_MAX_CTRL_FLAG_VAL
#define SDL_MCRC_MAX_CTRL_FLAG_VAL (1U) |
The max value that can be passed to Bus Tracing Control APIs as the ctrlFlag value.
◆ SDL_MCRC_INTR_PRIORITY_CH1_FAIL
#define SDL_MCRC_INTR_PRIORITY_CH1_FAIL (0x1U) |
Offset return for channel 1 fail interrupt
◆ SDL_MCRC_INTR_PRIORITY_CH2_FAIL
#define SDL_MCRC_INTR_PRIORITY_CH2_FAIL (0x2U) |
Offset return for channel 1 fail interrupt
◆ SDL_MCRC_INTR_PRIORITY_CH3_FAIL
#define SDL_MCRC_INTR_PRIORITY_CH3_FAIL (0x3U) |
Offset return for channel 1 fail interrupt
◆ SDL_MCRC_INTR_PRIORITY_CH4_FAIL
#define SDL_MCRC_INTR_PRIORITY_CH4_FAIL (0x4U) |
Offset return for channel 4 fail interrupt
◆ SDL_MCRC_INTR_PRIORITY_CH1_COMPRESSION_DONE
#define SDL_MCRC_INTR_PRIORITY_CH1_COMPRESSION_DONE (0x9U) |
Offset return for channel 1 compression done interrupt
◆ SDL_MCRC_INTR_PRIORITY_CH2_COMPRESSION_DONE
#define SDL_MCRC_INTR_PRIORITY_CH2_COMPRESSION_DONE (0xaU) |
Offset return for channel 2 compression done interrupt
◆ SDL_MCRC_INTR_PRIORITY_CH3_COMPRESSION_DONE
#define SDL_MCRC_INTR_PRIORITY_CH3_COMPRESSION_DONE (0xbU) |
Offset return for channel 3 compression done interrupt
◆ SDL_MCRC_INTR_PRIORITY_CH4_COMPRESSION_DONE
#define SDL_MCRC_INTR_PRIORITY_CH4_COMPRESSION_DONE (0xcU) |
Offset return for channel 4 compression done interrupt
◆ SDL_MCRC_INTR_PRIORITY_CH1_OVERRUN
#define SDL_MCRC_INTR_PRIORITY_CH1_OVERRUN (0x11U) |
Offset return for channel 1 overrun interrupt
◆ SDL_MCRC_INTR_PRIORITY_CH2_OVERRUN
#define SDL_MCRC_INTR_PRIORITY_CH2_OVERRUN (0x12U) |
Offset return for channel 2 overrun interrupt
◆ SDL_MCRC_INTR_PRIORITY_CH3_OVERRUN
#define SDL_MCRC_INTR_PRIORITY_CH3_OVERRUN (0x13U) |
Offset return for channel 3 overrun interrupt
◆ SDL_MCRC_INTR_PRIORITY_CH4_OVERRUN
#define SDL_MCRC_INTR_PRIORITY_CH4_OVERRUN (0x14U) |
Offset return for channel 4 overrun interrupt
◆ SDL_MCRC_INTR_PRIORITY_CH1_UNDERRUN
#define SDL_MCRC_INTR_PRIORITY_CH1_UNDERRUN (0x19U) |
Offset return for channel 1 underrun interrupt
◆ SDL_MCRC_INTR_PRIORITY_CH2_UNDERRUN
#define SDL_MCRC_INTR_PRIORITY_CH2_UNDERRUN (0x1aU) |
Offset return for channel 2 underrun interrupt
◆ SDL_MCRC_INTR_PRIORITY_CH3_UNDERRUN
#define SDL_MCRC_INTR_PRIORITY_CH3_UNDERRUN (0x1bU) |
Offset return for channel 3 underrun interrupt
◆ SDL_MCRC_INTR_PRIORITY_CH4_UNDERRUN
#define SDL_MCRC_INTR_PRIORITY_CH4_UNDERRUN (0x1cU) |
Offset return for channel 4 underrun interrupt
◆ SDL_MCRC_INTR_PRIORITY_CH1_TIMEOUT
#define SDL_MCRC_INTR_PRIORITY_CH1_TIMEOUT (0x21U) |
Offset return for channel 1 timeout interrupt
◆ SDL_MCRC_INTR_PRIORITY_CH2_TIMEOUT
#define SDL_MCRC_INTR_PRIORITY_CH2_TIMEOUT (0x22U) |
Offset return for channel 2 timeout interrupt
◆ SDL_MCRC_INTR_PRIORITY_CH3_TIMEOUT
#define SDL_MCRC_INTR_PRIORITY_CH3_TIMEOUT (0x23U) |
Offset return for channel 3 timeout interrupt
◆ SDL_MCRC_INTR_PRIORITY_CH4_TIMEOUT
#define SDL_MCRC_INTR_PRIORITY_CH4_TIMEOUT (0x24U) |
Offset return for channel 4 timeout interrupt
◆ SDL_MCRC_DATA_BUS_ITCM_MASK
#define SDL_MCRC_DATA_BUS_ITCM_MASK (SDL_MCRC_MCRC_BUS_SEL_ITC_MEN_MASK) |
Select tracing control of instruction TCM
◆ SDL_MCRC_DATA_BUS_DTCM_MASK
#define SDL_MCRC_DATA_BUS_DTCM_MASK (SDL_MCRC_MCRC_BUS_SEL_DTC_MEN_MASK) |
Select tracing control of data TCM
◆ SDL_MCRC_DATA_BUS_VBUSM_MASK
#define SDL_MCRC_DATA_BUS_VBUSM_MASK (SDL_MCRC_MCRC_BUS_SEL_MEN_MASK) |
Select tracing control of VBUSM
◆ SDL_MCRC_DATA_BUS_MASK_ALL
#define SDL_MCRC_DATA_BUS_MASK_ALL |
Value: (SDL_MCRC_MCRC_BUS_SEL_ITC_MEN_MASK | \
SDL_MCRC_MCRC_BUS_SEL_DTC_MEN_MASK | \
SDL_MCRC_MCRC_BUS_SEL_MEN_MASK)
Select tracing control of all data buses
◆ SDL_MCRC_IntrPriority_t
◆ SDL_MCRC_DataBusMask_t
MCRC data bus type mask selected for tracing control.
◆ SDL_MCRC_getHighestPriorityIntrStatus()
int32_t SDL_MCRC_getHighestPriorityIntrStatus |
( |
SDL_MCRC_InstType |
instance, |
|
|
uint32_t * |
pIntVecAddr |
|
) |
| |
This API is used to get the pending interrupt with highest priority.
- Parameters
-
instance | MCRC instance either MCU or Main. |
pIntVecAddr | Pointer to highest priority pending interrupt vector address defined in SDL_MCRC_IntrPriority_t |
- Returns
- status MCRC get interrupt vector address status SDL_PASS: success SDL_EBADARGS: failure, indicate the bad input arguments
◆ SDL_MCRC_dataBusTracingCtrl()
This API is used to control the MCRC data bus tracing.
Data tracing is only available on channel 1, when it is enabled, the operation mode is automatically reset to data capture mode on channel 1
- Parameters
-
instance | MCRC instance either MCU or Main. |
ctrlFlag | Data bus tracing control flag. 1U: enable data tracing. 0U: disable data tracing. |
dataBusMask | Data bus mask bits for which what data buses are to be selected. Values given by SDL_MCRC_DataBusMask_t. |
busEnableMask | Data bus enable mask bits for which what data buses are to be enabled or disabled. Values given by SDL_MCRC_DataBusMask_t. |
- Returns
- status MCRC data bus tracing control status SDL_PASS: success SDL_EBADARGS: failure, indicate the bad input arguments
◆ SDL_MCRC_verifyBusTracingCtrl()
This API is used to verify the control the MCRC data bus tracing.
- Parameters
-
instance | MCRC instance either MCU or Main. |
ctrlFlag | Data bus tracing control flag. 1U: enable data tracing. 0U: disable data tracing. |
dataBusMask | Data bus mask bits for which what data buses are to be selected. Values given by SDL_MCRC_DataBusMask_t. |
busEnableMask | Data bus enable mask bits for which what data buses are to be enabled or disabled. Values given by SDL_MCRC_DataBusMask_t. |
- Returns
- status MCRC verify data bus tracing control status SDL_PASS: success SDL_EBADARGS: failure, indicate the bad input arguments SDL_EFAIL: failure, indicate verify failed