AM62x MCU+ SDK  09.02.00

Detailed Description

Configures peripherals within the interrupt subsystem according to the valid configuration provided. The following tisci_msg_rm_irq_set_req::valid_params valid bit combinations are allowed: Interrupt Router Mux Configuration - Configures an IR input to output mux connection where the IR input is the src_index and the IR output is the dst_host_irq. Both the src_id and the dst_id must be the device ID of the IR being configured. tisci_msg_rm_irq_set_req::dst_id valid bit == STRUE tisci_msg_rm_irq_set_req::dst_host_irq valid bit == STRUE tisci_msg_rm_irq_set_req::ia_id valid bit == SFALSE tisci_msg_rm_irq_set_req::vint valid bit == SFALSE tisci_msg_rm_irq_set_req::global_event valid bit == SFALSE tisci_msg_rm_irq_set_req::vint_status_bit_index valid bit == SFALSE Event to VINT Mapping Only - Configure peripheral OES register and add an event mapping to an IA VINT tisci_msg_rm_irq_set_req::dst_id valid bit == SFALSE tisci_msg_rm_irq_set_req::dst_host_irq valid bit == SFALSE tisci_msg_rm_irq_set_req::ia_id valid bit == STRUE tisci_msg_rm_irq_set_req::vint valid bit == STRUE tisci_msg_rm_irq_set_req::global_event valid bit == STRUE tisci_msg_rm_irq_set_req::vint_status_bit_index valid bit == STRUE OES Register Programming Only - Only programs the OES register of the source. Useful for setting UDMAP trigger events and any other events that are not translated to the interrupt domain: tisci_msg_rm_irq_set_req::dst_id valid bit == SFALSE tisci_msg_rm_irq_set_req::dst_host_irq valid bit == SFALSE tisci_msg_rm_irq_set_req::ia_id valid bit == SFALSE tisci_msg_rm_irq_set_req::vint valid bit == SFALSE tisci_msg_rm_irq_set_req::global_event valid bit == STRUE tisci_msg_rm_irq_set_req::vint_status_bit_index valid bit == SFALSE.

Parameters
hdrStandard TISCI header
valid_paramsBitfield defining validity of interrupt route set parameters. The interrupt route set fields are not valid, and will not be used for route set, if their corresponding valid bit is zero. Valid bit usage: 0 - Valid bit for tisci_msg_rm_irq_set_req::dst_id 1 - Valid bit for tisci_msg_rm_irq_set_req::dst_host_irq 2 - Valid bit for tisci_msg_rm_irq_set_req::ia_id 3 - Valid bit for tisci_msg_rm_irq_set_req::vint 4 - Valid bit for tisci_msg_rm_irq_set_req::global_event 5 - Valid bit for tisci_msg_rm_irq_set_req::vint_status_bit_index 31 - Valid bit for tisci_msg_rm_irq_set_req::secondary_host
src_idID of interrupt source peripheral
src_indexInterrupt source index within source peripheral
dst_idSoC IR device ID when the valid_params bits are set to configure an IR mux connection. This field is only valid if TISCI_MSG_VALUE_RM_DST_ID_VALID is set in tisci_msg_rm_irq_set_req::valid_params.
dst_host_irqSoC IR output index when the valid_params are set to configure an IR mux connection. This field is only valid if TISCI_MSG_VALUE_RM_DST_HOST_IRQ_VALID is set in tisci_msg_rm_irq_set_req::valid_params.
ia_idDevice ID of interrupt aggregator in which the virtual interrupt resides. This field is only valid if TISCI_MSG_VALUE_RM_IA_ID_VALID is set in tisci_msg_rm_irq_set_req::valid_params.
vintVirtual interrupt number when configuring an interrupt aggregator. This field is only valid if TISCI_MSG_VALUE_RM_VINT_VALID is set in tisci_msg_rm_irq_set_req::valid_params.
global_eventGlobal event mapped to interrupt aggregator virtual interrupt status bit. The event is programmed into the OES register of the interrupt source. This field is only applicable for interrupt source's capable of generating global events. This field is only valid if TISCI_MSG_VALUE_RM_GLOBAL_EVENT_VALID is set in tisci_msg_rm_irq_set_req::valid_params.
vint_status_bit_indexVirtual interrupt status bit to set if the interrupt route utilizes an interrupt aggregator virtual interrupt. The host processor uses the status bit value within the interrupt aggregator vint status register to find the source event which triggered the interrupt. This field is only valid if TISCI_MSG_VALUE_RM_VINT_STATUS_BIT_INDEX_VALID is set in tisci_msg_rm_irq_set_req::valid_params.
secondary_hostThe secondary host value is used to replace the host value for the message that will be sent. This way a message can be sent to configure a different host. For example, if the host is A, and the secondary host is B, then when host A sends a message, the message will be configured for host B, even though host A was the one that sent the message. However, this field is only valid if TISCI_MSG_VALUE_RM_SECONDARY_HOST_VALID is set in tisci_msg_rm_irq_set_req::valid_params.

Data Fields

struct tisci_header hdr
 
uint32_t valid_params
 
uint16_t src_id
 
uint16_t src_index
 
uint16_t dst_id
 
uint16_t dst_host_irq
 
uint16_t ia_id
 
uint16_t vint
 
uint16_t global_event
 
uint8_t vint_status_bit_index
 
uint8_t secondary_host
 

Field Documentation

◆ hdr

struct tisci_header tisci_msg_rm_irq_set_req::hdr

◆ valid_params

uint32_t tisci_msg_rm_irq_set_req::valid_params

◆ src_id

uint16_t tisci_msg_rm_irq_set_req::src_id

◆ src_index

uint16_t tisci_msg_rm_irq_set_req::src_index

◆ dst_id

uint16_t tisci_msg_rm_irq_set_req::dst_id

◆ dst_host_irq

uint16_t tisci_msg_rm_irq_set_req::dst_host_irq

◆ ia_id

uint16_t tisci_msg_rm_irq_set_req::ia_id

◆ vint

uint16_t tisci_msg_rm_irq_set_req::vint

◆ global_event

uint16_t tisci_msg_rm_irq_set_req::global_event

◆ vint_status_bit_index

uint8_t tisci_msg_rm_irq_set_req::vint_status_bit_index

◆ secondary_host

uint8_t tisci_msg_rm_irq_set_req::secondary_host