On 28.09.18 12:07, Claudio Scordino wrote:
> Dear all,
> 
> I'm implementing a minimal inmate driver for i210 and I wonder if I have
> understood correctly the usage of the MSI-X functions.
> 
> Once the correct MSI-X bar (BAR3, in my case) has been mapped, I need to 
> invoke
> both:
> 
>     int_set_handler(IRQ_VECTOR, irq_handler);
>     pci_msix_set_vector(bdf, IRQ_VECTOR, 0);
> 
> Is IRQ_VECTOR the value reported by lspci ("pin A routed to IRQ 18") or is it
> the value reported by /proc/interrupts (129, in my specific case) ?

No, it is a free APIC vector in your setup. Can be anything >= 32.

> 
> BTW, what is the third argument of pci_msix_set_vector() supposed to contain ?

If your device is able and configured to generate multiple MSI-X vectors (e.g.
one vector per queue, one for maintenance etc.), this links them to the desired
APIC vector.

Jan

-- 
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux

-- 
You received this message because you are subscribed to the Google Groups 
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to