X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fbus%2Fpci%2Fprivate.h;h=a205d4d9f0af726bf8574dedfb1536aef8ffb35d;hb=7d087a0a8b8e53278302601cd4b22e50ef0d5ee2;hp=0e689fa7429987f68d6ac0940097860f60690b73;hpb=46521ca27bde13a960a8150541f8825fde6affd7;p=dpdk.git diff --git a/drivers/bus/pci/private.h b/drivers/bus/pci/private.h index 0e689fa742..a205d4d9f0 100644 --- a/drivers/bus/pci/private.h +++ b/drivers/bus/pci/private.h @@ -15,6 +15,8 @@ extern struct rte_pci_bus rte_pci_bus; struct rte_pci_driver; struct rte_pci_device; +extern struct rte_pci_bus rte_pci_bus; + /** * Probe the PCI bus * @@ -124,6 +126,18 @@ int pci_uio_alloc_resource(struct rte_pci_device *dev, void pci_uio_free_resource(struct rte_pci_device *dev, struct mapped_pci_resource *uio_res); +/** + * Remap the PCI resource of a PCI device in anonymous virtual memory. + * + * @param dev + * Point to the struct rte pci device. + * @return + * - On success, zero. + * - On failure, a negative value. + */ +int +pci_uio_remap_resource(struct rte_pci_device *dev); + /** * Map device memory to uio resource * @@ -158,6 +172,17 @@ int rte_pci_match(const struct rte_pci_driver *pci_drv, const struct rte_pci_device *pci_dev); +/** + * OS specific callbacks for rte_pci_get_iommu_class + * + */ +bool +pci_device_iommu_support_va(const struct rte_pci_device *dev); + +enum rte_iova_mode +pci_device_iova_mode(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.