/* The PCI driver only uses MSIs, make sure the IOMMU supports this */ switch (FIELD_GET(RISCV_IOMMU_CAPABILITIES_IGS, iommu->caps)) { case RISCV_IOMMU_CAPABILITIES_IGS_MSI: case RISCV_IOMMU_CAPABILITIES_IGS_BOTH: break; default: return dev_err_probe(dev, -ENODEV, "unable to use message-signaled interrupts\n");
}
/* Allocate and assign IRQ vectors for the various events */
rc = pci_alloc_irq_vectors(pdev, 1, RISCV_IOMMU_INTR_COUNT,
PCI_IRQ_MSIX | PCI_IRQ_MSI); if (rc <= 0) return dev_err_probe(dev, -ENODEV, "unable to allocate irq vectors\n");
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.