net/mlx5: Export resource dump interface
Export some of the resource dump API. mlx5_ib driver will use it in downstream patches. Signed-off-by: Maor Gottlieb <maorg@mellanox.com> Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
This commit is contained in:
parent
48778464bb
commit
d63cc24933
|
@ -130,11 +130,13 @@ struct mlx5_rsc_dump_cmd *mlx5_rsc_dump_cmd_create(struct mlx5_core_dev *dev,
|
|||
cmd->mem_size = key->size;
|
||||
return cmd;
|
||||
}
|
||||
EXPORT_SYMBOL(mlx5_rsc_dump_cmd_create);
|
||||
|
||||
void mlx5_rsc_dump_cmd_destroy(struct mlx5_rsc_dump_cmd *cmd)
|
||||
{
|
||||
kfree(cmd);
|
||||
}
|
||||
EXPORT_SYMBOL(mlx5_rsc_dump_cmd_destroy);
|
||||
|
||||
int mlx5_rsc_dump_next(struct mlx5_core_dev *dev, struct mlx5_rsc_dump_cmd *cmd,
|
||||
struct page *page, int *size)
|
||||
|
@ -155,6 +157,7 @@ int mlx5_rsc_dump_next(struct mlx5_core_dev *dev, struct mlx5_rsc_dump_cmd *cmd,
|
|||
|
||||
return more_dump;
|
||||
}
|
||||
EXPORT_SYMBOL(mlx5_rsc_dump_next);
|
||||
|
||||
#define MLX5_RSC_DUMP_MENU_SEGMENT 0xffff
|
||||
static int mlx5_rsc_dump_menu(struct mlx5_core_dev *dev)
|
||||
|
|
|
@ -4,41 +4,10 @@
|
|||
#ifndef __MLX5_RSC_DUMP_H
|
||||
#define __MLX5_RSC_DUMP_H
|
||||
|
||||
#include <linux/mlx5/rsc_dump.h>
|
||||
#include <linux/mlx5/driver.h>
|
||||
#include "mlx5_core.h"
|
||||
|
||||
enum mlx5_sgmt_type {
|
||||
MLX5_SGMT_TYPE_HW_CQPC,
|
||||
MLX5_SGMT_TYPE_HW_SQPC,
|
||||
MLX5_SGMT_TYPE_HW_RQPC,
|
||||
MLX5_SGMT_TYPE_FULL_SRQC,
|
||||
MLX5_SGMT_TYPE_FULL_CQC,
|
||||
MLX5_SGMT_TYPE_FULL_EQC,
|
||||
MLX5_SGMT_TYPE_FULL_QPC,
|
||||
MLX5_SGMT_TYPE_SND_BUFF,
|
||||
MLX5_SGMT_TYPE_RCV_BUFF,
|
||||
MLX5_SGMT_TYPE_SRQ_BUFF,
|
||||
MLX5_SGMT_TYPE_CQ_BUFF,
|
||||
MLX5_SGMT_TYPE_EQ_BUFF,
|
||||
MLX5_SGMT_TYPE_SX_SLICE,
|
||||
MLX5_SGMT_TYPE_SX_SLICE_ALL,
|
||||
MLX5_SGMT_TYPE_RDB,
|
||||
MLX5_SGMT_TYPE_RX_SLICE_ALL,
|
||||
MLX5_SGMT_TYPE_MENU,
|
||||
MLX5_SGMT_TYPE_TERMINATE,
|
||||
|
||||
MLX5_SGMT_TYPE_NUM, /* Keep last */
|
||||
};
|
||||
|
||||
struct mlx5_rsc_key {
|
||||
enum mlx5_sgmt_type rsc;
|
||||
int index1;
|
||||
int index2;
|
||||
int num_of_obj1;
|
||||
int num_of_obj2;
|
||||
int size;
|
||||
};
|
||||
|
||||
#define MLX5_RSC_DUMP_ALL 0xFFFF
|
||||
struct mlx5_rsc_dump_cmd;
|
||||
struct mlx5_rsc_dump;
|
||||
|
|
48
include/linux/mlx5/rsc_dump.h
Normal file
48
include/linux/mlx5/rsc_dump.h
Normal file
|
@ -0,0 +1,48 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
|
||||
/* Copyright (c) 2020 Mellanox Technologies inc. */
|
||||
|
||||
#include <linux/mlx5/driver.h>
|
||||
|
||||
#ifndef __MLX5_RSC_DUMP
|
||||
#define __MLX5_RSC_DUMP
|
||||
|
||||
enum mlx5_sgmt_type {
|
||||
MLX5_SGMT_TYPE_HW_CQPC,
|
||||
MLX5_SGMT_TYPE_HW_SQPC,
|
||||
MLX5_SGMT_TYPE_HW_RQPC,
|
||||
MLX5_SGMT_TYPE_FULL_SRQC,
|
||||
MLX5_SGMT_TYPE_FULL_CQC,
|
||||
MLX5_SGMT_TYPE_FULL_EQC,
|
||||
MLX5_SGMT_TYPE_FULL_QPC,
|
||||
MLX5_SGMT_TYPE_SND_BUFF,
|
||||
MLX5_SGMT_TYPE_RCV_BUFF,
|
||||
MLX5_SGMT_TYPE_SRQ_BUFF,
|
||||
MLX5_SGMT_TYPE_CQ_BUFF,
|
||||
MLX5_SGMT_TYPE_EQ_BUFF,
|
||||
MLX5_SGMT_TYPE_SX_SLICE,
|
||||
MLX5_SGMT_TYPE_SX_SLICE_ALL,
|
||||
MLX5_SGMT_TYPE_RDB,
|
||||
MLX5_SGMT_TYPE_RX_SLICE_ALL,
|
||||
MLX5_SGMT_TYPE_MENU,
|
||||
MLX5_SGMT_TYPE_TERMINATE,
|
||||
|
||||
MLX5_SGMT_TYPE_NUM, /* Keep last */
|
||||
};
|
||||
|
||||
struct mlx5_rsc_key {
|
||||
enum mlx5_sgmt_type rsc;
|
||||
int index1;
|
||||
int index2;
|
||||
int num_of_obj1;
|
||||
int num_of_obj2;
|
||||
int size;
|
||||
};
|
||||
|
||||
struct mlx5_rsc_dump_cmd;
|
||||
|
||||
struct mlx5_rsc_dump_cmd *mlx5_rsc_dump_cmd_create(struct mlx5_core_dev *dev,
|
||||
struct mlx5_rsc_key *key);
|
||||
void mlx5_rsc_dump_cmd_destroy(struct mlx5_rsc_dump_cmd *cmd);
|
||||
int mlx5_rsc_dump_next(struct mlx5_core_dev *dev, struct mlx5_rsc_dump_cmd *cmd,
|
||||
struct page *page, int *size);
|
||||
#endif /* __MLX5_RSC_DUMP */
|
Loading…
Reference in a new issue