Lines Matching refs:regions
30 vdev->regions = kcalloc(count, sizeof(struct vfio_fsl_mc_region),
32 if (!vdev->regions)
36 struct resource *res = &mc_dev->regions[i];
39 vdev->regions[i].addr = res->start;
40 vdev->regions[i].size = resource_size(res);
41 vdev->regions[i].type = mc_dev->regions[i].flags & IORESOURCE_BITS;
43 * Only regions addressed with PAGE granularity may be
46 if (!no_mmap && !(vdev->regions[i].addr & ~PAGE_MASK) &&
47 !(vdev->regions[i].size & ~PAGE_MASK))
48 vdev->regions[i].flags |=
50 vdev->regions[i].flags |= VFIO_REGION_INFO_FLAG_READ;
51 if (!(mc_dev->regions[i].flags & IORESOURCE_READONLY))
52 vdev->regions[i].flags |= VFIO_REGION_INFO_FLAG_WRITE;
64 iounmap(vdev->regions[i].ioaddr);
65 kfree(vdev->regions);
169 info.size = vdev->regions[info.index].size;
170 info.flags = vdev->regions[info.index].flags;
255 region = &vdev->regions[index];
334 region = &vdev->regions[index];
405 if (!(vdev->regions[index].flags & VFIO_REGION_INFO_FLAG_MMAP))
408 if (!(vdev->regions[index].flags & VFIO_REGION_INFO_FLAG_READ)
412 if (!(vdev->regions[index].flags & VFIO_REGION_INFO_FLAG_WRITE)
418 return vfio_fsl_mc_mmap_mmio(vdev->regions[index], vma);