Multiple MSI support on virtual box
Posted: 19. Sep 2018, 21:39
Hello all,
I have a custom PCIe endpoint (generic endpoint supporting basic capabilities) and that sets Multiple MSI capability IRQ vectors to 16. But as I run the x86_64 bit ubuntu desktop OS which has the host controller that configures MSI Enable vectors[bits 6:4 in MSI control register], it always returns 1 MSI as configured.
Hence, multiple MSI is not being supported.
My kernel code path shows that PCI-MSI controller is being used which is not supporting MULTI MSI capability. I have turned on all the required IRQ_REMAP, PCI_MSI, PCI_DOMAINS*, etc.. that I seem are required to turn on the multiple MSI support by making use of the IR-PCI-MSI controller domain. But everything went in vain.
Require some help from virtual box experts regarding below queries:
- Does generic ACPI table supplied to ubuntu 18.04 64 bit OS has any effect on deciding the MSI controller being used during pci scanning?
If so, what steps do I need to consider to turn on multiple msi support.
- I could see the TI's endpoint test driver functionality works properly on ARM architecture. But on x86 it fails.
Any suggestions regarding the same are appreciated.
THanks in advance.
I have a custom PCIe endpoint (generic endpoint supporting basic capabilities) and that sets Multiple MSI capability IRQ vectors to 16. But as I run the x86_64 bit ubuntu desktop OS which has the host controller that configures MSI Enable vectors[bits 6:4 in MSI control register], it always returns 1 MSI as configured.
Hence, multiple MSI is not being supported.
My kernel code path shows that PCI-MSI controller is being used which is not supporting MULTI MSI capability. I have turned on all the required IRQ_REMAP, PCI_MSI, PCI_DOMAINS*, etc.. that I seem are required to turn on the multiple MSI support by making use of the IR-PCI-MSI controller domain. But everything went in vain.
Require some help from virtual box experts regarding below queries:
- Does generic ACPI table supplied to ubuntu 18.04 64 bit OS has any effect on deciding the MSI controller being used during pci scanning?
If so, what steps do I need to consider to turn on multiple msi support.
- I could see the TI's endpoint test driver functionality works properly on ARM architecture. But on x86 it fails.
Any suggestions regarding the same are appreciated.
THanks in advance.