You've already forked linux-apfs
mirror of
https://github.com/linux-apfs/linux-apfs.git
synced 2026-05-01 15:00:59 -07:00
mlx5_core: Implement new initialization sequence
Introduce enbale_hca and disable_hca commands to signify when the driver starts or ceases to operate on the device. In addition the driver will use boot and init pages count; boot pages is required to allow firmware to complete boot commands and the other to complete init hca. Command interface revision is bumped to 4 to enforce using supported firmware. This patch breaks compatibility with old versions of firmware (< 4); however, the first GA firmware we will publish will support version 4 so this should not be a problem. Signed-off-by: Eli Cohen <eli@mellanox.com> Signed-off-by: Roland Dreier <roland@purestorage.com>
This commit is contained in:
@@ -690,6 +690,26 @@ struct mlx5_query_cq_mbox_out {
|
||||
__be64 pas[0];
|
||||
};
|
||||
|
||||
struct mlx5_enable_hca_mbox_in {
|
||||
struct mlx5_inbox_hdr hdr;
|
||||
u8 rsvd[8];
|
||||
};
|
||||
|
||||
struct mlx5_enable_hca_mbox_out {
|
||||
struct mlx5_outbox_hdr hdr;
|
||||
u8 rsvd[8];
|
||||
};
|
||||
|
||||
struct mlx5_disable_hca_mbox_in {
|
||||
struct mlx5_inbox_hdr hdr;
|
||||
u8 rsvd[8];
|
||||
};
|
||||
|
||||
struct mlx5_disable_hca_mbox_out {
|
||||
struct mlx5_outbox_hdr hdr;
|
||||
u8 rsvd[8];
|
||||
};
|
||||
|
||||
struct mlx5_eq_context {
|
||||
u8 status;
|
||||
u8 ec_oi;
|
||||
|
||||
@@ -101,6 +101,8 @@ enum {
|
||||
MLX5_CMD_OP_QUERY_ADAPTER = 0x101,
|
||||
MLX5_CMD_OP_INIT_HCA = 0x102,
|
||||
MLX5_CMD_OP_TEARDOWN_HCA = 0x103,
|
||||
MLX5_CMD_OP_ENABLE_HCA = 0x104,
|
||||
MLX5_CMD_OP_DISABLE_HCA = 0x105,
|
||||
MLX5_CMD_OP_QUERY_PAGES = 0x107,
|
||||
MLX5_CMD_OP_MANAGE_PAGES = 0x108,
|
||||
MLX5_CMD_OP_SET_HCA_CAP = 0x109,
|
||||
@@ -690,7 +692,7 @@ int mlx5_pagealloc_start(struct mlx5_core_dev *dev);
|
||||
void mlx5_pagealloc_stop(struct mlx5_core_dev *dev);
|
||||
void mlx5_core_req_pages_handler(struct mlx5_core_dev *dev, u16 func_id,
|
||||
s16 npages);
|
||||
int mlx5_satisfy_startup_pages(struct mlx5_core_dev *dev);
|
||||
int mlx5_satisfy_startup_pages(struct mlx5_core_dev *dev, int boot);
|
||||
int mlx5_reclaim_startup_pages(struct mlx5_core_dev *dev);
|
||||
void mlx5_register_debugfs(void);
|
||||
void mlx5_unregister_debugfs(void);
|
||||
|
||||
Reference in New Issue
Block a user