@@ -532,8 +532,8 @@ struct hwrm_err_output {
532
532
#define HWRM_VERSION_MAJOR 1
533
533
#define HWRM_VERSION_MINOR 10
534
534
#define HWRM_VERSION_UPDATE 2
535
- #define HWRM_VERSION_RSVD 52
536
- #define HWRM_VERSION_STR "1.10.2.52 "
535
+ #define HWRM_VERSION_RSVD 63
536
+ #define HWRM_VERSION_STR "1.10.2.63 "
537
537
538
538
/* hwrm_ver_get_input (size:192b/24B) */
539
539
struct hwrm_ver_get_input {
@@ -1587,6 +1587,8 @@ struct hwrm_func_qcaps_output {
1587
1587
#define FUNC_QCAPS_RESP_FLAGS_EXT_DFLT_VLAN_TPID_PCP_SUPPORTED 0x200000UL
1588
1588
#define FUNC_QCAPS_RESP_FLAGS_EXT_KTLS_SUPPORTED 0x400000UL
1589
1589
#define FUNC_QCAPS_RESP_FLAGS_EXT_EP_RATE_CONTROL 0x800000UL
1590
+ #define FUNC_QCAPS_RESP_FLAGS_EXT_MIN_BW_SUPPORTED 0x1000000UL
1591
+ #define FUNC_QCAPS_RESP_FLAGS_EXT_TX_COAL_CMPL_CAP 0x2000000UL
1590
1592
u8 max_schqs ;
1591
1593
u8 mpc_chnls_cap ;
1592
1594
#define FUNC_QCAPS_RESP_MPC_CHNLS_CAP_TCE 0x1UL
@@ -1956,6 +1958,18 @@ struct hwrm_func_cfg_output {
1956
1958
u8 valid ;
1957
1959
};
1958
1960
1961
+ /* hwrm_func_cfg_cmd_err (size:64b/8B) */
1962
+ struct hwrm_func_cfg_cmd_err {
1963
+ u8 code ;
1964
+ #define FUNC_CFG_CMD_ERR_CODE_UNKNOWN 0x0UL
1965
+ #define FUNC_CFG_CMD_ERR_CODE_PARTITION_MIN_BW_RANGE 0x1UL
1966
+ #define FUNC_CFG_CMD_ERR_CODE_PARTITION_MIN_MORE_THAN_MAX 0x2UL
1967
+ #define FUNC_CFG_CMD_ERR_CODE_PARTITION_MIN_BW_UNSUPPORTED 0x3UL
1968
+ #define FUNC_CFG_CMD_ERR_CODE_PARTITION_BW_PERCENT 0x4UL
1969
+ #define FUNC_CFG_CMD_ERR_CODE_LAST FUNC_CFG_CMD_ERR_CODE_PARTITION_BW_PERCENT
1970
+ u8 unused_0 [7 ];
1971
+ };
1972
+
1959
1973
/* hwrm_func_qstats_input (size:192b/24B) */
1960
1974
struct hwrm_func_qstats_input {
1961
1975
__le16 req_type ;
@@ -3601,7 +3615,15 @@ struct hwrm_port_phy_qcfg_output {
3601
3615
#define PORT_PHY_QCFG_RESP_PHY_TYPE_200G_BASESR4 0x1dUL
3602
3616
#define PORT_PHY_QCFG_RESP_PHY_TYPE_200G_BASELR4 0x1eUL
3603
3617
#define PORT_PHY_QCFG_RESP_PHY_TYPE_200G_BASEER4 0x1fUL
3604
- #define PORT_PHY_QCFG_RESP_PHY_TYPE_LAST PORT_PHY_QCFG_RESP_PHY_TYPE_200G_BASEER4
3618
+ #define PORT_PHY_QCFG_RESP_PHY_TYPE_50G_BASECR 0x20UL
3619
+ #define PORT_PHY_QCFG_RESP_PHY_TYPE_50G_BASESR 0x21UL
3620
+ #define PORT_PHY_QCFG_RESP_PHY_TYPE_50G_BASELR 0x22UL
3621
+ #define PORT_PHY_QCFG_RESP_PHY_TYPE_50G_BASEER 0x23UL
3622
+ #define PORT_PHY_QCFG_RESP_PHY_TYPE_100G_BASECR2 0x24UL
3623
+ #define PORT_PHY_QCFG_RESP_PHY_TYPE_100G_BASESR2 0x25UL
3624
+ #define PORT_PHY_QCFG_RESP_PHY_TYPE_100G_BASELR2 0x26UL
3625
+ #define PORT_PHY_QCFG_RESP_PHY_TYPE_100G_BASEER2 0x27UL
3626
+ #define PORT_PHY_QCFG_RESP_PHY_TYPE_LAST PORT_PHY_QCFG_RESP_PHY_TYPE_100G_BASEER2
3605
3627
u8 media_type ;
3606
3628
#define PORT_PHY_QCFG_RESP_MEDIA_TYPE_UNKNOWN 0x0UL
3607
3629
#define PORT_PHY_QCFG_RESP_MEDIA_TYPE_TP 0x1UL
@@ -4040,7 +4062,7 @@ struct tx_port_stats_ext {
4040
4062
__le64 pfc_pri7_tx_transitions ;
4041
4063
};
4042
4064
4043
- /* rx_port_stats_ext (size:3648b/456B ) */
4065
+ /* rx_port_stats_ext (size:3776b/472B ) */
4044
4066
struct rx_port_stats_ext {
4045
4067
__le64 link_down_events ;
4046
4068
__le64 continuous_pause_events ;
@@ -4099,6 +4121,8 @@ struct rx_port_stats_ext {
4099
4121
__le64 rx_discard_packets_cos5 ;
4100
4122
__le64 rx_discard_packets_cos6 ;
4101
4123
__le64 rx_discard_packets_cos7 ;
4124
+ __le64 rx_fec_corrected_blocks ;
4125
+ __le64 rx_fec_uncorrectable_blocks ;
4102
4126
};
4103
4127
4104
4128
/* hwrm_port_qstats_ext_input (size:320b/40B) */
@@ -4372,7 +4396,10 @@ struct hwrm_port_phy_qcaps_output {
4372
4396
#define PORT_PHY_QCAPS_RESP_SUPPORTED_PAM4_SPEEDS_FORCE_MODE_50G 0x1UL
4373
4397
#define PORT_PHY_QCAPS_RESP_SUPPORTED_PAM4_SPEEDS_FORCE_MODE_100G 0x2UL
4374
4398
#define PORT_PHY_QCAPS_RESP_SUPPORTED_PAM4_SPEEDS_FORCE_MODE_200G 0x4UL
4375
- u8 unused_0 [3 ];
4399
+ __le16 flags2 ;
4400
+ #define PORT_PHY_QCAPS_RESP_FLAGS2_PAUSE_UNSUPPORTED 0x1UL
4401
+ #define PORT_PHY_QCAPS_RESP_FLAGS2_PFC_UNSUPPORTED 0x2UL
4402
+ u8 unused_0 [1 ];
4376
4403
u8 valid ;
4377
4404
};
4378
4405
@@ -6076,6 +6103,11 @@ struct hwrm_vnic_qcaps_output {
6076
6103
#define VNIC_QCAPS_RESP_FLAGS_VIRTIO_NET_VNIC_ALLOC_CAP 0x800UL
6077
6104
#define VNIC_QCAPS_RESP_FLAGS_METADATA_FORMAT_CAP 0x1000UL
6078
6105
#define VNIC_QCAPS_RESP_FLAGS_RSS_STRICT_HASH_TYPE_CAP 0x2000UL
6106
+ #define VNIC_QCAPS_RESP_FLAGS_RSS_HASH_TYPE_DELTA_CAP 0x4000UL
6107
+ #define VNIC_QCAPS_RESP_FLAGS_RSS_HASH_FUNCTION_TOEPLITZ_CAP 0x8000UL
6108
+ #define VNIC_QCAPS_RESP_FLAGS_RSS_HASH_FUNCTION_XOR_CAP 0x10000UL
6109
+ #define VNIC_QCAPS_RESP_FLAGS_RSS_HASH_FUNCTION_CHKSM_CAP 0x20000UL
6110
+ #define VNIC_QCAPS_RESP_FLAGS_RSS_IPV6_FLOW_LABEL_CAP 0x40000UL
6079
6111
__le16 max_aggs_supported ;
6080
6112
u8 unused_1 [5 ];
6081
6113
u8 valid ;
@@ -6206,7 +6238,15 @@ struct hwrm_vnic_rss_cfg_input {
6206
6238
__le64 ring_grp_tbl_addr ;
6207
6239
__le64 hash_key_tbl_addr ;
6208
6240
__le16 rss_ctx_idx ;
6209
- u8 unused_1 [6 ];
6241
+ u8 flags ;
6242
+ #define VNIC_RSS_CFG_REQ_FLAGS_HASH_TYPE_INCLUDE 0x1UL
6243
+ #define VNIC_RSS_CFG_REQ_FLAGS_HASH_TYPE_EXCLUDE 0x2UL
6244
+ u8 rss_hash_function ;
6245
+ #define VNIC_RSS_CFG_REQ_RSS_HASH_FUNCTION_TOEPLITZ 0x0UL
6246
+ #define VNIC_RSS_CFG_REQ_RSS_HASH_FUNCTION_XOR 0x1UL
6247
+ #define VNIC_RSS_CFG_REQ_RSS_HASH_FUNCTION_CHECKSUM 0x2UL
6248
+ #define VNIC_RSS_CFG_REQ_RSS_HASH_FUNCTION_LAST VNIC_RSS_CFG_REQ_RSS_HASH_FUNCTION_CHECKSUM
6249
+ u8 unused_1 [4 ];
6210
6250
};
6211
6251
6212
6252
/* hwrm_vnic_rss_cfg_output (size:128b/16B) */
@@ -6331,7 +6371,24 @@ struct hwrm_ring_alloc_input {
6331
6371
#define RING_ALLOC_REQ_RING_TYPE_RX_AGG 0x4UL
6332
6372
#define RING_ALLOC_REQ_RING_TYPE_NQ 0x5UL
6333
6373
#define RING_ALLOC_REQ_RING_TYPE_LAST RING_ALLOC_REQ_RING_TYPE_NQ
6334
- u8 unused_0 ;
6374
+ u8 cmpl_coal_cnt ;
6375
+ #define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_OFF 0x0UL
6376
+ #define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_4 0x1UL
6377
+ #define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_8 0x2UL
6378
+ #define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_12 0x3UL
6379
+ #define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_16 0x4UL
6380
+ #define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_24 0x5UL
6381
+ #define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_32 0x6UL
6382
+ #define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_48 0x7UL
6383
+ #define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_64 0x8UL
6384
+ #define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_96 0x9UL
6385
+ #define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_128 0xaUL
6386
+ #define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_192 0xbUL
6387
+ #define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_256 0xcUL
6388
+ #define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_320 0xdUL
6389
+ #define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_384 0xeUL
6390
+ #define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_MAX 0xfUL
6391
+ #define RING_ALLOC_REQ_CMPL_COAL_CNT_LAST RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_MAX
6335
6392
__le16 flags ;
6336
6393
#define RING_ALLOC_REQ_FLAGS_RX_SOP_PAD 0x1UL
6337
6394
__le64 page_tbl_addr ;
@@ -7099,6 +7156,7 @@ struct hwrm_cfa_ntuple_filter_alloc_input {
7099
7156
#define CFA_NTUPLE_FILTER_ALLOC_REQ_FLAGS_DEST_FID 0x8UL
7100
7157
#define CFA_NTUPLE_FILTER_ALLOC_REQ_FLAGS_ARP_REPLY 0x10UL
7101
7158
#define CFA_NTUPLE_FILTER_ALLOC_REQ_FLAGS_DEST_RFS_RING_IDX 0x20UL
7159
+ #define CFA_NTUPLE_FILTER_ALLOC_REQ_FLAGS_NO_L2_CONTEXT 0x40UL
7102
7160
__le32 enables ;
7103
7161
#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_L2_FILTER_ID 0x1UL
7104
7162
#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_ETHERTYPE 0x2UL
@@ -7234,6 +7292,7 @@ struct hwrm_cfa_ntuple_filter_cfg_input {
7234
7292
__le32 flags ;
7235
7293
#define CFA_NTUPLE_FILTER_CFG_REQ_FLAGS_DEST_FID 0x1UL
7236
7294
#define CFA_NTUPLE_FILTER_CFG_REQ_FLAGS_DEST_RFS_RING_IDX 0x2UL
7295
+ #define CFA_NTUPLE_FILTER_CFG_REQ_FLAGS_NO_L2_CONTEXT 0x4UL
7237
7296
__le64 ntuple_filter_id ;
7238
7297
__le32 new_dst_id ;
7239
7298
__le32 new_mirror_vnic_id ;
@@ -7834,11 +7893,11 @@ struct hwrm_cfa_adv_flow_mgnt_qcaps_output {
7834
7893
#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_TRUFLOW_CAPABLE 0x8000UL
7835
7894
#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_L2_FILTER_TRAFFIC_TYPE_L2_ROCE_SUPPORTED 0x10000UL
7836
7895
#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_LAG_SUPPORTED 0x20000UL
7896
+ #define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_NTUPLE_FLOW_NO_L2CTX_SUPPORTED 0x40000UL
7837
7897
u8 unused_0 [3 ];
7838
7898
u8 valid ;
7839
7899
};
7840
7900
7841
- /* hwrm_tunnel_dst_port_query_input (size:192b/24B) */
7842
7901
struct hwrm_tunnel_dst_port_query_input {
7843
7902
__le16 req_type ;
7844
7903
__le16 cmpl_ring ;
@@ -8414,6 +8473,86 @@ struct hwrm_fw_get_structured_data_cmd_err {
8414
8473
u8 unused_0 [7 ];
8415
8474
};
8416
8475
8476
+ /* hwrm_fw_livepatch_query_input (size:192b/24B) */
8477
+ struct hwrm_fw_livepatch_query_input {
8478
+ __le16 req_type ;
8479
+ __le16 cmpl_ring ;
8480
+ __le16 seq_id ;
8481
+ __le16 target_id ;
8482
+ __le64 resp_addr ;
8483
+ u8 fw_target ;
8484
+ #define FW_LIVEPATCH_QUERY_REQ_FW_TARGET_COMMON_FW 0x1UL
8485
+ #define FW_LIVEPATCH_QUERY_REQ_FW_TARGET_SECURE_FW 0x2UL
8486
+ #define FW_LIVEPATCH_QUERY_REQ_FW_TARGET_LAST FW_LIVEPATCH_QUERY_REQ_FW_TARGET_SECURE_FW
8487
+ u8 unused_0 [7 ];
8488
+ };
8489
+
8490
+ /* hwrm_fw_livepatch_query_output (size:640b/80B) */
8491
+ struct hwrm_fw_livepatch_query_output {
8492
+ __le16 error_code ;
8493
+ __le16 req_type ;
8494
+ __le16 seq_id ;
8495
+ __le16 resp_len ;
8496
+ char install_ver [32 ];
8497
+ char active_ver [32 ];
8498
+ __le16 status_flags ;
8499
+ #define FW_LIVEPATCH_QUERY_RESP_STATUS_FLAGS_INSTALL 0x1UL
8500
+ #define FW_LIVEPATCH_QUERY_RESP_STATUS_FLAGS_ACTIVE 0x2UL
8501
+ u8 unused_0 [5 ];
8502
+ u8 valid ;
8503
+ };
8504
+
8505
+ /* hwrm_fw_livepatch_input (size:256b/32B) */
8506
+ struct hwrm_fw_livepatch_input {
8507
+ __le16 req_type ;
8508
+ __le16 cmpl_ring ;
8509
+ __le16 seq_id ;
8510
+ __le16 target_id ;
8511
+ __le64 resp_addr ;
8512
+ u8 opcode ;
8513
+ #define FW_LIVEPATCH_REQ_OPCODE_ACTIVATE 0x1UL
8514
+ #define FW_LIVEPATCH_REQ_OPCODE_DEACTIVATE 0x2UL
8515
+ #define FW_LIVEPATCH_REQ_OPCODE_LAST FW_LIVEPATCH_REQ_OPCODE_DEACTIVATE
8516
+ u8 fw_target ;
8517
+ #define FW_LIVEPATCH_REQ_FW_TARGET_COMMON_FW 0x1UL
8518
+ #define FW_LIVEPATCH_REQ_FW_TARGET_SECURE_FW 0x2UL
8519
+ #define FW_LIVEPATCH_REQ_FW_TARGET_LAST FW_LIVEPATCH_REQ_FW_TARGET_SECURE_FW
8520
+ u8 loadtype ;
8521
+ #define FW_LIVEPATCH_REQ_LOADTYPE_NVM_INSTALL 0x1UL
8522
+ #define FW_LIVEPATCH_REQ_LOADTYPE_MEMORY_DIRECT 0x2UL
8523
+ #define FW_LIVEPATCH_REQ_LOADTYPE_LAST FW_LIVEPATCH_REQ_LOADTYPE_MEMORY_DIRECT
8524
+ u8 flags ;
8525
+ __le32 patch_len ;
8526
+ __le64 host_addr ;
8527
+ };
8528
+
8529
+ /* hwrm_fw_livepatch_output (size:128b/16B) */
8530
+ struct hwrm_fw_livepatch_output {
8531
+ __le16 error_code ;
8532
+ __le16 req_type ;
8533
+ __le16 seq_id ;
8534
+ __le16 resp_len ;
8535
+ u8 unused_0 [7 ];
8536
+ u8 valid ;
8537
+ };
8538
+
8539
+ /* hwrm_fw_livepatch_cmd_err (size:64b/8B) */
8540
+ struct hwrm_fw_livepatch_cmd_err {
8541
+ u8 code ;
8542
+ #define FW_LIVEPATCH_CMD_ERR_CODE_UNKNOWN 0x0UL
8543
+ #define FW_LIVEPATCH_CMD_ERR_CODE_INVALID_OPCODE 0x1UL
8544
+ #define FW_LIVEPATCH_CMD_ERR_CODE_INVALID_TARGET 0x2UL
8545
+ #define FW_LIVEPATCH_CMD_ERR_CODE_NOT_SUPPORTED 0x3UL
8546
+ #define FW_LIVEPATCH_CMD_ERR_CODE_NOT_INSTALLED 0x4UL
8547
+ #define FW_LIVEPATCH_CMD_ERR_CODE_NOT_PATCHED 0x5UL
8548
+ #define FW_LIVEPATCH_CMD_ERR_CODE_AUTH_FAIL 0x6UL
8549
+ #define FW_LIVEPATCH_CMD_ERR_CODE_INVALID_HEADER 0x7UL
8550
+ #define FW_LIVEPATCH_CMD_ERR_CODE_INVALID_SIZE 0x8UL
8551
+ #define FW_LIVEPATCH_CMD_ERR_CODE_ALREADY_PATCHED 0x9UL
8552
+ #define FW_LIVEPATCH_CMD_ERR_CODE_LAST FW_LIVEPATCH_CMD_ERR_CODE_ALREADY_PATCHED
8553
+ u8 unused_0 [7 ];
8554
+ };
8555
+
8417
8556
/* hwrm_exec_fwd_resp_input (size:1024b/128B) */
8418
8557
struct hwrm_exec_fwd_resp_input {
8419
8558
__le16 req_type ;
0 commit comments