On 07/11/2017 12:41 PM, santosh wrote:
On Tuesday 11 July 2017 02:45 PM, Maxime Coquelin wrote:


On 07/11/2017 08:16 AM, Santosh Shukla wrote:
   diff --git a/lib/librte_eal/common/include/rte_bus.h 
b/lib/librte_eal/common/include/rte_bus.h
index af9f0e13f..7a0cfb165 100644
--- a/lib/librte_eal/common/include/rte_bus.h
+++ b/lib/librte_eal/common/include/rte_bus.h
@@ -55,6 +55,15 @@ extern "C" {
   /** Double linked list of buses */
   TAILQ_HEAD(rte_bus_list, rte_bus);
   +
+/**
+ * IOVA mapping mode.
+ */
+enum rte_iova_mode {
+    RTE_IOVA_PA = 1,
+    RTE_IOVA_VA
+};
+
   /**
    * Bus specific scan for devices attached on the bus.
    * For each bus object, the scan would be responsible for finding devices and
diff --git a/lib/librte_eal/common/include/rte_pci.h 
b/lib/librte_eal/common/include/rte_pci.h
index 4a485674e..c58361132 100644
--- a/lib/librte_eal/common/include/rte_pci.h
+++ b/lib/librte_eal/common/include/rte_pci.h
@@ -383,6 +383,17 @@ int
   rte_pci_match(const struct rte_pci_driver *pci_drv,
             const struct rte_pci_device *pci_dev);
   +
+/**
+ * Get iommu class of PCI devices on the bus.
+ * And return their preferred iova mapping mode.
+ *
+ * @return
+ *   - enum rte_iova_mode.
+ */
+enum rte_iova_mode
+rte_pci_get_iommu_class(void);
+
   /**
    * Map the PCI device resources in user space virtual memory address
    *

I would have put this in a separate patch, as not bsd specifics.

I'll pull that out in v4, and perhaps squash into [01/11], as both changes 
(RTE_PCI_DRV_ and this one)
are on same rte_pci.h file. Is it Ok with you? or you prefer separate patch for 
both
(RTE_PCI_DRV_ and this one)?

I'm fine you squash this part in patch 1.

Thanks,
Maxime

Maxime

Reply via email to