1mlx5dv_get_vfio_device_list(3) mlx5dv_get_vfio_device_list(3)
2
3
4
6 mlx5dv_get_vfio_device_list - Get list of available devices to be used
7 over VFIO
8
10 #include <infiniband/mlx5dv.h>
11
12 struct ibv_device **
13 mlx5dv_get_vfio_device_list(struct mlx5dv_vfio_context_attr *attr);
14
16 Returns a NULL-terminated array of devices based on input attr.
17
19 attr Describe the VFIO devices to return in list.
20
21 attr argument
22 struct mlx5dv_vfio_context_attr {
23 const char *pci_name;
24 uint32_t flags;
25 uint64_t comp_mask;
26 };
27
28 pci_name
29 The PCI name of the required device.
30
31 flags
32
33 A bitwise OR of the various values described below.
34
35 *MLX5DV_VFIO_CTX_FLAGS_INIT_LINK_DOWN*:
36 Upon device initialization link should stay down.
37
38 comp_mask
39
40 Bitmask specifying what fields in the structure are valid.
41
43 Returns the array of the matching devices, or sets errno and returns
44 NULL if the request fails.
45
47 Client code should open all the devices it intends to use with
48 ibv_open_device() before calling ibv_free_device_list(). Once it frees
49 the array with ibv_free_device_list(), it will be able to use only the
50 open devices; pointers to unopened devices will no longer be valid.
51
53 ibv_open_device(3) ibv_free_device_list(3)
54
56 Yishai Hadas <yishaih@nvidia.com>
57
58
59
60 mlx5dv_get_vfio_device_list(3)