From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maxime Coquelin Subject: Re: [PATCH v3 03/11] bsdapp/eal_pci: get iommu class Date: Tue, 11 Jul 2017 11:15:37 +0200 Message-ID: <04b56e50-a6b2-d78e-b73a-73c9ddf72521@redhat.com> References: <20170710114235.18970-1-santosh.shukla@caviumnetworks.com> <20170711061631.5018-1-santosh.shukla@caviumnetworks.com> <20170711061631.5018-4-santosh.shukla@caviumnetworks.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Cc: bruce.richardson@intel.com, jerin.jacob@caviumnetworks.com, hemant.agrawal@nxp.com, shreyansh.jain@nxp.com, gaetan.rivet@6wind.com, sergio.gonzalez.monroy@intel.com, anatoly.burakov@intel.com, stephen@networkplumber.org, olivier.matz@6wind.com To: Santosh Shukla , thomas@monjalon.net, dev@dpdk.org Return-path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by dpdk.org (Postfix) with ESMTP id 9939A5398 for ; Tue, 11 Jul 2017 11:15:45 +0200 (CEST) In-Reply-To: <20170711061631.5018-4-santosh.shukla@caviumnetworks.com> Content-Language: en-US List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 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. Maxime