Lines Matching refs:opregionvbt

69 	struct igd_opregion_vbt *opregionvbt = vdev->region[i].data;  in vfio_pci_igd_rw()  local
84 opregionvbt->opregion + pos, &pos, in vfio_pci_igd_rw()
93 __le16 version = *(__le16 *)(opregionvbt->opregion + in vfio_pci_igd_rw()
97 if (le16_to_cpu(version) == 0x0200 && opregionvbt->vbt_ex) in vfio_pci_igd_rw()
112 opregionvbt->opregion + pos, &pos, in vfio_pci_igd_rw()
121 __le64 rvda = cpu_to_le64(opregionvbt->vbt_ex ? in vfio_pci_igd_rw()
135 opregionvbt->opregion + pos, &pos, in vfio_pci_igd_rw()
142 copy_to_user(buf + off, opregionvbt->vbt_ex + (pos - OPREGION_SIZE), in vfio_pci_igd_rw()
154 struct igd_opregion_vbt *opregionvbt = region->data; in vfio_pci_igd_release() local
156 if (opregionvbt->vbt_ex) in vfio_pci_igd_release()
157 memunmap(opregionvbt->vbt_ex); in vfio_pci_igd_release()
159 memunmap(opregionvbt->opregion); in vfio_pci_igd_release()
160 kfree(opregionvbt); in vfio_pci_igd_release()
172 struct igd_opregion_vbt *opregionvbt; in vfio_pci_igd_opregion_init() local
183 opregionvbt = kzalloc(sizeof(*opregionvbt), GFP_KERNEL_ACCOUNT); in vfio_pci_igd_opregion_init()
184 if (!opregionvbt) in vfio_pci_igd_opregion_init()
187 opregionvbt->opregion = memremap(addr, OPREGION_SIZE, MEMREMAP_WB); in vfio_pci_igd_opregion_init()
188 if (!opregionvbt->opregion) { in vfio_pci_igd_opregion_init()
189 kfree(opregionvbt); in vfio_pci_igd_opregion_init()
193 if (memcmp(opregionvbt->opregion, OPREGION_SIGNATURE, 16)) { in vfio_pci_igd_opregion_init()
194 memunmap(opregionvbt->opregion); in vfio_pci_igd_opregion_init()
195 kfree(opregionvbt); in vfio_pci_igd_opregion_init()
199 size = le32_to_cpu(*(__le32 *)(opregionvbt->opregion + 16)); in vfio_pci_igd_opregion_init()
201 memunmap(opregionvbt->opregion); in vfio_pci_igd_opregion_init()
202 kfree(opregionvbt); in vfio_pci_igd_opregion_init()
229 version = le16_to_cpu(*(__le16 *)(opregionvbt->opregion + in vfio_pci_igd_opregion_init()
232 u64 rvda = le64_to_cpu(*(__le64 *)(opregionvbt->opregion + in vfio_pci_igd_opregion_init()
234 u32 rvds = le32_to_cpu(*(__le32 *)(opregionvbt->opregion + in vfio_pci_igd_opregion_init()
251 opregionvbt->vbt_ex = memremap(addr, rvds, MEMREMAP_WB); in vfio_pci_igd_opregion_init()
252 if (!opregionvbt->vbt_ex) { in vfio_pci_igd_opregion_init()
253 memunmap(opregionvbt->opregion); in vfio_pci_igd_opregion_init()
254 kfree(opregionvbt); in vfio_pci_igd_opregion_init()
263 size, VFIO_REGION_INFO_FLAG_READ, opregionvbt); in vfio_pci_igd_opregion_init()
265 if (opregionvbt->vbt_ex) in vfio_pci_igd_opregion_init()
266 memunmap(opregionvbt->vbt_ex); in vfio_pci_igd_opregion_init()
268 memunmap(opregionvbt->opregion); in vfio_pci_igd_opregion_init()
269 kfree(opregionvbt); in vfio_pci_igd_opregion_init()