xref: /qemu/hw/vfio/vfio-helpers.h (revision ac28680d5e7a84943cd9f55a4aae245d6d7fdcae)
1*ac28680dSCédric Le Goater /*
2*ac28680dSCédric Le Goater  * VFIO helpers
3*ac28680dSCédric Le Goater  *
4*ac28680dSCédric Le Goater  * Copyright Red Hat, Inc. 2025
5*ac28680dSCédric Le Goater  *
6*ac28680dSCédric Le Goater  * SPDX-License-Identifier: GPL-2.0-or-later
7*ac28680dSCédric Le Goater  */
8*ac28680dSCédric Le Goater 
9*ac28680dSCédric Le Goater #ifndef HW_VFIO_VFIO_HELPERS_H
10*ac28680dSCédric Le Goater #define HW_VFIO_VFIO_HELPERS_H
11*ac28680dSCédric Le Goater 
12*ac28680dSCédric Le Goater #ifdef CONFIG_LINUX
13*ac28680dSCédric Le Goater #include <linux/vfio.h>
14*ac28680dSCédric Le Goater 
15*ac28680dSCédric Le Goater struct vfio_info_cap_header *
16*ac28680dSCédric Le Goater vfio_get_cap(void *ptr, uint32_t cap_offset, uint16_t id);
17*ac28680dSCédric Le Goater struct vfio_info_cap_header *
18*ac28680dSCédric Le Goater vfio_get_device_info_cap(struct vfio_device_info *info, uint16_t id);
19*ac28680dSCédric Le Goater struct vfio_info_cap_header *
20*ac28680dSCédric Le Goater vfio_get_region_info_cap(struct vfio_region_info *info, uint16_t id);
21*ac28680dSCédric Le Goater 
22*ac28680dSCédric Le Goater #endif
23*ac28680dSCédric Le Goater 
24*ac28680dSCédric Le Goater int vfio_bitmap_alloc(VFIOBitmap *vbmap, hwaddr size);
25*ac28680dSCédric Le Goater 
26*ac28680dSCédric Le Goater #endif /* HW_VFIO_VFIO_HELPERS_H */
27