Hi,
I am developing a system using iMX6q where we have a requirement to support a PCIe device that requires MSI-X.
According to the imx6q reference manual the pcie bridge does support MSI-X, but the driver (pcie-designware.c) does not.
Specifically, in the dw_msi_setup_irq function we see:
if (desc->msi_attrib.is_msix)
return -EINVAL;
and tracing confirms that when we bring up the pcie device, that function is called explicitly not supporting MSI-X.
So my question: Is there a version of the pcie-designware.c driver, or an alternative driver, that supports MSI-X? (I have already checked fslc kernel and mainline latest version.)
Many thanks,
Kieran Tyrrell.
Hi Kieran
for MSI-X please check Chapter 40 PCI Express Root Complex Driverattached Linux Manual.
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi Igor,
Thanks for the reply, but I have checked the Linux Reference Manual and I see no reference to MSI-X.
In case of confusion, MSI is working fine, but we require MSI-X to support some extra features of the PCIe device.
Thanks, Kieran.
Hi Kieran
sorry, I overlooked MSI-X, seems you are right i.mx6q pcie module does not support it.
Best regards
igor