@@ -312,6 +312,7 @@ enum {
312312 MLX5_CMD_OP_QUERY_VHCA_STATE = 0xb0d ,
313313 MLX5_CMD_OP_MODIFY_VHCA_STATE = 0xb0e ,
314314 MLX5_CMD_OP_SYNC_CRYPTO = 0xb12 ,
315+ MLX5_CMD_OP_ALLOW_OTHER_VHCA_ACCESS = 0xb16 ,
315316 MLX5_CMD_OP_MAX
316317};
317318
@@ -1934,6 +1935,14 @@ struct mlx5_ifc_cmd_hca_cap_bits {
19341935 u8 match_definer_format_supported [0x40 ];
19351936};
19361937
1938+ enum {
1939+ MLX5_CROSS_VHCA_OBJ_TO_OBJ_SUPPORTED_LOCAL_FLOW_TABLE_TO_REMOTE_FLOW_TABLE_MISS = 0x80000 ,
1940+ };
1941+
1942+ enum {
1943+ MLX5_ALLOWED_OBJ_FOR_OTHER_VHCA_ACCESS_FLOW_TABLE = 0x200 ,
1944+ };
1945+
19371946struct mlx5_ifc_cmd_hca_cap_2_bits {
19381947 u8 reserved_at_0 [0x80 ];
19391948
@@ -1952,7 +1961,11 @@ struct mlx5_ifc_cmd_hca_cap_2_bits {
19521961 u8 migration_in_chunks [0x1 ];
19531962 u8 reserved_at_d1 [0xf ];
19541963
1955- u8 reserved_at_e0 [0xc0 ];
1964+ u8 cross_vhca_object_to_object_supported [0x20 ];
1965+
1966+ u8 allowed_object_for_other_vhca_access [0x40 ];
1967+
1968+ u8 reserved_at_140 [0x60 ];
19561969
19571970 u8 flow_table_type_2_type [0x8 ];
19581971 u8 reserved_at_1a8 [0x3 ];
@@ -6371,6 +6384,28 @@ struct mlx5_ifc_general_obj_out_cmd_hdr_bits {
63716384 u8 reserved_at_60 [0x20 ];
63726385};
63736386
6387+ struct mlx5_ifc_allow_other_vhca_access_in_bits {
6388+ u8 opcode [0x10 ];
6389+ u8 uid [0x10 ];
6390+ u8 reserved_at_20 [0x10 ];
6391+ u8 op_mod [0x10 ];
6392+ u8 reserved_at_40 [0x50 ];
6393+ u8 object_type_to_be_accessed [0x10 ];
6394+ u8 object_id_to_be_accessed [0x20 ];
6395+ u8 reserved_at_c0 [0x40 ];
6396+ union {
6397+ u8 access_key_raw [0x100 ];
6398+ u8 access_key [8 ][0x20 ];
6399+ };
6400+ };
6401+
6402+ struct mlx5_ifc_allow_other_vhca_access_out_bits {
6403+ u8 status [0x8 ];
6404+ u8 reserved_at_8 [0x18 ];
6405+ u8 syndrome [0x20 ];
6406+ u8 reserved_at_40 [0x40 ];
6407+ };
6408+
63746409struct mlx5_ifc_modify_header_arg_bits {
63756410 u8 reserved_at_0 [0x80 ];
63766411
@@ -6393,6 +6428,24 @@ struct mlx5_ifc_create_match_definer_out_bits {
63936428 struct mlx5_ifc_general_obj_out_cmd_hdr_bits general_obj_out_cmd_hdr ;
63946429};
63956430
6431+ struct mlx5_ifc_alias_context_bits {
6432+ u8 vhca_id_to_be_accessed [0x10 ];
6433+ u8 reserved_at_10 [0xd ];
6434+ u8 status [0x3 ];
6435+ u8 object_id_to_be_accessed [0x20 ];
6436+ u8 reserved_at_40 [0x40 ];
6437+ union {
6438+ u8 access_key_raw [0x100 ];
6439+ u8 access_key [8 ][0x20 ];
6440+ };
6441+ u8 metadata [0x80 ];
6442+ };
6443+
6444+ struct mlx5_ifc_create_alias_obj_in_bits {
6445+ struct mlx5_ifc_general_obj_in_cmd_hdr_bits hdr ;
6446+ struct mlx5_ifc_alias_context_bits alias_ctx ;
6447+ };
6448+
63966449enum {
63976450 MLX5_QUERY_FLOW_GROUP_OUT_MATCH_CRITERIA_ENABLE_OUTER_HEADERS = 0x0 ,
63986451 MLX5_QUERY_FLOW_GROUP_OUT_MATCH_CRITERIA_ENABLE_MISC_PARAMETERS = 0x1 ,
@@ -11919,6 +11972,7 @@ enum {
1191911972 MLX5_GENERAL_OBJECT_TYPES_FLOW_METER_ASO = 0x24 ,
1192011973 MLX5_GENERAL_OBJECT_TYPES_MACSEC = 0x27 ,
1192111974 MLX5_GENERAL_OBJECT_TYPES_INT_KEK = 0x47 ,
11975+ MLX5_GENERAL_OBJECT_TYPES_FLOW_TABLE_ALIAS = 0xff15 ,
1192211976};
1192311977
1192411978enum {
0 commit comments