drivers/net/ethernet/mellanox/mlx5/core/steering/hws/cmd.h

Source file repositories/reference/linux-study-clean/drivers/net/ethernet/mellanox/mlx5/core/steering/hws/cmd.h

File Facts

System
Linux kernel
Corpus path
drivers/net/ethernet/mellanox/mlx5/core/steering/hws/cmd.h
Extension
.h
Size
8077 bytes
Lines
348
Domain
Driver Families
Bucket
drivers/net
Inferred role
Driver Families: implementation source
Status
source implementation candidate

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

struct mlx5hws_cmd_set_fte_dest {
	u8 destination_type;
	u32 destination_id;
	enum mlx5hws_cmd_ext_dest_flags ext_flags;
	u32 ext_reformat_id;
	u16 esw_owner_vhca_id;
};

struct mlx5hws_cmd_set_fte_attr {
	u32 action_flags;
	bool ignore_flow_level;
	u8 flow_source;
	u8 extended_dest;
	u8 encrypt_decrypt_type;
	u32 encrypt_decrypt_obj_id;
	u32 packet_reformat_id;
	u32 dests_num;
	struct mlx5hws_cmd_set_fte_dest *dests;
};

struct mlx5hws_cmd_ft_create_attr {
	u8 type;
	u8 level;
	u16 uid;
	bool rtc_valid;
	bool decap_en;
	bool reformat_en;
};

struct mlx5hws_cmd_ft_modify_attr {
	u8 type;
	u32 rtc_id_0;
	u32 rtc_id_1;
	u32 table_miss_id;
	u8 table_miss_action;
	u64 modify_fs;
};

struct mlx5hws_cmd_ft_query_attr {
	u8 type;
};

struct mlx5hws_cmd_fg_attr {
	u32 table_id;
	u32 table_type;
};

struct mlx5hws_cmd_forward_tbl {
	u8 type;
	u32 ft_id;
	u32 fg_id;
	u32 refcount; /* protected by context ctrl lock */
};

struct mlx5hws_cmd_rtc_create_attr {
	u32 pd;
	u32 stc_base;
	u32 ste_base;
	u32 miss_ft_id;
	bool fw_gen_wqe;
	u8 update_index_mode;
	u8 access_index_mode;
	u8 num_hash_definer;
	u8 log_depth;
	u8 log_size;
	u8 table_type;
	u8 match_definer_0;
	u8 match_definer_1;
	u8 reparse_mode;
	bool is_frst_jumbo;
	bool is_scnd_range;
};

struct mlx5hws_cmd_alias_obj_create_attr {
	u32 obj_id;
	u16 vhca_id;
	u16 obj_type;
	u8 access_key[ACCESS_KEY_LEN];
};

struct mlx5hws_cmd_stc_create_attr {
	u8 log_obj_range;
	u8 table_type;
};

struct mlx5hws_cmd_stc_modify_attr {
	u32 stc_offset;
	u8 action_offset;
	u8 reparse_mode;
	enum mlx5_ifc_stc_action_type action_type;

Annotation

Implementation Notes