Commit | Line | Data |
---|---|---|
d63cc249 MG |
1 | /* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */ |
2 | /* Copyright (c) 2020 Mellanox Technologies inc. */ | |
3 | ||
4 | #include <linux/mlx5/driver.h> | |
5 | ||
6 | #ifndef __MLX5_RSC_DUMP | |
7 | #define __MLX5_RSC_DUMP | |
8 | ||
9 | enum mlx5_sgmt_type { | |
10 | MLX5_SGMT_TYPE_HW_CQPC, | |
11 | MLX5_SGMT_TYPE_HW_SQPC, | |
12 | MLX5_SGMT_TYPE_HW_RQPC, | |
13 | MLX5_SGMT_TYPE_FULL_SRQC, | |
14 | MLX5_SGMT_TYPE_FULL_CQC, | |
15 | MLX5_SGMT_TYPE_FULL_EQC, | |
16 | MLX5_SGMT_TYPE_FULL_QPC, | |
17 | MLX5_SGMT_TYPE_SND_BUFF, | |
18 | MLX5_SGMT_TYPE_RCV_BUFF, | |
19 | MLX5_SGMT_TYPE_SRQ_BUFF, | |
20 | MLX5_SGMT_TYPE_CQ_BUFF, | |
21 | MLX5_SGMT_TYPE_EQ_BUFF, | |
22 | MLX5_SGMT_TYPE_SX_SLICE, | |
23 | MLX5_SGMT_TYPE_SX_SLICE_ALL, | |
24 | MLX5_SGMT_TYPE_RDB, | |
25 | MLX5_SGMT_TYPE_RX_SLICE_ALL, | |
608ca553 MG |
26 | MLX5_SGMT_TYPE_PRM_QUERY_QP, |
27 | MLX5_SGMT_TYPE_PRM_QUERY_CQ, | |
28 | MLX5_SGMT_TYPE_PRM_QUERY_MKEY, | |
d63cc249 MG |
29 | MLX5_SGMT_TYPE_MENU, |
30 | MLX5_SGMT_TYPE_TERMINATE, | |
31 | ||
32 | MLX5_SGMT_TYPE_NUM, /* Keep last */ | |
33 | }; | |
34 | ||
35 | struct mlx5_rsc_key { | |
36 | enum mlx5_sgmt_type rsc; | |
37 | int index1; | |
38 | int index2; | |
39 | int num_of_obj1; | |
40 | int num_of_obj2; | |
41 | int size; | |
42 | }; | |
43 | ||
44 | struct mlx5_rsc_dump_cmd; | |
45 | ||
46 | struct mlx5_rsc_dump_cmd *mlx5_rsc_dump_cmd_create(struct mlx5_core_dev *dev, | |
47 | struct mlx5_rsc_key *key); | |
48 | void mlx5_rsc_dump_cmd_destroy(struct mlx5_rsc_dump_cmd *cmd); | |
49 | int mlx5_rsc_dump_next(struct mlx5_core_dev *dev, struct mlx5_rsc_dump_cmd *cmd, | |
50 | struct page *page, int *size); | |
51 | #endif /* __MLX5_RSC_DUMP */ |