[PATCH v2] AHCI: Add generic MSI-X interrupt support to SATA PCI driver
From: Robert Richter <hidden>
Date: 2015-05-13 18:07:30
Also in:
linux-ide, lkml
On 13.05.15 13:46:40, Tejun Heo wrote:
Hello, Robert. On Wed, May 13, 2015 at 07:28:28PM +0200, Robert Richter wrote:quoted
quoted
quoted
This looks not very useful to do. Since irq is used only a single time, there is no reason to store it in the host's data structure. ItDoesn't really matter tho.Since ahci_host_activate() is EXPORT_SYMBOL_GPL I really have concerns changing the i/f. But I will send you a patch for this.It doesn't matter. Please go ahead and change it.
Ok, np.
quoted
quoted
Let's start with why we're doing this in the first place.Right, the sata controller is connected to a pci ecam controller, both are on an SoC together with the processor. There are no external pci ports for the connection of external devices. Since all pci devices on the chip support msi-x, the controller is only capable to handle this and not INTx nor MSI. So for enabling of the sata hc we need msix support.I see. If you can get hold of an ahci controller which actually can do multi-irq msix, it'd be the best. If not, let's make it super clear that this is a special case and use it as the last resort (which also clers up the warning issue).
This sounds good. The device actually supports multi-irq msix, a single mode interrupt + additional interrupts for error or hotplug handling. But I don't have hardware for a per-port msix host controller. So I will move msix after msi then and mark it as a special case if msi is not supported. I don't want to move it after intx since this is the fallback if nothing else works, there is no explicit check for intx, I even don't know if that is possible at all. Thanks, -Robert