1mlx5dv_devx_create_eq(3) mlx5 Programmer’s Manual mlx5dv_devx_create_eq(3)
2
3
4
6 mlx5dv_devx_create_eq - Create an EQ object
7
8 mlx5dv_devx_destroy_eq - Destroy an EQ object
9
11 #include <infiniband/mlx5dv.h>
12
13 struct mlx5dv_devx_eq *
14 mlx5dv_devx_create_eq(struct ibv_context *ibctx, const void *in, size_t inlen,
15 void *out, size_t outlen);
16
17 int mlx5dv_devx_destroy_eq(struct mlx5dv_devx_eq *eq);
18
20 Create / Destroy an EQ object. Upon creation, the caller prepares the
21 in/out mail boxes based on the device specification format; For the in‐
22 put mailbox, caller needs to prepare all fields except
23 “eqc.log_page_size” and the pas list, which will be set by the driver.
24 The “eqc.intr” field should be used from the output of mlx5dv_devx_al‐
25 loc_msi_vector().
26
28 ibctx RDMA device context to create the action on.
29
30 in A buffer which contains the command’s input data provided in a
31 device specification format.
32
33 inlen The size of in buffer in bytes.
34
35 out A buffer which contains the command’s output data according to
36 the device specification format.
37
38 outlen The size of out buffer in bytes.
39
40 eq The EQ object to work on.
41
42 struct mlx5dv_devx_eq {
43 void *vaddr;
44 };
45
46 vaddr EQ VA that was allocated in the driver for.
47
49 mlx5dv_devx_query_eqn() will not support vectors which are used by
50 mlx5dv_devx_create_eq().
51
53 Upon success mlx5dv_devx_create_eq will return a new struct mlx5dv_de‐
54 vx_eq; On error NULL will be returned and errno will be set.
55
56 Upon success mlx5dv_devx_destroy_eq will return 0, on error errno will
57 be returned.
58
59 If the error value is EREMOTEIO, outbox.status and outbox.syndrome will
60 contain the command failure details.
61
63 mlx5dv_devx_alloc_msi_vector(3), mlx5dv_devx_query_eqn(3)
64
66 Mark Zhang <markzhang@nvidia.com>
67
68
69
70mlx5 2022-01-12 mlx5dv_devx_create_eq(3)