dim_intr_cfg_t

Store interrupt information

Synopsis:

#include <dim.h>

typedef struct {
    uint32_t       nirq;
    uint32_t       flags;
    uint32_t       *irq_arr;
    uint64_t       *affinity_arr;
    uint32_t       *eventid_list;
    uint32_t       *vector_list;
    mbi_t           message;
    uint32_t        reserved[4];
} dim_intr_cfg_t;

Arguments:

nirq
The number of interrupts required.
flags
A pointer to an array of interrupts. The caller must preallocate an nirq-sized array of uint64_t.
affinity_arr
(Optional) A pointer to an array of CPU affinities. You must pre-allocate an nirq-sized array of uint64_t. You can specify affinities for IRQs; otherwise, default affinities will be assigned. The affinities_list values have 1:1 mapping with IRQs in the irq_list. Either the DIM_IRQ_AFFINITY_RX or DIM_IRQ_AFFINITY_TX flag must be set when passing this buffer.
eventid_list
A pointer to an array of event IDs. You must preallocate an nirq-sized array of uint32_t. The evtid_list values have 1:1 mapping with IRQs in the irq_list. Either the DIM_IRQ_AFFINITY_RX or DIM_IRQ_AFFINITY_TX flag must be set when passing this buffer.
vector_list
A pointer to an array of vectors associated with MSI and MSI-X IRQs. You must preallocate an nirq-sized array of uint32_t. The vector_list values have 1:1 mapping with IRQs in the irq_list. This field is only relevant for PCI devices on the x86 architecture.
message
Platform-specific address and data fields.
reserved
Reserved.

Library:

libdim

Use the -l dim option to qcc to link against this library.

Description:

The dim_intr_cfg_t structure stores interrupt input and output information associated with DIM.

Page updated: