#include <linux/mlx5/driver.h>
#include <linux/mlx5/device.h>
#include "mlx5_core.h"
#include "lib/mlx5.h"
struct mlx5_dm { … };
struct mlx5_dm *mlx5_dm_create(struct mlx5_core_dev *dev)
{ … }
void mlx5_dm_cleanup(struct mlx5_core_dev *dev)
{ … }
int mlx5_dm_sw_icm_alloc(struct mlx5_core_dev *dev, enum mlx5_sw_icm_type type,
u64 length, u32 log_alignment, u16 uid,
phys_addr_t *addr, u32 *obj_id)
{ … }
EXPORT_SYMBOL_GPL(…);
int mlx5_dm_sw_icm_dealloc(struct mlx5_core_dev *dev, enum mlx5_sw_icm_type type,
u64 length, u16 uid, phys_addr_t addr, u32 obj_id)
{ … }
EXPORT_SYMBOL_GPL(…);