Lines Matching full:bar

201 int vfio_pci_core_setup_barmap(struct vfio_pci_core_device *vdev, int bar)  in vfio_pci_core_setup_barmap()  argument
207 if (vdev->barmap[bar]) in vfio_pci_core_setup_barmap()
210 ret = pci_request_selected_regions(pdev, 1 << bar, "vfio"); in vfio_pci_core_setup_barmap()
214 io = pci_iomap(pdev, bar, 0); in vfio_pci_core_setup_barmap()
216 pci_release_selected_regions(pdev, 1 << bar); in vfio_pci_core_setup_barmap()
220 vdev->barmap[bar] = io; in vfio_pci_core_setup_barmap()
231 int bar = VFIO_PCI_OFFSET_TO_INDEX(*ppos); in vfio_pci_bar_rw() local
235 struct resource *res = &vdev->pdev->resource[bar]; in vfio_pci_bar_rw()
238 if (pci_resource_start(pdev, bar)) in vfio_pci_bar_rw()
239 end = pci_resource_len(pdev, bar); in vfio_pci_bar_rw()
240 else if (bar == PCI_ROM_RESOURCE && pdev->rom && pdev->romlen) in vfio_pci_bar_rw()
250 if (bar == PCI_ROM_RESOURCE) { in vfio_pci_bar_rw()
252 * The ROM can fill less space than the BAR, so we start the in vfio_pci_bar_rw()
256 if (pci_resource_start(pdev, bar)) { in vfio_pci_bar_rw()
266 int ret = vfio_pci_core_setup_barmap(vdev, bar); in vfio_pci_bar_rw()
272 io = vdev->barmap[bar]; in vfio_pci_bar_rw()
275 if (bar == vdev->msix_bar) { in vfio_pci_bar_rw()
286 if (bar == PCI_ROM_RESOURCE) { in vfio_pci_bar_rw()
287 if (pci_resource_start(pdev, bar)) in vfio_pci_bar_rw()
350 * VGA MMIO is a legacy, non-BAR resource that hopefully allows in vfio_pci_vga_rw()
425 int ret, bar = VFIO_PCI_OFFSET_TO_INDEX(offset); in vfio_pci_ioeventfd() local
429 if (bar > VFIO_PCI_BAR5_REGION_INDEX) in vfio_pci_ioeventfd()
432 if (pos + count > pci_resource_len(pdev, bar)) in vfio_pci_ioeventfd()
436 if (bar == vdev->msix_bar && in vfio_pci_ioeventfd()
444 ret = vfio_pci_core_setup_barmap(vdev, bar); in vfio_pci_ioeventfd()
451 if (ioeventfd->pos == pos && ioeventfd->bar == bar && in vfio_pci_ioeventfd()
483 ioeventfd->addr = vdev->barmap[bar] + pos; in vfio_pci_ioeventfd()
486 ioeventfd->bar = bar; in vfio_pci_ioeventfd()
488 ioeventfd->test_mem = vdev->pdev->resource[bar].flags & IORESOURCE_MEM; in vfio_pci_ioeventfd()