S32 SDK

Detailed Description

Trigger MUX Control Peripheral Driver.

Overview

This section describes the programing interface of the TRGMUX driver. The TRGMUX driver configures the TRGMUX (Trigger Mux Control). The Trigger MUX module allows software to configure the trigger inputs for various peripherals.

TRGMUX Driver model building

TRGMUX can be seen as a collection of muxes, each mux allowing to select one output from a list of input signals that are common to all muxes. The TRGMUX registers are identical as structure and all bitfields can be read/written using the TRGMUX driver API.

TRGMUX Initialization

The TRGMUX_DRV_Init() function is used to initialize the TRGMUX IP. The function receives as parameter a pointer to the trgmux_user_config_t structure. This structure contains a variable number of mappings between a trgmux trigger source and a trgmux target modules.

TRGMUX API

After initialization, the driver allows the reconfiguration of the source trigger for a given target module using TRGMUX_DRV_SetTrigSourceForTargetModule(). Also, by using TRGMUX_DRV_SetLockForTargetModule(), a given target module can be locked, such that it cannot be updated until a reset.

Data Structures

struct  trgmux_inout_mapping_config_t
 Configuration structure for pairing source triggers with target modules. More...
 
struct  trgmux_user_config_t
 User configuration structure for the TRGMUX driver. More...
 

Enumerations

enum  trgmux_trigger_source_t {
  TRGMUX_TRIG_SOURCE_DISABLED = 0x0U, TRGMUX_TRIG_SOURCE_VDD = 0x1U, TRGMUX_TRIG_SOURCE_TRGMUX_IN0 = 0x2U, TRGMUX_TRIG_SOURCE_TRGMUX_IN1 = 0x3U,
  TRGMUX_TRIG_SOURCE_TRGMUX_IN2 = 0x4U, TRGMUX_TRIG_SOURCE_TRGMUX_IN3 = 0x5U, TRGMUX_TRIG_SOURCE_TRGMUX_IN4 = 0x6U, TRGMUX_TRIG_SOURCE_TRGMUX_IN5 = 0x7U,
  TRGMUX_TRIG_SOURCE_TRGMUX_IN6 = 0x8U, TRGMUX_TRIG_SOURCE_TRGMUX_IN7 = 0x9U, TRGMUX_TRIG_SOURCE_TRGMUX_IN8 = 0xAU, TRGMUX_TRIG_SOURCE_TRGMUX_IN9 = 0xBU,
  TRGMUX_TRIG_SOURCE_TRGMUX_IN10 = 0xCU, TRGMUX_TRIG_SOURCE_TRGMUX_IN11 = 0xDU, TRGMUX_TRIG_SOURCE_CMP0_OUT = 0xEU, TRGMUX_TRIG_SOURCE_LPIT_CH0 = 0x11U,
  TRGMUX_TRIG_SOURCE_LPIT_CH1 = 0x12U, TRGMUX_TRIG_SOURCE_LPIT_CH2 = 0x13U, TRGMUX_TRIG_SOURCE_LPIT_CH3 = 0x14U, TRGMUX_TRIG_SOURCE_LPTMR0 = 0x15U,
  TRGMUX_TRIG_SOURCE_FTM0_INIT_TRIG = 0x16U, TRGMUX_TRIG_SOURCE_FTM0_EXT_TRIG = 0x17U, TRGMUX_TRIG_SOURCE_FTM1_INIT_TRIG = 0x18U, TRGMUX_TRIG_SOURCE_FTM1_EXT_TRIG = 0x19U,
  TRGMUX_TRIG_SOURCE_FTM2_INIT_TRIG = 0x1AU, TRGMUX_TRIG_SOURCE_FTM2_EXT_TRIG = 0x1BU, TRGMUX_TRIG_SOURCE_FTM3_INIT_TRIG = 0x1CU, TRGMUX_TRIG_SOURCE_FTM3_EXT_TRIG = 0x1DU,
  TRGMUX_TRIG_SOURCE_ADC0_SC1A_COCO = 0x1EU, TRGMUX_TRIG_SOURCE_ADC0_SC1B_COCO = 0x1FU, TRGMUX_TRIG_SOURCE_ADC1_SC1A_COCO = 0x20U, TRGMUX_TRIG_SOURCE_ADC1_SC1B_COCO = 0x21U,
  TRGMUX_TRIG_SOURCE_PDB0_CH0_TRIG = 0x22U, TRGMUX_TRIG_SOURCE_PDB0_PULSE_OUT = 0x24U, TRGMUX_TRIG_SOURCE_PDB1_CH0_TRIG = 0x25U, TRGMUX_TRIG_SOURCE_PDB1_PULSE_OUT = 0x27U,
  TRGMUX_TRIG_SOURCE_RTC_ALARM = 0x2BU, TRGMUX_TRIG_SOURCE_RTC_SECOND = 0x2CU, TRGMUX_TRIG_SOURCE_FLEXIO_TRIG0 = 0x2DU, TRGMUX_TRIG_SOURCE_FLEXIO_TRIG1 = 0x2EU,
  TRGMUX_TRIG_SOURCE_FLEXIO_TRIG2 = 0x2FU, TRGMUX_TRIG_SOURCE_FLEXIO_TRIG3 = 0x30U, TRGMUX_TRIG_SOURCE_LPUART0_RX_DATA = 0x31U, TRGMUX_TRIG_SOURCE_LPUART0_TX_DATA = 0x32U,
  TRGMUX_TRIG_SOURCE_LPUART0_RX_IDLE = 0x33U, TRGMUX_TRIG_SOURCE_LPUART1_RX_DATA = 0x34U, TRGMUX_TRIG_SOURCE_LPUART1_TX_DATA = 0x35U, TRGMUX_TRIG_SOURCE_LPUART1_RX_IDLE = 0x36U,
  TRGMUX_TRIG_SOURCE_LPI2C0_MASTER_TRIG = 0x37U, TRGMUX_TRIG_SOURCE_LPI2C0_SLAVE_TRIG = 0x38U, TRGMUX_TRIG_SOURCE_LPSPI0_FRAME = 0x3BU, TRGMUX_TRIG_SOURCE_LPSPI0_RX_DATA = 0x3CU,
  TRGMUX_TRIG_SOURCE_LPSPI1_FRAME = 0x3DU, TRGMUX_TRIG_SOURCE_LPSPI1_RX_DATA = 0x3EU, TRGMUX_TRIG_SOURCE_SIM_SW_TRIG = 0x3FU
}
 Describes all possible inputs (trigger sources) of the TRGMUX IP
Note: entries in this enum are affected by FEATURE_TRGMUX_HAS_EXTENDED_NUM_TRIGS, which is device dependent and controlled from "device_name"_features.h file. More...
 
enum  trgmux_target_module_t {
  TRGMUX_TARGET_MODULE_DMA_CH0 = 0U, TRGMUX_TARGET_MODULE_DMA_CH1 = 1U, TRGMUX_TARGET_MODULE_DMA_CH2 = 2U, TRGMUX_TARGET_MODULE_DMA_CH3 = 3U,
  TRGMUX_TARGET_MODULE_TRGMUX_OUT0 = 4U, TRGMUX_TARGET_MODULE_TRGMUX_OUT1 = 5U, TRGMUX_TARGET_MODULE_TRGMUX_OUT2 = 6U, TRGMUX_TARGET_MODULE_TRGMUX_OUT3 = 7U,
  TRGMUX_TARGET_MODULE_TRGMUX_OUT4 = 8U, TRGMUX_TARGET_MODULE_TRGMUX_OUT5 = 9U, TRGMUX_TARGET_MODULE_TRGMUX_OUT6 = 10U, TRGMUX_TARGET_MODULE_TRGMUX_OUT7 = 11U,
  TRGMUX_TARGET_MODULE_ADC0_ADHWT_TLA0 = 12U, TRGMUX_TARGET_MODULE_ADC0_ADHWT_TLA1 = 13U, TRGMUX_TARGET_MODULE_ADC0_ADHWT_TLA2 = 14U, TRGMUX_TARGET_MODULE_ADC0_ADHWT_TLA3 = 15U,
  TRGMUX_TARGET_MODULE_ADC1_ADHWT_TLA0 = 16U, TRGMUX_TARGET_MODULE_ADC1_ADHWT_TLA1 = 17U, TRGMUX_TARGET_MODULE_ADC1_ADHWT_TLA2 = 18U, TRGMUX_TARGET_MODULE_ADC1_ADHWT_TLA3 = 19U,
  TRGMUX_TARGET_MODULE_CMP0_SAMPLE_INPUT = 28U, TRGMUX_TARGET_MODULE_FTM0_HWTRIG0 = 40U, TRGMUX_TARGET_MODULE_FTM0_FAULT0 = 41U, TRGMUX_TARGET_MODULE_FTM0_FAULT1 = 42U,
  TRGMUX_TARGET_MODULE_FTM0_FAULT2 = 43U, TRGMUX_TARGET_MODULE_FTM1_HWTRIG0 = 44U, TRGMUX_TARGET_MODULE_FTM1_FAULT0 = 45U, TRGMUX_TARGET_MODULE_FTM1_FAULT1 = 46U,
  TRGMUX_TARGET_MODULE_FTM1_FAULT2 = 47U, TRGMUX_TARGET_MODULE_FTM2_HWTRIG0 = 48U, TRGMUX_TARGET_MODULE_FTM2_FAULT0 = 49U, TRGMUX_TARGET_MODULE_FTM2_FAULT1 = 50U,
  TRGMUX_TARGET_MODULE_FTM2_FAULT2 = 51U, TRGMUX_TARGET_MODULE_FTM3_HWTRIG0 = 52U, TRGMUX_TARGET_MODULE_FTM3_FAULT0 = 53U, TRGMUX_TARGET_MODULE_FTM3_FAULT1 = 54U,
  TRGMUX_TARGET_MODULE_FTM3_FAULT2 = 55U, TRGMUX_TARGET_MODULE_PDB0_TRG_IN = 56U, TRGMUX_TARGET_MODULE_PDB1_TRG_IN = 60U, TRGMUX_TARGET_MODULE_FLEXIO_TRG_TIM0 = 68U,
  TRGMUX_TARGET_MODULE_FLEXIO_TRG_TIM1 = 69U, TRGMUX_TARGET_MODULE_FLEXIO_TRG_TIM2 = 70U, TRGMUX_TARGET_MODULE_FLEXIO_TRG_TIM3 = 71U, TRGMUX_TARGET_MODULE_LPIT_TRG_CH0 = 72U,
  TRGMUX_TARGET_MODULE_LPIT_TRG_CH1 = 73U, TRGMUX_TARGET_MODULE_LPIT_TRG_CH2 = 74U, TRGMUX_TARGET_MODULE_LPIT_TRG_CH3 = 75U, TRGMUX_TARGET_MODULE_LPUART0_TRG = 76U,
  TRGMUX_TARGET_MODULE_LPUART1_TRG = 80U, TRGMUX_TARGET_MODULE_LPI2C0_TRG = 84U, TRGMUX_TARGET_MODULE_LPSPI0_TRG = 92U, TRGMUX_TARGET_MODULE_LPSPI1_TRG = 96U,
  TRGMUX_TARGET_MODULE_LPTMR0_ALT0 = 100U
}
 Describes all possible outputs (target modules) of the TRGMUX IP
Note: entries in this enum are affected by FEATURE_TRGMUX_HAS_EXTENDED_NUM_TRIGS, which is device dependent and controlled from "device_name"_features.h file. More...
 

Functions

status_t TRGMUX_DRV_Init (const uint32_t instance, const trgmux_user_config_t *const trgmuxUserConfig)
 Initialize a TRGMUX instance for operation. More...
 
status_t TRGMUX_DRV_Deinit (const uint32_t instance)
 Reset to default values the source triggers corresponding to all target modules, if none of the target modules is locked. More...
 
status_t TRGMUX_DRV_SetTrigSourceForTargetModule (const uint32_t instance, const trgmux_trigger_source_t triggerSource, const trgmux_target_module_t targetModule)
 Configure a source trigger for a selected target module. More...
 
trgmux_trigger_source_t TRGMUX_DRV_GetTrigSourceForTargetModule (const uint32_t instance, const trgmux_target_module_t targetModule)
 Get the source trigger configured for a target module. More...
 
void TRGMUX_DRV_SetLockForTargetModule (const uint32_t instance, const trgmux_target_module_t targetModule)
 Locks the TRGMUX register of a target module. More...
 
bool TRGMUX_DRV_GetLockForTargetModule (const uint32_t instance, const trgmux_target_module_t targetModule)
 Get the Lock bit status of the TRGMUX register of a target module. More...
 

Enumeration Type Documentation

Describes all possible outputs (target modules) of the TRGMUX IP
Note: entries in this enum are affected by FEATURE_TRGMUX_HAS_EXTENDED_NUM_TRIGS, which is device dependent and controlled from "device_name"_features.h file.

Implements : trgmux_target_module_t_Class

Enumerator
TRGMUX_TARGET_MODULE_DMA_CH0 
TRGMUX_TARGET_MODULE_DMA_CH1 
TRGMUX_TARGET_MODULE_DMA_CH2 
TRGMUX_TARGET_MODULE_DMA_CH3 
TRGMUX_TARGET_MODULE_TRGMUX_OUT0 
TRGMUX_TARGET_MODULE_TRGMUX_OUT1 
TRGMUX_TARGET_MODULE_TRGMUX_OUT2 
TRGMUX_TARGET_MODULE_TRGMUX_OUT3 
TRGMUX_TARGET_MODULE_TRGMUX_OUT4 
TRGMUX_TARGET_MODULE_TRGMUX_OUT5 
TRGMUX_TARGET_MODULE_TRGMUX_OUT6 
TRGMUX_TARGET_MODULE_TRGMUX_OUT7 
TRGMUX_TARGET_MODULE_ADC0_ADHWT_TLA0 
TRGMUX_TARGET_MODULE_ADC0_ADHWT_TLA1 
TRGMUX_TARGET_MODULE_ADC0_ADHWT_TLA2 
TRGMUX_TARGET_MODULE_ADC0_ADHWT_TLA3 
TRGMUX_TARGET_MODULE_ADC1_ADHWT_TLA0 
TRGMUX_TARGET_MODULE_ADC1_ADHWT_TLA1 
TRGMUX_TARGET_MODULE_ADC1_ADHWT_TLA2 
TRGMUX_TARGET_MODULE_ADC1_ADHWT_TLA3 
TRGMUX_TARGET_MODULE_CMP0_SAMPLE_INPUT 
TRGMUX_TARGET_MODULE_FTM0_HWTRIG0 
TRGMUX_TARGET_MODULE_FTM0_FAULT0 
TRGMUX_TARGET_MODULE_FTM0_FAULT1 
TRGMUX_TARGET_MODULE_FTM0_FAULT2 
TRGMUX_TARGET_MODULE_FTM1_HWTRIG0 
TRGMUX_TARGET_MODULE_FTM1_FAULT0 
TRGMUX_TARGET_MODULE_FTM1_FAULT1 
TRGMUX_TARGET_MODULE_FTM1_FAULT2 
TRGMUX_TARGET_MODULE_FTM2_HWTRIG0 
TRGMUX_TARGET_MODULE_FTM2_FAULT0 
TRGMUX_TARGET_MODULE_FTM2_FAULT1 
TRGMUX_TARGET_MODULE_FTM2_FAULT2 
TRGMUX_TARGET_MODULE_FTM3_HWTRIG0 
TRGMUX_TARGET_MODULE_FTM3_FAULT0 
TRGMUX_TARGET_MODULE_FTM3_FAULT1 
TRGMUX_TARGET_MODULE_FTM3_FAULT2 
TRGMUX_TARGET_MODULE_PDB0_TRG_IN 
TRGMUX_TARGET_MODULE_PDB1_TRG_IN 
TRGMUX_TARGET_MODULE_FLEXIO_TRG_TIM0 
TRGMUX_TARGET_MODULE_FLEXIO_TRG_TIM1 
TRGMUX_TARGET_MODULE_FLEXIO_TRG_TIM2 
TRGMUX_TARGET_MODULE_FLEXIO_TRG_TIM3 
TRGMUX_TARGET_MODULE_LPIT_TRG_CH0 
TRGMUX_TARGET_MODULE_LPIT_TRG_CH1 
TRGMUX_TARGET_MODULE_LPIT_TRG_CH2 
TRGMUX_TARGET_MODULE_LPIT_TRG_CH3 
TRGMUX_TARGET_MODULE_LPUART0_TRG 
TRGMUX_TARGET_MODULE_LPUART1_TRG 
TRGMUX_TARGET_MODULE_LPI2C0_TRG 
TRGMUX_TARGET_MODULE_LPSPI0_TRG 
TRGMUX_TARGET_MODULE_LPSPI1_TRG 
TRGMUX_TARGET_MODULE_LPTMR0_ALT0 

Definition at line 145 of file trgmux_driver.h.

Describes all possible inputs (trigger sources) of the TRGMUX IP
Note: entries in this enum are affected by FEATURE_TRGMUX_HAS_EXTENDED_NUM_TRIGS, which is device dependent and controlled from "device_name"_features.h file.

Implements : trgmux_trigger_source_t_Class

Enumerator
TRGMUX_TRIG_SOURCE_DISABLED 
TRGMUX_TRIG_SOURCE_VDD 
TRGMUX_TRIG_SOURCE_TRGMUX_IN0 
TRGMUX_TRIG_SOURCE_TRGMUX_IN1 
TRGMUX_TRIG_SOURCE_TRGMUX_IN2 
TRGMUX_TRIG_SOURCE_TRGMUX_IN3 
TRGMUX_TRIG_SOURCE_TRGMUX_IN4 
TRGMUX_TRIG_SOURCE_TRGMUX_IN5 
TRGMUX_TRIG_SOURCE_TRGMUX_IN6 
TRGMUX_TRIG_SOURCE_TRGMUX_IN7 
TRGMUX_TRIG_SOURCE_TRGMUX_IN8 
TRGMUX_TRIG_SOURCE_TRGMUX_IN9 
TRGMUX_TRIG_SOURCE_TRGMUX_IN10 
TRGMUX_TRIG_SOURCE_TRGMUX_IN11 
TRGMUX_TRIG_SOURCE_CMP0_OUT 
TRGMUX_TRIG_SOURCE_LPIT_CH0 
TRGMUX_TRIG_SOURCE_LPIT_CH1 
TRGMUX_TRIG_SOURCE_LPIT_CH2 
TRGMUX_TRIG_SOURCE_LPIT_CH3 
TRGMUX_TRIG_SOURCE_LPTMR0 
TRGMUX_TRIG_SOURCE_FTM0_INIT_TRIG 
TRGMUX_TRIG_SOURCE_FTM0_EXT_TRIG 
TRGMUX_TRIG_SOURCE_FTM1_INIT_TRIG 
TRGMUX_TRIG_SOURCE_FTM1_EXT_TRIG 
TRGMUX_TRIG_SOURCE_FTM2_INIT_TRIG 
TRGMUX_TRIG_SOURCE_FTM2_EXT_TRIG 
TRGMUX_TRIG_SOURCE_FTM3_INIT_TRIG 
TRGMUX_TRIG_SOURCE_FTM3_EXT_TRIG 
TRGMUX_TRIG_SOURCE_ADC0_SC1A_COCO 
TRGMUX_TRIG_SOURCE_ADC0_SC1B_COCO 
TRGMUX_TRIG_SOURCE_ADC1_SC1A_COCO 
TRGMUX_TRIG_SOURCE_ADC1_SC1B_COCO 
TRGMUX_TRIG_SOURCE_PDB0_CH0_TRIG 
TRGMUX_TRIG_SOURCE_PDB0_PULSE_OUT 
TRGMUX_TRIG_SOURCE_PDB1_CH0_TRIG 
TRGMUX_TRIG_SOURCE_PDB1_PULSE_OUT 
TRGMUX_TRIG_SOURCE_RTC_ALARM 
TRGMUX_TRIG_SOURCE_RTC_SECOND 
TRGMUX_TRIG_SOURCE_FLEXIO_TRIG0 
TRGMUX_TRIG_SOURCE_FLEXIO_TRIG1 
TRGMUX_TRIG_SOURCE_FLEXIO_TRIG2 
TRGMUX_TRIG_SOURCE_FLEXIO_TRIG3 
TRGMUX_TRIG_SOURCE_LPUART0_RX_DATA 
TRGMUX_TRIG_SOURCE_LPUART0_TX_DATA 
TRGMUX_TRIG_SOURCE_LPUART0_RX_IDLE 
TRGMUX_TRIG_SOURCE_LPUART1_RX_DATA 
TRGMUX_TRIG_SOURCE_LPUART1_TX_DATA 
TRGMUX_TRIG_SOURCE_LPUART1_RX_IDLE 
TRGMUX_TRIG_SOURCE_LPI2C0_MASTER_TRIG 
TRGMUX_TRIG_SOURCE_LPI2C0_SLAVE_TRIG 
TRGMUX_TRIG_SOURCE_LPSPI0_FRAME 
TRGMUX_TRIG_SOURCE_LPSPI0_RX_DATA 
TRGMUX_TRIG_SOURCE_LPSPI1_FRAME 
TRGMUX_TRIG_SOURCE_LPSPI1_RX_DATA 
TRGMUX_TRIG_SOURCE_SIM_SW_TRIG 

Definition at line 68 of file trgmux_driver.h.

Function Documentation

status_t TRGMUX_DRV_Deinit ( const uint32_t  instance)

Reset to default values the source triggers corresponding to all target modules, if none of the target modules is locked.

Parameters
[in]instanceThe TRGMUX instance number.
Returns
Execution status:
STATUS_SUCCESS
STATUS_ERROR - if at least one of the target module register is locked.

Definition at line 118 of file trgmux_driver.c.

bool TRGMUX_DRV_GetLockForTargetModule ( const uint32_t  instance,
const trgmux_target_module_t  targetModule 
)

Get the Lock bit status of the TRGMUX register of a target module.

This function gets the value of the LK bit from the TRGMUX register corresponding to the selected target module.

Parameters
[in]instanceThe TRGMUX instance number.
[in]targetModuleOne of the values in the trgmux_target_module_t enumeration
Returns
true - if the selected targetModule register is locked
false - if the selected targetModule register is not locked

Definition at line 207 of file trgmux_driver.c.

trgmux_trigger_source_t TRGMUX_DRV_GetTrigSourceForTargetModule ( const uint32_t  instance,
const trgmux_target_module_t  targetModule 
)

Get the source trigger configured for a target module.

This function returns the TRGMUX source trigger linked to a selected target module.

Parameters
[in]instanceThe TRGMUX instance number.
[in]targetModuleOne of the values in the trgmux_target_module_t enumeration.
Returns
Enum value corresponding to the trigger source configured for the selected target module.

Definition at line 172 of file trgmux_driver.c.

status_t TRGMUX_DRV_Init ( const uint32_t  instance,
const trgmux_user_config_t *const  trgmuxUserConfig 
)

Initialize a TRGMUX instance for operation.

This function first resets the source triggers of all TRGMUX target modules to their default values, then configures the TRGMUX with all the user defined in-out mappings. If at least one of the target modules is locked, the function will not change any of the TRGMUX target modules and return error code. This example shows how to set up the trgmux_user_config_t parameters and how to call the TRGMUX_DRV_Init() function with the required parameters:

1 trgmux_user_config_t trgmuxConfig;
2 trgmux_inout_mapping_config_t trgmuxInoutMappingConfig[] =
3 {
4  {TRGMUX_TRIG_SOURCE_TRGMUX_IN9, TRGMUX_TARGET_MODULE_DMA_CH0, false},
5  {TRGMUX_TRIG_SOURCE_FTM1_EXT_TRIG, TRGMUX_TARGET_MODULE_TRGMUX_OUT4, true}
6 };
7 
8 trgmuxConfig.numInOutMappingConfigs = 2;
9 trgmuxConfig.inOutMappingConfig = trgmuxInoutMappingConfig;
10 
11 TRGMUX_DRV_Init(instance, &trgmuxConfig);
Parameters
[in]instanceThe TRGMUX instance number.
[in]trgmuxUserConfigPointer to the user configuration structure.
Returns
Execution status:
STATUS_SUCCESS
STATUS_ERROR - if at least one of the target module register is locked.

Definition at line 75 of file trgmux_driver.c.

void TRGMUX_DRV_SetLockForTargetModule ( const uint32_t  instance,
const trgmux_target_module_t  targetModule 
)

Locks the TRGMUX register of a target module.

This function sets the LK bit of the TRGMUX register corresponding to the selected target module. Please note that some TRGMUX registers can contain up to 4 SEL bitfields, meaning that these registers can be used to configure up to 4 target modules independently. Because the LK bit is only one per register, the configuration of all target modules referred from that register will be locked.

Parameters
[in]instanceThe TRGMUX instance number.
[in]targetModuleOne of the values in the trgmux_target_module_t enumeration

Definition at line 189 of file trgmux_driver.c.

status_t TRGMUX_DRV_SetTrigSourceForTargetModule ( const uint32_t  instance,
const trgmux_trigger_source_t  triggerSource,
const trgmux_target_module_t  targetModule 
)

Configure a source trigger for a selected target module.

This function configures a TRGMUX link between a source trigger and a target module, if the requested target module is not locked.

Parameters
[in]instanceThe TRGMUX instance number.
[in]triggerSourceOne of the values in the trgmux_trigger_source_t enumeration
[in]targetModuleOne of the values in the trgmux_target_module_t enumeration
Returns
Execution status:
STATUS_SUCCESS
STATUS_ERROR - if requested target module is locked

Definition at line 139 of file trgmux_driver.c.