brintos

brintos / linux-shallow public Read only

0
0
Text · 444.1 KiB · f8ef6f1 Raw
10721 lines · c
1/* Broadcom NetXtreme-C/E network driver.2 *3 * Copyright (c) 2014-2016 Broadcom Corporation4 * Copyright (c) 2014-2018 Broadcom Limited5 * Copyright (c) 2018-2024 Broadcom Inc.6 *7 * This program is free software; you can redistribute it and/or modify8 * it under the terms of the GNU General Public License as published by9 * the Free Software Foundation.10 *11 * DO NOT MODIFY!!! This file is automatically generated.12 */13 14#ifndef _BNXT_HSI_H_15#define _BNXT_HSI_H_16 17/* hwrm_cmd_hdr (size:128b/16B) */18struct hwrm_cmd_hdr {19	__le16	req_type;20	__le16	cmpl_ring;21	__le16	seq_id;22	__le16	target_id;23	__le64	resp_addr;24};25 26/* hwrm_resp_hdr (size:64b/8B) */27struct hwrm_resp_hdr {28	__le16	error_code;29	__le16	req_type;30	__le16	seq_id;31	__le16	resp_len;32};33 34#define CMD_DISCR_TLV_ENCAP 0x8000UL35#define CMD_DISCR_LAST     CMD_DISCR_TLV_ENCAP36 37 38#define TLV_TYPE_HWRM_REQUEST                    0x1UL39#define TLV_TYPE_HWRM_RESPONSE                   0x2UL40#define TLV_TYPE_ROCE_SP_COMMAND                 0x3UL41#define TLV_TYPE_QUERY_ROCE_CC_GEN1              0x4UL42#define TLV_TYPE_MODIFY_ROCE_CC_GEN1             0x5UL43#define TLV_TYPE_QUERY_ROCE_CC_GEN2              0x6UL44#define TLV_TYPE_MODIFY_ROCE_CC_GEN2             0x7UL45#define TLV_TYPE_ENGINE_CKV_ALIAS_ECC_PUBLIC_KEY 0x8001UL46#define TLV_TYPE_ENGINE_CKV_IV                   0x8003UL47#define TLV_TYPE_ENGINE_CKV_AUTH_TAG             0x8004UL48#define TLV_TYPE_ENGINE_CKV_CIPHERTEXT           0x8005UL49#define TLV_TYPE_ENGINE_CKV_HOST_ALGORITHMS      0x8006UL50#define TLV_TYPE_ENGINE_CKV_HOST_ECC_PUBLIC_KEY  0x8007UL51#define TLV_TYPE_ENGINE_CKV_ECDSA_SIGNATURE      0x8008UL52#define TLV_TYPE_ENGINE_CKV_FW_ECC_PUBLIC_KEY    0x8009UL53#define TLV_TYPE_ENGINE_CKV_FW_ALGORITHMS        0x800aUL54#define TLV_TYPE_LAST                           TLV_TYPE_ENGINE_CKV_FW_ALGORITHMS55 56 57/* tlv (size:64b/8B) */58struct tlv {59	__le16	cmd_discr;60	u8	reserved_8b;61	u8	flags;62	#define TLV_FLAGS_MORE         0x1UL63	#define TLV_FLAGS_MORE_LAST      0x0UL64	#define TLV_FLAGS_MORE_NOT_LAST  0x1UL65	#define TLV_FLAGS_REQUIRED     0x2UL66	#define TLV_FLAGS_REQUIRED_NO    (0x0UL << 1)67	#define TLV_FLAGS_REQUIRED_YES   (0x1UL << 1)68	#define TLV_FLAGS_REQUIRED_LAST TLV_FLAGS_REQUIRED_YES69	__le16	tlv_type;70	__le16	length;71};72 73/* input (size:128b/16B) */74struct input {75	__le16	req_type;76	__le16	cmpl_ring;77	__le16	seq_id;78	__le16	target_id;79	__le64	resp_addr;80};81 82/* output (size:64b/8B) */83struct output {84	__le16	error_code;85	__le16	req_type;86	__le16	seq_id;87	__le16	resp_len;88};89 90/* hwrm_short_input (size:128b/16B) */91struct hwrm_short_input {92	__le16	req_type;93	__le16	signature;94	#define SHORT_REQ_SIGNATURE_SHORT_CMD 0x4321UL95	#define SHORT_REQ_SIGNATURE_LAST     SHORT_REQ_SIGNATURE_SHORT_CMD96	__le16	target_id;97	#define SHORT_REQ_TARGET_ID_DEFAULT 0x0UL98	#define SHORT_REQ_TARGET_ID_TOOLS   0xfffdUL99	#define SHORT_REQ_TARGET_ID_LAST   SHORT_REQ_TARGET_ID_TOOLS100	__le16	size;101	__le64	req_addr;102};103 104/* cmd_nums (size:64b/8B) */105struct cmd_nums {106	__le16	req_type;107	#define HWRM_VER_GET                              0x0UL108	#define HWRM_FUNC_ECHO_RESPONSE                   0xbUL109	#define HWRM_ERROR_RECOVERY_QCFG                  0xcUL110	#define HWRM_FUNC_DRV_IF_CHANGE                   0xdUL111	#define HWRM_FUNC_BUF_UNRGTR                      0xeUL112	#define HWRM_FUNC_VF_CFG                          0xfUL113	#define HWRM_RESERVED1                            0x10UL114	#define HWRM_FUNC_RESET                           0x11UL115	#define HWRM_FUNC_GETFID                          0x12UL116	#define HWRM_FUNC_VF_ALLOC                        0x13UL117	#define HWRM_FUNC_VF_FREE                         0x14UL118	#define HWRM_FUNC_QCAPS                           0x15UL119	#define HWRM_FUNC_QCFG                            0x16UL120	#define HWRM_FUNC_CFG                             0x17UL121	#define HWRM_FUNC_QSTATS                          0x18UL122	#define HWRM_FUNC_CLR_STATS                       0x19UL123	#define HWRM_FUNC_DRV_UNRGTR                      0x1aUL124	#define HWRM_FUNC_VF_RESC_FREE                    0x1bUL125	#define HWRM_FUNC_VF_VNIC_IDS_QUERY               0x1cUL126	#define HWRM_FUNC_DRV_RGTR                        0x1dUL127	#define HWRM_FUNC_DRV_QVER                        0x1eUL128	#define HWRM_FUNC_BUF_RGTR                        0x1fUL129	#define HWRM_PORT_PHY_CFG                         0x20UL130	#define HWRM_PORT_MAC_CFG                         0x21UL131	#define HWRM_PORT_TS_QUERY                        0x22UL132	#define HWRM_PORT_QSTATS                          0x23UL133	#define HWRM_PORT_LPBK_QSTATS                     0x24UL134	#define HWRM_PORT_CLR_STATS                       0x25UL135	#define HWRM_PORT_LPBK_CLR_STATS                  0x26UL136	#define HWRM_PORT_PHY_QCFG                        0x27UL137	#define HWRM_PORT_MAC_QCFG                        0x28UL138	#define HWRM_PORT_MAC_PTP_QCFG                    0x29UL139	#define HWRM_PORT_PHY_QCAPS                       0x2aUL140	#define HWRM_PORT_PHY_I2C_WRITE                   0x2bUL141	#define HWRM_PORT_PHY_I2C_READ                    0x2cUL142	#define HWRM_PORT_LED_CFG                         0x2dUL143	#define HWRM_PORT_LED_QCFG                        0x2eUL144	#define HWRM_PORT_LED_QCAPS                       0x2fUL145	#define HWRM_QUEUE_QPORTCFG                       0x30UL146	#define HWRM_QUEUE_QCFG                           0x31UL147	#define HWRM_QUEUE_CFG                            0x32UL148	#define HWRM_FUNC_VLAN_CFG                        0x33UL149	#define HWRM_FUNC_VLAN_QCFG                       0x34UL150	#define HWRM_QUEUE_PFCENABLE_QCFG                 0x35UL151	#define HWRM_QUEUE_PFCENABLE_CFG                  0x36UL152	#define HWRM_QUEUE_PRI2COS_QCFG                   0x37UL153	#define HWRM_QUEUE_PRI2COS_CFG                    0x38UL154	#define HWRM_QUEUE_COS2BW_QCFG                    0x39UL155	#define HWRM_QUEUE_COS2BW_CFG                     0x3aUL156	#define HWRM_QUEUE_DSCP_QCAPS                     0x3bUL157	#define HWRM_QUEUE_DSCP2PRI_QCFG                  0x3cUL158	#define HWRM_QUEUE_DSCP2PRI_CFG                   0x3dUL159	#define HWRM_VNIC_ALLOC                           0x40UL160	#define HWRM_VNIC_FREE                            0x41UL161	#define HWRM_VNIC_CFG                             0x42UL162	#define HWRM_VNIC_QCFG                            0x43UL163	#define HWRM_VNIC_TPA_CFG                         0x44UL164	#define HWRM_VNIC_TPA_QCFG                        0x45UL165	#define HWRM_VNIC_RSS_CFG                         0x46UL166	#define HWRM_VNIC_RSS_QCFG                        0x47UL167	#define HWRM_VNIC_PLCMODES_CFG                    0x48UL168	#define HWRM_VNIC_PLCMODES_QCFG                   0x49UL169	#define HWRM_VNIC_QCAPS                           0x4aUL170	#define HWRM_VNIC_UPDATE                          0x4bUL171	#define HWRM_RING_ALLOC                           0x50UL172	#define HWRM_RING_FREE                            0x51UL173	#define HWRM_RING_CMPL_RING_QAGGINT_PARAMS        0x52UL174	#define HWRM_RING_CMPL_RING_CFG_AGGINT_PARAMS     0x53UL175	#define HWRM_RING_AGGINT_QCAPS                    0x54UL176	#define HWRM_RING_SCHQ_ALLOC                      0x55UL177	#define HWRM_RING_SCHQ_CFG                        0x56UL178	#define HWRM_RING_SCHQ_FREE                       0x57UL179	#define HWRM_RING_RESET                           0x5eUL180	#define HWRM_RING_GRP_ALLOC                       0x60UL181	#define HWRM_RING_GRP_FREE                        0x61UL182	#define HWRM_RING_CFG                             0x62UL183	#define HWRM_RING_QCFG                            0x63UL184	#define HWRM_RESERVED5                            0x64UL185	#define HWRM_RESERVED6                            0x65UL186	#define HWRM_VNIC_RSS_COS_LB_CTX_ALLOC            0x70UL187	#define HWRM_VNIC_RSS_COS_LB_CTX_FREE             0x71UL188	#define HWRM_QUEUE_MPLS_QCAPS                     0x80UL189	#define HWRM_QUEUE_MPLSTC2PRI_QCFG                0x81UL190	#define HWRM_QUEUE_MPLSTC2PRI_CFG                 0x82UL191	#define HWRM_QUEUE_VLANPRI_QCAPS                  0x83UL192	#define HWRM_QUEUE_VLANPRI2PRI_QCFG               0x84UL193	#define HWRM_QUEUE_VLANPRI2PRI_CFG                0x85UL194	#define HWRM_QUEUE_GLOBAL_CFG                     0x86UL195	#define HWRM_QUEUE_GLOBAL_QCFG                    0x87UL196	#define HWRM_QUEUE_ADPTV_QOS_RX_FEATURE_QCFG      0x88UL197	#define HWRM_QUEUE_ADPTV_QOS_RX_FEATURE_CFG       0x89UL198	#define HWRM_QUEUE_ADPTV_QOS_TX_FEATURE_QCFG      0x8aUL199	#define HWRM_QUEUE_ADPTV_QOS_TX_FEATURE_CFG       0x8bUL200	#define HWRM_QUEUE_QCAPS                          0x8cUL201	#define HWRM_QUEUE_ADPTV_QOS_RX_TUNING_QCFG       0x8dUL202	#define HWRM_QUEUE_ADPTV_QOS_RX_TUNING_CFG        0x8eUL203	#define HWRM_QUEUE_ADPTV_QOS_TX_TUNING_QCFG       0x8fUL204	#define HWRM_CFA_L2_FILTER_ALLOC                  0x90UL205	#define HWRM_CFA_L2_FILTER_FREE                   0x91UL206	#define HWRM_CFA_L2_FILTER_CFG                    0x92UL207	#define HWRM_CFA_L2_SET_RX_MASK                   0x93UL208	#define HWRM_CFA_VLAN_ANTISPOOF_CFG               0x94UL209	#define HWRM_CFA_TUNNEL_FILTER_ALLOC              0x95UL210	#define HWRM_CFA_TUNNEL_FILTER_FREE               0x96UL211	#define HWRM_CFA_ENCAP_RECORD_ALLOC               0x97UL212	#define HWRM_CFA_ENCAP_RECORD_FREE                0x98UL213	#define HWRM_CFA_NTUPLE_FILTER_ALLOC              0x99UL214	#define HWRM_CFA_NTUPLE_FILTER_FREE               0x9aUL215	#define HWRM_CFA_NTUPLE_FILTER_CFG                0x9bUL216	#define HWRM_CFA_EM_FLOW_ALLOC                    0x9cUL217	#define HWRM_CFA_EM_FLOW_FREE                     0x9dUL218	#define HWRM_CFA_EM_FLOW_CFG                      0x9eUL219	#define HWRM_TUNNEL_DST_PORT_QUERY                0xa0UL220	#define HWRM_TUNNEL_DST_PORT_ALLOC                0xa1UL221	#define HWRM_TUNNEL_DST_PORT_FREE                 0xa2UL222	#define HWRM_QUEUE_ADPTV_QOS_TX_TUNING_CFG        0xa3UL223	#define HWRM_STAT_CTX_ENG_QUERY                   0xafUL224	#define HWRM_STAT_CTX_ALLOC                       0xb0UL225	#define HWRM_STAT_CTX_FREE                        0xb1UL226	#define HWRM_STAT_CTX_QUERY                       0xb2UL227	#define HWRM_STAT_CTX_CLR_STATS                   0xb3UL228	#define HWRM_PORT_QSTATS_EXT                      0xb4UL229	#define HWRM_PORT_PHY_MDIO_WRITE                  0xb5UL230	#define HWRM_PORT_PHY_MDIO_READ                   0xb6UL231	#define HWRM_PORT_PHY_MDIO_BUS_ACQUIRE            0xb7UL232	#define HWRM_PORT_PHY_MDIO_BUS_RELEASE            0xb8UL233	#define HWRM_PORT_QSTATS_EXT_PFC_WD               0xb9UL234	#define HWRM_RESERVED7                            0xbaUL235	#define HWRM_PORT_TX_FIR_CFG                      0xbbUL236	#define HWRM_PORT_TX_FIR_QCFG                     0xbcUL237	#define HWRM_PORT_ECN_QSTATS                      0xbdUL238	#define HWRM_FW_LIVEPATCH_QUERY                   0xbeUL239	#define HWRM_FW_LIVEPATCH                         0xbfUL240	#define HWRM_FW_RESET                             0xc0UL241	#define HWRM_FW_QSTATUS                           0xc1UL242	#define HWRM_FW_HEALTH_CHECK                      0xc2UL243	#define HWRM_FW_SYNC                              0xc3UL244	#define HWRM_FW_STATE_QCAPS                       0xc4UL245	#define HWRM_FW_STATE_QUIESCE                     0xc5UL246	#define HWRM_FW_STATE_BACKUP                      0xc6UL247	#define HWRM_FW_STATE_RESTORE                     0xc7UL248	#define HWRM_FW_SET_TIME                          0xc8UL249	#define HWRM_FW_GET_TIME                          0xc9UL250	#define HWRM_FW_SET_STRUCTURED_DATA               0xcaUL251	#define HWRM_FW_GET_STRUCTURED_DATA               0xcbUL252	#define HWRM_FW_IPC_MAILBOX                       0xccUL253	#define HWRM_FW_ECN_CFG                           0xcdUL254	#define HWRM_FW_ECN_QCFG                          0xceUL255	#define HWRM_FW_SECURE_CFG                        0xcfUL256	#define HWRM_EXEC_FWD_RESP                        0xd0UL257	#define HWRM_REJECT_FWD_RESP                      0xd1UL258	#define HWRM_FWD_RESP                             0xd2UL259	#define HWRM_FWD_ASYNC_EVENT_CMPL                 0xd3UL260	#define HWRM_OEM_CMD                              0xd4UL261	#define HWRM_PORT_PRBS_TEST                       0xd5UL262	#define HWRM_PORT_SFP_SIDEBAND_CFG                0xd6UL263	#define HWRM_PORT_SFP_SIDEBAND_QCFG               0xd7UL264	#define HWRM_FW_STATE_UNQUIESCE                   0xd8UL265	#define HWRM_PORT_DSC_DUMP                        0xd9UL266	#define HWRM_PORT_EP_TX_QCFG                      0xdaUL267	#define HWRM_PORT_EP_TX_CFG                       0xdbUL268	#define HWRM_PORT_CFG                             0xdcUL269	#define HWRM_PORT_QCFG                            0xddUL270	#define HWRM_PORT_MAC_QCAPS                       0xdfUL271	#define HWRM_TEMP_MONITOR_QUERY                   0xe0UL272	#define HWRM_REG_POWER_QUERY                      0xe1UL273	#define HWRM_CORE_FREQUENCY_QUERY                 0xe2UL274	#define HWRM_REG_POWER_HISTOGRAM                  0xe3UL275	#define HWRM_WOL_FILTER_ALLOC                     0xf0UL276	#define HWRM_WOL_FILTER_FREE                      0xf1UL277	#define HWRM_WOL_FILTER_QCFG                      0xf2UL278	#define HWRM_WOL_REASON_QCFG                      0xf3UL279	#define HWRM_CFA_METER_QCAPS                      0xf4UL280	#define HWRM_CFA_METER_PROFILE_ALLOC              0xf5UL281	#define HWRM_CFA_METER_PROFILE_FREE               0xf6UL282	#define HWRM_CFA_METER_PROFILE_CFG                0xf7UL283	#define HWRM_CFA_METER_INSTANCE_ALLOC             0xf8UL284	#define HWRM_CFA_METER_INSTANCE_FREE              0xf9UL285	#define HWRM_CFA_METER_INSTANCE_CFG               0xfaUL286	#define HWRM_CFA_VFR_ALLOC                        0xfdUL287	#define HWRM_CFA_VFR_FREE                         0xfeUL288	#define HWRM_CFA_VF_PAIR_ALLOC                    0x100UL289	#define HWRM_CFA_VF_PAIR_FREE                     0x101UL290	#define HWRM_CFA_VF_PAIR_INFO                     0x102UL291	#define HWRM_CFA_FLOW_ALLOC                       0x103UL292	#define HWRM_CFA_FLOW_FREE                        0x104UL293	#define HWRM_CFA_FLOW_FLUSH                       0x105UL294	#define HWRM_CFA_FLOW_STATS                       0x106UL295	#define HWRM_CFA_FLOW_INFO                        0x107UL296	#define HWRM_CFA_DECAP_FILTER_ALLOC               0x108UL297	#define HWRM_CFA_DECAP_FILTER_FREE                0x109UL298	#define HWRM_CFA_VLAN_ANTISPOOF_QCFG              0x10aUL299	#define HWRM_CFA_REDIRECT_TUNNEL_TYPE_ALLOC       0x10bUL300	#define HWRM_CFA_REDIRECT_TUNNEL_TYPE_FREE        0x10cUL301	#define HWRM_CFA_PAIR_ALLOC                       0x10dUL302	#define HWRM_CFA_PAIR_FREE                        0x10eUL303	#define HWRM_CFA_PAIR_INFO                        0x10fUL304	#define HWRM_FW_IPC_MSG                           0x110UL305	#define HWRM_CFA_REDIRECT_TUNNEL_TYPE_INFO        0x111UL306	#define HWRM_CFA_REDIRECT_QUERY_TUNNEL_TYPE       0x112UL307	#define HWRM_CFA_FLOW_AGING_TIMER_RESET           0x113UL308	#define HWRM_CFA_FLOW_AGING_CFG                   0x114UL309	#define HWRM_CFA_FLOW_AGING_QCFG                  0x115UL310	#define HWRM_CFA_FLOW_AGING_QCAPS                 0x116UL311	#define HWRM_CFA_CTX_MEM_RGTR                     0x117UL312	#define HWRM_CFA_CTX_MEM_UNRGTR                   0x118UL313	#define HWRM_CFA_CTX_MEM_QCTX                     0x119UL314	#define HWRM_CFA_CTX_MEM_QCAPS                    0x11aUL315	#define HWRM_CFA_COUNTER_QCAPS                    0x11bUL316	#define HWRM_CFA_COUNTER_CFG                      0x11cUL317	#define HWRM_CFA_COUNTER_QCFG                     0x11dUL318	#define HWRM_CFA_COUNTER_QSTATS                   0x11eUL319	#define HWRM_CFA_TCP_FLAG_PROCESS_QCFG            0x11fUL320	#define HWRM_CFA_EEM_QCAPS                        0x120UL321	#define HWRM_CFA_EEM_CFG                          0x121UL322	#define HWRM_CFA_EEM_QCFG                         0x122UL323	#define HWRM_CFA_EEM_OP                           0x123UL324	#define HWRM_CFA_ADV_FLOW_MGNT_QCAPS              0x124UL325	#define HWRM_CFA_TFLIB                            0x125UL326	#define HWRM_CFA_LAG_GROUP_MEMBER_RGTR            0x126UL327	#define HWRM_CFA_LAG_GROUP_MEMBER_UNRGTR          0x127UL328	#define HWRM_CFA_TLS_FILTER_ALLOC                 0x128UL329	#define HWRM_CFA_TLS_FILTER_FREE                  0x129UL330	#define HWRM_CFA_RELEASE_AFM_FUNC                 0x12aUL331	#define HWRM_ENGINE_CKV_STATUS                    0x12eUL332	#define HWRM_ENGINE_CKV_CKEK_ADD                  0x12fUL333	#define HWRM_ENGINE_CKV_CKEK_DELETE               0x130UL334	#define HWRM_ENGINE_CKV_KEY_ADD                   0x131UL335	#define HWRM_ENGINE_CKV_KEY_DELETE                0x132UL336	#define HWRM_ENGINE_CKV_FLUSH                     0x133UL337	#define HWRM_ENGINE_CKV_RNG_GET                   0x134UL338	#define HWRM_ENGINE_CKV_KEY_GEN                   0x135UL339	#define HWRM_ENGINE_CKV_KEY_LABEL_CFG             0x136UL340	#define HWRM_ENGINE_CKV_KEY_LABEL_QCFG            0x137UL341	#define HWRM_ENGINE_QG_CONFIG_QUERY               0x13cUL342	#define HWRM_ENGINE_QG_QUERY                      0x13dUL343	#define HWRM_ENGINE_QG_METER_PROFILE_CONFIG_QUERY 0x13eUL344	#define HWRM_ENGINE_QG_METER_PROFILE_QUERY        0x13fUL345	#define HWRM_ENGINE_QG_METER_PROFILE_ALLOC        0x140UL346	#define HWRM_ENGINE_QG_METER_PROFILE_FREE         0x141UL347	#define HWRM_ENGINE_QG_METER_QUERY                0x142UL348	#define HWRM_ENGINE_QG_METER_BIND                 0x143UL349	#define HWRM_ENGINE_QG_METER_UNBIND               0x144UL350	#define HWRM_ENGINE_QG_FUNC_BIND                  0x145UL351	#define HWRM_ENGINE_SG_CONFIG_QUERY               0x146UL352	#define HWRM_ENGINE_SG_QUERY                      0x147UL353	#define HWRM_ENGINE_SG_METER_QUERY                0x148UL354	#define HWRM_ENGINE_SG_METER_CONFIG               0x149UL355	#define HWRM_ENGINE_SG_QG_BIND                    0x14aUL356	#define HWRM_ENGINE_QG_SG_UNBIND                  0x14bUL357	#define HWRM_ENGINE_CONFIG_QUERY                  0x154UL358	#define HWRM_ENGINE_STATS_CONFIG                  0x155UL359	#define HWRM_ENGINE_STATS_CLEAR                   0x156UL360	#define HWRM_ENGINE_STATS_QUERY                   0x157UL361	#define HWRM_ENGINE_STATS_QUERY_CONTINUOUS_ERROR  0x158UL362	#define HWRM_ENGINE_RQ_ALLOC                      0x15eUL363	#define HWRM_ENGINE_RQ_FREE                       0x15fUL364	#define HWRM_ENGINE_CQ_ALLOC                      0x160UL365	#define HWRM_ENGINE_CQ_FREE                       0x161UL366	#define HWRM_ENGINE_NQ_ALLOC                      0x162UL367	#define HWRM_ENGINE_NQ_FREE                       0x163UL368	#define HWRM_ENGINE_ON_DIE_RQE_CREDITS            0x164UL369	#define HWRM_ENGINE_FUNC_QCFG                     0x165UL370	#define HWRM_FUNC_RESOURCE_QCAPS                  0x190UL371	#define HWRM_FUNC_VF_RESOURCE_CFG                 0x191UL372	#define HWRM_FUNC_BACKING_STORE_QCAPS             0x192UL373	#define HWRM_FUNC_BACKING_STORE_CFG               0x193UL374	#define HWRM_FUNC_BACKING_STORE_QCFG              0x194UL375	#define HWRM_FUNC_VF_BW_CFG                       0x195UL376	#define HWRM_FUNC_VF_BW_QCFG                      0x196UL377	#define HWRM_FUNC_HOST_PF_IDS_QUERY               0x197UL378	#define HWRM_FUNC_QSTATS_EXT                      0x198UL379	#define HWRM_STAT_EXT_CTX_QUERY                   0x199UL380	#define HWRM_FUNC_SPD_CFG                         0x19aUL381	#define HWRM_FUNC_SPD_QCFG                        0x19bUL382	#define HWRM_FUNC_PTP_PIN_QCFG                    0x19cUL383	#define HWRM_FUNC_PTP_PIN_CFG                     0x19dUL384	#define HWRM_FUNC_PTP_CFG                         0x19eUL385	#define HWRM_FUNC_PTP_TS_QUERY                    0x19fUL386	#define HWRM_FUNC_PTP_EXT_CFG                     0x1a0UL387	#define HWRM_FUNC_PTP_EXT_QCFG                    0x1a1UL388	#define HWRM_FUNC_KEY_CTX_ALLOC                   0x1a2UL389	#define HWRM_FUNC_BACKING_STORE_CFG_V2            0x1a3UL390	#define HWRM_FUNC_BACKING_STORE_QCFG_V2           0x1a4UL391	#define HWRM_FUNC_DBR_PACING_CFG                  0x1a5UL392	#define HWRM_FUNC_DBR_PACING_QCFG                 0x1a6UL393	#define HWRM_FUNC_DBR_PACING_BROADCAST_EVENT      0x1a7UL394	#define HWRM_FUNC_BACKING_STORE_QCAPS_V2          0x1a8UL395	#define HWRM_FUNC_DBR_PACING_NQLIST_QUERY         0x1a9UL396	#define HWRM_FUNC_DBR_RECOVERY_COMPLETED          0x1aaUL397	#define HWRM_FUNC_SYNCE_CFG                       0x1abUL398	#define HWRM_FUNC_SYNCE_QCFG                      0x1acUL399	#define HWRM_FUNC_KEY_CTX_FREE                    0x1adUL400	#define HWRM_FUNC_LAG_MODE_CFG                    0x1aeUL401	#define HWRM_FUNC_LAG_MODE_QCFG                   0x1afUL402	#define HWRM_FUNC_LAG_CREATE                      0x1b0UL403	#define HWRM_FUNC_LAG_UPDATE                      0x1b1UL404	#define HWRM_FUNC_LAG_FREE                        0x1b2UL405	#define HWRM_FUNC_LAG_QCFG                        0x1b3UL406	#define HWRM_FUNC_TIMEDTX_PACING_RATE_ADD         0x1c2UL407	#define HWRM_FUNC_TIMEDTX_PACING_RATE_DELETE      0x1c3UL408	#define HWRM_FUNC_TIMEDTX_PACING_RATE_QUERY       0x1c4UL409	#define HWRM_SELFTEST_QLIST                       0x200UL410	#define HWRM_SELFTEST_EXEC                        0x201UL411	#define HWRM_SELFTEST_IRQ                         0x202UL412	#define HWRM_SELFTEST_RETRIEVE_SERDES_DATA        0x203UL413	#define HWRM_PCIE_QSTATS                          0x204UL414	#define HWRM_MFG_FRU_WRITE_CONTROL                0x205UL415	#define HWRM_MFG_TIMERS_QUERY                     0x206UL416	#define HWRM_MFG_OTP_CFG                          0x207UL417	#define HWRM_MFG_OTP_QCFG                         0x208UL418	#define HWRM_MFG_HDMA_TEST                        0x209UL419	#define HWRM_MFG_FRU_EEPROM_WRITE                 0x20aUL420	#define HWRM_MFG_FRU_EEPROM_READ                  0x20bUL421	#define HWRM_MFG_SOC_IMAGE                        0x20cUL422	#define HWRM_MFG_SOC_QSTATUS                      0x20dUL423	#define HWRM_MFG_PARAM_CRITICAL_DATA_FINALIZE     0x20eUL424	#define HWRM_MFG_PARAM_CRITICAL_DATA_READ         0x20fUL425	#define HWRM_MFG_PARAM_CRITICAL_DATA_HEALTH       0x210UL426	#define HWRM_MFG_PRVSN_EXPORT_CSR                 0x211UL427	#define HWRM_MFG_PRVSN_IMPORT_CERT                0x212UL428	#define HWRM_MFG_PRVSN_GET_STATE                  0x213UL429	#define HWRM_MFG_GET_NVM_MEASUREMENT              0x214UL430	#define HWRM_MFG_PSOC_QSTATUS                     0x215UL431	#define HWRM_MFG_SELFTEST_QLIST                   0x216UL432	#define HWRM_MFG_SELFTEST_EXEC                    0x217UL433	#define HWRM_STAT_GENERIC_QSTATS                  0x218UL434	#define HWRM_MFG_PRVSN_EXPORT_CERT                0x219UL435	#define HWRM_STAT_DB_ERROR_QSTATS                 0x21aUL436	#define HWRM_MFG_TESTS                            0x21bUL437	#define HWRM_PORT_POE_CFG                         0x230UL438	#define HWRM_PORT_POE_QCFG                        0x231UL439	#define HWRM_UDCC_QCAPS                           0x258UL440	#define HWRM_UDCC_CFG                             0x259UL441	#define HWRM_UDCC_QCFG                            0x25aUL442	#define HWRM_UDCC_SESSION_CFG                     0x25bUL443	#define HWRM_UDCC_SESSION_QCFG                    0x25cUL444	#define HWRM_UDCC_SESSION_QUERY                   0x25dUL445	#define HWRM_UDCC_COMP_CFG                        0x25eUL446	#define HWRM_UDCC_COMP_QCFG                       0x25fUL447	#define HWRM_UDCC_COMP_QUERY                      0x260UL448	#define HWRM_QUEUE_PFCWD_TIMEOUT_QCAPS            0x261UL449	#define HWRM_QUEUE_PFCWD_TIMEOUT_CFG              0x262UL450	#define HWRM_QUEUE_PFCWD_TIMEOUT_QCFG             0x263UL451	#define HWRM_TF                                   0x2bcUL452	#define HWRM_TF_VERSION_GET                       0x2bdUL453	#define HWRM_TF_SESSION_OPEN                      0x2c6UL454	#define HWRM_TF_SESSION_REGISTER                  0x2c8UL455	#define HWRM_TF_SESSION_UNREGISTER                0x2c9UL456	#define HWRM_TF_SESSION_CLOSE                     0x2caUL457	#define HWRM_TF_SESSION_QCFG                      0x2cbUL458	#define HWRM_TF_SESSION_RESC_QCAPS                0x2ccUL459	#define HWRM_TF_SESSION_RESC_ALLOC                0x2cdUL460	#define HWRM_TF_SESSION_RESC_FREE                 0x2ceUL461	#define HWRM_TF_SESSION_RESC_FLUSH                0x2cfUL462	#define HWRM_TF_SESSION_RESC_INFO                 0x2d0UL463	#define HWRM_TF_SESSION_HOTUP_STATE_SET           0x2d1UL464	#define HWRM_TF_SESSION_HOTUP_STATE_GET           0x2d2UL465	#define HWRM_TF_TBL_TYPE_GET                      0x2daUL466	#define HWRM_TF_TBL_TYPE_SET                      0x2dbUL467	#define HWRM_TF_TBL_TYPE_BULK_GET                 0x2dcUL468	#define HWRM_TF_EM_INSERT                         0x2eaUL469	#define HWRM_TF_EM_DELETE                         0x2ebUL470	#define HWRM_TF_EM_HASH_INSERT                    0x2ecUL471	#define HWRM_TF_EM_MOVE                           0x2edUL472	#define HWRM_TF_TCAM_SET                          0x2f8UL473	#define HWRM_TF_TCAM_GET                          0x2f9UL474	#define HWRM_TF_TCAM_MOVE                         0x2faUL475	#define HWRM_TF_TCAM_FREE                         0x2fbUL476	#define HWRM_TF_GLOBAL_CFG_SET                    0x2fcUL477	#define HWRM_TF_GLOBAL_CFG_GET                    0x2fdUL478	#define HWRM_TF_IF_TBL_SET                        0x2feUL479	#define HWRM_TF_IF_TBL_GET                        0x2ffUL480	#define HWRM_TF_RESC_USAGE_SET                    0x300UL481	#define HWRM_TF_RESC_USAGE_QUERY                  0x301UL482	#define HWRM_TF_TBL_TYPE_ALLOC                    0x302UL483	#define HWRM_TF_TBL_TYPE_FREE                     0x303UL484	#define HWRM_TFC_TBL_SCOPE_QCAPS                  0x380UL485	#define HWRM_TFC_TBL_SCOPE_ID_ALLOC               0x381UL486	#define HWRM_TFC_TBL_SCOPE_CONFIG                 0x382UL487	#define HWRM_TFC_TBL_SCOPE_DECONFIG               0x383UL488	#define HWRM_TFC_TBL_SCOPE_FID_ADD                0x384UL489	#define HWRM_TFC_TBL_SCOPE_FID_REM                0x385UL490	#define HWRM_TFC_TBL_SCOPE_POOL_ALLOC             0x386UL491	#define HWRM_TFC_TBL_SCOPE_POOL_FREE              0x387UL492	#define HWRM_TFC_SESSION_ID_ALLOC                 0x388UL493	#define HWRM_TFC_SESSION_FID_ADD                  0x389UL494	#define HWRM_TFC_SESSION_FID_REM                  0x38aUL495	#define HWRM_TFC_IDENT_ALLOC                      0x38bUL496	#define HWRM_TFC_IDENT_FREE                       0x38cUL497	#define HWRM_TFC_IDX_TBL_ALLOC                    0x38dUL498	#define HWRM_TFC_IDX_TBL_ALLOC_SET                0x38eUL499	#define HWRM_TFC_IDX_TBL_SET                      0x38fUL500	#define HWRM_TFC_IDX_TBL_GET                      0x390UL501	#define HWRM_TFC_IDX_TBL_FREE                     0x391UL502	#define HWRM_TFC_GLOBAL_ID_ALLOC                  0x392UL503	#define HWRM_TFC_TCAM_SET                         0x393UL504	#define HWRM_TFC_TCAM_GET                         0x394UL505	#define HWRM_TFC_TCAM_ALLOC                       0x395UL506	#define HWRM_TFC_TCAM_ALLOC_SET                   0x396UL507	#define HWRM_TFC_TCAM_FREE                        0x397UL508	#define HWRM_TFC_IF_TBL_SET                       0x398UL509	#define HWRM_TFC_IF_TBL_GET                       0x399UL510	#define HWRM_TFC_TBL_SCOPE_CONFIG_GET             0x39aUL511	#define HWRM_TFC_RESC_USAGE_QUERY                 0x39bUL512	#define HWRM_SV                                   0x400UL513	#define HWRM_DBG_SERDES_TEST                      0xff0eUL514	#define HWRM_DBG_LOG_BUFFER_FLUSH                 0xff0fUL515	#define HWRM_DBG_READ_DIRECT                      0xff10UL516	#define HWRM_DBG_READ_INDIRECT                    0xff11UL517	#define HWRM_DBG_WRITE_DIRECT                     0xff12UL518	#define HWRM_DBG_WRITE_INDIRECT                   0xff13UL519	#define HWRM_DBG_DUMP                             0xff14UL520	#define HWRM_DBG_ERASE_NVM                        0xff15UL521	#define HWRM_DBG_CFG                              0xff16UL522	#define HWRM_DBG_COREDUMP_LIST                    0xff17UL523	#define HWRM_DBG_COREDUMP_INITIATE                0xff18UL524	#define HWRM_DBG_COREDUMP_RETRIEVE                0xff19UL525	#define HWRM_DBG_FW_CLI                           0xff1aUL526	#define HWRM_DBG_I2C_CMD                          0xff1bUL527	#define HWRM_DBG_RING_INFO_GET                    0xff1cUL528	#define HWRM_DBG_CRASHDUMP_HEADER                 0xff1dUL529	#define HWRM_DBG_CRASHDUMP_ERASE                  0xff1eUL530	#define HWRM_DBG_DRV_TRACE                        0xff1fUL531	#define HWRM_DBG_QCAPS                            0xff20UL532	#define HWRM_DBG_QCFG                             0xff21UL533	#define HWRM_DBG_CRASHDUMP_MEDIUM_CFG             0xff22UL534	#define HWRM_DBG_USEQ_ALLOC                       0xff23UL535	#define HWRM_DBG_USEQ_FREE                        0xff24UL536	#define HWRM_DBG_USEQ_FLUSH                       0xff25UL537	#define HWRM_DBG_USEQ_QCAPS                       0xff26UL538	#define HWRM_DBG_USEQ_CW_CFG                      0xff27UL539	#define HWRM_DBG_USEQ_SCHED_CFG                   0xff28UL540	#define HWRM_DBG_USEQ_RUN                         0xff29UL541	#define HWRM_DBG_USEQ_DELIVERY_REQ                0xff2aUL542	#define HWRM_DBG_USEQ_RESP_HDR                    0xff2bUL543	#define HWRM_DBG_COREDUMP_CAPTURE                 0xff2cUL544	#define HWRM_DBG_PTRACE                           0xff2dUL545	#define HWRM_DBG_SIM_CABLE_STATE                  0xff2eUL546	#define HWRM_NVM_GET_VPD_FIELD_INFO               0xffeaUL547	#define HWRM_NVM_SET_VPD_FIELD_INFO               0xffebUL548	#define HWRM_NVM_DEFRAG                           0xffecUL549	#define HWRM_NVM_REQ_ARBITRATION                  0xffedUL550	#define HWRM_NVM_FACTORY_DEFAULTS                 0xffeeUL551	#define HWRM_NVM_VALIDATE_OPTION                  0xffefUL552	#define HWRM_NVM_FLUSH                            0xfff0UL553	#define HWRM_NVM_GET_VARIABLE                     0xfff1UL554	#define HWRM_NVM_SET_VARIABLE                     0xfff2UL555	#define HWRM_NVM_INSTALL_UPDATE                   0xfff3UL556	#define HWRM_NVM_MODIFY                           0xfff4UL557	#define HWRM_NVM_VERIFY_UPDATE                    0xfff5UL558	#define HWRM_NVM_GET_DEV_INFO                     0xfff6UL559	#define HWRM_NVM_ERASE_DIR_ENTRY                  0xfff7UL560	#define HWRM_NVM_MOD_DIR_ENTRY                    0xfff8UL561	#define HWRM_NVM_FIND_DIR_ENTRY                   0xfff9UL562	#define HWRM_NVM_GET_DIR_ENTRIES                  0xfffaUL563	#define HWRM_NVM_GET_DIR_INFO                     0xfffbUL564	#define HWRM_NVM_RAW_DUMP                         0xfffcUL565	#define HWRM_NVM_READ                             0xfffdUL566	#define HWRM_NVM_WRITE                            0xfffeUL567	#define HWRM_NVM_RAW_WRITE_BLK                    0xffffUL568	#define HWRM_LAST                                HWRM_NVM_RAW_WRITE_BLK569	__le16	unused_0[3];570};571 572/* ret_codes (size:64b/8B) */573struct ret_codes {574	__le16	error_code;575	#define HWRM_ERR_CODE_SUCCESS                      0x0UL576	#define HWRM_ERR_CODE_FAIL                         0x1UL577	#define HWRM_ERR_CODE_INVALID_PARAMS               0x2UL578	#define HWRM_ERR_CODE_RESOURCE_ACCESS_DENIED       0x3UL579	#define HWRM_ERR_CODE_RESOURCE_ALLOC_ERROR         0x4UL580	#define HWRM_ERR_CODE_INVALID_FLAGS                0x5UL581	#define HWRM_ERR_CODE_INVALID_ENABLES              0x6UL582	#define HWRM_ERR_CODE_UNSUPPORTED_TLV              0x7UL583	#define HWRM_ERR_CODE_NO_BUFFER                    0x8UL584	#define HWRM_ERR_CODE_UNSUPPORTED_OPTION_ERR       0x9UL585	#define HWRM_ERR_CODE_HOT_RESET_PROGRESS           0xaUL586	#define HWRM_ERR_CODE_HOT_RESET_FAIL               0xbUL587	#define HWRM_ERR_CODE_NO_FLOW_COUNTER_DURING_ALLOC 0xcUL588	#define HWRM_ERR_CODE_KEY_HASH_COLLISION           0xdUL589	#define HWRM_ERR_CODE_KEY_ALREADY_EXISTS           0xeUL590	#define HWRM_ERR_CODE_HWRM_ERROR                   0xfUL591	#define HWRM_ERR_CODE_BUSY                         0x10UL592	#define HWRM_ERR_CODE_RESOURCE_LOCKED              0x11UL593	#define HWRM_ERR_CODE_PF_UNAVAILABLE               0x12UL594	#define HWRM_ERR_CODE_ENTITY_NOT_PRESENT           0x13UL595	#define HWRM_ERR_CODE_SECURE_SOC_ERROR             0x14UL596	#define HWRM_ERR_CODE_TLV_ENCAPSULATED_RESPONSE    0x8000UL597	#define HWRM_ERR_CODE_UNKNOWN_ERR                  0xfffeUL598	#define HWRM_ERR_CODE_CMD_NOT_SUPPORTED            0xffffUL599	#define HWRM_ERR_CODE_LAST                        HWRM_ERR_CODE_CMD_NOT_SUPPORTED600	__le16	unused_0[3];601};602 603/* hwrm_err_output (size:128b/16B) */604struct hwrm_err_output {605	__le16	error_code;606	__le16	req_type;607	__le16	seq_id;608	__le16	resp_len;609	__le32	opaque_0;610	__le16	opaque_1;611	u8	cmd_err;612	u8	valid;613};614#define HWRM_NA_SIGNATURE ((__le32)(-1))615#define HWRM_MAX_REQ_LEN 128616#define HWRM_MAX_RESP_LEN 704617#define HW_HASH_INDEX_SIZE 0x80618#define HW_HASH_KEY_SIZE 40619#define HWRM_RESP_VALID_KEY 1620#define HWRM_TARGET_ID_BONO 0xFFF8621#define HWRM_TARGET_ID_KONG 0xFFF9622#define HWRM_TARGET_ID_APE 0xFFFA623#define HWRM_TARGET_ID_TOOLS 0xFFFD624#define HWRM_VERSION_MAJOR 1625#define HWRM_VERSION_MINOR 10626#define HWRM_VERSION_UPDATE 3627#define HWRM_VERSION_RSVD 68628#define HWRM_VERSION_STR "1.10.3.68"629 630/* hwrm_ver_get_input (size:192b/24B) */631struct hwrm_ver_get_input {632	__le16	req_type;633	__le16	cmpl_ring;634	__le16	seq_id;635	__le16	target_id;636	__le64	resp_addr;637	u8	hwrm_intf_maj;638	u8	hwrm_intf_min;639	u8	hwrm_intf_upd;640	u8	unused_0[5];641};642 643/* hwrm_ver_get_output (size:1408b/176B) */644struct hwrm_ver_get_output {645	__le16	error_code;646	__le16	req_type;647	__le16	seq_id;648	__le16	resp_len;649	u8	hwrm_intf_maj_8b;650	u8	hwrm_intf_min_8b;651	u8	hwrm_intf_upd_8b;652	u8	hwrm_intf_rsvd_8b;653	u8	hwrm_fw_maj_8b;654	u8	hwrm_fw_min_8b;655	u8	hwrm_fw_bld_8b;656	u8	hwrm_fw_rsvd_8b;657	u8	mgmt_fw_maj_8b;658	u8	mgmt_fw_min_8b;659	u8	mgmt_fw_bld_8b;660	u8	mgmt_fw_rsvd_8b;661	u8	netctrl_fw_maj_8b;662	u8	netctrl_fw_min_8b;663	u8	netctrl_fw_bld_8b;664	u8	netctrl_fw_rsvd_8b;665	__le32	dev_caps_cfg;666	#define VER_GET_RESP_DEV_CAPS_CFG_SECURE_FW_UPD_SUPPORTED                  0x1UL667	#define VER_GET_RESP_DEV_CAPS_CFG_FW_DCBX_AGENT_SUPPORTED                  0x2UL668	#define VER_GET_RESP_DEV_CAPS_CFG_SHORT_CMD_SUPPORTED                      0x4UL669	#define VER_GET_RESP_DEV_CAPS_CFG_SHORT_CMD_REQUIRED                       0x8UL670	#define VER_GET_RESP_DEV_CAPS_CFG_KONG_MB_CHNL_SUPPORTED                   0x10UL671	#define VER_GET_RESP_DEV_CAPS_CFG_FLOW_HANDLE_64BIT_SUPPORTED              0x20UL672	#define VER_GET_RESP_DEV_CAPS_CFG_L2_FILTER_TYPES_ROCE_OR_L2_SUPPORTED     0x40UL673	#define VER_GET_RESP_DEV_CAPS_CFG_VIRTIO_VSWITCH_OFFLOAD_SUPPORTED         0x80UL674	#define VER_GET_RESP_DEV_CAPS_CFG_TRUSTED_VF_SUPPORTED                     0x100UL675	#define VER_GET_RESP_DEV_CAPS_CFG_FLOW_AGING_SUPPORTED                     0x200UL676	#define VER_GET_RESP_DEV_CAPS_CFG_ADV_FLOW_COUNTERS_SUPPORTED              0x400UL677	#define VER_GET_RESP_DEV_CAPS_CFG_CFA_EEM_SUPPORTED                        0x800UL678	#define VER_GET_RESP_DEV_CAPS_CFG_CFA_ADV_FLOW_MGNT_SUPPORTED              0x1000UL679	#define VER_GET_RESP_DEV_CAPS_CFG_CFA_TFLIB_SUPPORTED                      0x2000UL680	#define VER_GET_RESP_DEV_CAPS_CFG_CFA_TRUFLOW_SUPPORTED                    0x4000UL681	#define VER_GET_RESP_DEV_CAPS_CFG_SECURE_BOOT_CAPABLE                      0x8000UL682	#define VER_GET_RESP_DEV_CAPS_CFG_SECURE_SOC_CAPABLE                       0x10000UL683	u8	roce_fw_maj_8b;684	u8	roce_fw_min_8b;685	u8	roce_fw_bld_8b;686	u8	roce_fw_rsvd_8b;687	char	hwrm_fw_name[16];688	char	mgmt_fw_name[16];689	char	netctrl_fw_name[16];690	char	active_pkg_name[16];691	char	roce_fw_name[16];692	__le16	chip_num;693	u8	chip_rev;694	u8	chip_metal;695	u8	chip_bond_id;696	u8	chip_platform_type;697	#define VER_GET_RESP_CHIP_PLATFORM_TYPE_ASIC      0x0UL698	#define VER_GET_RESP_CHIP_PLATFORM_TYPE_FPGA      0x1UL699	#define VER_GET_RESP_CHIP_PLATFORM_TYPE_PALLADIUM 0x2UL700	#define VER_GET_RESP_CHIP_PLATFORM_TYPE_LAST     VER_GET_RESP_CHIP_PLATFORM_TYPE_PALLADIUM701	__le16	max_req_win_len;702	__le16	max_resp_len;703	__le16	def_req_timeout;704	u8	flags;705	#define VER_GET_RESP_FLAGS_DEV_NOT_RDY                   0x1UL706	#define VER_GET_RESP_FLAGS_EXT_VER_AVAIL                 0x2UL707	#define VER_GET_RESP_FLAGS_DEV_NOT_RDY_BACKING_STORE     0x4UL708	u8	unused_0[2];709	u8	always_1;710	__le16	hwrm_intf_major;711	__le16	hwrm_intf_minor;712	__le16	hwrm_intf_build;713	__le16	hwrm_intf_patch;714	__le16	hwrm_fw_major;715	__le16	hwrm_fw_minor;716	__le16	hwrm_fw_build;717	__le16	hwrm_fw_patch;718	__le16	mgmt_fw_major;719	__le16	mgmt_fw_minor;720	__le16	mgmt_fw_build;721	__le16	mgmt_fw_patch;722	__le16	netctrl_fw_major;723	__le16	netctrl_fw_minor;724	__le16	netctrl_fw_build;725	__le16	netctrl_fw_patch;726	__le16	roce_fw_major;727	__le16	roce_fw_minor;728	__le16	roce_fw_build;729	__le16	roce_fw_patch;730	__le16	max_ext_req_len;731	__le16	max_req_timeout;732	u8	unused_1[3];733	u8	valid;734};735 736/* eject_cmpl (size:128b/16B) */737struct eject_cmpl {738	__le16	type;739	#define EJECT_CMPL_TYPE_MASK       0x3fUL740	#define EJECT_CMPL_TYPE_SFT        0741	#define EJECT_CMPL_TYPE_STAT_EJECT   0x1aUL742	#define EJECT_CMPL_TYPE_LAST        EJECT_CMPL_TYPE_STAT_EJECT743	#define EJECT_CMPL_FLAGS_MASK      0xffc0UL744	#define EJECT_CMPL_FLAGS_SFT       6745	#define EJECT_CMPL_FLAGS_ERROR      0x40UL746	__le16	len;747	__le32	opaque;748	__le16	v;749	#define EJECT_CMPL_V                              0x1UL750	#define EJECT_CMPL_ERRORS_MASK                    0xfffeUL751	#define EJECT_CMPL_ERRORS_SFT                     1752	#define EJECT_CMPL_ERRORS_BUFFER_ERROR_MASK        0xeUL753	#define EJECT_CMPL_ERRORS_BUFFER_ERROR_SFT         1754	#define EJECT_CMPL_ERRORS_BUFFER_ERROR_NO_BUFFER     (0x0UL << 1)755	#define EJECT_CMPL_ERRORS_BUFFER_ERROR_DID_NOT_FIT   (0x1UL << 1)756	#define EJECT_CMPL_ERRORS_BUFFER_ERROR_BAD_FORMAT    (0x3UL << 1)757	#define EJECT_CMPL_ERRORS_BUFFER_ERROR_FLUSH         (0x5UL << 1)758	#define EJECT_CMPL_ERRORS_BUFFER_ERROR_LAST         EJECT_CMPL_ERRORS_BUFFER_ERROR_FLUSH759	__le16	reserved16;760	__le32	unused_2;761};762 763/* hwrm_cmpl (size:128b/16B) */764struct hwrm_cmpl {765	__le16	type;766	#define CMPL_TYPE_MASK     0x3fUL767	#define CMPL_TYPE_SFT      0768	#define CMPL_TYPE_HWRM_DONE  0x20UL769	#define CMPL_TYPE_LAST      CMPL_TYPE_HWRM_DONE770	__le16	sequence_id;771	__le32	unused_1;772	__le32	v;773	#define CMPL_V     0x1UL774	__le32	unused_3;775};776 777/* hwrm_fwd_req_cmpl (size:128b/16B) */778struct hwrm_fwd_req_cmpl {779	__le16	req_len_type;780	#define FWD_REQ_CMPL_TYPE_MASK        0x3fUL781	#define FWD_REQ_CMPL_TYPE_SFT         0782	#define FWD_REQ_CMPL_TYPE_HWRM_FWD_REQ  0x22UL783	#define FWD_REQ_CMPL_TYPE_LAST         FWD_REQ_CMPL_TYPE_HWRM_FWD_REQ784	#define FWD_REQ_CMPL_REQ_LEN_MASK     0xffc0UL785	#define FWD_REQ_CMPL_REQ_LEN_SFT      6786	__le16	source_id;787	__le32	unused0;788	__le32	req_buf_addr_v[2];789	#define FWD_REQ_CMPL_V                0x1UL790	#define FWD_REQ_CMPL_REQ_BUF_ADDR_MASK 0xfffffffeUL791	#define FWD_REQ_CMPL_REQ_BUF_ADDR_SFT 1792};793 794/* hwrm_fwd_resp_cmpl (size:128b/16B) */795struct hwrm_fwd_resp_cmpl {796	__le16	type;797	#define FWD_RESP_CMPL_TYPE_MASK         0x3fUL798	#define FWD_RESP_CMPL_TYPE_SFT          0799	#define FWD_RESP_CMPL_TYPE_HWRM_FWD_RESP  0x24UL800	#define FWD_RESP_CMPL_TYPE_LAST          FWD_RESP_CMPL_TYPE_HWRM_FWD_RESP801	__le16	source_id;802	__le16	resp_len;803	__le16	unused_1;804	__le32	resp_buf_addr_v[2];805	#define FWD_RESP_CMPL_V                 0x1UL806	#define FWD_RESP_CMPL_RESP_BUF_ADDR_MASK 0xfffffffeUL807	#define FWD_RESP_CMPL_RESP_BUF_ADDR_SFT 1808};809 810/* hwrm_async_event_cmpl (size:128b/16B) */811struct hwrm_async_event_cmpl {812	__le16	type;813	#define ASYNC_EVENT_CMPL_TYPE_MASK            0x3fUL814	#define ASYNC_EVENT_CMPL_TYPE_SFT             0815	#define ASYNC_EVENT_CMPL_TYPE_HWRM_ASYNC_EVENT  0x2eUL816	#define ASYNC_EVENT_CMPL_TYPE_LAST             ASYNC_EVENT_CMPL_TYPE_HWRM_ASYNC_EVENT817	__le16	event_id;818	#define ASYNC_EVENT_CMPL_EVENT_ID_LINK_STATUS_CHANGE              0x0UL819	#define ASYNC_EVENT_CMPL_EVENT_ID_LINK_MTU_CHANGE                 0x1UL820	#define ASYNC_EVENT_CMPL_EVENT_ID_LINK_SPEED_CHANGE               0x2UL821	#define ASYNC_EVENT_CMPL_EVENT_ID_DCB_CONFIG_CHANGE               0x3UL822	#define ASYNC_EVENT_CMPL_EVENT_ID_PORT_CONN_NOT_ALLOWED           0x4UL823	#define ASYNC_EVENT_CMPL_EVENT_ID_LINK_SPEED_CFG_NOT_ALLOWED      0x5UL824	#define ASYNC_EVENT_CMPL_EVENT_ID_LINK_SPEED_CFG_CHANGE           0x6UL825	#define ASYNC_EVENT_CMPL_EVENT_ID_PORT_PHY_CFG_CHANGE             0x7UL826	#define ASYNC_EVENT_CMPL_EVENT_ID_RESET_NOTIFY                    0x8UL827	#define ASYNC_EVENT_CMPL_EVENT_ID_ERROR_RECOVERY                  0x9UL828	#define ASYNC_EVENT_CMPL_EVENT_ID_RING_MONITOR_MSG                0xaUL829	#define ASYNC_EVENT_CMPL_EVENT_ID_FUNC_DRVR_UNLOAD                0x10UL830	#define ASYNC_EVENT_CMPL_EVENT_ID_FUNC_DRVR_LOAD                  0x11UL831	#define ASYNC_EVENT_CMPL_EVENT_ID_FUNC_FLR_PROC_CMPLT             0x12UL832	#define ASYNC_EVENT_CMPL_EVENT_ID_PF_DRVR_UNLOAD                  0x20UL833	#define ASYNC_EVENT_CMPL_EVENT_ID_PF_DRVR_LOAD                    0x21UL834	#define ASYNC_EVENT_CMPL_EVENT_ID_VF_FLR                          0x30UL835	#define ASYNC_EVENT_CMPL_EVENT_ID_VF_MAC_ADDR_CHANGE              0x31UL836	#define ASYNC_EVENT_CMPL_EVENT_ID_PF_VF_COMM_STATUS_CHANGE        0x32UL837	#define ASYNC_EVENT_CMPL_EVENT_ID_VF_CFG_CHANGE                   0x33UL838	#define ASYNC_EVENT_CMPL_EVENT_ID_LLFC_PFC_CHANGE                 0x34UL839	#define ASYNC_EVENT_CMPL_EVENT_ID_DEFAULT_VNIC_CHANGE             0x35UL840	#define ASYNC_EVENT_CMPL_EVENT_ID_HW_FLOW_AGED                    0x36UL841	#define ASYNC_EVENT_CMPL_EVENT_ID_DEBUG_NOTIFICATION              0x37UL842	#define ASYNC_EVENT_CMPL_EVENT_ID_EEM_CACHE_FLUSH_REQ             0x38UL843	#define ASYNC_EVENT_CMPL_EVENT_ID_EEM_CACHE_FLUSH_DONE            0x39UL844	#define ASYNC_EVENT_CMPL_EVENT_ID_TCP_FLAG_ACTION_CHANGE          0x3aUL845	#define ASYNC_EVENT_CMPL_EVENT_ID_EEM_FLOW_ACTIVE                 0x3bUL846	#define ASYNC_EVENT_CMPL_EVENT_ID_EEM_CFG_CHANGE                  0x3cUL847	#define ASYNC_EVENT_CMPL_EVENT_ID_TFLIB_DEFAULT_VNIC_CHANGE       0x3dUL848	#define ASYNC_EVENT_CMPL_EVENT_ID_TFLIB_LINK_STATUS_CHANGE        0x3eUL849	#define ASYNC_EVENT_CMPL_EVENT_ID_QUIESCE_DONE                    0x3fUL850	#define ASYNC_EVENT_CMPL_EVENT_ID_DEFERRED_RESPONSE               0x40UL851	#define ASYNC_EVENT_CMPL_EVENT_ID_PFC_WATCHDOG_CFG_CHANGE         0x41UL852	#define ASYNC_EVENT_CMPL_EVENT_ID_ECHO_REQUEST                    0x42UL853	#define ASYNC_EVENT_CMPL_EVENT_ID_PHC_UPDATE                      0x43UL854	#define ASYNC_EVENT_CMPL_EVENT_ID_PPS_TIMESTAMP                   0x44UL855	#define ASYNC_EVENT_CMPL_EVENT_ID_ERROR_REPORT                    0x45UL856	#define ASYNC_EVENT_CMPL_EVENT_ID_DOORBELL_PACING_THRESHOLD       0x46UL857	#define ASYNC_EVENT_CMPL_EVENT_ID_RSS_CHANGE                      0x47UL858	#define ASYNC_EVENT_CMPL_EVENT_ID_DOORBELL_PACING_NQ_UPDATE       0x48UL859	#define ASYNC_EVENT_CMPL_EVENT_ID_HW_DOORBELL_RECOVERY_READ_ERROR 0x49UL860	#define ASYNC_EVENT_CMPL_EVENT_ID_CTX_ERROR                       0x4aUL861	#define ASYNC_EVENT_CMPL_EVENT_ID_UDCC_SESSION_CHANGE             0x4bUL862	#define ASYNC_EVENT_CMPL_EVENT_ID_DBG_BUF_PRODUCER                0x4cUL863	#define ASYNC_EVENT_CMPL_EVENT_ID_PEER_MMAP_CHANGE                0x4dUL864	#define ASYNC_EVENT_CMPL_EVENT_ID_REPRESENTOR_PAIR_CHANGE         0x4eUL865	#define ASYNC_EVENT_CMPL_EVENT_ID_VF_STAT_CHANGE                  0x4fUL866	#define ASYNC_EVENT_CMPL_EVENT_ID_HOST_COREDUMP                   0x50UL867	#define ASYNC_EVENT_CMPL_EVENT_ID_MAX_RGTR_EVENT_ID               0x51UL868	#define ASYNC_EVENT_CMPL_EVENT_ID_FW_TRACE_MSG                    0xfeUL869	#define ASYNC_EVENT_CMPL_EVENT_ID_HWRM_ERROR                      0xffUL870	#define ASYNC_EVENT_CMPL_EVENT_ID_LAST                           ASYNC_EVENT_CMPL_EVENT_ID_HWRM_ERROR871	__le32	event_data2;872	u8	opaque_v;873	#define ASYNC_EVENT_CMPL_V          0x1UL874	#define ASYNC_EVENT_CMPL_OPAQUE_MASK 0xfeUL875	#define ASYNC_EVENT_CMPL_OPAQUE_SFT 1876	u8	timestamp_lo;877	__le16	timestamp_hi;878	__le32	event_data1;879};880 881/* hwrm_async_event_cmpl_link_status_change (size:128b/16B) */882struct hwrm_async_event_cmpl_link_status_change {883	__le16	type;884	#define ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_TYPE_MASK            0x3fUL885	#define ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_TYPE_SFT             0886	#define ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_TYPE_HWRM_ASYNC_EVENT  0x2eUL887	#define ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_TYPE_LAST             ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_TYPE_HWRM_ASYNC_EVENT888	__le16	event_id;889	#define ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_EVENT_ID_LINK_STATUS_CHANGE 0x0UL890	#define ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_EVENT_ID_LAST              ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_EVENT_ID_LINK_STATUS_CHANGE891	__le32	event_data2;892	u8	opaque_v;893	#define ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_V          0x1UL894	#define ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_OPAQUE_MASK 0xfeUL895	#define ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_OPAQUE_SFT 1896	u8	timestamp_lo;897	__le16	timestamp_hi;898	__le32	event_data1;899	#define ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_EVENT_DATA1_LINK_CHANGE     0x1UL900	#define ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_EVENT_DATA1_LINK_CHANGE_DOWN  0x0UL901	#define ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_EVENT_DATA1_LINK_CHANGE_UP    0x1UL902	#define ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_EVENT_DATA1_LINK_CHANGE_LAST ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_EVENT_DATA1_LINK_CHANGE_UP903	#define ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_EVENT_DATA1_PORT_MASK       0xeUL904	#define ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_EVENT_DATA1_PORT_SFT        1905	#define ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_EVENT_DATA1_PORT_ID_MASK    0xffff0UL906	#define ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_EVENT_DATA1_PORT_ID_SFT     4907	#define ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_EVENT_DATA1_PF_ID_MASK      0xff00000UL908	#define ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_EVENT_DATA1_PF_ID_SFT       20909};910 911/* hwrm_async_event_cmpl_port_conn_not_allowed (size:128b/16B) */912struct hwrm_async_event_cmpl_port_conn_not_allowed {913	__le16	type;914	#define ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_TYPE_MASK            0x3fUL915	#define ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_TYPE_SFT             0916	#define ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_TYPE_HWRM_ASYNC_EVENT  0x2eUL917	#define ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_TYPE_LAST             ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_TYPE_HWRM_ASYNC_EVENT918	__le16	event_id;919	#define ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_EVENT_ID_PORT_CONN_NOT_ALLOWED 0x4UL920	#define ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_EVENT_ID_LAST                 ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_EVENT_ID_PORT_CONN_NOT_ALLOWED921	__le32	event_data2;922	u8	opaque_v;923	#define ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_V          0x1UL924	#define ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_OPAQUE_MASK 0xfeUL925	#define ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_OPAQUE_SFT 1926	u8	timestamp_lo;927	__le16	timestamp_hi;928	__le32	event_data1;929	#define ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_EVENT_DATA1_PORT_ID_MASK                 0xffffUL930	#define ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_EVENT_DATA1_PORT_ID_SFT                  0931	#define ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_EVENT_DATA1_ENFORCEMENT_POLICY_MASK      0xff0000UL932	#define ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_EVENT_DATA1_ENFORCEMENT_POLICY_SFT       16933	#define ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_EVENT_DATA1_ENFORCEMENT_POLICY_NONE        (0x0UL << 16)934	#define ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_EVENT_DATA1_ENFORCEMENT_POLICY_DISABLETX   (0x1UL << 16)935	#define ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_EVENT_DATA1_ENFORCEMENT_POLICY_WARNINGMSG  (0x2UL << 16)936	#define ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_EVENT_DATA1_ENFORCEMENT_POLICY_PWRDOWN     (0x3UL << 16)937	#define ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_EVENT_DATA1_ENFORCEMENT_POLICY_LAST       ASYNC_EVENT_CMPL_PORT_CONN_NOT_ALLOWED_EVENT_DATA1_ENFORCEMENT_POLICY_PWRDOWN938};939 940/* hwrm_async_event_cmpl_link_speed_cfg_change (size:128b/16B) */941struct hwrm_async_event_cmpl_link_speed_cfg_change {942	__le16	type;943	#define ASYNC_EVENT_CMPL_LINK_SPEED_CFG_CHANGE_TYPE_MASK            0x3fUL944	#define ASYNC_EVENT_CMPL_LINK_SPEED_CFG_CHANGE_TYPE_SFT             0945	#define ASYNC_EVENT_CMPL_LINK_SPEED_CFG_CHANGE_TYPE_HWRM_ASYNC_EVENT  0x2eUL946	#define ASYNC_EVENT_CMPL_LINK_SPEED_CFG_CHANGE_TYPE_LAST             ASYNC_EVENT_CMPL_LINK_SPEED_CFG_CHANGE_TYPE_HWRM_ASYNC_EVENT947	__le16	event_id;948	#define ASYNC_EVENT_CMPL_LINK_SPEED_CFG_CHANGE_EVENT_ID_LINK_SPEED_CFG_CHANGE 0x6UL949	#define ASYNC_EVENT_CMPL_LINK_SPEED_CFG_CHANGE_EVENT_ID_LAST                 ASYNC_EVENT_CMPL_LINK_SPEED_CFG_CHANGE_EVENT_ID_LINK_SPEED_CFG_CHANGE950	__le32	event_data2;951	u8	opaque_v;952	#define ASYNC_EVENT_CMPL_LINK_SPEED_CFG_CHANGE_V          0x1UL953	#define ASYNC_EVENT_CMPL_LINK_SPEED_CFG_CHANGE_OPAQUE_MASK 0xfeUL954	#define ASYNC_EVENT_CMPL_LINK_SPEED_CFG_CHANGE_OPAQUE_SFT 1955	u8	timestamp_lo;956	__le16	timestamp_hi;957	__le32	event_data1;958	#define ASYNC_EVENT_CMPL_LINK_SPEED_CFG_CHANGE_EVENT_DATA1_PORT_ID_MASK                     0xffffUL959	#define ASYNC_EVENT_CMPL_LINK_SPEED_CFG_CHANGE_EVENT_DATA1_PORT_ID_SFT                      0960	#define ASYNC_EVENT_CMPL_LINK_SPEED_CFG_CHANGE_EVENT_DATA1_SUPPORTED_LINK_SPEEDS_CHANGE     0x10000UL961	#define ASYNC_EVENT_CMPL_LINK_SPEED_CFG_CHANGE_EVENT_DATA1_ILLEGAL_LINK_SPEED_CFG           0x20000UL962};963 964/* hwrm_async_event_cmpl_reset_notify (size:128b/16B) */965struct hwrm_async_event_cmpl_reset_notify {966	__le16	type;967	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_TYPE_MASK            0x3fUL968	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_TYPE_SFT             0969	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_TYPE_HWRM_ASYNC_EVENT  0x2eUL970	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_TYPE_LAST             ASYNC_EVENT_CMPL_RESET_NOTIFY_TYPE_HWRM_ASYNC_EVENT971	__le16	event_id;972	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_ID_RESET_NOTIFY 0x8UL973	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_ID_LAST        ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_ID_RESET_NOTIFY974	__le32	event_data2;975	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA2_FW_STATUS_CODE_MASK 0xffffUL976	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA2_FW_STATUS_CODE_SFT 0977	u8	opaque_v;978	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_V          0x1UL979	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_OPAQUE_MASK 0xfeUL980	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_OPAQUE_SFT 1981	u8	timestamp_lo;982	__le16	timestamp_hi;983	__le32	event_data1;984	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_DRIVER_ACTION_MASK                  0xffUL985	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_DRIVER_ACTION_SFT                   0986	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_DRIVER_ACTION_DRIVER_STOP_TX_QUEUE    0x1UL987	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_DRIVER_ACTION_DRIVER_IFDOWN           0x2UL988	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_DRIVER_ACTION_LAST                   ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_DRIVER_ACTION_DRIVER_IFDOWN989	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_REASON_CODE_MASK                    0xff00UL990	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_REASON_CODE_SFT                     8991	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_REASON_CODE_MANAGEMENT_RESET_REQUEST  (0x1UL << 8)992	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_REASON_CODE_FW_EXCEPTION_FATAL        (0x2UL << 8)993	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_REASON_CODE_FW_EXCEPTION_NON_FATAL    (0x3UL << 8)994	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_REASON_CODE_FAST_RESET                (0x4UL << 8)995	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_REASON_CODE_FW_ACTIVATION             (0x5UL << 8)996	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_REASON_CODE_LAST                     ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_REASON_CODE_FW_ACTIVATION997	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_DELAY_IN_100MS_TICKS_MASK           0xffff0000UL998	#define ASYNC_EVENT_CMPL_RESET_NOTIFY_EVENT_DATA1_DELAY_IN_100MS_TICKS_SFT            16999};1000 1001/* hwrm_async_event_cmpl_error_recovery (size:128b/16B) */1002struct hwrm_async_event_cmpl_error_recovery {1003	__le16	type;1004	#define ASYNC_EVENT_CMPL_ERROR_RECOVERY_TYPE_MASK            0x3fUL1005	#define ASYNC_EVENT_CMPL_ERROR_RECOVERY_TYPE_SFT             01006	#define ASYNC_EVENT_CMPL_ERROR_RECOVERY_TYPE_HWRM_ASYNC_EVENT  0x2eUL1007	#define ASYNC_EVENT_CMPL_ERROR_RECOVERY_TYPE_LAST             ASYNC_EVENT_CMPL_ERROR_RECOVERY_TYPE_HWRM_ASYNC_EVENT1008	__le16	event_id;1009	#define ASYNC_EVENT_CMPL_ERROR_RECOVERY_EVENT_ID_ERROR_RECOVERY 0x9UL1010	#define ASYNC_EVENT_CMPL_ERROR_RECOVERY_EVENT_ID_LAST          ASYNC_EVENT_CMPL_ERROR_RECOVERY_EVENT_ID_ERROR_RECOVERY1011	__le32	event_data2;1012	u8	opaque_v;1013	#define ASYNC_EVENT_CMPL_ERROR_RECOVERY_V          0x1UL1014	#define ASYNC_EVENT_CMPL_ERROR_RECOVERY_OPAQUE_MASK 0xfeUL1015	#define ASYNC_EVENT_CMPL_ERROR_RECOVERY_OPAQUE_SFT 11016	u8	timestamp_lo;1017	__le16	timestamp_hi;1018	__le32	event_data1;1019	#define ASYNC_EVENT_CMPL_ERROR_RECOVERY_EVENT_DATA1_FLAGS_MASK                 0xffUL1020	#define ASYNC_EVENT_CMPL_ERROR_RECOVERY_EVENT_DATA1_FLAGS_SFT                  01021	#define ASYNC_EVENT_CMPL_ERROR_RECOVERY_EVENT_DATA1_FLAGS_MASTER_FUNC           0x1UL1022	#define ASYNC_EVENT_CMPL_ERROR_RECOVERY_EVENT_DATA1_FLAGS_RECOVERY_ENABLED      0x2UL1023};1024 1025/* hwrm_async_event_cmpl_ring_monitor_msg (size:128b/16B) */1026struct hwrm_async_event_cmpl_ring_monitor_msg {1027	__le16	type;1028	#define ASYNC_EVENT_CMPL_RING_MONITOR_MSG_TYPE_MASK            0x3fUL1029	#define ASYNC_EVENT_CMPL_RING_MONITOR_MSG_TYPE_SFT             01030	#define ASYNC_EVENT_CMPL_RING_MONITOR_MSG_TYPE_HWRM_ASYNC_EVENT  0x2eUL1031	#define ASYNC_EVENT_CMPL_RING_MONITOR_MSG_TYPE_LAST             ASYNC_EVENT_CMPL_RING_MONITOR_MSG_TYPE_HWRM_ASYNC_EVENT1032	__le16	event_id;1033	#define ASYNC_EVENT_CMPL_RING_MONITOR_MSG_EVENT_ID_RING_MONITOR_MSG 0xaUL1034	#define ASYNC_EVENT_CMPL_RING_MONITOR_MSG_EVENT_ID_LAST            ASYNC_EVENT_CMPL_RING_MONITOR_MSG_EVENT_ID_RING_MONITOR_MSG1035	__le32	event_data2;1036	#define ASYNC_EVENT_CMPL_RING_MONITOR_MSG_EVENT_DATA2_DISABLE_RING_TYPE_MASK 0xffUL1037	#define ASYNC_EVENT_CMPL_RING_MONITOR_MSG_EVENT_DATA2_DISABLE_RING_TYPE_SFT 01038	#define ASYNC_EVENT_CMPL_RING_MONITOR_MSG_EVENT_DATA2_DISABLE_RING_TYPE_TX    0x0UL1039	#define ASYNC_EVENT_CMPL_RING_MONITOR_MSG_EVENT_DATA2_DISABLE_RING_TYPE_RX    0x1UL1040	#define ASYNC_EVENT_CMPL_RING_MONITOR_MSG_EVENT_DATA2_DISABLE_RING_TYPE_CMPL  0x2UL1041	#define ASYNC_EVENT_CMPL_RING_MONITOR_MSG_EVENT_DATA2_DISABLE_RING_TYPE_LAST ASYNC_EVENT_CMPL_RING_MONITOR_MSG_EVENT_DATA2_DISABLE_RING_TYPE_CMPL1042	u8	opaque_v;1043	#define ASYNC_EVENT_CMPL_RING_MONITOR_MSG_V          0x1UL1044	#define ASYNC_EVENT_CMPL_RING_MONITOR_MSG_OPAQUE_MASK 0xfeUL1045	#define ASYNC_EVENT_CMPL_RING_MONITOR_MSG_OPAQUE_SFT 11046	u8	timestamp_lo;1047	__le16	timestamp_hi;1048	__le32	event_data1;1049};1050 1051/* hwrm_async_event_cmpl_vf_cfg_change (size:128b/16B) */1052struct hwrm_async_event_cmpl_vf_cfg_change {1053	__le16	type;1054	#define ASYNC_EVENT_CMPL_VF_CFG_CHANGE_TYPE_MASK            0x3fUL1055	#define ASYNC_EVENT_CMPL_VF_CFG_CHANGE_TYPE_SFT             01056	#define ASYNC_EVENT_CMPL_VF_CFG_CHANGE_TYPE_HWRM_ASYNC_EVENT  0x2eUL1057	#define ASYNC_EVENT_CMPL_VF_CFG_CHANGE_TYPE_LAST             ASYNC_EVENT_CMPL_VF_CFG_CHANGE_TYPE_HWRM_ASYNC_EVENT1058	__le16	event_id;1059	#define ASYNC_EVENT_CMPL_VF_CFG_CHANGE_EVENT_ID_VF_CFG_CHANGE 0x33UL1060	#define ASYNC_EVENT_CMPL_VF_CFG_CHANGE_EVENT_ID_LAST         ASYNC_EVENT_CMPL_VF_CFG_CHANGE_EVENT_ID_VF_CFG_CHANGE1061	__le32	event_data2;1062	#define ASYNC_EVENT_CMPL_VF_CFG_CHANGE_EVENT_DATA2_VF_ID_MASK 0xffffUL1063	#define ASYNC_EVENT_CMPL_VF_CFG_CHANGE_EVENT_DATA2_VF_ID_SFT 01064	u8	opaque_v;1065	#define ASYNC_EVENT_CMPL_VF_CFG_CHANGE_V          0x1UL1066	#define ASYNC_EVENT_CMPL_VF_CFG_CHANGE_OPAQUE_MASK 0xfeUL1067	#define ASYNC_EVENT_CMPL_VF_CFG_CHANGE_OPAQUE_SFT 11068	u8	timestamp_lo;1069	__le16	timestamp_hi;1070	__le32	event_data1;1071	#define ASYNC_EVENT_CMPL_VF_CFG_CHANGE_EVENT_DATA1_MTU_CHANGE                0x1UL1072	#define ASYNC_EVENT_CMPL_VF_CFG_CHANGE_EVENT_DATA1_MRU_CHANGE                0x2UL1073	#define ASYNC_EVENT_CMPL_VF_CFG_CHANGE_EVENT_DATA1_DFLT_MAC_ADDR_CHANGE      0x4UL1074	#define ASYNC_EVENT_CMPL_VF_CFG_CHANGE_EVENT_DATA1_DFLT_VLAN_CHANGE          0x8UL1075	#define ASYNC_EVENT_CMPL_VF_CFG_CHANGE_EVENT_DATA1_TRUSTED_VF_CFG_CHANGE     0x10UL1076	#define ASYNC_EVENT_CMPL_VF_CFG_CHANGE_EVENT_DATA1_TF_OWNERSHIP_RELEASE      0x20UL1077};1078 1079/* hwrm_async_event_cmpl_default_vnic_change (size:128b/16B) */1080struct hwrm_async_event_cmpl_default_vnic_change {1081	__le16	type;1082	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_TYPE_MASK            0x3fUL1083	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_TYPE_SFT             01084	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_TYPE_HWRM_ASYNC_EVENT  0x2eUL1085	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_TYPE_LAST             ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_TYPE_HWRM_ASYNC_EVENT1086	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_UNUSED1_MASK         0xffc0UL1087	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_UNUSED1_SFT          61088	__le16	event_id;1089	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_ID_ALLOC_FREE_NOTIFICATION 0x35UL1090	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_ID_LAST                   ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_ID_ALLOC_FREE_NOTIFICATION1091	__le32	event_data2;1092	u8	opaque_v;1093	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_V          0x1UL1094	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_OPAQUE_MASK 0xfeUL1095	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_OPAQUE_SFT 11096	u8	timestamp_lo;1097	__le16	timestamp_hi;1098	__le32	event_data1;1099	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_DEF_VNIC_STATE_MASK          0x3UL1100	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_DEF_VNIC_STATE_SFT           01101	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_DEF_VNIC_STATE_DEF_VNIC_ALLOC  0x1UL1102	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_DEF_VNIC_STATE_DEF_VNIC_FREE   0x2UL1103	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_DEF_VNIC_STATE_LAST           ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_DEF_VNIC_STATE_DEF_VNIC_FREE1104	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_PF_ID_MASK                   0x3fcUL1105	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_PF_ID_SFT                    21106	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_VF_ID_MASK                   0x3fffc00UL1107	#define ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_VF_ID_SFT                    101108};1109 1110/* hwrm_async_event_cmpl_hw_flow_aged (size:128b/16B) */1111struct hwrm_async_event_cmpl_hw_flow_aged {1112	__le16	type;1113	#define ASYNC_EVENT_CMPL_HW_FLOW_AGED_TYPE_MASK            0x3fUL1114	#define ASYNC_EVENT_CMPL_HW_FLOW_AGED_TYPE_SFT             01115	#define ASYNC_EVENT_CMPL_HW_FLOW_AGED_TYPE_HWRM_ASYNC_EVENT  0x2eUL1116	#define ASYNC_EVENT_CMPL_HW_FLOW_AGED_TYPE_LAST             ASYNC_EVENT_CMPL_HW_FLOW_AGED_TYPE_HWRM_ASYNC_EVENT1117	__le16	event_id;1118	#define ASYNC_EVENT_CMPL_HW_FLOW_AGED_EVENT_ID_HW_FLOW_AGED 0x36UL1119	#define ASYNC_EVENT_CMPL_HW_FLOW_AGED_EVENT_ID_LAST        ASYNC_EVENT_CMPL_HW_FLOW_AGED_EVENT_ID_HW_FLOW_AGED1120	__le32	event_data2;1121	u8	opaque_v;1122	#define ASYNC_EVENT_CMPL_HW_FLOW_AGED_V          0x1UL1123	#define ASYNC_EVENT_CMPL_HW_FLOW_AGED_OPAQUE_MASK 0xfeUL1124	#define ASYNC_EVENT_CMPL_HW_FLOW_AGED_OPAQUE_SFT 11125	u8	timestamp_lo;1126	__le16	timestamp_hi;1127	__le32	event_data1;1128	#define ASYNC_EVENT_CMPL_HW_FLOW_AGED_EVENT_DATA1_FLOW_ID_MASK       0x7fffffffUL1129	#define ASYNC_EVENT_CMPL_HW_FLOW_AGED_EVENT_DATA1_FLOW_ID_SFT        01130	#define ASYNC_EVENT_CMPL_HW_FLOW_AGED_EVENT_DATA1_FLOW_DIRECTION     0x80000000UL1131	#define ASYNC_EVENT_CMPL_HW_FLOW_AGED_EVENT_DATA1_FLOW_DIRECTION_RX    (0x0UL << 31)1132	#define ASYNC_EVENT_CMPL_HW_FLOW_AGED_EVENT_DATA1_FLOW_DIRECTION_TX    (0x1UL << 31)1133	#define ASYNC_EVENT_CMPL_HW_FLOW_AGED_EVENT_DATA1_FLOW_DIRECTION_LAST ASYNC_EVENT_CMPL_HW_FLOW_AGED_EVENT_DATA1_FLOW_DIRECTION_TX1134};1135 1136/* hwrm_async_event_cmpl_eem_cache_flush_req (size:128b/16B) */1137struct hwrm_async_event_cmpl_eem_cache_flush_req {1138	__le16	type;1139	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_REQ_TYPE_MASK            0x3fUL1140	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_REQ_TYPE_SFT             01141	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_REQ_TYPE_HWRM_ASYNC_EVENT  0x2eUL1142	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_REQ_TYPE_LAST             ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_REQ_TYPE_HWRM_ASYNC_EVENT1143	__le16	event_id;1144	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_REQ_EVENT_ID_EEM_CACHE_FLUSH_REQ 0x38UL1145	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_REQ_EVENT_ID_LAST               ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_REQ_EVENT_ID_EEM_CACHE_FLUSH_REQ1146	__le32	event_data2;1147	u8	opaque_v;1148	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_REQ_V          0x1UL1149	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_REQ_OPAQUE_MASK 0xfeUL1150	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_REQ_OPAQUE_SFT 11151	u8	timestamp_lo;1152	__le16	timestamp_hi;1153	__le32	event_data1;1154};1155 1156/* hwrm_async_event_cmpl_eem_cache_flush_done (size:128b/16B) */1157struct hwrm_async_event_cmpl_eem_cache_flush_done {1158	__le16	type;1159	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_DONE_TYPE_MASK            0x3fUL1160	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_DONE_TYPE_SFT             01161	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_DONE_TYPE_HWRM_ASYNC_EVENT  0x2eUL1162	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_DONE_TYPE_LAST             ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_DONE_TYPE_HWRM_ASYNC_EVENT1163	__le16	event_id;1164	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_DONE_EVENT_ID_EEM_CACHE_FLUSH_DONE 0x39UL1165	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_DONE_EVENT_ID_LAST                ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_DONE_EVENT_ID_EEM_CACHE_FLUSH_DONE1166	__le32	event_data2;1167	u8	opaque_v;1168	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_DONE_V          0x1UL1169	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_DONE_OPAQUE_MASK 0xfeUL1170	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_DONE_OPAQUE_SFT 11171	u8	timestamp_lo;1172	__le16	timestamp_hi;1173	__le32	event_data1;1174	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_DONE_EVENT_DATA1_FID_MASK 0xffffUL1175	#define ASYNC_EVENT_CMPL_EEM_CACHE_FLUSH_DONE_EVENT_DATA1_FID_SFT 01176};1177 1178/* hwrm_async_event_cmpl_deferred_response (size:128b/16B) */1179struct hwrm_async_event_cmpl_deferred_response {1180	__le16	type;1181	#define ASYNC_EVENT_CMPL_DEFERRED_RESPONSE_TYPE_MASK            0x3fUL1182	#define ASYNC_EVENT_CMPL_DEFERRED_RESPONSE_TYPE_SFT             01183	#define ASYNC_EVENT_CMPL_DEFERRED_RESPONSE_TYPE_HWRM_ASYNC_EVENT  0x2eUL1184	#define ASYNC_EVENT_CMPL_DEFERRED_RESPONSE_TYPE_LAST             ASYNC_EVENT_CMPL_DEFERRED_RESPONSE_TYPE_HWRM_ASYNC_EVENT1185	__le16	event_id;1186	#define ASYNC_EVENT_CMPL_DEFERRED_RESPONSE_EVENT_ID_DEFERRED_RESPONSE 0x40UL1187	#define ASYNC_EVENT_CMPL_DEFERRED_RESPONSE_EVENT_ID_LAST             ASYNC_EVENT_CMPL_DEFERRED_RESPONSE_EVENT_ID_DEFERRED_RESPONSE1188	__le32	event_data2;1189	#define ASYNC_EVENT_CMPL_DEFERRED_RESPONSE_EVENT_DATA2_SEQ_ID_MASK 0xffffUL1190	#define ASYNC_EVENT_CMPL_DEFERRED_RESPONSE_EVENT_DATA2_SEQ_ID_SFT 01191	u8	opaque_v;1192	#define ASYNC_EVENT_CMPL_DEFERRED_RESPONSE_V          0x1UL1193	#define ASYNC_EVENT_CMPL_DEFERRED_RESPONSE_OPAQUE_MASK 0xfeUL1194	#define ASYNC_EVENT_CMPL_DEFERRED_RESPONSE_OPAQUE_SFT 11195	u8	timestamp_lo;1196	__le16	timestamp_hi;1197	__le32	event_data1;1198};1199 1200/* hwrm_async_event_cmpl_echo_request (size:128b/16B) */1201struct hwrm_async_event_cmpl_echo_request {1202	__le16	type;1203	#define ASYNC_EVENT_CMPL_ECHO_REQUEST_TYPE_MASK            0x3fUL1204	#define ASYNC_EVENT_CMPL_ECHO_REQUEST_TYPE_SFT             01205	#define ASYNC_EVENT_CMPL_ECHO_REQUEST_TYPE_HWRM_ASYNC_EVENT  0x2eUL1206	#define ASYNC_EVENT_CMPL_ECHO_REQUEST_TYPE_LAST             ASYNC_EVENT_CMPL_ECHO_REQUEST_TYPE_HWRM_ASYNC_EVENT1207	__le16	event_id;1208	#define ASYNC_EVENT_CMPL_ECHO_REQUEST_EVENT_ID_ECHO_REQUEST 0x42UL1209	#define ASYNC_EVENT_CMPL_ECHO_REQUEST_EVENT_ID_LAST        ASYNC_EVENT_CMPL_ECHO_REQUEST_EVENT_ID_ECHO_REQUEST1210	__le32	event_data2;1211	u8	opaque_v;1212	#define ASYNC_EVENT_CMPL_ECHO_REQUEST_V          0x1UL1213	#define ASYNC_EVENT_CMPL_ECHO_REQUEST_OPAQUE_MASK 0xfeUL1214	#define ASYNC_EVENT_CMPL_ECHO_REQUEST_OPAQUE_SFT 11215	u8	timestamp_lo;1216	__le16	timestamp_hi;1217	__le32	event_data1;1218};1219 1220/* hwrm_async_event_cmpl_phc_update (size:128b/16B) */1221struct hwrm_async_event_cmpl_phc_update {1222	__le16	type;1223	#define ASYNC_EVENT_CMPL_PHC_UPDATE_TYPE_MASK            0x3fUL1224	#define ASYNC_EVENT_CMPL_PHC_UPDATE_TYPE_SFT             01225	#define ASYNC_EVENT_CMPL_PHC_UPDATE_TYPE_HWRM_ASYNC_EVENT  0x2eUL1226	#define ASYNC_EVENT_CMPL_PHC_UPDATE_TYPE_LAST             ASYNC_EVENT_CMPL_PHC_UPDATE_TYPE_HWRM_ASYNC_EVENT1227	__le16	event_id;1228	#define ASYNC_EVENT_CMPL_PHC_UPDATE_EVENT_ID_PHC_UPDATE 0x43UL1229	#define ASYNC_EVENT_CMPL_PHC_UPDATE_EVENT_ID_LAST      ASYNC_EVENT_CMPL_PHC_UPDATE_EVENT_ID_PHC_UPDATE1230	__le32	event_data2;1231	#define ASYNC_EVENT_CMPL_PHC_UPDATE_EVENT_DATA2_PHC_MASTER_FID_MASK 0xffffUL1232	#define ASYNC_EVENT_CMPL_PHC_UPDATE_EVENT_DATA2_PHC_MASTER_FID_SFT 01233	#define ASYNC_EVENT_CMPL_PHC_UPDATE_EVENT_DATA2_PHC_SEC_FID_MASK   0xffff0000UL1234	#define ASYNC_EVENT_CMPL_PHC_UPDATE_EVENT_DATA2_PHC_SEC_FID_SFT    161235	u8	opaque_v;1236	#define ASYNC_EVENT_CMPL_PHC_UPDATE_V          0x1UL1237	#define ASYNC_EVENT_CMPL_PHC_UPDATE_OPAQUE_MASK 0xfeUL1238	#define ASYNC_EVENT_CMPL_PHC_UPDATE_OPAQUE_SFT 11239	u8	timestamp_lo;1240	__le16	timestamp_hi;1241	__le32	event_data1;1242	#define ASYNC_EVENT_CMPL_PHC_UPDATE_EVENT_DATA1_FLAGS_MASK          0xfUL1243	#define ASYNC_EVENT_CMPL_PHC_UPDATE_EVENT_DATA1_FLAGS_SFT           01244	#define ASYNC_EVENT_CMPL_PHC_UPDATE_EVENT_DATA1_FLAGS_PHC_MASTER      0x1UL1245	#define ASYNC_EVENT_CMPL_PHC_UPDATE_EVENT_DATA1_FLAGS_PHC_SECONDARY   0x2UL1246	#define ASYNC_EVENT_CMPL_PHC_UPDATE_EVENT_DATA1_FLAGS_PHC_FAILOVER    0x3UL1247	#define ASYNC_EVENT_CMPL_PHC_UPDATE_EVENT_DATA1_FLAGS_PHC_RTC_UPDATE  0x4UL1248	#define ASYNC_EVENT_CMPL_PHC_UPDATE_EVENT_DATA1_FLAGS_LAST           ASYNC_EVENT_CMPL_PHC_UPDATE_EVENT_DATA1_FLAGS_PHC_RTC_UPDATE1249	#define ASYNC_EVENT_CMPL_PHC_UPDATE_EVENT_DATA1_PHC_TIME_MSB_MASK   0xffff0UL1250	#define ASYNC_EVENT_CMPL_PHC_UPDATE_EVENT_DATA1_PHC_TIME_MSB_SFT    41251};1252 1253/* hwrm_async_event_cmpl_pps_timestamp (size:128b/16B) */1254struct hwrm_async_event_cmpl_pps_timestamp {1255	__le16	type;1256	#define ASYNC_EVENT_CMPL_PPS_TIMESTAMP_TYPE_MASK            0x3fUL1257	#define ASYNC_EVENT_CMPL_PPS_TIMESTAMP_TYPE_SFT             01258	#define ASYNC_EVENT_CMPL_PPS_TIMESTAMP_TYPE_HWRM_ASYNC_EVENT  0x2eUL1259	#define ASYNC_EVENT_CMPL_PPS_TIMESTAMP_TYPE_LAST             ASYNC_EVENT_CMPL_PPS_TIMESTAMP_TYPE_HWRM_ASYNC_EVENT1260	__le16	event_id;1261	#define ASYNC_EVENT_CMPL_PPS_TIMESTAMP_EVENT_ID_PPS_TIMESTAMP 0x44UL1262	#define ASYNC_EVENT_CMPL_PPS_TIMESTAMP_EVENT_ID_LAST         ASYNC_EVENT_CMPL_PPS_TIMESTAMP_EVENT_ID_PPS_TIMESTAMP1263	__le32	event_data2;1264	#define ASYNC_EVENT_CMPL_PPS_TIMESTAMP_EVENT_DATA2_EVENT_TYPE              0x1UL1265	#define ASYNC_EVENT_CMPL_PPS_TIMESTAMP_EVENT_DATA2_EVENT_TYPE_INTERNAL       0x0UL1266	#define ASYNC_EVENT_CMPL_PPS_TIMESTAMP_EVENT_DATA2_EVENT_TYPE_EXTERNAL       0x1UL1267	#define ASYNC_EVENT_CMPL_PPS_TIMESTAMP_EVENT_DATA2_EVENT_TYPE_LAST          ASYNC_EVENT_CMPL_PPS_TIMESTAMP_EVENT_DATA2_EVENT_TYPE_EXTERNAL1268	#define ASYNC_EVENT_CMPL_PPS_TIMESTAMP_EVENT_DATA2_PIN_NUMBER_MASK         0xeUL1269	#define ASYNC_EVENT_CMPL_PPS_TIMESTAMP_EVENT_DATA2_PIN_NUMBER_SFT          11270	#define ASYNC_EVENT_CMPL_PPS_TIMESTAMP_EVENT_DATA2_PPS_TIMESTAMP_UPPER_MASK 0xffff0UL1271	#define ASYNC_EVENT_CMPL_PPS_TIMESTAMP_EVENT_DATA2_PPS_TIMESTAMP_UPPER_SFT 41272	u8	opaque_v;1273	#define ASYNC_EVENT_CMPL_PPS_TIMESTAMP_V          0x1UL1274	#define ASYNC_EVENT_CMPL_PPS_TIMESTAMP_OPAQUE_MASK 0xfeUL1275	#define ASYNC_EVENT_CMPL_PPS_TIMESTAMP_OPAQUE_SFT 11276	u8	timestamp_lo;1277	__le16	timestamp_hi;1278	__le32	event_data1;1279	#define ASYNC_EVENT_CMPL_PPS_TIMESTAMP_EVENT_DATA1_PPS_TIMESTAMP_LOWER_MASK 0xffffffffUL1280	#define ASYNC_EVENT_CMPL_PPS_TIMESTAMP_EVENT_DATA1_PPS_TIMESTAMP_LOWER_SFT 01281};1282 1283/* hwrm_async_event_cmpl_error_report (size:128b/16B) */1284struct hwrm_async_event_cmpl_error_report {1285	__le16	type;1286	#define ASYNC_EVENT_CMPL_ERROR_REPORT_TYPE_MASK            0x3fUL1287	#define ASYNC_EVENT_CMPL_ERROR_REPORT_TYPE_SFT             01288	#define ASYNC_EVENT_CMPL_ERROR_REPORT_TYPE_HWRM_ASYNC_EVENT  0x2eUL1289	#define ASYNC_EVENT_CMPL_ERROR_REPORT_TYPE_LAST             ASYNC_EVENT_CMPL_ERROR_REPORT_TYPE_HWRM_ASYNC_EVENT1290	__le16	event_id;1291	#define ASYNC_EVENT_CMPL_ERROR_REPORT_EVENT_ID_ERROR_REPORT 0x45UL1292	#define ASYNC_EVENT_CMPL_ERROR_REPORT_EVENT_ID_LAST        ASYNC_EVENT_CMPL_ERROR_REPORT_EVENT_ID_ERROR_REPORT1293	__le32	event_data2;1294	u8	opaque_v;1295	#define ASYNC_EVENT_CMPL_ERROR_REPORT_V          0x1UL1296	#define ASYNC_EVENT_CMPL_ERROR_REPORT_OPAQUE_MASK 0xfeUL1297	#define ASYNC_EVENT_CMPL_ERROR_REPORT_OPAQUE_SFT 11298	u8	timestamp_lo;1299	__le16	timestamp_hi;1300	__le32	event_data1;1301	#define ASYNC_EVENT_CMPL_ERROR_REPORT_EVENT_DATA1_ERROR_TYPE_MASK 0xffUL1302	#define ASYNC_EVENT_CMPL_ERROR_REPORT_EVENT_DATA1_ERROR_TYPE_SFT 01303};1304 1305/* hwrm_async_event_cmpl_hwrm_error (size:128b/16B) */1306struct hwrm_async_event_cmpl_hwrm_error {1307	__le16	type;1308	#define ASYNC_EVENT_CMPL_HWRM_ERROR_TYPE_MASK            0x3fUL1309	#define ASYNC_EVENT_CMPL_HWRM_ERROR_TYPE_SFT             01310	#define ASYNC_EVENT_CMPL_HWRM_ERROR_TYPE_HWRM_ASYNC_EVENT  0x2eUL1311	#define ASYNC_EVENT_CMPL_HWRM_ERROR_TYPE_LAST             ASYNC_EVENT_CMPL_HWRM_ERROR_TYPE_HWRM_ASYNC_EVENT1312	__le16	event_id;1313	#define ASYNC_EVENT_CMPL_HWRM_ERROR_EVENT_ID_HWRM_ERROR 0xffUL1314	#define ASYNC_EVENT_CMPL_HWRM_ERROR_EVENT_ID_LAST      ASYNC_EVENT_CMPL_HWRM_ERROR_EVENT_ID_HWRM_ERROR1315	__le32	event_data2;1316	#define ASYNC_EVENT_CMPL_HWRM_ERROR_EVENT_DATA2_SEVERITY_MASK    0xffUL1317	#define ASYNC_EVENT_CMPL_HWRM_ERROR_EVENT_DATA2_SEVERITY_SFT     01318	#define ASYNC_EVENT_CMPL_HWRM_ERROR_EVENT_DATA2_SEVERITY_WARNING   0x0UL1319	#define ASYNC_EVENT_CMPL_HWRM_ERROR_EVENT_DATA2_SEVERITY_NONFATAL  0x1UL1320	#define ASYNC_EVENT_CMPL_HWRM_ERROR_EVENT_DATA2_SEVERITY_FATAL     0x2UL1321	#define ASYNC_EVENT_CMPL_HWRM_ERROR_EVENT_DATA2_SEVERITY_LAST     ASYNC_EVENT_CMPL_HWRM_ERROR_EVENT_DATA2_SEVERITY_FATAL1322	u8	opaque_v;1323	#define ASYNC_EVENT_CMPL_HWRM_ERROR_V          0x1UL1324	#define ASYNC_EVENT_CMPL_HWRM_ERROR_OPAQUE_MASK 0xfeUL1325	#define ASYNC_EVENT_CMPL_HWRM_ERROR_OPAQUE_SFT 11326	u8	timestamp_lo;1327	__le16	timestamp_hi;1328	__le32	event_data1;1329	#define ASYNC_EVENT_CMPL_HWRM_ERROR_EVENT_DATA1_TIMESTAMP     0x1UL1330};1331 1332/* hwrm_async_event_cmpl_error_report_base (size:128b/16B) */1333struct hwrm_async_event_cmpl_error_report_base {1334	__le16	type;1335	#define ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_TYPE_MASK            0x3fUL1336	#define ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_TYPE_SFT             01337	#define ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_TYPE_HWRM_ASYNC_EVENT  0x2eUL1338	#define ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_TYPE_LAST             ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_TYPE_HWRM_ASYNC_EVENT1339	__le16	event_id;1340	#define ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_ID_ERROR_REPORT 0x45UL1341	#define ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_ID_LAST        ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_ID_ERROR_REPORT1342	__le32	event_data2;1343	u8	opaque_v;1344	#define ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_V          0x1UL1345	#define ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_OPAQUE_MASK 0xfeUL1346	#define ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_OPAQUE_SFT 11347	u8	timestamp_lo;1348	__le16	timestamp_hi;1349	__le32	event_data1;1350	#define ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_MASK                        0xffUL1351	#define ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_SFT                         01352	#define ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_RESERVED                      0x0UL1353	#define ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_PAUSE_STORM                   0x1UL1354	#define ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_INVALID_SIGNAL                0x2UL1355	#define ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_NVM                           0x3UL1356	#define ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_DOORBELL_DROP_THRESHOLD       0x4UL1357	#define ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_THERMAL_THRESHOLD             0x5UL1358	#define ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_DUAL_DATA_RATE_NOT_SUPPORTED  0x6UL1359	#define ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_LAST                         ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_DUAL_DATA_RATE_NOT_SUPPORTED1360};1361 1362/* hwrm_async_event_cmpl_error_report_pause_storm (size:128b/16B) */1363struct hwrm_async_event_cmpl_error_report_pause_storm {1364	__le16	type;1365	#define ASYNC_EVENT_CMPL_ERROR_REPORT_PAUSE_STORM_TYPE_MASK            0x3fUL1366	#define ASYNC_EVENT_CMPL_ERROR_REPORT_PAUSE_STORM_TYPE_SFT             01367	#define ASYNC_EVENT_CMPL_ERROR_REPORT_PAUSE_STORM_TYPE_HWRM_ASYNC_EVENT  0x2eUL1368	#define ASYNC_EVENT_CMPL_ERROR_REPORT_PAUSE_STORM_TYPE_LAST             ASYNC_EVENT_CMPL_ERROR_REPORT_PAUSE_STORM_TYPE_HWRM_ASYNC_EVENT1369	__le16	event_id;1370	#define ASYNC_EVENT_CMPL_ERROR_REPORT_PAUSE_STORM_EVENT_ID_ERROR_REPORT 0x45UL1371	#define ASYNC_EVENT_CMPL_ERROR_REPORT_PAUSE_STORM_EVENT_ID_LAST        ASYNC_EVENT_CMPL_ERROR_REPORT_PAUSE_STORM_EVENT_ID_ERROR_REPORT1372	__le32	event_data2;1373	u8	opaque_v;1374	#define ASYNC_EVENT_CMPL_ERROR_REPORT_PAUSE_STORM_V          0x1UL1375	#define ASYNC_EVENT_CMPL_ERROR_REPORT_PAUSE_STORM_OPAQUE_MASK 0xfeUL1376	#define ASYNC_EVENT_CMPL_ERROR_REPORT_PAUSE_STORM_OPAQUE_SFT 11377	u8	timestamp_lo;1378	__le16	timestamp_hi;1379	__le32	event_data1;1380	#define ASYNC_EVENT_CMPL_ERROR_REPORT_PAUSE_STORM_EVENT_DATA1_ERROR_TYPE_MASK       0xffUL1381	#define ASYNC_EVENT_CMPL_ERROR_REPORT_PAUSE_STORM_EVENT_DATA1_ERROR_TYPE_SFT        01382	#define ASYNC_EVENT_CMPL_ERROR_REPORT_PAUSE_STORM_EVENT_DATA1_ERROR_TYPE_PAUSE_STORM  0x1UL1383	#define ASYNC_EVENT_CMPL_ERROR_REPORT_PAUSE_STORM_EVENT_DATA1_ERROR_TYPE_LAST        ASYNC_EVENT_CMPL_ERROR_REPORT_PAUSE_STORM_EVENT_DATA1_ERROR_TYPE_PAUSE_STORM1384};1385 1386/* hwrm_async_event_cmpl_error_report_invalid_signal (size:128b/16B) */1387struct hwrm_async_event_cmpl_error_report_invalid_signal {1388	__le16	type;1389	#define ASYNC_EVENT_CMPL_ERROR_REPORT_INVALID_SIGNAL_TYPE_MASK            0x3fUL1390	#define ASYNC_EVENT_CMPL_ERROR_REPORT_INVALID_SIGNAL_TYPE_SFT             01391	#define ASYNC_EVENT_CMPL_ERROR_REPORT_INVALID_SIGNAL_TYPE_HWRM_ASYNC_EVENT  0x2eUL1392	#define ASYNC_EVENT_CMPL_ERROR_REPORT_INVALID_SIGNAL_TYPE_LAST             ASYNC_EVENT_CMPL_ERROR_REPORT_INVALID_SIGNAL_TYPE_HWRM_ASYNC_EVENT1393	__le16	event_id;1394	#define ASYNC_EVENT_CMPL_ERROR_REPORT_INVALID_SIGNAL_EVENT_ID_ERROR_REPORT 0x45UL1395	#define ASYNC_EVENT_CMPL_ERROR_REPORT_INVALID_SIGNAL_EVENT_ID_LAST        ASYNC_EVENT_CMPL_ERROR_REPORT_INVALID_SIGNAL_EVENT_ID_ERROR_REPORT1396	__le32	event_data2;1397	#define ASYNC_EVENT_CMPL_ERROR_REPORT_INVALID_SIGNAL_EVENT_DATA2_PIN_ID_MASK 0xffUL1398	#define ASYNC_EVENT_CMPL_ERROR_REPORT_INVALID_SIGNAL_EVENT_DATA2_PIN_ID_SFT 01399	u8	opaque_v;1400	#define ASYNC_EVENT_CMPL_ERROR_REPORT_INVALID_SIGNAL_V          0x1UL1401	#define ASYNC_EVENT_CMPL_ERROR_REPORT_INVALID_SIGNAL_OPAQUE_MASK 0xfeUL1402	#define ASYNC_EVENT_CMPL_ERROR_REPORT_INVALID_SIGNAL_OPAQUE_SFT 11403	u8	timestamp_lo;1404	__le16	timestamp_hi;1405	__le32	event_data1;1406	#define ASYNC_EVENT_CMPL_ERROR_REPORT_INVALID_SIGNAL_EVENT_DATA1_ERROR_TYPE_MASK          0xffUL1407	#define ASYNC_EVENT_CMPL_ERROR_REPORT_INVALID_SIGNAL_EVENT_DATA1_ERROR_TYPE_SFT           01408	#define ASYNC_EVENT_CMPL_ERROR_REPORT_INVALID_SIGNAL_EVENT_DATA1_ERROR_TYPE_INVALID_SIGNAL  0x2UL1409	#define ASYNC_EVENT_CMPL_ERROR_REPORT_INVALID_SIGNAL_EVENT_DATA1_ERROR_TYPE_LAST           ASYNC_EVENT_CMPL_ERROR_REPORT_INVALID_SIGNAL_EVENT_DATA1_ERROR_TYPE_INVALID_SIGNAL1410};1411 1412/* hwrm_async_event_cmpl_error_report_nvm (size:128b/16B) */1413struct hwrm_async_event_cmpl_error_report_nvm {1414	__le16	type;1415	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_TYPE_MASK            0x3fUL1416	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_TYPE_SFT             01417	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_TYPE_HWRM_ASYNC_EVENT  0x2eUL1418	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_TYPE_LAST             ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_TYPE_HWRM_ASYNC_EVENT1419	__le16	event_id;1420	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_ID_ERROR_REPORT 0x45UL1421	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_ID_LAST        ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_ID_ERROR_REPORT1422	__le32	event_data2;1423	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA2_ERR_ADDR_MASK 0xffffffffUL1424	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA2_ERR_ADDR_SFT 01425	u8	opaque_v;1426	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_V          0x1UL1427	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_OPAQUE_MASK 0xfeUL1428	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_OPAQUE_SFT 11429	u8	timestamp_lo;1430	__le16	timestamp_hi;1431	__le32	event_data1;1432	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_ERROR_TYPE_MASK     0xffUL1433	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_ERROR_TYPE_SFT      01434	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_ERROR_TYPE_NVM_ERROR  0x3UL1435	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_ERROR_TYPE_LAST      ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_ERROR_TYPE_NVM_ERROR1436	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_NVM_ERR_TYPE_MASK   0xff00UL1437	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_NVM_ERR_TYPE_SFT    81438	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_NVM_ERR_TYPE_WRITE    (0x1UL << 8)1439	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_NVM_ERR_TYPE_ERASE    (0x2UL << 8)1440	#define ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_NVM_ERR_TYPE_LAST    ASYNC_EVENT_CMPL_ERROR_REPORT_NVM_EVENT_DATA1_NVM_ERR_TYPE_ERASE1441};1442 1443/* hwrm_async_event_cmpl_error_report_doorbell_drop_threshold (size:128b/16B) */1444struct hwrm_async_event_cmpl_error_report_doorbell_drop_threshold {1445	__le16	type;1446	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_TYPE_MASK            0x3fUL1447	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_TYPE_SFT             01448	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_TYPE_HWRM_ASYNC_EVENT  0x2eUL1449	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_TYPE_LAST             ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_TYPE_HWRM_ASYNC_EVENT1450	__le16	event_id;1451	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_EVENT_ID_ERROR_REPORT 0x45UL1452	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_EVENT_ID_LAST        ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_EVENT_ID_ERROR_REPORT1453	__le32	event_data2;1454	u8	opaque_v;1455	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_V          0x1UL1456	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_OPAQUE_MASK 0xfeUL1457	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_OPAQUE_SFT 11458	u8	timestamp_lo;1459	__le16	timestamp_hi;1460	__le32	event_data1;1461	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_EVENT_DATA1_ERROR_TYPE_MASK                   0xffUL1462	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_EVENT_DATA1_ERROR_TYPE_SFT                    01463	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_EVENT_DATA1_ERROR_TYPE_DOORBELL_DROP_THRESHOLD  0x4UL1464	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_EVENT_DATA1_ERROR_TYPE_LAST                    ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_EVENT_DATA1_ERROR_TYPE_DOORBELL_DROP_THRESHOLD1465	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_EVENT_DATA1_EPOCH_MASK                        0xffffff00UL1466	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DOORBELL_DROP_THRESHOLD_EVENT_DATA1_EPOCH_SFT                         81467};1468 1469/* hwrm_async_event_cmpl_error_report_thermal (size:128b/16B) */1470struct hwrm_async_event_cmpl_error_report_thermal {1471	__le16	type;1472	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_TYPE_MASK            0x3fUL1473	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_TYPE_SFT             01474	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_TYPE_HWRM_ASYNC_EVENT  0x2eUL1475	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_TYPE_LAST             ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_TYPE_HWRM_ASYNC_EVENT1476	__le16	event_id;1477	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_ID_ERROR_REPORT 0x45UL1478	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_ID_LAST        ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_ID_ERROR_REPORT1479	__le32	event_data2;1480	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA2_CURRENT_TEMP_MASK  0xffUL1481	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA2_CURRENT_TEMP_SFT   01482	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA2_THRESHOLD_TEMP_MASK 0xff00UL1483	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA2_THRESHOLD_TEMP_SFT 81484	u8	opaque_v;1485	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_V          0x1UL1486	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_OPAQUE_MASK 0xfeUL1487	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_OPAQUE_SFT 11488	u8	timestamp_lo;1489	__le16	timestamp_hi;1490	__le32	event_data1;1491	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA1_ERROR_TYPE_MASK          0xffUL1492	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA1_ERROR_TYPE_SFT           01493	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA1_ERROR_TYPE_THERMAL_EVENT   0x5UL1494	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA1_ERROR_TYPE_LAST           ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA1_ERROR_TYPE_THERMAL_EVENT1495	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA1_THRESHOLD_TYPE_MASK      0x700UL1496	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA1_THRESHOLD_TYPE_SFT       81497	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA1_THRESHOLD_TYPE_WARN        (0x0UL << 8)1498	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA1_THRESHOLD_TYPE_CRITICAL    (0x1UL << 8)1499	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA1_THRESHOLD_TYPE_FATAL       (0x2UL << 8)1500	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA1_THRESHOLD_TYPE_SHUTDOWN    (0x3UL << 8)1501	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA1_THRESHOLD_TYPE_LAST       ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA1_THRESHOLD_TYPE_SHUTDOWN1502	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA1_TRANSITION_DIR           0x800UL1503	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA1_TRANSITION_DIR_DECREASING  (0x0UL << 11)1504	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA1_TRANSITION_DIR_INCREASING  (0x1UL << 11)1505	#define ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA1_TRANSITION_DIR_LAST       ASYNC_EVENT_CMPL_ERROR_REPORT_THERMAL_EVENT_DATA1_TRANSITION_DIR_INCREASING1506};1507 1508/* hwrm_async_event_cmpl_error_report_dual_data_rate_not_supported (size:128b/16B) */1509struct hwrm_async_event_cmpl_error_report_dual_data_rate_not_supported {1510	__le16	type;1511	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DUAL_DATA_RATE_NOT_SUPPORTED_TYPE_MASK            0x3fUL1512	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DUAL_DATA_RATE_NOT_SUPPORTED_TYPE_SFT             01513	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DUAL_DATA_RATE_NOT_SUPPORTED_TYPE_HWRM_ASYNC_EVENT  0x2eUL1514	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DUAL_DATA_RATE_NOT_SUPPORTED_TYPE_LAST             ASYNC_EVENT_CMPL_ERROR_REPORT_DUAL_DATA_RATE_NOT_SUPPORTED_TYPE_HWRM_ASYNC_EVENT1515	__le16	event_id;1516	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DUAL_DATA_RATE_NOT_SUPPORTED_EVENT_ID_ERROR_REPORT 0x45UL1517	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DUAL_DATA_RATE_NOT_SUPPORTED_EVENT_ID_LAST        ASYNC_EVENT_CMPL_ERROR_REPORT_DUAL_DATA_RATE_NOT_SUPPORTED_EVENT_ID_ERROR_REPORT1518	__le32	event_data2;1519	u8	opaque_v;1520	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DUAL_DATA_RATE_NOT_SUPPORTED_V          0x1UL1521	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DUAL_DATA_RATE_NOT_SUPPORTED_OPAQUE_MASK 0xfeUL1522	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DUAL_DATA_RATE_NOT_SUPPORTED_OPAQUE_SFT 11523	u8	timestamp_lo;1524	__le16	timestamp_hi;1525	__le32	event_data1;1526	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DUAL_DATA_RATE_NOT_SUPPORTED_EVENT_DATA1_ERROR_TYPE_MASK                        0xffUL1527	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DUAL_DATA_RATE_NOT_SUPPORTED_EVENT_DATA1_ERROR_TYPE_SFT                         01528	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DUAL_DATA_RATE_NOT_SUPPORTED_EVENT_DATA1_ERROR_TYPE_DUAL_DATA_RATE_NOT_SUPPORTED  0x6UL1529	#define ASYNC_EVENT_CMPL_ERROR_REPORT_DUAL_DATA_RATE_NOT_SUPPORTED_EVENT_DATA1_ERROR_TYPE_LAST                         ASYNC_EVENT_CMPL_ERROR_REPORT_DUAL_DATA_RATE_NOT_SUPPORTED_EVENT_DATA1_ERROR_TYPE_DUAL_DATA_RATE_NOT_SUPPORTED1530};1531 1532/* hwrm_func_reset_input (size:192b/24B) */1533struct hwrm_func_reset_input {1534	__le16	req_type;1535	__le16	cmpl_ring;1536	__le16	seq_id;1537	__le16	target_id;1538	__le64	resp_addr;1539	__le32	enables;1540	#define FUNC_RESET_REQ_ENABLES_VF_ID_VALID     0x1UL1541	__le16	vf_id;1542	u8	func_reset_level;1543	#define FUNC_RESET_REQ_FUNC_RESET_LEVEL_RESETALL      0x0UL1544	#define FUNC_RESET_REQ_FUNC_RESET_LEVEL_RESETME       0x1UL1545	#define FUNC_RESET_REQ_FUNC_RESET_LEVEL_RESETCHILDREN 0x2UL1546	#define FUNC_RESET_REQ_FUNC_RESET_LEVEL_RESETVF       0x3UL1547	#define FUNC_RESET_REQ_FUNC_RESET_LEVEL_LAST         FUNC_RESET_REQ_FUNC_RESET_LEVEL_RESETVF1548	u8	unused_0;1549};1550 1551/* hwrm_func_reset_output (size:128b/16B) */1552struct hwrm_func_reset_output {1553	__le16	error_code;1554	__le16	req_type;1555	__le16	seq_id;1556	__le16	resp_len;1557	u8	unused_0[7];1558	u8	valid;1559};1560 1561/* hwrm_func_getfid_input (size:192b/24B) */1562struct hwrm_func_getfid_input {1563	__le16	req_type;1564	__le16	cmpl_ring;1565	__le16	seq_id;1566	__le16	target_id;1567	__le64	resp_addr;1568	__le32	enables;1569	#define FUNC_GETFID_REQ_ENABLES_PCI_ID     0x1UL1570	__le16	pci_id;1571	u8	unused_0[2];1572};1573 1574/* hwrm_func_getfid_output (size:128b/16B) */1575struct hwrm_func_getfid_output {1576	__le16	error_code;1577	__le16	req_type;1578	__le16	seq_id;1579	__le16	resp_len;1580	__le16	fid;1581	u8	unused_0[5];1582	u8	valid;1583};1584 1585/* hwrm_func_vf_alloc_input (size:192b/24B) */1586struct hwrm_func_vf_alloc_input {1587	__le16	req_type;1588	__le16	cmpl_ring;1589	__le16	seq_id;1590	__le16	target_id;1591	__le64	resp_addr;1592	__le32	enables;1593	#define FUNC_VF_ALLOC_REQ_ENABLES_FIRST_VF_ID     0x1UL1594	__le16	first_vf_id;1595	__le16	num_vfs;1596};1597 1598/* hwrm_func_vf_alloc_output (size:128b/16B) */1599struct hwrm_func_vf_alloc_output {1600	__le16	error_code;1601	__le16	req_type;1602	__le16	seq_id;1603	__le16	resp_len;1604	__le16	first_vf_id;1605	u8	unused_0[5];1606	u8	valid;1607};1608 1609/* hwrm_func_vf_free_input (size:192b/24B) */1610struct hwrm_func_vf_free_input {1611	__le16	req_type;1612	__le16	cmpl_ring;1613	__le16	seq_id;1614	__le16	target_id;1615	__le64	resp_addr;1616	__le32	enables;1617	#define FUNC_VF_FREE_REQ_ENABLES_FIRST_VF_ID     0x1UL1618	__le16	first_vf_id;1619	__le16	num_vfs;1620};1621 1622/* hwrm_func_vf_free_output (size:128b/16B) */1623struct hwrm_func_vf_free_output {1624	__le16	error_code;1625	__le16	req_type;1626	__le16	seq_id;1627	__le16	resp_len;1628	u8	unused_0[7];1629	u8	valid;1630};1631 1632/* hwrm_func_vf_cfg_input (size:576b/72B) */1633struct hwrm_func_vf_cfg_input {1634	__le16	req_type;1635	__le16	cmpl_ring;1636	__le16	seq_id;1637	__le16	target_id;1638	__le64	resp_addr;1639	__le32	enables;1640	#define FUNC_VF_CFG_REQ_ENABLES_MTU                      0x1UL1641	#define FUNC_VF_CFG_REQ_ENABLES_GUEST_VLAN               0x2UL1642	#define FUNC_VF_CFG_REQ_ENABLES_ASYNC_EVENT_CR           0x4UL1643	#define FUNC_VF_CFG_REQ_ENABLES_DFLT_MAC_ADDR            0x8UL1644	#define FUNC_VF_CFG_REQ_ENABLES_NUM_RSSCOS_CTXS          0x10UL1645	#define FUNC_VF_CFG_REQ_ENABLES_NUM_CMPL_RINGS           0x20UL1646	#define FUNC_VF_CFG_REQ_ENABLES_NUM_TX_RINGS             0x40UL1647	#define FUNC_VF_CFG_REQ_ENABLES_NUM_RX_RINGS             0x80UL1648	#define FUNC_VF_CFG_REQ_ENABLES_NUM_L2_CTXS              0x100UL1649	#define FUNC_VF_CFG_REQ_ENABLES_NUM_VNICS                0x200UL1650	#define FUNC_VF_CFG_REQ_ENABLES_NUM_STAT_CTXS            0x400UL1651	#define FUNC_VF_CFG_REQ_ENABLES_NUM_HW_RING_GRPS         0x800UL1652	#define FUNC_VF_CFG_REQ_ENABLES_NUM_KTLS_TX_KEY_CTXS     0x1000UL1653	#define FUNC_VF_CFG_REQ_ENABLES_NUM_KTLS_RX_KEY_CTXS     0x2000UL1654	#define FUNC_VF_CFG_REQ_ENABLES_NUM_QUIC_TX_KEY_CTXS     0x4000UL1655	#define FUNC_VF_CFG_REQ_ENABLES_NUM_QUIC_RX_KEY_CTXS     0x8000UL1656	__le16	mtu;1657	__le16	guest_vlan;1658	__le16	async_event_cr;1659	u8	dflt_mac_addr[6];1660	__le32	flags;1661	#define FUNC_VF_CFG_REQ_FLAGS_TX_ASSETS_TEST             0x1UL1662	#define FUNC_VF_CFG_REQ_FLAGS_RX_ASSETS_TEST             0x2UL1663	#define FUNC_VF_CFG_REQ_FLAGS_CMPL_ASSETS_TEST           0x4UL1664	#define FUNC_VF_CFG_REQ_FLAGS_RSSCOS_CTX_ASSETS_TEST     0x8UL1665	#define FUNC_VF_CFG_REQ_FLAGS_RING_GRP_ASSETS_TEST       0x10UL1666	#define FUNC_VF_CFG_REQ_FLAGS_STAT_CTX_ASSETS_TEST       0x20UL1667	#define FUNC_VF_CFG_REQ_FLAGS_VNIC_ASSETS_TEST           0x40UL1668	#define FUNC_VF_CFG_REQ_FLAGS_L2_CTX_ASSETS_TEST         0x80UL1669	#define FUNC_VF_CFG_REQ_FLAGS_PPP_PUSH_MODE_ENABLE       0x100UL1670	#define FUNC_VF_CFG_REQ_FLAGS_PPP_PUSH_MODE_DISABLE      0x200UL1671	__le16	num_rsscos_ctxs;1672	__le16	num_cmpl_rings;1673	__le16	num_tx_rings;1674	__le16	num_rx_rings;1675	__le16	num_l2_ctxs;1676	__le16	num_vnics;1677	__le16	num_stat_ctxs;1678	__le16	num_hw_ring_grps;1679	__le32	num_ktls_tx_key_ctxs;1680	__le32	num_ktls_rx_key_ctxs;1681	__le16	num_msix;1682	u8	unused[2];1683	__le32	num_quic_tx_key_ctxs;1684	__le32	num_quic_rx_key_ctxs;1685};1686 1687/* hwrm_func_vf_cfg_output (size:128b/16B) */1688struct hwrm_func_vf_cfg_output {1689	__le16	error_code;1690	__le16	req_type;1691	__le16	seq_id;1692	__le16	resp_len;1693	u8	unused_0[7];1694	u8	valid;1695};1696 1697/* hwrm_func_qcaps_input (size:192b/24B) */1698struct hwrm_func_qcaps_input {1699	__le16	req_type;1700	__le16	cmpl_ring;1701	__le16	seq_id;1702	__le16	target_id;1703	__le64	resp_addr;1704	__le16	fid;1705	u8	unused_0[6];1706};1707 1708/* hwrm_func_qcaps_output (size:1152b/144B) */1709struct hwrm_func_qcaps_output {1710	__le16	error_code;1711	__le16	req_type;1712	__le16	seq_id;1713	__le16	resp_len;1714	__le16	fid;1715	__le16	port_id;1716	__le32	flags;1717	#define FUNC_QCAPS_RESP_FLAGS_PUSH_MODE_SUPPORTED                   0x1UL1718	#define FUNC_QCAPS_RESP_FLAGS_GLOBAL_MSIX_AUTOMASKING               0x2UL1719	#define FUNC_QCAPS_RESP_FLAGS_PTP_SUPPORTED                         0x4UL1720	#define FUNC_QCAPS_RESP_FLAGS_ROCE_V1_SUPPORTED                     0x8UL1721	#define FUNC_QCAPS_RESP_FLAGS_ROCE_V2_SUPPORTED                     0x10UL1722	#define FUNC_QCAPS_RESP_FLAGS_WOL_MAGICPKT_SUPPORTED                0x20UL1723	#define FUNC_QCAPS_RESP_FLAGS_WOL_BMP_SUPPORTED                     0x40UL1724	#define FUNC_QCAPS_RESP_FLAGS_TX_RING_RL_SUPPORTED                  0x80UL1725	#define FUNC_QCAPS_RESP_FLAGS_TX_BW_CFG_SUPPORTED                   0x100UL1726	#define FUNC_QCAPS_RESP_FLAGS_VF_TX_RING_RL_SUPPORTED               0x200UL1727	#define FUNC_QCAPS_RESP_FLAGS_VF_BW_CFG_SUPPORTED                   0x400UL1728	#define FUNC_QCAPS_RESP_FLAGS_STD_TX_RING_MODE_SUPPORTED            0x800UL1729	#define FUNC_QCAPS_RESP_FLAGS_GENEVE_TUN_FLAGS_SUPPORTED            0x1000UL1730	#define FUNC_QCAPS_RESP_FLAGS_NVGRE_TUN_FLAGS_SUPPORTED             0x2000UL1731	#define FUNC_QCAPS_RESP_FLAGS_GRE_TUN_FLAGS_SUPPORTED               0x4000UL1732	#define FUNC_QCAPS_RESP_FLAGS_MPLS_TUN_FLAGS_SUPPORTED              0x8000UL1733	#define FUNC_QCAPS_RESP_FLAGS_PCIE_STATS_SUPPORTED                  0x10000UL1734	#define FUNC_QCAPS_RESP_FLAGS_ADOPTED_PF_SUPPORTED                  0x20000UL1735	#define FUNC_QCAPS_RESP_FLAGS_ADMIN_PF_SUPPORTED                    0x40000UL1736	#define FUNC_QCAPS_RESP_FLAGS_LINK_ADMIN_STATUS_SUPPORTED           0x80000UL1737	#define FUNC_QCAPS_RESP_FLAGS_WCB_PUSH_MODE                         0x100000UL1738	#define FUNC_QCAPS_RESP_FLAGS_DYNAMIC_TX_RING_ALLOC                 0x200000UL1739	#define FUNC_QCAPS_RESP_FLAGS_HOT_RESET_CAPABLE                     0x400000UL1740	#define FUNC_QCAPS_RESP_FLAGS_ERROR_RECOVERY_CAPABLE                0x800000UL1741	#define FUNC_QCAPS_RESP_FLAGS_EXT_STATS_SUPPORTED                   0x1000000UL1742	#define FUNC_QCAPS_RESP_FLAGS_ERR_RECOVER_RELOAD                    0x2000000UL1743	#define FUNC_QCAPS_RESP_FLAGS_NOTIFY_VF_DEF_VNIC_CHNG_SUPPORTED     0x4000000UL1744	#define FUNC_QCAPS_RESP_FLAGS_VLAN_ACCELERATION_TX_DISABLED         0x8000000UL1745	#define FUNC_QCAPS_RESP_FLAGS_COREDUMP_CMD_SUPPORTED                0x10000000UL1746	#define FUNC_QCAPS_RESP_FLAGS_CRASHDUMP_CMD_SUPPORTED               0x20000000UL1747	#define FUNC_QCAPS_RESP_FLAGS_PFC_WD_STATS_SUPPORTED                0x40000000UL1748	#define FUNC_QCAPS_RESP_FLAGS_DBG_QCAPS_CMD_SUPPORTED               0x80000000UL1749	u8	mac_address[6];1750	__le16	max_rsscos_ctx;1751	__le16	max_cmpl_rings;1752	__le16	max_tx_rings;1753	__le16	max_rx_rings;1754	__le16	max_l2_ctxs;1755	__le16	max_vnics;1756	__le16	first_vf_id;1757	__le16	max_vfs;1758	__le16	max_stat_ctx;1759	__le32	max_encap_records;1760	__le32	max_decap_records;1761	__le32	max_tx_em_flows;1762	__le32	max_tx_wm_flows;1763	__le32	max_rx_em_flows;1764	__le32	max_rx_wm_flows;1765	__le32	max_mcast_filters;1766	__le32	max_flow_id;1767	__le32	max_hw_ring_grps;1768	__le16	max_sp_tx_rings;1769	__le16	max_msix_vfs;1770	__le32	flags_ext;1771	#define FUNC_QCAPS_RESP_FLAGS_EXT_ECN_MARK_SUPPORTED                          0x1UL1772	#define FUNC_QCAPS_RESP_FLAGS_EXT_ECN_STATS_SUPPORTED                         0x2UL1773	#define FUNC_QCAPS_RESP_FLAGS_EXT_EXT_HW_STATS_SUPPORTED                      0x4UL1774	#define FUNC_QCAPS_RESP_FLAGS_EXT_HOT_RESET_IF_SUPPORT                        0x8UL1775	#define FUNC_QCAPS_RESP_FLAGS_EXT_PROXY_MODE_SUPPORT                          0x10UL1776	#define FUNC_QCAPS_RESP_FLAGS_EXT_TX_PROXY_SRC_INTF_OVERRIDE_SUPPORT          0x20UL1777	#define FUNC_QCAPS_RESP_FLAGS_EXT_SCHQ_SUPPORTED                              0x40UL1778	#define FUNC_QCAPS_RESP_FLAGS_EXT_PPP_PUSH_MODE_SUPPORTED                     0x80UL1779	#define FUNC_QCAPS_RESP_FLAGS_EXT_EVB_MODE_CFG_NOT_SUPPORTED                  0x100UL1780	#define FUNC_QCAPS_RESP_FLAGS_EXT_SOC_SPD_SUPPORTED                           0x200UL1781	#define FUNC_QCAPS_RESP_FLAGS_EXT_FW_LIVEPATCH_SUPPORTED                      0x400UL1782	#define FUNC_QCAPS_RESP_FLAGS_EXT_FAST_RESET_CAPABLE                          0x800UL1783	#define FUNC_QCAPS_RESP_FLAGS_EXT_TX_METADATA_CFG_CAPABLE                     0x1000UL1784	#define FUNC_QCAPS_RESP_FLAGS_EXT_NVM_OPTION_ACTION_SUPPORTED                 0x2000UL1785	#define FUNC_QCAPS_RESP_FLAGS_EXT_BD_METADATA_SUPPORTED                       0x4000UL1786	#define FUNC_QCAPS_RESP_FLAGS_EXT_ECHO_REQUEST_SUPPORTED                      0x8000UL1787	#define FUNC_QCAPS_RESP_FLAGS_EXT_NPAR_1_2_SUPPORTED                          0x10000UL1788	#define FUNC_QCAPS_RESP_FLAGS_EXT_PTP_PTM_SUPPORTED                           0x20000UL1789	#define FUNC_QCAPS_RESP_FLAGS_EXT_PTP_PPS_SUPPORTED                           0x40000UL1790	#define FUNC_QCAPS_RESP_FLAGS_EXT_VF_CFG_ASYNC_FOR_PF_SUPPORTED               0x80000UL1791	#define FUNC_QCAPS_RESP_FLAGS_EXT_PARTITION_BW_SUPPORTED                      0x100000UL1792	#define FUNC_QCAPS_RESP_FLAGS_EXT_DFLT_VLAN_TPID_PCP_SUPPORTED                0x200000UL1793	#define FUNC_QCAPS_RESP_FLAGS_EXT_KTLS_SUPPORTED                              0x400000UL1794	#define FUNC_QCAPS_RESP_FLAGS_EXT_EP_RATE_CONTROL                             0x800000UL1795	#define FUNC_QCAPS_RESP_FLAGS_EXT_MIN_BW_SUPPORTED                            0x1000000UL1796	#define FUNC_QCAPS_RESP_FLAGS_EXT_TX_COAL_CMPL_CAP                            0x2000000UL1797	#define FUNC_QCAPS_RESP_FLAGS_EXT_BS_V2_SUPPORTED                             0x4000000UL1798	#define FUNC_QCAPS_RESP_FLAGS_EXT_BS_V2_REQUIRED                              0x8000000UL1799	#define FUNC_QCAPS_RESP_FLAGS_EXT_PTP_64BIT_RTC_SUPPORTED                     0x10000000UL1800	#define FUNC_QCAPS_RESP_FLAGS_EXT_DBR_PACING_SUPPORTED                        0x20000000UL1801	#define FUNC_QCAPS_RESP_FLAGS_EXT_HW_DBR_DROP_RECOV_SUPPORTED                 0x40000000UL1802	#define FUNC_QCAPS_RESP_FLAGS_EXT_DISABLE_CQ_OVERFLOW_DETECTION_SUPPORTED     0x80000000UL1803	u8	max_schqs;1804	u8	mpc_chnls_cap;1805	#define FUNC_QCAPS_RESP_MPC_CHNLS_CAP_TCE         0x1UL1806	#define FUNC_QCAPS_RESP_MPC_CHNLS_CAP_RCE         0x2UL1807	#define FUNC_QCAPS_RESP_MPC_CHNLS_CAP_TE_CFA      0x4UL1808	#define FUNC_QCAPS_RESP_MPC_CHNLS_CAP_RE_CFA      0x8UL1809	#define FUNC_QCAPS_RESP_MPC_CHNLS_CAP_PRIMATE     0x10UL1810	__le16	max_key_ctxs_alloc;1811	__le32	flags_ext2;1812	#define FUNC_QCAPS_RESP_FLAGS_EXT2_RX_ALL_PKTS_TIMESTAMPS_SUPPORTED      0x1UL1813	#define FUNC_QCAPS_RESP_FLAGS_EXT2_QUIC_SUPPORTED                        0x2UL1814	#define FUNC_QCAPS_RESP_FLAGS_EXT2_KDNET_SUPPORTED                       0x4UL1815	#define FUNC_QCAPS_RESP_FLAGS_EXT2_DBR_PACING_EXT_SUPPORTED              0x8UL1816	#define FUNC_QCAPS_RESP_FLAGS_EXT2_SW_DBR_DROP_RECOVERY_SUPPORTED        0x10UL1817	#define FUNC_QCAPS_RESP_FLAGS_EXT2_GENERIC_STATS_SUPPORTED               0x20UL1818	#define FUNC_QCAPS_RESP_FLAGS_EXT2_UDP_GSO_SUPPORTED                     0x40UL1819	#define FUNC_QCAPS_RESP_FLAGS_EXT2_SYNCE_SUPPORTED                       0x80UL1820	#define FUNC_QCAPS_RESP_FLAGS_EXT2_DBR_PACING_V0_SUPPORTED               0x100UL1821	#define FUNC_QCAPS_RESP_FLAGS_EXT2_TX_PKT_TS_CMPL_SUPPORTED              0x200UL1822	#define FUNC_QCAPS_RESP_FLAGS_EXT2_HW_LAG_SUPPORTED                      0x400UL1823	#define FUNC_QCAPS_RESP_FLAGS_EXT2_ON_CHIP_CTX_SUPPORTED                 0x800UL1824	#define FUNC_QCAPS_RESP_FLAGS_EXT2_STEERING_TAG_SUPPORTED                0x1000UL1825	#define FUNC_QCAPS_RESP_FLAGS_EXT2_ENHANCED_VF_SCALE_SUPPORTED           0x2000UL1826	#define FUNC_QCAPS_RESP_FLAGS_EXT2_KEY_XID_PARTITION_SUPPORTED           0x4000UL1827	#define FUNC_QCAPS_RESP_FLAGS_EXT2_CONCURRENT_KTLS_QUIC_SUPPORTED        0x8000UL1828	#define FUNC_QCAPS_RESP_FLAGS_EXT2_SCHQ_CROSS_TC_CAP_SUPPORTED           0x10000UL1829	#define FUNC_QCAPS_RESP_FLAGS_EXT2_SCHQ_PER_TC_CAP_SUPPORTED             0x20000UL1830	#define FUNC_QCAPS_RESP_FLAGS_EXT2_SCHQ_PER_TC_RESERVATION_SUPPORTED     0x40000UL1831	#define FUNC_QCAPS_RESP_FLAGS_EXT2_DB_ERROR_STATS_SUPPORTED              0x80000UL1832	#define FUNC_QCAPS_RESP_FLAGS_EXT2_ROCE_VF_RESOURCE_MGMT_SUPPORTED       0x100000UL1833	#define FUNC_QCAPS_RESP_FLAGS_EXT2_UDCC_SUPPORTED                        0x200000UL1834	#define FUNC_QCAPS_RESP_FLAGS_EXT2_TIMED_TX_SO_TXTIME_SUPPORTED          0x400000UL1835	#define FUNC_QCAPS_RESP_FLAGS_EXT2_SW_MAX_RESOURCE_LIMITS_SUPPORTED      0x800000UL1836	#define FUNC_QCAPS_RESP_FLAGS_EXT2_TF_INGRESS_NIC_FLOW_SUPPORTED         0x1000000UL1837	#define FUNC_QCAPS_RESP_FLAGS_EXT2_LPBK_STATS_SUPPORTED                  0x2000000UL1838	#define FUNC_QCAPS_RESP_FLAGS_EXT2_TF_EGRESS_NIC_FLOW_SUPPORTED          0x4000000UL1839	#define FUNC_QCAPS_RESP_FLAGS_EXT2_MULTI_LOSSLESS_QUEUES_SUPPORTED       0x8000000UL1840	#define FUNC_QCAPS_RESP_FLAGS_EXT2_PEER_MMAP_SUPPORTED                   0x10000000UL1841	#define FUNC_QCAPS_RESP_FLAGS_EXT2_TIMED_TX_PACING_SUPPORTED             0x20000000UL1842	#define FUNC_QCAPS_RESP_FLAGS_EXT2_VF_STAT_EJECTION_SUPPORTED            0x40000000UL1843	#define FUNC_QCAPS_RESP_FLAGS_EXT2_HOST_COREDUMP_SUPPORTED               0x80000000UL1844	__le16	tunnel_disable_flag;1845	#define FUNC_QCAPS_RESP_TUNNEL_DISABLE_FLAG_DISABLE_VXLAN      0x1UL1846	#define FUNC_QCAPS_RESP_TUNNEL_DISABLE_FLAG_DISABLE_NGE        0x2UL1847	#define FUNC_QCAPS_RESP_TUNNEL_DISABLE_FLAG_DISABLE_NVGRE      0x4UL1848	#define FUNC_QCAPS_RESP_TUNNEL_DISABLE_FLAG_DISABLE_L2GRE      0x8UL1849	#define FUNC_QCAPS_RESP_TUNNEL_DISABLE_FLAG_DISABLE_GRE        0x10UL1850	#define FUNC_QCAPS_RESP_TUNNEL_DISABLE_FLAG_DISABLE_IPINIP     0x20UL1851	#define FUNC_QCAPS_RESP_TUNNEL_DISABLE_FLAG_DISABLE_MPLS       0x40UL1852	#define FUNC_QCAPS_RESP_TUNNEL_DISABLE_FLAG_DISABLE_PPPOE      0x80UL1853	__le16	xid_partition_cap;1854	#define FUNC_QCAPS_RESP_XID_PARTITION_CAP_TX_CK     0x1UL1855	#define FUNC_QCAPS_RESP_XID_PARTITION_CAP_RX_CK     0x2UL1856	u8	device_serial_number[8];1857	__le16	ctxs_per_partition;1858	__le16	max_tso_segs;1859	__le32	roce_vf_max_av;1860	__le32	roce_vf_max_cq;1861	__le32	roce_vf_max_mrw;1862	__le32	roce_vf_max_qp;1863	__le32	roce_vf_max_srq;1864	__le32	roce_vf_max_gid;1865	__le32	flags_ext3;1866	#define FUNC_QCAPS_RESP_FLAGS_EXT3_RM_RSV_WHILE_ALLOC_CAP     0x1UL1867	u8	unused_3[7];1868	u8	valid;1869};1870 1871/* hwrm_func_qcfg_input (size:192b/24B) */1872struct hwrm_func_qcfg_input {1873	__le16	req_type;1874	__le16	cmpl_ring;1875	__le16	seq_id;1876	__le16	target_id;1877	__le64	resp_addr;1878	__le16	fid;1879	u8	unused_0[6];1880};1881 1882/* hwrm_func_qcfg_output (size:1280b/160B) */1883struct hwrm_func_qcfg_output {1884	__le16	error_code;1885	__le16	req_type;1886	__le16	seq_id;1887	__le16	resp_len;1888	__le16	fid;1889	__le16	port_id;1890	__le16	vlan;1891	__le16	flags;1892	#define FUNC_QCFG_RESP_FLAGS_OOB_WOL_MAGICPKT_ENABLED     0x1UL1893	#define FUNC_QCFG_RESP_FLAGS_OOB_WOL_BMP_ENABLED          0x2UL1894	#define FUNC_QCFG_RESP_FLAGS_FW_DCBX_AGENT_ENABLED        0x4UL1895	#define FUNC_QCFG_RESP_FLAGS_STD_TX_RING_MODE_ENABLED     0x8UL1896	#define FUNC_QCFG_RESP_FLAGS_FW_LLDP_AGENT_ENABLED        0x10UL1897	#define FUNC_QCFG_RESP_FLAGS_MULTI_HOST                   0x20UL1898	#define FUNC_QCFG_RESP_FLAGS_TRUSTED_VF                   0x40UL1899	#define FUNC_QCFG_RESP_FLAGS_SECURE_MODE_ENABLED          0x80UL1900	#define FUNC_QCFG_RESP_FLAGS_PREBOOT_LEGACY_L2_RINGS      0x100UL1901	#define FUNC_QCFG_RESP_FLAGS_HOT_RESET_ALLOWED            0x200UL1902	#define FUNC_QCFG_RESP_FLAGS_PPP_PUSH_MODE_ENABLED        0x400UL1903	#define FUNC_QCFG_RESP_FLAGS_RING_MONITOR_ENABLED         0x800UL1904	#define FUNC_QCFG_RESP_FLAGS_FAST_RESET_ALLOWED           0x1000UL1905	#define FUNC_QCFG_RESP_FLAGS_MULTI_ROOT                   0x2000UL1906	#define FUNC_QCFG_RESP_FLAGS_ENABLE_RDMA_SRIOV            0x4000UL1907	#define FUNC_QCFG_RESP_FLAGS_ROCE_VNIC_ID_VALID           0x8000UL1908	u8	mac_address[6];1909	__le16	pci_id;1910	__le16	alloc_rsscos_ctx;1911	__le16	alloc_cmpl_rings;1912	__le16	alloc_tx_rings;1913	__le16	alloc_rx_rings;1914	__le16	alloc_l2_ctx;1915	__le16	alloc_vnics;1916	__le16	admin_mtu;1917	__le16	mru;1918	__le16	stat_ctx_id;1919	u8	port_partition_type;1920	#define FUNC_QCFG_RESP_PORT_PARTITION_TYPE_SPF     0x0UL1921	#define FUNC_QCFG_RESP_PORT_PARTITION_TYPE_MPFS    0x1UL1922	#define FUNC_QCFG_RESP_PORT_PARTITION_TYPE_NPAR1_0 0x2UL1923	#define FUNC_QCFG_RESP_PORT_PARTITION_TYPE_NPAR1_5 0x3UL1924	#define FUNC_QCFG_RESP_PORT_PARTITION_TYPE_NPAR2_0 0x4UL1925	#define FUNC_QCFG_RESP_PORT_PARTITION_TYPE_NPAR1_2 0x5UL1926	#define FUNC_QCFG_RESP_PORT_PARTITION_TYPE_UNKNOWN 0xffUL1927	#define FUNC_QCFG_RESP_PORT_PARTITION_TYPE_LAST   FUNC_QCFG_RESP_PORT_PARTITION_TYPE_UNKNOWN1928	u8	port_pf_cnt;1929	#define FUNC_QCFG_RESP_PORT_PF_CNT_UNAVAIL 0x0UL1930	#define FUNC_QCFG_RESP_PORT_PF_CNT_LAST   FUNC_QCFG_RESP_PORT_PF_CNT_UNAVAIL1931	__le16	dflt_vnic_id;1932	__le16	max_mtu_configured;1933	__le32	min_bw;1934	#define FUNC_QCFG_RESP_MIN_BW_BW_VALUE_MASK             0xfffffffUL1935	#define FUNC_QCFG_RESP_MIN_BW_BW_VALUE_SFT              01936	#define FUNC_QCFG_RESP_MIN_BW_SCALE                     0x10000000UL1937	#define FUNC_QCFG_RESP_MIN_BW_SCALE_BITS                  (0x0UL << 28)1938	#define FUNC_QCFG_RESP_MIN_BW_SCALE_BYTES                 (0x1UL << 28)1939	#define FUNC_QCFG_RESP_MIN_BW_SCALE_LAST                 FUNC_QCFG_RESP_MIN_BW_SCALE_BYTES1940	#define FUNC_QCFG_RESP_MIN_BW_BW_VALUE_UNIT_MASK        0xe0000000UL1941	#define FUNC_QCFG_RESP_MIN_BW_BW_VALUE_UNIT_SFT         291942	#define FUNC_QCFG_RESP_MIN_BW_BW_VALUE_UNIT_MEGA          (0x0UL << 29)1943	#define FUNC_QCFG_RESP_MIN_BW_BW_VALUE_UNIT_KILO          (0x2UL << 29)1944	#define FUNC_QCFG_RESP_MIN_BW_BW_VALUE_UNIT_BASE          (0x4UL << 29)1945	#define FUNC_QCFG_RESP_MIN_BW_BW_VALUE_UNIT_GIGA          (0x6UL << 29)1946	#define FUNC_QCFG_RESP_MIN_BW_BW_VALUE_UNIT_PERCENT1_100  (0x1UL << 29)1947	#define FUNC_QCFG_RESP_MIN_BW_BW_VALUE_UNIT_INVALID       (0x7UL << 29)1948	#define FUNC_QCFG_RESP_MIN_BW_BW_VALUE_UNIT_LAST         FUNC_QCFG_RESP_MIN_BW_BW_VALUE_UNIT_INVALID1949	__le32	max_bw;1950	#define FUNC_QCFG_RESP_MAX_BW_BW_VALUE_MASK             0xfffffffUL1951	#define FUNC_QCFG_RESP_MAX_BW_BW_VALUE_SFT              01952	#define FUNC_QCFG_RESP_MAX_BW_SCALE                     0x10000000UL1953	#define FUNC_QCFG_RESP_MAX_BW_SCALE_BITS                  (0x0UL << 28)1954	#define FUNC_QCFG_RESP_MAX_BW_SCALE_BYTES                 (0x1UL << 28)1955	#define FUNC_QCFG_RESP_MAX_BW_SCALE_LAST                 FUNC_QCFG_RESP_MAX_BW_SCALE_BYTES1956	#define FUNC_QCFG_RESP_MAX_BW_BW_VALUE_UNIT_MASK        0xe0000000UL1957	#define FUNC_QCFG_RESP_MAX_BW_BW_VALUE_UNIT_SFT         291958	#define FUNC_QCFG_RESP_MAX_BW_BW_VALUE_UNIT_MEGA          (0x0UL << 29)1959	#define FUNC_QCFG_RESP_MAX_BW_BW_VALUE_UNIT_KILO          (0x2UL << 29)1960	#define FUNC_QCFG_RESP_MAX_BW_BW_VALUE_UNIT_BASE          (0x4UL << 29)1961	#define FUNC_QCFG_RESP_MAX_BW_BW_VALUE_UNIT_GIGA          (0x6UL << 29)1962	#define FUNC_QCFG_RESP_MAX_BW_BW_VALUE_UNIT_PERCENT1_100  (0x1UL << 29)1963	#define FUNC_QCFG_RESP_MAX_BW_BW_VALUE_UNIT_INVALID       (0x7UL << 29)1964	#define FUNC_QCFG_RESP_MAX_BW_BW_VALUE_UNIT_LAST         FUNC_QCFG_RESP_MAX_BW_BW_VALUE_UNIT_INVALID1965	u8	evb_mode;1966	#define FUNC_QCFG_RESP_EVB_MODE_NO_EVB 0x0UL1967	#define FUNC_QCFG_RESP_EVB_MODE_VEB    0x1UL1968	#define FUNC_QCFG_RESP_EVB_MODE_VEPA   0x2UL1969	#define FUNC_QCFG_RESP_EVB_MODE_LAST  FUNC_QCFG_RESP_EVB_MODE_VEPA1970	u8	options;1971	#define FUNC_QCFG_RESP_OPTIONS_CACHE_LINESIZE_MASK         0x3UL1972	#define FUNC_QCFG_RESP_OPTIONS_CACHE_LINESIZE_SFT          01973	#define FUNC_QCFG_RESP_OPTIONS_CACHE_LINESIZE_SIZE_64        0x0UL1974	#define FUNC_QCFG_RESP_OPTIONS_CACHE_LINESIZE_SIZE_128       0x1UL1975	#define FUNC_QCFG_RESP_OPTIONS_CACHE_LINESIZE_LAST          FUNC_QCFG_RESP_OPTIONS_CACHE_LINESIZE_SIZE_1281976	#define FUNC_QCFG_RESP_OPTIONS_LINK_ADMIN_STATE_MASK       0xcUL1977	#define FUNC_QCFG_RESP_OPTIONS_LINK_ADMIN_STATE_SFT        21978	#define FUNC_QCFG_RESP_OPTIONS_LINK_ADMIN_STATE_FORCED_DOWN  (0x0UL << 2)1979	#define FUNC_QCFG_RESP_OPTIONS_LINK_ADMIN_STATE_FORCED_UP    (0x1UL << 2)1980	#define FUNC_QCFG_RESP_OPTIONS_LINK_ADMIN_STATE_AUTO         (0x2UL << 2)1981	#define FUNC_QCFG_RESP_OPTIONS_LINK_ADMIN_STATE_LAST        FUNC_QCFG_RESP_OPTIONS_LINK_ADMIN_STATE_AUTO1982	#define FUNC_QCFG_RESP_OPTIONS_RSVD_MASK                   0xf0UL1983	#define FUNC_QCFG_RESP_OPTIONS_RSVD_SFT                    41984	__le16	alloc_vfs;1985	__le32	alloc_mcast_filters;1986	__le32	alloc_hw_ring_grps;1987	__le16	alloc_sp_tx_rings;1988	__le16	alloc_stat_ctx;1989	__le16	alloc_msix;1990	__le16	registered_vfs;1991	__le16	l2_doorbell_bar_size_kb;1992	u8	active_endpoints;1993	u8	always_1;1994	__le32	reset_addr_poll;1995	__le16	legacy_l2_db_size_kb;1996	__le16	svif_info;1997	#define FUNC_QCFG_RESP_SVIF_INFO_SVIF_MASK      0x7fffUL1998	#define FUNC_QCFG_RESP_SVIF_INFO_SVIF_SFT       01999	#define FUNC_QCFG_RESP_SVIF_INFO_SVIF_VALID     0x8000UL2000	u8	mpc_chnls;2001	#define FUNC_QCFG_RESP_MPC_CHNLS_TCE_ENABLED         0x1UL2002	#define FUNC_QCFG_RESP_MPC_CHNLS_RCE_ENABLED         0x2UL2003	#define FUNC_QCFG_RESP_MPC_CHNLS_TE_CFA_ENABLED      0x4UL2004	#define FUNC_QCFG_RESP_MPC_CHNLS_RE_CFA_ENABLED      0x8UL2005	#define FUNC_QCFG_RESP_MPC_CHNLS_PRIMATE_ENABLED     0x10UL2006	u8	db_page_size;2007	#define FUNC_QCFG_RESP_DB_PAGE_SIZE_4KB   0x0UL2008	#define FUNC_QCFG_RESP_DB_PAGE_SIZE_8KB   0x1UL2009	#define FUNC_QCFG_RESP_DB_PAGE_SIZE_16KB  0x2UL2010	#define FUNC_QCFG_RESP_DB_PAGE_SIZE_32KB  0x3UL2011	#define FUNC_QCFG_RESP_DB_PAGE_SIZE_64KB  0x4UL2012	#define FUNC_QCFG_RESP_DB_PAGE_SIZE_128KB 0x5UL2013	#define FUNC_QCFG_RESP_DB_PAGE_SIZE_256KB 0x6UL2014	#define FUNC_QCFG_RESP_DB_PAGE_SIZE_512KB 0x7UL2015	#define FUNC_QCFG_RESP_DB_PAGE_SIZE_1MB   0x8UL2016	#define FUNC_QCFG_RESP_DB_PAGE_SIZE_2MB   0x9UL2017	#define FUNC_QCFG_RESP_DB_PAGE_SIZE_4MB   0xaUL2018	#define FUNC_QCFG_RESP_DB_PAGE_SIZE_LAST FUNC_QCFG_RESP_DB_PAGE_SIZE_4MB2019	__le16	roce_vnic_id;2020	__le32	partition_min_bw;2021	#define FUNC_QCFG_RESP_PARTITION_MIN_BW_BW_VALUE_MASK             0xfffffffUL2022	#define FUNC_QCFG_RESP_PARTITION_MIN_BW_BW_VALUE_SFT              02023	#define FUNC_QCFG_RESP_PARTITION_MIN_BW_SCALE                     0x10000000UL2024	#define FUNC_QCFG_RESP_PARTITION_MIN_BW_SCALE_BITS                  (0x0UL << 28)2025	#define FUNC_QCFG_RESP_PARTITION_MIN_BW_SCALE_BYTES                 (0x1UL << 28)2026	#define FUNC_QCFG_RESP_PARTITION_MIN_BW_SCALE_LAST                 FUNC_QCFG_RESP_PARTITION_MIN_BW_SCALE_BYTES2027	#define FUNC_QCFG_RESP_PARTITION_MIN_BW_BW_VALUE_UNIT_MASK        0xe0000000UL2028	#define FUNC_QCFG_RESP_PARTITION_MIN_BW_BW_VALUE_UNIT_SFT         292029	#define FUNC_QCFG_RESP_PARTITION_MIN_BW_BW_VALUE_UNIT_PERCENT1_100  (0x1UL << 29)2030	#define FUNC_QCFG_RESP_PARTITION_MIN_BW_BW_VALUE_UNIT_LAST         FUNC_QCFG_RESP_PARTITION_MIN_BW_BW_VALUE_UNIT_PERCENT1_1002031	__le32	partition_max_bw;2032	#define FUNC_QCFG_RESP_PARTITION_MAX_BW_BW_VALUE_MASK             0xfffffffUL2033	#define FUNC_QCFG_RESP_PARTITION_MAX_BW_BW_VALUE_SFT              02034	#define FUNC_QCFG_RESP_PARTITION_MAX_BW_SCALE                     0x10000000UL2035	#define FUNC_QCFG_RESP_PARTITION_MAX_BW_SCALE_BITS                  (0x0UL << 28)2036	#define FUNC_QCFG_RESP_PARTITION_MAX_BW_SCALE_BYTES                 (0x1UL << 28)2037	#define FUNC_QCFG_RESP_PARTITION_MAX_BW_SCALE_LAST                 FUNC_QCFG_RESP_PARTITION_MAX_BW_SCALE_BYTES2038	#define FUNC_QCFG_RESP_PARTITION_MAX_BW_BW_VALUE_UNIT_MASK        0xe0000000UL2039	#define FUNC_QCFG_RESP_PARTITION_MAX_BW_BW_VALUE_UNIT_SFT         292040	#define FUNC_QCFG_RESP_PARTITION_MAX_BW_BW_VALUE_UNIT_PERCENT1_100  (0x1UL << 29)2041	#define FUNC_QCFG_RESP_PARTITION_MAX_BW_BW_VALUE_UNIT_LAST         FUNC_QCFG_RESP_PARTITION_MAX_BW_BW_VALUE_UNIT_PERCENT1_1002042	__le16	host_mtu;2043	__le16	flags2;2044	#define FUNC_QCFG_RESP_FLAGS2_SRIOV_DSCP_INSERT_ENABLED     0x1UL2045	u8	unused_4[2];2046	u8	port_kdnet_mode;2047	#define FUNC_QCFG_RESP_PORT_KDNET_MODE_DISABLED 0x0UL2048	#define FUNC_QCFG_RESP_PORT_KDNET_MODE_ENABLED  0x1UL2049	#define FUNC_QCFG_RESP_PORT_KDNET_MODE_LAST    FUNC_QCFG_RESP_PORT_KDNET_MODE_ENABLED2050	u8	kdnet_pcie_function;2051	__le16	port_kdnet_fid;2052	u8	unused_5[2];2053	__le32	num_ktls_tx_key_ctxs;2054	__le32	num_ktls_rx_key_ctxs;2055	u8	lag_id;2056	u8	parif;2057	u8	fw_lag_id;2058	u8	unused_6;2059	__le32	num_quic_tx_key_ctxs;2060	__le32	num_quic_rx_key_ctxs;2061	__le32	roce_max_av_per_vf;2062	__le32	roce_max_cq_per_vf;2063	__le32	roce_max_mrw_per_vf;2064	__le32	roce_max_qp_per_vf;2065	__le32	roce_max_srq_per_vf;2066	__le32	roce_max_gid_per_vf;2067	__le16	xid_partition_cfg;2068	#define FUNC_QCFG_RESP_XID_PARTITION_CFG_TX_CK     0x1UL2069	#define FUNC_QCFG_RESP_XID_PARTITION_CFG_RX_CK     0x2UL2070	u8	unused_7;2071	u8	valid;2072};2073 2074/* hwrm_func_cfg_input (size:1280b/160B) */2075struct hwrm_func_cfg_input {2076	__le16	req_type;2077	__le16	cmpl_ring;2078	__le16	seq_id;2079	__le16	target_id;2080	__le64	resp_addr;2081	__le16	fid;2082	__le16	num_msix;2083	__le32	flags;2084	#define FUNC_CFG_REQ_FLAGS_SRC_MAC_ADDR_CHECK_DISABLE     0x1UL2085	#define FUNC_CFG_REQ_FLAGS_SRC_MAC_ADDR_CHECK_ENABLE      0x2UL2086	#define FUNC_CFG_REQ_FLAGS_RSVD_MASK                      0x1fcUL2087	#define FUNC_CFG_REQ_FLAGS_RSVD_SFT                       22088	#define FUNC_CFG_REQ_FLAGS_STD_TX_RING_MODE_ENABLE        0x200UL2089	#define FUNC_CFG_REQ_FLAGS_STD_TX_RING_MODE_DISABLE       0x400UL2090	#define FUNC_CFG_REQ_FLAGS_VIRT_MAC_PERSIST               0x800UL2091	#define FUNC_CFG_REQ_FLAGS_NO_AUTOCLEAR_STATISTIC         0x1000UL2092	#define FUNC_CFG_REQ_FLAGS_TX_ASSETS_TEST                 0x2000UL2093	#define FUNC_CFG_REQ_FLAGS_RX_ASSETS_TEST                 0x4000UL2094	#define FUNC_CFG_REQ_FLAGS_CMPL_ASSETS_TEST               0x8000UL2095	#define FUNC_CFG_REQ_FLAGS_RSSCOS_CTX_ASSETS_TEST         0x10000UL2096	#define FUNC_CFG_REQ_FLAGS_RING_GRP_ASSETS_TEST           0x20000UL2097	#define FUNC_CFG_REQ_FLAGS_STAT_CTX_ASSETS_TEST           0x40000UL2098	#define FUNC_CFG_REQ_FLAGS_VNIC_ASSETS_TEST               0x80000UL2099	#define FUNC_CFG_REQ_FLAGS_L2_CTX_ASSETS_TEST             0x100000UL2100	#define FUNC_CFG_REQ_FLAGS_TRUSTED_VF_ENABLE              0x200000UL2101	#define FUNC_CFG_REQ_FLAGS_DYNAMIC_TX_RING_ALLOC          0x400000UL2102	#define FUNC_CFG_REQ_FLAGS_NQ_ASSETS_TEST                 0x800000UL2103	#define FUNC_CFG_REQ_FLAGS_TRUSTED_VF_DISABLE             0x1000000UL2104	#define FUNC_CFG_REQ_FLAGS_PREBOOT_LEGACY_L2_RINGS        0x2000000UL2105	#define FUNC_CFG_REQ_FLAGS_HOT_RESET_IF_EN_DIS            0x4000000UL2106	#define FUNC_CFG_REQ_FLAGS_PPP_PUSH_MODE_ENABLE           0x8000000UL2107	#define FUNC_CFG_REQ_FLAGS_PPP_PUSH_MODE_DISABLE          0x10000000UL2108	#define FUNC_CFG_REQ_FLAGS_BD_METADATA_ENABLE             0x20000000UL2109	#define FUNC_CFG_REQ_FLAGS_BD_METADATA_DISABLE            0x40000000UL2110	__le32	enables;2111	#define FUNC_CFG_REQ_ENABLES_ADMIN_MTU                0x1UL2112	#define FUNC_CFG_REQ_ENABLES_MRU                      0x2UL2113	#define FUNC_CFG_REQ_ENABLES_NUM_RSSCOS_CTXS          0x4UL2114	#define FUNC_CFG_REQ_ENABLES_NUM_CMPL_RINGS           0x8UL2115	#define FUNC_CFG_REQ_ENABLES_NUM_TX_RINGS             0x10UL2116	#define FUNC_CFG_REQ_ENABLES_NUM_RX_RINGS             0x20UL2117	#define FUNC_CFG_REQ_ENABLES_NUM_L2_CTXS              0x40UL2118	#define FUNC_CFG_REQ_ENABLES_NUM_VNICS                0x80UL2119	#define FUNC_CFG_REQ_ENABLES_NUM_STAT_CTXS            0x100UL2120	#define FUNC_CFG_REQ_ENABLES_DFLT_MAC_ADDR            0x200UL2121	#define FUNC_CFG_REQ_ENABLES_DFLT_VLAN                0x400UL2122	#define FUNC_CFG_REQ_ENABLES_DFLT_IP_ADDR             0x800UL2123	#define FUNC_CFG_REQ_ENABLES_MIN_BW                   0x1000UL2124	#define FUNC_CFG_REQ_ENABLES_MAX_BW                   0x2000UL2125	#define FUNC_CFG_REQ_ENABLES_ASYNC_EVENT_CR           0x4000UL2126	#define FUNC_CFG_REQ_ENABLES_VLAN_ANTISPOOF_MODE      0x8000UL2127	#define FUNC_CFG_REQ_ENABLES_ALLOWED_VLAN_PRIS        0x10000UL2128	#define FUNC_CFG_REQ_ENABLES_EVB_MODE                 0x20000UL2129	#define FUNC_CFG_REQ_ENABLES_NUM_MCAST_FILTERS        0x40000UL2130	#define FUNC_CFG_REQ_ENABLES_NUM_HW_RING_GRPS         0x80000UL2131	#define FUNC_CFG_REQ_ENABLES_CACHE_LINESIZE           0x100000UL2132	#define FUNC_CFG_REQ_ENABLES_NUM_MSIX                 0x200000UL2133	#define FUNC_CFG_REQ_ENABLES_ADMIN_LINK_STATE         0x400000UL2134	#define FUNC_CFG_REQ_ENABLES_HOT_RESET_IF_SUPPORT     0x800000UL2135	#define FUNC_CFG_REQ_ENABLES_SCHQ_ID                  0x1000000UL2136	#define FUNC_CFG_REQ_ENABLES_MPC_CHNLS                0x2000000UL2137	#define FUNC_CFG_REQ_ENABLES_PARTITION_MIN_BW         0x4000000UL2138	#define FUNC_CFG_REQ_ENABLES_PARTITION_MAX_BW         0x8000000UL2139	#define FUNC_CFG_REQ_ENABLES_TPID                     0x10000000UL2140	#define FUNC_CFG_REQ_ENABLES_HOST_MTU                 0x20000000UL2141	#define FUNC_CFG_REQ_ENABLES_KTLS_TX_KEY_CTXS         0x40000000UL2142	#define FUNC_CFG_REQ_ENABLES_KTLS_RX_KEY_CTXS         0x80000000UL2143	__le16	admin_mtu;2144	__le16	mru;2145	__le16	num_rsscos_ctxs;2146	__le16	num_cmpl_rings;2147	__le16	num_tx_rings;2148	__le16	num_rx_rings;2149	__le16	num_l2_ctxs;2150	__le16	num_vnics;2151	__le16	num_stat_ctxs;2152	__le16	num_hw_ring_grps;2153	u8	dflt_mac_addr[6];2154	__le16	dflt_vlan;2155	__be32	dflt_ip_addr[4];2156	__le32	min_bw;2157	#define FUNC_CFG_REQ_MIN_BW_BW_VALUE_MASK             0xfffffffUL2158	#define FUNC_CFG_REQ_MIN_BW_BW_VALUE_SFT              02159	#define FUNC_CFG_REQ_MIN_BW_SCALE                     0x10000000UL2160	#define FUNC_CFG_REQ_MIN_BW_SCALE_BITS                  (0x0UL << 28)2161	#define FUNC_CFG_REQ_MIN_BW_SCALE_BYTES                 (0x1UL << 28)2162	#define FUNC_CFG_REQ_MIN_BW_SCALE_LAST                 FUNC_CFG_REQ_MIN_BW_SCALE_BYTES2163	#define FUNC_CFG_REQ_MIN_BW_BW_VALUE_UNIT_MASK        0xe0000000UL2164	#define FUNC_CFG_REQ_MIN_BW_BW_VALUE_UNIT_SFT         292165	#define FUNC_CFG_REQ_MIN_BW_BW_VALUE_UNIT_MEGA          (0x0UL << 29)2166	#define FUNC_CFG_REQ_MIN_BW_BW_VALUE_UNIT_KILO          (0x2UL << 29)2167	#define FUNC_CFG_REQ_MIN_BW_BW_VALUE_UNIT_BASE          (0x4UL << 29)2168	#define FUNC_CFG_REQ_MIN_BW_BW_VALUE_UNIT_GIGA          (0x6UL << 29)2169	#define FUNC_CFG_REQ_MIN_BW_BW_VALUE_UNIT_PERCENT1_100  (0x1UL << 29)2170	#define FUNC_CFG_REQ_MIN_BW_BW_VALUE_UNIT_INVALID       (0x7UL << 29)2171	#define FUNC_CFG_REQ_MIN_BW_BW_VALUE_UNIT_LAST         FUNC_CFG_REQ_MIN_BW_BW_VALUE_UNIT_INVALID2172	__le32	max_bw;2173	#define FUNC_CFG_REQ_MAX_BW_BW_VALUE_MASK             0xfffffffUL2174	#define FUNC_CFG_REQ_MAX_BW_BW_VALUE_SFT              02175	#define FUNC_CFG_REQ_MAX_BW_SCALE                     0x10000000UL2176	#define FUNC_CFG_REQ_MAX_BW_SCALE_BITS                  (0x0UL << 28)2177	#define FUNC_CFG_REQ_MAX_BW_SCALE_BYTES                 (0x1UL << 28)2178	#define FUNC_CFG_REQ_MAX_BW_SCALE_LAST                 FUNC_CFG_REQ_MAX_BW_SCALE_BYTES2179	#define FUNC_CFG_REQ_MAX_BW_BW_VALUE_UNIT_MASK        0xe0000000UL2180	#define FUNC_CFG_REQ_MAX_BW_BW_VALUE_UNIT_SFT         292181	#define FUNC_CFG_REQ_MAX_BW_BW_VALUE_UNIT_MEGA          (0x0UL << 29)2182	#define FUNC_CFG_REQ_MAX_BW_BW_VALUE_UNIT_KILO          (0x2UL << 29)2183	#define FUNC_CFG_REQ_MAX_BW_BW_VALUE_UNIT_BASE          (0x4UL << 29)2184	#define FUNC_CFG_REQ_MAX_BW_BW_VALUE_UNIT_GIGA          (0x6UL << 29)2185	#define FUNC_CFG_REQ_MAX_BW_BW_VALUE_UNIT_PERCENT1_100  (0x1UL << 29)2186	#define FUNC_CFG_REQ_MAX_BW_BW_VALUE_UNIT_INVALID       (0x7UL << 29)2187	#define FUNC_CFG_REQ_MAX_BW_BW_VALUE_UNIT_LAST         FUNC_CFG_REQ_MAX_BW_BW_VALUE_UNIT_INVALID2188	__le16	async_event_cr;2189	u8	vlan_antispoof_mode;2190	#define FUNC_CFG_REQ_VLAN_ANTISPOOF_MODE_NOCHECK                 0x0UL2191	#define FUNC_CFG_REQ_VLAN_ANTISPOOF_MODE_VALIDATE_VLAN           0x1UL2192	#define FUNC_CFG_REQ_VLAN_ANTISPOOF_MODE_INSERT_IF_VLANDNE       0x2UL2193	#define FUNC_CFG_REQ_VLAN_ANTISPOOF_MODE_INSERT_OR_OVERRIDE_VLAN 0x3UL2194	#define FUNC_CFG_REQ_VLAN_ANTISPOOF_MODE_LAST                   FUNC_CFG_REQ_VLAN_ANTISPOOF_MODE_INSERT_OR_OVERRIDE_VLAN2195	u8	allowed_vlan_pris;2196	u8	evb_mode;2197	#define FUNC_CFG_REQ_EVB_MODE_NO_EVB 0x0UL2198	#define FUNC_CFG_REQ_EVB_MODE_VEB    0x1UL2199	#define FUNC_CFG_REQ_EVB_MODE_VEPA   0x2UL2200	#define FUNC_CFG_REQ_EVB_MODE_LAST  FUNC_CFG_REQ_EVB_MODE_VEPA2201	u8	options;2202	#define FUNC_CFG_REQ_OPTIONS_CACHE_LINESIZE_MASK         0x3UL2203	#define FUNC_CFG_REQ_OPTIONS_CACHE_LINESIZE_SFT          02204	#define FUNC_CFG_REQ_OPTIONS_CACHE_LINESIZE_SIZE_64        0x0UL2205	#define FUNC_CFG_REQ_OPTIONS_CACHE_LINESIZE_SIZE_128       0x1UL2206	#define FUNC_CFG_REQ_OPTIONS_CACHE_LINESIZE_LAST          FUNC_CFG_REQ_OPTIONS_CACHE_LINESIZE_SIZE_1282207	#define FUNC_CFG_REQ_OPTIONS_LINK_ADMIN_STATE_MASK       0xcUL2208	#define FUNC_CFG_REQ_OPTIONS_LINK_ADMIN_STATE_SFT        22209	#define FUNC_CFG_REQ_OPTIONS_LINK_ADMIN_STATE_FORCED_DOWN  (0x0UL << 2)2210	#define FUNC_CFG_REQ_OPTIONS_LINK_ADMIN_STATE_FORCED_UP    (0x1UL << 2)2211	#define FUNC_CFG_REQ_OPTIONS_LINK_ADMIN_STATE_AUTO         (0x2UL << 2)2212	#define FUNC_CFG_REQ_OPTIONS_LINK_ADMIN_STATE_LAST        FUNC_CFG_REQ_OPTIONS_LINK_ADMIN_STATE_AUTO2213	#define FUNC_CFG_REQ_OPTIONS_RSVD_MASK                   0xf0UL2214	#define FUNC_CFG_REQ_OPTIONS_RSVD_SFT                    42215	__le16	num_mcast_filters;2216	__le16	schq_id;2217	__le16	mpc_chnls;2218	#define FUNC_CFG_REQ_MPC_CHNLS_TCE_ENABLE          0x1UL2219	#define FUNC_CFG_REQ_MPC_CHNLS_TCE_DISABLE         0x2UL2220	#define FUNC_CFG_REQ_MPC_CHNLS_RCE_ENABLE          0x4UL2221	#define FUNC_CFG_REQ_MPC_CHNLS_RCE_DISABLE         0x8UL2222	#define FUNC_CFG_REQ_MPC_CHNLS_TE_CFA_ENABLE       0x10UL2223	#define FUNC_CFG_REQ_MPC_CHNLS_TE_CFA_DISABLE      0x20UL2224	#define FUNC_CFG_REQ_MPC_CHNLS_RE_CFA_ENABLE       0x40UL2225	#define FUNC_CFG_REQ_MPC_CHNLS_RE_CFA_DISABLE      0x80UL2226	#define FUNC_CFG_REQ_MPC_CHNLS_PRIMATE_ENABLE      0x100UL2227	#define FUNC_CFG_REQ_MPC_CHNLS_PRIMATE_DISABLE     0x200UL2228	__le32	partition_min_bw;2229	#define FUNC_CFG_REQ_PARTITION_MIN_BW_BW_VALUE_MASK             0xfffffffUL2230	#define FUNC_CFG_REQ_PARTITION_MIN_BW_BW_VALUE_SFT              02231	#define FUNC_CFG_REQ_PARTITION_MIN_BW_SCALE                     0x10000000UL2232	#define FUNC_CFG_REQ_PARTITION_MIN_BW_SCALE_BITS                  (0x0UL << 28)2233	#define FUNC_CFG_REQ_PARTITION_MIN_BW_SCALE_BYTES                 (0x1UL << 28)2234	#define FUNC_CFG_REQ_PARTITION_MIN_BW_SCALE_LAST                 FUNC_CFG_REQ_PARTITION_MIN_BW_SCALE_BYTES2235	#define FUNC_CFG_REQ_PARTITION_MIN_BW_BW_VALUE_UNIT_MASK        0xe0000000UL2236	#define FUNC_CFG_REQ_PARTITION_MIN_BW_BW_VALUE_UNIT_SFT         292237	#define FUNC_CFG_REQ_PARTITION_MIN_BW_BW_VALUE_UNIT_PERCENT1_100  (0x1UL << 29)2238	#define FUNC_CFG_REQ_PARTITION_MIN_BW_BW_VALUE_UNIT_LAST         FUNC_CFG_REQ_PARTITION_MIN_BW_BW_VALUE_UNIT_PERCENT1_1002239	__le32	partition_max_bw;2240	#define FUNC_CFG_REQ_PARTITION_MAX_BW_BW_VALUE_MASK             0xfffffffUL2241	#define FUNC_CFG_REQ_PARTITION_MAX_BW_BW_VALUE_SFT              02242	#define FUNC_CFG_REQ_PARTITION_MAX_BW_SCALE                     0x10000000UL2243	#define FUNC_CFG_REQ_PARTITION_MAX_BW_SCALE_BITS                  (0x0UL << 28)2244	#define FUNC_CFG_REQ_PARTITION_MAX_BW_SCALE_BYTES                 (0x1UL << 28)2245	#define FUNC_CFG_REQ_PARTITION_MAX_BW_SCALE_LAST                 FUNC_CFG_REQ_PARTITION_MAX_BW_SCALE_BYTES2246	#define FUNC_CFG_REQ_PARTITION_MAX_BW_BW_VALUE_UNIT_MASK        0xe0000000UL2247	#define FUNC_CFG_REQ_PARTITION_MAX_BW_BW_VALUE_UNIT_SFT         292248	#define FUNC_CFG_REQ_PARTITION_MAX_BW_BW_VALUE_UNIT_PERCENT1_100  (0x1UL << 29)2249	#define FUNC_CFG_REQ_PARTITION_MAX_BW_BW_VALUE_UNIT_LAST         FUNC_CFG_REQ_PARTITION_MAX_BW_BW_VALUE_UNIT_PERCENT1_1002250	__be16	tpid;2251	__le16	host_mtu;2252	__le32	flags2;2253	#define FUNC_CFG_REQ_FLAGS2_KTLS_KEY_CTX_ASSETS_TEST     0x1UL2254	#define FUNC_CFG_REQ_FLAGS2_QUIC_KEY_CTX_ASSETS_TEST     0x2UL2255	__le32	enables2;2256	#define FUNC_CFG_REQ_ENABLES2_KDNET                   0x1UL2257	#define FUNC_CFG_REQ_ENABLES2_DB_PAGE_SIZE            0x2UL2258	#define FUNC_CFG_REQ_ENABLES2_QUIC_TX_KEY_CTXS        0x4UL2259	#define FUNC_CFG_REQ_ENABLES2_QUIC_RX_KEY_CTXS        0x8UL2260	#define FUNC_CFG_REQ_ENABLES2_ROCE_MAX_AV_PER_VF      0x10UL2261	#define FUNC_CFG_REQ_ENABLES2_ROCE_MAX_CQ_PER_VF      0x20UL2262	#define FUNC_CFG_REQ_ENABLES2_ROCE_MAX_MRW_PER_VF     0x40UL2263	#define FUNC_CFG_REQ_ENABLES2_ROCE_MAX_QP_PER_VF      0x80UL2264	#define FUNC_CFG_REQ_ENABLES2_ROCE_MAX_SRQ_PER_VF     0x100UL2265	#define FUNC_CFG_REQ_ENABLES2_ROCE_MAX_GID_PER_VF     0x200UL2266	#define FUNC_CFG_REQ_ENABLES2_XID_PARTITION_CFG       0x400UL2267	u8	port_kdnet_mode;2268	#define FUNC_CFG_REQ_PORT_KDNET_MODE_DISABLED 0x0UL2269	#define FUNC_CFG_REQ_PORT_KDNET_MODE_ENABLED  0x1UL2270	#define FUNC_CFG_REQ_PORT_KDNET_MODE_LAST    FUNC_CFG_REQ_PORT_KDNET_MODE_ENABLED2271	u8	db_page_size;2272	#define FUNC_CFG_REQ_DB_PAGE_SIZE_4KB   0x0UL2273	#define FUNC_CFG_REQ_DB_PAGE_SIZE_8KB   0x1UL2274	#define FUNC_CFG_REQ_DB_PAGE_SIZE_16KB  0x2UL2275	#define FUNC_CFG_REQ_DB_PAGE_SIZE_32KB  0x3UL2276	#define FUNC_CFG_REQ_DB_PAGE_SIZE_64KB  0x4UL2277	#define FUNC_CFG_REQ_DB_PAGE_SIZE_128KB 0x5UL2278	#define FUNC_CFG_REQ_DB_PAGE_SIZE_256KB 0x6UL2279	#define FUNC_CFG_REQ_DB_PAGE_SIZE_512KB 0x7UL2280	#define FUNC_CFG_REQ_DB_PAGE_SIZE_1MB   0x8UL2281	#define FUNC_CFG_REQ_DB_PAGE_SIZE_2MB   0x9UL2282	#define FUNC_CFG_REQ_DB_PAGE_SIZE_4MB   0xaUL2283	#define FUNC_CFG_REQ_DB_PAGE_SIZE_LAST FUNC_CFG_REQ_DB_PAGE_SIZE_4MB2284	u8	unused_1[2];2285	__le32	num_ktls_tx_key_ctxs;2286	__le32	num_ktls_rx_key_ctxs;2287	__le32	num_quic_tx_key_ctxs;2288	__le32	num_quic_rx_key_ctxs;2289	__le32	roce_max_av_per_vf;2290	__le32	roce_max_cq_per_vf;2291	__le32	roce_max_mrw_per_vf;2292	__le32	roce_max_qp_per_vf;2293	__le32	roce_max_srq_per_vf;2294	__le32	roce_max_gid_per_vf;2295	__le16	xid_partition_cfg;2296	#define FUNC_CFG_REQ_XID_PARTITION_CFG_TX_CK     0x1UL2297	#define FUNC_CFG_REQ_XID_PARTITION_CFG_RX_CK     0x2UL2298	__le16	unused_2;2299};2300 2301/* hwrm_func_cfg_output (size:128b/16B) */2302struct hwrm_func_cfg_output {2303	__le16	error_code;2304	__le16	req_type;2305	__le16	seq_id;2306	__le16	resp_len;2307	u8	unused_0[7];2308	u8	valid;2309};2310 2311/* hwrm_func_cfg_cmd_err (size:64b/8B) */2312struct hwrm_func_cfg_cmd_err {2313	u8	code;2314	#define FUNC_CFG_CMD_ERR_CODE_UNKNOWN                      0x0UL2315	#define FUNC_CFG_CMD_ERR_CODE_PARTITION_MIN_BW_RANGE       0x1UL2316	#define FUNC_CFG_CMD_ERR_CODE_PARTITION_MIN_MORE_THAN_MAX  0x2UL2317	#define FUNC_CFG_CMD_ERR_CODE_PARTITION_MIN_BW_UNSUPPORTED 0x3UL2318	#define FUNC_CFG_CMD_ERR_CODE_PARTITION_BW_PERCENT         0x4UL2319	#define FUNC_CFG_CMD_ERR_CODE_LAST                        FUNC_CFG_CMD_ERR_CODE_PARTITION_BW_PERCENT2320	u8	unused_0[7];2321};2322 2323/* hwrm_func_qstats_input (size:192b/24B) */2324struct hwrm_func_qstats_input {2325	__le16	req_type;2326	__le16	cmpl_ring;2327	__le16	seq_id;2328	__le16	target_id;2329	__le64	resp_addr;2330	__le16	fid;2331	u8	flags;2332	#define FUNC_QSTATS_REQ_FLAGS_ROCE_ONLY        0x1UL2333	#define FUNC_QSTATS_REQ_FLAGS_COUNTER_MASK     0x2UL2334	#define FUNC_QSTATS_REQ_FLAGS_L2_ONLY          0x4UL2335	u8	unused_0[5];2336};2337 2338/* hwrm_func_qstats_output (size:1408b/176B) */2339struct hwrm_func_qstats_output {2340	__le16	error_code;2341	__le16	req_type;2342	__le16	seq_id;2343	__le16	resp_len;2344	__le64	tx_ucast_pkts;2345	__le64	tx_mcast_pkts;2346	__le64	tx_bcast_pkts;2347	__le64	tx_discard_pkts;2348	__le64	tx_drop_pkts;2349	__le64	tx_ucast_bytes;2350	__le64	tx_mcast_bytes;2351	__le64	tx_bcast_bytes;2352	__le64	rx_ucast_pkts;2353	__le64	rx_mcast_pkts;2354	__le64	rx_bcast_pkts;2355	__le64	rx_discard_pkts;2356	__le64	rx_drop_pkts;2357	__le64	rx_ucast_bytes;2358	__le64	rx_mcast_bytes;2359	__le64	rx_bcast_bytes;2360	__le64	rx_agg_pkts;2361	__le64	rx_agg_bytes;2362	__le64	rx_agg_events;2363	__le64	rx_agg_aborts;2364	u8	clear_seq;2365	u8	unused_0[6];2366	u8	valid;2367};2368 2369/* hwrm_func_qstats_ext_input (size:256b/32B) */2370struct hwrm_func_qstats_ext_input {2371	__le16	req_type;2372	__le16	cmpl_ring;2373	__le16	seq_id;2374	__le16	target_id;2375	__le64	resp_addr;2376	__le16	fid;2377	u8	flags;2378	#define FUNC_QSTATS_EXT_REQ_FLAGS_ROCE_ONLY        0x1UL2379	#define FUNC_QSTATS_EXT_REQ_FLAGS_COUNTER_MASK     0x2UL2380	u8	unused_0[1];2381	__le32	enables;2382	#define FUNC_QSTATS_EXT_REQ_ENABLES_SCHQ_ID     0x1UL2383	__le16	schq_id;2384	__le16	traffic_class;2385	u8	unused_1[4];2386};2387 2388/* hwrm_func_qstats_ext_output (size:1536b/192B) */2389struct hwrm_func_qstats_ext_output {2390	__le16	error_code;2391	__le16	req_type;2392	__le16	seq_id;2393	__le16	resp_len;2394	__le64	rx_ucast_pkts;2395	__le64	rx_mcast_pkts;2396	__le64	rx_bcast_pkts;2397	__le64	rx_discard_pkts;2398	__le64	rx_error_pkts;2399	__le64	rx_ucast_bytes;2400	__le64	rx_mcast_bytes;2401	__le64	rx_bcast_bytes;2402	__le64	tx_ucast_pkts;2403	__le64	tx_mcast_pkts;2404	__le64	tx_bcast_pkts;2405	__le64	tx_error_pkts;2406	__le64	tx_discard_pkts;2407	__le64	tx_ucast_bytes;2408	__le64	tx_mcast_bytes;2409	__le64	tx_bcast_bytes;2410	__le64	rx_tpa_eligible_pkt;2411	__le64	rx_tpa_eligible_bytes;2412	__le64	rx_tpa_pkt;2413	__le64	rx_tpa_bytes;2414	__le64	rx_tpa_errors;2415	__le64	rx_tpa_events;2416	u8	unused_0[7];2417	u8	valid;2418};2419 2420/* hwrm_func_clr_stats_input (size:192b/24B) */2421struct hwrm_func_clr_stats_input {2422	__le16	req_type;2423	__le16	cmpl_ring;2424	__le16	seq_id;2425	__le16	target_id;2426	__le64	resp_addr;2427	__le16	fid;2428	u8	unused_0[6];2429};2430 2431/* hwrm_func_clr_stats_output (size:128b/16B) */2432struct hwrm_func_clr_stats_output {2433	__le16	error_code;2434	__le16	req_type;2435	__le16	seq_id;2436	__le16	resp_len;2437	u8	unused_0[7];2438	u8	valid;2439};2440 2441/* hwrm_func_vf_resc_free_input (size:192b/24B) */2442struct hwrm_func_vf_resc_free_input {2443	__le16	req_type;2444	__le16	cmpl_ring;2445	__le16	seq_id;2446	__le16	target_id;2447	__le64	resp_addr;2448	__le16	vf_id;2449	u8	unused_0[6];2450};2451 2452/* hwrm_func_vf_resc_free_output (size:128b/16B) */2453struct hwrm_func_vf_resc_free_output {2454	__le16	error_code;2455	__le16	req_type;2456	__le16	seq_id;2457	__le16	resp_len;2458	u8	unused_0[7];2459	u8	valid;2460};2461 2462/* hwrm_func_drv_rgtr_input (size:896b/112B) */2463struct hwrm_func_drv_rgtr_input {2464	__le16	req_type;2465	__le16	cmpl_ring;2466	__le16	seq_id;2467	__le16	target_id;2468	__le64	resp_addr;2469	__le32	flags;2470	#define FUNC_DRV_RGTR_REQ_FLAGS_FWD_ALL_MODE                     0x1UL2471	#define FUNC_DRV_RGTR_REQ_FLAGS_FWD_NONE_MODE                    0x2UL2472	#define FUNC_DRV_RGTR_REQ_FLAGS_16BIT_VER_MODE                   0x4UL2473	#define FUNC_DRV_RGTR_REQ_FLAGS_FLOW_HANDLE_64BIT_MODE           0x8UL2474	#define FUNC_DRV_RGTR_REQ_FLAGS_HOT_RESET_SUPPORT                0x10UL2475	#define FUNC_DRV_RGTR_REQ_FLAGS_ERROR_RECOVERY_SUPPORT           0x20UL2476	#define FUNC_DRV_RGTR_REQ_FLAGS_MASTER_SUPPORT                   0x40UL2477	#define FUNC_DRV_RGTR_REQ_FLAGS_FAST_RESET_SUPPORT               0x80UL2478	#define FUNC_DRV_RGTR_REQ_FLAGS_RSS_STRICT_HASH_TYPE_SUPPORT     0x100UL2479	#define FUNC_DRV_RGTR_REQ_FLAGS_NPAR_1_2_SUPPORT                 0x200UL2480	#define FUNC_DRV_RGTR_REQ_FLAGS_ASYM_QUEUE_CFG_SUPPORT           0x400UL2481	#define FUNC_DRV_RGTR_REQ_FLAGS_TF_INGRESS_NIC_FLOW_MODE         0x800UL2482	#define FUNC_DRV_RGTR_REQ_FLAGS_TF_EGRESS_NIC_FLOW_MODE          0x1000UL2483	__le32	enables;2484	#define FUNC_DRV_RGTR_REQ_ENABLES_OS_TYPE             0x1UL2485	#define FUNC_DRV_RGTR_REQ_ENABLES_VER                 0x2UL2486	#define FUNC_DRV_RGTR_REQ_ENABLES_TIMESTAMP           0x4UL2487	#define FUNC_DRV_RGTR_REQ_ENABLES_VF_REQ_FWD          0x8UL2488	#define FUNC_DRV_RGTR_REQ_ENABLES_ASYNC_EVENT_FWD     0x10UL2489	__le16	os_type;2490	#define FUNC_DRV_RGTR_REQ_OS_TYPE_UNKNOWN   0x0UL2491	#define FUNC_DRV_RGTR_REQ_OS_TYPE_OTHER     0x1UL2492	#define FUNC_DRV_RGTR_REQ_OS_TYPE_MSDOS     0xeUL2493	#define FUNC_DRV_RGTR_REQ_OS_TYPE_WINDOWS   0x12UL2494	#define FUNC_DRV_RGTR_REQ_OS_TYPE_SOLARIS   0x1dUL2495	#define FUNC_DRV_RGTR_REQ_OS_TYPE_LINUX     0x24UL2496	#define FUNC_DRV_RGTR_REQ_OS_TYPE_FREEBSD   0x2aUL2497	#define FUNC_DRV_RGTR_REQ_OS_TYPE_ESXI      0x68UL2498	#define FUNC_DRV_RGTR_REQ_OS_TYPE_WIN864    0x73UL2499	#define FUNC_DRV_RGTR_REQ_OS_TYPE_WIN2012R2 0x74UL2500	#define FUNC_DRV_RGTR_REQ_OS_TYPE_UEFI      0x8000UL2501	#define FUNC_DRV_RGTR_REQ_OS_TYPE_LAST     FUNC_DRV_RGTR_REQ_OS_TYPE_UEFI2502	u8	ver_maj_8b;2503	u8	ver_min_8b;2504	u8	ver_upd_8b;2505	u8	unused_0[3];2506	__le32	timestamp;2507	u8	unused_1[4];2508	__le32	vf_req_fwd[8];2509	__le32	async_event_fwd[8];2510	__le16	ver_maj;2511	__le16	ver_min;2512	__le16	ver_upd;2513	__le16	ver_patch;2514};2515 2516/* hwrm_func_drv_rgtr_output (size:128b/16B) */2517struct hwrm_func_drv_rgtr_output {2518	__le16	error_code;2519	__le16	req_type;2520	__le16	seq_id;2521	__le16	resp_len;2522	__le32	flags;2523	#define FUNC_DRV_RGTR_RESP_FLAGS_IF_CHANGE_SUPPORTED     0x1UL2524	u8	unused_0[3];2525	u8	valid;2526};2527 2528/* hwrm_func_drv_unrgtr_input (size:192b/24B) */2529struct hwrm_func_drv_unrgtr_input {2530	__le16	req_type;2531	__le16	cmpl_ring;2532	__le16	seq_id;2533	__le16	target_id;2534	__le64	resp_addr;2535	__le32	flags;2536	#define FUNC_DRV_UNRGTR_REQ_FLAGS_PREPARE_FOR_SHUTDOWN     0x1UL2537	u8	unused_0[4];2538};2539 2540/* hwrm_func_drv_unrgtr_output (size:128b/16B) */2541struct hwrm_func_drv_unrgtr_output {2542	__le16	error_code;2543	__le16	req_type;2544	__le16	seq_id;2545	__le16	resp_len;2546	u8	unused_0[7];2547	u8	valid;2548};2549 2550/* hwrm_func_buf_rgtr_input (size:1024b/128B) */2551struct hwrm_func_buf_rgtr_input {2552	__le16	req_type;2553	__le16	cmpl_ring;2554	__le16	seq_id;2555	__le16	target_id;2556	__le64	resp_addr;2557	__le32	enables;2558	#define FUNC_BUF_RGTR_REQ_ENABLES_VF_ID            0x1UL2559	#define FUNC_BUF_RGTR_REQ_ENABLES_ERR_BUF_ADDR     0x2UL2560	__le16	vf_id;2561	__le16	req_buf_num_pages;2562	__le16	req_buf_page_size;2563	#define FUNC_BUF_RGTR_REQ_REQ_BUF_PAGE_SIZE_16B 0x4UL2564	#define FUNC_BUF_RGTR_REQ_REQ_BUF_PAGE_SIZE_4K  0xcUL2565	#define FUNC_BUF_RGTR_REQ_REQ_BUF_PAGE_SIZE_8K  0xdUL2566	#define FUNC_BUF_RGTR_REQ_REQ_BUF_PAGE_SIZE_64K 0x10UL2567	#define FUNC_BUF_RGTR_REQ_REQ_BUF_PAGE_SIZE_2M  0x15UL2568	#define FUNC_BUF_RGTR_REQ_REQ_BUF_PAGE_SIZE_4M  0x16UL2569	#define FUNC_BUF_RGTR_REQ_REQ_BUF_PAGE_SIZE_1G  0x1eUL2570	#define FUNC_BUF_RGTR_REQ_REQ_BUF_PAGE_SIZE_LAST FUNC_BUF_RGTR_REQ_REQ_BUF_PAGE_SIZE_1G2571	__le16	req_buf_len;2572	__le16	resp_buf_len;2573	u8	unused_0[2];2574	__le64	req_buf_page_addr0;2575	__le64	req_buf_page_addr1;2576	__le64	req_buf_page_addr2;2577	__le64	req_buf_page_addr3;2578	__le64	req_buf_page_addr4;2579	__le64	req_buf_page_addr5;2580	__le64	req_buf_page_addr6;2581	__le64	req_buf_page_addr7;2582	__le64	req_buf_page_addr8;2583	__le64	req_buf_page_addr9;2584	__le64	error_buf_addr;2585	__le64	resp_buf_addr;2586};2587 2588/* hwrm_func_buf_rgtr_output (size:128b/16B) */2589struct hwrm_func_buf_rgtr_output {2590	__le16	error_code;2591	__le16	req_type;2592	__le16	seq_id;2593	__le16	resp_len;2594	u8	unused_0[7];2595	u8	valid;2596};2597 2598/* hwrm_func_drv_qver_input (size:192b/24B) */2599struct hwrm_func_drv_qver_input {2600	__le16	req_type;2601	__le16	cmpl_ring;2602	__le16	seq_id;2603	__le16	target_id;2604	__le64	resp_addr;2605	__le32	reserved;2606	__le16	fid;2607	u8	driver_type;2608	#define FUNC_DRV_QVER_REQ_DRIVER_TYPE_L2   0x0UL2609	#define FUNC_DRV_QVER_REQ_DRIVER_TYPE_ROCE 0x1UL2610	#define FUNC_DRV_QVER_REQ_DRIVER_TYPE_LAST FUNC_DRV_QVER_REQ_DRIVER_TYPE_ROCE2611	u8	unused_0;2612};2613 2614/* hwrm_func_drv_qver_output (size:256b/32B) */2615struct hwrm_func_drv_qver_output {2616	__le16	error_code;2617	__le16	req_type;2618	__le16	seq_id;2619	__le16	resp_len;2620	__le16	os_type;2621	#define FUNC_DRV_QVER_RESP_OS_TYPE_UNKNOWN   0x0UL2622	#define FUNC_DRV_QVER_RESP_OS_TYPE_OTHER     0x1UL2623	#define FUNC_DRV_QVER_RESP_OS_TYPE_MSDOS     0xeUL2624	#define FUNC_DRV_QVER_RESP_OS_TYPE_WINDOWS   0x12UL2625	#define FUNC_DRV_QVER_RESP_OS_TYPE_SOLARIS   0x1dUL2626	#define FUNC_DRV_QVER_RESP_OS_TYPE_LINUX     0x24UL2627	#define FUNC_DRV_QVER_RESP_OS_TYPE_FREEBSD   0x2aUL2628	#define FUNC_DRV_QVER_RESP_OS_TYPE_ESXI      0x68UL2629	#define FUNC_DRV_QVER_RESP_OS_TYPE_WIN864    0x73UL2630	#define FUNC_DRV_QVER_RESP_OS_TYPE_WIN2012R2 0x74UL2631	#define FUNC_DRV_QVER_RESP_OS_TYPE_UEFI      0x8000UL2632	#define FUNC_DRV_QVER_RESP_OS_TYPE_LAST     FUNC_DRV_QVER_RESP_OS_TYPE_UEFI2633	u8	ver_maj_8b;2634	u8	ver_min_8b;2635	u8	ver_upd_8b;2636	u8	unused_0[3];2637	__le16	ver_maj;2638	__le16	ver_min;2639	__le16	ver_upd;2640	__le16	ver_patch;2641	u8	unused_1[7];2642	u8	valid;2643};2644 2645/* hwrm_func_resource_qcaps_input (size:192b/24B) */2646struct hwrm_func_resource_qcaps_input {2647	__le16	req_type;2648	__le16	cmpl_ring;2649	__le16	seq_id;2650	__le16	target_id;2651	__le64	resp_addr;2652	__le16	fid;2653	u8	unused_0[6];2654};2655 2656/* hwrm_func_resource_qcaps_output (size:704b/88B) */2657struct hwrm_func_resource_qcaps_output {2658	__le16	error_code;2659	__le16	req_type;2660	__le16	seq_id;2661	__le16	resp_len;2662	__le16	max_vfs;2663	__le16	max_msix;2664	__le16	vf_reservation_strategy;2665	#define FUNC_RESOURCE_QCAPS_RESP_VF_RESERVATION_STRATEGY_MAXIMAL        0x0UL2666	#define FUNC_RESOURCE_QCAPS_RESP_VF_RESERVATION_STRATEGY_MINIMAL        0x1UL2667	#define FUNC_RESOURCE_QCAPS_RESP_VF_RESERVATION_STRATEGY_MINIMAL_STATIC 0x2UL2668	#define FUNC_RESOURCE_QCAPS_RESP_VF_RESERVATION_STRATEGY_LAST          FUNC_RESOURCE_QCAPS_RESP_VF_RESERVATION_STRATEGY_MINIMAL_STATIC2669	__le16	min_rsscos_ctx;2670	__le16	max_rsscos_ctx;2671	__le16	min_cmpl_rings;2672	__le16	max_cmpl_rings;2673	__le16	min_tx_rings;2674	__le16	max_tx_rings;2675	__le16	min_rx_rings;2676	__le16	max_rx_rings;2677	__le16	min_l2_ctxs;2678	__le16	max_l2_ctxs;2679	__le16	min_vnics;2680	__le16	max_vnics;2681	__le16	min_stat_ctx;2682	__le16	max_stat_ctx;2683	__le16	min_hw_ring_grps;2684	__le16	max_hw_ring_grps;2685	__le16	max_tx_scheduler_inputs;2686	__le16	flags;2687	#define FUNC_RESOURCE_QCAPS_RESP_FLAGS_MIN_GUARANTEED     0x1UL2688	__le16	min_msix;2689	__le32	min_ktls_tx_key_ctxs;2690	__le32	max_ktls_tx_key_ctxs;2691	__le32	min_ktls_rx_key_ctxs;2692	__le32	max_ktls_rx_key_ctxs;2693	__le32	min_quic_tx_key_ctxs;2694	__le32	max_quic_tx_key_ctxs;2695	__le32	min_quic_rx_key_ctxs;2696	__le32	max_quic_rx_key_ctxs;2697	u8	unused_0[3];2698	u8	valid;2699};2700 2701/* hwrm_func_vf_resource_cfg_input (size:704b/88B) */2702struct hwrm_func_vf_resource_cfg_input {2703	__le16	req_type;2704	__le16	cmpl_ring;2705	__le16	seq_id;2706	__le16	target_id;2707	__le64	resp_addr;2708	__le16	vf_id;2709	__le16	max_msix;2710	__le16	min_rsscos_ctx;2711	__le16	max_rsscos_ctx;2712	__le16	min_cmpl_rings;2713	__le16	max_cmpl_rings;2714	__le16	min_tx_rings;2715	__le16	max_tx_rings;2716	__le16	min_rx_rings;2717	__le16	max_rx_rings;2718	__le16	min_l2_ctxs;2719	__le16	max_l2_ctxs;2720	__le16	min_vnics;2721	__le16	max_vnics;2722	__le16	min_stat_ctx;2723	__le16	max_stat_ctx;2724	__le16	min_hw_ring_grps;2725	__le16	max_hw_ring_grps;2726	__le16	flags;2727	#define FUNC_VF_RESOURCE_CFG_REQ_FLAGS_MIN_GUARANTEED     0x1UL2728	__le16	min_msix;2729	__le32	min_ktls_tx_key_ctxs;2730	__le32	max_ktls_tx_key_ctxs;2731	__le32	min_ktls_rx_key_ctxs;2732	__le32	max_ktls_rx_key_ctxs;2733	__le32	min_quic_tx_key_ctxs;2734	__le32	max_quic_tx_key_ctxs;2735	__le32	min_quic_rx_key_ctxs;2736	__le32	max_quic_rx_key_ctxs;2737};2738 2739/* hwrm_func_vf_resource_cfg_output (size:384b/48B) */2740struct hwrm_func_vf_resource_cfg_output {2741	__le16	error_code;2742	__le16	req_type;2743	__le16	seq_id;2744	__le16	resp_len;2745	__le16	reserved_rsscos_ctx;2746	__le16	reserved_cmpl_rings;2747	__le16	reserved_tx_rings;2748	__le16	reserved_rx_rings;2749	__le16	reserved_l2_ctxs;2750	__le16	reserved_vnics;2751	__le16	reserved_stat_ctx;2752	__le16	reserved_hw_ring_grps;2753	__le32	reserved_ktls_tx_key_ctxs;2754	__le32	reserved_ktls_rx_key_ctxs;2755	__le32	reserved_quic_tx_key_ctxs;2756	__le32	reserved_quic_rx_key_ctxs;2757	u8	unused_0[7];2758	u8	valid;2759};2760 2761/* hwrm_func_backing_store_qcaps_input (size:128b/16B) */2762struct hwrm_func_backing_store_qcaps_input {2763	__le16	req_type;2764	__le16	cmpl_ring;2765	__le16	seq_id;2766	__le16	target_id;2767	__le64	resp_addr;2768};2769 2770/* hwrm_func_backing_store_qcaps_output (size:832b/104B) */2771struct hwrm_func_backing_store_qcaps_output {2772	__le16	error_code;2773	__le16	req_type;2774	__le16	seq_id;2775	__le16	resp_len;2776	__le32	qp_max_entries;2777	__le16	qp_min_qp1_entries;2778	__le16	qp_max_l2_entries;2779	__le16	qp_entry_size;2780	__le16	srq_max_l2_entries;2781	__le32	srq_max_entries;2782	__le16	srq_entry_size;2783	__le16	cq_max_l2_entries;2784	__le32	cq_max_entries;2785	__le16	cq_entry_size;2786	__le16	vnic_max_vnic_entries;2787	__le16	vnic_max_ring_table_entries;2788	__le16	vnic_entry_size;2789	__le32	stat_max_entries;2790	__le16	stat_entry_size;2791	__le16	tqm_entry_size;2792	__le32	tqm_min_entries_per_ring;2793	__le32	tqm_max_entries_per_ring;2794	__le32	mrav_max_entries;2795	__le16	mrav_entry_size;2796	__le16	tim_entry_size;2797	__le32	tim_max_entries;2798	__le16	mrav_num_entries_units;2799	u8	tqm_entries_multiple;2800	u8	ctx_kind_initializer;2801	__le16	ctx_init_mask;2802	#define FUNC_BACKING_STORE_QCAPS_RESP_CTX_INIT_MASK_QP       0x1UL2803	#define FUNC_BACKING_STORE_QCAPS_RESP_CTX_INIT_MASK_SRQ      0x2UL2804	#define FUNC_BACKING_STORE_QCAPS_RESP_CTX_INIT_MASK_CQ       0x4UL2805	#define FUNC_BACKING_STORE_QCAPS_RESP_CTX_INIT_MASK_VNIC     0x8UL2806	#define FUNC_BACKING_STORE_QCAPS_RESP_CTX_INIT_MASK_STAT     0x10UL2807	#define FUNC_BACKING_STORE_QCAPS_RESP_CTX_INIT_MASK_MRAV     0x20UL2808	#define FUNC_BACKING_STORE_QCAPS_RESP_CTX_INIT_MASK_TKC      0x40UL2809	#define FUNC_BACKING_STORE_QCAPS_RESP_CTX_INIT_MASK_RKC      0x80UL2810	u8	qp_init_offset;2811	u8	srq_init_offset;2812	u8	cq_init_offset;2813	u8	vnic_init_offset;2814	u8	tqm_fp_rings_count;2815	u8	stat_init_offset;2816	u8	mrav_init_offset;2817	u8	tqm_fp_rings_count_ext;2818	u8	tkc_init_offset;2819	u8	rkc_init_offset;2820	__le16	tkc_entry_size;2821	__le16	rkc_entry_size;2822	__le32	tkc_max_entries;2823	__le32	rkc_max_entries;2824	__le16	fast_qpmd_qp_num_entries;2825	u8	rsvd1[5];2826	u8	valid;2827};2828 2829/* tqm_fp_ring_cfg (size:128b/16B) */2830struct tqm_fp_ring_cfg {2831	u8	tqm_ring_pg_size_tqm_ring_lvl;2832	#define TQM_FP_RING_CFG_TQM_RING_CFG_TQM_RING_LVL_MASK      0xfUL2833	#define TQM_FP_RING_CFG_TQM_RING_CFG_TQM_RING_LVL_SFT       02834	#define TQM_FP_RING_CFG_TQM_RING_CFG_TQM_RING_LVL_LVL_0       0x0UL2835	#define TQM_FP_RING_CFG_TQM_RING_CFG_TQM_RING_LVL_LVL_1       0x1UL2836	#define TQM_FP_RING_CFG_TQM_RING_CFG_TQM_RING_LVL_LVL_2       0x2UL2837	#define TQM_FP_RING_CFG_TQM_RING_CFG_TQM_RING_LVL_LAST       TQM_FP_RING_CFG_TQM_RING_CFG_TQM_RING_LVL_LVL_22838	#define TQM_FP_RING_CFG_TQM_RING_CFG_TQM_RING_PG_SIZE_MASK  0xf0UL2839	#define TQM_FP_RING_CFG_TQM_RING_CFG_TQM_RING_PG_SIZE_SFT   42840	#define TQM_FP_RING_CFG_TQM_RING_CFG_TQM_RING_PG_SIZE_PG_4K   (0x0UL << 4)2841	#define TQM_FP_RING_CFG_TQM_RING_CFG_TQM_RING_PG_SIZE_PG_8K   (0x1UL << 4)2842	#define TQM_FP_RING_CFG_TQM_RING_CFG_TQM_RING_PG_SIZE_PG_64K  (0x2UL << 4)2843	#define TQM_FP_RING_CFG_TQM_RING_CFG_TQM_RING_PG_SIZE_PG_2M   (0x3UL << 4)2844	#define TQM_FP_RING_CFG_TQM_RING_CFG_TQM_RING_PG_SIZE_PG_8M   (0x4UL << 4)2845	#define TQM_FP_RING_CFG_TQM_RING_CFG_TQM_RING_PG_SIZE_PG_1G   (0x5UL << 4)2846	#define TQM_FP_RING_CFG_TQM_RING_CFG_TQM_RING_PG_SIZE_LAST   TQM_FP_RING_CFG_TQM_RING_CFG_TQM_RING_PG_SIZE_PG_1G2847	u8	unused[3];2848	__le32	tqm_ring_num_entries;2849	__le64	tqm_ring_page_dir;2850};2851 2852/* hwrm_func_backing_store_cfg_input (size:2688b/336B) */2853struct hwrm_func_backing_store_cfg_input {2854	__le16	req_type;2855	__le16	cmpl_ring;2856	__le16	seq_id;2857	__le16	target_id;2858	__le64	resp_addr;2859	__le32	flags;2860	#define FUNC_BACKING_STORE_CFG_REQ_FLAGS_PREBOOT_MODE               0x1UL2861	#define FUNC_BACKING_STORE_CFG_REQ_FLAGS_MRAV_RESERVATION_SPLIT     0x2UL2862	__le32	enables;2863	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_QP               0x1UL2864	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_SRQ              0x2UL2865	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_CQ               0x4UL2866	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_VNIC             0x8UL2867	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_STAT             0x10UL2868	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_TQM_SP           0x20UL2869	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_TQM_RING0        0x40UL2870	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_TQM_RING1        0x80UL2871	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_TQM_RING2        0x100UL2872	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_TQM_RING3        0x200UL2873	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_TQM_RING4        0x400UL2874	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_TQM_RING5        0x800UL2875	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_TQM_RING6        0x1000UL2876	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_TQM_RING7        0x2000UL2877	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_MRAV             0x4000UL2878	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_TIM              0x8000UL2879	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_TQM_RING8        0x10000UL2880	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_TQM_RING9        0x20000UL2881	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_TQM_RING10       0x40000UL2882	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_TKC              0x80000UL2883	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_RKC              0x100000UL2884	#define FUNC_BACKING_STORE_CFG_REQ_ENABLES_QP_FAST_QPMD     0x200000UL2885	u8	qpc_pg_size_qpc_lvl;2886	#define FUNC_BACKING_STORE_CFG_REQ_QPC_LVL_MASK      0xfUL2887	#define FUNC_BACKING_STORE_CFG_REQ_QPC_LVL_SFT       02888	#define FUNC_BACKING_STORE_CFG_REQ_QPC_LVL_LVL_0       0x0UL2889	#define FUNC_BACKING_STORE_CFG_REQ_QPC_LVL_LVL_1       0x1UL2890	#define FUNC_BACKING_STORE_CFG_REQ_QPC_LVL_LVL_2       0x2UL2891	#define FUNC_BACKING_STORE_CFG_REQ_QPC_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_QPC_LVL_LVL_22892	#define FUNC_BACKING_STORE_CFG_REQ_QPC_PG_SIZE_MASK  0xf0UL2893	#define FUNC_BACKING_STORE_CFG_REQ_QPC_PG_SIZE_SFT   42894	#define FUNC_BACKING_STORE_CFG_REQ_QPC_PG_SIZE_PG_4K   (0x0UL << 4)2895	#define FUNC_BACKING_STORE_CFG_REQ_QPC_PG_SIZE_PG_8K   (0x1UL << 4)2896	#define FUNC_BACKING_STORE_CFG_REQ_QPC_PG_SIZE_PG_64K  (0x2UL << 4)2897	#define FUNC_BACKING_STORE_CFG_REQ_QPC_PG_SIZE_PG_2M   (0x3UL << 4)2898	#define FUNC_BACKING_STORE_CFG_REQ_QPC_PG_SIZE_PG_8M   (0x4UL << 4)2899	#define FUNC_BACKING_STORE_CFG_REQ_QPC_PG_SIZE_PG_1G   (0x5UL << 4)2900	#define FUNC_BACKING_STORE_CFG_REQ_QPC_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_QPC_PG_SIZE_PG_1G2901	u8	srq_pg_size_srq_lvl;2902	#define FUNC_BACKING_STORE_CFG_REQ_SRQ_LVL_MASK      0xfUL2903	#define FUNC_BACKING_STORE_CFG_REQ_SRQ_LVL_SFT       02904	#define FUNC_BACKING_STORE_CFG_REQ_SRQ_LVL_LVL_0       0x0UL2905	#define FUNC_BACKING_STORE_CFG_REQ_SRQ_LVL_LVL_1       0x1UL2906	#define FUNC_BACKING_STORE_CFG_REQ_SRQ_LVL_LVL_2       0x2UL2907	#define FUNC_BACKING_STORE_CFG_REQ_SRQ_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_SRQ_LVL_LVL_22908	#define FUNC_BACKING_STORE_CFG_REQ_SRQ_PG_SIZE_MASK  0xf0UL2909	#define FUNC_BACKING_STORE_CFG_REQ_SRQ_PG_SIZE_SFT   42910	#define FUNC_BACKING_STORE_CFG_REQ_SRQ_PG_SIZE_PG_4K   (0x0UL << 4)2911	#define FUNC_BACKING_STORE_CFG_REQ_SRQ_PG_SIZE_PG_8K   (0x1UL << 4)2912	#define FUNC_BACKING_STORE_CFG_REQ_SRQ_PG_SIZE_PG_64K  (0x2UL << 4)2913	#define FUNC_BACKING_STORE_CFG_REQ_SRQ_PG_SIZE_PG_2M   (0x3UL << 4)2914	#define FUNC_BACKING_STORE_CFG_REQ_SRQ_PG_SIZE_PG_8M   (0x4UL << 4)2915	#define FUNC_BACKING_STORE_CFG_REQ_SRQ_PG_SIZE_PG_1G   (0x5UL << 4)2916	#define FUNC_BACKING_STORE_CFG_REQ_SRQ_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_SRQ_PG_SIZE_PG_1G2917	u8	cq_pg_size_cq_lvl;2918	#define FUNC_BACKING_STORE_CFG_REQ_CQ_LVL_MASK      0xfUL2919	#define FUNC_BACKING_STORE_CFG_REQ_CQ_LVL_SFT       02920	#define FUNC_BACKING_STORE_CFG_REQ_CQ_LVL_LVL_0       0x0UL2921	#define FUNC_BACKING_STORE_CFG_REQ_CQ_LVL_LVL_1       0x1UL2922	#define FUNC_BACKING_STORE_CFG_REQ_CQ_LVL_LVL_2       0x2UL2923	#define FUNC_BACKING_STORE_CFG_REQ_CQ_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_CQ_LVL_LVL_22924	#define FUNC_BACKING_STORE_CFG_REQ_CQ_PG_SIZE_MASK  0xf0UL2925	#define FUNC_BACKING_STORE_CFG_REQ_CQ_PG_SIZE_SFT   42926	#define FUNC_BACKING_STORE_CFG_REQ_CQ_PG_SIZE_PG_4K   (0x0UL << 4)2927	#define FUNC_BACKING_STORE_CFG_REQ_CQ_PG_SIZE_PG_8K   (0x1UL << 4)2928	#define FUNC_BACKING_STORE_CFG_REQ_CQ_PG_SIZE_PG_64K  (0x2UL << 4)2929	#define FUNC_BACKING_STORE_CFG_REQ_CQ_PG_SIZE_PG_2M   (0x3UL << 4)2930	#define FUNC_BACKING_STORE_CFG_REQ_CQ_PG_SIZE_PG_8M   (0x4UL << 4)2931	#define FUNC_BACKING_STORE_CFG_REQ_CQ_PG_SIZE_PG_1G   (0x5UL << 4)2932	#define FUNC_BACKING_STORE_CFG_REQ_CQ_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_CQ_PG_SIZE_PG_1G2933	u8	vnic_pg_size_vnic_lvl;2934	#define FUNC_BACKING_STORE_CFG_REQ_VNIC_LVL_MASK      0xfUL2935	#define FUNC_BACKING_STORE_CFG_REQ_VNIC_LVL_SFT       02936	#define FUNC_BACKING_STORE_CFG_REQ_VNIC_LVL_LVL_0       0x0UL2937	#define FUNC_BACKING_STORE_CFG_REQ_VNIC_LVL_LVL_1       0x1UL2938	#define FUNC_BACKING_STORE_CFG_REQ_VNIC_LVL_LVL_2       0x2UL2939	#define FUNC_BACKING_STORE_CFG_REQ_VNIC_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_VNIC_LVL_LVL_22940	#define FUNC_BACKING_STORE_CFG_REQ_VNIC_PG_SIZE_MASK  0xf0UL2941	#define FUNC_BACKING_STORE_CFG_REQ_VNIC_PG_SIZE_SFT   42942	#define FUNC_BACKING_STORE_CFG_REQ_VNIC_PG_SIZE_PG_4K   (0x0UL << 4)2943	#define FUNC_BACKING_STORE_CFG_REQ_VNIC_PG_SIZE_PG_8K   (0x1UL << 4)2944	#define FUNC_BACKING_STORE_CFG_REQ_VNIC_PG_SIZE_PG_64K  (0x2UL << 4)2945	#define FUNC_BACKING_STORE_CFG_REQ_VNIC_PG_SIZE_PG_2M   (0x3UL << 4)2946	#define FUNC_BACKING_STORE_CFG_REQ_VNIC_PG_SIZE_PG_8M   (0x4UL << 4)2947	#define FUNC_BACKING_STORE_CFG_REQ_VNIC_PG_SIZE_PG_1G   (0x5UL << 4)2948	#define FUNC_BACKING_STORE_CFG_REQ_VNIC_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_VNIC_PG_SIZE_PG_1G2949	u8	stat_pg_size_stat_lvl;2950	#define FUNC_BACKING_STORE_CFG_REQ_STAT_LVL_MASK      0xfUL2951	#define FUNC_BACKING_STORE_CFG_REQ_STAT_LVL_SFT       02952	#define FUNC_BACKING_STORE_CFG_REQ_STAT_LVL_LVL_0       0x0UL2953	#define FUNC_BACKING_STORE_CFG_REQ_STAT_LVL_LVL_1       0x1UL2954	#define FUNC_BACKING_STORE_CFG_REQ_STAT_LVL_LVL_2       0x2UL2955	#define FUNC_BACKING_STORE_CFG_REQ_STAT_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_STAT_LVL_LVL_22956	#define FUNC_BACKING_STORE_CFG_REQ_STAT_PG_SIZE_MASK  0xf0UL2957	#define FUNC_BACKING_STORE_CFG_REQ_STAT_PG_SIZE_SFT   42958	#define FUNC_BACKING_STORE_CFG_REQ_STAT_PG_SIZE_PG_4K   (0x0UL << 4)2959	#define FUNC_BACKING_STORE_CFG_REQ_STAT_PG_SIZE_PG_8K   (0x1UL << 4)2960	#define FUNC_BACKING_STORE_CFG_REQ_STAT_PG_SIZE_PG_64K  (0x2UL << 4)2961	#define FUNC_BACKING_STORE_CFG_REQ_STAT_PG_SIZE_PG_2M   (0x3UL << 4)2962	#define FUNC_BACKING_STORE_CFG_REQ_STAT_PG_SIZE_PG_8M   (0x4UL << 4)2963	#define FUNC_BACKING_STORE_CFG_REQ_STAT_PG_SIZE_PG_1G   (0x5UL << 4)2964	#define FUNC_BACKING_STORE_CFG_REQ_STAT_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_STAT_PG_SIZE_PG_1G2965	u8	tqm_sp_pg_size_tqm_sp_lvl;2966	#define FUNC_BACKING_STORE_CFG_REQ_TQM_SP_LVL_MASK      0xfUL2967	#define FUNC_BACKING_STORE_CFG_REQ_TQM_SP_LVL_SFT       02968	#define FUNC_BACKING_STORE_CFG_REQ_TQM_SP_LVL_LVL_0       0x0UL2969	#define FUNC_BACKING_STORE_CFG_REQ_TQM_SP_LVL_LVL_1       0x1UL2970	#define FUNC_BACKING_STORE_CFG_REQ_TQM_SP_LVL_LVL_2       0x2UL2971	#define FUNC_BACKING_STORE_CFG_REQ_TQM_SP_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_TQM_SP_LVL_LVL_22972	#define FUNC_BACKING_STORE_CFG_REQ_TQM_SP_PG_SIZE_MASK  0xf0UL2973	#define FUNC_BACKING_STORE_CFG_REQ_TQM_SP_PG_SIZE_SFT   42974	#define FUNC_BACKING_STORE_CFG_REQ_TQM_SP_PG_SIZE_PG_4K   (0x0UL << 4)2975	#define FUNC_BACKING_STORE_CFG_REQ_TQM_SP_PG_SIZE_PG_8K   (0x1UL << 4)2976	#define FUNC_BACKING_STORE_CFG_REQ_TQM_SP_PG_SIZE_PG_64K  (0x2UL << 4)2977	#define FUNC_BACKING_STORE_CFG_REQ_TQM_SP_PG_SIZE_PG_2M   (0x3UL << 4)2978	#define FUNC_BACKING_STORE_CFG_REQ_TQM_SP_PG_SIZE_PG_8M   (0x4UL << 4)2979	#define FUNC_BACKING_STORE_CFG_REQ_TQM_SP_PG_SIZE_PG_1G   (0x5UL << 4)2980	#define FUNC_BACKING_STORE_CFG_REQ_TQM_SP_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_TQM_SP_PG_SIZE_PG_1G2981	u8	tqm_ring0_pg_size_tqm_ring0_lvl;2982	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING0_LVL_MASK      0xfUL2983	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING0_LVL_SFT       02984	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING0_LVL_LVL_0       0x0UL2985	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING0_LVL_LVL_1       0x1UL2986	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING0_LVL_LVL_2       0x2UL2987	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING0_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_TQM_RING0_LVL_LVL_22988	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING0_PG_SIZE_MASK  0xf0UL2989	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING0_PG_SIZE_SFT   42990	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING0_PG_SIZE_PG_4K   (0x0UL << 4)2991	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING0_PG_SIZE_PG_8K   (0x1UL << 4)2992	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING0_PG_SIZE_PG_64K  (0x2UL << 4)2993	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING0_PG_SIZE_PG_2M   (0x3UL << 4)2994	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING0_PG_SIZE_PG_8M   (0x4UL << 4)2995	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING0_PG_SIZE_PG_1G   (0x5UL << 4)2996	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING0_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_TQM_RING0_PG_SIZE_PG_1G2997	u8	tqm_ring1_pg_size_tqm_ring1_lvl;2998	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING1_LVL_MASK      0xfUL2999	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING1_LVL_SFT       03000	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING1_LVL_LVL_0       0x0UL3001	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING1_LVL_LVL_1       0x1UL3002	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING1_LVL_LVL_2       0x2UL3003	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING1_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_TQM_RING1_LVL_LVL_23004	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING1_PG_SIZE_MASK  0xf0UL3005	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING1_PG_SIZE_SFT   43006	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING1_PG_SIZE_PG_4K   (0x0UL << 4)3007	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING1_PG_SIZE_PG_8K   (0x1UL << 4)3008	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING1_PG_SIZE_PG_64K  (0x2UL << 4)3009	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING1_PG_SIZE_PG_2M   (0x3UL << 4)3010	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING1_PG_SIZE_PG_8M   (0x4UL << 4)3011	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING1_PG_SIZE_PG_1G   (0x5UL << 4)3012	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING1_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_TQM_RING1_PG_SIZE_PG_1G3013	u8	tqm_ring2_pg_size_tqm_ring2_lvl;3014	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING2_LVL_MASK      0xfUL3015	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING2_LVL_SFT       03016	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING2_LVL_LVL_0       0x0UL3017	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING2_LVL_LVL_1       0x1UL3018	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING2_LVL_LVL_2       0x2UL3019	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING2_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_TQM_RING2_LVL_LVL_23020	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING2_PG_SIZE_MASK  0xf0UL3021	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING2_PG_SIZE_SFT   43022	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING2_PG_SIZE_PG_4K   (0x0UL << 4)3023	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING2_PG_SIZE_PG_8K   (0x1UL << 4)3024	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING2_PG_SIZE_PG_64K  (0x2UL << 4)3025	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING2_PG_SIZE_PG_2M   (0x3UL << 4)3026	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING2_PG_SIZE_PG_8M   (0x4UL << 4)3027	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING2_PG_SIZE_PG_1G   (0x5UL << 4)3028	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING2_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_TQM_RING2_PG_SIZE_PG_1G3029	u8	tqm_ring3_pg_size_tqm_ring3_lvl;3030	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING3_LVL_MASK      0xfUL3031	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING3_LVL_SFT       03032	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING3_LVL_LVL_0       0x0UL3033	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING3_LVL_LVL_1       0x1UL3034	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING3_LVL_LVL_2       0x2UL3035	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING3_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_TQM_RING3_LVL_LVL_23036	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING3_PG_SIZE_MASK  0xf0UL3037	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING3_PG_SIZE_SFT   43038	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING3_PG_SIZE_PG_4K   (0x0UL << 4)3039	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING3_PG_SIZE_PG_8K   (0x1UL << 4)3040	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING3_PG_SIZE_PG_64K  (0x2UL << 4)3041	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING3_PG_SIZE_PG_2M   (0x3UL << 4)3042	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING3_PG_SIZE_PG_8M   (0x4UL << 4)3043	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING3_PG_SIZE_PG_1G   (0x5UL << 4)3044	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING3_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_TQM_RING3_PG_SIZE_PG_1G3045	u8	tqm_ring4_pg_size_tqm_ring4_lvl;3046	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING4_LVL_MASK      0xfUL3047	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING4_LVL_SFT       03048	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING4_LVL_LVL_0       0x0UL3049	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING4_LVL_LVL_1       0x1UL3050	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING4_LVL_LVL_2       0x2UL3051	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING4_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_TQM_RING4_LVL_LVL_23052	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING4_PG_SIZE_MASK  0xf0UL3053	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING4_PG_SIZE_SFT   43054	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING4_PG_SIZE_PG_4K   (0x0UL << 4)3055	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING4_PG_SIZE_PG_8K   (0x1UL << 4)3056	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING4_PG_SIZE_PG_64K  (0x2UL << 4)3057	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING4_PG_SIZE_PG_2M   (0x3UL << 4)3058	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING4_PG_SIZE_PG_8M   (0x4UL << 4)3059	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING4_PG_SIZE_PG_1G   (0x5UL << 4)3060	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING4_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_TQM_RING4_PG_SIZE_PG_1G3061	u8	tqm_ring5_pg_size_tqm_ring5_lvl;3062	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING5_LVL_MASK      0xfUL3063	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING5_LVL_SFT       03064	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING5_LVL_LVL_0       0x0UL3065	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING5_LVL_LVL_1       0x1UL3066	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING5_LVL_LVL_2       0x2UL3067	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING5_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_TQM_RING5_LVL_LVL_23068	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING5_PG_SIZE_MASK  0xf0UL3069	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING5_PG_SIZE_SFT   43070	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING5_PG_SIZE_PG_4K   (0x0UL << 4)3071	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING5_PG_SIZE_PG_8K   (0x1UL << 4)3072	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING5_PG_SIZE_PG_64K  (0x2UL << 4)3073	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING5_PG_SIZE_PG_2M   (0x3UL << 4)3074	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING5_PG_SIZE_PG_8M   (0x4UL << 4)3075	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING5_PG_SIZE_PG_1G   (0x5UL << 4)3076	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING5_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_TQM_RING5_PG_SIZE_PG_1G3077	u8	tqm_ring6_pg_size_tqm_ring6_lvl;3078	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING6_LVL_MASK      0xfUL3079	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING6_LVL_SFT       03080	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING6_LVL_LVL_0       0x0UL3081	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING6_LVL_LVL_1       0x1UL3082	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING6_LVL_LVL_2       0x2UL3083	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING6_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_TQM_RING6_LVL_LVL_23084	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING6_PG_SIZE_MASK  0xf0UL3085	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING6_PG_SIZE_SFT   43086	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING6_PG_SIZE_PG_4K   (0x0UL << 4)3087	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING6_PG_SIZE_PG_8K   (0x1UL << 4)3088	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING6_PG_SIZE_PG_64K  (0x2UL << 4)3089	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING6_PG_SIZE_PG_2M   (0x3UL << 4)3090	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING6_PG_SIZE_PG_8M   (0x4UL << 4)3091	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING6_PG_SIZE_PG_1G   (0x5UL << 4)3092	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING6_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_TQM_RING6_PG_SIZE_PG_1G3093	u8	tqm_ring7_pg_size_tqm_ring7_lvl;3094	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING7_LVL_MASK      0xfUL3095	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING7_LVL_SFT       03096	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING7_LVL_LVL_0       0x0UL3097	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING7_LVL_LVL_1       0x1UL3098	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING7_LVL_LVL_2       0x2UL3099	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING7_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_TQM_RING7_LVL_LVL_23100	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING7_PG_SIZE_MASK  0xf0UL3101	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING7_PG_SIZE_SFT   43102	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING7_PG_SIZE_PG_4K   (0x0UL << 4)3103	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING7_PG_SIZE_PG_8K   (0x1UL << 4)3104	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING7_PG_SIZE_PG_64K  (0x2UL << 4)3105	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING7_PG_SIZE_PG_2M   (0x3UL << 4)3106	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING7_PG_SIZE_PG_8M   (0x4UL << 4)3107	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING7_PG_SIZE_PG_1G   (0x5UL << 4)3108	#define FUNC_BACKING_STORE_CFG_REQ_TQM_RING7_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_TQM_RING7_PG_SIZE_PG_1G3109	u8	mrav_pg_size_mrav_lvl;3110	#define FUNC_BACKING_STORE_CFG_REQ_MRAV_LVL_MASK      0xfUL3111	#define FUNC_BACKING_STORE_CFG_REQ_MRAV_LVL_SFT       03112	#define FUNC_BACKING_STORE_CFG_REQ_MRAV_LVL_LVL_0       0x0UL3113	#define FUNC_BACKING_STORE_CFG_REQ_MRAV_LVL_LVL_1       0x1UL3114	#define FUNC_BACKING_STORE_CFG_REQ_MRAV_LVL_LVL_2       0x2UL3115	#define FUNC_BACKING_STORE_CFG_REQ_MRAV_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_MRAV_LVL_LVL_23116	#define FUNC_BACKING_STORE_CFG_REQ_MRAV_PG_SIZE_MASK  0xf0UL3117	#define FUNC_BACKING_STORE_CFG_REQ_MRAV_PG_SIZE_SFT   43118	#define FUNC_BACKING_STORE_CFG_REQ_MRAV_PG_SIZE_PG_4K   (0x0UL << 4)3119	#define FUNC_BACKING_STORE_CFG_REQ_MRAV_PG_SIZE_PG_8K   (0x1UL << 4)3120	#define FUNC_BACKING_STORE_CFG_REQ_MRAV_PG_SIZE_PG_64K  (0x2UL << 4)3121	#define FUNC_BACKING_STORE_CFG_REQ_MRAV_PG_SIZE_PG_2M   (0x3UL << 4)3122	#define FUNC_BACKING_STORE_CFG_REQ_MRAV_PG_SIZE_PG_8M   (0x4UL << 4)3123	#define FUNC_BACKING_STORE_CFG_REQ_MRAV_PG_SIZE_PG_1G   (0x5UL << 4)3124	#define FUNC_BACKING_STORE_CFG_REQ_MRAV_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_MRAV_PG_SIZE_PG_1G3125	u8	tim_pg_size_tim_lvl;3126	#define FUNC_BACKING_STORE_CFG_REQ_TIM_LVL_MASK      0xfUL3127	#define FUNC_BACKING_STORE_CFG_REQ_TIM_LVL_SFT       03128	#define FUNC_BACKING_STORE_CFG_REQ_TIM_LVL_LVL_0       0x0UL3129	#define FUNC_BACKING_STORE_CFG_REQ_TIM_LVL_LVL_1       0x1UL3130	#define FUNC_BACKING_STORE_CFG_REQ_TIM_LVL_LVL_2       0x2UL3131	#define FUNC_BACKING_STORE_CFG_REQ_TIM_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_TIM_LVL_LVL_23132	#define FUNC_BACKING_STORE_CFG_REQ_TIM_PG_SIZE_MASK  0xf0UL3133	#define FUNC_BACKING_STORE_CFG_REQ_TIM_PG_SIZE_SFT   43134	#define FUNC_BACKING_STORE_CFG_REQ_TIM_PG_SIZE_PG_4K   (0x0UL << 4)3135	#define FUNC_BACKING_STORE_CFG_REQ_TIM_PG_SIZE_PG_8K   (0x1UL << 4)3136	#define FUNC_BACKING_STORE_CFG_REQ_TIM_PG_SIZE_PG_64K  (0x2UL << 4)3137	#define FUNC_BACKING_STORE_CFG_REQ_TIM_PG_SIZE_PG_2M   (0x3UL << 4)3138	#define FUNC_BACKING_STORE_CFG_REQ_TIM_PG_SIZE_PG_8M   (0x4UL << 4)3139	#define FUNC_BACKING_STORE_CFG_REQ_TIM_PG_SIZE_PG_1G   (0x5UL << 4)3140	#define FUNC_BACKING_STORE_CFG_REQ_TIM_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_TIM_PG_SIZE_PG_1G3141	__le64	qpc_page_dir;3142	__le64	srq_page_dir;3143	__le64	cq_page_dir;3144	__le64	vnic_page_dir;3145	__le64	stat_page_dir;3146	__le64	tqm_sp_page_dir;3147	__le64	tqm_ring0_page_dir;3148	__le64	tqm_ring1_page_dir;3149	__le64	tqm_ring2_page_dir;3150	__le64	tqm_ring3_page_dir;3151	__le64	tqm_ring4_page_dir;3152	__le64	tqm_ring5_page_dir;3153	__le64	tqm_ring6_page_dir;3154	__le64	tqm_ring7_page_dir;3155	__le64	mrav_page_dir;3156	__le64	tim_page_dir;3157	__le32	qp_num_entries;3158	__le32	srq_num_entries;3159	__le32	cq_num_entries;3160	__le32	stat_num_entries;3161	__le32	tqm_sp_num_entries;3162	__le32	tqm_ring0_num_entries;3163	__le32	tqm_ring1_num_entries;3164	__le32	tqm_ring2_num_entries;3165	__le32	tqm_ring3_num_entries;3166	__le32	tqm_ring4_num_entries;3167	__le32	tqm_ring5_num_entries;3168	__le32	tqm_ring6_num_entries;3169	__le32	tqm_ring7_num_entries;3170	__le32	mrav_num_entries;3171	__le32	tim_num_entries;3172	__le16	qp_num_qp1_entries;3173	__le16	qp_num_l2_entries;3174	__le16	qp_entry_size;3175	__le16	srq_num_l2_entries;3176	__le16	srq_entry_size;3177	__le16	cq_num_l2_entries;3178	__le16	cq_entry_size;3179	__le16	vnic_num_vnic_entries;3180	__le16	vnic_num_ring_table_entries;3181	__le16	vnic_entry_size;3182	__le16	stat_entry_size;3183	__le16	tqm_entry_size;3184	__le16	mrav_entry_size;3185	__le16	tim_entry_size;3186	u8	tqm_ring8_pg_size_tqm_ring_lvl;3187	#define FUNC_BACKING_STORE_CFG_REQ_RING8_TQM_RING_LVL_MASK      0xfUL3188	#define FUNC_BACKING_STORE_CFG_REQ_RING8_TQM_RING_LVL_SFT       03189	#define FUNC_BACKING_STORE_CFG_REQ_RING8_TQM_RING_LVL_LVL_0       0x0UL3190	#define FUNC_BACKING_STORE_CFG_REQ_RING8_TQM_RING_LVL_LVL_1       0x1UL3191	#define FUNC_BACKING_STORE_CFG_REQ_RING8_TQM_RING_LVL_LVL_2       0x2UL3192	#define FUNC_BACKING_STORE_CFG_REQ_RING8_TQM_RING_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_RING8_TQM_RING_LVL_LVL_23193	#define FUNC_BACKING_STORE_CFG_REQ_RING8_TQM_RING_PG_SIZE_MASK  0xf0UL3194	#define FUNC_BACKING_STORE_CFG_REQ_RING8_TQM_RING_PG_SIZE_SFT   43195	#define FUNC_BACKING_STORE_CFG_REQ_RING8_TQM_RING_PG_SIZE_PG_4K   (0x0UL << 4)3196	#define FUNC_BACKING_STORE_CFG_REQ_RING8_TQM_RING_PG_SIZE_PG_8K   (0x1UL << 4)3197	#define FUNC_BACKING_STORE_CFG_REQ_RING8_TQM_RING_PG_SIZE_PG_64K  (0x2UL << 4)3198	#define FUNC_BACKING_STORE_CFG_REQ_RING8_TQM_RING_PG_SIZE_PG_2M   (0x3UL << 4)3199	#define FUNC_BACKING_STORE_CFG_REQ_RING8_TQM_RING_PG_SIZE_PG_8M   (0x4UL << 4)3200	#define FUNC_BACKING_STORE_CFG_REQ_RING8_TQM_RING_PG_SIZE_PG_1G   (0x5UL << 4)3201	#define FUNC_BACKING_STORE_CFG_REQ_RING8_TQM_RING_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_RING8_TQM_RING_PG_SIZE_PG_1G3202	u8	ring8_unused[3];3203	__le32	tqm_ring8_num_entries;3204	__le64	tqm_ring8_page_dir;3205	u8	tqm_ring9_pg_size_tqm_ring_lvl;3206	#define FUNC_BACKING_STORE_CFG_REQ_RING9_TQM_RING_LVL_MASK      0xfUL3207	#define FUNC_BACKING_STORE_CFG_REQ_RING9_TQM_RING_LVL_SFT       03208	#define FUNC_BACKING_STORE_CFG_REQ_RING9_TQM_RING_LVL_LVL_0       0x0UL3209	#define FUNC_BACKING_STORE_CFG_REQ_RING9_TQM_RING_LVL_LVL_1       0x1UL3210	#define FUNC_BACKING_STORE_CFG_REQ_RING9_TQM_RING_LVL_LVL_2       0x2UL3211	#define FUNC_BACKING_STORE_CFG_REQ_RING9_TQM_RING_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_RING9_TQM_RING_LVL_LVL_23212	#define FUNC_BACKING_STORE_CFG_REQ_RING9_TQM_RING_PG_SIZE_MASK  0xf0UL3213	#define FUNC_BACKING_STORE_CFG_REQ_RING9_TQM_RING_PG_SIZE_SFT   43214	#define FUNC_BACKING_STORE_CFG_REQ_RING9_TQM_RING_PG_SIZE_PG_4K   (0x0UL << 4)3215	#define FUNC_BACKING_STORE_CFG_REQ_RING9_TQM_RING_PG_SIZE_PG_8K   (0x1UL << 4)3216	#define FUNC_BACKING_STORE_CFG_REQ_RING9_TQM_RING_PG_SIZE_PG_64K  (0x2UL << 4)3217	#define FUNC_BACKING_STORE_CFG_REQ_RING9_TQM_RING_PG_SIZE_PG_2M   (0x3UL << 4)3218	#define FUNC_BACKING_STORE_CFG_REQ_RING9_TQM_RING_PG_SIZE_PG_8M   (0x4UL << 4)3219	#define FUNC_BACKING_STORE_CFG_REQ_RING9_TQM_RING_PG_SIZE_PG_1G   (0x5UL << 4)3220	#define FUNC_BACKING_STORE_CFG_REQ_RING9_TQM_RING_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_RING9_TQM_RING_PG_SIZE_PG_1G3221	u8	ring9_unused[3];3222	__le32	tqm_ring9_num_entries;3223	__le64	tqm_ring9_page_dir;3224	u8	tqm_ring10_pg_size_tqm_ring_lvl;3225	#define FUNC_BACKING_STORE_CFG_REQ_RING10_TQM_RING_LVL_MASK      0xfUL3226	#define FUNC_BACKING_STORE_CFG_REQ_RING10_TQM_RING_LVL_SFT       03227	#define FUNC_BACKING_STORE_CFG_REQ_RING10_TQM_RING_LVL_LVL_0       0x0UL3228	#define FUNC_BACKING_STORE_CFG_REQ_RING10_TQM_RING_LVL_LVL_1       0x1UL3229	#define FUNC_BACKING_STORE_CFG_REQ_RING10_TQM_RING_LVL_LVL_2       0x2UL3230	#define FUNC_BACKING_STORE_CFG_REQ_RING10_TQM_RING_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_RING10_TQM_RING_LVL_LVL_23231	#define FUNC_BACKING_STORE_CFG_REQ_RING10_TQM_RING_PG_SIZE_MASK  0xf0UL3232	#define FUNC_BACKING_STORE_CFG_REQ_RING10_TQM_RING_PG_SIZE_SFT   43233	#define FUNC_BACKING_STORE_CFG_REQ_RING10_TQM_RING_PG_SIZE_PG_4K   (0x0UL << 4)3234	#define FUNC_BACKING_STORE_CFG_REQ_RING10_TQM_RING_PG_SIZE_PG_8K   (0x1UL << 4)3235	#define FUNC_BACKING_STORE_CFG_REQ_RING10_TQM_RING_PG_SIZE_PG_64K  (0x2UL << 4)3236	#define FUNC_BACKING_STORE_CFG_REQ_RING10_TQM_RING_PG_SIZE_PG_2M   (0x3UL << 4)3237	#define FUNC_BACKING_STORE_CFG_REQ_RING10_TQM_RING_PG_SIZE_PG_8M   (0x4UL << 4)3238	#define FUNC_BACKING_STORE_CFG_REQ_RING10_TQM_RING_PG_SIZE_PG_1G   (0x5UL << 4)3239	#define FUNC_BACKING_STORE_CFG_REQ_RING10_TQM_RING_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_RING10_TQM_RING_PG_SIZE_PG_1G3240	u8	ring10_unused[3];3241	__le32	tqm_ring10_num_entries;3242	__le64	tqm_ring10_page_dir;3243	__le32	tkc_num_entries;3244	__le32	rkc_num_entries;3245	__le64	tkc_page_dir;3246	__le64	rkc_page_dir;3247	__le16	tkc_entry_size;3248	__le16	rkc_entry_size;3249	u8	tkc_pg_size_tkc_lvl;3250	#define FUNC_BACKING_STORE_CFG_REQ_TKC_LVL_MASK      0xfUL3251	#define FUNC_BACKING_STORE_CFG_REQ_TKC_LVL_SFT       03252	#define FUNC_BACKING_STORE_CFG_REQ_TKC_LVL_LVL_0       0x0UL3253	#define FUNC_BACKING_STORE_CFG_REQ_TKC_LVL_LVL_1       0x1UL3254	#define FUNC_BACKING_STORE_CFG_REQ_TKC_LVL_LVL_2       0x2UL3255	#define FUNC_BACKING_STORE_CFG_REQ_TKC_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_TKC_LVL_LVL_23256	#define FUNC_BACKING_STORE_CFG_REQ_TKC_PG_SIZE_MASK  0xf0UL3257	#define FUNC_BACKING_STORE_CFG_REQ_TKC_PG_SIZE_SFT   43258	#define FUNC_BACKING_STORE_CFG_REQ_TKC_PG_SIZE_PG_4K   (0x0UL << 4)3259	#define FUNC_BACKING_STORE_CFG_REQ_TKC_PG_SIZE_PG_8K   (0x1UL << 4)3260	#define FUNC_BACKING_STORE_CFG_REQ_TKC_PG_SIZE_PG_64K  (0x2UL << 4)3261	#define FUNC_BACKING_STORE_CFG_REQ_TKC_PG_SIZE_PG_2M   (0x3UL << 4)3262	#define FUNC_BACKING_STORE_CFG_REQ_TKC_PG_SIZE_PG_8M   (0x4UL << 4)3263	#define FUNC_BACKING_STORE_CFG_REQ_TKC_PG_SIZE_PG_1G   (0x5UL << 4)3264	#define FUNC_BACKING_STORE_CFG_REQ_TKC_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_TKC_PG_SIZE_PG_1G3265	u8	rkc_pg_size_rkc_lvl;3266	#define FUNC_BACKING_STORE_CFG_REQ_RKC_LVL_MASK      0xfUL3267	#define FUNC_BACKING_STORE_CFG_REQ_RKC_LVL_SFT       03268	#define FUNC_BACKING_STORE_CFG_REQ_RKC_LVL_LVL_0       0x0UL3269	#define FUNC_BACKING_STORE_CFG_REQ_RKC_LVL_LVL_1       0x1UL3270	#define FUNC_BACKING_STORE_CFG_REQ_RKC_LVL_LVL_2       0x2UL3271	#define FUNC_BACKING_STORE_CFG_REQ_RKC_LVL_LAST       FUNC_BACKING_STORE_CFG_REQ_RKC_LVL_LVL_23272	#define FUNC_BACKING_STORE_CFG_REQ_RKC_PG_SIZE_MASK  0xf0UL3273	#define FUNC_BACKING_STORE_CFG_REQ_RKC_PG_SIZE_SFT   43274	#define FUNC_BACKING_STORE_CFG_REQ_RKC_PG_SIZE_PG_4K   (0x0UL << 4)3275	#define FUNC_BACKING_STORE_CFG_REQ_RKC_PG_SIZE_PG_8K   (0x1UL << 4)3276	#define FUNC_BACKING_STORE_CFG_REQ_RKC_PG_SIZE_PG_64K  (0x2UL << 4)3277	#define FUNC_BACKING_STORE_CFG_REQ_RKC_PG_SIZE_PG_2M   (0x3UL << 4)3278	#define FUNC_BACKING_STORE_CFG_REQ_RKC_PG_SIZE_PG_8M   (0x4UL << 4)3279	#define FUNC_BACKING_STORE_CFG_REQ_RKC_PG_SIZE_PG_1G   (0x5UL << 4)3280	#define FUNC_BACKING_STORE_CFG_REQ_RKC_PG_SIZE_LAST   FUNC_BACKING_STORE_CFG_REQ_RKC_PG_SIZE_PG_1G3281	__le16	qp_num_fast_qpmd_entries;3282};3283 3284/* hwrm_func_backing_store_cfg_output (size:128b/16B) */3285struct hwrm_func_backing_store_cfg_output {3286	__le16	error_code;3287	__le16	req_type;3288	__le16	seq_id;3289	__le16	resp_len;3290	u8	unused_0[7];3291	u8	valid;3292};3293 3294/* hwrm_error_recovery_qcfg_input (size:192b/24B) */3295struct hwrm_error_recovery_qcfg_input {3296	__le16	req_type;3297	__le16	cmpl_ring;3298	__le16	seq_id;3299	__le16	target_id;3300	__le64	resp_addr;3301	u8	unused_0[8];3302};3303 3304/* hwrm_error_recovery_qcfg_output (size:1664b/208B) */3305struct hwrm_error_recovery_qcfg_output {3306	__le16	error_code;3307	__le16	req_type;3308	__le16	seq_id;3309	__le16	resp_len;3310	__le32	flags;3311	#define ERROR_RECOVERY_QCFG_RESP_FLAGS_HOST       0x1UL3312	#define ERROR_RECOVERY_QCFG_RESP_FLAGS_CO_CPU     0x2UL3313	__le32	driver_polling_freq;3314	__le32	master_func_wait_period;3315	__le32	normal_func_wait_period;3316	__le32	master_func_wait_period_after_reset;3317	__le32	max_bailout_time_after_reset;3318	__le32	fw_health_status_reg;3319	#define ERROR_RECOVERY_QCFG_RESP_FW_HEALTH_STATUS_REG_ADDR_SPACE_MASK    0x3UL3320	#define ERROR_RECOVERY_QCFG_RESP_FW_HEALTH_STATUS_REG_ADDR_SPACE_SFT     03321	#define ERROR_RECOVERY_QCFG_RESP_FW_HEALTH_STATUS_REG_ADDR_SPACE_PCIE_CFG  0x0UL3322	#define ERROR_RECOVERY_QCFG_RESP_FW_HEALTH_STATUS_REG_ADDR_SPACE_GRC       0x1UL3323	#define ERROR_RECOVERY_QCFG_RESP_FW_HEALTH_STATUS_REG_ADDR_SPACE_BAR0      0x2UL3324	#define ERROR_RECOVERY_QCFG_RESP_FW_HEALTH_STATUS_REG_ADDR_SPACE_BAR1      0x3UL3325	#define ERROR_RECOVERY_QCFG_RESP_FW_HEALTH_STATUS_REG_ADDR_SPACE_LAST     ERROR_RECOVERY_QCFG_RESP_FW_HEALTH_STATUS_REG_ADDR_SPACE_BAR13326	#define ERROR_RECOVERY_QCFG_RESP_FW_HEALTH_STATUS_REG_ADDR_MASK          0xfffffffcUL3327	#define ERROR_RECOVERY_QCFG_RESP_FW_HEALTH_STATUS_REG_ADDR_SFT           23328	__le32	fw_heartbeat_reg;3329	#define ERROR_RECOVERY_QCFG_RESP_FW_HEARTBEAT_REG_ADDR_SPACE_MASK    0x3UL3330	#define ERROR_RECOVERY_QCFG_RESP_FW_HEARTBEAT_REG_ADDR_SPACE_SFT     03331	#define ERROR_RECOVERY_QCFG_RESP_FW_HEARTBEAT_REG_ADDR_SPACE_PCIE_CFG  0x0UL3332	#define ERROR_RECOVERY_QCFG_RESP_FW_HEARTBEAT_REG_ADDR_SPACE_GRC       0x1UL3333	#define ERROR_RECOVERY_QCFG_RESP_FW_HEARTBEAT_REG_ADDR_SPACE_BAR0      0x2UL3334	#define ERROR_RECOVERY_QCFG_RESP_FW_HEARTBEAT_REG_ADDR_SPACE_BAR1      0x3UL3335	#define ERROR_RECOVERY_QCFG_RESP_FW_HEARTBEAT_REG_ADDR_SPACE_LAST     ERROR_RECOVERY_QCFG_RESP_FW_HEARTBEAT_REG_ADDR_SPACE_BAR13336	#define ERROR_RECOVERY_QCFG_RESP_FW_HEARTBEAT_REG_ADDR_MASK          0xfffffffcUL3337	#define ERROR_RECOVERY_QCFG_RESP_FW_HEARTBEAT_REG_ADDR_SFT           23338	__le32	fw_reset_cnt_reg;3339	#define ERROR_RECOVERY_QCFG_RESP_FW_RESET_CNT_REG_ADDR_SPACE_MASK    0x3UL3340	#define ERROR_RECOVERY_QCFG_RESP_FW_RESET_CNT_REG_ADDR_SPACE_SFT     03341	#define ERROR_RECOVERY_QCFG_RESP_FW_RESET_CNT_REG_ADDR_SPACE_PCIE_CFG  0x0UL3342	#define ERROR_RECOVERY_QCFG_RESP_FW_RESET_CNT_REG_ADDR_SPACE_GRC       0x1UL3343	#define ERROR_RECOVERY_QCFG_RESP_FW_RESET_CNT_REG_ADDR_SPACE_BAR0      0x2UL3344	#define ERROR_RECOVERY_QCFG_RESP_FW_RESET_CNT_REG_ADDR_SPACE_BAR1      0x3UL3345	#define ERROR_RECOVERY_QCFG_RESP_FW_RESET_CNT_REG_ADDR_SPACE_LAST     ERROR_RECOVERY_QCFG_RESP_FW_RESET_CNT_REG_ADDR_SPACE_BAR13346	#define ERROR_RECOVERY_QCFG_RESP_FW_RESET_CNT_REG_ADDR_MASK          0xfffffffcUL3347	#define ERROR_RECOVERY_QCFG_RESP_FW_RESET_CNT_REG_ADDR_SFT           23348	__le32	reset_inprogress_reg;3349	#define ERROR_RECOVERY_QCFG_RESP_RESET_INPROGRESS_REG_ADDR_SPACE_MASK    0x3UL3350	#define ERROR_RECOVERY_QCFG_RESP_RESET_INPROGRESS_REG_ADDR_SPACE_SFT     03351	#define ERROR_RECOVERY_QCFG_RESP_RESET_INPROGRESS_REG_ADDR_SPACE_PCIE_CFG  0x0UL3352	#define ERROR_RECOVERY_QCFG_RESP_RESET_INPROGRESS_REG_ADDR_SPACE_GRC       0x1UL3353	#define ERROR_RECOVERY_QCFG_RESP_RESET_INPROGRESS_REG_ADDR_SPACE_BAR0      0x2UL3354	#define ERROR_RECOVERY_QCFG_RESP_RESET_INPROGRESS_REG_ADDR_SPACE_BAR1      0x3UL3355	#define ERROR_RECOVERY_QCFG_RESP_RESET_INPROGRESS_REG_ADDR_SPACE_LAST     ERROR_RECOVERY_QCFG_RESP_RESET_INPROGRESS_REG_ADDR_SPACE_BAR13356	#define ERROR_RECOVERY_QCFG_RESP_RESET_INPROGRESS_REG_ADDR_MASK          0xfffffffcUL3357	#define ERROR_RECOVERY_QCFG_RESP_RESET_INPROGRESS_REG_ADDR_SFT           23358	__le32	reset_inprogress_reg_mask;3359	u8	unused_0[3];3360	u8	reg_array_cnt;3361	__le32	reset_reg[16];3362	#define ERROR_RECOVERY_QCFG_RESP_RESET_REG_ADDR_SPACE_MASK    0x3UL3363	#define ERROR_RECOVERY_QCFG_RESP_RESET_REG_ADDR_SPACE_SFT     03364	#define ERROR_RECOVERY_QCFG_RESP_RESET_REG_ADDR_SPACE_PCIE_CFG  0x0UL3365	#define ERROR_RECOVERY_QCFG_RESP_RESET_REG_ADDR_SPACE_GRC       0x1UL3366	#define ERROR_RECOVERY_QCFG_RESP_RESET_REG_ADDR_SPACE_BAR0      0x2UL3367	#define ERROR_RECOVERY_QCFG_RESP_RESET_REG_ADDR_SPACE_BAR1      0x3UL3368	#define ERROR_RECOVERY_QCFG_RESP_RESET_REG_ADDR_SPACE_LAST     ERROR_RECOVERY_QCFG_RESP_RESET_REG_ADDR_SPACE_BAR13369	#define ERROR_RECOVERY_QCFG_RESP_RESET_REG_ADDR_MASK          0xfffffffcUL3370	#define ERROR_RECOVERY_QCFG_RESP_RESET_REG_ADDR_SFT           23371	__le32	reset_reg_val[16];3372	u8	delay_after_reset[16];3373	__le32	err_recovery_cnt_reg;3374	#define ERROR_RECOVERY_QCFG_RESP_ERR_RECOVERY_CNT_REG_ADDR_SPACE_MASK    0x3UL3375	#define ERROR_RECOVERY_QCFG_RESP_ERR_RECOVERY_CNT_REG_ADDR_SPACE_SFT     03376	#define ERROR_RECOVERY_QCFG_RESP_ERR_RECOVERY_CNT_REG_ADDR_SPACE_PCIE_CFG  0x0UL3377	#define ERROR_RECOVERY_QCFG_RESP_ERR_RECOVERY_CNT_REG_ADDR_SPACE_GRC       0x1UL3378	#define ERROR_RECOVERY_QCFG_RESP_ERR_RECOVERY_CNT_REG_ADDR_SPACE_BAR0      0x2UL3379	#define ERROR_RECOVERY_QCFG_RESP_ERR_RECOVERY_CNT_REG_ADDR_SPACE_BAR1      0x3UL3380	#define ERROR_RECOVERY_QCFG_RESP_ERR_RECOVERY_CNT_REG_ADDR_SPACE_LAST     ERROR_RECOVERY_QCFG_RESP_ERR_RECOVERY_CNT_REG_ADDR_SPACE_BAR13381	#define ERROR_RECOVERY_QCFG_RESP_ERR_RECOVERY_CNT_REG_ADDR_MASK          0xfffffffcUL3382	#define ERROR_RECOVERY_QCFG_RESP_ERR_RECOVERY_CNT_REG_ADDR_SFT           23383	u8	unused_1[3];3384	u8	valid;3385};3386 3387/* hwrm_func_echo_response_input (size:192b/24B) */3388struct hwrm_func_echo_response_input {3389	__le16	req_type;3390	__le16	cmpl_ring;3391	__le16	seq_id;3392	__le16	target_id;3393	__le64	resp_addr;3394	__le32	event_data1;3395	__le32	event_data2;3396};3397 3398/* hwrm_func_echo_response_output (size:128b/16B) */3399struct hwrm_func_echo_response_output {3400	__le16	error_code;3401	__le16	req_type;3402	__le16	seq_id;3403	__le16	resp_len;3404	u8	unused_0[7];3405	u8	valid;3406};3407 3408/* hwrm_func_ptp_pin_qcfg_input (size:192b/24B) */3409struct hwrm_func_ptp_pin_qcfg_input {3410	__le16	req_type;3411	__le16	cmpl_ring;3412	__le16	seq_id;3413	__le16	target_id;3414	__le64	resp_addr;3415	u8	unused_0[8];3416};3417 3418/* hwrm_func_ptp_pin_qcfg_output (size:128b/16B) */3419struct hwrm_func_ptp_pin_qcfg_output {3420	__le16	error_code;3421	__le16	req_type;3422	__le16	seq_id;3423	__le16	resp_len;3424	u8	num_pins;3425	u8	state;3426	#define FUNC_PTP_PIN_QCFG_RESP_STATE_PIN0_ENABLED     0x1UL3427	#define FUNC_PTP_PIN_QCFG_RESP_STATE_PIN1_ENABLED     0x2UL3428	#define FUNC_PTP_PIN_QCFG_RESP_STATE_PIN2_ENABLED     0x4UL3429	#define FUNC_PTP_PIN_QCFG_RESP_STATE_PIN3_ENABLED     0x8UL3430	u8	pin0_usage;3431	#define FUNC_PTP_PIN_QCFG_RESP_PIN0_USAGE_NONE     0x0UL3432	#define FUNC_PTP_PIN_QCFG_RESP_PIN0_USAGE_PPS_IN   0x1UL3433	#define FUNC_PTP_PIN_QCFG_RESP_PIN0_USAGE_PPS_OUT  0x2UL3434	#define FUNC_PTP_PIN_QCFG_RESP_PIN0_USAGE_SYNC_IN  0x3UL3435	#define FUNC_PTP_PIN_QCFG_RESP_PIN0_USAGE_SYNC_OUT 0x4UL3436	#define FUNC_PTP_PIN_QCFG_RESP_PIN0_USAGE_LAST    FUNC_PTP_PIN_QCFG_RESP_PIN0_USAGE_SYNC_OUT3437	u8	pin1_usage;3438	#define FUNC_PTP_PIN_QCFG_RESP_PIN1_USAGE_NONE     0x0UL3439	#define FUNC_PTP_PIN_QCFG_RESP_PIN1_USAGE_PPS_IN   0x1UL3440	#define FUNC_PTP_PIN_QCFG_RESP_PIN1_USAGE_PPS_OUT  0x2UL3441	#define FUNC_PTP_PIN_QCFG_RESP_PIN1_USAGE_SYNC_IN  0x3UL3442	#define FUNC_PTP_PIN_QCFG_RESP_PIN1_USAGE_SYNC_OUT 0x4UL3443	#define FUNC_PTP_PIN_QCFG_RESP_PIN1_USAGE_LAST    FUNC_PTP_PIN_QCFG_RESP_PIN1_USAGE_SYNC_OUT3444	u8	pin2_usage;3445	#define FUNC_PTP_PIN_QCFG_RESP_PIN2_USAGE_NONE                      0x0UL3446	#define FUNC_PTP_PIN_QCFG_RESP_PIN2_USAGE_PPS_IN                    0x1UL3447	#define FUNC_PTP_PIN_QCFG_RESP_PIN2_USAGE_PPS_OUT                   0x2UL3448	#define FUNC_PTP_PIN_QCFG_RESP_PIN2_USAGE_SYNC_IN                   0x3UL3449	#define FUNC_PTP_PIN_QCFG_RESP_PIN2_USAGE_SYNC_OUT                  0x4UL3450	#define FUNC_PTP_PIN_QCFG_RESP_PIN2_USAGE_SYNCE_PRIMARY_CLOCK_OUT   0x5UL3451	#define FUNC_PTP_PIN_QCFG_RESP_PIN2_USAGE_SYNCE_SECONDARY_CLOCK_OUT 0x6UL3452	#define FUNC_PTP_PIN_QCFG_RESP_PIN2_USAGE_LAST                     FUNC_PTP_PIN_QCFG_RESP_PIN2_USAGE_SYNCE_SECONDARY_CLOCK_OUT3453	u8	pin3_usage;3454	#define FUNC_PTP_PIN_QCFG_RESP_PIN3_USAGE_NONE                      0x0UL3455	#define FUNC_PTP_PIN_QCFG_RESP_PIN3_USAGE_PPS_IN                    0x1UL3456	#define FUNC_PTP_PIN_QCFG_RESP_PIN3_USAGE_PPS_OUT                   0x2UL3457	#define FUNC_PTP_PIN_QCFG_RESP_PIN3_USAGE_SYNC_IN                   0x3UL3458	#define FUNC_PTP_PIN_QCFG_RESP_PIN3_USAGE_SYNC_OUT                  0x4UL3459	#define FUNC_PTP_PIN_QCFG_RESP_PIN3_USAGE_SYNCE_PRIMARY_CLOCK_OUT   0x5UL3460	#define FUNC_PTP_PIN_QCFG_RESP_PIN3_USAGE_SYNCE_SECONDARY_CLOCK_OUT 0x6UL3461	#define FUNC_PTP_PIN_QCFG_RESP_PIN3_USAGE_LAST                     FUNC_PTP_PIN_QCFG_RESP_PIN3_USAGE_SYNCE_SECONDARY_CLOCK_OUT3462	u8	unused_0;3463	u8	valid;3464};3465 3466/* hwrm_func_ptp_pin_cfg_input (size:256b/32B) */3467struct hwrm_func_ptp_pin_cfg_input {3468	__le16	req_type;3469	__le16	cmpl_ring;3470	__le16	seq_id;3471	__le16	target_id;3472	__le64	resp_addr;3473	__le32	enables;3474	#define FUNC_PTP_PIN_CFG_REQ_ENABLES_PIN0_STATE     0x1UL3475	#define FUNC_PTP_PIN_CFG_REQ_ENABLES_PIN0_USAGE     0x2UL3476	#define FUNC_PTP_PIN_CFG_REQ_ENABLES_PIN1_STATE     0x4UL3477	#define FUNC_PTP_PIN_CFG_REQ_ENABLES_PIN1_USAGE     0x8UL3478	#define FUNC_PTP_PIN_CFG_REQ_ENABLES_PIN2_STATE     0x10UL3479	#define FUNC_PTP_PIN_CFG_REQ_ENABLES_PIN2_USAGE     0x20UL3480	#define FUNC_PTP_PIN_CFG_REQ_ENABLES_PIN3_STATE     0x40UL3481	#define FUNC_PTP_PIN_CFG_REQ_ENABLES_PIN3_USAGE     0x80UL3482	u8	pin0_state;3483	#define FUNC_PTP_PIN_CFG_REQ_PIN0_STATE_DISABLED 0x0UL3484	#define FUNC_PTP_PIN_CFG_REQ_PIN0_STATE_ENABLED  0x1UL3485	#define FUNC_PTP_PIN_CFG_REQ_PIN0_STATE_LAST    FUNC_PTP_PIN_CFG_REQ_PIN0_STATE_ENABLED3486	u8	pin0_usage;3487	#define FUNC_PTP_PIN_CFG_REQ_PIN0_USAGE_NONE     0x0UL3488	#define FUNC_PTP_PIN_CFG_REQ_PIN0_USAGE_PPS_IN   0x1UL3489	#define FUNC_PTP_PIN_CFG_REQ_PIN0_USAGE_PPS_OUT  0x2UL3490	#define FUNC_PTP_PIN_CFG_REQ_PIN0_USAGE_SYNC_IN  0x3UL3491	#define FUNC_PTP_PIN_CFG_REQ_PIN0_USAGE_SYNC_OUT 0x4UL3492	#define FUNC_PTP_PIN_CFG_REQ_PIN0_USAGE_LAST    FUNC_PTP_PIN_CFG_REQ_PIN0_USAGE_SYNC_OUT3493	u8	pin1_state;3494	#define FUNC_PTP_PIN_CFG_REQ_PIN1_STATE_DISABLED 0x0UL3495	#define FUNC_PTP_PIN_CFG_REQ_PIN1_STATE_ENABLED  0x1UL3496	#define FUNC_PTP_PIN_CFG_REQ_PIN1_STATE_LAST    FUNC_PTP_PIN_CFG_REQ_PIN1_STATE_ENABLED3497	u8	pin1_usage;3498	#define FUNC_PTP_PIN_CFG_REQ_PIN1_USAGE_NONE     0x0UL3499	#define FUNC_PTP_PIN_CFG_REQ_PIN1_USAGE_PPS_IN   0x1UL3500	#define FUNC_PTP_PIN_CFG_REQ_PIN1_USAGE_PPS_OUT  0x2UL3501	#define FUNC_PTP_PIN_CFG_REQ_PIN1_USAGE_SYNC_IN  0x3UL3502	#define FUNC_PTP_PIN_CFG_REQ_PIN1_USAGE_SYNC_OUT 0x4UL3503	#define FUNC_PTP_PIN_CFG_REQ_PIN1_USAGE_LAST    FUNC_PTP_PIN_CFG_REQ_PIN1_USAGE_SYNC_OUT3504	u8	pin2_state;3505	#define FUNC_PTP_PIN_CFG_REQ_PIN2_STATE_DISABLED 0x0UL3506	#define FUNC_PTP_PIN_CFG_REQ_PIN2_STATE_ENABLED  0x1UL3507	#define FUNC_PTP_PIN_CFG_REQ_PIN2_STATE_LAST    FUNC_PTP_PIN_CFG_REQ_PIN2_STATE_ENABLED3508	u8	pin2_usage;3509	#define FUNC_PTP_PIN_CFG_REQ_PIN2_USAGE_NONE                      0x0UL3510	#define FUNC_PTP_PIN_CFG_REQ_PIN2_USAGE_PPS_IN                    0x1UL3511	#define FUNC_PTP_PIN_CFG_REQ_PIN2_USAGE_PPS_OUT                   0x2UL3512	#define FUNC_PTP_PIN_CFG_REQ_PIN2_USAGE_SYNC_IN                   0x3UL3513	#define FUNC_PTP_PIN_CFG_REQ_PIN2_USAGE_SYNC_OUT                  0x4UL3514	#define FUNC_PTP_PIN_CFG_REQ_PIN2_USAGE_SYNCE_PRIMARY_CLOCK_OUT   0x5UL3515	#define FUNC_PTP_PIN_CFG_REQ_PIN2_USAGE_SYNCE_SECONDARY_CLOCK_OUT 0x6UL3516	#define FUNC_PTP_PIN_CFG_REQ_PIN2_USAGE_LAST                     FUNC_PTP_PIN_CFG_REQ_PIN2_USAGE_SYNCE_SECONDARY_CLOCK_OUT3517	u8	pin3_state;3518	#define FUNC_PTP_PIN_CFG_REQ_PIN3_STATE_DISABLED 0x0UL3519	#define FUNC_PTP_PIN_CFG_REQ_PIN3_STATE_ENABLED  0x1UL3520	#define FUNC_PTP_PIN_CFG_REQ_PIN3_STATE_LAST    FUNC_PTP_PIN_CFG_REQ_PIN3_STATE_ENABLED3521	u8	pin3_usage;3522	#define FUNC_PTP_PIN_CFG_REQ_PIN3_USAGE_NONE                      0x0UL3523	#define FUNC_PTP_PIN_CFG_REQ_PIN3_USAGE_PPS_IN                    0x1UL3524	#define FUNC_PTP_PIN_CFG_REQ_PIN3_USAGE_PPS_OUT                   0x2UL3525	#define FUNC_PTP_PIN_CFG_REQ_PIN3_USAGE_SYNC_IN                   0x3UL3526	#define FUNC_PTP_PIN_CFG_REQ_PIN3_USAGE_SYNC_OUT                  0x4UL3527	#define FUNC_PTP_PIN_CFG_REQ_PIN3_USAGE_SYNCE_PRIMARY_CLOCK_OUT   0x5UL3528	#define FUNC_PTP_PIN_CFG_REQ_PIN3_USAGE_SYNCE_SECONDARY_CLOCK_OUT 0x6UL3529	#define FUNC_PTP_PIN_CFG_REQ_PIN3_USAGE_LAST                     FUNC_PTP_PIN_CFG_REQ_PIN3_USAGE_SYNCE_SECONDARY_CLOCK_OUT3530	u8	unused_0[4];3531};3532 3533/* hwrm_func_ptp_pin_cfg_output (size:128b/16B) */3534struct hwrm_func_ptp_pin_cfg_output {3535	__le16	error_code;3536	__le16	req_type;3537	__le16	seq_id;3538	__le16	resp_len;3539	u8	unused_0[7];3540	u8	valid;3541};3542 3543/* hwrm_func_ptp_cfg_input (size:384b/48B) */3544struct hwrm_func_ptp_cfg_input {3545	__le16	req_type;3546	__le16	cmpl_ring;3547	__le16	seq_id;3548	__le16	target_id;3549	__le64	resp_addr;3550	__le16	enables;3551	#define FUNC_PTP_CFG_REQ_ENABLES_PTP_PPS_EVENT               0x1UL3552	#define FUNC_PTP_CFG_REQ_ENABLES_PTP_FREQ_ADJ_DLL_SOURCE     0x2UL3553	#define FUNC_PTP_CFG_REQ_ENABLES_PTP_FREQ_ADJ_DLL_PHASE      0x4UL3554	#define FUNC_PTP_CFG_REQ_ENABLES_PTP_FREQ_ADJ_EXT_PERIOD     0x8UL3555	#define FUNC_PTP_CFG_REQ_ENABLES_PTP_FREQ_ADJ_EXT_UP         0x10UL3556	#define FUNC_PTP_CFG_REQ_ENABLES_PTP_FREQ_ADJ_EXT_PHASE      0x20UL3557	#define FUNC_PTP_CFG_REQ_ENABLES_PTP_SET_TIME                0x40UL3558	u8	ptp_pps_event;3559	#define FUNC_PTP_CFG_REQ_PTP_PPS_EVENT_INTERNAL     0x1UL3560	#define FUNC_PTP_CFG_REQ_PTP_PPS_EVENT_EXTERNAL     0x2UL3561	u8	ptp_freq_adj_dll_source;3562	#define FUNC_PTP_CFG_REQ_PTP_FREQ_ADJ_DLL_SOURCE_NONE    0x0UL3563	#define FUNC_PTP_CFG_REQ_PTP_FREQ_ADJ_DLL_SOURCE_TSIO_0  0x1UL3564	#define FUNC_PTP_CFG_REQ_PTP_FREQ_ADJ_DLL_SOURCE_TSIO_1  0x2UL3565	#define FUNC_PTP_CFG_REQ_PTP_FREQ_ADJ_DLL_SOURCE_TSIO_2  0x3UL3566	#define FUNC_PTP_CFG_REQ_PTP_FREQ_ADJ_DLL_SOURCE_TSIO_3  0x4UL3567	#define FUNC_PTP_CFG_REQ_PTP_FREQ_ADJ_DLL_SOURCE_PORT_0  0x5UL3568	#define FUNC_PTP_CFG_REQ_PTP_FREQ_ADJ_DLL_SOURCE_PORT_1  0x6UL3569	#define FUNC_PTP_CFG_REQ_PTP_FREQ_ADJ_DLL_SOURCE_PORT_2  0x7UL3570	#define FUNC_PTP_CFG_REQ_PTP_FREQ_ADJ_DLL_SOURCE_PORT_3  0x8UL3571	#define FUNC_PTP_CFG_REQ_PTP_FREQ_ADJ_DLL_SOURCE_INVALID 0xffUL3572	#define FUNC_PTP_CFG_REQ_PTP_FREQ_ADJ_DLL_SOURCE_LAST   FUNC_PTP_CFG_REQ_PTP_FREQ_ADJ_DLL_SOURCE_INVALID3573	u8	ptp_freq_adj_dll_phase;3574	#define FUNC_PTP_CFG_REQ_PTP_FREQ_ADJ_DLL_PHASE_NONE 0x0UL3575	#define FUNC_PTP_CFG_REQ_PTP_FREQ_ADJ_DLL_PHASE_4K   0x1UL3576	#define FUNC_PTP_CFG_REQ_PTP_FREQ_ADJ_DLL_PHASE_8K   0x2UL3577	#define FUNC_PTP_CFG_REQ_PTP_FREQ_ADJ_DLL_PHASE_10M  0x3UL3578	#define FUNC_PTP_CFG_REQ_PTP_FREQ_ADJ_DLL_PHASE_25M  0x4UL3579	#define FUNC_PTP_CFG_REQ_PTP_FREQ_ADJ_DLL_PHASE_LAST FUNC_PTP_CFG_REQ_PTP_FREQ_ADJ_DLL_PHASE_25M3580	u8	unused_0[3];3581	__le32	ptp_freq_adj_ext_period;3582	__le32	ptp_freq_adj_ext_up;3583	__le32	ptp_freq_adj_ext_phase_lower;3584	__le32	ptp_freq_adj_ext_phase_upper;3585	__le64	ptp_set_time;3586};3587 3588/* hwrm_func_ptp_cfg_output (size:128b/16B) */3589struct hwrm_func_ptp_cfg_output {3590	__le16	error_code;3591	__le16	req_type;3592	__le16	seq_id;3593	__le16	resp_len;3594	u8	unused_0[7];3595	u8	valid;3596};3597 3598/* hwrm_func_ptp_ts_query_input (size:192b/24B) */3599struct hwrm_func_ptp_ts_query_input {3600	__le16	req_type;3601	__le16	cmpl_ring;3602	__le16	seq_id;3603	__le16	target_id;3604	__le64	resp_addr;3605	__le32	flags;3606	#define FUNC_PTP_TS_QUERY_REQ_FLAGS_PPS_TIME     0x1UL3607	#define FUNC_PTP_TS_QUERY_REQ_FLAGS_PTM_TIME     0x2UL3608	u8	unused_0[4];3609};3610 3611/* hwrm_func_ptp_ts_query_output (size:320b/40B) */3612struct hwrm_func_ptp_ts_query_output {3613	__le16	error_code;3614	__le16	req_type;3615	__le16	seq_id;3616	__le16	resp_len;3617	__le64	pps_event_ts;3618	__le64	ptm_local_ts;3619	__le64	ptm_system_ts;3620	__le32	ptm_link_delay;3621	u8	unused_0[3];3622	u8	valid;3623};3624 3625/* hwrm_func_ptp_ext_cfg_input (size:256b/32B) */3626struct hwrm_func_ptp_ext_cfg_input {3627	__le16	req_type;3628	__le16	cmpl_ring;3629	__le16	seq_id;3630	__le16	target_id;3631	__le64	resp_addr;3632	__le16	enables;3633	#define FUNC_PTP_EXT_CFG_REQ_ENABLES_PHC_MASTER_FID     0x1UL3634	#define FUNC_PTP_EXT_CFG_REQ_ENABLES_PHC_SEC_FID        0x2UL3635	#define FUNC_PTP_EXT_CFG_REQ_ENABLES_PHC_SEC_MODE       0x4UL3636	#define FUNC_PTP_EXT_CFG_REQ_ENABLES_FAILOVER_TIMER     0x8UL3637	__le16	phc_master_fid;3638	__le16	phc_sec_fid;3639	u8	phc_sec_mode;3640	#define FUNC_PTP_EXT_CFG_REQ_PHC_SEC_MODE_SWITCH  0x0UL3641	#define FUNC_PTP_EXT_CFG_REQ_PHC_SEC_MODE_ALL     0x1UL3642	#define FUNC_PTP_EXT_CFG_REQ_PHC_SEC_MODE_PF_ONLY 0x2UL3643	#define FUNC_PTP_EXT_CFG_REQ_PHC_SEC_MODE_LAST   FUNC_PTP_EXT_CFG_REQ_PHC_SEC_MODE_PF_ONLY3644	u8	unused_0;3645	__le32	failover_timer;3646	u8	unused_1[4];3647};3648 3649/* hwrm_func_ptp_ext_cfg_output (size:128b/16B) */3650struct hwrm_func_ptp_ext_cfg_output {3651	__le16	error_code;3652	__le16	req_type;3653	__le16	seq_id;3654	__le16	resp_len;3655	u8	unused_0[7];3656	u8	valid;3657};3658 3659/* hwrm_func_ptp_ext_qcfg_input (size:192b/24B) */3660struct hwrm_func_ptp_ext_qcfg_input {3661	__le16	req_type;3662	__le16	cmpl_ring;3663	__le16	seq_id;3664	__le16	target_id;3665	__le64	resp_addr;3666	u8	unused_0[8];3667};3668 3669/* hwrm_func_ptp_ext_qcfg_output (size:256b/32B) */3670struct hwrm_func_ptp_ext_qcfg_output {3671	__le16	error_code;3672	__le16	req_type;3673	__le16	seq_id;3674	__le16	resp_len;3675	__le16	phc_master_fid;3676	__le16	phc_sec_fid;3677	__le16	phc_active_fid0;3678	__le16	phc_active_fid1;3679	__le32	last_failover_event;3680	__le16	from_fid;3681	__le16	to_fid;3682	u8	unused_0[7];3683	u8	valid;3684};3685 3686/* hwrm_func_backing_store_cfg_v2_input (size:448b/56B) */3687struct hwrm_func_backing_store_cfg_v2_input {3688	__le16	req_type;3689	__le16	cmpl_ring;3690	__le16	seq_id;3691	__le16	target_id;3692	__le64	resp_addr;3693	__le16	type;3694	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_QP                  0x0UL3695	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_SRQ                 0x1UL3696	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_CQ                  0x2UL3697	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_VNIC                0x3UL3698	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_STAT                0x4UL3699	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_SP_TQM_RING         0x5UL3700	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_FP_TQM_RING         0x6UL3701	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_MRAV                0xeUL3702	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_TIM                 0xfUL3703	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_TX_CK               0x13UL3704	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_RX_CK               0x14UL3705	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_MP_TQM_RING         0x15UL3706	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_SQ_DB_SHADOW        0x16UL3707	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_RQ_DB_SHADOW        0x17UL3708	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_SRQ_DB_SHADOW       0x18UL3709	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_CQ_DB_SHADOW        0x19UL3710	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_TBL_SCOPE           0x1cUL3711	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_XID_PARTITION       0x1dUL3712	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_SRT_TRACE           0x1eUL3713	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_SRT2_TRACE          0x1fUL3714	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_CRT_TRACE           0x20UL3715	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_CRT2_TRACE          0x21UL3716	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_RIGP0_TRACE         0x22UL3717	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_L2_HWRM_TRACE       0x23UL3718	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_ROCE_HWRM_TRACE     0x24UL3719	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_TTX_PACING_TQM_RING 0x25UL3720	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_CA0_TRACE           0x26UL3721	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_CA1_TRACE           0x27UL3722	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_CA2_TRACE           0x28UL3723	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_RIGP1_TRACE         0x29UL3724	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_INVALID             0xffffUL3725	#define FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_LAST               FUNC_BACKING_STORE_CFG_V2_REQ_TYPE_INVALID3726	__le16	instance;3727	__le32	flags;3728	#define FUNC_BACKING_STORE_CFG_V2_REQ_FLAGS_PREBOOT_MODE        0x1UL3729	#define FUNC_BACKING_STORE_CFG_V2_REQ_FLAGS_BS_CFG_ALL_DONE     0x2UL3730	#define FUNC_BACKING_STORE_CFG_V2_REQ_FLAGS_BS_EXTEND           0x4UL3731	__le64	page_dir;3732	__le32	num_entries;3733	__le16	entry_size;3734	u8	page_size_pbl_level;3735	#define FUNC_BACKING_STORE_CFG_V2_REQ_PBL_LEVEL_MASK  0xfUL3736	#define FUNC_BACKING_STORE_CFG_V2_REQ_PBL_LEVEL_SFT   03737	#define FUNC_BACKING_STORE_CFG_V2_REQ_PBL_LEVEL_LVL_0   0x0UL3738	#define FUNC_BACKING_STORE_CFG_V2_REQ_PBL_LEVEL_LVL_1   0x1UL3739	#define FUNC_BACKING_STORE_CFG_V2_REQ_PBL_LEVEL_LVL_2   0x2UL3740	#define FUNC_BACKING_STORE_CFG_V2_REQ_PBL_LEVEL_LAST   FUNC_BACKING_STORE_CFG_V2_REQ_PBL_LEVEL_LVL_23741	#define FUNC_BACKING_STORE_CFG_V2_REQ_PAGE_SIZE_MASK  0xf0UL3742	#define FUNC_BACKING_STORE_CFG_V2_REQ_PAGE_SIZE_SFT   43743	#define FUNC_BACKING_STORE_CFG_V2_REQ_PAGE_SIZE_PG_4K   (0x0UL << 4)3744	#define FUNC_BACKING_STORE_CFG_V2_REQ_PAGE_SIZE_PG_8K   (0x1UL << 4)3745	#define FUNC_BACKING_STORE_CFG_V2_REQ_PAGE_SIZE_PG_64K  (0x2UL << 4)3746	#define FUNC_BACKING_STORE_CFG_V2_REQ_PAGE_SIZE_PG_2M   (0x3UL << 4)3747	#define FUNC_BACKING_STORE_CFG_V2_REQ_PAGE_SIZE_PG_8M   (0x4UL << 4)3748	#define FUNC_BACKING_STORE_CFG_V2_REQ_PAGE_SIZE_PG_1G   (0x5UL << 4)3749	#define FUNC_BACKING_STORE_CFG_V2_REQ_PAGE_SIZE_LAST   FUNC_BACKING_STORE_CFG_V2_REQ_PAGE_SIZE_PG_1G3750	u8	subtype_valid_cnt;3751	__le32	split_entry_0;3752	__le32	split_entry_1;3753	__le32	split_entry_2;3754	__le32	split_entry_3;3755};3756 3757/* hwrm_func_backing_store_cfg_v2_output (size:128b/16B) */3758struct hwrm_func_backing_store_cfg_v2_output {3759	__le16	error_code;3760	__le16	req_type;3761	__le16	seq_id;3762	__le16	resp_len;3763	u8	rsvd0[7];3764	u8	valid;3765};3766 3767/* hwrm_func_backing_store_qcfg_v2_input (size:192b/24B) */3768struct hwrm_func_backing_store_qcfg_v2_input {3769	__le16	req_type;3770	__le16	cmpl_ring;3771	__le16	seq_id;3772	__le16	target_id;3773	__le64	resp_addr;3774	__le16	type;3775	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_QP                  0x0UL3776	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_SRQ                 0x1UL3777	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_CQ                  0x2UL3778	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_VNIC                0x3UL3779	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_STAT                0x4UL3780	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_SP_TQM_RING         0x5UL3781	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_FP_TQM_RING         0x6UL3782	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_MRAV                0xeUL3783	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_TIM                 0xfUL3784	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_TX_CK               0x13UL3785	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_RX_CK               0x14UL3786	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_MP_TQM_RING         0x15UL3787	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_SQ_DB_SHADOW        0x16UL3788	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_RQ_DB_SHADOW        0x17UL3789	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_SRQ_DB_SHADOW       0x18UL3790	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_CQ_DB_SHADOW        0x19UL3791	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_TBL_SCOPE           0x1cUL3792	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_XID_PARTITION_TABLE 0x1dUL3793	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_SRT_TRACE           0x1eUL3794	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_SRT2_TRACE          0x1fUL3795	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_CRT_TRACE           0x20UL3796	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_CRT2_TRACE          0x21UL3797	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_RIGP0_TRACE         0x22UL3798	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_L2_HWRM_TRACE       0x23UL3799	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_ROCE_HWRM_TRACE     0x24UL3800	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_TTX_PACING_TQM_RING 0x25UL3801	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_CA0_TRACE           0x26UL3802	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_CA1_TRACE           0x27UL3803	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_CA2_TRACE           0x28UL3804	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_RIGP1_TRACE         0x29UL3805	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_INVALID             0xffffUL3806	#define FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_LAST               FUNC_BACKING_STORE_QCFG_V2_REQ_TYPE_INVALID3807	__le16	instance;3808	u8	rsvd[4];3809};3810 3811/* hwrm_func_backing_store_qcfg_v2_output (size:448b/56B) */3812struct hwrm_func_backing_store_qcfg_v2_output {3813	__le16	error_code;3814	__le16	req_type;3815	__le16	seq_id;3816	__le16	resp_len;3817	__le16	type;3818	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_QP                  0x0UL3819	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_SRQ                 0x1UL3820	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_CQ                  0x2UL3821	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_VNIC                0x3UL3822	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_STAT                0x4UL3823	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_SP_TQM_RING         0x5UL3824	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_FP_TQM_RING         0x6UL3825	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_MRAV                0xeUL3826	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_TIM                 0xfUL3827	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_TX_CK               0x13UL3828	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_RX_CK               0x14UL3829	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_MP_TQM_RING         0x15UL3830	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_TBL_SCOPE           0x1cUL3831	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_XID_PARTITION       0x1dUL3832	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_SRT_TRACE           0x1eUL3833	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_SRT2_TRACE          0x1fUL3834	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_CRT_TRACE           0x20UL3835	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_CRT2_TRACE          0x21UL3836	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_RIGP0_TRACE         0x22UL3837	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_L2_HWRM_TRACE       0x23UL3838	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_ROCE_HWRM_TRACE     0x24UL3839	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_TTX_PACING_TQM_RING 0x25UL3840	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_CA0_TRACE           0x26UL3841	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_CA1_TRACE           0x27UL3842	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_CA2_TRACE           0x28UL3843	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_RIGP1_TRACE         0x29UL3844	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_INVALID             0xffffUL3845	#define FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_LAST               FUNC_BACKING_STORE_QCFG_V2_RESP_TYPE_INVALID3846	__le16	instance;3847	__le32	flags;3848	__le64	page_dir;3849	__le32	num_entries;3850	u8	page_size_pbl_level;3851	#define FUNC_BACKING_STORE_QCFG_V2_RESP_PBL_LEVEL_MASK  0xfUL3852	#define FUNC_BACKING_STORE_QCFG_V2_RESP_PBL_LEVEL_SFT   03853	#define FUNC_BACKING_STORE_QCFG_V2_RESP_PBL_LEVEL_LVL_0   0x0UL3854	#define FUNC_BACKING_STORE_QCFG_V2_RESP_PBL_LEVEL_LVL_1   0x1UL3855	#define FUNC_BACKING_STORE_QCFG_V2_RESP_PBL_LEVEL_LVL_2   0x2UL3856	#define FUNC_BACKING_STORE_QCFG_V2_RESP_PBL_LEVEL_LAST   FUNC_BACKING_STORE_QCFG_V2_RESP_PBL_LEVEL_LVL_23857	#define FUNC_BACKING_STORE_QCFG_V2_RESP_PAGE_SIZE_MASK  0xf0UL3858	#define FUNC_BACKING_STORE_QCFG_V2_RESP_PAGE_SIZE_SFT   43859	#define FUNC_BACKING_STORE_QCFG_V2_RESP_PAGE_SIZE_PG_4K   (0x0UL << 4)3860	#define FUNC_BACKING_STORE_QCFG_V2_RESP_PAGE_SIZE_PG_8K   (0x1UL << 4)3861	#define FUNC_BACKING_STORE_QCFG_V2_RESP_PAGE_SIZE_PG_64K  (0x2UL << 4)3862	#define FUNC_BACKING_STORE_QCFG_V2_RESP_PAGE_SIZE_PG_2M   (0x3UL << 4)3863	#define FUNC_BACKING_STORE_QCFG_V2_RESP_PAGE_SIZE_PG_8M   (0x4UL << 4)3864	#define FUNC_BACKING_STORE_QCFG_V2_RESP_PAGE_SIZE_PG_1G   (0x5UL << 4)3865	#define FUNC_BACKING_STORE_QCFG_V2_RESP_PAGE_SIZE_LAST   FUNC_BACKING_STORE_QCFG_V2_RESP_PAGE_SIZE_PG_1G3866	u8	subtype_valid_cnt;3867	u8	rsvd[2];3868	__le32	split_entry_0;3869	__le32	split_entry_1;3870	__le32	split_entry_2;3871	__le32	split_entry_3;3872	u8	rsvd2[7];3873	u8	valid;3874};3875 3876/* qpc_split_entries (size:128b/16B) */3877struct qpc_split_entries {3878	__le32	qp_num_l2_entries;3879	__le32	qp_num_qp1_entries;3880	__le32	qp_num_fast_qpmd_entries;3881	__le32	rsvd;3882};3883 3884/* srq_split_entries (size:128b/16B) */3885struct srq_split_entries {3886	__le32	srq_num_l2_entries;3887	__le32	rsvd;3888	__le32	rsvd2[2];3889};3890 3891/* cq_split_entries (size:128b/16B) */3892struct cq_split_entries {3893	__le32	cq_num_l2_entries;3894	__le32	rsvd;3895	__le32	rsvd2[2];3896};3897 3898/* vnic_split_entries (size:128b/16B) */3899struct vnic_split_entries {3900	__le32	vnic_num_vnic_entries;3901	__le32	rsvd;3902	__le32	rsvd2[2];3903};3904 3905/* mrav_split_entries (size:128b/16B) */3906struct mrav_split_entries {3907	__le32	mrav_num_av_entries;3908	__le32	rsvd;3909	__le32	rsvd2[2];3910};3911 3912/* ts_split_entries (size:128b/16B) */3913struct ts_split_entries {3914	__le32	region_num_entries;3915	u8	tsid;3916	u8	lkup_static_bkt_cnt_exp[2];3917	u8	rsvd;3918	__le32	rsvd2[2];3919};3920 3921/* ck_split_entries (size:128b/16B) */3922struct ck_split_entries {3923	__le32	num_quic_entries;3924	__le32	rsvd;3925	__le32	rsvd2[2];3926};3927 3928/* hwrm_func_backing_store_qcaps_v2_input (size:192b/24B) */3929struct hwrm_func_backing_store_qcaps_v2_input {3930	__le16	req_type;3931	__le16	cmpl_ring;3932	__le16	seq_id;3933	__le16	target_id;3934	__le64	resp_addr;3935	__le16	type;3936	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_QP                  0x0UL3937	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_SRQ                 0x1UL3938	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_CQ                  0x2UL3939	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_VNIC                0x3UL3940	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_STAT                0x4UL3941	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_SP_TQM_RING         0x5UL3942	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_FP_TQM_RING         0x6UL3943	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_MRAV                0xeUL3944	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_TIM                 0xfUL3945	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_TX_CK               0x13UL3946	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_RX_CK               0x14UL3947	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_MP_TQM_RING         0x15UL3948	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_SQ_DB_SHADOW        0x16UL3949	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_RQ_DB_SHADOW        0x17UL3950	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_SRQ_DB_SHADOW       0x18UL3951	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_CQ_DB_SHADOW        0x19UL3952	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_TBL_SCOPE           0x1cUL3953	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_XID_PARTITION       0x1dUL3954	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_SRT_TRACE           0x1eUL3955	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_SRT2_TRACE          0x1fUL3956	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_CRT_TRACE           0x20UL3957	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_CRT2_TRACE          0x21UL3958	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_RIGP0_TRACE         0x22UL3959	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_L2_HWRM_TRACE       0x23UL3960	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_ROCE_HWRM_TRACE     0x24UL3961	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_TTX_PACING_TQM_RING 0x25UL3962	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_CA0_TRACE           0x26UL3963	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_CA1_TRACE           0x27UL3964	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_CA2_TRACE           0x28UL3965	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_RIGP1_TRACE         0x29UL3966	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_INVALID             0xffffUL3967	#define FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_LAST               FUNC_BACKING_STORE_QCAPS_V2_REQ_TYPE_INVALID3968	u8	rsvd[6];3969};3970 3971/* hwrm_func_backing_store_qcaps_v2_output (size:448b/56B) */3972struct hwrm_func_backing_store_qcaps_v2_output {3973	__le16	error_code;3974	__le16	req_type;3975	__le16	seq_id;3976	__le16	resp_len;3977	__le16	type;3978	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_QP                  0x0UL3979	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_SRQ                 0x1UL3980	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_CQ                  0x2UL3981	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_VNIC                0x3UL3982	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_STAT                0x4UL3983	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_SP_TQM_RING         0x5UL3984	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_FP_TQM_RING         0x6UL3985	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_MRAV                0xeUL3986	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_TIM                 0xfUL3987	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_TX_CK               0x13UL3988	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_RX_CK               0x14UL3989	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_MP_TQM_RING         0x15UL3990	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_SQ_DB_SHADOW        0x16UL3991	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_RQ_DB_SHADOW        0x17UL3992	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_SRQ_DB_SHADOW       0x18UL3993	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_CQ_DB_SHADOW        0x19UL3994	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_TBL_SCOPE           0x1cUL3995	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_XID_PARTITION       0x1dUL3996	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_SRT_TRACE           0x1eUL3997	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_SRT2_TRACE          0x1fUL3998	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_CRT_TRACE           0x20UL3999	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_CRT2_TRACE          0x21UL4000	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_RIGP0_TRACE         0x22UL4001	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_L2_HWRM_TRACE       0x23UL4002	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_ROCE_HWRM_TRACE     0x24UL4003	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_TTX_PACING_TQM_RING 0x25UL4004	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_CA0_TRACE           0x26UL4005	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_CA1_TRACE           0x27UL4006	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_CA2_TRACE           0x28UL4007	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_RIGP1_TRACE         0x29UL4008	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_INVALID             0xffffUL4009	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_LAST               FUNC_BACKING_STORE_QCAPS_V2_RESP_TYPE_INVALID4010	__le16	entry_size;4011	__le32	flags;4012	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_FLAGS_ENABLE_CTX_KIND_INIT            0x1UL4013	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_FLAGS_TYPE_VALID                      0x2UL4014	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_FLAGS_DRIVER_MANAGED_MEMORY           0x4UL4015	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_FLAGS_ROCE_QP_PSEUDO_STATIC_ALLOC     0x8UL4016	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_FLAGS_FW_DBG_TRACE                    0x10UL4017	__le32	instance_bit_map;4018	u8	ctx_init_value;4019	u8	ctx_init_offset;4020	u8	entry_multiple;4021	u8	rsvd;4022	__le32	max_num_entries;4023	__le32	min_num_entries;4024	__le16	next_valid_type;4025	u8	subtype_valid_cnt;4026	u8	exact_cnt_bit_map;4027	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_EXACT_CNT_BIT_MAP_SPLIT_ENTRY_0_EXACT     0x1UL4028	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_EXACT_CNT_BIT_MAP_SPLIT_ENTRY_1_EXACT     0x2UL4029	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_EXACT_CNT_BIT_MAP_SPLIT_ENTRY_2_EXACT     0x4UL4030	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_EXACT_CNT_BIT_MAP_SPLIT_ENTRY_3_EXACT     0x8UL4031	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_EXACT_CNT_BIT_MAP_UNUSED_MASK             0xf0UL4032	#define FUNC_BACKING_STORE_QCAPS_V2_RESP_EXACT_CNT_BIT_MAP_UNUSED_SFT              44033	__le32	split_entry_0;4034	__le32	split_entry_1;4035	__le32	split_entry_2;4036	__le32	split_entry_3;4037	u8	rsvd3[3];4038	u8	valid;4039};4040 4041/* hwrm_func_dbr_pacing_qcfg_input (size:128b/16B) */4042struct hwrm_func_dbr_pacing_qcfg_input {4043	__le16	req_type;4044	__le16	cmpl_ring;4045	__le16	seq_id;4046	__le16	target_id;4047	__le64	resp_addr;4048};4049 4050/* hwrm_func_dbr_pacing_qcfg_output (size:512b/64B) */4051struct hwrm_func_dbr_pacing_qcfg_output {4052	__le16	error_code;4053	__le16	req_type;4054	__le16	seq_id;4055	__le16	resp_len;4056	u8	flags;4057	#define FUNC_DBR_PACING_QCFG_RESP_FLAGS_DBR_NQ_EVENT_ENABLED     0x1UL4058	u8	unused_0[7];4059	__le32	dbr_stat_db_fifo_reg;4060	#define FUNC_DBR_PACING_QCFG_RESP_DBR_STAT_DB_FIFO_REG_ADDR_SPACE_MASK    0x3UL4061	#define FUNC_DBR_PACING_QCFG_RESP_DBR_STAT_DB_FIFO_REG_ADDR_SPACE_SFT     04062	#define FUNC_DBR_PACING_QCFG_RESP_DBR_STAT_DB_FIFO_REG_ADDR_SPACE_PCIE_CFG  0x0UL4063	#define FUNC_DBR_PACING_QCFG_RESP_DBR_STAT_DB_FIFO_REG_ADDR_SPACE_GRC       0x1UL4064	#define FUNC_DBR_PACING_QCFG_RESP_DBR_STAT_DB_FIFO_REG_ADDR_SPACE_BAR0      0x2UL4065	#define FUNC_DBR_PACING_QCFG_RESP_DBR_STAT_DB_FIFO_REG_ADDR_SPACE_BAR1      0x3UL4066	#define FUNC_DBR_PACING_QCFG_RESP_DBR_STAT_DB_FIFO_REG_ADDR_SPACE_LAST     FUNC_DBR_PACING_QCFG_RESP_DBR_STAT_DB_FIFO_REG_ADDR_SPACE_BAR14067	#define FUNC_DBR_PACING_QCFG_RESP_DBR_STAT_DB_FIFO_REG_ADDR_MASK          0xfffffffcUL4068	#define FUNC_DBR_PACING_QCFG_RESP_DBR_STAT_DB_FIFO_REG_ADDR_SFT           24069	__le32	dbr_stat_db_fifo_reg_watermark_mask;4070	u8	dbr_stat_db_fifo_reg_watermark_shift;4071	u8	unused_1[3];4072	__le32	dbr_stat_db_fifo_reg_fifo_room_mask;4073	u8	dbr_stat_db_fifo_reg_fifo_room_shift;4074	u8	unused_2[3];4075	__le32	dbr_throttling_aeq_arm_reg;4076	#define FUNC_DBR_PACING_QCFG_RESP_DBR_THROTTLING_AEQ_ARM_REG_ADDR_SPACE_MASK    0x3UL4077	#define FUNC_DBR_PACING_QCFG_RESP_DBR_THROTTLING_AEQ_ARM_REG_ADDR_SPACE_SFT     04078	#define FUNC_DBR_PACING_QCFG_RESP_DBR_THROTTLING_AEQ_ARM_REG_ADDR_SPACE_PCIE_CFG  0x0UL4079	#define FUNC_DBR_PACING_QCFG_RESP_DBR_THROTTLING_AEQ_ARM_REG_ADDR_SPACE_GRC       0x1UL4080	#define FUNC_DBR_PACING_QCFG_RESP_DBR_THROTTLING_AEQ_ARM_REG_ADDR_SPACE_BAR0      0x2UL4081	#define FUNC_DBR_PACING_QCFG_RESP_DBR_THROTTLING_AEQ_ARM_REG_ADDR_SPACE_BAR1      0x3UL4082	#define FUNC_DBR_PACING_QCFG_RESP_DBR_THROTTLING_AEQ_ARM_REG_ADDR_SPACE_LAST     FUNC_DBR_PACING_QCFG_RESP_DBR_THROTTLING_AEQ_ARM_REG_ADDR_SPACE_BAR14083	#define FUNC_DBR_PACING_QCFG_RESP_DBR_THROTTLING_AEQ_ARM_REG_ADDR_MASK          0xfffffffcUL4084	#define FUNC_DBR_PACING_QCFG_RESP_DBR_THROTTLING_AEQ_ARM_REG_ADDR_SFT           24085	u8	dbr_throttling_aeq_arm_reg_val;4086	u8	unused_3[3];4087	__le32	dbr_stat_db_max_fifo_depth;4088	__le32	primary_nq_id;4089	__le32	pacing_threshold;4090	u8	unused_4[7];4091	u8	valid;4092};4093 4094/* hwrm_func_drv_if_change_input (size:192b/24B) */4095struct hwrm_func_drv_if_change_input {4096	__le16	req_type;4097	__le16	cmpl_ring;4098	__le16	seq_id;4099	__le16	target_id;4100	__le64	resp_addr;4101	__le32	flags;4102	#define FUNC_DRV_IF_CHANGE_REQ_FLAGS_UP     0x1UL4103	__le32	unused;4104};4105 4106/* hwrm_func_drv_if_change_output (size:128b/16B) */4107struct hwrm_func_drv_if_change_output {4108	__le16	error_code;4109	__le16	req_type;4110	__le16	seq_id;4111	__le16	resp_len;4112	__le32	flags;4113	#define FUNC_DRV_IF_CHANGE_RESP_FLAGS_RESC_CHANGE           0x1UL4114	#define FUNC_DRV_IF_CHANGE_RESP_FLAGS_HOT_FW_RESET_DONE     0x2UL4115	#define FUNC_DRV_IF_CHANGE_RESP_FLAGS_CAPS_CHANGE           0x4UL4116	u8	unused_0[3];4117	u8	valid;4118};4119 4120/* hwrm_port_phy_cfg_input (size:512b/64B) */4121struct hwrm_port_phy_cfg_input {4122	__le16	req_type;4123	__le16	cmpl_ring;4124	__le16	seq_id;4125	__le16	target_id;4126	__le64	resp_addr;4127	__le32	flags;4128	#define PORT_PHY_CFG_REQ_FLAGS_RESET_PHY                  0x1UL4129	#define PORT_PHY_CFG_REQ_FLAGS_DEPRECATED                 0x2UL4130	#define PORT_PHY_CFG_REQ_FLAGS_FORCE                      0x4UL4131	#define PORT_PHY_CFG_REQ_FLAGS_RESTART_AUTONEG            0x8UL4132	#define PORT_PHY_CFG_REQ_FLAGS_EEE_ENABLE                 0x10UL4133	#define PORT_PHY_CFG_REQ_FLAGS_EEE_DISABLE                0x20UL4134	#define PORT_PHY_CFG_REQ_FLAGS_EEE_TX_LPI_ENABLE          0x40UL4135	#define PORT_PHY_CFG_REQ_FLAGS_EEE_TX_LPI_DISABLE         0x80UL4136	#define PORT_PHY_CFG_REQ_FLAGS_FEC_AUTONEG_ENABLE         0x100UL4137	#define PORT_PHY_CFG_REQ_FLAGS_FEC_AUTONEG_DISABLE        0x200UL4138	#define PORT_PHY_CFG_REQ_FLAGS_FEC_CLAUSE74_ENABLE        0x400UL4139	#define PORT_PHY_CFG_REQ_FLAGS_FEC_CLAUSE74_DISABLE       0x800UL4140	#define PORT_PHY_CFG_REQ_FLAGS_FEC_CLAUSE91_ENABLE        0x1000UL4141	#define PORT_PHY_CFG_REQ_FLAGS_FEC_CLAUSE91_DISABLE       0x2000UL4142	#define PORT_PHY_CFG_REQ_FLAGS_FORCE_LINK_DWN             0x4000UL4143	#define PORT_PHY_CFG_REQ_FLAGS_FEC_RS544_1XN_ENABLE       0x8000UL4144	#define PORT_PHY_CFG_REQ_FLAGS_FEC_RS544_1XN_DISABLE      0x10000UL4145	#define PORT_PHY_CFG_REQ_FLAGS_FEC_RS544_IEEE_ENABLE      0x20000UL4146	#define PORT_PHY_CFG_REQ_FLAGS_FEC_RS544_IEEE_DISABLE     0x40000UL4147	#define PORT_PHY_CFG_REQ_FLAGS_FEC_RS272_1XN_ENABLE       0x80000UL4148	#define PORT_PHY_CFG_REQ_FLAGS_FEC_RS272_1XN_DISABLE      0x100000UL4149	#define PORT_PHY_CFG_REQ_FLAGS_FEC_RS272_IEEE_ENABLE      0x200000UL4150	#define PORT_PHY_CFG_REQ_FLAGS_FEC_RS272_IEEE_DISABLE     0x400000UL4151	__le32	enables;4152	#define PORT_PHY_CFG_REQ_ENABLES_AUTO_MODE                     0x1UL4153	#define PORT_PHY_CFG_REQ_ENABLES_AUTO_DUPLEX                   0x2UL4154	#define PORT_PHY_CFG_REQ_ENABLES_AUTO_PAUSE                    0x4UL4155	#define PORT_PHY_CFG_REQ_ENABLES_AUTO_LINK_SPEED               0x8UL4156	#define PORT_PHY_CFG_REQ_ENABLES_AUTO_LINK_SPEED_MASK          0x10UL4157	#define PORT_PHY_CFG_REQ_ENABLES_WIRESPEED                     0x20UL4158	#define PORT_PHY_CFG_REQ_ENABLES_LPBK                          0x40UL4159	#define PORT_PHY_CFG_REQ_ENABLES_PREEMPHASIS                   0x80UL4160	#define PORT_PHY_CFG_REQ_ENABLES_FORCE_PAUSE                   0x100UL4161	#define PORT_PHY_CFG_REQ_ENABLES_EEE_LINK_SPEED_MASK           0x200UL4162	#define PORT_PHY_CFG_REQ_ENABLES_TX_LPI_TIMER                  0x400UL4163	#define PORT_PHY_CFG_REQ_ENABLES_FORCE_PAM4_LINK_SPEED         0x800UL4164	#define PORT_PHY_CFG_REQ_ENABLES_AUTO_PAM4_LINK_SPEED_MASK     0x1000UL4165	#define PORT_PHY_CFG_REQ_ENABLES_FORCE_LINK_SPEEDS2            0x2000UL4166	#define PORT_PHY_CFG_REQ_ENABLES_AUTO_LINK_SPEEDS2_MASK        0x4000UL4167	__le16	port_id;4168	__le16	force_link_speed;4169	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEED_100MB 0x1UL4170	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEED_1GB   0xaUL4171	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEED_2GB   0x14UL4172	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEED_2_5GB 0x19UL4173	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEED_10GB  0x64UL4174	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEED_20GB  0xc8UL4175	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEED_25GB  0xfaUL4176	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEED_40GB  0x190UL4177	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEED_50GB  0x1f4UL4178	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEED_100GB 0x3e8UL4179	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEED_10MB  0xffffUL4180	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEED_LAST PORT_PHY_CFG_REQ_FORCE_LINK_SPEED_10MB4181	u8	auto_mode;4182	#define PORT_PHY_CFG_REQ_AUTO_MODE_NONE         0x0UL4183	#define PORT_PHY_CFG_REQ_AUTO_MODE_ALL_SPEEDS   0x1UL4184	#define PORT_PHY_CFG_REQ_AUTO_MODE_ONE_SPEED    0x2UL4185	#define PORT_PHY_CFG_REQ_AUTO_MODE_ONE_OR_BELOW 0x3UL4186	#define PORT_PHY_CFG_REQ_AUTO_MODE_SPEED_MASK   0x4UL4187	#define PORT_PHY_CFG_REQ_AUTO_MODE_LAST        PORT_PHY_CFG_REQ_AUTO_MODE_SPEED_MASK4188	u8	auto_duplex;4189	#define PORT_PHY_CFG_REQ_AUTO_DUPLEX_HALF 0x0UL4190	#define PORT_PHY_CFG_REQ_AUTO_DUPLEX_FULL 0x1UL4191	#define PORT_PHY_CFG_REQ_AUTO_DUPLEX_BOTH 0x2UL4192	#define PORT_PHY_CFG_REQ_AUTO_DUPLEX_LAST PORT_PHY_CFG_REQ_AUTO_DUPLEX_BOTH4193	u8	auto_pause;4194	#define PORT_PHY_CFG_REQ_AUTO_PAUSE_TX                0x1UL4195	#define PORT_PHY_CFG_REQ_AUTO_PAUSE_RX                0x2UL4196	#define PORT_PHY_CFG_REQ_AUTO_PAUSE_AUTONEG_PAUSE     0x4UL4197	u8	mgmt_flag;4198	#define PORT_PHY_CFG_REQ_MGMT_FLAG_LINK_RELEASE     0x1UL4199	#define PORT_PHY_CFG_REQ_MGMT_FLAG_MGMT_VALID       0x80UL4200	__le16	auto_link_speed;4201	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_100MB 0x1UL4202	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_1GB   0xaUL4203	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_2GB   0x14UL4204	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_2_5GB 0x19UL4205	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_10GB  0x64UL4206	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_20GB  0xc8UL4207	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_25GB  0xfaUL4208	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_40GB  0x190UL4209	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_50GB  0x1f4UL4210	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_100GB 0x3e8UL4211	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_10MB  0xffffUL4212	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_LAST PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_10MB4213	__le16	auto_link_speed_mask;4214	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_MASK_100MBHD     0x1UL4215	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_MASK_100MB       0x2UL4216	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_MASK_1GBHD       0x4UL4217	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_MASK_1GB         0x8UL4218	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_MASK_2GB         0x10UL4219	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_MASK_2_5GB       0x20UL4220	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_MASK_10GB        0x40UL4221	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_MASK_20GB        0x80UL4222	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_MASK_25GB        0x100UL4223	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_MASK_40GB        0x200UL4224	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_MASK_50GB        0x400UL4225	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_MASK_100GB       0x800UL4226	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_MASK_10MBHD      0x1000UL4227	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEED_MASK_10MB        0x2000UL4228	u8	wirespeed;4229	#define PORT_PHY_CFG_REQ_WIRESPEED_OFF 0x0UL4230	#define PORT_PHY_CFG_REQ_WIRESPEED_ON  0x1UL4231	#define PORT_PHY_CFG_REQ_WIRESPEED_LAST PORT_PHY_CFG_REQ_WIRESPEED_ON4232	u8	lpbk;4233	#define PORT_PHY_CFG_REQ_LPBK_NONE     0x0UL4234	#define PORT_PHY_CFG_REQ_LPBK_LOCAL    0x1UL4235	#define PORT_PHY_CFG_REQ_LPBK_REMOTE   0x2UL4236	#define PORT_PHY_CFG_REQ_LPBK_EXTERNAL 0x3UL4237	#define PORT_PHY_CFG_REQ_LPBK_LAST    PORT_PHY_CFG_REQ_LPBK_EXTERNAL4238	u8	force_pause;4239	#define PORT_PHY_CFG_REQ_FORCE_PAUSE_TX     0x1UL4240	#define PORT_PHY_CFG_REQ_FORCE_PAUSE_RX     0x2UL4241	u8	unused_1;4242	__le32	preemphasis;4243	__le16	eee_link_speed_mask;4244	#define PORT_PHY_CFG_REQ_EEE_LINK_SPEED_MASK_RSVD1     0x1UL4245	#define PORT_PHY_CFG_REQ_EEE_LINK_SPEED_MASK_100MB     0x2UL4246	#define PORT_PHY_CFG_REQ_EEE_LINK_SPEED_MASK_RSVD2     0x4UL4247	#define PORT_PHY_CFG_REQ_EEE_LINK_SPEED_MASK_1GB       0x8UL4248	#define PORT_PHY_CFG_REQ_EEE_LINK_SPEED_MASK_RSVD3     0x10UL4249	#define PORT_PHY_CFG_REQ_EEE_LINK_SPEED_MASK_RSVD4     0x20UL4250	#define PORT_PHY_CFG_REQ_EEE_LINK_SPEED_MASK_10GB      0x40UL4251	__le16	force_pam4_link_speed;4252	#define PORT_PHY_CFG_REQ_FORCE_PAM4_LINK_SPEED_50GB  0x1f4UL4253	#define PORT_PHY_CFG_REQ_FORCE_PAM4_LINK_SPEED_100GB 0x3e8UL4254	#define PORT_PHY_CFG_REQ_FORCE_PAM4_LINK_SPEED_200GB 0x7d0UL4255	#define PORT_PHY_CFG_REQ_FORCE_PAM4_LINK_SPEED_LAST PORT_PHY_CFG_REQ_FORCE_PAM4_LINK_SPEED_200GB4256	__le32	tx_lpi_timer;4257	#define PORT_PHY_CFG_REQ_TX_LPI_TIMER_MASK 0xffffffUL4258	#define PORT_PHY_CFG_REQ_TX_LPI_TIMER_SFT 04259	__le16	auto_link_pam4_speed_mask;4260	#define PORT_PHY_CFG_REQ_AUTO_LINK_PAM4_SPEED_MASK_50G      0x1UL4261	#define PORT_PHY_CFG_REQ_AUTO_LINK_PAM4_SPEED_MASK_100G     0x2UL4262	#define PORT_PHY_CFG_REQ_AUTO_LINK_PAM4_SPEED_MASK_200G     0x4UL4263	__le16	force_link_speeds2;4264	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEEDS2_1GB            0xaUL4265	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEEDS2_10GB           0x64UL4266	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEEDS2_25GB           0xfaUL4267	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEEDS2_40GB           0x190UL4268	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEEDS2_50GB           0x1f4UL4269	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEEDS2_100GB          0x3e8UL4270	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEEDS2_50GB_PAM4_56   0x1f5UL4271	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEEDS2_100GB_PAM4_56  0x3e9UL4272	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEEDS2_200GB_PAM4_56  0x7d1UL4273	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEEDS2_400GB_PAM4_56  0xfa1UL4274	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEEDS2_100GB_PAM4_112 0x3eaUL4275	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEEDS2_200GB_PAM4_112 0x7d2UL4276	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEEDS2_400GB_PAM4_112 0xfa2UL4277	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEEDS2_800GB_PAM4_112 0x1f42UL4278	#define PORT_PHY_CFG_REQ_FORCE_LINK_SPEEDS2_LAST          PORT_PHY_CFG_REQ_FORCE_LINK_SPEEDS2_800GB_PAM4_1124279	__le16	auto_link_speeds2_mask;4280	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEEDS2_MASK_1GB                0x1UL4281	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEEDS2_MASK_10GB               0x2UL4282	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEEDS2_MASK_25GB               0x4UL4283	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEEDS2_MASK_40GB               0x8UL4284	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEEDS2_MASK_50GB               0x10UL4285	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEEDS2_MASK_100GB              0x20UL4286	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEEDS2_MASK_50GB_PAM4_56       0x40UL4287	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEEDS2_MASK_100GB_PAM4_56      0x80UL4288	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEEDS2_MASK_200GB_PAM4_56      0x100UL4289	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEEDS2_MASK_400GB_PAM4_56      0x200UL4290	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEEDS2_MASK_100GB_PAM4_112     0x400UL4291	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEEDS2_MASK_200GB_PAM4_112     0x800UL4292	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEEDS2_MASK_400GB_PAM4_112     0x1000UL4293	#define PORT_PHY_CFG_REQ_AUTO_LINK_SPEEDS2_MASK_800GB_PAM4_112     0x2000UL4294	u8	unused_2[6];4295};4296 4297/* hwrm_port_phy_cfg_output (size:128b/16B) */4298struct hwrm_port_phy_cfg_output {4299	__le16	error_code;4300	__le16	req_type;4301	__le16	seq_id;4302	__le16	resp_len;4303	u8	unused_0[7];4304	u8	valid;4305};4306 4307/* hwrm_port_phy_cfg_cmd_err (size:64b/8B) */4308struct hwrm_port_phy_cfg_cmd_err {4309	u8	code;4310	#define PORT_PHY_CFG_CMD_ERR_CODE_UNKNOWN       0x0UL4311	#define PORT_PHY_CFG_CMD_ERR_CODE_ILLEGAL_SPEED 0x1UL4312	#define PORT_PHY_CFG_CMD_ERR_CODE_RETRY         0x2UL4313	#define PORT_PHY_CFG_CMD_ERR_CODE_LAST         PORT_PHY_CFG_CMD_ERR_CODE_RETRY4314	u8	unused_0[7];4315};4316 4317/* hwrm_port_phy_qcfg_input (size:192b/24B) */4318struct hwrm_port_phy_qcfg_input {4319	__le16	req_type;4320	__le16	cmpl_ring;4321	__le16	seq_id;4322	__le16	target_id;4323	__le64	resp_addr;4324	__le16	port_id;4325	u8	unused_0[6];4326};4327 4328/* hwrm_port_phy_qcfg_output (size:832b/104B) */4329struct hwrm_port_phy_qcfg_output {4330	__le16	error_code;4331	__le16	req_type;4332	__le16	seq_id;4333	__le16	resp_len;4334	u8	link;4335	#define PORT_PHY_QCFG_RESP_LINK_NO_LINK 0x0UL4336	#define PORT_PHY_QCFG_RESP_LINK_SIGNAL  0x1UL4337	#define PORT_PHY_QCFG_RESP_LINK_LINK    0x2UL4338	#define PORT_PHY_QCFG_RESP_LINK_LAST   PORT_PHY_QCFG_RESP_LINK_LINK4339	u8	active_fec_signal_mode;4340	#define PORT_PHY_QCFG_RESP_SIGNAL_MODE_MASK                0xfUL4341	#define PORT_PHY_QCFG_RESP_SIGNAL_MODE_SFT                 04342	#define PORT_PHY_QCFG_RESP_SIGNAL_MODE_NRZ                   0x0UL4343	#define PORT_PHY_QCFG_RESP_SIGNAL_MODE_PAM4                  0x1UL4344	#define PORT_PHY_QCFG_RESP_SIGNAL_MODE_PAM4_112              0x2UL4345	#define PORT_PHY_QCFG_RESP_SIGNAL_MODE_LAST                 PORT_PHY_QCFG_RESP_SIGNAL_MODE_PAM4_1124346	#define PORT_PHY_QCFG_RESP_ACTIVE_FEC_MASK                 0xf0UL4347	#define PORT_PHY_QCFG_RESP_ACTIVE_FEC_SFT                  44348	#define PORT_PHY_QCFG_RESP_ACTIVE_FEC_FEC_NONE_ACTIVE        (0x0UL << 4)4349	#define PORT_PHY_QCFG_RESP_ACTIVE_FEC_FEC_CLAUSE74_ACTIVE    (0x1UL << 4)4350	#define PORT_PHY_QCFG_RESP_ACTIVE_FEC_FEC_CLAUSE91_ACTIVE    (0x2UL << 4)4351	#define PORT_PHY_QCFG_RESP_ACTIVE_FEC_FEC_RS544_1XN_ACTIVE   (0x3UL << 4)4352	#define PORT_PHY_QCFG_RESP_ACTIVE_FEC_FEC_RS544_IEEE_ACTIVE  (0x4UL << 4)4353	#define PORT_PHY_QCFG_RESP_ACTIVE_FEC_FEC_RS272_1XN_ACTIVE   (0x5UL << 4)4354	#define PORT_PHY_QCFG_RESP_ACTIVE_FEC_FEC_RS272_IEEE_ACTIVE  (0x6UL << 4)4355	#define PORT_PHY_QCFG_RESP_ACTIVE_FEC_LAST                  PORT_PHY_QCFG_RESP_ACTIVE_FEC_FEC_RS272_IEEE_ACTIVE4356	__le16	link_speed;4357	#define PORT_PHY_QCFG_RESP_LINK_SPEED_100MB 0x1UL4358	#define PORT_PHY_QCFG_RESP_LINK_SPEED_1GB   0xaUL4359	#define PORT_PHY_QCFG_RESP_LINK_SPEED_2GB   0x14UL4360	#define PORT_PHY_QCFG_RESP_LINK_SPEED_2_5GB 0x19UL4361	#define PORT_PHY_QCFG_RESP_LINK_SPEED_10GB  0x64UL4362	#define PORT_PHY_QCFG_RESP_LINK_SPEED_20GB  0xc8UL4363	#define PORT_PHY_QCFG_RESP_LINK_SPEED_25GB  0xfaUL4364	#define PORT_PHY_QCFG_RESP_LINK_SPEED_40GB  0x190UL4365	#define PORT_PHY_QCFG_RESP_LINK_SPEED_50GB  0x1f4UL4366	#define PORT_PHY_QCFG_RESP_LINK_SPEED_100GB 0x3e8UL4367	#define PORT_PHY_QCFG_RESP_LINK_SPEED_200GB 0x7d0UL4368	#define PORT_PHY_QCFG_RESP_LINK_SPEED_400GB 0xfa0UL4369	#define PORT_PHY_QCFG_RESP_LINK_SPEED_800GB 0x1f40UL4370	#define PORT_PHY_QCFG_RESP_LINK_SPEED_10MB  0xffffUL4371	#define PORT_PHY_QCFG_RESP_LINK_SPEED_LAST PORT_PHY_QCFG_RESP_LINK_SPEED_10MB4372	u8	duplex_cfg;4373	#define PORT_PHY_QCFG_RESP_DUPLEX_CFG_HALF 0x0UL4374	#define PORT_PHY_QCFG_RESP_DUPLEX_CFG_FULL 0x1UL4375	#define PORT_PHY_QCFG_RESP_DUPLEX_CFG_LAST PORT_PHY_QCFG_RESP_DUPLEX_CFG_FULL4376	u8	pause;4377	#define PORT_PHY_QCFG_RESP_PAUSE_TX     0x1UL4378	#define PORT_PHY_QCFG_RESP_PAUSE_RX     0x2UL4379	__le16	support_speeds;4380	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS_100MBHD     0x1UL4381	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS_100MB       0x2UL4382	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS_1GBHD       0x4UL4383	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS_1GB         0x8UL4384	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS_2GB         0x10UL4385	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS_2_5GB       0x20UL4386	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS_10GB        0x40UL4387	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS_20GB        0x80UL4388	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS_25GB        0x100UL4389	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS_40GB        0x200UL4390	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS_50GB        0x400UL4391	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS_100GB       0x800UL4392	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS_10MBHD      0x1000UL4393	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS_10MB        0x2000UL4394	__le16	force_link_speed;4395	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEED_100MB 0x1UL4396	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEED_1GB   0xaUL4397	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEED_2GB   0x14UL4398	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEED_2_5GB 0x19UL4399	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEED_10GB  0x64UL4400	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEED_20GB  0xc8UL4401	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEED_25GB  0xfaUL4402	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEED_40GB  0x190UL4403	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEED_50GB  0x1f4UL4404	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEED_100GB 0x3e8UL4405	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEED_10MB  0xffffUL4406	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEED_LAST PORT_PHY_QCFG_RESP_FORCE_LINK_SPEED_10MB4407	u8	auto_mode;4408	#define PORT_PHY_QCFG_RESP_AUTO_MODE_NONE         0x0UL4409	#define PORT_PHY_QCFG_RESP_AUTO_MODE_ALL_SPEEDS   0x1UL4410	#define PORT_PHY_QCFG_RESP_AUTO_MODE_ONE_SPEED    0x2UL4411	#define PORT_PHY_QCFG_RESP_AUTO_MODE_ONE_OR_BELOW 0x3UL4412	#define PORT_PHY_QCFG_RESP_AUTO_MODE_SPEED_MASK   0x4UL4413	#define PORT_PHY_QCFG_RESP_AUTO_MODE_LAST        PORT_PHY_QCFG_RESP_AUTO_MODE_SPEED_MASK4414	u8	auto_pause;4415	#define PORT_PHY_QCFG_RESP_AUTO_PAUSE_TX                0x1UL4416	#define PORT_PHY_QCFG_RESP_AUTO_PAUSE_RX                0x2UL4417	#define PORT_PHY_QCFG_RESP_AUTO_PAUSE_AUTONEG_PAUSE     0x4UL4418	__le16	auto_link_speed;4419	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_100MB 0x1UL4420	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_1GB   0xaUL4421	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_2GB   0x14UL4422	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_2_5GB 0x19UL4423	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_10GB  0x64UL4424	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_20GB  0xc8UL4425	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_25GB  0xfaUL4426	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_40GB  0x190UL4427	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_50GB  0x1f4UL4428	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_100GB 0x3e8UL4429	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_10MB  0xffffUL4430	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_LAST PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_10MB4431	__le16	auto_link_speed_mask;4432	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_MASK_100MBHD     0x1UL4433	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_MASK_100MB       0x2UL4434	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_MASK_1GBHD       0x4UL4435	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_MASK_1GB         0x8UL4436	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_MASK_2GB         0x10UL4437	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_MASK_2_5GB       0x20UL4438	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_MASK_10GB        0x40UL4439	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_MASK_20GB        0x80UL4440	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_MASK_25GB        0x100UL4441	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_MASK_40GB        0x200UL4442	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_MASK_50GB        0x400UL4443	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_MASK_100GB       0x800UL4444	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_MASK_10MBHD      0x1000UL4445	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEED_MASK_10MB        0x2000UL4446	u8	wirespeed;4447	#define PORT_PHY_QCFG_RESP_WIRESPEED_OFF 0x0UL4448	#define PORT_PHY_QCFG_RESP_WIRESPEED_ON  0x1UL4449	#define PORT_PHY_QCFG_RESP_WIRESPEED_LAST PORT_PHY_QCFG_RESP_WIRESPEED_ON4450	u8	lpbk;4451	#define PORT_PHY_QCFG_RESP_LPBK_NONE     0x0UL4452	#define PORT_PHY_QCFG_RESP_LPBK_LOCAL    0x1UL4453	#define PORT_PHY_QCFG_RESP_LPBK_REMOTE   0x2UL4454	#define PORT_PHY_QCFG_RESP_LPBK_EXTERNAL 0x3UL4455	#define PORT_PHY_QCFG_RESP_LPBK_LAST    PORT_PHY_QCFG_RESP_LPBK_EXTERNAL4456	u8	force_pause;4457	#define PORT_PHY_QCFG_RESP_FORCE_PAUSE_TX     0x1UL4458	#define PORT_PHY_QCFG_RESP_FORCE_PAUSE_RX     0x2UL4459	u8	module_status;4460	#define PORT_PHY_QCFG_RESP_MODULE_STATUS_NONE          0x0UL4461	#define PORT_PHY_QCFG_RESP_MODULE_STATUS_DISABLETX     0x1UL4462	#define PORT_PHY_QCFG_RESP_MODULE_STATUS_WARNINGMSG    0x2UL4463	#define PORT_PHY_QCFG_RESP_MODULE_STATUS_PWRDOWN       0x3UL4464	#define PORT_PHY_QCFG_RESP_MODULE_STATUS_NOTINSERTED   0x4UL4465	#define PORT_PHY_QCFG_RESP_MODULE_STATUS_CURRENTFAULT  0x5UL4466	#define PORT_PHY_QCFG_RESP_MODULE_STATUS_OVERHEATED    0x6UL4467	#define PORT_PHY_QCFG_RESP_MODULE_STATUS_NOTAPPLICABLE 0xffUL4468	#define PORT_PHY_QCFG_RESP_MODULE_STATUS_LAST         PORT_PHY_QCFG_RESP_MODULE_STATUS_NOTAPPLICABLE4469	__le32	preemphasis;4470	u8	phy_maj;4471	u8	phy_min;4472	u8	phy_bld;4473	u8	phy_type;4474	#define PORT_PHY_QCFG_RESP_PHY_TYPE_UNKNOWN          0x0UL4475	#define PORT_PHY_QCFG_RESP_PHY_TYPE_BASECR           0x1UL4476	#define PORT_PHY_QCFG_RESP_PHY_TYPE_BASEKR4          0x2UL4477	#define PORT_PHY_QCFG_RESP_PHY_TYPE_BASELR           0x3UL4478	#define PORT_PHY_QCFG_RESP_PHY_TYPE_BASESR           0x4UL4479	#define PORT_PHY_QCFG_RESP_PHY_TYPE_BASEKR2          0x5UL4480	#define PORT_PHY_QCFG_RESP_PHY_TYPE_BASEKX           0x6UL4481	#define PORT_PHY_QCFG_RESP_PHY_TYPE_BASEKR           0x7UL4482	#define PORT_PHY_QCFG_RESP_PHY_TYPE_BASET            0x8UL4483	#define PORT_PHY_QCFG_RESP_PHY_TYPE_BASETE           0x9UL4484	#define PORT_PHY_QCFG_RESP_PHY_TYPE_SGMIIEXTPHY      0xaUL4485	#define PORT_PHY_QCFG_RESP_PHY_TYPE_25G_BASECR_CA_L  0xbUL4486	#define PORT_PHY_QCFG_RESP_PHY_TYPE_25G_BASECR_CA_S  0xcUL4487	#define PORT_PHY_QCFG_RESP_PHY_TYPE_25G_BASECR_CA_N  0xdUL4488	#define PORT_PHY_QCFG_RESP_PHY_TYPE_25G_BASESR       0xeUL4489	#define PORT_PHY_QCFG_RESP_PHY_TYPE_100G_BASECR4     0xfUL4490	#define PORT_PHY_QCFG_RESP_PHY_TYPE_100G_BASESR4     0x10UL4491	#define PORT_PHY_QCFG_RESP_PHY_TYPE_100G_BASELR4     0x11UL4492	#define PORT_PHY_QCFG_RESP_PHY_TYPE_100G_BASEER4     0x12UL4493	#define PORT_PHY_QCFG_RESP_PHY_TYPE_100G_BASESR10    0x13UL4494	#define PORT_PHY_QCFG_RESP_PHY_TYPE_40G_BASECR4      0x14UL4495	#define PORT_PHY_QCFG_RESP_PHY_TYPE_40G_BASESR4      0x15UL4496	#define PORT_PHY_QCFG_RESP_PHY_TYPE_40G_BASELR4      0x16UL4497	#define PORT_PHY_QCFG_RESP_PHY_TYPE_40G_BASEER4      0x17UL4498	#define PORT_PHY_QCFG_RESP_PHY_TYPE_40G_ACTIVE_CABLE 0x18UL4499	#define PORT_PHY_QCFG_RESP_PHY_TYPE_1G_BASET         0x19UL4500	#define PORT_PHY_QCFG_RESP_PHY_TYPE_1G_BASESX        0x1aUL4501	#define PORT_PHY_QCFG_RESP_PHY_TYPE_1G_BASECX        0x1bUL4502	#define PORT_PHY_QCFG_RESP_PHY_TYPE_200G_BASECR4     0x1cUL4503	#define PORT_PHY_QCFG_RESP_PHY_TYPE_200G_BASESR4     0x1dUL4504	#define PORT_PHY_QCFG_RESP_PHY_TYPE_200G_BASELR4     0x1eUL4505	#define PORT_PHY_QCFG_RESP_PHY_TYPE_200G_BASEER4     0x1fUL4506	#define PORT_PHY_QCFG_RESP_PHY_TYPE_50G_BASECR       0x20UL4507	#define PORT_PHY_QCFG_RESP_PHY_TYPE_50G_BASESR       0x21UL4508	#define PORT_PHY_QCFG_RESP_PHY_TYPE_50G_BASELR       0x22UL4509	#define PORT_PHY_QCFG_RESP_PHY_TYPE_50G_BASEER       0x23UL4510	#define PORT_PHY_QCFG_RESP_PHY_TYPE_100G_BASECR2     0x24UL4511	#define PORT_PHY_QCFG_RESP_PHY_TYPE_100G_BASESR2     0x25UL4512	#define PORT_PHY_QCFG_RESP_PHY_TYPE_100G_BASELR2     0x26UL4513	#define PORT_PHY_QCFG_RESP_PHY_TYPE_100G_BASEER2     0x27UL4514	#define PORT_PHY_QCFG_RESP_PHY_TYPE_100G_BASECR      0x28UL4515	#define PORT_PHY_QCFG_RESP_PHY_TYPE_100G_BASESR      0x29UL4516	#define PORT_PHY_QCFG_RESP_PHY_TYPE_100G_BASELR      0x2aUL4517	#define PORT_PHY_QCFG_RESP_PHY_TYPE_100G_BASEER      0x2bUL4518	#define PORT_PHY_QCFG_RESP_PHY_TYPE_200G_BASECR2     0x2cUL4519	#define PORT_PHY_QCFG_RESP_PHY_TYPE_200G_BASESR2     0x2dUL4520	#define PORT_PHY_QCFG_RESP_PHY_TYPE_200G_BASELR2     0x2eUL4521	#define PORT_PHY_QCFG_RESP_PHY_TYPE_200G_BASEER2     0x2fUL4522	#define PORT_PHY_QCFG_RESP_PHY_TYPE_400G_BASECR8     0x30UL4523	#define PORT_PHY_QCFG_RESP_PHY_TYPE_400G_BASESR8     0x31UL4524	#define PORT_PHY_QCFG_RESP_PHY_TYPE_400G_BASELR8     0x32UL4525	#define PORT_PHY_QCFG_RESP_PHY_TYPE_400G_BASEER8     0x33UL4526	#define PORT_PHY_QCFG_RESP_PHY_TYPE_400G_BASECR4     0x34UL4527	#define PORT_PHY_QCFG_RESP_PHY_TYPE_400G_BASESR4     0x35UL4528	#define PORT_PHY_QCFG_RESP_PHY_TYPE_400G_BASELR4     0x36UL4529	#define PORT_PHY_QCFG_RESP_PHY_TYPE_400G_BASEER4     0x37UL4530	#define PORT_PHY_QCFG_RESP_PHY_TYPE_800G_BASECR8     0x38UL4531	#define PORT_PHY_QCFG_RESP_PHY_TYPE_800G_BASESR8     0x39UL4532	#define PORT_PHY_QCFG_RESP_PHY_TYPE_800G_BASELR8     0x3aUL4533	#define PORT_PHY_QCFG_RESP_PHY_TYPE_800G_BASEER8     0x3bUL4534	#define PORT_PHY_QCFG_RESP_PHY_TYPE_800G_BASEFR8     0x3cUL4535	#define PORT_PHY_QCFG_RESP_PHY_TYPE_800G_BASEDR8     0x3dUL4536	#define PORT_PHY_QCFG_RESP_PHY_TYPE_LAST            PORT_PHY_QCFG_RESP_PHY_TYPE_800G_BASEDR84537	u8	media_type;4538	#define PORT_PHY_QCFG_RESP_MEDIA_TYPE_UNKNOWN 0x0UL4539	#define PORT_PHY_QCFG_RESP_MEDIA_TYPE_TP      0x1UL4540	#define PORT_PHY_QCFG_RESP_MEDIA_TYPE_DAC     0x2UL4541	#define PORT_PHY_QCFG_RESP_MEDIA_TYPE_FIBRE   0x3UL4542	#define PORT_PHY_QCFG_RESP_MEDIA_TYPE_LAST   PORT_PHY_QCFG_RESP_MEDIA_TYPE_FIBRE4543	u8	xcvr_pkg_type;4544	#define PORT_PHY_QCFG_RESP_XCVR_PKG_TYPE_XCVR_INTERNAL 0x1UL4545	#define PORT_PHY_QCFG_RESP_XCVR_PKG_TYPE_XCVR_EXTERNAL 0x2UL4546	#define PORT_PHY_QCFG_RESP_XCVR_PKG_TYPE_LAST         PORT_PHY_QCFG_RESP_XCVR_PKG_TYPE_XCVR_EXTERNAL4547	u8	eee_config_phy_addr;4548	#define PORT_PHY_QCFG_RESP_PHY_ADDR_MASK              0x1fUL4549	#define PORT_PHY_QCFG_RESP_PHY_ADDR_SFT               04550	#define PORT_PHY_QCFG_RESP_EEE_CONFIG_MASK            0xe0UL4551	#define PORT_PHY_QCFG_RESP_EEE_CONFIG_SFT             54552	#define PORT_PHY_QCFG_RESP_EEE_CONFIG_EEE_ENABLED      0x20UL4553	#define PORT_PHY_QCFG_RESP_EEE_CONFIG_EEE_ACTIVE       0x40UL4554	#define PORT_PHY_QCFG_RESP_EEE_CONFIG_EEE_TX_LPI       0x80UL4555	u8	parallel_detect;4556	#define PORT_PHY_QCFG_RESP_PARALLEL_DETECT     0x1UL4557	__le16	link_partner_adv_speeds;4558	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_SPEEDS_100MBHD     0x1UL4559	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_SPEEDS_100MB       0x2UL4560	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_SPEEDS_1GBHD       0x4UL4561	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_SPEEDS_1GB         0x8UL4562	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_SPEEDS_2GB         0x10UL4563	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_SPEEDS_2_5GB       0x20UL4564	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_SPEEDS_10GB        0x40UL4565	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_SPEEDS_20GB        0x80UL4566	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_SPEEDS_25GB        0x100UL4567	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_SPEEDS_40GB        0x200UL4568	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_SPEEDS_50GB        0x400UL4569	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_SPEEDS_100GB       0x800UL4570	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_SPEEDS_10MBHD      0x1000UL4571	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_SPEEDS_10MB        0x2000UL4572	u8	link_partner_adv_auto_mode;4573	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_AUTO_MODE_NONE         0x0UL4574	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_AUTO_MODE_ALL_SPEEDS   0x1UL4575	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_AUTO_MODE_ONE_SPEED    0x2UL4576	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_AUTO_MODE_ONE_OR_BELOW 0x3UL4577	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_AUTO_MODE_SPEED_MASK   0x4UL4578	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_AUTO_MODE_LAST        PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_AUTO_MODE_SPEED_MASK4579	u8	link_partner_adv_pause;4580	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_PAUSE_TX     0x1UL4581	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_PAUSE_RX     0x2UL4582	__le16	adv_eee_link_speed_mask;4583	#define PORT_PHY_QCFG_RESP_ADV_EEE_LINK_SPEED_MASK_RSVD1     0x1UL4584	#define PORT_PHY_QCFG_RESP_ADV_EEE_LINK_SPEED_MASK_100MB     0x2UL4585	#define PORT_PHY_QCFG_RESP_ADV_EEE_LINK_SPEED_MASK_RSVD2     0x4UL4586	#define PORT_PHY_QCFG_RESP_ADV_EEE_LINK_SPEED_MASK_1GB       0x8UL4587	#define PORT_PHY_QCFG_RESP_ADV_EEE_LINK_SPEED_MASK_RSVD3     0x10UL4588	#define PORT_PHY_QCFG_RESP_ADV_EEE_LINK_SPEED_MASK_RSVD4     0x20UL4589	#define PORT_PHY_QCFG_RESP_ADV_EEE_LINK_SPEED_MASK_10GB      0x40UL4590	__le16	link_partner_adv_eee_link_speed_mask;4591	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_EEE_LINK_SPEED_MASK_RSVD1     0x1UL4592	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_EEE_LINK_SPEED_MASK_100MB     0x2UL4593	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_EEE_LINK_SPEED_MASK_RSVD2     0x4UL4594	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_EEE_LINK_SPEED_MASK_1GB       0x8UL4595	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_EEE_LINK_SPEED_MASK_RSVD3     0x10UL4596	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_EEE_LINK_SPEED_MASK_RSVD4     0x20UL4597	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_ADV_EEE_LINK_SPEED_MASK_10GB      0x40UL4598	__le32	xcvr_identifier_type_tx_lpi_timer;4599	#define PORT_PHY_QCFG_RESP_TX_LPI_TIMER_MASK            0xffffffUL4600	#define PORT_PHY_QCFG_RESP_TX_LPI_TIMER_SFT             04601	#define PORT_PHY_QCFG_RESP_XCVR_IDENTIFIER_TYPE_MASK    0xff000000UL4602	#define PORT_PHY_QCFG_RESP_XCVR_IDENTIFIER_TYPE_SFT     244603	#define PORT_PHY_QCFG_RESP_XCVR_IDENTIFIER_TYPE_UNKNOWN   (0x0UL << 24)4604	#define PORT_PHY_QCFG_RESP_XCVR_IDENTIFIER_TYPE_SFP       (0x3UL << 24)4605	#define PORT_PHY_QCFG_RESP_XCVR_IDENTIFIER_TYPE_QSFP      (0xcUL << 24)4606	#define PORT_PHY_QCFG_RESP_XCVR_IDENTIFIER_TYPE_QSFPPLUS  (0xdUL << 24)4607	#define PORT_PHY_QCFG_RESP_XCVR_IDENTIFIER_TYPE_QSFP28    (0x11UL << 24)4608	#define PORT_PHY_QCFG_RESP_XCVR_IDENTIFIER_TYPE_QSFPDD    (0x18UL << 24)4609	#define PORT_PHY_QCFG_RESP_XCVR_IDENTIFIER_TYPE_QSFP112   (0x1eUL << 24)4610	#define PORT_PHY_QCFG_RESP_XCVR_IDENTIFIER_TYPE_SFPDD     (0x1fUL << 24)4611	#define PORT_PHY_QCFG_RESP_XCVR_IDENTIFIER_TYPE_CSFP      (0x20UL << 24)4612	#define PORT_PHY_QCFG_RESP_XCVR_IDENTIFIER_TYPE_LAST     PORT_PHY_QCFG_RESP_XCVR_IDENTIFIER_TYPE_CSFP4613	__le16	fec_cfg;4614	#define PORT_PHY_QCFG_RESP_FEC_CFG_FEC_NONE_SUPPORTED           0x1UL4615	#define PORT_PHY_QCFG_RESP_FEC_CFG_FEC_AUTONEG_SUPPORTED        0x2UL4616	#define PORT_PHY_QCFG_RESP_FEC_CFG_FEC_AUTONEG_ENABLED          0x4UL4617	#define PORT_PHY_QCFG_RESP_FEC_CFG_FEC_CLAUSE74_SUPPORTED       0x8UL4618	#define PORT_PHY_QCFG_RESP_FEC_CFG_FEC_CLAUSE74_ENABLED         0x10UL4619	#define PORT_PHY_QCFG_RESP_FEC_CFG_FEC_CLAUSE91_SUPPORTED       0x20UL4620	#define PORT_PHY_QCFG_RESP_FEC_CFG_FEC_CLAUSE91_ENABLED         0x40UL4621	#define PORT_PHY_QCFG_RESP_FEC_CFG_FEC_RS544_1XN_SUPPORTED      0x80UL4622	#define PORT_PHY_QCFG_RESP_FEC_CFG_FEC_RS544_1XN_ENABLED        0x100UL4623	#define PORT_PHY_QCFG_RESP_FEC_CFG_FEC_RS544_IEEE_SUPPORTED     0x200UL4624	#define PORT_PHY_QCFG_RESP_FEC_CFG_FEC_RS544_IEEE_ENABLED       0x400UL4625	#define PORT_PHY_QCFG_RESP_FEC_CFG_FEC_RS272_1XN_SUPPORTED      0x800UL4626	#define PORT_PHY_QCFG_RESP_FEC_CFG_FEC_RS272_1XN_ENABLED        0x1000UL4627	#define PORT_PHY_QCFG_RESP_FEC_CFG_FEC_RS272_IEEE_SUPPORTED     0x2000UL4628	#define PORT_PHY_QCFG_RESP_FEC_CFG_FEC_RS272_IEEE_ENABLED       0x4000UL4629	u8	duplex_state;4630	#define PORT_PHY_QCFG_RESP_DUPLEX_STATE_HALF 0x0UL4631	#define PORT_PHY_QCFG_RESP_DUPLEX_STATE_FULL 0x1UL4632	#define PORT_PHY_QCFG_RESP_DUPLEX_STATE_LAST PORT_PHY_QCFG_RESP_DUPLEX_STATE_FULL4633	u8	option_flags;4634	#define PORT_PHY_QCFG_RESP_OPTION_FLAGS_MEDIA_AUTO_DETECT     0x1UL4635	#define PORT_PHY_QCFG_RESP_OPTION_FLAGS_SIGNAL_MODE_KNOWN     0x2UL4636	#define PORT_PHY_QCFG_RESP_OPTION_FLAGS_SPEEDS2_SUPPORTED     0x4UL4637	char	phy_vendor_name[16];4638	char	phy_vendor_partnumber[16];4639	__le16	support_pam4_speeds;4640	#define PORT_PHY_QCFG_RESP_SUPPORT_PAM4_SPEEDS_50G      0x1UL4641	#define PORT_PHY_QCFG_RESP_SUPPORT_PAM4_SPEEDS_100G     0x2UL4642	#define PORT_PHY_QCFG_RESP_SUPPORT_PAM4_SPEEDS_200G     0x4UL4643	__le16	force_pam4_link_speed;4644	#define PORT_PHY_QCFG_RESP_FORCE_PAM4_LINK_SPEED_50GB  0x1f4UL4645	#define PORT_PHY_QCFG_RESP_FORCE_PAM4_LINK_SPEED_100GB 0x3e8UL4646	#define PORT_PHY_QCFG_RESP_FORCE_PAM4_LINK_SPEED_200GB 0x7d0UL4647	#define PORT_PHY_QCFG_RESP_FORCE_PAM4_LINK_SPEED_LAST PORT_PHY_QCFG_RESP_FORCE_PAM4_LINK_SPEED_200GB4648	__le16	auto_pam4_link_speed_mask;4649	#define PORT_PHY_QCFG_RESP_AUTO_PAM4_LINK_SPEED_MASK_50G      0x1UL4650	#define PORT_PHY_QCFG_RESP_AUTO_PAM4_LINK_SPEED_MASK_100G     0x2UL4651	#define PORT_PHY_QCFG_RESP_AUTO_PAM4_LINK_SPEED_MASK_200G     0x4UL4652	u8	link_partner_pam4_adv_speeds;4653	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_PAM4_ADV_SPEEDS_50GB      0x1UL4654	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_PAM4_ADV_SPEEDS_100GB     0x2UL4655	#define PORT_PHY_QCFG_RESP_LINK_PARTNER_PAM4_ADV_SPEEDS_200GB     0x4UL4656	u8	link_down_reason;4657	#define PORT_PHY_QCFG_RESP_LINK_DOWN_REASON_RF     0x1UL4658	__le16	support_speeds2;4659	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS2_1GB                0x1UL4660	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS2_10GB               0x2UL4661	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS2_25GB               0x4UL4662	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS2_40GB               0x8UL4663	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS2_50GB               0x10UL4664	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS2_100GB              0x20UL4665	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS2_50GB_PAM4_56       0x40UL4666	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS2_100GB_PAM4_56      0x80UL4667	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS2_200GB_PAM4_56      0x100UL4668	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS2_400GB_PAM4_56      0x200UL4669	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS2_100GB_PAM4_112     0x400UL4670	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS2_200GB_PAM4_112     0x800UL4671	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS2_400GB_PAM4_112     0x1000UL4672	#define PORT_PHY_QCFG_RESP_SUPPORT_SPEEDS2_800GB_PAM4_112     0x2000UL4673	__le16	force_link_speeds2;4674	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEEDS2_1GB            0xaUL4675	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEEDS2_10GB           0x64UL4676	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEEDS2_25GB           0xfaUL4677	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEEDS2_40GB           0x190UL4678	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEEDS2_50GB           0x1f4UL4679	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEEDS2_100GB          0x3e8UL4680	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEEDS2_50GB_PAM4_56   0x1f5UL4681	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEEDS2_100GB_PAM4_56  0x3e9UL4682	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEEDS2_200GB_PAM4_56  0x7d1UL4683	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEEDS2_400GB_PAM4_56  0xfa1UL4684	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEEDS2_100GB_PAM4_112 0x3eaUL4685	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEEDS2_200GB_PAM4_112 0x7d2UL4686	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEEDS2_400GB_PAM4_112 0xfa2UL4687	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEEDS2_800GB_PAM4_112 0x1f42UL4688	#define PORT_PHY_QCFG_RESP_FORCE_LINK_SPEEDS2_LAST          PORT_PHY_QCFG_RESP_FORCE_LINK_SPEEDS2_800GB_PAM4_1124689	__le16	auto_link_speeds2;4690	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEEDS2_1GB                0x1UL4691	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEEDS2_10GB               0x2UL4692	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEEDS2_25GB               0x4UL4693	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEEDS2_40GB               0x8UL4694	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEEDS2_50GB               0x10UL4695	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEEDS2_100GB              0x20UL4696	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEEDS2_50GB_PAM4_56       0x40UL4697	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEEDS2_100GB_PAM4_56      0x80UL4698	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEEDS2_200GB_PAM4_56      0x100UL4699	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEEDS2_400GB_PAM4_56      0x200UL4700	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEEDS2_100GB_PAM4_112     0x400UL4701	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEEDS2_200GB_PAM4_112     0x800UL4702	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEEDS2_400GB_PAM4_112     0x1000UL4703	#define PORT_PHY_QCFG_RESP_AUTO_LINK_SPEEDS2_800GB_PAM4_112     0x2000UL4704	u8	active_lanes;4705	u8	valid;4706};4707 4708/* hwrm_port_mac_cfg_input (size:448b/56B) */4709struct hwrm_port_mac_cfg_input {4710	__le16	req_type;4711	__le16	cmpl_ring;4712	__le16	seq_id;4713	__le16	target_id;4714	__le64	resp_addr;4715	__le32	flags;4716	#define PORT_MAC_CFG_REQ_FLAGS_MATCH_LINK                    0x1UL4717	#define PORT_MAC_CFG_REQ_FLAGS_VLAN_PRI2COS_ENABLE           0x2UL4718	#define PORT_MAC_CFG_REQ_FLAGS_TUNNEL_PRI2COS_ENABLE         0x4UL4719	#define PORT_MAC_CFG_REQ_FLAGS_IP_DSCP2COS_ENABLE            0x8UL4720	#define PORT_MAC_CFG_REQ_FLAGS_PTP_RX_TS_CAPTURE_ENABLE      0x10UL4721	#define PORT_MAC_CFG_REQ_FLAGS_PTP_RX_TS_CAPTURE_DISABLE     0x20UL4722	#define PORT_MAC_CFG_REQ_FLAGS_PTP_TX_TS_CAPTURE_ENABLE      0x40UL4723	#define PORT_MAC_CFG_REQ_FLAGS_PTP_TX_TS_CAPTURE_DISABLE     0x80UL4724	#define PORT_MAC_CFG_REQ_FLAGS_OOB_WOL_ENABLE                0x100UL4725	#define PORT_MAC_CFG_REQ_FLAGS_OOB_WOL_DISABLE               0x200UL4726	#define PORT_MAC_CFG_REQ_FLAGS_VLAN_PRI2COS_DISABLE          0x400UL4727	#define PORT_MAC_CFG_REQ_FLAGS_TUNNEL_PRI2COS_DISABLE        0x800UL4728	#define PORT_MAC_CFG_REQ_FLAGS_IP_DSCP2COS_DISABLE           0x1000UL4729	#define PORT_MAC_CFG_REQ_FLAGS_PTP_ONE_STEP_TX_TS            0x2000UL4730	#define PORT_MAC_CFG_REQ_FLAGS_ALL_RX_TS_CAPTURE_ENABLE      0x4000UL4731	#define PORT_MAC_CFG_REQ_FLAGS_ALL_RX_TS_CAPTURE_DISABLE     0x8000UL4732	__le32	enables;4733	#define PORT_MAC_CFG_REQ_ENABLES_IPG                            0x1UL4734	#define PORT_MAC_CFG_REQ_ENABLES_LPBK                           0x2UL4735	#define PORT_MAC_CFG_REQ_ENABLES_VLAN_PRI2COS_MAP_PRI           0x4UL4736	#define PORT_MAC_CFG_REQ_ENABLES_TUNNEL_PRI2COS_MAP_PRI         0x10UL4737	#define PORT_MAC_CFG_REQ_ENABLES_DSCP2COS_MAP_PRI               0x20UL4738	#define PORT_MAC_CFG_REQ_ENABLES_RX_TS_CAPTURE_PTP_MSG_TYPE     0x40UL4739	#define PORT_MAC_CFG_REQ_ENABLES_TX_TS_CAPTURE_PTP_MSG_TYPE     0x80UL4740	#define PORT_MAC_CFG_REQ_ENABLES_COS_FIELD_CFG                  0x100UL4741	#define PORT_MAC_CFG_REQ_ENABLES_PTP_FREQ_ADJ_PPB               0x200UL4742	#define PORT_MAC_CFG_REQ_ENABLES_PTP_ADJ_PHASE                  0x400UL4743	#define PORT_MAC_CFG_REQ_ENABLES_PTP_LOAD_CONTROL               0x800UL4744	__le16	port_id;4745	u8	ipg;4746	u8	lpbk;4747	#define PORT_MAC_CFG_REQ_LPBK_NONE   0x0UL4748	#define PORT_MAC_CFG_REQ_LPBK_LOCAL  0x1UL4749	#define PORT_MAC_CFG_REQ_LPBK_REMOTE 0x2UL4750	#define PORT_MAC_CFG_REQ_LPBK_LAST  PORT_MAC_CFG_REQ_LPBK_REMOTE4751	u8	vlan_pri2cos_map_pri;4752	u8	reserved1;4753	u8	tunnel_pri2cos_map_pri;4754	u8	dscp2pri_map_pri;4755	__le16	rx_ts_capture_ptp_msg_type;4756	__le16	tx_ts_capture_ptp_msg_type;4757	u8	cos_field_cfg;4758	#define PORT_MAC_CFG_REQ_COS_FIELD_CFG_RSVD1                     0x1UL4759	#define PORT_MAC_CFG_REQ_COS_FIELD_CFG_VLAN_PRI_SEL_MASK         0x6UL4760	#define PORT_MAC_CFG_REQ_COS_FIELD_CFG_VLAN_PRI_SEL_SFT          14761	#define PORT_MAC_CFG_REQ_COS_FIELD_CFG_VLAN_PRI_SEL_INNERMOST      (0x0UL << 1)4762	#define PORT_MAC_CFG_REQ_COS_FIELD_CFG_VLAN_PRI_SEL_OUTER          (0x1UL << 1)4763	#define PORT_MAC_CFG_REQ_COS_FIELD_CFG_VLAN_PRI_SEL_OUTERMOST      (0x2UL << 1)4764	#define PORT_MAC_CFG_REQ_COS_FIELD_CFG_VLAN_PRI_SEL_UNSPECIFIED    (0x3UL << 1)4765	#define PORT_MAC_CFG_REQ_COS_FIELD_CFG_VLAN_PRI_SEL_LAST          PORT_MAC_CFG_REQ_COS_FIELD_CFG_VLAN_PRI_SEL_UNSPECIFIED4766	#define PORT_MAC_CFG_REQ_COS_FIELD_CFG_T_VLAN_PRI_SEL_MASK       0x18UL4767	#define PORT_MAC_CFG_REQ_COS_FIELD_CFG_T_VLAN_PRI_SEL_SFT        34768	#define PORT_MAC_CFG_REQ_COS_FIELD_CFG_T_VLAN_PRI_SEL_INNERMOST    (0x0UL << 3)4769	#define PORT_MAC_CFG_REQ_COS_FIELD_CFG_T_VLAN_PRI_SEL_OUTER        (0x1UL << 3)4770	#define PORT_MAC_CFG_REQ_COS_FIELD_CFG_T_VLAN_PRI_SEL_OUTERMOST    (0x2UL << 3)4771	#define PORT_MAC_CFG_REQ_COS_FIELD_CFG_T_VLAN_PRI_SEL_UNSPECIFIED  (0x3UL << 3)4772	#define PORT_MAC_CFG_REQ_COS_FIELD_CFG_T_VLAN_PRI_SEL_LAST        PORT_MAC_CFG_REQ_COS_FIELD_CFG_T_VLAN_PRI_SEL_UNSPECIFIED4773	#define PORT_MAC_CFG_REQ_COS_FIELD_CFG_DEFAULT_COS_MASK          0xe0UL4774	#define PORT_MAC_CFG_REQ_COS_FIELD_CFG_DEFAULT_COS_SFT           54775	u8	unused_0[3];4776	__le32	ptp_freq_adj_ppb;4777	u8	unused_1[3];4778	u8	ptp_load_control;4779	#define PORT_MAC_CFG_REQ_PTP_LOAD_CONTROL_NONE      0x0UL4780	#define PORT_MAC_CFG_REQ_PTP_LOAD_CONTROL_IMMEDIATE 0x1UL4781	#define PORT_MAC_CFG_REQ_PTP_LOAD_CONTROL_PPS_EVENT 0x2UL4782	#define PORT_MAC_CFG_REQ_PTP_LOAD_CONTROL_LAST     PORT_MAC_CFG_REQ_PTP_LOAD_CONTROL_PPS_EVENT4783	__le64	ptp_adj_phase;4784};4785 4786/* hwrm_port_mac_cfg_output (size:128b/16B) */4787struct hwrm_port_mac_cfg_output {4788	__le16	error_code;4789	__le16	req_type;4790	__le16	seq_id;4791	__le16	resp_len;4792	__le16	mru;4793	__le16	mtu;4794	u8	ipg;4795	u8	lpbk;4796	#define PORT_MAC_CFG_RESP_LPBK_NONE   0x0UL4797	#define PORT_MAC_CFG_RESP_LPBK_LOCAL  0x1UL4798	#define PORT_MAC_CFG_RESP_LPBK_REMOTE 0x2UL4799	#define PORT_MAC_CFG_RESP_LPBK_LAST  PORT_MAC_CFG_RESP_LPBK_REMOTE4800	u8	unused_0;4801	u8	valid;4802};4803 4804/* hwrm_port_mac_ptp_qcfg_input (size:192b/24B) */4805struct hwrm_port_mac_ptp_qcfg_input {4806	__le16	req_type;4807	__le16	cmpl_ring;4808	__le16	seq_id;4809	__le16	target_id;4810	__le64	resp_addr;4811	__le16	port_id;4812	u8	unused_0[6];4813};4814 4815/* hwrm_port_mac_ptp_qcfg_output (size:704b/88B) */4816struct hwrm_port_mac_ptp_qcfg_output {4817	__le16	error_code;4818	__le16	req_type;4819	__le16	seq_id;4820	__le16	resp_len;4821	u8	flags;4822	#define PORT_MAC_PTP_QCFG_RESP_FLAGS_DIRECT_ACCESS                       0x1UL4823	#define PORT_MAC_PTP_QCFG_RESP_FLAGS_ONE_STEP_TX_TS                      0x4UL4824	#define PORT_MAC_PTP_QCFG_RESP_FLAGS_HWRM_ACCESS                         0x8UL4825	#define PORT_MAC_PTP_QCFG_RESP_FLAGS_PARTIAL_DIRECT_ACCESS_REF_CLOCK     0x10UL4826	#define PORT_MAC_PTP_QCFG_RESP_FLAGS_RTC_CONFIGURED                      0x20UL4827	#define PORT_MAC_PTP_QCFG_RESP_FLAGS_64B_PHC_TIME                        0x40UL4828	u8	unused_0[3];4829	__le32	rx_ts_reg_off_lower;4830	__le32	rx_ts_reg_off_upper;4831	__le32	rx_ts_reg_off_seq_id;4832	__le32	rx_ts_reg_off_src_id_0;4833	__le32	rx_ts_reg_off_src_id_1;4834	__le32	rx_ts_reg_off_src_id_2;4835	__le32	rx_ts_reg_off_domain_id;4836	__le32	rx_ts_reg_off_fifo;4837	__le32	rx_ts_reg_off_fifo_adv;4838	__le32	rx_ts_reg_off_granularity;4839	__le32	tx_ts_reg_off_lower;4840	__le32	tx_ts_reg_off_upper;4841	__le32	tx_ts_reg_off_seq_id;4842	__le32	tx_ts_reg_off_fifo;4843	__le32	tx_ts_reg_off_granularity;4844	__le32	ts_ref_clock_reg_lower;4845	__le32	ts_ref_clock_reg_upper;4846	u8	unused_1[7];4847	u8	valid;4848};4849 4850/* tx_port_stats (size:3264b/408B) */4851struct tx_port_stats {4852	__le64	tx_64b_frames;4853	__le64	tx_65b_127b_frames;4854	__le64	tx_128b_255b_frames;4855	__le64	tx_256b_511b_frames;4856	__le64	tx_512b_1023b_frames;4857	__le64	tx_1024b_1518b_frames;4858	__le64	tx_good_vlan_frames;4859	__le64	tx_1519b_2047b_frames;4860	__le64	tx_2048b_4095b_frames;4861	__le64	tx_4096b_9216b_frames;4862	__le64	tx_9217b_16383b_frames;4863	__le64	tx_good_frames;4864	__le64	tx_total_frames;4865	__le64	tx_ucast_frames;4866	__le64	tx_mcast_frames;4867	__le64	tx_bcast_frames;4868	__le64	tx_pause_frames;4869	__le64	tx_pfc_frames;4870	__le64	tx_jabber_frames;4871	__le64	tx_fcs_err_frames;4872	__le64	tx_control_frames;4873	__le64	tx_oversz_frames;4874	__le64	tx_single_dfrl_frames;4875	__le64	tx_multi_dfrl_frames;4876	__le64	tx_single_coll_frames;4877	__le64	tx_multi_coll_frames;4878	__le64	tx_late_coll_frames;4879	__le64	tx_excessive_coll_frames;4880	__le64	tx_frag_frames;4881	__le64	tx_err;4882	__le64	tx_tagged_frames;4883	__le64	tx_dbl_tagged_frames;4884	__le64	tx_runt_frames;4885	__le64	tx_fifo_underruns;4886	__le64	tx_pfc_ena_frames_pri0;4887	__le64	tx_pfc_ena_frames_pri1;4888	__le64	tx_pfc_ena_frames_pri2;4889	__le64	tx_pfc_ena_frames_pri3;4890	__le64	tx_pfc_ena_frames_pri4;4891	__le64	tx_pfc_ena_frames_pri5;4892	__le64	tx_pfc_ena_frames_pri6;4893	__le64	tx_pfc_ena_frames_pri7;4894	__le64	tx_eee_lpi_events;4895	__le64	tx_eee_lpi_duration;4896	__le64	tx_llfc_logical_msgs;4897	__le64	tx_hcfc_msgs;4898	__le64	tx_total_collisions;4899	__le64	tx_bytes;4900	__le64	tx_xthol_frames;4901	__le64	tx_stat_discard;4902	__le64	tx_stat_error;4903};4904 4905/* rx_port_stats (size:4224b/528B) */4906struct rx_port_stats {4907	__le64	rx_64b_frames;4908	__le64	rx_65b_127b_frames;4909	__le64	rx_128b_255b_frames;4910	__le64	rx_256b_511b_frames;4911	__le64	rx_512b_1023b_frames;4912	__le64	rx_1024b_1518b_frames;4913	__le64	rx_good_vlan_frames;4914	__le64	rx_1519b_2047b_frames;4915	__le64	rx_2048b_4095b_frames;4916	__le64	rx_4096b_9216b_frames;4917	__le64	rx_9217b_16383b_frames;4918	__le64	rx_total_frames;4919	__le64	rx_ucast_frames;4920	__le64	rx_mcast_frames;4921	__le64	rx_bcast_frames;4922	__le64	rx_fcs_err_frames;4923	__le64	rx_ctrl_frames;4924	__le64	rx_pause_frames;4925	__le64	rx_pfc_frames;4926	__le64	rx_unsupported_opcode_frames;4927	__le64	rx_unsupported_da_pausepfc_frames;4928	__le64	rx_wrong_sa_frames;4929	__le64	rx_align_err_frames;4930	__le64	rx_oor_len_frames;4931	__le64	rx_code_err_frames;4932	__le64	rx_false_carrier_frames;4933	__le64	rx_ovrsz_frames;4934	__le64	rx_jbr_frames;4935	__le64	rx_mtu_err_frames;4936	__le64	rx_match_crc_frames;4937	__le64	rx_promiscuous_frames;4938	__le64	rx_tagged_frames;4939	__le64	rx_double_tagged_frames;4940	__le64	rx_trunc_frames;4941	__le64	rx_good_frames;4942	__le64	rx_pfc_xon2xoff_frames_pri0;4943	__le64	rx_pfc_xon2xoff_frames_pri1;4944	__le64	rx_pfc_xon2xoff_frames_pri2;4945	__le64	rx_pfc_xon2xoff_frames_pri3;4946	__le64	rx_pfc_xon2xoff_frames_pri4;4947	__le64	rx_pfc_xon2xoff_frames_pri5;4948	__le64	rx_pfc_xon2xoff_frames_pri6;4949	__le64	rx_pfc_xon2xoff_frames_pri7;4950	__le64	rx_pfc_ena_frames_pri0;4951	__le64	rx_pfc_ena_frames_pri1;4952	__le64	rx_pfc_ena_frames_pri2;4953	__le64	rx_pfc_ena_frames_pri3;4954	__le64	rx_pfc_ena_frames_pri4;4955	__le64	rx_pfc_ena_frames_pri5;4956	__le64	rx_pfc_ena_frames_pri6;4957	__le64	rx_pfc_ena_frames_pri7;4958	__le64	rx_sch_crc_err_frames;4959	__le64	rx_undrsz_frames;4960	__le64	rx_frag_frames;4961	__le64	rx_eee_lpi_events;4962	__le64	rx_eee_lpi_duration;4963	__le64	rx_llfc_physical_msgs;4964	__le64	rx_llfc_logical_msgs;4965	__le64	rx_llfc_msgs_with_crc_err;4966	__le64	rx_hcfc_msgs;4967	__le64	rx_hcfc_msgs_with_crc_err;4968	__le64	rx_bytes;4969	__le64	rx_runt_bytes;4970	__le64	rx_runt_frames;4971	__le64	rx_stat_discard;4972	__le64	rx_stat_err;4973};4974 4975/* hwrm_port_qstats_input (size:320b/40B) */4976struct hwrm_port_qstats_input {4977	__le16	req_type;4978	__le16	cmpl_ring;4979	__le16	seq_id;4980	__le16	target_id;4981	__le64	resp_addr;4982	__le16	port_id;4983	u8	flags;4984	#define PORT_QSTATS_REQ_FLAGS_COUNTER_MASK     0x1UL4985	u8	unused_0[5];4986	__le64	tx_stat_host_addr;4987	__le64	rx_stat_host_addr;4988};4989 4990/* hwrm_port_qstats_output (size:128b/16B) */4991struct hwrm_port_qstats_output {4992	__le16	error_code;4993	__le16	req_type;4994	__le16	seq_id;4995	__le16	resp_len;4996	__le16	tx_stat_size;4997	__le16	rx_stat_size;4998	u8	flags;4999	#define PORT_QSTATS_RESP_FLAGS_CLEARED     0x1UL5000	u8	unused_0[2];5001	u8	valid;5002};5003 5004/* tx_port_stats_ext (size:2048b/256B) */5005struct tx_port_stats_ext {5006	__le64	tx_bytes_cos0;5007	__le64	tx_bytes_cos1;5008	__le64	tx_bytes_cos2;5009	__le64	tx_bytes_cos3;5010	__le64	tx_bytes_cos4;5011	__le64	tx_bytes_cos5;5012	__le64	tx_bytes_cos6;5013	__le64	tx_bytes_cos7;5014	__le64	tx_packets_cos0;5015	__le64	tx_packets_cos1;5016	__le64	tx_packets_cos2;5017	__le64	tx_packets_cos3;5018	__le64	tx_packets_cos4;5019	__le64	tx_packets_cos5;5020	__le64	tx_packets_cos6;5021	__le64	tx_packets_cos7;5022	__le64	pfc_pri0_tx_duration_us;5023	__le64	pfc_pri0_tx_transitions;5024	__le64	pfc_pri1_tx_duration_us;5025	__le64	pfc_pri1_tx_transitions;5026	__le64	pfc_pri2_tx_duration_us;5027	__le64	pfc_pri2_tx_transitions;5028	__le64	pfc_pri3_tx_duration_us;5029	__le64	pfc_pri3_tx_transitions;5030	__le64	pfc_pri4_tx_duration_us;5031	__le64	pfc_pri4_tx_transitions;5032	__le64	pfc_pri5_tx_duration_us;5033	__le64	pfc_pri5_tx_transitions;5034	__le64	pfc_pri6_tx_duration_us;5035	__le64	pfc_pri6_tx_transitions;5036	__le64	pfc_pri7_tx_duration_us;5037	__le64	pfc_pri7_tx_transitions;5038};5039 5040/* rx_port_stats_ext (size:3904b/488B) */5041struct rx_port_stats_ext {5042	__le64	link_down_events;5043	__le64	continuous_pause_events;5044	__le64	resume_pause_events;5045	__le64	continuous_roce_pause_events;5046	__le64	resume_roce_pause_events;5047	__le64	rx_bytes_cos0;5048	__le64	rx_bytes_cos1;5049	__le64	rx_bytes_cos2;5050	__le64	rx_bytes_cos3;5051	__le64	rx_bytes_cos4;5052	__le64	rx_bytes_cos5;5053	__le64	rx_bytes_cos6;5054	__le64	rx_bytes_cos7;5055	__le64	rx_packets_cos0;5056	__le64	rx_packets_cos1;5057	__le64	rx_packets_cos2;5058	__le64	rx_packets_cos3;5059	__le64	rx_packets_cos4;5060	__le64	rx_packets_cos5;5061	__le64	rx_packets_cos6;5062	__le64	rx_packets_cos7;5063	__le64	pfc_pri0_rx_duration_us;5064	__le64	pfc_pri0_rx_transitions;5065	__le64	pfc_pri1_rx_duration_us;5066	__le64	pfc_pri1_rx_transitions;5067	__le64	pfc_pri2_rx_duration_us;5068	__le64	pfc_pri2_rx_transitions;5069	__le64	pfc_pri3_rx_duration_us;5070	__le64	pfc_pri3_rx_transitions;5071	__le64	pfc_pri4_rx_duration_us;5072	__le64	pfc_pri4_rx_transitions;5073	__le64	pfc_pri5_rx_duration_us;5074	__le64	pfc_pri5_rx_transitions;5075	__le64	pfc_pri6_rx_duration_us;5076	__le64	pfc_pri6_rx_transitions;5077	__le64	pfc_pri7_rx_duration_us;5078	__le64	pfc_pri7_rx_transitions;5079	__le64	rx_bits;5080	__le64	rx_buffer_passed_threshold;5081	__le64	rx_pcs_symbol_err;5082	__le64	rx_corrected_bits;5083	__le64	rx_discard_bytes_cos0;5084	__le64	rx_discard_bytes_cos1;5085	__le64	rx_discard_bytes_cos2;5086	__le64	rx_discard_bytes_cos3;5087	__le64	rx_discard_bytes_cos4;5088	__le64	rx_discard_bytes_cos5;5089	__le64	rx_discard_bytes_cos6;5090	__le64	rx_discard_bytes_cos7;5091	__le64	rx_discard_packets_cos0;5092	__le64	rx_discard_packets_cos1;5093	__le64	rx_discard_packets_cos2;5094	__le64	rx_discard_packets_cos3;5095	__le64	rx_discard_packets_cos4;5096	__le64	rx_discard_packets_cos5;5097	__le64	rx_discard_packets_cos6;5098	__le64	rx_discard_packets_cos7;5099	__le64	rx_fec_corrected_blocks;5100	__le64	rx_fec_uncorrectable_blocks;5101	__le64	rx_filter_miss;5102	__le64	rx_fec_symbol_err;5103};5104 5105/* hwrm_port_qstats_ext_input (size:320b/40B) */5106struct hwrm_port_qstats_ext_input {5107	__le16	req_type;5108	__le16	cmpl_ring;5109	__le16	seq_id;5110	__le16	target_id;5111	__le64	resp_addr;5112	__le16	port_id;5113	__le16	tx_stat_size;5114	__le16	rx_stat_size;5115	u8	flags;5116	#define PORT_QSTATS_EXT_REQ_FLAGS_COUNTER_MASK     0x1UL5117	u8	unused_0;5118	__le64	tx_stat_host_addr;5119	__le64	rx_stat_host_addr;5120};5121 5122/* hwrm_port_qstats_ext_output (size:128b/16B) */5123struct hwrm_port_qstats_ext_output {5124	__le16	error_code;5125	__le16	req_type;5126	__le16	seq_id;5127	__le16	resp_len;5128	__le16	tx_stat_size;5129	__le16	rx_stat_size;5130	__le16	total_active_cos_queues;5131	u8	flags;5132	#define PORT_QSTATS_EXT_RESP_FLAGS_CLEAR_ROCE_COUNTERS_SUPPORTED     0x1UL5133	#define PORT_QSTATS_EXT_RESP_FLAGS_CLEARED                           0x2UL5134	u8	valid;5135};5136 5137/* hwrm_port_lpbk_qstats_input (size:256b/32B) */5138struct hwrm_port_lpbk_qstats_input {5139	__le16	req_type;5140	__le16	cmpl_ring;5141	__le16	seq_id;5142	__le16	target_id;5143	__le64	resp_addr;5144	__le16	lpbk_stat_size;5145	u8	flags;5146	#define PORT_LPBK_QSTATS_REQ_FLAGS_COUNTER_MASK     0x1UL5147	u8	unused_0[5];5148	__le64	lpbk_stat_host_addr;5149};5150 5151/* hwrm_port_lpbk_qstats_output (size:128b/16B) */5152struct hwrm_port_lpbk_qstats_output {5153	__le16	error_code;5154	__le16	req_type;5155	__le16	seq_id;5156	__le16	resp_len;5157	__le16	lpbk_stat_size;5158	u8	unused_0[5];5159	u8	valid;5160};5161 5162/* port_lpbk_stats (size:640b/80B) */5163struct port_lpbk_stats {5164	__le64	lpbk_ucast_frames;5165	__le64	lpbk_mcast_frames;5166	__le64	lpbk_bcast_frames;5167	__le64	lpbk_ucast_bytes;5168	__le64	lpbk_mcast_bytes;5169	__le64	lpbk_bcast_bytes;5170	__le64	lpbk_tx_discards;5171	__le64	lpbk_tx_errors;5172	__le64	lpbk_rx_discards;5173	__le64	lpbk_rx_errors;5174};5175 5176/* hwrm_port_ecn_qstats_input (size:256b/32B) */5177struct hwrm_port_ecn_qstats_input {5178	__le16	req_type;5179	__le16	cmpl_ring;5180	__le16	seq_id;5181	__le16	target_id;5182	__le64	resp_addr;5183	__le16	port_id;5184	__le16	ecn_stat_buf_size;5185	u8	flags;5186	#define PORT_ECN_QSTATS_REQ_FLAGS_COUNTER_MASK     0x1UL5187	u8	unused_0[3];5188	__le64	ecn_stat_host_addr;5189};5190 5191/* hwrm_port_ecn_qstats_output (size:128b/16B) */5192struct hwrm_port_ecn_qstats_output {5193	__le16	error_code;5194	__le16	req_type;5195	__le16	seq_id;5196	__le16	resp_len;5197	__le16	ecn_stat_buf_size;5198	u8	mark_en;5199	u8	unused_0[4];5200	u8	valid;5201};5202 5203/* port_stats_ecn (size:512b/64B) */5204struct port_stats_ecn {5205	__le64	mark_cnt_cos0;5206	__le64	mark_cnt_cos1;5207	__le64	mark_cnt_cos2;5208	__le64	mark_cnt_cos3;5209	__le64	mark_cnt_cos4;5210	__le64	mark_cnt_cos5;5211	__le64	mark_cnt_cos6;5212	__le64	mark_cnt_cos7;5213};5214 5215/* hwrm_port_clr_stats_input (size:192b/24B) */5216struct hwrm_port_clr_stats_input {5217	__le16	req_type;5218	__le16	cmpl_ring;5219	__le16	seq_id;5220	__le16	target_id;5221	__le64	resp_addr;5222	__le16	port_id;5223	u8	flags;5224	#define PORT_CLR_STATS_REQ_FLAGS_ROCE_COUNTERS     0x1UL5225	u8	unused_0[5];5226};5227 5228/* hwrm_port_clr_stats_output (size:128b/16B) */5229struct hwrm_port_clr_stats_output {5230	__le16	error_code;5231	__le16	req_type;5232	__le16	seq_id;5233	__le16	resp_len;5234	u8	unused_0[7];5235	u8	valid;5236};5237 5238/* hwrm_port_lpbk_clr_stats_input (size:192b/24B) */5239struct hwrm_port_lpbk_clr_stats_input {5240	__le16	req_type;5241	__le16	cmpl_ring;5242	__le16	seq_id;5243	__le16	target_id;5244	__le64	resp_addr;5245	__le16	port_id;5246	u8	unused_0[6];5247};5248 5249/* hwrm_port_lpbk_clr_stats_output (size:128b/16B) */5250struct hwrm_port_lpbk_clr_stats_output {5251	__le16	error_code;5252	__le16	req_type;5253	__le16	seq_id;5254	__le16	resp_len;5255	u8	unused_0[7];5256	u8	valid;5257};5258 5259/* hwrm_port_ts_query_input (size:320b/40B) */5260struct hwrm_port_ts_query_input {5261	__le16	req_type;5262	__le16	cmpl_ring;5263	__le16	seq_id;5264	__le16	target_id;5265	__le64	resp_addr;5266	__le32	flags;5267	#define PORT_TS_QUERY_REQ_FLAGS_PATH             0x1UL5268	#define PORT_TS_QUERY_REQ_FLAGS_PATH_TX            0x0UL5269	#define PORT_TS_QUERY_REQ_FLAGS_PATH_RX            0x1UL5270	#define PORT_TS_QUERY_REQ_FLAGS_PATH_LAST         PORT_TS_QUERY_REQ_FLAGS_PATH_RX5271	#define PORT_TS_QUERY_REQ_FLAGS_CURRENT_TIME     0x2UL5272	__le16	port_id;5273	u8	unused_0[2];5274	__le16	enables;5275	#define PORT_TS_QUERY_REQ_ENABLES_TS_REQ_TIMEOUT     0x1UL5276	#define PORT_TS_QUERY_REQ_ENABLES_PTP_SEQ_ID         0x2UL5277	#define PORT_TS_QUERY_REQ_ENABLES_PTP_HDR_OFFSET     0x4UL5278	__le16	ts_req_timeout;5279	__le32	ptp_seq_id;5280	__le16	ptp_hdr_offset;5281	u8	unused_1[6];5282};5283 5284/* hwrm_port_ts_query_output (size:192b/24B) */5285struct hwrm_port_ts_query_output {5286	__le16	error_code;5287	__le16	req_type;5288	__le16	seq_id;5289	__le16	resp_len;5290	__le64	ptp_msg_ts;5291	__le16	ptp_msg_seqid;5292	u8	unused_0[5];5293	u8	valid;5294};5295 5296/* hwrm_port_phy_qcaps_input (size:192b/24B) */5297struct hwrm_port_phy_qcaps_input {5298	__le16	req_type;5299	__le16	cmpl_ring;5300	__le16	seq_id;5301	__le16	target_id;5302	__le64	resp_addr;5303	__le16	port_id;5304	u8	unused_0[6];5305};5306 5307/* hwrm_port_phy_qcaps_output (size:320b/40B) */5308struct hwrm_port_phy_qcaps_output {5309	__le16	error_code;5310	__le16	req_type;5311	__le16	seq_id;5312	__le16	resp_len;5313	u8	flags;5314	#define PORT_PHY_QCAPS_RESP_FLAGS_EEE_SUPPORTED                    0x1UL5315	#define PORT_PHY_QCAPS_RESP_FLAGS_EXTERNAL_LPBK_SUPPORTED          0x2UL5316	#define PORT_PHY_QCAPS_RESP_FLAGS_AUTONEG_LPBK_SUPPORTED           0x4UL5317	#define PORT_PHY_QCAPS_RESP_FLAGS_SHARED_PHY_CFG_SUPPORTED         0x8UL5318	#define PORT_PHY_QCAPS_RESP_FLAGS_CUMULATIVE_COUNTERS_ON_RESET     0x10UL5319	#define PORT_PHY_QCAPS_RESP_FLAGS_LOCAL_LPBK_NOT_SUPPORTED         0x20UL5320	#define PORT_PHY_QCAPS_RESP_FLAGS_FW_MANAGED_LINK_DOWN             0x40UL5321	#define PORT_PHY_QCAPS_RESP_FLAGS_NO_FCS                           0x80UL5322	u8	port_cnt;5323	#define PORT_PHY_QCAPS_RESP_PORT_CNT_UNKNOWN 0x0UL5324	#define PORT_PHY_QCAPS_RESP_PORT_CNT_1       0x1UL5325	#define PORT_PHY_QCAPS_RESP_PORT_CNT_2       0x2UL5326	#define PORT_PHY_QCAPS_RESP_PORT_CNT_3       0x3UL5327	#define PORT_PHY_QCAPS_RESP_PORT_CNT_4       0x4UL5328	#define PORT_PHY_QCAPS_RESP_PORT_CNT_12      0xcUL5329	#define PORT_PHY_QCAPS_RESP_PORT_CNT_LAST   PORT_PHY_QCAPS_RESP_PORT_CNT_125330	__le16	supported_speeds_force_mode;5331	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_FORCE_MODE_100MBHD     0x1UL5332	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_FORCE_MODE_100MB       0x2UL5333	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_FORCE_MODE_1GBHD       0x4UL5334	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_FORCE_MODE_1GB         0x8UL5335	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_FORCE_MODE_2GB         0x10UL5336	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_FORCE_MODE_2_5GB       0x20UL5337	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_FORCE_MODE_10GB        0x40UL5338	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_FORCE_MODE_20GB        0x80UL5339	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_FORCE_MODE_25GB        0x100UL5340	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_FORCE_MODE_40GB        0x200UL5341	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_FORCE_MODE_50GB        0x400UL5342	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_FORCE_MODE_100GB       0x800UL5343	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_FORCE_MODE_10MBHD      0x1000UL5344	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_FORCE_MODE_10MB        0x2000UL5345	__le16	supported_speeds_auto_mode;5346	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_AUTO_MODE_100MBHD     0x1UL5347	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_AUTO_MODE_100MB       0x2UL5348	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_AUTO_MODE_1GBHD       0x4UL5349	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_AUTO_MODE_1GB         0x8UL5350	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_AUTO_MODE_2GB         0x10UL5351	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_AUTO_MODE_2_5GB       0x20UL5352	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_AUTO_MODE_10GB        0x40UL5353	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_AUTO_MODE_20GB        0x80UL5354	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_AUTO_MODE_25GB        0x100UL5355	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_AUTO_MODE_40GB        0x200UL5356	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_AUTO_MODE_50GB        0x400UL5357	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_AUTO_MODE_100GB       0x800UL5358	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_AUTO_MODE_10MBHD      0x1000UL5359	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_AUTO_MODE_10MB        0x2000UL5360	__le16	supported_speeds_eee_mode;5361	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_EEE_MODE_RSVD1     0x1UL5362	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_EEE_MODE_100MB     0x2UL5363	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_EEE_MODE_RSVD2     0x4UL5364	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_EEE_MODE_1GB       0x8UL5365	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_EEE_MODE_RSVD3     0x10UL5366	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_EEE_MODE_RSVD4     0x20UL5367	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS_EEE_MODE_10GB      0x40UL5368	__le32	tx_lpi_timer_low;5369	#define PORT_PHY_QCAPS_RESP_TX_LPI_TIMER_LOW_MASK 0xffffffUL5370	#define PORT_PHY_QCAPS_RESP_TX_LPI_TIMER_LOW_SFT 05371	#define PORT_PHY_QCAPS_RESP_RSVD2_MASK           0xff000000UL5372	#define PORT_PHY_QCAPS_RESP_RSVD2_SFT            245373	__le32	valid_tx_lpi_timer_high;5374	#define PORT_PHY_QCAPS_RESP_TX_LPI_TIMER_HIGH_MASK 0xffffffUL5375	#define PORT_PHY_QCAPS_RESP_TX_LPI_TIMER_HIGH_SFT 05376	#define PORT_PHY_QCAPS_RESP_RSVD_MASK             0xff000000UL5377	#define PORT_PHY_QCAPS_RESP_RSVD_SFT              245378	__le16	supported_pam4_speeds_auto_mode;5379	#define PORT_PHY_QCAPS_RESP_SUPPORTED_PAM4_SPEEDS_AUTO_MODE_50G      0x1UL5380	#define PORT_PHY_QCAPS_RESP_SUPPORTED_PAM4_SPEEDS_AUTO_MODE_100G     0x2UL5381	#define PORT_PHY_QCAPS_RESP_SUPPORTED_PAM4_SPEEDS_AUTO_MODE_200G     0x4UL5382	__le16	supported_pam4_speeds_force_mode;5383	#define PORT_PHY_QCAPS_RESP_SUPPORTED_PAM4_SPEEDS_FORCE_MODE_50G      0x1UL5384	#define PORT_PHY_QCAPS_RESP_SUPPORTED_PAM4_SPEEDS_FORCE_MODE_100G     0x2UL5385	#define PORT_PHY_QCAPS_RESP_SUPPORTED_PAM4_SPEEDS_FORCE_MODE_200G     0x4UL5386	__le16	flags2;5387	#define PORT_PHY_QCAPS_RESP_FLAGS2_PAUSE_UNSUPPORTED           0x1UL5388	#define PORT_PHY_QCAPS_RESP_FLAGS2_PFC_UNSUPPORTED             0x2UL5389	#define PORT_PHY_QCAPS_RESP_FLAGS2_BANK_ADDR_SUPPORTED         0x4UL5390	#define PORT_PHY_QCAPS_RESP_FLAGS2_SPEEDS2_SUPPORTED           0x8UL5391	#define PORT_PHY_QCAPS_RESP_FLAGS2_REMOTE_LPBK_UNSUPPORTED     0x10UL5392	u8	internal_port_cnt;5393	u8	unused_0;5394	__le16	supported_speeds2_force_mode;5395	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_FORCE_MODE_1GB                0x1UL5396	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_FORCE_MODE_10GB               0x2UL5397	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_FORCE_MODE_25GB               0x4UL5398	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_FORCE_MODE_40GB               0x8UL5399	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_FORCE_MODE_50GB               0x10UL5400	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_FORCE_MODE_100GB              0x20UL5401	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_FORCE_MODE_50GB_PAM4_56       0x40UL5402	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_FORCE_MODE_100GB_PAM4_56      0x80UL5403	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_FORCE_MODE_200GB_PAM4_56      0x100UL5404	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_FORCE_MODE_400GB_PAM4_56      0x200UL5405	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_FORCE_MODE_100GB_PAM4_112     0x400UL5406	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_FORCE_MODE_200GB_PAM4_112     0x800UL5407	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_FORCE_MODE_400GB_PAM4_112     0x1000UL5408	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_FORCE_MODE_800GB_PAM4_112     0x2000UL5409	__le16	supported_speeds2_auto_mode;5410	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_AUTO_MODE_1GB                0x1UL5411	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_AUTO_MODE_10GB               0x2UL5412	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_AUTO_MODE_25GB               0x4UL5413	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_AUTO_MODE_40GB               0x8UL5414	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_AUTO_MODE_50GB               0x10UL5415	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_AUTO_MODE_100GB              0x20UL5416	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_AUTO_MODE_50GB_PAM4_56       0x40UL5417	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_AUTO_MODE_100GB_PAM4_56      0x80UL5418	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_AUTO_MODE_200GB_PAM4_56      0x100UL5419	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_AUTO_MODE_400GB_PAM4_56      0x200UL5420	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_AUTO_MODE_100GB_PAM4_112     0x400UL5421	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_AUTO_MODE_200GB_PAM4_112     0x800UL5422	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_AUTO_MODE_400GB_PAM4_112     0x1000UL5423	#define PORT_PHY_QCAPS_RESP_SUPPORTED_SPEEDS2_AUTO_MODE_800GB_PAM4_112     0x2000UL5424	u8	unused_1[3];5425	u8	valid;5426};5427 5428/* hwrm_port_phy_i2c_read_input (size:320b/40B) */5429struct hwrm_port_phy_i2c_read_input {5430	__le16	req_type;5431	__le16	cmpl_ring;5432	__le16	seq_id;5433	__le16	target_id;5434	__le64	resp_addr;5435	__le32	flags;5436	__le32	enables;5437	#define PORT_PHY_I2C_READ_REQ_ENABLES_PAGE_OFFSET     0x1UL5438	#define PORT_PHY_I2C_READ_REQ_ENABLES_BANK_NUMBER     0x2UL5439	__le16	port_id;5440	u8	i2c_slave_addr;5441	u8	bank_number;5442	__le16	page_number;5443	__le16	page_offset;5444	u8	data_length;5445	u8	unused_1[7];5446};5447 5448/* hwrm_port_phy_i2c_read_output (size:640b/80B) */5449struct hwrm_port_phy_i2c_read_output {5450	__le16	error_code;5451	__le16	req_type;5452	__le16	seq_id;5453	__le16	resp_len;5454	__le32	data[16];5455	u8	unused_0[7];5456	u8	valid;5457};5458 5459/* hwrm_port_phy_mdio_write_input (size:320b/40B) */5460struct hwrm_port_phy_mdio_write_input {5461	__le16	req_type;5462	__le16	cmpl_ring;5463	__le16	seq_id;5464	__le16	target_id;5465	__le64	resp_addr;5466	__le32	unused_0[2];5467	__le16	port_id;5468	u8	phy_addr;5469	u8	dev_addr;5470	__le16	reg_addr;5471	__le16	reg_data;5472	u8	cl45_mdio;5473	u8	unused_1[7];5474};5475 5476/* hwrm_port_phy_mdio_write_output (size:128b/16B) */5477struct hwrm_port_phy_mdio_write_output {5478	__le16	error_code;5479	__le16	req_type;5480	__le16	seq_id;5481	__le16	resp_len;5482	u8	unused_0[7];5483	u8	valid;5484};5485 5486/* hwrm_port_phy_mdio_read_input (size:256b/32B) */5487struct hwrm_port_phy_mdio_read_input {5488	__le16	req_type;5489	__le16	cmpl_ring;5490	__le16	seq_id;5491	__le16	target_id;5492	__le64	resp_addr;5493	__le32	unused_0[2];5494	__le16	port_id;5495	u8	phy_addr;5496	u8	dev_addr;5497	__le16	reg_addr;5498	u8	cl45_mdio;5499	u8	unused_1;5500};5501 5502/* hwrm_port_phy_mdio_read_output (size:128b/16B) */5503struct hwrm_port_phy_mdio_read_output {5504	__le16	error_code;5505	__le16	req_type;5506	__le16	seq_id;5507	__le16	resp_len;5508	__le16	reg_data;5509	u8	unused_0[5];5510	u8	valid;5511};5512 5513/* hwrm_port_led_cfg_input (size:512b/64B) */5514struct hwrm_port_led_cfg_input {5515	__le16	req_type;5516	__le16	cmpl_ring;5517	__le16	seq_id;5518	__le16	target_id;5519	__le64	resp_addr;5520	__le32	enables;5521	#define PORT_LED_CFG_REQ_ENABLES_LED0_ID            0x1UL5522	#define PORT_LED_CFG_REQ_ENABLES_LED0_STATE         0x2UL5523	#define PORT_LED_CFG_REQ_ENABLES_LED0_COLOR         0x4UL5524	#define PORT_LED_CFG_REQ_ENABLES_LED0_BLINK_ON      0x8UL5525	#define PORT_LED_CFG_REQ_ENABLES_LED0_BLINK_OFF     0x10UL5526	#define PORT_LED_CFG_REQ_ENABLES_LED0_GROUP_ID      0x20UL5527	#define PORT_LED_CFG_REQ_ENABLES_LED1_ID            0x40UL5528	#define PORT_LED_CFG_REQ_ENABLES_LED1_STATE         0x80UL5529	#define PORT_LED_CFG_REQ_ENABLES_LED1_COLOR         0x100UL5530	#define PORT_LED_CFG_REQ_ENABLES_LED1_BLINK_ON      0x200UL5531	#define PORT_LED_CFG_REQ_ENABLES_LED1_BLINK_OFF     0x400UL5532	#define PORT_LED_CFG_REQ_ENABLES_LED1_GROUP_ID      0x800UL5533	#define PORT_LED_CFG_REQ_ENABLES_LED2_ID            0x1000UL5534	#define PORT_LED_CFG_REQ_ENABLES_LED2_STATE         0x2000UL5535	#define PORT_LED_CFG_REQ_ENABLES_LED2_COLOR         0x4000UL5536	#define PORT_LED_CFG_REQ_ENABLES_LED2_BLINK_ON      0x8000UL5537	#define PORT_LED_CFG_REQ_ENABLES_LED2_BLINK_OFF     0x10000UL5538	#define PORT_LED_CFG_REQ_ENABLES_LED2_GROUP_ID      0x20000UL5539	#define PORT_LED_CFG_REQ_ENABLES_LED3_ID            0x40000UL5540	#define PORT_LED_CFG_REQ_ENABLES_LED3_STATE         0x80000UL5541	#define PORT_LED_CFG_REQ_ENABLES_LED3_COLOR         0x100000UL5542	#define PORT_LED_CFG_REQ_ENABLES_LED3_BLINK_ON      0x200000UL5543	#define PORT_LED_CFG_REQ_ENABLES_LED3_BLINK_OFF     0x400000UL5544	#define PORT_LED_CFG_REQ_ENABLES_LED3_GROUP_ID      0x800000UL5545	__le16	port_id;5546	u8	num_leds;5547	u8	rsvd;5548	u8	led0_id;5549	u8	led0_state;5550	#define PORT_LED_CFG_REQ_LED0_STATE_DEFAULT  0x0UL5551	#define PORT_LED_CFG_REQ_LED0_STATE_OFF      0x1UL5552	#define PORT_LED_CFG_REQ_LED0_STATE_ON       0x2UL5553	#define PORT_LED_CFG_REQ_LED0_STATE_BLINK    0x3UL5554	#define PORT_LED_CFG_REQ_LED0_STATE_BLINKALT 0x4UL5555	#define PORT_LED_CFG_REQ_LED0_STATE_LAST    PORT_LED_CFG_REQ_LED0_STATE_BLINKALT5556	u8	led0_color;5557	#define PORT_LED_CFG_REQ_LED0_COLOR_DEFAULT    0x0UL5558	#define PORT_LED_CFG_REQ_LED0_COLOR_AMBER      0x1UL5559	#define PORT_LED_CFG_REQ_LED0_COLOR_GREEN      0x2UL5560	#define PORT_LED_CFG_REQ_LED0_COLOR_GREENAMBER 0x3UL5561	#define PORT_LED_CFG_REQ_LED0_COLOR_LAST      PORT_LED_CFG_REQ_LED0_COLOR_GREENAMBER5562	u8	unused_0;5563	__le16	led0_blink_on;5564	__le16	led0_blink_off;5565	u8	led0_group_id;5566	u8	rsvd0;5567	u8	led1_id;5568	u8	led1_state;5569	#define PORT_LED_CFG_REQ_LED1_STATE_DEFAULT  0x0UL5570	#define PORT_LED_CFG_REQ_LED1_STATE_OFF      0x1UL5571	#define PORT_LED_CFG_REQ_LED1_STATE_ON       0x2UL5572	#define PORT_LED_CFG_REQ_LED1_STATE_BLINK    0x3UL5573	#define PORT_LED_CFG_REQ_LED1_STATE_BLINKALT 0x4UL5574	#define PORT_LED_CFG_REQ_LED1_STATE_LAST    PORT_LED_CFG_REQ_LED1_STATE_BLINKALT5575	u8	led1_color;5576	#define PORT_LED_CFG_REQ_LED1_COLOR_DEFAULT    0x0UL5577	#define PORT_LED_CFG_REQ_LED1_COLOR_AMBER      0x1UL5578	#define PORT_LED_CFG_REQ_LED1_COLOR_GREEN      0x2UL5579	#define PORT_LED_CFG_REQ_LED1_COLOR_GREENAMBER 0x3UL5580	#define PORT_LED_CFG_REQ_LED1_COLOR_LAST      PORT_LED_CFG_REQ_LED1_COLOR_GREENAMBER5581	u8	unused_1;5582	__le16	led1_blink_on;5583	__le16	led1_blink_off;5584	u8	led1_group_id;5585	u8	rsvd1;5586	u8	led2_id;5587	u8	led2_state;5588	#define PORT_LED_CFG_REQ_LED2_STATE_DEFAULT  0x0UL5589	#define PORT_LED_CFG_REQ_LED2_STATE_OFF      0x1UL5590	#define PORT_LED_CFG_REQ_LED2_STATE_ON       0x2UL5591	#define PORT_LED_CFG_REQ_LED2_STATE_BLINK    0x3UL5592	#define PORT_LED_CFG_REQ_LED2_STATE_BLINKALT 0x4UL5593	#define PORT_LED_CFG_REQ_LED2_STATE_LAST    PORT_LED_CFG_REQ_LED2_STATE_BLINKALT5594	u8	led2_color;5595	#define PORT_LED_CFG_REQ_LED2_COLOR_DEFAULT    0x0UL5596	#define PORT_LED_CFG_REQ_LED2_COLOR_AMBER      0x1UL5597	#define PORT_LED_CFG_REQ_LED2_COLOR_GREEN      0x2UL5598	#define PORT_LED_CFG_REQ_LED2_COLOR_GREENAMBER 0x3UL5599	#define PORT_LED_CFG_REQ_LED2_COLOR_LAST      PORT_LED_CFG_REQ_LED2_COLOR_GREENAMBER5600	u8	unused_2;5601	__le16	led2_blink_on;5602	__le16	led2_blink_off;5603	u8	led2_group_id;5604	u8	rsvd2;5605	u8	led3_id;5606	u8	led3_state;5607	#define PORT_LED_CFG_REQ_LED3_STATE_DEFAULT  0x0UL5608	#define PORT_LED_CFG_REQ_LED3_STATE_OFF      0x1UL5609	#define PORT_LED_CFG_REQ_LED3_STATE_ON       0x2UL5610	#define PORT_LED_CFG_REQ_LED3_STATE_BLINK    0x3UL5611	#define PORT_LED_CFG_REQ_LED3_STATE_BLINKALT 0x4UL5612	#define PORT_LED_CFG_REQ_LED3_STATE_LAST    PORT_LED_CFG_REQ_LED3_STATE_BLINKALT5613	u8	led3_color;5614	#define PORT_LED_CFG_REQ_LED3_COLOR_DEFAULT    0x0UL5615	#define PORT_LED_CFG_REQ_LED3_COLOR_AMBER      0x1UL5616	#define PORT_LED_CFG_REQ_LED3_COLOR_GREEN      0x2UL5617	#define PORT_LED_CFG_REQ_LED3_COLOR_GREENAMBER 0x3UL5618	#define PORT_LED_CFG_REQ_LED3_COLOR_LAST      PORT_LED_CFG_REQ_LED3_COLOR_GREENAMBER5619	u8	unused_3;5620	__le16	led3_blink_on;5621	__le16	led3_blink_off;5622	u8	led3_group_id;5623	u8	rsvd3;5624};5625 5626/* hwrm_port_led_cfg_output (size:128b/16B) */5627struct hwrm_port_led_cfg_output {5628	__le16	error_code;5629	__le16	req_type;5630	__le16	seq_id;5631	__le16	resp_len;5632	u8	unused_0[7];5633	u8	valid;5634};5635 5636/* hwrm_port_led_qcfg_input (size:192b/24B) */5637struct hwrm_port_led_qcfg_input {5638	__le16	req_type;5639	__le16	cmpl_ring;5640	__le16	seq_id;5641	__le16	target_id;5642	__le64	resp_addr;5643	__le16	port_id;5644	u8	unused_0[6];5645};5646 5647/* hwrm_port_led_qcfg_output (size:448b/56B) */5648struct hwrm_port_led_qcfg_output {5649	__le16	error_code;5650	__le16	req_type;5651	__le16	seq_id;5652	__le16	resp_len;5653	u8	num_leds;5654	u8	led0_id;5655	u8	led0_type;5656	#define PORT_LED_QCFG_RESP_LED0_TYPE_SPEED    0x0UL5657	#define PORT_LED_QCFG_RESP_LED0_TYPE_ACTIVITY 0x1UL5658	#define PORT_LED_QCFG_RESP_LED0_TYPE_INVALID  0xffUL5659	#define PORT_LED_QCFG_RESP_LED0_TYPE_LAST    PORT_LED_QCFG_RESP_LED0_TYPE_INVALID5660	u8	led0_state;5661	#define PORT_LED_QCFG_RESP_LED0_STATE_DEFAULT  0x0UL5662	#define PORT_LED_QCFG_RESP_LED0_STATE_OFF      0x1UL5663	#define PORT_LED_QCFG_RESP_LED0_STATE_ON       0x2UL5664	#define PORT_LED_QCFG_RESP_LED0_STATE_BLINK    0x3UL5665	#define PORT_LED_QCFG_RESP_LED0_STATE_BLINKALT 0x4UL5666	#define PORT_LED_QCFG_RESP_LED0_STATE_LAST    PORT_LED_QCFG_RESP_LED0_STATE_BLINKALT5667	u8	led0_color;5668	#define PORT_LED_QCFG_RESP_LED0_COLOR_DEFAULT    0x0UL5669	#define PORT_LED_QCFG_RESP_LED0_COLOR_AMBER      0x1UL5670	#define PORT_LED_QCFG_RESP_LED0_COLOR_GREEN      0x2UL5671	#define PORT_LED_QCFG_RESP_LED0_COLOR_GREENAMBER 0x3UL5672	#define PORT_LED_QCFG_RESP_LED0_COLOR_LAST      PORT_LED_QCFG_RESP_LED0_COLOR_GREENAMBER5673	u8	unused_0;5674	__le16	led0_blink_on;5675	__le16	led0_blink_off;5676	u8	led0_group_id;5677	u8	led1_id;5678	u8	led1_type;5679	#define PORT_LED_QCFG_RESP_LED1_TYPE_SPEED    0x0UL5680	#define PORT_LED_QCFG_RESP_LED1_TYPE_ACTIVITY 0x1UL5681	#define PORT_LED_QCFG_RESP_LED1_TYPE_INVALID  0xffUL5682	#define PORT_LED_QCFG_RESP_LED1_TYPE_LAST    PORT_LED_QCFG_RESP_LED1_TYPE_INVALID5683	u8	led1_state;5684	#define PORT_LED_QCFG_RESP_LED1_STATE_DEFAULT  0x0UL5685	#define PORT_LED_QCFG_RESP_LED1_STATE_OFF      0x1UL5686	#define PORT_LED_QCFG_RESP_LED1_STATE_ON       0x2UL5687	#define PORT_LED_QCFG_RESP_LED1_STATE_BLINK    0x3UL5688	#define PORT_LED_QCFG_RESP_LED1_STATE_BLINKALT 0x4UL5689	#define PORT_LED_QCFG_RESP_LED1_STATE_LAST    PORT_LED_QCFG_RESP_LED1_STATE_BLINKALT5690	u8	led1_color;5691	#define PORT_LED_QCFG_RESP_LED1_COLOR_DEFAULT    0x0UL5692	#define PORT_LED_QCFG_RESP_LED1_COLOR_AMBER      0x1UL5693	#define PORT_LED_QCFG_RESP_LED1_COLOR_GREEN      0x2UL5694	#define PORT_LED_QCFG_RESP_LED1_COLOR_GREENAMBER 0x3UL5695	#define PORT_LED_QCFG_RESP_LED1_COLOR_LAST      PORT_LED_QCFG_RESP_LED1_COLOR_GREENAMBER5696	u8	unused_1;5697	__le16	led1_blink_on;5698	__le16	led1_blink_off;5699	u8	led1_group_id;5700	u8	led2_id;5701	u8	led2_type;5702	#define PORT_LED_QCFG_RESP_LED2_TYPE_SPEED    0x0UL5703	#define PORT_LED_QCFG_RESP_LED2_TYPE_ACTIVITY 0x1UL5704	#define PORT_LED_QCFG_RESP_LED2_TYPE_INVALID  0xffUL5705	#define PORT_LED_QCFG_RESP_LED2_TYPE_LAST    PORT_LED_QCFG_RESP_LED2_TYPE_INVALID5706	u8	led2_state;5707	#define PORT_LED_QCFG_RESP_LED2_STATE_DEFAULT  0x0UL5708	#define PORT_LED_QCFG_RESP_LED2_STATE_OFF      0x1UL5709	#define PORT_LED_QCFG_RESP_LED2_STATE_ON       0x2UL5710	#define PORT_LED_QCFG_RESP_LED2_STATE_BLINK    0x3UL5711	#define PORT_LED_QCFG_RESP_LED2_STATE_BLINKALT 0x4UL5712	#define PORT_LED_QCFG_RESP_LED2_STATE_LAST    PORT_LED_QCFG_RESP_LED2_STATE_BLINKALT5713	u8	led2_color;5714	#define PORT_LED_QCFG_RESP_LED2_COLOR_DEFAULT    0x0UL5715	#define PORT_LED_QCFG_RESP_LED2_COLOR_AMBER      0x1UL5716	#define PORT_LED_QCFG_RESP_LED2_COLOR_GREEN      0x2UL5717	#define PORT_LED_QCFG_RESP_LED2_COLOR_GREENAMBER 0x3UL5718	#define PORT_LED_QCFG_RESP_LED2_COLOR_LAST      PORT_LED_QCFG_RESP_LED2_COLOR_GREENAMBER5719	u8	unused_2;5720	__le16	led2_blink_on;5721	__le16	led2_blink_off;5722	u8	led2_group_id;5723	u8	led3_id;5724	u8	led3_type;5725	#define PORT_LED_QCFG_RESP_LED3_TYPE_SPEED    0x0UL5726	#define PORT_LED_QCFG_RESP_LED3_TYPE_ACTIVITY 0x1UL5727	#define PORT_LED_QCFG_RESP_LED3_TYPE_INVALID  0xffUL5728	#define PORT_LED_QCFG_RESP_LED3_TYPE_LAST    PORT_LED_QCFG_RESP_LED3_TYPE_INVALID5729	u8	led3_state;5730	#define PORT_LED_QCFG_RESP_LED3_STATE_DEFAULT  0x0UL5731	#define PORT_LED_QCFG_RESP_LED3_STATE_OFF      0x1UL5732	#define PORT_LED_QCFG_RESP_LED3_STATE_ON       0x2UL5733	#define PORT_LED_QCFG_RESP_LED3_STATE_BLINK    0x3UL5734	#define PORT_LED_QCFG_RESP_LED3_STATE_BLINKALT 0x4UL5735	#define PORT_LED_QCFG_RESP_LED3_STATE_LAST    PORT_LED_QCFG_RESP_LED3_STATE_BLINKALT5736	u8	led3_color;5737	#define PORT_LED_QCFG_RESP_LED3_COLOR_DEFAULT    0x0UL5738	#define PORT_LED_QCFG_RESP_LED3_COLOR_AMBER      0x1UL5739	#define PORT_LED_QCFG_RESP_LED3_COLOR_GREEN      0x2UL5740	#define PORT_LED_QCFG_RESP_LED3_COLOR_GREENAMBER 0x3UL5741	#define PORT_LED_QCFG_RESP_LED3_COLOR_LAST      PORT_LED_QCFG_RESP_LED3_COLOR_GREENAMBER5742	u8	unused_3;5743	__le16	led3_blink_on;5744	__le16	led3_blink_off;5745	u8	led3_group_id;5746	u8	unused_4[6];5747	u8	valid;5748};5749 5750/* hwrm_port_led_qcaps_input (size:192b/24B) */5751struct hwrm_port_led_qcaps_input {5752	__le16	req_type;5753	__le16	cmpl_ring;5754	__le16	seq_id;5755	__le16	target_id;5756	__le64	resp_addr;5757	__le16	port_id;5758	u8	unused_0[6];5759};5760 5761/* hwrm_port_led_qcaps_output (size:384b/48B) */5762struct hwrm_port_led_qcaps_output {5763	__le16	error_code;5764	__le16	req_type;5765	__le16	seq_id;5766	__le16	resp_len;5767	u8	num_leds;5768	u8	unused[3];5769	u8	led0_id;5770	u8	led0_type;5771	#define PORT_LED_QCAPS_RESP_LED0_TYPE_SPEED    0x0UL5772	#define PORT_LED_QCAPS_RESP_LED0_TYPE_ACTIVITY 0x1UL5773	#define PORT_LED_QCAPS_RESP_LED0_TYPE_INVALID  0xffUL5774	#define PORT_LED_QCAPS_RESP_LED0_TYPE_LAST    PORT_LED_QCAPS_RESP_LED0_TYPE_INVALID5775	u8	led0_group_id;5776	u8	unused_0;5777	__le16	led0_state_caps;5778	#define PORT_LED_QCAPS_RESP_LED0_STATE_CAPS_ENABLED                 0x1UL5779	#define PORT_LED_QCAPS_RESP_LED0_STATE_CAPS_OFF_SUPPORTED           0x2UL5780	#define PORT_LED_QCAPS_RESP_LED0_STATE_CAPS_ON_SUPPORTED            0x4UL5781	#define PORT_LED_QCAPS_RESP_LED0_STATE_CAPS_BLINK_SUPPORTED         0x8UL5782	#define PORT_LED_QCAPS_RESP_LED0_STATE_CAPS_BLINK_ALT_SUPPORTED     0x10UL5783	__le16	led0_color_caps;5784	#define PORT_LED_QCAPS_RESP_LED0_COLOR_CAPS_RSVD                0x1UL5785	#define PORT_LED_QCAPS_RESP_LED0_COLOR_CAPS_AMBER_SUPPORTED     0x2UL5786	#define PORT_LED_QCAPS_RESP_LED0_COLOR_CAPS_GREEN_SUPPORTED     0x4UL5787	u8	led1_id;5788	u8	led1_type;5789	#define PORT_LED_QCAPS_RESP_LED1_TYPE_SPEED    0x0UL5790	#define PORT_LED_QCAPS_RESP_LED1_TYPE_ACTIVITY 0x1UL5791	#define PORT_LED_QCAPS_RESP_LED1_TYPE_INVALID  0xffUL5792	#define PORT_LED_QCAPS_RESP_LED1_TYPE_LAST    PORT_LED_QCAPS_RESP_LED1_TYPE_INVALID5793	u8	led1_group_id;5794	u8	unused_1;5795	__le16	led1_state_caps;5796	#define PORT_LED_QCAPS_RESP_LED1_STATE_CAPS_ENABLED                 0x1UL5797	#define PORT_LED_QCAPS_RESP_LED1_STATE_CAPS_OFF_SUPPORTED           0x2UL5798	#define PORT_LED_QCAPS_RESP_LED1_STATE_CAPS_ON_SUPPORTED            0x4UL5799	#define PORT_LED_QCAPS_RESP_LED1_STATE_CAPS_BLINK_SUPPORTED         0x8UL5800	#define PORT_LED_QCAPS_RESP_LED1_STATE_CAPS_BLINK_ALT_SUPPORTED     0x10UL5801	__le16	led1_color_caps;5802	#define PORT_LED_QCAPS_RESP_LED1_COLOR_CAPS_RSVD                0x1UL5803	#define PORT_LED_QCAPS_RESP_LED1_COLOR_CAPS_AMBER_SUPPORTED     0x2UL5804	#define PORT_LED_QCAPS_RESP_LED1_COLOR_CAPS_GREEN_SUPPORTED     0x4UL5805	u8	led2_id;5806	u8	led2_type;5807	#define PORT_LED_QCAPS_RESP_LED2_TYPE_SPEED    0x0UL5808	#define PORT_LED_QCAPS_RESP_LED2_TYPE_ACTIVITY 0x1UL5809	#define PORT_LED_QCAPS_RESP_LED2_TYPE_INVALID  0xffUL5810	#define PORT_LED_QCAPS_RESP_LED2_TYPE_LAST    PORT_LED_QCAPS_RESP_LED2_TYPE_INVALID5811	u8	led2_group_id;5812	u8	unused_2;5813	__le16	led2_state_caps;5814	#define PORT_LED_QCAPS_RESP_LED2_STATE_CAPS_ENABLED                 0x1UL5815	#define PORT_LED_QCAPS_RESP_LED2_STATE_CAPS_OFF_SUPPORTED           0x2UL5816	#define PORT_LED_QCAPS_RESP_LED2_STATE_CAPS_ON_SUPPORTED            0x4UL5817	#define PORT_LED_QCAPS_RESP_LED2_STATE_CAPS_BLINK_SUPPORTED         0x8UL5818	#define PORT_LED_QCAPS_RESP_LED2_STATE_CAPS_BLINK_ALT_SUPPORTED     0x10UL5819	__le16	led2_color_caps;5820	#define PORT_LED_QCAPS_RESP_LED2_COLOR_CAPS_RSVD                0x1UL5821	#define PORT_LED_QCAPS_RESP_LED2_COLOR_CAPS_AMBER_SUPPORTED     0x2UL5822	#define PORT_LED_QCAPS_RESP_LED2_COLOR_CAPS_GREEN_SUPPORTED     0x4UL5823	u8	led3_id;5824	u8	led3_type;5825	#define PORT_LED_QCAPS_RESP_LED3_TYPE_SPEED    0x0UL5826	#define PORT_LED_QCAPS_RESP_LED3_TYPE_ACTIVITY 0x1UL5827	#define PORT_LED_QCAPS_RESP_LED3_TYPE_INVALID  0xffUL5828	#define PORT_LED_QCAPS_RESP_LED3_TYPE_LAST    PORT_LED_QCAPS_RESP_LED3_TYPE_INVALID5829	u8	led3_group_id;5830	u8	unused_3;5831	__le16	led3_state_caps;5832	#define PORT_LED_QCAPS_RESP_LED3_STATE_CAPS_ENABLED                 0x1UL5833	#define PORT_LED_QCAPS_RESP_LED3_STATE_CAPS_OFF_SUPPORTED           0x2UL5834	#define PORT_LED_QCAPS_RESP_LED3_STATE_CAPS_ON_SUPPORTED            0x4UL5835	#define PORT_LED_QCAPS_RESP_LED3_STATE_CAPS_BLINK_SUPPORTED         0x8UL5836	#define PORT_LED_QCAPS_RESP_LED3_STATE_CAPS_BLINK_ALT_SUPPORTED     0x10UL5837	__le16	led3_color_caps;5838	#define PORT_LED_QCAPS_RESP_LED3_COLOR_CAPS_RSVD                0x1UL5839	#define PORT_LED_QCAPS_RESP_LED3_COLOR_CAPS_AMBER_SUPPORTED     0x2UL5840	#define PORT_LED_QCAPS_RESP_LED3_COLOR_CAPS_GREEN_SUPPORTED     0x4UL5841	u8	unused_4[3];5842	u8	valid;5843};5844 5845/* hwrm_port_mac_qcaps_input (size:192b/24B) */5846struct hwrm_port_mac_qcaps_input {5847	__le16	req_type;5848	__le16	cmpl_ring;5849	__le16	seq_id;5850	__le16	target_id;5851	__le64	resp_addr;5852	__le16	port_id;5853	u8	unused_0[6];5854};5855 5856/* hwrm_port_mac_qcaps_output (size:128b/16B) */5857struct hwrm_port_mac_qcaps_output {5858	__le16	error_code;5859	__le16	req_type;5860	__le16	seq_id;5861	__le16	resp_len;5862	u8	flags;5863	#define PORT_MAC_QCAPS_RESP_FLAGS_LOCAL_LPBK_NOT_SUPPORTED     0x1UL5864	#define PORT_MAC_QCAPS_RESP_FLAGS_REMOTE_LPBK_SUPPORTED        0x2UL5865	u8	unused_0[6];5866	u8	valid;5867};5868 5869/* hwrm_queue_qportcfg_input (size:192b/24B) */5870struct hwrm_queue_qportcfg_input {5871	__le16	req_type;5872	__le16	cmpl_ring;5873	__le16	seq_id;5874	__le16	target_id;5875	__le64	resp_addr;5876	__le32	flags;5877	#define QUEUE_QPORTCFG_REQ_FLAGS_PATH     0x1UL5878	#define QUEUE_QPORTCFG_REQ_FLAGS_PATH_TX    0x0UL5879	#define QUEUE_QPORTCFG_REQ_FLAGS_PATH_RX    0x1UL5880	#define QUEUE_QPORTCFG_REQ_FLAGS_PATH_LAST QUEUE_QPORTCFG_REQ_FLAGS_PATH_RX5881	__le16	port_id;5882	u8	drv_qmap_cap;5883	#define QUEUE_QPORTCFG_REQ_DRV_QMAP_CAP_DISABLED 0x0UL5884	#define QUEUE_QPORTCFG_REQ_DRV_QMAP_CAP_ENABLED  0x1UL5885	#define QUEUE_QPORTCFG_REQ_DRV_QMAP_CAP_LAST    QUEUE_QPORTCFG_REQ_DRV_QMAP_CAP_ENABLED5886	u8	unused_0;5887};5888 5889/* hwrm_queue_qportcfg_output (size:1344b/168B) */5890struct hwrm_queue_qportcfg_output {5891	__le16	error_code;5892	__le16	req_type;5893	__le16	seq_id;5894	__le16	resp_len;5895	u8	max_configurable_queues;5896	u8	max_configurable_lossless_queues;5897	u8	queue_cfg_allowed;5898	u8	queue_cfg_info;5899	#define QUEUE_QPORTCFG_RESP_QUEUE_CFG_INFO_ASYM_CFG             0x1UL5900	#define QUEUE_QPORTCFG_RESP_QUEUE_CFG_INFO_USE_PROFILE_TYPE     0x2UL5901	u8	queue_pfcenable_cfg_allowed;5902	u8	queue_pri2cos_cfg_allowed;5903	u8	queue_cos2bw_cfg_allowed;5904	u8	queue_id0;5905	u8	queue_id0_service_profile;5906	#define QUEUE_QPORTCFG_RESP_QUEUE_ID0_SERVICE_PROFILE_LOSSY          0x0UL5907	#define QUEUE_QPORTCFG_RESP_QUEUE_ID0_SERVICE_PROFILE_LOSSLESS       0x1UL5908	#define QUEUE_QPORTCFG_RESP_QUEUE_ID0_SERVICE_PROFILE_LOSSLESS_ROCE  0x1UL5909	#define QUEUE_QPORTCFG_RESP_QUEUE_ID0_SERVICE_PROFILE_LOSSY_ROCE_CNP 0x2UL5910	#define QUEUE_QPORTCFG_RESP_QUEUE_ID0_SERVICE_PROFILE_LOSSLESS_NIC   0x3UL5911	#define QUEUE_QPORTCFG_RESP_QUEUE_ID0_SERVICE_PROFILE_UNKNOWN        0xffUL5912	#define QUEUE_QPORTCFG_RESP_QUEUE_ID0_SERVICE_PROFILE_LAST          QUEUE_QPORTCFG_RESP_QUEUE_ID0_SERVICE_PROFILE_UNKNOWN5913	u8	queue_id1;5914	u8	queue_id1_service_profile;5915	#define QUEUE_QPORTCFG_RESP_QUEUE_ID1_SERVICE_PROFILE_LOSSY          0x0UL5916	#define QUEUE_QPORTCFG_RESP_QUEUE_ID1_SERVICE_PROFILE_LOSSLESS       0x1UL5917	#define QUEUE_QPORTCFG_RESP_QUEUE_ID1_SERVICE_PROFILE_LOSSLESS_ROCE  0x1UL5918	#define QUEUE_QPORTCFG_RESP_QUEUE_ID1_SERVICE_PROFILE_LOSSY_ROCE_CNP 0x2UL5919	#define QUEUE_QPORTCFG_RESP_QUEUE_ID1_SERVICE_PROFILE_LOSSLESS_NIC   0x3UL5920	#define QUEUE_QPORTCFG_RESP_QUEUE_ID1_SERVICE_PROFILE_UNKNOWN        0xffUL5921	#define QUEUE_QPORTCFG_RESP_QUEUE_ID1_SERVICE_PROFILE_LAST          QUEUE_QPORTCFG_RESP_QUEUE_ID1_SERVICE_PROFILE_UNKNOWN5922	u8	queue_id2;5923	u8	queue_id2_service_profile;5924	#define QUEUE_QPORTCFG_RESP_QUEUE_ID2_SERVICE_PROFILE_LOSSY          0x0UL5925	#define QUEUE_QPORTCFG_RESP_QUEUE_ID2_SERVICE_PROFILE_LOSSLESS       0x1UL5926	#define QUEUE_QPORTCFG_RESP_QUEUE_ID2_SERVICE_PROFILE_LOSSLESS_ROCE  0x1UL5927	#define QUEUE_QPORTCFG_RESP_QUEUE_ID2_SERVICE_PROFILE_LOSSY_ROCE_CNP 0x2UL5928	#define QUEUE_QPORTCFG_RESP_QUEUE_ID2_SERVICE_PROFILE_LOSSLESS_NIC   0x3UL5929	#define QUEUE_QPORTCFG_RESP_QUEUE_ID2_SERVICE_PROFILE_UNKNOWN        0xffUL5930	#define QUEUE_QPORTCFG_RESP_QUEUE_ID2_SERVICE_PROFILE_LAST          QUEUE_QPORTCFG_RESP_QUEUE_ID2_SERVICE_PROFILE_UNKNOWN5931	u8	queue_id3;5932	u8	queue_id3_service_profile;5933	#define QUEUE_QPORTCFG_RESP_QUEUE_ID3_SERVICE_PROFILE_LOSSY          0x0UL5934	#define QUEUE_QPORTCFG_RESP_QUEUE_ID3_SERVICE_PROFILE_LOSSLESS       0x1UL5935	#define QUEUE_QPORTCFG_RESP_QUEUE_ID3_SERVICE_PROFILE_LOSSLESS_ROCE  0x1UL5936	#define QUEUE_QPORTCFG_RESP_QUEUE_ID3_SERVICE_PROFILE_LOSSY_ROCE_CNP 0x2UL5937	#define QUEUE_QPORTCFG_RESP_QUEUE_ID3_SERVICE_PROFILE_LOSSLESS_NIC   0x3UL5938	#define QUEUE_QPORTCFG_RESP_QUEUE_ID3_SERVICE_PROFILE_UNKNOWN        0xffUL5939	#define QUEUE_QPORTCFG_RESP_QUEUE_ID3_SERVICE_PROFILE_LAST          QUEUE_QPORTCFG_RESP_QUEUE_ID3_SERVICE_PROFILE_UNKNOWN5940	u8	queue_id4;5941	u8	queue_id4_service_profile;5942	#define QUEUE_QPORTCFG_RESP_QUEUE_ID4_SERVICE_PROFILE_LOSSY          0x0UL5943	#define QUEUE_QPORTCFG_RESP_QUEUE_ID4_SERVICE_PROFILE_LOSSLESS       0x1UL5944	#define QUEUE_QPORTCFG_RESP_QUEUE_ID4_SERVICE_PROFILE_LOSSLESS_ROCE  0x1UL5945	#define QUEUE_QPORTCFG_RESP_QUEUE_ID4_SERVICE_PROFILE_LOSSY_ROCE_CNP 0x2UL5946	#define QUEUE_QPORTCFG_RESP_QUEUE_ID4_SERVICE_PROFILE_LOSSLESS_NIC   0x3UL5947	#define QUEUE_QPORTCFG_RESP_QUEUE_ID4_SERVICE_PROFILE_UNKNOWN        0xffUL5948	#define QUEUE_QPORTCFG_RESP_QUEUE_ID4_SERVICE_PROFILE_LAST          QUEUE_QPORTCFG_RESP_QUEUE_ID4_SERVICE_PROFILE_UNKNOWN5949	u8	queue_id5;5950	u8	queue_id5_service_profile;5951	#define QUEUE_QPORTCFG_RESP_QUEUE_ID5_SERVICE_PROFILE_LOSSY          0x0UL5952	#define QUEUE_QPORTCFG_RESP_QUEUE_ID5_SERVICE_PROFILE_LOSSLESS       0x1UL5953	#define QUEUE_QPORTCFG_RESP_QUEUE_ID5_SERVICE_PROFILE_LOSSLESS_ROCE  0x1UL5954	#define QUEUE_QPORTCFG_RESP_QUEUE_ID5_SERVICE_PROFILE_LOSSY_ROCE_CNP 0x2UL5955	#define QUEUE_QPORTCFG_RESP_QUEUE_ID5_SERVICE_PROFILE_LOSSLESS_NIC   0x3UL5956	#define QUEUE_QPORTCFG_RESP_QUEUE_ID5_SERVICE_PROFILE_UNKNOWN        0xffUL5957	#define QUEUE_QPORTCFG_RESP_QUEUE_ID5_SERVICE_PROFILE_LAST          QUEUE_QPORTCFG_RESP_QUEUE_ID5_SERVICE_PROFILE_UNKNOWN5958	u8	queue_id6;5959	u8	queue_id6_service_profile;5960	#define QUEUE_QPORTCFG_RESP_QUEUE_ID6_SERVICE_PROFILE_LOSSY          0x0UL5961	#define QUEUE_QPORTCFG_RESP_QUEUE_ID6_SERVICE_PROFILE_LOSSLESS       0x1UL5962	#define QUEUE_QPORTCFG_RESP_QUEUE_ID6_SERVICE_PROFILE_LOSSLESS_ROCE  0x1UL5963	#define QUEUE_QPORTCFG_RESP_QUEUE_ID6_SERVICE_PROFILE_LOSSY_ROCE_CNP 0x2UL5964	#define QUEUE_QPORTCFG_RESP_QUEUE_ID6_SERVICE_PROFILE_LOSSLESS_NIC   0x3UL5965	#define QUEUE_QPORTCFG_RESP_QUEUE_ID6_SERVICE_PROFILE_UNKNOWN        0xffUL5966	#define QUEUE_QPORTCFG_RESP_QUEUE_ID6_SERVICE_PROFILE_LAST          QUEUE_QPORTCFG_RESP_QUEUE_ID6_SERVICE_PROFILE_UNKNOWN5967	u8	queue_id7;5968	u8	queue_id7_service_profile;5969	#define QUEUE_QPORTCFG_RESP_QUEUE_ID7_SERVICE_PROFILE_LOSSY          0x0UL5970	#define QUEUE_QPORTCFG_RESP_QUEUE_ID7_SERVICE_PROFILE_LOSSLESS       0x1UL5971	#define QUEUE_QPORTCFG_RESP_QUEUE_ID7_SERVICE_PROFILE_LOSSLESS_ROCE  0x1UL5972	#define QUEUE_QPORTCFG_RESP_QUEUE_ID7_SERVICE_PROFILE_LOSSY_ROCE_CNP 0x2UL5973	#define QUEUE_QPORTCFG_RESP_QUEUE_ID7_SERVICE_PROFILE_LOSSLESS_NIC   0x3UL5974	#define QUEUE_QPORTCFG_RESP_QUEUE_ID7_SERVICE_PROFILE_UNKNOWN        0xffUL5975	#define QUEUE_QPORTCFG_RESP_QUEUE_ID7_SERVICE_PROFILE_LAST          QUEUE_QPORTCFG_RESP_QUEUE_ID7_SERVICE_PROFILE_UNKNOWN5976	u8	queue_id0_service_profile_type;5977	#define QUEUE_QPORTCFG_RESP_QUEUE_ID0_SERVICE_PROFILE_TYPE_ROCE     0x1UL5978	#define QUEUE_QPORTCFG_RESP_QUEUE_ID0_SERVICE_PROFILE_TYPE_NIC      0x2UL5979	#define QUEUE_QPORTCFG_RESP_QUEUE_ID0_SERVICE_PROFILE_TYPE_CNP      0x4UL5980	char	qid0_name[16];5981	char	qid1_name[16];5982	char	qid2_name[16];5983	char	qid3_name[16];5984	char	qid4_name[16];5985	char	qid5_name[16];5986	char	qid6_name[16];5987	char	qid7_name[16];5988	u8	queue_id1_service_profile_type;5989	#define QUEUE_QPORTCFG_RESP_QUEUE_ID1_SERVICE_PROFILE_TYPE_ROCE     0x1UL5990	#define QUEUE_QPORTCFG_RESP_QUEUE_ID1_SERVICE_PROFILE_TYPE_NIC      0x2UL5991	#define QUEUE_QPORTCFG_RESP_QUEUE_ID1_SERVICE_PROFILE_TYPE_CNP      0x4UL5992	u8	queue_id2_service_profile_type;5993	#define QUEUE_QPORTCFG_RESP_QUEUE_ID2_SERVICE_PROFILE_TYPE_ROCE     0x1UL5994	#define QUEUE_QPORTCFG_RESP_QUEUE_ID2_SERVICE_PROFILE_TYPE_NIC      0x2UL5995	#define QUEUE_QPORTCFG_RESP_QUEUE_ID2_SERVICE_PROFILE_TYPE_CNP      0x4UL5996	u8	queue_id3_service_profile_type;5997	#define QUEUE_QPORTCFG_RESP_QUEUE_ID3_SERVICE_PROFILE_TYPE_ROCE     0x1UL5998	#define QUEUE_QPORTCFG_RESP_QUEUE_ID3_SERVICE_PROFILE_TYPE_NIC      0x2UL5999	#define QUEUE_QPORTCFG_RESP_QUEUE_ID3_SERVICE_PROFILE_TYPE_CNP      0x4UL6000	u8	queue_id4_service_profile_type;6001	#define QUEUE_QPORTCFG_RESP_QUEUE_ID4_SERVICE_PROFILE_TYPE_ROCE     0x1UL6002	#define QUEUE_QPORTCFG_RESP_QUEUE_ID4_SERVICE_PROFILE_TYPE_NIC      0x2UL6003	#define QUEUE_QPORTCFG_RESP_QUEUE_ID4_SERVICE_PROFILE_TYPE_CNP      0x4UL6004	u8	queue_id5_service_profile_type;6005	#define QUEUE_QPORTCFG_RESP_QUEUE_ID5_SERVICE_PROFILE_TYPE_ROCE     0x1UL6006	#define QUEUE_QPORTCFG_RESP_QUEUE_ID5_SERVICE_PROFILE_TYPE_NIC      0x2UL6007	#define QUEUE_QPORTCFG_RESP_QUEUE_ID5_SERVICE_PROFILE_TYPE_CNP      0x4UL6008	u8	queue_id6_service_profile_type;6009	#define QUEUE_QPORTCFG_RESP_QUEUE_ID6_SERVICE_PROFILE_TYPE_ROCE     0x1UL6010	#define QUEUE_QPORTCFG_RESP_QUEUE_ID6_SERVICE_PROFILE_TYPE_NIC      0x2UL6011	#define QUEUE_QPORTCFG_RESP_QUEUE_ID6_SERVICE_PROFILE_TYPE_CNP      0x4UL6012	u8	queue_id7_service_profile_type;6013	#define QUEUE_QPORTCFG_RESP_QUEUE_ID7_SERVICE_PROFILE_TYPE_ROCE     0x1UL6014	#define QUEUE_QPORTCFG_RESP_QUEUE_ID7_SERVICE_PROFILE_TYPE_NIC      0x2UL6015	#define QUEUE_QPORTCFG_RESP_QUEUE_ID7_SERVICE_PROFILE_TYPE_CNP      0x4UL6016	u8	valid;6017};6018 6019/* hwrm_queue_qcfg_input (size:192b/24B) */6020struct hwrm_queue_qcfg_input {6021	__le16	req_type;6022	__le16	cmpl_ring;6023	__le16	seq_id;6024	__le16	target_id;6025	__le64	resp_addr;6026	__le32	flags;6027	#define QUEUE_QCFG_REQ_FLAGS_PATH     0x1UL6028	#define QUEUE_QCFG_REQ_FLAGS_PATH_TX    0x0UL6029	#define QUEUE_QCFG_REQ_FLAGS_PATH_RX    0x1UL6030	#define QUEUE_QCFG_REQ_FLAGS_PATH_LAST QUEUE_QCFG_REQ_FLAGS_PATH_RX6031	__le32	queue_id;6032};6033 6034/* hwrm_queue_qcfg_output (size:128b/16B) */6035struct hwrm_queue_qcfg_output {6036	__le16	error_code;6037	__le16	req_type;6038	__le16	seq_id;6039	__le16	resp_len;6040	__le32	queue_len;6041	u8	service_profile;6042	#define QUEUE_QCFG_RESP_SERVICE_PROFILE_LOSSY    0x0UL6043	#define QUEUE_QCFG_RESP_SERVICE_PROFILE_LOSSLESS 0x1UL6044	#define QUEUE_QCFG_RESP_SERVICE_PROFILE_UNKNOWN  0xffUL6045	#define QUEUE_QCFG_RESP_SERVICE_PROFILE_LAST    QUEUE_QCFG_RESP_SERVICE_PROFILE_UNKNOWN6046	u8	queue_cfg_info;6047	#define QUEUE_QCFG_RESP_QUEUE_CFG_INFO_ASYM_CFG     0x1UL6048	u8	unused_0;6049	u8	valid;6050};6051 6052/* hwrm_queue_cfg_input (size:320b/40B) */6053struct hwrm_queue_cfg_input {6054	__le16	req_type;6055	__le16	cmpl_ring;6056	__le16	seq_id;6057	__le16	target_id;6058	__le64	resp_addr;6059	__le32	flags;6060	#define QUEUE_CFG_REQ_FLAGS_PATH_MASK 0x3UL6061	#define QUEUE_CFG_REQ_FLAGS_PATH_SFT  06062	#define QUEUE_CFG_REQ_FLAGS_PATH_TX     0x0UL6063	#define QUEUE_CFG_REQ_FLAGS_PATH_RX     0x1UL6064	#define QUEUE_CFG_REQ_FLAGS_PATH_BIDIR  0x2UL6065	#define QUEUE_CFG_REQ_FLAGS_PATH_LAST  QUEUE_CFG_REQ_FLAGS_PATH_BIDIR6066	__le32	enables;6067	#define QUEUE_CFG_REQ_ENABLES_DFLT_LEN            0x1UL6068	#define QUEUE_CFG_REQ_ENABLES_SERVICE_PROFILE     0x2UL6069	__le32	queue_id;6070	__le32	dflt_len;6071	u8	service_profile;6072	#define QUEUE_CFG_REQ_SERVICE_PROFILE_LOSSY    0x0UL6073	#define QUEUE_CFG_REQ_SERVICE_PROFILE_LOSSLESS 0x1UL6074	#define QUEUE_CFG_REQ_SERVICE_PROFILE_UNKNOWN  0xffUL6075	#define QUEUE_CFG_REQ_SERVICE_PROFILE_LAST    QUEUE_CFG_REQ_SERVICE_PROFILE_UNKNOWN6076	u8	unused_0[7];6077};6078 6079/* hwrm_queue_cfg_output (size:128b/16B) */6080struct hwrm_queue_cfg_output {6081	__le16	error_code;6082	__le16	req_type;6083	__le16	seq_id;6084	__le16	resp_len;6085	u8	unused_0[7];6086	u8	valid;6087};6088 6089/* hwrm_queue_pfcenable_qcfg_input (size:192b/24B) */6090struct hwrm_queue_pfcenable_qcfg_input {6091	__le16	req_type;6092	__le16	cmpl_ring;6093	__le16	seq_id;6094	__le16	target_id;6095	__le64	resp_addr;6096	__le16	port_id;6097	u8	unused_0[6];6098};6099 6100/* hwrm_queue_pfcenable_qcfg_output (size:128b/16B) */6101struct hwrm_queue_pfcenable_qcfg_output {6102	__le16	error_code;6103	__le16	req_type;6104	__le16	seq_id;6105	__le16	resp_len;6106	__le32	flags;6107	#define QUEUE_PFCENABLE_QCFG_RESP_FLAGS_PRI0_PFC_ENABLED              0x1UL6108	#define QUEUE_PFCENABLE_QCFG_RESP_FLAGS_PRI1_PFC_ENABLED              0x2UL6109	#define QUEUE_PFCENABLE_QCFG_RESP_FLAGS_PRI2_PFC_ENABLED              0x4UL6110	#define QUEUE_PFCENABLE_QCFG_RESP_FLAGS_PRI3_PFC_ENABLED              0x8UL6111	#define QUEUE_PFCENABLE_QCFG_RESP_FLAGS_PRI4_PFC_ENABLED              0x10UL6112	#define QUEUE_PFCENABLE_QCFG_RESP_FLAGS_PRI5_PFC_ENABLED              0x20UL6113	#define QUEUE_PFCENABLE_QCFG_RESP_FLAGS_PRI6_PFC_ENABLED              0x40UL6114	#define QUEUE_PFCENABLE_QCFG_RESP_FLAGS_PRI7_PFC_ENABLED              0x80UL6115	#define QUEUE_PFCENABLE_QCFG_RESP_FLAGS_PRI0_PFC_WATCHDOG_ENABLED     0x100UL6116	#define QUEUE_PFCENABLE_QCFG_RESP_FLAGS_PRI1_PFC_WATCHDOG_ENABLED     0x200UL6117	#define QUEUE_PFCENABLE_QCFG_RESP_FLAGS_PRI2_PFC_WATCHDOG_ENABLED     0x400UL6118	#define QUEUE_PFCENABLE_QCFG_RESP_FLAGS_PRI3_PFC_WATCHDOG_ENABLED     0x800UL6119	#define QUEUE_PFCENABLE_QCFG_RESP_FLAGS_PRI4_PFC_WATCHDOG_ENABLED     0x1000UL6120	#define QUEUE_PFCENABLE_QCFG_RESP_FLAGS_PRI5_PFC_WATCHDOG_ENABLED     0x2000UL6121	#define QUEUE_PFCENABLE_QCFG_RESP_FLAGS_PRI6_PFC_WATCHDOG_ENABLED     0x4000UL6122	#define QUEUE_PFCENABLE_QCFG_RESP_FLAGS_PRI7_PFC_WATCHDOG_ENABLED     0x8000UL6123	u8	unused_0[3];6124	u8	valid;6125};6126 6127/* hwrm_queue_pfcenable_cfg_input (size:192b/24B) */6128struct hwrm_queue_pfcenable_cfg_input {6129	__le16	req_type;6130	__le16	cmpl_ring;6131	__le16	seq_id;6132	__le16	target_id;6133	__le64	resp_addr;6134	__le32	flags;6135	#define QUEUE_PFCENABLE_CFG_REQ_FLAGS_PRI0_PFC_ENABLED              0x1UL6136	#define QUEUE_PFCENABLE_CFG_REQ_FLAGS_PRI1_PFC_ENABLED              0x2UL6137	#define QUEUE_PFCENABLE_CFG_REQ_FLAGS_PRI2_PFC_ENABLED              0x4UL6138	#define QUEUE_PFCENABLE_CFG_REQ_FLAGS_PRI3_PFC_ENABLED              0x8UL6139	#define QUEUE_PFCENABLE_CFG_REQ_FLAGS_PRI4_PFC_ENABLED              0x10UL6140	#define QUEUE_PFCENABLE_CFG_REQ_FLAGS_PRI5_PFC_ENABLED              0x20UL6141	#define QUEUE_PFCENABLE_CFG_REQ_FLAGS_PRI6_PFC_ENABLED              0x40UL6142	#define QUEUE_PFCENABLE_CFG_REQ_FLAGS_PRI7_PFC_ENABLED              0x80UL6143	#define QUEUE_PFCENABLE_CFG_REQ_FLAGS_PRI0_PFC_WATCHDOG_ENABLED     0x100UL6144	#define QUEUE_PFCENABLE_CFG_REQ_FLAGS_PRI1_PFC_WATCHDOG_ENABLED     0x200UL6145	#define QUEUE_PFCENABLE_CFG_REQ_FLAGS_PRI2_PFC_WATCHDOG_ENABLED     0x400UL6146	#define QUEUE_PFCENABLE_CFG_REQ_FLAGS_PRI3_PFC_WATCHDOG_ENABLED     0x800UL6147	#define QUEUE_PFCENABLE_CFG_REQ_FLAGS_PRI4_PFC_WATCHDOG_ENABLED     0x1000UL6148	#define QUEUE_PFCENABLE_CFG_REQ_FLAGS_PRI5_PFC_WATCHDOG_ENABLED     0x2000UL6149	#define QUEUE_PFCENABLE_CFG_REQ_FLAGS_PRI6_PFC_WATCHDOG_ENABLED     0x4000UL6150	#define QUEUE_PFCENABLE_CFG_REQ_FLAGS_PRI7_PFC_WATCHDOG_ENABLED     0x8000UL6151	__le16	port_id;6152	u8	unused_0[2];6153};6154 6155/* hwrm_queue_pfcenable_cfg_output (size:128b/16B) */6156struct hwrm_queue_pfcenable_cfg_output {6157	__le16	error_code;6158	__le16	req_type;6159	__le16	seq_id;6160	__le16	resp_len;6161	u8	unused_0[7];6162	u8	valid;6163};6164 6165/* hwrm_queue_pri2cos_qcfg_input (size:192b/24B) */6166struct hwrm_queue_pri2cos_qcfg_input {6167	__le16	req_type;6168	__le16	cmpl_ring;6169	__le16	seq_id;6170	__le16	target_id;6171	__le64	resp_addr;6172	__le32	flags;6173	#define QUEUE_PRI2COS_QCFG_REQ_FLAGS_PATH      0x1UL6174	#define QUEUE_PRI2COS_QCFG_REQ_FLAGS_PATH_TX     0x0UL6175	#define QUEUE_PRI2COS_QCFG_REQ_FLAGS_PATH_RX     0x1UL6176	#define QUEUE_PRI2COS_QCFG_REQ_FLAGS_PATH_LAST  QUEUE_PRI2COS_QCFG_REQ_FLAGS_PATH_RX6177	#define QUEUE_PRI2COS_QCFG_REQ_FLAGS_IVLAN     0x2UL6178	u8	port_id;6179	u8	unused_0[3];6180};6181 6182/* hwrm_queue_pri2cos_qcfg_output (size:192b/24B) */6183struct hwrm_queue_pri2cos_qcfg_output {6184	__le16	error_code;6185	__le16	req_type;6186	__le16	seq_id;6187	__le16	resp_len;6188	u8	pri0_cos_queue_id;6189	u8	pri1_cos_queue_id;6190	u8	pri2_cos_queue_id;6191	u8	pri3_cos_queue_id;6192	u8	pri4_cos_queue_id;6193	u8	pri5_cos_queue_id;6194	u8	pri6_cos_queue_id;6195	u8	pri7_cos_queue_id;6196	u8	queue_cfg_info;6197	#define QUEUE_PRI2COS_QCFG_RESP_QUEUE_CFG_INFO_ASYM_CFG     0x1UL6198	u8	unused_0[6];6199	u8	valid;6200};6201 6202/* hwrm_queue_pri2cos_cfg_input (size:320b/40B) */6203struct hwrm_queue_pri2cos_cfg_input {6204	__le16	req_type;6205	__le16	cmpl_ring;6206	__le16	seq_id;6207	__le16	target_id;6208	__le64	resp_addr;6209	__le32	flags;6210	#define QUEUE_PRI2COS_CFG_REQ_FLAGS_PATH_MASK 0x3UL6211	#define QUEUE_PRI2COS_CFG_REQ_FLAGS_PATH_SFT  06212	#define QUEUE_PRI2COS_CFG_REQ_FLAGS_PATH_TX     0x0UL6213	#define QUEUE_PRI2COS_CFG_REQ_FLAGS_PATH_RX     0x1UL6214	#define QUEUE_PRI2COS_CFG_REQ_FLAGS_PATH_BIDIR  0x2UL6215	#define QUEUE_PRI2COS_CFG_REQ_FLAGS_PATH_LAST  QUEUE_PRI2COS_CFG_REQ_FLAGS_PATH_BIDIR6216	#define QUEUE_PRI2COS_CFG_REQ_FLAGS_IVLAN     0x4UL6217	__le32	enables;6218	#define QUEUE_PRI2COS_CFG_REQ_ENABLES_PRI0_COS_QUEUE_ID     0x1UL6219	#define QUEUE_PRI2COS_CFG_REQ_ENABLES_PRI1_COS_QUEUE_ID     0x2UL6220	#define QUEUE_PRI2COS_CFG_REQ_ENABLES_PRI2_COS_QUEUE_ID     0x4UL6221	#define QUEUE_PRI2COS_CFG_REQ_ENABLES_PRI3_COS_QUEUE_ID     0x8UL6222	#define QUEUE_PRI2COS_CFG_REQ_ENABLES_PRI4_COS_QUEUE_ID     0x10UL6223	#define QUEUE_PRI2COS_CFG_REQ_ENABLES_PRI5_COS_QUEUE_ID     0x20UL6224	#define QUEUE_PRI2COS_CFG_REQ_ENABLES_PRI6_COS_QUEUE_ID     0x40UL6225	#define QUEUE_PRI2COS_CFG_REQ_ENABLES_PRI7_COS_QUEUE_ID     0x80UL6226	u8	port_id;6227	u8	pri0_cos_queue_id;6228	u8	pri1_cos_queue_id;6229	u8	pri2_cos_queue_id;6230	u8	pri3_cos_queue_id;6231	u8	pri4_cos_queue_id;6232	u8	pri5_cos_queue_id;6233	u8	pri6_cos_queue_id;6234	u8	pri7_cos_queue_id;6235	u8	unused_0[7];6236};6237 6238/* hwrm_queue_pri2cos_cfg_output (size:128b/16B) */6239struct hwrm_queue_pri2cos_cfg_output {6240	__le16	error_code;6241	__le16	req_type;6242	__le16	seq_id;6243	__le16	resp_len;6244	u8	unused_0[7];6245	u8	valid;6246};6247 6248/* hwrm_queue_cos2bw_qcfg_input (size:192b/24B) */6249struct hwrm_queue_cos2bw_qcfg_input {6250	__le16	req_type;6251	__le16	cmpl_ring;6252	__le16	seq_id;6253	__le16	target_id;6254	__le64	resp_addr;6255	__le16	port_id;6256	u8	unused_0[6];6257};6258 6259/* hwrm_queue_cos2bw_qcfg_output (size:896b/112B) */6260struct hwrm_queue_cos2bw_qcfg_output {6261	__le16	error_code;6262	__le16	req_type;6263	__le16	seq_id;6264	__le16	resp_len;6265	u8	queue_id0;6266	u8	unused_0;6267	__le16	unused_1;6268	__le32	queue_id0_min_bw;6269	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MIN_BW_BW_VALUE_MASK             0xfffffffUL6270	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MIN_BW_BW_VALUE_SFT              06271	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MIN_BW_SCALE                     0x10000000UL6272	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MIN_BW_SCALE_BITS                  (0x0UL << 28)6273	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MIN_BW_SCALE_BYTES                 (0x1UL << 28)6274	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MIN_BW_SCALE_LAST                 QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MIN_BW_SCALE_BYTES6275	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_MASK        0xe0000000UL6276	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_SFT         296277	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_MEGA          (0x0UL << 29)6278	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_KILO          (0x2UL << 29)6279	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_BASE          (0x4UL << 29)6280	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_GIGA          (0x6UL << 29)6281	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_PERCENT1_100  (0x1UL << 29)6282	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_INVALID       (0x7UL << 29)6283	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_LAST         QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_INVALID6284	__le32	queue_id0_max_bw;6285	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MAX_BW_BW_VALUE_MASK             0xfffffffUL6286	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MAX_BW_BW_VALUE_SFT              06287	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MAX_BW_SCALE                     0x10000000UL6288	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MAX_BW_SCALE_BITS                  (0x0UL << 28)6289	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MAX_BW_SCALE_BYTES                 (0x1UL << 28)6290	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MAX_BW_SCALE_LAST                 QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MAX_BW_SCALE_BYTES6291	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_MASK        0xe0000000UL6292	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_SFT         296293	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_MEGA          (0x0UL << 29)6294	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_KILO          (0x2UL << 29)6295	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_BASE          (0x4UL << 29)6296	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_GIGA          (0x6UL << 29)6297	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_PERCENT1_100  (0x1UL << 29)6298	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_INVALID       (0x7UL << 29)6299	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_LAST         QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_INVALID6300	u8	queue_id0_tsa_assign;6301	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_TSA_ASSIGN_SP             0x0UL6302	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_TSA_ASSIGN_ETS            0x1UL6303	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_TSA_ASSIGN_RESERVED_FIRST 0x2UL6304	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID0_TSA_ASSIGN_RESERVED_LAST  0xffUL6305	u8	queue_id0_pri_lvl;6306	u8	queue_id0_bw_weight;6307	struct {6308		u8	queue_id;6309		__le32	queue_id_min_bw;6310	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MIN_BW_BW_VALUE_MASK             0xfffffffUL6311	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MIN_BW_BW_VALUE_SFT              06312	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MIN_BW_SCALE                     0x10000000UL6313	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MIN_BW_SCALE_BITS                  (0x0UL << 28)6314	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MIN_BW_SCALE_BYTES                 (0x1UL << 28)6315	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MIN_BW_SCALE_LAST                 QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MIN_BW_SCALE_BYTES6316	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_MASK        0xe0000000UL6317	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_SFT         296318	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_MEGA          (0x0UL << 29)6319	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_KILO          (0x2UL << 29)6320	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_BASE          (0x4UL << 29)6321	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_GIGA          (0x6UL << 29)6322	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_PERCENT1_100  (0x1UL << 29)6323	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_INVALID       (0x7UL << 29)6324	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_LAST         QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_INVALID6325		__le32	queue_id_max_bw;6326	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MAX_BW_BW_VALUE_MASK             0xfffffffUL6327	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MAX_BW_BW_VALUE_SFT              06328	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MAX_BW_SCALE                     0x10000000UL6329	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MAX_BW_SCALE_BITS                  (0x0UL << 28)6330	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MAX_BW_SCALE_BYTES                 (0x1UL << 28)6331	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MAX_BW_SCALE_LAST                 QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MAX_BW_SCALE_BYTES6332	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_MASK        0xe0000000UL6333	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_SFT         296334	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_MEGA          (0x0UL << 29)6335	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_KILO          (0x2UL << 29)6336	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_BASE          (0x4UL << 29)6337	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_GIGA          (0x6UL << 29)6338	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_PERCENT1_100  (0x1UL << 29)6339	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_INVALID       (0x7UL << 29)6340	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_LAST         QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_INVALID6341		u8	queue_id_tsa_assign;6342	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_TSA_ASSIGN_SP             0x0UL6343	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_TSA_ASSIGN_ETS            0x1UL6344	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_TSA_ASSIGN_RESERVED_FIRST 0x2UL6345	#define QUEUE_COS2BW_QCFG_RESP_QUEUE_ID_TSA_ASSIGN_RESERVED_LAST  0xffUL6346		u8	queue_id_pri_lvl;6347		u8	queue_id_bw_weight;6348	} __packed cfg[7];6349	u8	unused_2[4];6350	u8	valid;6351};6352 6353/* hwrm_queue_cos2bw_cfg_input (size:1024b/128B) */6354struct hwrm_queue_cos2bw_cfg_input {6355	__le16	req_type;6356	__le16	cmpl_ring;6357	__le16	seq_id;6358	__le16	target_id;6359	__le64	resp_addr;6360	__le32	flags;6361	__le32	enables;6362	#define QUEUE_COS2BW_CFG_REQ_ENABLES_COS_QUEUE_ID0_VALID     0x1UL6363	#define QUEUE_COS2BW_CFG_REQ_ENABLES_COS_QUEUE_ID1_VALID     0x2UL6364	#define QUEUE_COS2BW_CFG_REQ_ENABLES_COS_QUEUE_ID2_VALID     0x4UL6365	#define QUEUE_COS2BW_CFG_REQ_ENABLES_COS_QUEUE_ID3_VALID     0x8UL6366	#define QUEUE_COS2BW_CFG_REQ_ENABLES_COS_QUEUE_ID4_VALID     0x10UL6367	#define QUEUE_COS2BW_CFG_REQ_ENABLES_COS_QUEUE_ID5_VALID     0x20UL6368	#define QUEUE_COS2BW_CFG_REQ_ENABLES_COS_QUEUE_ID6_VALID     0x40UL6369	#define QUEUE_COS2BW_CFG_REQ_ENABLES_COS_QUEUE_ID7_VALID     0x80UL6370	__le16	port_id;6371	u8	queue_id0;6372	u8	unused_0;6373	__le32	queue_id0_min_bw;6374	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MIN_BW_BW_VALUE_MASK             0xfffffffUL6375	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MIN_BW_BW_VALUE_SFT              06376	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MIN_BW_SCALE                     0x10000000UL6377	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MIN_BW_SCALE_BITS                  (0x0UL << 28)6378	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MIN_BW_SCALE_BYTES                 (0x1UL << 28)6379	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MIN_BW_SCALE_LAST                 QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MIN_BW_SCALE_BYTES6380	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_MASK        0xe0000000UL6381	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_SFT         296382	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_MEGA          (0x0UL << 29)6383	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_KILO          (0x2UL << 29)6384	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_BASE          (0x4UL << 29)6385	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_GIGA          (0x6UL << 29)6386	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_PERCENT1_100  (0x1UL << 29)6387	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_INVALID       (0x7UL << 29)6388	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_LAST         QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MIN_BW_BW_VALUE_UNIT_INVALID6389	__le32	queue_id0_max_bw;6390	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MAX_BW_BW_VALUE_MASK             0xfffffffUL6391	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MAX_BW_BW_VALUE_SFT              06392	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MAX_BW_SCALE                     0x10000000UL6393	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MAX_BW_SCALE_BITS                  (0x0UL << 28)6394	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MAX_BW_SCALE_BYTES                 (0x1UL << 28)6395	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MAX_BW_SCALE_LAST                 QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MAX_BW_SCALE_BYTES6396	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_MASK        0xe0000000UL6397	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_SFT         296398	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_MEGA          (0x0UL << 29)6399	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_KILO          (0x2UL << 29)6400	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_BASE          (0x4UL << 29)6401	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_GIGA          (0x6UL << 29)6402	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_PERCENT1_100  (0x1UL << 29)6403	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_INVALID       (0x7UL << 29)6404	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_LAST         QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_MAX_BW_BW_VALUE_UNIT_INVALID6405	u8	queue_id0_tsa_assign;6406	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_TSA_ASSIGN_SP             0x0UL6407	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_TSA_ASSIGN_ETS            0x1UL6408	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_TSA_ASSIGN_RESERVED_FIRST 0x2UL6409	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID0_TSA_ASSIGN_RESERVED_LAST  0xffUL6410	u8	queue_id0_pri_lvl;6411	u8	queue_id0_bw_weight;6412	struct {6413		u8	queue_id;6414		__le32	queue_id_min_bw;6415	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MIN_BW_BW_VALUE_MASK             0xfffffffUL6416	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MIN_BW_BW_VALUE_SFT              06417	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MIN_BW_SCALE                     0x10000000UL6418	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MIN_BW_SCALE_BITS                  (0x0UL << 28)6419	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MIN_BW_SCALE_BYTES                 (0x1UL << 28)6420	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MIN_BW_SCALE_LAST                 QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MIN_BW_SCALE_BYTES6421	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_MASK        0xe0000000UL6422	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_SFT         296423	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_MEGA          (0x0UL << 29)6424	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_KILO          (0x2UL << 29)6425	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_BASE          (0x4UL << 29)6426	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_GIGA          (0x6UL << 29)6427	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_PERCENT1_100  (0x1UL << 29)6428	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_INVALID       (0x7UL << 29)6429	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_LAST         QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MIN_BW_BW_VALUE_UNIT_INVALID6430		__le32	queue_id_max_bw;6431	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MAX_BW_BW_VALUE_MASK             0xfffffffUL6432	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MAX_BW_BW_VALUE_SFT              06433	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MAX_BW_SCALE                     0x10000000UL6434	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MAX_BW_SCALE_BITS                  (0x0UL << 28)6435	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MAX_BW_SCALE_BYTES                 (0x1UL << 28)6436	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MAX_BW_SCALE_LAST                 QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MAX_BW_SCALE_BYTES6437	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_MASK        0xe0000000UL6438	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_SFT         296439	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_MEGA          (0x0UL << 29)6440	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_KILO          (0x2UL << 29)6441	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_BASE          (0x4UL << 29)6442	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_GIGA          (0x6UL << 29)6443	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_PERCENT1_100  (0x1UL << 29)6444	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_INVALID       (0x7UL << 29)6445	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_LAST         QUEUE_COS2BW_CFG_REQ_QUEUE_ID_MAX_BW_BW_VALUE_UNIT_INVALID6446		u8	queue_id_tsa_assign;6447	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_TSA_ASSIGN_SP             0x0UL6448	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_TSA_ASSIGN_ETS            0x1UL6449	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_TSA_ASSIGN_RESERVED_FIRST 0x2UL6450	#define QUEUE_COS2BW_CFG_REQ_QUEUE_ID_TSA_ASSIGN_RESERVED_LAST  0xffUL6451		u8	queue_id_pri_lvl;6452		u8	queue_id_bw_weight;6453	} __packed cfg[7];6454	u8	unused_1[5];6455};6456 6457/* hwrm_queue_cos2bw_cfg_output (size:128b/16B) */6458struct hwrm_queue_cos2bw_cfg_output {6459	__le16	error_code;6460	__le16	req_type;6461	__le16	seq_id;6462	__le16	resp_len;6463	u8	unused_0[7];6464	u8	valid;6465};6466 6467/* hwrm_queue_dscp_qcaps_input (size:192b/24B) */6468struct hwrm_queue_dscp_qcaps_input {6469	__le16	req_type;6470	__le16	cmpl_ring;6471	__le16	seq_id;6472	__le16	target_id;6473	__le64	resp_addr;6474	u8	port_id;6475	u8	unused_0[7];6476};6477 6478/* hwrm_queue_dscp_qcaps_output (size:128b/16B) */6479struct hwrm_queue_dscp_qcaps_output {6480	__le16	error_code;6481	__le16	req_type;6482	__le16	seq_id;6483	__le16	resp_len;6484	u8	num_dscp_bits;6485	u8	unused_0;6486	__le16	max_entries;6487	u8	unused_1[3];6488	u8	valid;6489};6490 6491/* hwrm_queue_dscp2pri_qcfg_input (size:256b/32B) */6492struct hwrm_queue_dscp2pri_qcfg_input {6493	__le16	req_type;6494	__le16	cmpl_ring;6495	__le16	seq_id;6496	__le16	target_id;6497	__le64	resp_addr;6498	__le64	dest_data_addr;6499	u8	port_id;6500	u8	unused_0;6501	__le16	dest_data_buffer_size;6502	u8	unused_1[4];6503};6504 6505/* hwrm_queue_dscp2pri_qcfg_output (size:128b/16B) */6506struct hwrm_queue_dscp2pri_qcfg_output {6507	__le16	error_code;6508	__le16	req_type;6509	__le16	seq_id;6510	__le16	resp_len;6511	__le16	entry_cnt;6512	u8	default_pri;6513	u8	unused_0[4];6514	u8	valid;6515};6516 6517/* hwrm_queue_dscp2pri_cfg_input (size:320b/40B) */6518struct hwrm_queue_dscp2pri_cfg_input {6519	__le16	req_type;6520	__le16	cmpl_ring;6521	__le16	seq_id;6522	__le16	target_id;6523	__le64	resp_addr;6524	__le64	src_data_addr;6525	__le32	flags;6526	#define QUEUE_DSCP2PRI_CFG_REQ_FLAGS_USE_HW_DEFAULT_PRI     0x1UL6527	__le32	enables;6528	#define QUEUE_DSCP2PRI_CFG_REQ_ENABLES_DEFAULT_PRI     0x1UL6529	u8	port_id;6530	u8	default_pri;6531	__le16	entry_cnt;6532	u8	unused_0[4];6533};6534 6535/* hwrm_queue_dscp2pri_cfg_output (size:128b/16B) */6536struct hwrm_queue_dscp2pri_cfg_output {6537	__le16	error_code;6538	__le16	req_type;6539	__le16	seq_id;6540	__le16	resp_len;6541	u8	unused_0[7];6542	u8	valid;6543};6544 6545/* hwrm_vnic_alloc_input (size:192b/24B) */6546struct hwrm_vnic_alloc_input {6547	__le16	req_type;6548	__le16	cmpl_ring;6549	__le16	seq_id;6550	__le16	target_id;6551	__le64	resp_addr;6552	__le32	flags;6553	#define VNIC_ALLOC_REQ_FLAGS_DEFAULT                  0x1UL6554	#define VNIC_ALLOC_REQ_FLAGS_VIRTIO_NET_FID_VALID     0x2UL6555	__le16	virtio_net_fid;6556	u8	unused_0[2];6557};6558 6559/* hwrm_vnic_alloc_output (size:128b/16B) */6560struct hwrm_vnic_alloc_output {6561	__le16	error_code;6562	__le16	req_type;6563	__le16	seq_id;6564	__le16	resp_len;6565	__le32	vnic_id;6566	u8	unused_0[3];6567	u8	valid;6568};6569 6570/* hwrm_vnic_update_input (size:256b/32B) */6571struct hwrm_vnic_update_input {6572	__le16	req_type;6573	__le16	cmpl_ring;6574	__le16	seq_id;6575	__le16	target_id;6576	__le64	resp_addr;6577	__le32	vnic_id;6578	__le32	enables;6579	#define VNIC_UPDATE_REQ_ENABLES_VNIC_STATE_VALID               0x1UL6580	#define VNIC_UPDATE_REQ_ENABLES_MRU_VALID                      0x2UL6581	#define VNIC_UPDATE_REQ_ENABLES_METADATA_FORMAT_TYPE_VALID     0x4UL6582	u8	vnic_state;6583	#define VNIC_UPDATE_REQ_VNIC_STATE_NORMAL 0x0UL6584	#define VNIC_UPDATE_REQ_VNIC_STATE_DROP   0x1UL6585	#define VNIC_UPDATE_REQ_VNIC_STATE_LAST  VNIC_UPDATE_REQ_VNIC_STATE_DROP6586	u8	metadata_format_type;6587	#define VNIC_UPDATE_REQ_METADATA_FORMAT_TYPE_0 0x0UL6588	#define VNIC_UPDATE_REQ_METADATA_FORMAT_TYPE_1 0x1UL6589	#define VNIC_UPDATE_REQ_METADATA_FORMAT_TYPE_2 0x2UL6590	#define VNIC_UPDATE_REQ_METADATA_FORMAT_TYPE_3 0x3UL6591	#define VNIC_UPDATE_REQ_METADATA_FORMAT_TYPE_4 0x4UL6592	#define VNIC_UPDATE_REQ_METADATA_FORMAT_TYPE_LAST VNIC_UPDATE_REQ_METADATA_FORMAT_TYPE_46593	__le16	mru;6594	u8	unused_1[4];6595};6596 6597/* hwrm_vnic_update_output (size:128b/16B) */6598struct hwrm_vnic_update_output {6599	__le16	error_code;6600	__le16	req_type;6601	__le16	seq_id;6602	__le16	resp_len;6603	u8	unused_0[7];6604	u8	valid;6605};6606 6607/* hwrm_vnic_free_input (size:192b/24B) */6608struct hwrm_vnic_free_input {6609	__le16	req_type;6610	__le16	cmpl_ring;6611	__le16	seq_id;6612	__le16	target_id;6613	__le64	resp_addr;6614	__le32	vnic_id;6615	u8	unused_0[4];6616};6617 6618/* hwrm_vnic_free_output (size:128b/16B) */6619struct hwrm_vnic_free_output {6620	__le16	error_code;6621	__le16	req_type;6622	__le16	seq_id;6623	__le16	resp_len;6624	u8	unused_0[7];6625	u8	valid;6626};6627 6628/* hwrm_vnic_cfg_input (size:384b/48B) */6629struct hwrm_vnic_cfg_input {6630	__le16	req_type;6631	__le16	cmpl_ring;6632	__le16	seq_id;6633	__le16	target_id;6634	__le64	resp_addr;6635	__le32	flags;6636	#define VNIC_CFG_REQ_FLAGS_DEFAULT                              0x1UL6637	#define VNIC_CFG_REQ_FLAGS_VLAN_STRIP_MODE                      0x2UL6638	#define VNIC_CFG_REQ_FLAGS_BD_STALL_MODE                        0x4UL6639	#define VNIC_CFG_REQ_FLAGS_ROCE_DUAL_VNIC_MODE                  0x8UL6640	#define VNIC_CFG_REQ_FLAGS_ROCE_ONLY_VNIC_MODE                  0x10UL6641	#define VNIC_CFG_REQ_FLAGS_RSS_DFLT_CR_MODE                     0x20UL6642	#define VNIC_CFG_REQ_FLAGS_ROCE_MIRRORING_CAPABLE_VNIC_MODE     0x40UL6643	#define VNIC_CFG_REQ_FLAGS_PORTCOS_MAPPING_MODE                 0x80UL6644	__le32	enables;6645	#define VNIC_CFG_REQ_ENABLES_DFLT_RING_GRP            0x1UL6646	#define VNIC_CFG_REQ_ENABLES_RSS_RULE                 0x2UL6647	#define VNIC_CFG_REQ_ENABLES_COS_RULE                 0x4UL6648	#define VNIC_CFG_REQ_ENABLES_LB_RULE                  0x8UL6649	#define VNIC_CFG_REQ_ENABLES_MRU                      0x10UL6650	#define VNIC_CFG_REQ_ENABLES_DEFAULT_RX_RING_ID       0x20UL6651	#define VNIC_CFG_REQ_ENABLES_DEFAULT_CMPL_RING_ID     0x40UL6652	#define VNIC_CFG_REQ_ENABLES_QUEUE_ID                 0x80UL6653	#define VNIC_CFG_REQ_ENABLES_RX_CSUM_V2_MODE          0x100UL6654	#define VNIC_CFG_REQ_ENABLES_L2_CQE_MODE              0x200UL6655	__le16	vnic_id;6656	__le16	dflt_ring_grp;6657	__le16	rss_rule;6658	__le16	cos_rule;6659	__le16	lb_rule;6660	__le16	mru;6661	__le16	default_rx_ring_id;6662	__le16	default_cmpl_ring_id;6663	__le16	queue_id;6664	u8	rx_csum_v2_mode;6665	#define VNIC_CFG_REQ_RX_CSUM_V2_MODE_DEFAULT 0x0UL6666	#define VNIC_CFG_REQ_RX_CSUM_V2_MODE_ALL_OK  0x1UL6667	#define VNIC_CFG_REQ_RX_CSUM_V2_MODE_MAX     0x2UL6668	#define VNIC_CFG_REQ_RX_CSUM_V2_MODE_LAST   VNIC_CFG_REQ_RX_CSUM_V2_MODE_MAX6669	u8	l2_cqe_mode;6670	#define VNIC_CFG_REQ_L2_CQE_MODE_DEFAULT    0x0UL6671	#define VNIC_CFG_REQ_L2_CQE_MODE_COMPRESSED 0x1UL6672	#define VNIC_CFG_REQ_L2_CQE_MODE_MIXED      0x2UL6673	#define VNIC_CFG_REQ_L2_CQE_MODE_LAST      VNIC_CFG_REQ_L2_CQE_MODE_MIXED6674	u8	unused0[4];6675};6676 6677/* hwrm_vnic_cfg_output (size:128b/16B) */6678struct hwrm_vnic_cfg_output {6679	__le16	error_code;6680	__le16	req_type;6681	__le16	seq_id;6682	__le16	resp_len;6683	u8	unused_0[7];6684	u8	valid;6685};6686 6687/* hwrm_vnic_qcaps_input (size:192b/24B) */6688struct hwrm_vnic_qcaps_input {6689	__le16	req_type;6690	__le16	cmpl_ring;6691	__le16	seq_id;6692	__le16	target_id;6693	__le64	resp_addr;6694	__le32	enables;6695	u8	unused_0[4];6696};6697 6698/* hwrm_vnic_qcaps_output (size:192b/24B) */6699struct hwrm_vnic_qcaps_output {6700	__le16	error_code;6701	__le16	req_type;6702	__le16	seq_id;6703	__le16	resp_len;6704	__le16	mru;6705	u8	unused_0[2];6706	__le32	flags;6707	#define VNIC_QCAPS_RESP_FLAGS_UNUSED                                  0x1UL6708	#define VNIC_QCAPS_RESP_FLAGS_VLAN_STRIP_CAP                          0x2UL6709	#define VNIC_QCAPS_RESP_FLAGS_BD_STALL_CAP                            0x4UL6710	#define VNIC_QCAPS_RESP_FLAGS_ROCE_DUAL_VNIC_CAP                      0x8UL6711	#define VNIC_QCAPS_RESP_FLAGS_ROCE_ONLY_VNIC_CAP                      0x10UL6712	#define VNIC_QCAPS_RESP_FLAGS_RSS_DFLT_CR_CAP                         0x20UL6713	#define VNIC_QCAPS_RESP_FLAGS_ROCE_MIRRORING_CAPABLE_VNIC_CAP         0x40UL6714	#define VNIC_QCAPS_RESP_FLAGS_OUTERMOST_RSS_CAP                       0x80UL6715	#define VNIC_QCAPS_RESP_FLAGS_COS_ASSIGNMENT_CAP                      0x100UL6716	#define VNIC_QCAPS_RESP_FLAGS_RX_CMPL_V2_CAP                          0x200UL6717	#define VNIC_QCAPS_RESP_FLAGS_VNIC_STATE_CAP                          0x400UL6718	#define VNIC_QCAPS_RESP_FLAGS_VIRTIO_NET_VNIC_ALLOC_CAP               0x800UL6719	#define VNIC_QCAPS_RESP_FLAGS_METADATA_FORMAT_CAP                     0x1000UL6720	#define VNIC_QCAPS_RESP_FLAGS_RSS_STRICT_HASH_TYPE_CAP                0x2000UL6721	#define VNIC_QCAPS_RESP_FLAGS_RSS_HASH_TYPE_DELTA_CAP                 0x4000UL6722	#define VNIC_QCAPS_RESP_FLAGS_RING_SELECT_MODE_TOEPLITZ_CAP           0x8000UL6723	#define VNIC_QCAPS_RESP_FLAGS_RING_SELECT_MODE_XOR_CAP                0x10000UL6724	#define VNIC_QCAPS_RESP_FLAGS_RING_SELECT_MODE_TOEPLITZ_CHKSM_CAP     0x20000UL6725	#define VNIC_QCAPS_RESP_FLAGS_RSS_IPV6_FLOW_LABEL_CAP                 0x40000UL6726	#define VNIC_QCAPS_RESP_FLAGS_RX_CMPL_V3_CAP                          0x80000UL6727	#define VNIC_QCAPS_RESP_FLAGS_L2_CQE_MODE_CAP                         0x100000UL6728	#define VNIC_QCAPS_RESP_FLAGS_RSS_IPSEC_AH_SPI_IPV4_CAP               0x200000UL6729	#define VNIC_QCAPS_RESP_FLAGS_RSS_IPSEC_ESP_SPI_IPV4_CAP              0x400000UL6730	#define VNIC_QCAPS_RESP_FLAGS_RSS_IPSEC_AH_SPI_IPV6_CAP               0x800000UL6731	#define VNIC_QCAPS_RESP_FLAGS_RSS_IPSEC_ESP_SPI_IPV6_CAP              0x1000000UL6732	#define VNIC_QCAPS_RESP_FLAGS_OUTERMOST_RSS_TRUSTED_VF_CAP            0x2000000UL6733	#define VNIC_QCAPS_RESP_FLAGS_PORTCOS_MAPPING_MODE                    0x4000000UL6734	#define VNIC_QCAPS_RESP_FLAGS_RSS_PROF_TCAM_MODE_ENABLED              0x8000000UL6735	#define VNIC_QCAPS_RESP_FLAGS_VNIC_RSS_HASH_MODE_CAP                  0x10000000UL6736	#define VNIC_QCAPS_RESP_FLAGS_HW_TUNNEL_TPA_CAP                       0x20000000UL6737	#define VNIC_QCAPS_RESP_FLAGS_RE_FLUSH_CAP                            0x40000000UL6738	__le16	max_aggs_supported;6739	u8	unused_1[5];6740	u8	valid;6741};6742 6743/* hwrm_vnic_tpa_cfg_input (size:384b/48B) */6744struct hwrm_vnic_tpa_cfg_input {6745	__le16	req_type;6746	__le16	cmpl_ring;6747	__le16	seq_id;6748	__le16	target_id;6749	__le64	resp_addr;6750	__le32	flags;6751	#define VNIC_TPA_CFG_REQ_FLAGS_TPA                       0x1UL6752	#define VNIC_TPA_CFG_REQ_FLAGS_ENCAP_TPA                 0x2UL6753	#define VNIC_TPA_CFG_REQ_FLAGS_RSC_WND_UPDATE            0x4UL6754	#define VNIC_TPA_CFG_REQ_FLAGS_GRO                       0x8UL6755	#define VNIC_TPA_CFG_REQ_FLAGS_AGG_WITH_ECN              0x10UL6756	#define VNIC_TPA_CFG_REQ_FLAGS_AGG_WITH_SAME_GRE_SEQ     0x20UL6757	#define VNIC_TPA_CFG_REQ_FLAGS_GRO_IPID_CHECK            0x40UL6758	#define VNIC_TPA_CFG_REQ_FLAGS_GRO_TTL_CHECK             0x80UL6759	#define VNIC_TPA_CFG_REQ_FLAGS_AGG_PACK_AS_GRO           0x100UL6760	__le32	enables;6761	#define VNIC_TPA_CFG_REQ_ENABLES_MAX_AGG_SEGS      0x1UL6762	#define VNIC_TPA_CFG_REQ_ENABLES_MAX_AGGS          0x2UL6763	#define VNIC_TPA_CFG_REQ_ENABLES_MAX_AGG_TIMER     0x4UL6764	#define VNIC_TPA_CFG_REQ_ENABLES_MIN_AGG_LEN       0x8UL6765	#define VNIC_TPA_CFG_REQ_ENABLES_TNL_TPA_EN        0x10UL6766	__le16	vnic_id;6767	__le16	max_agg_segs;6768	#define VNIC_TPA_CFG_REQ_MAX_AGG_SEGS_1   0x0UL6769	#define VNIC_TPA_CFG_REQ_MAX_AGG_SEGS_2   0x1UL6770	#define VNIC_TPA_CFG_REQ_MAX_AGG_SEGS_4   0x2UL6771	#define VNIC_TPA_CFG_REQ_MAX_AGG_SEGS_8   0x3UL6772	#define VNIC_TPA_CFG_REQ_MAX_AGG_SEGS_MAX 0x1fUL6773	#define VNIC_TPA_CFG_REQ_MAX_AGG_SEGS_LAST VNIC_TPA_CFG_REQ_MAX_AGG_SEGS_MAX6774	__le16	max_aggs;6775	#define VNIC_TPA_CFG_REQ_MAX_AGGS_1   0x0UL6776	#define VNIC_TPA_CFG_REQ_MAX_AGGS_2   0x1UL6777	#define VNIC_TPA_CFG_REQ_MAX_AGGS_4   0x2UL6778	#define VNIC_TPA_CFG_REQ_MAX_AGGS_8   0x3UL6779	#define VNIC_TPA_CFG_REQ_MAX_AGGS_16  0x4UL6780	#define VNIC_TPA_CFG_REQ_MAX_AGGS_MAX 0x7UL6781	#define VNIC_TPA_CFG_REQ_MAX_AGGS_LAST VNIC_TPA_CFG_REQ_MAX_AGGS_MAX6782	u8	unused_0[2];6783	__le32	max_agg_timer;6784	__le32	min_agg_len;6785	__le32	tnl_tpa_en_bitmap;6786	#define VNIC_TPA_CFG_REQ_TNL_TPA_EN_BITMAP_VXLAN           0x1UL6787	#define VNIC_TPA_CFG_REQ_TNL_TPA_EN_BITMAP_GENEVE          0x2UL6788	#define VNIC_TPA_CFG_REQ_TNL_TPA_EN_BITMAP_NVGRE           0x4UL6789	#define VNIC_TPA_CFG_REQ_TNL_TPA_EN_BITMAP_GRE             0x8UL6790	#define VNIC_TPA_CFG_REQ_TNL_TPA_EN_BITMAP_IPV4            0x10UL6791	#define VNIC_TPA_CFG_REQ_TNL_TPA_EN_BITMAP_IPV6            0x20UL6792	#define VNIC_TPA_CFG_REQ_TNL_TPA_EN_BITMAP_VXLAN_GPE       0x40UL6793	#define VNIC_TPA_CFG_REQ_TNL_TPA_EN_BITMAP_VXLAN_CUST1     0x80UL6794	#define VNIC_TPA_CFG_REQ_TNL_TPA_EN_BITMAP_GRE_CUST1       0x100UL6795	#define VNIC_TPA_CFG_REQ_TNL_TPA_EN_BITMAP_UPAR1           0x200UL6796	#define VNIC_TPA_CFG_REQ_TNL_TPA_EN_BITMAP_UPAR2           0x400UL6797	#define VNIC_TPA_CFG_REQ_TNL_TPA_EN_BITMAP_UPAR3           0x800UL6798	#define VNIC_TPA_CFG_REQ_TNL_TPA_EN_BITMAP_UPAR4           0x1000UL6799	#define VNIC_TPA_CFG_REQ_TNL_TPA_EN_BITMAP_UPAR5           0x2000UL6800	#define VNIC_TPA_CFG_REQ_TNL_TPA_EN_BITMAP_UPAR6           0x4000UL6801	#define VNIC_TPA_CFG_REQ_TNL_TPA_EN_BITMAP_UPAR7           0x8000UL6802	#define VNIC_TPA_CFG_REQ_TNL_TPA_EN_BITMAP_UPAR8           0x10000UL6803	u8	unused_1[4];6804};6805 6806/* hwrm_vnic_tpa_cfg_output (size:128b/16B) */6807struct hwrm_vnic_tpa_cfg_output {6808	__le16	error_code;6809	__le16	req_type;6810	__le16	seq_id;6811	__le16	resp_len;6812	u8	unused_0[7];6813	u8	valid;6814};6815 6816/* hwrm_vnic_tpa_qcfg_input (size:192b/24B) */6817struct hwrm_vnic_tpa_qcfg_input {6818	__le16	req_type;6819	__le16	cmpl_ring;6820	__le16	seq_id;6821	__le16	target_id;6822	__le64	resp_addr;6823	__le16	vnic_id;6824	u8	unused_0[6];6825};6826 6827/* hwrm_vnic_tpa_qcfg_output (size:256b/32B) */6828struct hwrm_vnic_tpa_qcfg_output {6829	__le16	error_code;6830	__le16	req_type;6831	__le16	seq_id;6832	__le16	resp_len;6833	__le32	flags;6834	#define VNIC_TPA_QCFG_RESP_FLAGS_TPA                       0x1UL6835	#define VNIC_TPA_QCFG_RESP_FLAGS_ENCAP_TPA                 0x2UL6836	#define VNIC_TPA_QCFG_RESP_FLAGS_RSC_WND_UPDATE            0x4UL6837	#define VNIC_TPA_QCFG_RESP_FLAGS_GRO                       0x8UL6838	#define VNIC_TPA_QCFG_RESP_FLAGS_AGG_WITH_ECN              0x10UL6839	#define VNIC_TPA_QCFG_RESP_FLAGS_AGG_WITH_SAME_GRE_SEQ     0x20UL6840	#define VNIC_TPA_QCFG_RESP_FLAGS_GRO_IPID_CHECK            0x40UL6841	#define VNIC_TPA_QCFG_RESP_FLAGS_GRO_TTL_CHECK             0x80UL6842	__le16	max_agg_segs;6843	#define VNIC_TPA_QCFG_RESP_MAX_AGG_SEGS_1   0x0UL6844	#define VNIC_TPA_QCFG_RESP_MAX_AGG_SEGS_2   0x1UL6845	#define VNIC_TPA_QCFG_RESP_MAX_AGG_SEGS_4   0x2UL6846	#define VNIC_TPA_QCFG_RESP_MAX_AGG_SEGS_8   0x3UL6847	#define VNIC_TPA_QCFG_RESP_MAX_AGG_SEGS_MAX 0x1fUL6848	#define VNIC_TPA_QCFG_RESP_MAX_AGG_SEGS_LAST VNIC_TPA_QCFG_RESP_MAX_AGG_SEGS_MAX6849	__le16	max_aggs;6850	#define VNIC_TPA_QCFG_RESP_MAX_AGGS_1   0x0UL6851	#define VNIC_TPA_QCFG_RESP_MAX_AGGS_2   0x1UL6852	#define VNIC_TPA_QCFG_RESP_MAX_AGGS_4   0x2UL6853	#define VNIC_TPA_QCFG_RESP_MAX_AGGS_8   0x3UL6854	#define VNIC_TPA_QCFG_RESP_MAX_AGGS_16  0x4UL6855	#define VNIC_TPA_QCFG_RESP_MAX_AGGS_MAX 0x7UL6856	#define VNIC_TPA_QCFG_RESP_MAX_AGGS_LAST VNIC_TPA_QCFG_RESP_MAX_AGGS_MAX6857	__le32	max_agg_timer;6858	__le32	min_agg_len;6859	__le32	tnl_tpa_en_bitmap;6860	#define VNIC_TPA_QCFG_RESP_TNL_TPA_EN_BITMAP_VXLAN           0x1UL6861	#define VNIC_TPA_QCFG_RESP_TNL_TPA_EN_BITMAP_GENEVE          0x2UL6862	#define VNIC_TPA_QCFG_RESP_TNL_TPA_EN_BITMAP_NVGRE           0x4UL6863	#define VNIC_TPA_QCFG_RESP_TNL_TPA_EN_BITMAP_GRE             0x8UL6864	#define VNIC_TPA_QCFG_RESP_TNL_TPA_EN_BITMAP_IPV4            0x10UL6865	#define VNIC_TPA_QCFG_RESP_TNL_TPA_EN_BITMAP_IPV6            0x20UL6866	#define VNIC_TPA_QCFG_RESP_TNL_TPA_EN_BITMAP_VXLAN_GPE       0x40UL6867	#define VNIC_TPA_QCFG_RESP_TNL_TPA_EN_BITMAP_VXLAN_CUST1     0x80UL6868	#define VNIC_TPA_QCFG_RESP_TNL_TPA_EN_BITMAP_GRE_CUST1       0x100UL6869	#define VNIC_TPA_QCFG_RESP_TNL_TPA_EN_BITMAP_UPAR1           0x200UL6870	#define VNIC_TPA_QCFG_RESP_TNL_TPA_EN_BITMAP_UPAR2           0x400UL6871	#define VNIC_TPA_QCFG_RESP_TNL_TPA_EN_BITMAP_UPAR3           0x800UL6872	#define VNIC_TPA_QCFG_RESP_TNL_TPA_EN_BITMAP_UPAR4           0x1000UL6873	#define VNIC_TPA_QCFG_RESP_TNL_TPA_EN_BITMAP_UPAR5           0x2000UL6874	#define VNIC_TPA_QCFG_RESP_TNL_TPA_EN_BITMAP_UPAR6           0x4000UL6875	#define VNIC_TPA_QCFG_RESP_TNL_TPA_EN_BITMAP_UPAR7           0x8000UL6876	#define VNIC_TPA_QCFG_RESP_TNL_TPA_EN_BITMAP_UPAR8           0x10000UL6877	u8	unused_0[3];6878	u8	valid;6879};6880 6881/* hwrm_vnic_rss_cfg_input (size:384b/48B) */6882struct hwrm_vnic_rss_cfg_input {6883	__le16	req_type;6884	__le16	cmpl_ring;6885	__le16	seq_id;6886	__le16	target_id;6887	__le64	resp_addr;6888	__le32	hash_type;6889	#define VNIC_RSS_CFG_REQ_HASH_TYPE_IPV4                0x1UL6890	#define VNIC_RSS_CFG_REQ_HASH_TYPE_TCP_IPV4            0x2UL6891	#define VNIC_RSS_CFG_REQ_HASH_TYPE_UDP_IPV4            0x4UL6892	#define VNIC_RSS_CFG_REQ_HASH_TYPE_IPV6                0x8UL6893	#define VNIC_RSS_CFG_REQ_HASH_TYPE_TCP_IPV6            0x10UL6894	#define VNIC_RSS_CFG_REQ_HASH_TYPE_UDP_IPV6            0x20UL6895	#define VNIC_RSS_CFG_REQ_HASH_TYPE_IPV6_FLOW_LABEL     0x40UL6896	#define VNIC_RSS_CFG_REQ_HASH_TYPE_AH_SPI_IPV4         0x80UL6897	#define VNIC_RSS_CFG_REQ_HASH_TYPE_ESP_SPI_IPV4        0x100UL6898	#define VNIC_RSS_CFG_REQ_HASH_TYPE_AH_SPI_IPV6         0x200UL6899	#define VNIC_RSS_CFG_REQ_HASH_TYPE_ESP_SPI_IPV6        0x400UL6900	__le16	vnic_id;6901	u8	ring_table_pair_index;6902	u8	hash_mode_flags;6903	#define VNIC_RSS_CFG_REQ_HASH_MODE_FLAGS_DEFAULT         0x1UL6904	#define VNIC_RSS_CFG_REQ_HASH_MODE_FLAGS_INNERMOST_4     0x2UL6905	#define VNIC_RSS_CFG_REQ_HASH_MODE_FLAGS_INNERMOST_2     0x4UL6906	#define VNIC_RSS_CFG_REQ_HASH_MODE_FLAGS_OUTERMOST_4     0x8UL6907	#define VNIC_RSS_CFG_REQ_HASH_MODE_FLAGS_OUTERMOST_2     0x10UL6908	__le64	ring_grp_tbl_addr;6909	__le64	hash_key_tbl_addr;6910	__le16	rss_ctx_idx;6911	u8	flags;6912	#define VNIC_RSS_CFG_REQ_FLAGS_HASH_TYPE_INCLUDE               0x1UL6913	#define VNIC_RSS_CFG_REQ_FLAGS_HASH_TYPE_EXCLUDE               0x2UL6914	#define VNIC_RSS_CFG_REQ_FLAGS_IPSEC_HASH_TYPE_CFG_SUPPORT     0x4UL6915	u8	ring_select_mode;6916	#define VNIC_RSS_CFG_REQ_RING_SELECT_MODE_TOEPLITZ          0x0UL6917	#define VNIC_RSS_CFG_REQ_RING_SELECT_MODE_XOR               0x1UL6918	#define VNIC_RSS_CFG_REQ_RING_SELECT_MODE_TOEPLITZ_CHECKSUM 0x2UL6919	#define VNIC_RSS_CFG_REQ_RING_SELECT_MODE_LAST             VNIC_RSS_CFG_REQ_RING_SELECT_MODE_TOEPLITZ_CHECKSUM6920	u8	unused_1[4];6921};6922 6923/* hwrm_vnic_rss_cfg_output (size:128b/16B) */6924struct hwrm_vnic_rss_cfg_output {6925	__le16	error_code;6926	__le16	req_type;6927	__le16	seq_id;6928	__le16	resp_len;6929	u8	unused_0[7];6930	u8	valid;6931};6932 6933/* hwrm_vnic_rss_cfg_cmd_err (size:64b/8B) */6934struct hwrm_vnic_rss_cfg_cmd_err {6935	u8	code;6936	#define VNIC_RSS_CFG_CMD_ERR_CODE_UNKNOWN             0x0UL6937	#define VNIC_RSS_CFG_CMD_ERR_CODE_INTERFACE_NOT_READY 0x1UL6938	#define VNIC_RSS_CFG_CMD_ERR_CODE_LAST               VNIC_RSS_CFG_CMD_ERR_CODE_INTERFACE_NOT_READY6939	u8	unused_0[7];6940};6941 6942/* hwrm_vnic_rss_qcfg_input (size:192b/24B) */6943struct hwrm_vnic_rss_qcfg_input {6944	__le16	req_type;6945	__le16	cmpl_ring;6946	__le16	seq_id;6947	__le16	target_id;6948	__le64	resp_addr;6949	__le16	rss_ctx_idx;6950	__le16	vnic_id;6951	u8	unused_0[4];6952};6953 6954/* hwrm_vnic_rss_qcfg_output (size:512b/64B) */6955struct hwrm_vnic_rss_qcfg_output {6956	__le16	error_code;6957	__le16	req_type;6958	__le16	seq_id;6959	__le16	resp_len;6960	__le32	hash_type;6961	#define VNIC_RSS_QCFG_RESP_HASH_TYPE_IPV4                0x1UL6962	#define VNIC_RSS_QCFG_RESP_HASH_TYPE_TCP_IPV4            0x2UL6963	#define VNIC_RSS_QCFG_RESP_HASH_TYPE_UDP_IPV4            0x4UL6964	#define VNIC_RSS_QCFG_RESP_HASH_TYPE_IPV6                0x8UL6965	#define VNIC_RSS_QCFG_RESP_HASH_TYPE_TCP_IPV6            0x10UL6966	#define VNIC_RSS_QCFG_RESP_HASH_TYPE_UDP_IPV6            0x20UL6967	#define VNIC_RSS_QCFG_RESP_HASH_TYPE_IPV6_FLOW_LABEL     0x40UL6968	#define VNIC_RSS_QCFG_RESP_HASH_TYPE_AH_SPI_IPV4         0x80UL6969	#define VNIC_RSS_QCFG_RESP_HASH_TYPE_ESP_SPI_IPV4        0x100UL6970	#define VNIC_RSS_QCFG_RESP_HASH_TYPE_AH_SPI_IPV6         0x200UL6971	#define VNIC_RSS_QCFG_RESP_HASH_TYPE_ESP_SPI_IPV6        0x400UL6972	u8	unused_0[4];6973	__le32	hash_key[10];6974	u8	hash_mode_flags;6975	#define VNIC_RSS_QCFG_RESP_HASH_MODE_FLAGS_DEFAULT         0x1UL6976	#define VNIC_RSS_QCFG_RESP_HASH_MODE_FLAGS_INNERMOST_4     0x2UL6977	#define VNIC_RSS_QCFG_RESP_HASH_MODE_FLAGS_INNERMOST_2     0x4UL6978	#define VNIC_RSS_QCFG_RESP_HASH_MODE_FLAGS_OUTERMOST_4     0x8UL6979	#define VNIC_RSS_QCFG_RESP_HASH_MODE_FLAGS_OUTERMOST_2     0x10UL6980	u8	ring_select_mode;6981	#define VNIC_RSS_QCFG_RESP_RING_SELECT_MODE_TOEPLITZ          0x0UL6982	#define VNIC_RSS_QCFG_RESP_RING_SELECT_MODE_XOR               0x1UL6983	#define VNIC_RSS_QCFG_RESP_RING_SELECT_MODE_TOEPLITZ_CHECKSUM 0x2UL6984	#define VNIC_RSS_QCFG_RESP_RING_SELECT_MODE_LAST             VNIC_RSS_QCFG_RESP_RING_SELECT_MODE_TOEPLITZ_CHECKSUM6985	u8	unused_1[5];6986	u8	valid;6987};6988 6989/* hwrm_vnic_plcmodes_cfg_input (size:320b/40B) */6990struct hwrm_vnic_plcmodes_cfg_input {6991	__le16	req_type;6992	__le16	cmpl_ring;6993	__le16	seq_id;6994	__le16	target_id;6995	__le64	resp_addr;6996	__le32	flags;6997	#define VNIC_PLCMODES_CFG_REQ_FLAGS_REGULAR_PLACEMENT     0x1UL6998	#define VNIC_PLCMODES_CFG_REQ_FLAGS_JUMBO_PLACEMENT       0x2UL6999	#define VNIC_PLCMODES_CFG_REQ_FLAGS_HDS_IPV4              0x4UL7000	#define VNIC_PLCMODES_CFG_REQ_FLAGS_HDS_IPV6              0x8UL7001	#define VNIC_PLCMODES_CFG_REQ_FLAGS_HDS_FCOE              0x10UL7002	#define VNIC_PLCMODES_CFG_REQ_FLAGS_HDS_ROCE              0x20UL7003	#define VNIC_PLCMODES_CFG_REQ_FLAGS_VIRTIO_PLACEMENT      0x40UL7004	__le32	enables;7005	#define VNIC_PLCMODES_CFG_REQ_ENABLES_JUMBO_THRESH_VALID      0x1UL7006	#define VNIC_PLCMODES_CFG_REQ_ENABLES_HDS_OFFSET_VALID        0x2UL7007	#define VNIC_PLCMODES_CFG_REQ_ENABLES_HDS_THRESHOLD_VALID     0x4UL7008	#define VNIC_PLCMODES_CFG_REQ_ENABLES_MAX_BDS_VALID           0x8UL7009	__le32	vnic_id;7010	__le16	jumbo_thresh;7011	__le16	hds_offset;7012	__le16	hds_threshold;7013	__le16	max_bds;7014	u8	unused_0[4];7015};7016 7017/* hwrm_vnic_plcmodes_cfg_output (size:128b/16B) */7018struct hwrm_vnic_plcmodes_cfg_output {7019	__le16	error_code;7020	__le16	req_type;7021	__le16	seq_id;7022	__le16	resp_len;7023	u8	unused_0[7];7024	u8	valid;7025};7026 7027/* hwrm_vnic_rss_cos_lb_ctx_alloc_input (size:128b/16B) */7028struct hwrm_vnic_rss_cos_lb_ctx_alloc_input {7029	__le16	req_type;7030	__le16	cmpl_ring;7031	__le16	seq_id;7032	__le16	target_id;7033	__le64	resp_addr;7034};7035 7036/* hwrm_vnic_rss_cos_lb_ctx_alloc_output (size:128b/16B) */7037struct hwrm_vnic_rss_cos_lb_ctx_alloc_output {7038	__le16	error_code;7039	__le16	req_type;7040	__le16	seq_id;7041	__le16	resp_len;7042	__le16	rss_cos_lb_ctx_id;7043	u8	unused_0[5];7044	u8	valid;7045};7046 7047/* hwrm_vnic_rss_cos_lb_ctx_free_input (size:192b/24B) */7048struct hwrm_vnic_rss_cos_lb_ctx_free_input {7049	__le16	req_type;7050	__le16	cmpl_ring;7051	__le16	seq_id;7052	__le16	target_id;7053	__le64	resp_addr;7054	__le16	rss_cos_lb_ctx_id;7055	u8	unused_0[6];7056};7057 7058/* hwrm_vnic_rss_cos_lb_ctx_free_output (size:128b/16B) */7059struct hwrm_vnic_rss_cos_lb_ctx_free_output {7060	__le16	error_code;7061	__le16	req_type;7062	__le16	seq_id;7063	__le16	resp_len;7064	u8	unused_0[7];7065	u8	valid;7066};7067 7068/* hwrm_ring_alloc_input (size:704b/88B) */7069struct hwrm_ring_alloc_input {7070	__le16	req_type;7071	__le16	cmpl_ring;7072	__le16	seq_id;7073	__le16	target_id;7074	__le64	resp_addr;7075	__le32	enables;7076	#define RING_ALLOC_REQ_ENABLES_RING_ARB_CFG           0x2UL7077	#define RING_ALLOC_REQ_ENABLES_STAT_CTX_ID_VALID      0x8UL7078	#define RING_ALLOC_REQ_ENABLES_MAX_BW_VALID           0x20UL7079	#define RING_ALLOC_REQ_ENABLES_RX_RING_ID_VALID       0x40UL7080	#define RING_ALLOC_REQ_ENABLES_NQ_RING_ID_VALID       0x80UL7081	#define RING_ALLOC_REQ_ENABLES_RX_BUF_SIZE_VALID      0x100UL7082	#define RING_ALLOC_REQ_ENABLES_SCHQ_ID                0x200UL7083	#define RING_ALLOC_REQ_ENABLES_MPC_CHNLS_TYPE         0x400UL7084	#define RING_ALLOC_REQ_ENABLES_STEERING_TAG_VALID     0x800UL7085	u8	ring_type;7086	#define RING_ALLOC_REQ_RING_TYPE_L2_CMPL   0x0UL7087	#define RING_ALLOC_REQ_RING_TYPE_TX        0x1UL7088	#define RING_ALLOC_REQ_RING_TYPE_RX        0x2UL7089	#define RING_ALLOC_REQ_RING_TYPE_ROCE_CMPL 0x3UL7090	#define RING_ALLOC_REQ_RING_TYPE_RX_AGG    0x4UL7091	#define RING_ALLOC_REQ_RING_TYPE_NQ        0x5UL7092	#define RING_ALLOC_REQ_RING_TYPE_LAST     RING_ALLOC_REQ_RING_TYPE_NQ7093	u8	cmpl_coal_cnt;7094	#define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_OFF 0x0UL7095	#define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_4   0x1UL7096	#define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_8   0x2UL7097	#define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_12  0x3UL7098	#define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_16  0x4UL7099	#define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_24  0x5UL7100	#define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_32  0x6UL7101	#define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_48  0x7UL7102	#define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_64  0x8UL7103	#define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_96  0x9UL7104	#define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_128 0xaUL7105	#define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_192 0xbUL7106	#define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_256 0xcUL7107	#define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_320 0xdUL7108	#define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_384 0xeUL7109	#define RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_MAX 0xfUL7110	#define RING_ALLOC_REQ_CMPL_COAL_CNT_LAST    RING_ALLOC_REQ_CMPL_COAL_CNT_COAL_MAX7111	__le16	flags;7112	#define RING_ALLOC_REQ_FLAGS_RX_SOP_PAD                        0x1UL7113	#define RING_ALLOC_REQ_FLAGS_DISABLE_CQ_OVERFLOW_DETECTION     0x2UL7114	#define RING_ALLOC_REQ_FLAGS_NQ_DBR_PACING                     0x4UL7115	#define RING_ALLOC_REQ_FLAGS_TX_PKT_TS_CMPL_ENABLE             0x8UL7116	__le64	page_tbl_addr;7117	__le32	fbo;7118	u8	page_size;7119	u8	page_tbl_depth;7120	__le16	schq_id;7121	__le32	length;7122	__le16	logical_id;7123	__le16	cmpl_ring_id;7124	__le16	queue_id;7125	__le16	rx_buf_size;7126	__le16	rx_ring_id;7127	__le16	nq_ring_id;7128	__le16	ring_arb_cfg;7129	#define RING_ALLOC_REQ_RING_ARB_CFG_ARB_POLICY_MASK      0xfUL7130	#define RING_ALLOC_REQ_RING_ARB_CFG_ARB_POLICY_SFT       07131	#define RING_ALLOC_REQ_RING_ARB_CFG_ARB_POLICY_SP          0x1UL7132	#define RING_ALLOC_REQ_RING_ARB_CFG_ARB_POLICY_WFQ         0x2UL7133	#define RING_ALLOC_REQ_RING_ARB_CFG_ARB_POLICY_LAST       RING_ALLOC_REQ_RING_ARB_CFG_ARB_POLICY_WFQ7134	#define RING_ALLOC_REQ_RING_ARB_CFG_RSVD_MASK            0xf0UL7135	#define RING_ALLOC_REQ_RING_ARB_CFG_RSVD_SFT             47136	#define RING_ALLOC_REQ_RING_ARB_CFG_ARB_POLICY_PARAM_MASK 0xff00UL7137	#define RING_ALLOC_REQ_RING_ARB_CFG_ARB_POLICY_PARAM_SFT 87138	__le16	steering_tag;7139	__le32	reserved3;7140	__le32	stat_ctx_id;7141	__le32	reserved4;7142	__le32	max_bw;7143	#define RING_ALLOC_REQ_MAX_BW_BW_VALUE_MASK             0xfffffffUL7144	#define RING_ALLOC_REQ_MAX_BW_BW_VALUE_SFT              07145	#define RING_ALLOC_REQ_MAX_BW_SCALE                     0x10000000UL7146	#define RING_ALLOC_REQ_MAX_BW_SCALE_BITS                  (0x0UL << 28)7147	#define RING_ALLOC_REQ_MAX_BW_SCALE_BYTES                 (0x1UL << 28)7148	#define RING_ALLOC_REQ_MAX_BW_SCALE_LAST                 RING_ALLOC_REQ_MAX_BW_SCALE_BYTES7149	#define RING_ALLOC_REQ_MAX_BW_BW_VALUE_UNIT_MASK        0xe0000000UL7150	#define RING_ALLOC_REQ_MAX_BW_BW_VALUE_UNIT_SFT         297151	#define RING_ALLOC_REQ_MAX_BW_BW_VALUE_UNIT_MEGA          (0x0UL << 29)7152	#define RING_ALLOC_REQ_MAX_BW_BW_VALUE_UNIT_KILO          (0x2UL << 29)7153	#define RING_ALLOC_REQ_MAX_BW_BW_VALUE_UNIT_BASE          (0x4UL << 29)7154	#define RING_ALLOC_REQ_MAX_BW_BW_VALUE_UNIT_GIGA          (0x6UL << 29)7155	#define RING_ALLOC_REQ_MAX_BW_BW_VALUE_UNIT_PERCENT1_100  (0x1UL << 29)7156	#define RING_ALLOC_REQ_MAX_BW_BW_VALUE_UNIT_INVALID       (0x7UL << 29)7157	#define RING_ALLOC_REQ_MAX_BW_BW_VALUE_UNIT_LAST         RING_ALLOC_REQ_MAX_BW_BW_VALUE_UNIT_INVALID7158	u8	int_mode;7159	#define RING_ALLOC_REQ_INT_MODE_LEGACY 0x0UL7160	#define RING_ALLOC_REQ_INT_MODE_RSVD   0x1UL7161	#define RING_ALLOC_REQ_INT_MODE_MSIX   0x2UL7162	#define RING_ALLOC_REQ_INT_MODE_POLL   0x3UL7163	#define RING_ALLOC_REQ_INT_MODE_LAST  RING_ALLOC_REQ_INT_MODE_POLL7164	u8	mpc_chnls_type;7165	#define RING_ALLOC_REQ_MPC_CHNLS_TYPE_TCE     0x0UL7166	#define RING_ALLOC_REQ_MPC_CHNLS_TYPE_RCE     0x1UL7167	#define RING_ALLOC_REQ_MPC_CHNLS_TYPE_TE_CFA  0x2UL7168	#define RING_ALLOC_REQ_MPC_CHNLS_TYPE_RE_CFA  0x3UL7169	#define RING_ALLOC_REQ_MPC_CHNLS_TYPE_PRIMATE 0x4UL7170	#define RING_ALLOC_REQ_MPC_CHNLS_TYPE_LAST   RING_ALLOC_REQ_MPC_CHNLS_TYPE_PRIMATE7171	u8	unused_4[2];7172	__le64	cq_handle;7173};7174 7175/* hwrm_ring_alloc_output (size:128b/16B) */7176struct hwrm_ring_alloc_output {7177	__le16	error_code;7178	__le16	req_type;7179	__le16	seq_id;7180	__le16	resp_len;7181	__le16	ring_id;7182	__le16	logical_ring_id;7183	u8	push_buffer_index;7184	#define RING_ALLOC_RESP_PUSH_BUFFER_INDEX_PING_BUFFER 0x0UL7185	#define RING_ALLOC_RESP_PUSH_BUFFER_INDEX_PONG_BUFFER 0x1UL7186	#define RING_ALLOC_RESP_PUSH_BUFFER_INDEX_LAST       RING_ALLOC_RESP_PUSH_BUFFER_INDEX_PONG_BUFFER7187	u8	unused_0[2];7188	u8	valid;7189};7190 7191/* hwrm_ring_free_input (size:256b/32B) */7192struct hwrm_ring_free_input {7193	__le16	req_type;7194	__le16	cmpl_ring;7195	__le16	seq_id;7196	__le16	target_id;7197	__le64	resp_addr;7198	u8	ring_type;7199	#define RING_FREE_REQ_RING_TYPE_L2_CMPL   0x0UL7200	#define RING_FREE_REQ_RING_TYPE_TX        0x1UL7201	#define RING_FREE_REQ_RING_TYPE_RX        0x2UL7202	#define RING_FREE_REQ_RING_TYPE_ROCE_CMPL 0x3UL7203	#define RING_FREE_REQ_RING_TYPE_RX_AGG    0x4UL7204	#define RING_FREE_REQ_RING_TYPE_NQ        0x5UL7205	#define RING_FREE_REQ_RING_TYPE_LAST     RING_FREE_REQ_RING_TYPE_NQ7206	u8	flags;7207	#define RING_FREE_REQ_FLAGS_VIRTIO_RING_VALID 0x1UL7208	#define RING_FREE_REQ_FLAGS_LAST             RING_FREE_REQ_FLAGS_VIRTIO_RING_VALID7209	__le16	ring_id;7210	__le32	prod_idx;7211	__le32	opaque;7212	__le32	unused_1;7213};7214 7215/* hwrm_ring_free_output (size:128b/16B) */7216struct hwrm_ring_free_output {7217	__le16	error_code;7218	__le16	req_type;7219	__le16	seq_id;7220	__le16	resp_len;7221	u8	unused_0[7];7222	u8	valid;7223};7224 7225/* hwrm_ring_reset_input (size:192b/24B) */7226struct hwrm_ring_reset_input {7227	__le16	req_type;7228	__le16	cmpl_ring;7229	__le16	seq_id;7230	__le16	target_id;7231	__le64	resp_addr;7232	u8	ring_type;7233	#define RING_RESET_REQ_RING_TYPE_L2_CMPL     0x0UL7234	#define RING_RESET_REQ_RING_TYPE_TX          0x1UL7235	#define RING_RESET_REQ_RING_TYPE_RX          0x2UL7236	#define RING_RESET_REQ_RING_TYPE_ROCE_CMPL   0x3UL7237	#define RING_RESET_REQ_RING_TYPE_RX_RING_GRP 0x6UL7238	#define RING_RESET_REQ_RING_TYPE_LAST       RING_RESET_REQ_RING_TYPE_RX_RING_GRP7239	u8	unused_0;7240	__le16	ring_id;7241	u8	unused_1[4];7242};7243 7244/* hwrm_ring_reset_output (size:128b/16B) */7245struct hwrm_ring_reset_output {7246	__le16	error_code;7247	__le16	req_type;7248	__le16	seq_id;7249	__le16	resp_len;7250	u8	push_buffer_index;7251	#define RING_RESET_RESP_PUSH_BUFFER_INDEX_PING_BUFFER 0x0UL7252	#define RING_RESET_RESP_PUSH_BUFFER_INDEX_PONG_BUFFER 0x1UL7253	#define RING_RESET_RESP_PUSH_BUFFER_INDEX_LAST       RING_RESET_RESP_PUSH_BUFFER_INDEX_PONG_BUFFER7254	u8	unused_0[3];7255	u8	consumer_idx[3];7256	u8	valid;7257};7258 7259/* hwrm_ring_aggint_qcaps_input (size:128b/16B) */7260struct hwrm_ring_aggint_qcaps_input {7261	__le16	req_type;7262	__le16	cmpl_ring;7263	__le16	seq_id;7264	__le16	target_id;7265	__le64	resp_addr;7266};7267 7268/* hwrm_ring_aggint_qcaps_output (size:384b/48B) */7269struct hwrm_ring_aggint_qcaps_output {7270	__le16	error_code;7271	__le16	req_type;7272	__le16	seq_id;7273	__le16	resp_len;7274	__le32	cmpl_params;7275	#define RING_AGGINT_QCAPS_RESP_CMPL_PARAMS_INT_LAT_TMR_MIN                  0x1UL7276	#define RING_AGGINT_QCAPS_RESP_CMPL_PARAMS_INT_LAT_TMR_MAX                  0x2UL7277	#define RING_AGGINT_QCAPS_RESP_CMPL_PARAMS_TIMER_RESET                      0x4UL7278	#define RING_AGGINT_QCAPS_RESP_CMPL_PARAMS_RING_IDLE                        0x8UL7279	#define RING_AGGINT_QCAPS_RESP_CMPL_PARAMS_NUM_CMPL_DMA_AGGR                0x10UL7280	#define RING_AGGINT_QCAPS_RESP_CMPL_PARAMS_NUM_CMPL_DMA_AGGR_DURING_INT     0x20UL7281	#define RING_AGGINT_QCAPS_RESP_CMPL_PARAMS_CMPL_AGGR_DMA_TMR                0x40UL7282	#define RING_AGGINT_QCAPS_RESP_CMPL_PARAMS_CMPL_AGGR_DMA_TMR_DURING_INT     0x80UL7283	#define RING_AGGINT_QCAPS_RESP_CMPL_PARAMS_NUM_CMPL_AGGR_INT                0x100UL7284	__le32	nq_params;7285	#define RING_AGGINT_QCAPS_RESP_NQ_PARAMS_INT_LAT_TMR_MIN     0x1UL7286	__le16	num_cmpl_dma_aggr_min;7287	__le16	num_cmpl_dma_aggr_max;7288	__le16	num_cmpl_dma_aggr_during_int_min;7289	__le16	num_cmpl_dma_aggr_during_int_max;7290	__le16	cmpl_aggr_dma_tmr_min;7291	__le16	cmpl_aggr_dma_tmr_max;7292	__le16	cmpl_aggr_dma_tmr_during_int_min;7293	__le16	cmpl_aggr_dma_tmr_during_int_max;7294	__le16	int_lat_tmr_min_min;7295	__le16	int_lat_tmr_min_max;7296	__le16	int_lat_tmr_max_min;7297	__le16	int_lat_tmr_max_max;7298	__le16	num_cmpl_aggr_int_min;7299	__le16	num_cmpl_aggr_int_max;7300	__le16	timer_units;7301	u8	unused_0[1];7302	u8	valid;7303};7304 7305/* hwrm_ring_cmpl_ring_qaggint_params_input (size:192b/24B) */7306struct hwrm_ring_cmpl_ring_qaggint_params_input {7307	__le16	req_type;7308	__le16	cmpl_ring;7309	__le16	seq_id;7310	__le16	target_id;7311	__le64	resp_addr;7312	__le16	ring_id;7313	__le16	flags;7314	#define RING_CMPL_RING_QAGGINT_PARAMS_REQ_FLAGS_UNUSED_0_MASK 0x3UL7315	#define RING_CMPL_RING_QAGGINT_PARAMS_REQ_FLAGS_UNUSED_0_SFT 07316	#define RING_CMPL_RING_QAGGINT_PARAMS_REQ_FLAGS_IS_NQ        0x4UL7317	u8	unused_0[4];7318};7319 7320/* hwrm_ring_cmpl_ring_qaggint_params_output (size:256b/32B) */7321struct hwrm_ring_cmpl_ring_qaggint_params_output {7322	__le16	error_code;7323	__le16	req_type;7324	__le16	seq_id;7325	__le16	resp_len;7326	__le16	flags;7327	#define RING_CMPL_RING_QAGGINT_PARAMS_RESP_FLAGS_TIMER_RESET     0x1UL7328	#define RING_CMPL_RING_QAGGINT_PARAMS_RESP_FLAGS_RING_IDLE       0x2UL7329	__le16	num_cmpl_dma_aggr;7330	__le16	num_cmpl_dma_aggr_during_int;7331	__le16	cmpl_aggr_dma_tmr;7332	__le16	cmpl_aggr_dma_tmr_during_int;7333	__le16	int_lat_tmr_min;7334	__le16	int_lat_tmr_max;7335	__le16	num_cmpl_aggr_int;7336	u8	unused_0[7];7337	u8	valid;7338};7339 7340/* hwrm_ring_cmpl_ring_cfg_aggint_params_input (size:320b/40B) */7341struct hwrm_ring_cmpl_ring_cfg_aggint_params_input {7342	__le16	req_type;7343	__le16	cmpl_ring;7344	__le16	seq_id;7345	__le16	target_id;7346	__le64	resp_addr;7347	__le16	ring_id;7348	__le16	flags;7349	#define RING_CMPL_RING_CFG_AGGINT_PARAMS_REQ_FLAGS_TIMER_RESET     0x1UL7350	#define RING_CMPL_RING_CFG_AGGINT_PARAMS_REQ_FLAGS_RING_IDLE       0x2UL7351	#define RING_CMPL_RING_CFG_AGGINT_PARAMS_REQ_FLAGS_IS_NQ           0x4UL7352	__le16	num_cmpl_dma_aggr;7353	__le16	num_cmpl_dma_aggr_during_int;7354	__le16	cmpl_aggr_dma_tmr;7355	__le16	cmpl_aggr_dma_tmr_during_int;7356	__le16	int_lat_tmr_min;7357	__le16	int_lat_tmr_max;7358	__le16	num_cmpl_aggr_int;7359	__le16	enables;7360	#define RING_CMPL_RING_CFG_AGGINT_PARAMS_REQ_ENABLES_NUM_CMPL_DMA_AGGR                0x1UL7361	#define RING_CMPL_RING_CFG_AGGINT_PARAMS_REQ_ENABLES_NUM_CMPL_DMA_AGGR_DURING_INT     0x2UL7362	#define RING_CMPL_RING_CFG_AGGINT_PARAMS_REQ_ENABLES_CMPL_AGGR_DMA_TMR                0x4UL7363	#define RING_CMPL_RING_CFG_AGGINT_PARAMS_REQ_ENABLES_INT_LAT_TMR_MIN                  0x8UL7364	#define RING_CMPL_RING_CFG_AGGINT_PARAMS_REQ_ENABLES_INT_LAT_TMR_MAX                  0x10UL7365	#define RING_CMPL_RING_CFG_AGGINT_PARAMS_REQ_ENABLES_NUM_CMPL_AGGR_INT                0x20UL7366	u8	unused_0[4];7367};7368 7369/* hwrm_ring_cmpl_ring_cfg_aggint_params_output (size:128b/16B) */7370struct hwrm_ring_cmpl_ring_cfg_aggint_params_output {7371	__le16	error_code;7372	__le16	req_type;7373	__le16	seq_id;7374	__le16	resp_len;7375	u8	unused_0[7];7376	u8	valid;7377};7378 7379/* hwrm_ring_grp_alloc_input (size:192b/24B) */7380struct hwrm_ring_grp_alloc_input {7381	__le16	req_type;7382	__le16	cmpl_ring;7383	__le16	seq_id;7384	__le16	target_id;7385	__le64	resp_addr;7386	__le16	cr;7387	__le16	rr;7388	__le16	ar;7389	__le16	sc;7390};7391 7392/* hwrm_ring_grp_alloc_output (size:128b/16B) */7393struct hwrm_ring_grp_alloc_output {7394	__le16	error_code;7395	__le16	req_type;7396	__le16	seq_id;7397	__le16	resp_len;7398	__le32	ring_group_id;7399	u8	unused_0[3];7400	u8	valid;7401};7402 7403/* hwrm_ring_grp_free_input (size:192b/24B) */7404struct hwrm_ring_grp_free_input {7405	__le16	req_type;7406	__le16	cmpl_ring;7407	__le16	seq_id;7408	__le16	target_id;7409	__le64	resp_addr;7410	__le32	ring_group_id;7411	u8	unused_0[4];7412};7413 7414/* hwrm_ring_grp_free_output (size:128b/16B) */7415struct hwrm_ring_grp_free_output {7416	__le16	error_code;7417	__le16	req_type;7418	__le16	seq_id;7419	__le16	resp_len;7420	u8	unused_0[7];7421	u8	valid;7422};7423 7424#define DEFAULT_FLOW_ID 0xFFFFFFFFUL7425#define ROCEV1_FLOW_ID 0xFFFFFFFEUL7426#define ROCEV2_FLOW_ID 0xFFFFFFFDUL7427#define ROCEV2_CNP_FLOW_ID 0xFFFFFFFCUL7428 7429/* hwrm_cfa_l2_filter_alloc_input (size:768b/96B) */7430struct hwrm_cfa_l2_filter_alloc_input {7431	__le16	req_type;7432	__le16	cmpl_ring;7433	__le16	seq_id;7434	__le16	target_id;7435	__le64	resp_addr;7436	__le32	flags;7437	#define CFA_L2_FILTER_ALLOC_REQ_FLAGS_PATH              0x1UL7438	#define CFA_L2_FILTER_ALLOC_REQ_FLAGS_PATH_TX             0x0UL7439	#define CFA_L2_FILTER_ALLOC_REQ_FLAGS_PATH_RX             0x1UL7440	#define CFA_L2_FILTER_ALLOC_REQ_FLAGS_PATH_LAST          CFA_L2_FILTER_ALLOC_REQ_FLAGS_PATH_RX7441	#define CFA_L2_FILTER_ALLOC_REQ_FLAGS_LOOPBACK          0x2UL7442	#define CFA_L2_FILTER_ALLOC_REQ_FLAGS_DROP              0x4UL7443	#define CFA_L2_FILTER_ALLOC_REQ_FLAGS_OUTERMOST         0x8UL7444	#define CFA_L2_FILTER_ALLOC_REQ_FLAGS_TRAFFIC_MASK      0x30UL7445	#define CFA_L2_FILTER_ALLOC_REQ_FLAGS_TRAFFIC_SFT       47446	#define CFA_L2_FILTER_ALLOC_REQ_FLAGS_TRAFFIC_NO_ROCE_L2  (0x0UL << 4)7447	#define CFA_L2_FILTER_ALLOC_REQ_FLAGS_TRAFFIC_L2          (0x1UL << 4)7448	#define CFA_L2_FILTER_ALLOC_REQ_FLAGS_TRAFFIC_ROCE        (0x2UL << 4)7449	#define CFA_L2_FILTER_ALLOC_REQ_FLAGS_TRAFFIC_LAST       CFA_L2_FILTER_ALLOC_REQ_FLAGS_TRAFFIC_ROCE7450	#define CFA_L2_FILTER_ALLOC_REQ_FLAGS_XDP_DISABLE       0x40UL7451	#define CFA_L2_FILTER_ALLOC_REQ_FLAGS_SOURCE_VALID      0x80UL7452	__le32	enables;7453	#define CFA_L2_FILTER_ALLOC_REQ_ENABLES_L2_ADDR             0x1UL7454	#define CFA_L2_FILTER_ALLOC_REQ_ENABLES_L2_ADDR_MASK        0x2UL7455	#define CFA_L2_FILTER_ALLOC_REQ_ENABLES_L2_OVLAN            0x4UL7456	#define CFA_L2_FILTER_ALLOC_REQ_ENABLES_L2_OVLAN_MASK       0x8UL7457	#define CFA_L2_FILTER_ALLOC_REQ_ENABLES_L2_IVLAN            0x10UL7458	#define CFA_L2_FILTER_ALLOC_REQ_ENABLES_L2_IVLAN_MASK       0x20UL7459	#define CFA_L2_FILTER_ALLOC_REQ_ENABLES_T_L2_ADDR           0x40UL7460	#define CFA_L2_FILTER_ALLOC_REQ_ENABLES_T_L2_ADDR_MASK      0x80UL7461	#define CFA_L2_FILTER_ALLOC_REQ_ENABLES_T_L2_OVLAN          0x100UL7462	#define CFA_L2_FILTER_ALLOC_REQ_ENABLES_T_L2_OVLAN_MASK     0x200UL7463	#define CFA_L2_FILTER_ALLOC_REQ_ENABLES_T_L2_IVLAN          0x400UL7464	#define CFA_L2_FILTER_ALLOC_REQ_ENABLES_T_L2_IVLAN_MASK     0x800UL7465	#define CFA_L2_FILTER_ALLOC_REQ_ENABLES_SRC_TYPE            0x1000UL7466	#define CFA_L2_FILTER_ALLOC_REQ_ENABLES_SRC_ID              0x2000UL7467	#define CFA_L2_FILTER_ALLOC_REQ_ENABLES_TUNNEL_TYPE         0x4000UL7468	#define CFA_L2_FILTER_ALLOC_REQ_ENABLES_DST_ID              0x8000UL7469	#define CFA_L2_FILTER_ALLOC_REQ_ENABLES_MIRROR_VNIC_ID      0x10000UL7470	#define CFA_L2_FILTER_ALLOC_REQ_ENABLES_NUM_VLANS           0x20000UL7471	#define CFA_L2_FILTER_ALLOC_REQ_ENABLES_T_NUM_VLANS         0x40000UL7472	u8	l2_addr[6];7473	u8	num_vlans;7474	u8	t_num_vlans;7475	u8	l2_addr_mask[6];7476	__le16	l2_ovlan;7477	__le16	l2_ovlan_mask;7478	__le16	l2_ivlan;7479	__le16	l2_ivlan_mask;7480	u8	unused_1[2];7481	u8	t_l2_addr[6];7482	u8	unused_2[2];7483	u8	t_l2_addr_mask[6];7484	__le16	t_l2_ovlan;7485	__le16	t_l2_ovlan_mask;7486	__le16	t_l2_ivlan;7487	__le16	t_l2_ivlan_mask;7488	u8	src_type;7489	#define CFA_L2_FILTER_ALLOC_REQ_SRC_TYPE_NPORT 0x0UL7490	#define CFA_L2_FILTER_ALLOC_REQ_SRC_TYPE_PF    0x1UL7491	#define CFA_L2_FILTER_ALLOC_REQ_SRC_TYPE_VF    0x2UL7492	#define CFA_L2_FILTER_ALLOC_REQ_SRC_TYPE_VNIC  0x3UL7493	#define CFA_L2_FILTER_ALLOC_REQ_SRC_TYPE_KONG  0x4UL7494	#define CFA_L2_FILTER_ALLOC_REQ_SRC_TYPE_APE   0x5UL7495	#define CFA_L2_FILTER_ALLOC_REQ_SRC_TYPE_BONO  0x6UL7496	#define CFA_L2_FILTER_ALLOC_REQ_SRC_TYPE_TANG  0x7UL7497	#define CFA_L2_FILTER_ALLOC_REQ_SRC_TYPE_LAST CFA_L2_FILTER_ALLOC_REQ_SRC_TYPE_TANG7498	u8	unused_3;7499	__le32	src_id;7500	u8	tunnel_type;7501	#define CFA_L2_FILTER_ALLOC_REQ_TUNNEL_TYPE_NONTUNNEL    0x0UL7502	#define CFA_L2_FILTER_ALLOC_REQ_TUNNEL_TYPE_VXLAN        0x1UL7503	#define CFA_L2_FILTER_ALLOC_REQ_TUNNEL_TYPE_NVGRE        0x2UL7504	#define CFA_L2_FILTER_ALLOC_REQ_TUNNEL_TYPE_L2GRE        0x3UL7505	#define CFA_L2_FILTER_ALLOC_REQ_TUNNEL_TYPE_IPIP         0x4UL7506	#define CFA_L2_FILTER_ALLOC_REQ_TUNNEL_TYPE_GENEVE       0x5UL7507	#define CFA_L2_FILTER_ALLOC_REQ_TUNNEL_TYPE_MPLS         0x6UL7508	#define CFA_L2_FILTER_ALLOC_REQ_TUNNEL_TYPE_STT          0x7UL7509	#define CFA_L2_FILTER_ALLOC_REQ_TUNNEL_TYPE_IPGRE        0x8UL7510	#define CFA_L2_FILTER_ALLOC_REQ_TUNNEL_TYPE_VXLAN_V4     0x9UL7511	#define CFA_L2_FILTER_ALLOC_REQ_TUNNEL_TYPE_IPGRE_V1     0xaUL7512	#define CFA_L2_FILTER_ALLOC_REQ_TUNNEL_TYPE_L2_ETYPE     0xbUL7513	#define CFA_L2_FILTER_ALLOC_REQ_TUNNEL_TYPE_VXLAN_GPE_V6 0xcUL7514	#define CFA_L2_FILTER_ALLOC_REQ_TUNNEL_TYPE_VXLAN_GPE    0x10UL7515	#define CFA_L2_FILTER_ALLOC_REQ_TUNNEL_TYPE_ANYTUNNEL    0xffUL7516	#define CFA_L2_FILTER_ALLOC_REQ_TUNNEL_TYPE_LAST        CFA_L2_FILTER_ALLOC_REQ_TUNNEL_TYPE_ANYTUNNEL7517	u8	unused_4;7518	__le16	dst_id;7519	__le16	mirror_vnic_id;7520	u8	pri_hint;7521	#define CFA_L2_FILTER_ALLOC_REQ_PRI_HINT_NO_PREFER    0x0UL7522	#define CFA_L2_FILTER_ALLOC_REQ_PRI_HINT_ABOVE_FILTER 0x1UL7523	#define CFA_L2_FILTER_ALLOC_REQ_PRI_HINT_BELOW_FILTER 0x2UL7524	#define CFA_L2_FILTER_ALLOC_REQ_PRI_HINT_MAX          0x3UL7525	#define CFA_L2_FILTER_ALLOC_REQ_PRI_HINT_MIN          0x4UL7526	#define CFA_L2_FILTER_ALLOC_REQ_PRI_HINT_LAST        CFA_L2_FILTER_ALLOC_REQ_PRI_HINT_MIN7527	u8	unused_5;7528	__le32	unused_6;7529	__le64	l2_filter_id_hint;7530};7531 7532/* hwrm_cfa_l2_filter_alloc_output (size:192b/24B) */7533struct hwrm_cfa_l2_filter_alloc_output {7534	__le16	error_code;7535	__le16	req_type;7536	__le16	seq_id;7537	__le16	resp_len;7538	__le64	l2_filter_id;7539	__le32	flow_id;7540	#define CFA_L2_FILTER_ALLOC_RESP_FLOW_ID_VALUE_MASK 0x3fffffffUL7541	#define CFA_L2_FILTER_ALLOC_RESP_FLOW_ID_VALUE_SFT 07542	#define CFA_L2_FILTER_ALLOC_RESP_FLOW_ID_TYPE      0x40000000UL7543	#define CFA_L2_FILTER_ALLOC_RESP_FLOW_ID_TYPE_INT    (0x0UL << 30)7544	#define CFA_L2_FILTER_ALLOC_RESP_FLOW_ID_TYPE_EXT    (0x1UL << 30)7545	#define CFA_L2_FILTER_ALLOC_RESP_FLOW_ID_TYPE_LAST  CFA_L2_FILTER_ALLOC_RESP_FLOW_ID_TYPE_EXT7546	#define CFA_L2_FILTER_ALLOC_RESP_FLOW_ID_DIR       0x80000000UL7547	#define CFA_L2_FILTER_ALLOC_RESP_FLOW_ID_DIR_RX      (0x0UL << 31)7548	#define CFA_L2_FILTER_ALLOC_RESP_FLOW_ID_DIR_TX      (0x1UL << 31)7549	#define CFA_L2_FILTER_ALLOC_RESP_FLOW_ID_DIR_LAST   CFA_L2_FILTER_ALLOC_RESP_FLOW_ID_DIR_TX7550	u8	unused_0[3];7551	u8	valid;7552};7553 7554/* hwrm_cfa_l2_filter_free_input (size:192b/24B) */7555struct hwrm_cfa_l2_filter_free_input {7556	__le16	req_type;7557	__le16	cmpl_ring;7558	__le16	seq_id;7559	__le16	target_id;7560	__le64	resp_addr;7561	__le64	l2_filter_id;7562};7563 7564/* hwrm_cfa_l2_filter_free_output (size:128b/16B) */7565struct hwrm_cfa_l2_filter_free_output {7566	__le16	error_code;7567	__le16	req_type;7568	__le16	seq_id;7569	__le16	resp_len;7570	u8	unused_0[7];7571	u8	valid;7572};7573 7574/* hwrm_cfa_l2_filter_cfg_input (size:384b/48B) */7575struct hwrm_cfa_l2_filter_cfg_input {7576	__le16	req_type;7577	__le16	cmpl_ring;7578	__le16	seq_id;7579	__le16	target_id;7580	__le64	resp_addr;7581	__le32	flags;7582	#define CFA_L2_FILTER_CFG_REQ_FLAGS_PATH                  0x1UL7583	#define CFA_L2_FILTER_CFG_REQ_FLAGS_PATH_TX                 0x0UL7584	#define CFA_L2_FILTER_CFG_REQ_FLAGS_PATH_RX                 0x1UL7585	#define CFA_L2_FILTER_CFG_REQ_FLAGS_PATH_LAST              CFA_L2_FILTER_CFG_REQ_FLAGS_PATH_RX7586	#define CFA_L2_FILTER_CFG_REQ_FLAGS_DROP                  0x2UL7587	#define CFA_L2_FILTER_CFG_REQ_FLAGS_TRAFFIC_MASK          0xcUL7588	#define CFA_L2_FILTER_CFG_REQ_FLAGS_TRAFFIC_SFT           27589	#define CFA_L2_FILTER_CFG_REQ_FLAGS_TRAFFIC_NO_ROCE_L2      (0x0UL << 2)7590	#define CFA_L2_FILTER_CFG_REQ_FLAGS_TRAFFIC_L2              (0x1UL << 2)7591	#define CFA_L2_FILTER_CFG_REQ_FLAGS_TRAFFIC_ROCE            (0x2UL << 2)7592	#define CFA_L2_FILTER_CFG_REQ_FLAGS_TRAFFIC_LAST           CFA_L2_FILTER_CFG_REQ_FLAGS_TRAFFIC_ROCE7593	#define CFA_L2_FILTER_CFG_REQ_FLAGS_REMAP_OP_MASK         0x30UL7594	#define CFA_L2_FILTER_CFG_REQ_FLAGS_REMAP_OP_SFT          47595	#define CFA_L2_FILTER_CFG_REQ_FLAGS_REMAP_OP_NO_UPDATE      (0x0UL << 4)7596	#define CFA_L2_FILTER_CFG_REQ_FLAGS_REMAP_OP_BYPASS_LKUP    (0x1UL << 4)7597	#define CFA_L2_FILTER_CFG_REQ_FLAGS_REMAP_OP_ENABLE_LKUP    (0x2UL << 4)7598	#define CFA_L2_FILTER_CFG_REQ_FLAGS_REMAP_OP_RESTORE_FW_OP  (0x3UL << 4)7599	#define CFA_L2_FILTER_CFG_REQ_FLAGS_REMAP_OP_LAST          CFA_L2_FILTER_CFG_REQ_FLAGS_REMAP_OP_RESTORE_FW_OP7600	__le32	enables;7601	#define CFA_L2_FILTER_CFG_REQ_ENABLES_DST_ID                 0x1UL7602	#define CFA_L2_FILTER_CFG_REQ_ENABLES_NEW_MIRROR_VNIC_ID     0x2UL7603	#define CFA_L2_FILTER_CFG_REQ_ENABLES_PROF_FUNC              0x4UL7604	#define CFA_L2_FILTER_CFG_REQ_ENABLES_L2_CONTEXT_ID          0x8UL7605	__le64	l2_filter_id;7606	__le32	dst_id;7607	__le32	new_mirror_vnic_id;7608	__le32	prof_func;7609	__le32	l2_context_id;7610};7611 7612/* hwrm_cfa_l2_filter_cfg_output (size:128b/16B) */7613struct hwrm_cfa_l2_filter_cfg_output {7614	__le16	error_code;7615	__le16	req_type;7616	__le16	seq_id;7617	__le16	resp_len;7618	u8	unused_0[7];7619	u8	valid;7620};7621 7622/* hwrm_cfa_l2_set_rx_mask_input (size:448b/56B) */7623struct hwrm_cfa_l2_set_rx_mask_input {7624	__le16	req_type;7625	__le16	cmpl_ring;7626	__le16	seq_id;7627	__le16	target_id;7628	__le64	resp_addr;7629	__le32	vnic_id;7630	__le32	mask;7631	#define CFA_L2_SET_RX_MASK_REQ_MASK_MCAST               0x2UL7632	#define CFA_L2_SET_RX_MASK_REQ_MASK_ALL_MCAST           0x4UL7633	#define CFA_L2_SET_RX_MASK_REQ_MASK_BCAST               0x8UL7634	#define CFA_L2_SET_RX_MASK_REQ_MASK_PROMISCUOUS         0x10UL7635	#define CFA_L2_SET_RX_MASK_REQ_MASK_OUTERMOST           0x20UL7636	#define CFA_L2_SET_RX_MASK_REQ_MASK_VLANONLY            0x40UL7637	#define CFA_L2_SET_RX_MASK_REQ_MASK_VLAN_NONVLAN        0x80UL7638	#define CFA_L2_SET_RX_MASK_REQ_MASK_ANYVLAN_NONVLAN     0x100UL7639	__le64	mc_tbl_addr;7640	__le32	num_mc_entries;7641	u8	unused_0[4];7642	__le64	vlan_tag_tbl_addr;7643	__le32	num_vlan_tags;7644	u8	unused_1[4];7645};7646 7647/* hwrm_cfa_l2_set_rx_mask_output (size:128b/16B) */7648struct hwrm_cfa_l2_set_rx_mask_output {7649	__le16	error_code;7650	__le16	req_type;7651	__le16	seq_id;7652	__le16	resp_len;7653	u8	unused_0[7];7654	u8	valid;7655};7656 7657/* hwrm_cfa_l2_set_rx_mask_cmd_err (size:64b/8B) */7658struct hwrm_cfa_l2_set_rx_mask_cmd_err {7659	u8	code;7660	#define CFA_L2_SET_RX_MASK_CMD_ERR_CODE_UNKNOWN                    0x0UL7661	#define CFA_L2_SET_RX_MASK_CMD_ERR_CODE_NTUPLE_FILTER_CONFLICT_ERR 0x1UL7662	#define CFA_L2_SET_RX_MASK_CMD_ERR_CODE_LAST                      CFA_L2_SET_RX_MASK_CMD_ERR_CODE_NTUPLE_FILTER_CONFLICT_ERR7663	u8	unused_0[7];7664};7665 7666/* hwrm_cfa_tunnel_filter_alloc_input (size:704b/88B) */7667struct hwrm_cfa_tunnel_filter_alloc_input {7668	__le16	req_type;7669	__le16	cmpl_ring;7670	__le16	seq_id;7671	__le16	target_id;7672	__le64	resp_addr;7673	__le32	flags;7674	#define CFA_TUNNEL_FILTER_ALLOC_REQ_FLAGS_LOOPBACK     0x1UL7675	__le32	enables;7676	#define CFA_TUNNEL_FILTER_ALLOC_REQ_ENABLES_L2_FILTER_ID       0x1UL7677	#define CFA_TUNNEL_FILTER_ALLOC_REQ_ENABLES_L2_ADDR            0x2UL7678	#define CFA_TUNNEL_FILTER_ALLOC_REQ_ENABLES_L2_IVLAN           0x4UL7679	#define CFA_TUNNEL_FILTER_ALLOC_REQ_ENABLES_L3_ADDR            0x8UL7680	#define CFA_TUNNEL_FILTER_ALLOC_REQ_ENABLES_L3_ADDR_TYPE       0x10UL7681	#define CFA_TUNNEL_FILTER_ALLOC_REQ_ENABLES_T_L3_ADDR_TYPE     0x20UL7682	#define CFA_TUNNEL_FILTER_ALLOC_REQ_ENABLES_T_L3_ADDR          0x40UL7683	#define CFA_TUNNEL_FILTER_ALLOC_REQ_ENABLES_TUNNEL_TYPE        0x80UL7684	#define CFA_TUNNEL_FILTER_ALLOC_REQ_ENABLES_VNI                0x100UL7685	#define CFA_TUNNEL_FILTER_ALLOC_REQ_ENABLES_DST_VNIC_ID        0x200UL7686	#define CFA_TUNNEL_FILTER_ALLOC_REQ_ENABLES_MIRROR_VNIC_ID     0x400UL7687	__le64	l2_filter_id;7688	u8	l2_addr[6];7689	__le16	l2_ivlan;7690	__le32	l3_addr[4];7691	__le32	t_l3_addr[4];7692	u8	l3_addr_type;7693	u8	t_l3_addr_type;7694	u8	tunnel_type;7695	#define CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_TYPE_NONTUNNEL    0x0UL7696	#define CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_TYPE_VXLAN        0x1UL7697	#define CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_TYPE_NVGRE        0x2UL7698	#define CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_TYPE_L2GRE        0x3UL7699	#define CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_TYPE_IPIP         0x4UL7700	#define CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_TYPE_GENEVE       0x5UL7701	#define CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_TYPE_MPLS         0x6UL7702	#define CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_TYPE_STT          0x7UL7703	#define CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_TYPE_IPGRE        0x8UL7704	#define CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_TYPE_VXLAN_V4     0x9UL7705	#define CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_TYPE_IPGRE_V1     0xaUL7706	#define CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_TYPE_L2_ETYPE     0xbUL7707	#define CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_TYPE_VXLAN_GPE_V6 0xcUL7708	#define CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_TYPE_VXLAN_GPE    0x10UL7709	#define CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_TYPE_ANYTUNNEL    0xffUL7710	#define CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_TYPE_LAST        CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_TYPE_ANYTUNNEL7711	u8	tunnel_flags;7712	#define CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_FLAGS_TUN_FLAGS_OAM_CHECKSUM_EXPLHDR     0x1UL7713	#define CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_FLAGS_TUN_FLAGS_CRITICAL_OPT_S1          0x2UL7714	#define CFA_TUNNEL_FILTER_ALLOC_REQ_TUNNEL_FLAGS_TUN_FLAGS_EXTHDR_SEQNUM_S0         0x4UL7715	__le32	vni;7716	__le32	dst_vnic_id;7717	__le32	mirror_vnic_id;7718};7719 7720/* hwrm_cfa_tunnel_filter_alloc_output (size:192b/24B) */7721struct hwrm_cfa_tunnel_filter_alloc_output {7722	__le16	error_code;7723	__le16	req_type;7724	__le16	seq_id;7725	__le16	resp_len;7726	__le64	tunnel_filter_id;7727	__le32	flow_id;7728	#define CFA_TUNNEL_FILTER_ALLOC_RESP_FLOW_ID_VALUE_MASK 0x3fffffffUL7729	#define CFA_TUNNEL_FILTER_ALLOC_RESP_FLOW_ID_VALUE_SFT 07730	#define CFA_TUNNEL_FILTER_ALLOC_RESP_FLOW_ID_TYPE      0x40000000UL7731	#define CFA_TUNNEL_FILTER_ALLOC_RESP_FLOW_ID_TYPE_INT    (0x0UL << 30)7732	#define CFA_TUNNEL_FILTER_ALLOC_RESP_FLOW_ID_TYPE_EXT    (0x1UL << 30)7733	#define CFA_TUNNEL_FILTER_ALLOC_RESP_FLOW_ID_TYPE_LAST  CFA_TUNNEL_FILTER_ALLOC_RESP_FLOW_ID_TYPE_EXT7734	#define CFA_TUNNEL_FILTER_ALLOC_RESP_FLOW_ID_DIR       0x80000000UL7735	#define CFA_TUNNEL_FILTER_ALLOC_RESP_FLOW_ID_DIR_RX      (0x0UL << 31)7736	#define CFA_TUNNEL_FILTER_ALLOC_RESP_FLOW_ID_DIR_TX      (0x1UL << 31)7737	#define CFA_TUNNEL_FILTER_ALLOC_RESP_FLOW_ID_DIR_LAST   CFA_TUNNEL_FILTER_ALLOC_RESP_FLOW_ID_DIR_TX7738	u8	unused_0[3];7739	u8	valid;7740};7741 7742/* hwrm_cfa_tunnel_filter_free_input (size:192b/24B) */7743struct hwrm_cfa_tunnel_filter_free_input {7744	__le16	req_type;7745	__le16	cmpl_ring;7746	__le16	seq_id;7747	__le16	target_id;7748	__le64	resp_addr;7749	__le64	tunnel_filter_id;7750};7751 7752/* hwrm_cfa_tunnel_filter_free_output (size:128b/16B) */7753struct hwrm_cfa_tunnel_filter_free_output {7754	__le16	error_code;7755	__le16	req_type;7756	__le16	seq_id;7757	__le16	resp_len;7758	u8	unused_0[7];7759	u8	valid;7760};7761 7762/* hwrm_vxlan_ipv4_hdr (size:128b/16B) */7763struct hwrm_vxlan_ipv4_hdr {7764	u8	ver_hlen;7765	#define VXLAN_IPV4_HDR_VER_HLEN_HEADER_LENGTH_MASK 0xfUL7766	#define VXLAN_IPV4_HDR_VER_HLEN_HEADER_LENGTH_SFT 07767	#define VXLAN_IPV4_HDR_VER_HLEN_VERSION_MASK      0xf0UL7768	#define VXLAN_IPV4_HDR_VER_HLEN_VERSION_SFT       47769	u8	tos;7770	__be16	ip_id;7771	__be16	flags_frag_offset;7772	u8	ttl;7773	u8	protocol;7774	__be32	src_ip_addr;7775	__be32	dest_ip_addr;7776};7777 7778/* hwrm_vxlan_ipv6_hdr (size:320b/40B) */7779struct hwrm_vxlan_ipv6_hdr {7780	__be32	ver_tc_flow_label;7781	#define VXLAN_IPV6_HDR_VER_TC_FLOW_LABEL_VER_SFT         0x1cUL7782	#define VXLAN_IPV6_HDR_VER_TC_FLOW_LABEL_VER_MASK        0xf0000000UL7783	#define VXLAN_IPV6_HDR_VER_TC_FLOW_LABEL_TC_SFT          0x14UL7784	#define VXLAN_IPV6_HDR_VER_TC_FLOW_LABEL_TC_MASK         0xff00000UL7785	#define VXLAN_IPV6_HDR_VER_TC_FLOW_LABEL_FLOW_LABEL_SFT  0x0UL7786	#define VXLAN_IPV6_HDR_VER_TC_FLOW_LABEL_FLOW_LABEL_MASK 0xfffffUL7787	#define VXLAN_IPV6_HDR_VER_TC_FLOW_LABEL_LAST           VXLAN_IPV6_HDR_VER_TC_FLOW_LABEL_FLOW_LABEL_MASK7788	__be16	payload_len;7789	u8	next_hdr;7790	u8	ttl;7791	__be32	src_ip_addr[4];7792	__be32	dest_ip_addr[4];7793};7794 7795/* hwrm_cfa_encap_data_vxlan (size:640b/80B) */7796struct hwrm_cfa_encap_data_vxlan {7797	u8	src_mac_addr[6];7798	__le16	unused_0;7799	u8	dst_mac_addr[6];7800	u8	num_vlan_tags;7801	u8	unused_1;7802	__be16	ovlan_tpid;7803	__be16	ovlan_tci;7804	__be16	ivlan_tpid;7805	__be16	ivlan_tci;7806	__le32	l3[10];7807	#define CFA_ENCAP_DATA_VXLAN_L3_VER_MASK 0xfUL7808	#define CFA_ENCAP_DATA_VXLAN_L3_VER_IPV4 0x4UL7809	#define CFA_ENCAP_DATA_VXLAN_L3_VER_IPV6 0x6UL7810	#define CFA_ENCAP_DATA_VXLAN_L3_LAST    CFA_ENCAP_DATA_VXLAN_L3_VER_IPV67811	__be16	src_port;7812	__be16	dst_port;7813	__be32	vni;7814	u8	hdr_rsvd0[3];7815	u8	hdr_rsvd1;7816	u8	hdr_flags;7817	u8	unused[3];7818};7819 7820/* hwrm_cfa_encap_record_alloc_input (size:832b/104B) */7821struct hwrm_cfa_encap_record_alloc_input {7822	__le16	req_type;7823	__le16	cmpl_ring;7824	__le16	seq_id;7825	__le16	target_id;7826	__le64	resp_addr;7827	__le32	flags;7828	#define CFA_ENCAP_RECORD_ALLOC_REQ_FLAGS_LOOPBACK     0x1UL7829	#define CFA_ENCAP_RECORD_ALLOC_REQ_FLAGS_EXTERNAL     0x2UL7830	u8	encap_type;7831	#define CFA_ENCAP_RECORD_ALLOC_REQ_ENCAP_TYPE_VXLAN        0x1UL7832	#define CFA_ENCAP_RECORD_ALLOC_REQ_ENCAP_TYPE_NVGRE        0x2UL7833	#define CFA_ENCAP_RECORD_ALLOC_REQ_ENCAP_TYPE_L2GRE        0x3UL7834	#define CFA_ENCAP_RECORD_ALLOC_REQ_ENCAP_TYPE_IPIP         0x4UL7835	#define CFA_ENCAP_RECORD_ALLOC_REQ_ENCAP_TYPE_GENEVE       0x5UL7836	#define CFA_ENCAP_RECORD_ALLOC_REQ_ENCAP_TYPE_MPLS         0x6UL7837	#define CFA_ENCAP_RECORD_ALLOC_REQ_ENCAP_TYPE_VLAN         0x7UL7838	#define CFA_ENCAP_RECORD_ALLOC_REQ_ENCAP_TYPE_IPGRE        0x8UL7839	#define CFA_ENCAP_RECORD_ALLOC_REQ_ENCAP_TYPE_VXLAN_V4     0x9UL7840	#define CFA_ENCAP_RECORD_ALLOC_REQ_ENCAP_TYPE_IPGRE_V1     0xaUL7841	#define CFA_ENCAP_RECORD_ALLOC_REQ_ENCAP_TYPE_L2_ETYPE     0xbUL7842	#define CFA_ENCAP_RECORD_ALLOC_REQ_ENCAP_TYPE_VXLAN_GPE_V6 0xcUL7843	#define CFA_ENCAP_RECORD_ALLOC_REQ_ENCAP_TYPE_VXLAN_GPE    0x10UL7844	#define CFA_ENCAP_RECORD_ALLOC_REQ_ENCAP_TYPE_LAST        CFA_ENCAP_RECORD_ALLOC_REQ_ENCAP_TYPE_VXLAN_GPE7845	u8	unused_0[3];7846	__le32	encap_data[20];7847};7848 7849/* hwrm_cfa_encap_record_alloc_output (size:128b/16B) */7850struct hwrm_cfa_encap_record_alloc_output {7851	__le16	error_code;7852	__le16	req_type;7853	__le16	seq_id;7854	__le16	resp_len;7855	__le32	encap_record_id;7856	u8	unused_0[3];7857	u8	valid;7858};7859 7860/* hwrm_cfa_encap_record_free_input (size:192b/24B) */7861struct hwrm_cfa_encap_record_free_input {7862	__le16	req_type;7863	__le16	cmpl_ring;7864	__le16	seq_id;7865	__le16	target_id;7866	__le64	resp_addr;7867	__le32	encap_record_id;7868	u8	unused_0[4];7869};7870 7871/* hwrm_cfa_encap_record_free_output (size:128b/16B) */7872struct hwrm_cfa_encap_record_free_output {7873	__le16	error_code;7874	__le16	req_type;7875	__le16	seq_id;7876	__le16	resp_len;7877	u8	unused_0[7];7878	u8	valid;7879};7880 7881/* hwrm_cfa_ntuple_filter_alloc_input (size:1024b/128B) */7882struct hwrm_cfa_ntuple_filter_alloc_input {7883	__le16	req_type;7884	__le16	cmpl_ring;7885	__le16	seq_id;7886	__le16	target_id;7887	__le64	resp_addr;7888	__le32	flags;7889	#define CFA_NTUPLE_FILTER_ALLOC_REQ_FLAGS_LOOPBACK              0x1UL7890	#define CFA_NTUPLE_FILTER_ALLOC_REQ_FLAGS_DROP                  0x2UL7891	#define CFA_NTUPLE_FILTER_ALLOC_REQ_FLAGS_METER                 0x4UL7892	#define CFA_NTUPLE_FILTER_ALLOC_REQ_FLAGS_DEST_FID              0x8UL7893	#define CFA_NTUPLE_FILTER_ALLOC_REQ_FLAGS_ARP_REPLY             0x10UL7894	#define CFA_NTUPLE_FILTER_ALLOC_REQ_FLAGS_DEST_RFS_RING_IDX     0x20UL7895	#define CFA_NTUPLE_FILTER_ALLOC_REQ_FLAGS_NO_L2_CONTEXT         0x40UL7896	__le32	enables;7897	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_L2_FILTER_ID         0x1UL7898	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_ETHERTYPE            0x2UL7899	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_TUNNEL_TYPE          0x4UL7900	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_SRC_MACADDR          0x8UL7901	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_IPADDR_TYPE          0x10UL7902	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_SRC_IPADDR           0x20UL7903	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_SRC_IPADDR_MASK      0x40UL7904	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_DST_IPADDR           0x80UL7905	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_DST_IPADDR_MASK      0x100UL7906	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_IP_PROTOCOL          0x200UL7907	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_SRC_PORT             0x400UL7908	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_SRC_PORT_MASK        0x800UL7909	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_DST_PORT             0x1000UL7910	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_DST_PORT_MASK        0x2000UL7911	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_PRI_HINT             0x4000UL7912	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_NTUPLE_FILTER_ID     0x8000UL7913	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_DST_ID               0x10000UL7914	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_MIRROR_VNIC_ID       0x20000UL7915	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_DST_MACADDR          0x40000UL7916	#define CFA_NTUPLE_FILTER_ALLOC_REQ_ENABLES_RFS_RING_TBL_IDX     0x80000UL7917	__le64	l2_filter_id;7918	u8	src_macaddr[6];7919	__be16	ethertype;7920	u8	ip_addr_type;7921	#define CFA_NTUPLE_FILTER_ALLOC_REQ_IP_ADDR_TYPE_UNKNOWN 0x0UL7922	#define CFA_NTUPLE_FILTER_ALLOC_REQ_IP_ADDR_TYPE_IPV4    0x4UL7923	#define CFA_NTUPLE_FILTER_ALLOC_REQ_IP_ADDR_TYPE_IPV6    0x6UL7924	#define CFA_NTUPLE_FILTER_ALLOC_REQ_IP_ADDR_TYPE_LAST   CFA_NTUPLE_FILTER_ALLOC_REQ_IP_ADDR_TYPE_IPV67925	u8	ip_protocol;7926	#define CFA_NTUPLE_FILTER_ALLOC_REQ_IP_PROTOCOL_UNKNOWN 0x0UL7927	#define CFA_NTUPLE_FILTER_ALLOC_REQ_IP_PROTOCOL_TCP     0x6UL7928	#define CFA_NTUPLE_FILTER_ALLOC_REQ_IP_PROTOCOL_UDP     0x11UL7929	#define CFA_NTUPLE_FILTER_ALLOC_REQ_IP_PROTOCOL_ICMP    0x1UL7930	#define CFA_NTUPLE_FILTER_ALLOC_REQ_IP_PROTOCOL_ICMPV6  0x3aUL7931	#define CFA_NTUPLE_FILTER_ALLOC_REQ_IP_PROTOCOL_RSVD    0xffUL7932	#define CFA_NTUPLE_FILTER_ALLOC_REQ_IP_PROTOCOL_LAST   CFA_NTUPLE_FILTER_ALLOC_REQ_IP_PROTOCOL_RSVD7933	__le16	dst_id;7934	__le16	rfs_ring_tbl_idx;7935	u8	tunnel_type;7936	#define CFA_NTUPLE_FILTER_ALLOC_REQ_TUNNEL_TYPE_NONTUNNEL    0x0UL7937	#define CFA_NTUPLE_FILTER_ALLOC_REQ_TUNNEL_TYPE_VXLAN        0x1UL7938	#define CFA_NTUPLE_FILTER_ALLOC_REQ_TUNNEL_TYPE_NVGRE        0x2UL7939	#define CFA_NTUPLE_FILTER_ALLOC_REQ_TUNNEL_TYPE_L2GRE        0x3UL7940	#define CFA_NTUPLE_FILTER_ALLOC_REQ_TUNNEL_TYPE_IPIP         0x4UL7941	#define CFA_NTUPLE_FILTER_ALLOC_REQ_TUNNEL_TYPE_GENEVE       0x5UL7942	#define CFA_NTUPLE_FILTER_ALLOC_REQ_TUNNEL_TYPE_MPLS         0x6UL7943	#define CFA_NTUPLE_FILTER_ALLOC_REQ_TUNNEL_TYPE_STT          0x7UL7944	#define CFA_NTUPLE_FILTER_ALLOC_REQ_TUNNEL_TYPE_IPGRE        0x8UL7945	#define CFA_NTUPLE_FILTER_ALLOC_REQ_TUNNEL_TYPE_VXLAN_V4     0x9UL7946	#define CFA_NTUPLE_FILTER_ALLOC_REQ_TUNNEL_TYPE_IPGRE_V1     0xaUL7947	#define CFA_NTUPLE_FILTER_ALLOC_REQ_TUNNEL_TYPE_L2_ETYPE     0xbUL7948	#define CFA_NTUPLE_FILTER_ALLOC_REQ_TUNNEL_TYPE_VXLAN_GPE_V6 0xcUL7949	#define CFA_NTUPLE_FILTER_ALLOC_REQ_TUNNEL_TYPE_VXLAN_GPE    0x10UL7950	#define CFA_NTUPLE_FILTER_ALLOC_REQ_TUNNEL_TYPE_ANYTUNNEL    0xffUL7951	#define CFA_NTUPLE_FILTER_ALLOC_REQ_TUNNEL_TYPE_LAST        CFA_NTUPLE_FILTER_ALLOC_REQ_TUNNEL_TYPE_ANYTUNNEL7952	u8	pri_hint;7953	#define CFA_NTUPLE_FILTER_ALLOC_REQ_PRI_HINT_NO_PREFER 0x0UL7954	#define CFA_NTUPLE_FILTER_ALLOC_REQ_PRI_HINT_ABOVE     0x1UL7955	#define CFA_NTUPLE_FILTER_ALLOC_REQ_PRI_HINT_BELOW     0x2UL7956	#define CFA_NTUPLE_FILTER_ALLOC_REQ_PRI_HINT_HIGHEST   0x3UL7957	#define CFA_NTUPLE_FILTER_ALLOC_REQ_PRI_HINT_LOWEST    0x4UL7958	#define CFA_NTUPLE_FILTER_ALLOC_REQ_PRI_HINT_LAST     CFA_NTUPLE_FILTER_ALLOC_REQ_PRI_HINT_LOWEST7959	__be32	src_ipaddr[4];7960	__be32	src_ipaddr_mask[4];7961	__be32	dst_ipaddr[4];7962	__be32	dst_ipaddr_mask[4];7963	__be16	src_port;7964	__be16	src_port_mask;7965	__be16	dst_port;7966	__be16	dst_port_mask;7967	__le64	ntuple_filter_id_hint;7968};7969 7970/* hwrm_cfa_ntuple_filter_alloc_output (size:192b/24B) */7971struct hwrm_cfa_ntuple_filter_alloc_output {7972	__le16	error_code;7973	__le16	req_type;7974	__le16	seq_id;7975	__le16	resp_len;7976	__le64	ntuple_filter_id;7977	__le32	flow_id;7978	#define CFA_NTUPLE_FILTER_ALLOC_RESP_FLOW_ID_VALUE_MASK 0x3fffffffUL7979	#define CFA_NTUPLE_FILTER_ALLOC_RESP_FLOW_ID_VALUE_SFT 07980	#define CFA_NTUPLE_FILTER_ALLOC_RESP_FLOW_ID_TYPE      0x40000000UL7981	#define CFA_NTUPLE_FILTER_ALLOC_RESP_FLOW_ID_TYPE_INT    (0x0UL << 30)7982	#define CFA_NTUPLE_FILTER_ALLOC_RESP_FLOW_ID_TYPE_EXT    (0x1UL << 30)7983	#define CFA_NTUPLE_FILTER_ALLOC_RESP_FLOW_ID_TYPE_LAST  CFA_NTUPLE_FILTER_ALLOC_RESP_FLOW_ID_TYPE_EXT7984	#define CFA_NTUPLE_FILTER_ALLOC_RESP_FLOW_ID_DIR       0x80000000UL7985	#define CFA_NTUPLE_FILTER_ALLOC_RESP_FLOW_ID_DIR_RX      (0x0UL << 31)7986	#define CFA_NTUPLE_FILTER_ALLOC_RESP_FLOW_ID_DIR_TX      (0x1UL << 31)7987	#define CFA_NTUPLE_FILTER_ALLOC_RESP_FLOW_ID_DIR_LAST   CFA_NTUPLE_FILTER_ALLOC_RESP_FLOW_ID_DIR_TX7988	u8	unused_0[3];7989	u8	valid;7990};7991 7992/* hwrm_cfa_ntuple_filter_alloc_cmd_err (size:64b/8B) */7993struct hwrm_cfa_ntuple_filter_alloc_cmd_err {7994	u8	code;7995	#define CFA_NTUPLE_FILTER_ALLOC_CMD_ERR_CODE_UNKNOWN                   0x0UL7996	#define CFA_NTUPLE_FILTER_ALLOC_CMD_ERR_CODE_RX_MASK_VLAN_CONFLICT_ERR 0x1UL7997	#define CFA_NTUPLE_FILTER_ALLOC_CMD_ERR_CODE_LAST                     CFA_NTUPLE_FILTER_ALLOC_CMD_ERR_CODE_RX_MASK_VLAN_CONFLICT_ERR7998	u8	unused_0[7];7999};8000 8001/* hwrm_cfa_ntuple_filter_free_input (size:192b/24B) */8002struct hwrm_cfa_ntuple_filter_free_input {8003	__le16	req_type;8004	__le16	cmpl_ring;8005	__le16	seq_id;8006	__le16	target_id;8007	__le64	resp_addr;8008	__le64	ntuple_filter_id;8009};8010 8011/* hwrm_cfa_ntuple_filter_free_output (size:128b/16B) */8012struct hwrm_cfa_ntuple_filter_free_output {8013	__le16	error_code;8014	__le16	req_type;8015	__le16	seq_id;8016	__le16	resp_len;8017	u8	unused_0[7];8018	u8	valid;8019};8020 8021/* hwrm_cfa_ntuple_filter_cfg_input (size:384b/48B) */8022struct hwrm_cfa_ntuple_filter_cfg_input {8023	__le16	req_type;8024	__le16	cmpl_ring;8025	__le16	seq_id;8026	__le16	target_id;8027	__le64	resp_addr;8028	__le32	enables;8029	#define CFA_NTUPLE_FILTER_CFG_REQ_ENABLES_NEW_DST_ID                0x1UL8030	#define CFA_NTUPLE_FILTER_CFG_REQ_ENABLES_NEW_MIRROR_VNIC_ID        0x2UL8031	#define CFA_NTUPLE_FILTER_CFG_REQ_ENABLES_NEW_METER_INSTANCE_ID     0x4UL8032	__le32	flags;8033	#define CFA_NTUPLE_FILTER_CFG_REQ_FLAGS_DEST_FID              0x1UL8034	#define CFA_NTUPLE_FILTER_CFG_REQ_FLAGS_DEST_RFS_RING_IDX     0x2UL8035	#define CFA_NTUPLE_FILTER_CFG_REQ_FLAGS_NO_L2_CONTEXT         0x4UL8036	__le64	ntuple_filter_id;8037	__le32	new_dst_id;8038	__le32	new_mirror_vnic_id;8039	__le16	new_meter_instance_id;8040	#define CFA_NTUPLE_FILTER_CFG_REQ_NEW_METER_INSTANCE_ID_INVALID 0xffffUL8041	#define CFA_NTUPLE_FILTER_CFG_REQ_NEW_METER_INSTANCE_ID_LAST   CFA_NTUPLE_FILTER_CFG_REQ_NEW_METER_INSTANCE_ID_INVALID8042	u8	unused_1[6];8043};8044 8045/* hwrm_cfa_ntuple_filter_cfg_output (size:128b/16B) */8046struct hwrm_cfa_ntuple_filter_cfg_output {8047	__le16	error_code;8048	__le16	req_type;8049	__le16	seq_id;8050	__le16	resp_len;8051	u8	unused_0[7];8052	u8	valid;8053};8054 8055/* hwrm_cfa_decap_filter_alloc_input (size:832b/104B) */8056struct hwrm_cfa_decap_filter_alloc_input {8057	__le16	req_type;8058	__le16	cmpl_ring;8059	__le16	seq_id;8060	__le16	target_id;8061	__le64	resp_addr;8062	__le32	flags;8063	#define CFA_DECAP_FILTER_ALLOC_REQ_FLAGS_OVS_TUNNEL     0x1UL8064	__le32	enables;8065	#define CFA_DECAP_FILTER_ALLOC_REQ_ENABLES_TUNNEL_TYPE        0x1UL8066	#define CFA_DECAP_FILTER_ALLOC_REQ_ENABLES_TUNNEL_ID          0x2UL8067	#define CFA_DECAP_FILTER_ALLOC_REQ_ENABLES_SRC_MACADDR        0x4UL8068	#define CFA_DECAP_FILTER_ALLOC_REQ_ENABLES_DST_MACADDR        0x8UL8069	#define CFA_DECAP_FILTER_ALLOC_REQ_ENABLES_OVLAN_VID          0x10UL8070	#define CFA_DECAP_FILTER_ALLOC_REQ_ENABLES_IVLAN_VID          0x20UL8071	#define CFA_DECAP_FILTER_ALLOC_REQ_ENABLES_T_OVLAN_VID        0x40UL8072	#define CFA_DECAP_FILTER_ALLOC_REQ_ENABLES_T_IVLAN_VID        0x80UL8073	#define CFA_DECAP_FILTER_ALLOC_REQ_ENABLES_ETHERTYPE          0x100UL8074	#define CFA_DECAP_FILTER_ALLOC_REQ_ENABLES_SRC_IPADDR         0x200UL8075	#define CFA_DECAP_FILTER_ALLOC_REQ_ENABLES_DST_IPADDR         0x400UL8076	#define CFA_DECAP_FILTER_ALLOC_REQ_ENABLES_IPADDR_TYPE        0x800UL8077	#define CFA_DECAP_FILTER_ALLOC_REQ_ENABLES_IP_PROTOCOL        0x1000UL8078	#define CFA_DECAP_FILTER_ALLOC_REQ_ENABLES_SRC_PORT           0x2000UL8079	#define CFA_DECAP_FILTER_ALLOC_REQ_ENABLES_DST_PORT           0x4000UL8080	#define CFA_DECAP_FILTER_ALLOC_REQ_ENABLES_DST_ID             0x8000UL8081	#define CFA_DECAP_FILTER_ALLOC_REQ_ENABLES_MIRROR_VNIC_ID     0x10000UL8082	__be32	tunnel_id;8083	u8	tunnel_type;8084	#define CFA_DECAP_FILTER_ALLOC_REQ_TUNNEL_TYPE_NONTUNNEL    0x0UL8085	#define CFA_DECAP_FILTER_ALLOC_REQ_TUNNEL_TYPE_VXLAN        0x1UL8086	#define CFA_DECAP_FILTER_ALLOC_REQ_TUNNEL_TYPE_NVGRE        0x2UL8087	#define CFA_DECAP_FILTER_ALLOC_REQ_TUNNEL_TYPE_L2GRE        0x3UL8088	#define CFA_DECAP_FILTER_ALLOC_REQ_TUNNEL_TYPE_IPIP         0x4UL8089	#define CFA_DECAP_FILTER_ALLOC_REQ_TUNNEL_TYPE_GENEVE       0x5UL8090	#define CFA_DECAP_FILTER_ALLOC_REQ_TUNNEL_TYPE_MPLS         0x6UL8091	#define CFA_DECAP_FILTER_ALLOC_REQ_TUNNEL_TYPE_STT          0x7UL8092	#define CFA_DECAP_FILTER_ALLOC_REQ_TUNNEL_TYPE_IPGRE        0x8UL8093	#define CFA_DECAP_FILTER_ALLOC_REQ_TUNNEL_TYPE_VXLAN_V4     0x9UL8094	#define CFA_DECAP_FILTER_ALLOC_REQ_TUNNEL_TYPE_IPGRE_V1     0xaUL8095	#define CFA_DECAP_FILTER_ALLOC_REQ_TUNNEL_TYPE_L2_ETYPE     0xbUL8096	#define CFA_DECAP_FILTER_ALLOC_REQ_TUNNEL_TYPE_VXLAN_GPE_V6 0xcUL8097	#define CFA_DECAP_FILTER_ALLOC_REQ_TUNNEL_TYPE_VXLAN_GPE    0x10UL8098	#define CFA_DECAP_FILTER_ALLOC_REQ_TUNNEL_TYPE_ANYTUNNEL    0xffUL8099	#define CFA_DECAP_FILTER_ALLOC_REQ_TUNNEL_TYPE_LAST        CFA_DECAP_FILTER_ALLOC_REQ_TUNNEL_TYPE_ANYTUNNEL8100	u8	unused_0;8101	__le16	unused_1;8102	u8	src_macaddr[6];8103	u8	unused_2[2];8104	u8	dst_macaddr[6];8105	__be16	ovlan_vid;8106	__be16	ivlan_vid;8107	__be16	t_ovlan_vid;8108	__be16	t_ivlan_vid;8109	__be16	ethertype;8110	u8	ip_addr_type;8111	#define CFA_DECAP_FILTER_ALLOC_REQ_IP_ADDR_TYPE_UNKNOWN 0x0UL8112	#define CFA_DECAP_FILTER_ALLOC_REQ_IP_ADDR_TYPE_IPV4    0x4UL8113	#define CFA_DECAP_FILTER_ALLOC_REQ_IP_ADDR_TYPE_IPV6    0x6UL8114	#define CFA_DECAP_FILTER_ALLOC_REQ_IP_ADDR_TYPE_LAST   CFA_DECAP_FILTER_ALLOC_REQ_IP_ADDR_TYPE_IPV68115	u8	ip_protocol;8116	#define CFA_DECAP_FILTER_ALLOC_REQ_IP_PROTOCOL_UNKNOWN 0x0UL8117	#define CFA_DECAP_FILTER_ALLOC_REQ_IP_PROTOCOL_TCP     0x6UL8118	#define CFA_DECAP_FILTER_ALLOC_REQ_IP_PROTOCOL_UDP     0x11UL8119	#define CFA_DECAP_FILTER_ALLOC_REQ_IP_PROTOCOL_LAST   CFA_DECAP_FILTER_ALLOC_REQ_IP_PROTOCOL_UDP8120	__le16	unused_3;8121	__le32	unused_4;8122	__be32	src_ipaddr[4];8123	__be32	dst_ipaddr[4];8124	__be16	src_port;8125	__be16	dst_port;8126	__le16	dst_id;8127	__le16	l2_ctxt_ref_id;8128};8129 8130/* hwrm_cfa_decap_filter_alloc_output (size:128b/16B) */8131struct hwrm_cfa_decap_filter_alloc_output {8132	__le16	error_code;8133	__le16	req_type;8134	__le16	seq_id;8135	__le16	resp_len;8136	__le32	decap_filter_id;8137	u8	unused_0[3];8138	u8	valid;8139};8140 8141/* hwrm_cfa_decap_filter_free_input (size:192b/24B) */8142struct hwrm_cfa_decap_filter_free_input {8143	__le16	req_type;8144	__le16	cmpl_ring;8145	__le16	seq_id;8146	__le16	target_id;8147	__le64	resp_addr;8148	__le32	decap_filter_id;8149	u8	unused_0[4];8150};8151 8152/* hwrm_cfa_decap_filter_free_output (size:128b/16B) */8153struct hwrm_cfa_decap_filter_free_output {8154	__le16	error_code;8155	__le16	req_type;8156	__le16	seq_id;8157	__le16	resp_len;8158	u8	unused_0[7];8159	u8	valid;8160};8161 8162/* hwrm_cfa_flow_alloc_input (size:1024b/128B) */8163struct hwrm_cfa_flow_alloc_input {8164	__le16	req_type;8165	__le16	cmpl_ring;8166	__le16	seq_id;8167	__le16	target_id;8168	__le64	resp_addr;8169	__le16	flags;8170	#define CFA_FLOW_ALLOC_REQ_FLAGS_TUNNEL                 0x1UL8171	#define CFA_FLOW_ALLOC_REQ_FLAGS_NUM_VLAN_MASK          0x6UL8172	#define CFA_FLOW_ALLOC_REQ_FLAGS_NUM_VLAN_SFT           18173	#define CFA_FLOW_ALLOC_REQ_FLAGS_NUM_VLAN_NONE            (0x0UL << 1)8174	#define CFA_FLOW_ALLOC_REQ_FLAGS_NUM_VLAN_ONE             (0x1UL << 1)8175	#define CFA_FLOW_ALLOC_REQ_FLAGS_NUM_VLAN_TWO             (0x2UL << 1)8176	#define CFA_FLOW_ALLOC_REQ_FLAGS_NUM_VLAN_LAST           CFA_FLOW_ALLOC_REQ_FLAGS_NUM_VLAN_TWO8177	#define CFA_FLOW_ALLOC_REQ_FLAGS_FLOWTYPE_MASK          0x38UL8178	#define CFA_FLOW_ALLOC_REQ_FLAGS_FLOWTYPE_SFT           38179	#define CFA_FLOW_ALLOC_REQ_FLAGS_FLOWTYPE_L2              (0x0UL << 3)8180	#define CFA_FLOW_ALLOC_REQ_FLAGS_FLOWTYPE_IPV4            (0x1UL << 3)8181	#define CFA_FLOW_ALLOC_REQ_FLAGS_FLOWTYPE_IPV6            (0x2UL << 3)8182	#define CFA_FLOW_ALLOC_REQ_FLAGS_FLOWTYPE_LAST           CFA_FLOW_ALLOC_REQ_FLAGS_FLOWTYPE_IPV68183	#define CFA_FLOW_ALLOC_REQ_FLAGS_PATH_TX                0x40UL8184	#define CFA_FLOW_ALLOC_REQ_FLAGS_PATH_RX                0x80UL8185	#define CFA_FLOW_ALLOC_REQ_FLAGS_MATCH_VXLAN_IP_VNI     0x100UL8186	#define CFA_FLOW_ALLOC_REQ_FLAGS_VHOST_ID_USE_VLAN      0x200UL8187	__le16	src_fid;8188	__le32	tunnel_handle;8189	__le16	action_flags;8190	#define CFA_FLOW_ALLOC_REQ_ACTION_FLAGS_FWD                       0x1UL8191	#define CFA_FLOW_ALLOC_REQ_ACTION_FLAGS_RECYCLE                   0x2UL8192	#define CFA_FLOW_ALLOC_REQ_ACTION_FLAGS_DROP                      0x4UL8193	#define CFA_FLOW_ALLOC_REQ_ACTION_FLAGS_METER                     0x8UL8194	#define CFA_FLOW_ALLOC_REQ_ACTION_FLAGS_TUNNEL                    0x10UL8195	#define CFA_FLOW_ALLOC_REQ_ACTION_FLAGS_NAT_SRC                   0x20UL8196	#define CFA_FLOW_ALLOC_REQ_ACTION_FLAGS_NAT_DEST                  0x40UL8197	#define CFA_FLOW_ALLOC_REQ_ACTION_FLAGS_NAT_IPV4_ADDRESS          0x80UL8198	#define CFA_FLOW_ALLOC_REQ_ACTION_FLAGS_L2_HEADER_REWRITE         0x100UL8199	#define CFA_FLOW_ALLOC_REQ_ACTION_FLAGS_TTL_DECREMENT             0x200UL8200	#define CFA_FLOW_ALLOC_REQ_ACTION_FLAGS_TUNNEL_IP                 0x400UL8201	#define CFA_FLOW_ALLOC_REQ_ACTION_FLAGS_FLOW_AGING_ENABLED        0x800UL8202	#define CFA_FLOW_ALLOC_REQ_ACTION_FLAGS_PRI_HINT                  0x1000UL8203	#define CFA_FLOW_ALLOC_REQ_ACTION_FLAGS_NO_FLOW_COUNTER_ALLOC     0x2000UL8204	__le16	dst_fid;8205	__be16	l2_rewrite_vlan_tpid;8206	__be16	l2_rewrite_vlan_tci;8207	__le16	act_meter_id;8208	__le16	ref_flow_handle;8209	__be16	ethertype;8210	__be16	outer_vlan_tci;8211	__be16	dmac[3];8212	__be16	inner_vlan_tci;8213	__be16	smac[3];8214	u8	ip_dst_mask_len;8215	u8	ip_src_mask_len;8216	__be32	ip_dst[4];8217	__be32	ip_src[4];8218	__be16	l4_src_port;8219	__be16	l4_src_port_mask;8220	__be16	l4_dst_port;8221	__be16	l4_dst_port_mask;8222	__be32	nat_ip_address[4];8223	__be16	l2_rewrite_dmac[3];8224	__be16	nat_port;8225	__be16	l2_rewrite_smac[3];8226	u8	ip_proto;8227	u8	tunnel_type;8228	#define CFA_FLOW_ALLOC_REQ_TUNNEL_TYPE_NONTUNNEL    0x0UL8229	#define CFA_FLOW_ALLOC_REQ_TUNNEL_TYPE_VXLAN        0x1UL8230	#define CFA_FLOW_ALLOC_REQ_TUNNEL_TYPE_NVGRE        0x2UL8231	#define CFA_FLOW_ALLOC_REQ_TUNNEL_TYPE_L2GRE        0x3UL8232	#define CFA_FLOW_ALLOC_REQ_TUNNEL_TYPE_IPIP         0x4UL8233	#define CFA_FLOW_ALLOC_REQ_TUNNEL_TYPE_GENEVE       0x5UL8234	#define CFA_FLOW_ALLOC_REQ_TUNNEL_TYPE_MPLS         0x6UL8235	#define CFA_FLOW_ALLOC_REQ_TUNNEL_TYPE_STT          0x7UL8236	#define CFA_FLOW_ALLOC_REQ_TUNNEL_TYPE_IPGRE        0x8UL8237	#define CFA_FLOW_ALLOC_REQ_TUNNEL_TYPE_VXLAN_V4     0x9UL8238	#define CFA_FLOW_ALLOC_REQ_TUNNEL_TYPE_IPGRE_V1     0xaUL8239	#define CFA_FLOW_ALLOC_REQ_TUNNEL_TYPE_L2_ETYPE     0xbUL8240	#define CFA_FLOW_ALLOC_REQ_TUNNEL_TYPE_VXLAN_GPE_V6 0xcUL8241	#define CFA_FLOW_ALLOC_REQ_TUNNEL_TYPE_VXLAN_GPE    0x10UL8242	#define CFA_FLOW_ALLOC_REQ_TUNNEL_TYPE_ANYTUNNEL    0xffUL8243	#define CFA_FLOW_ALLOC_REQ_TUNNEL_TYPE_LAST        CFA_FLOW_ALLOC_REQ_TUNNEL_TYPE_ANYTUNNEL8244};8245 8246/* hwrm_cfa_flow_alloc_output (size:256b/32B) */8247struct hwrm_cfa_flow_alloc_output {8248	__le16	error_code;8249	__le16	req_type;8250	__le16	seq_id;8251	__le16	resp_len;8252	__le16	flow_handle;8253	u8	unused_0[2];8254	__le32	flow_id;8255	#define CFA_FLOW_ALLOC_RESP_FLOW_ID_VALUE_MASK 0x3fffffffUL8256	#define CFA_FLOW_ALLOC_RESP_FLOW_ID_VALUE_SFT 08257	#define CFA_FLOW_ALLOC_RESP_FLOW_ID_TYPE      0x40000000UL8258	#define CFA_FLOW_ALLOC_RESP_FLOW_ID_TYPE_INT    (0x0UL << 30)8259	#define CFA_FLOW_ALLOC_RESP_FLOW_ID_TYPE_EXT    (0x1UL << 30)8260	#define CFA_FLOW_ALLOC_RESP_FLOW_ID_TYPE_LAST  CFA_FLOW_ALLOC_RESP_FLOW_ID_TYPE_EXT8261	#define CFA_FLOW_ALLOC_RESP_FLOW_ID_DIR       0x80000000UL8262	#define CFA_FLOW_ALLOC_RESP_FLOW_ID_DIR_RX      (0x0UL << 31)8263	#define CFA_FLOW_ALLOC_RESP_FLOW_ID_DIR_TX      (0x1UL << 31)8264	#define CFA_FLOW_ALLOC_RESP_FLOW_ID_DIR_LAST   CFA_FLOW_ALLOC_RESP_FLOW_ID_DIR_TX8265	__le64	ext_flow_handle;8266	__le32	flow_counter_id;8267	u8	unused_1[3];8268	u8	valid;8269};8270 8271/* hwrm_cfa_flow_alloc_cmd_err (size:64b/8B) */8272struct hwrm_cfa_flow_alloc_cmd_err {8273	u8	code;8274	#define CFA_FLOW_ALLOC_CMD_ERR_CODE_UNKNOWN         0x0UL8275	#define CFA_FLOW_ALLOC_CMD_ERR_CODE_L2_CONTEXT_TCAM 0x1UL8276	#define CFA_FLOW_ALLOC_CMD_ERR_CODE_ACTION_RECORD   0x2UL8277	#define CFA_FLOW_ALLOC_CMD_ERR_CODE_FLOW_COUNTER    0x3UL8278	#define CFA_FLOW_ALLOC_CMD_ERR_CODE_WILD_CARD_TCAM  0x4UL8279	#define CFA_FLOW_ALLOC_CMD_ERR_CODE_HASH_COLLISION  0x5UL8280	#define CFA_FLOW_ALLOC_CMD_ERR_CODE_KEY_EXISTS      0x6UL8281	#define CFA_FLOW_ALLOC_CMD_ERR_CODE_FLOW_CTXT_DB    0x7UL8282	#define CFA_FLOW_ALLOC_CMD_ERR_CODE_LAST           CFA_FLOW_ALLOC_CMD_ERR_CODE_FLOW_CTXT_DB8283	u8	unused_0[7];8284};8285 8286/* hwrm_cfa_flow_free_input (size:256b/32B) */8287struct hwrm_cfa_flow_free_input {8288	__le16	req_type;8289	__le16	cmpl_ring;8290	__le16	seq_id;8291	__le16	target_id;8292	__le64	resp_addr;8293	__le16	flow_handle;8294	__le16	unused_0;8295	__le32	flow_counter_id;8296	__le64	ext_flow_handle;8297};8298 8299/* hwrm_cfa_flow_free_output (size:256b/32B) */8300struct hwrm_cfa_flow_free_output {8301	__le16	error_code;8302	__le16	req_type;8303	__le16	seq_id;8304	__le16	resp_len;8305	__le64	packet;8306	__le64	byte;8307	u8	unused_0[7];8308	u8	valid;8309};8310 8311/* hwrm_cfa_flow_info_input (size:256b/32B) */8312struct hwrm_cfa_flow_info_input {8313	__le16	req_type;8314	__le16	cmpl_ring;8315	__le16	seq_id;8316	__le16	target_id;8317	__le64	resp_addr;8318	__le16	flow_handle;8319	#define CFA_FLOW_INFO_REQ_FLOW_HANDLE_MAX_MASK      0xfffUL8320	#define CFA_FLOW_INFO_REQ_FLOW_HANDLE_CNP_CNT       0x1000UL8321	#define CFA_FLOW_INFO_REQ_FLOW_HANDLE_ROCEV1_CNT    0x2000UL8322	#define CFA_FLOW_INFO_REQ_FLOW_HANDLE_NIC_TX        0x3000UL8323	#define CFA_FLOW_INFO_REQ_FLOW_HANDLE_ROCEV2_CNT    0x4000UL8324	#define CFA_FLOW_INFO_REQ_FLOW_HANDLE_DIR_RX        0x8000UL8325	#define CFA_FLOW_INFO_REQ_FLOW_HANDLE_CNP_CNT_RX    0x9000UL8326	#define CFA_FLOW_INFO_REQ_FLOW_HANDLE_ROCEV1_CNT_RX 0xa000UL8327	#define CFA_FLOW_INFO_REQ_FLOW_HANDLE_NIC_RX        0xb000UL8328	#define CFA_FLOW_INFO_REQ_FLOW_HANDLE_ROCEV2_CNT_RX 0xc000UL8329	#define CFA_FLOW_INFO_REQ_FLOW_HANDLE_LAST         CFA_FLOW_INFO_REQ_FLOW_HANDLE_ROCEV2_CNT_RX8330	u8	unused_0[6];8331	__le64	ext_flow_handle;8332};8333 8334/* hwrm_cfa_flow_info_output (size:5632b/704B) */8335struct hwrm_cfa_flow_info_output {8336	__le16	error_code;8337	__le16	req_type;8338	__le16	seq_id;8339	__le16	resp_len;8340	u8	flags;8341	#define CFA_FLOW_INFO_RESP_FLAGS_PATH_TX     0x1UL8342	#define CFA_FLOW_INFO_RESP_FLAGS_PATH_RX     0x2UL8343	u8	profile;8344	__le16	src_fid;8345	__le16	dst_fid;8346	__le16	l2_ctxt_id;8347	__le64	em_info;8348	__le64	tcam_info;8349	__le64	vfp_tcam_info;8350	__le16	ar_id;8351	__le16	flow_handle;8352	__le32	tunnel_handle;8353	__le16	flow_timer;8354	u8	unused_0[6];8355	__le32	flow_key_data[130];8356	__le32	flow_action_info[30];8357	u8	unused_1[7];8358	u8	valid;8359};8360 8361/* hwrm_cfa_flow_stats_input (size:640b/80B) */8362struct hwrm_cfa_flow_stats_input {8363	__le16	req_type;8364	__le16	cmpl_ring;8365	__le16	seq_id;8366	__le16	target_id;8367	__le64	resp_addr;8368	__le16	num_flows;8369	__le16	flow_handle_0;8370	__le16	flow_handle_1;8371	__le16	flow_handle_2;8372	__le16	flow_handle_3;8373	__le16	flow_handle_4;8374	__le16	flow_handle_5;8375	__le16	flow_handle_6;8376	__le16	flow_handle_7;8377	__le16	flow_handle_8;8378	__le16	flow_handle_9;8379	u8	unused_0[2];8380	__le32	flow_id_0;8381	__le32	flow_id_1;8382	__le32	flow_id_2;8383	__le32	flow_id_3;8384	__le32	flow_id_4;8385	__le32	flow_id_5;8386	__le32	flow_id_6;8387	__le32	flow_id_7;8388	__le32	flow_id_8;8389	__le32	flow_id_9;8390};8391 8392/* hwrm_cfa_flow_stats_output (size:1408b/176B) */8393struct hwrm_cfa_flow_stats_output {8394	__le16	error_code;8395	__le16	req_type;8396	__le16	seq_id;8397	__le16	resp_len;8398	__le64	packet_0;8399	__le64	packet_1;8400	__le64	packet_2;8401	__le64	packet_3;8402	__le64	packet_4;8403	__le64	packet_5;8404	__le64	packet_6;8405	__le64	packet_7;8406	__le64	packet_8;8407	__le64	packet_9;8408	__le64	byte_0;8409	__le64	byte_1;8410	__le64	byte_2;8411	__le64	byte_3;8412	__le64	byte_4;8413	__le64	byte_5;8414	__le64	byte_6;8415	__le64	byte_7;8416	__le64	byte_8;8417	__le64	byte_9;8418	__le16	flow_hits;8419	u8	unused_0[5];8420	u8	valid;8421};8422 8423/* hwrm_cfa_vfr_alloc_input (size:448b/56B) */8424struct hwrm_cfa_vfr_alloc_input {8425	__le16	req_type;8426	__le16	cmpl_ring;8427	__le16	seq_id;8428	__le16	target_id;8429	__le64	resp_addr;8430	__le16	vf_id;8431	__le16	reserved;8432	u8	unused_0[4];8433	char	vfr_name[32];8434};8435 8436/* hwrm_cfa_vfr_alloc_output (size:128b/16B) */8437struct hwrm_cfa_vfr_alloc_output {8438	__le16	error_code;8439	__le16	req_type;8440	__le16	seq_id;8441	__le16	resp_len;8442	__le16	rx_cfa_code;8443	__le16	tx_cfa_action;8444	u8	unused_0[3];8445	u8	valid;8446};8447 8448/* hwrm_cfa_vfr_free_input (size:448b/56B) */8449struct hwrm_cfa_vfr_free_input {8450	__le16	req_type;8451	__le16	cmpl_ring;8452	__le16	seq_id;8453	__le16	target_id;8454	__le64	resp_addr;8455	char	vfr_name[32];8456	__le16	vf_id;8457	__le16	reserved;8458	u8	unused_0[4];8459};8460 8461/* hwrm_cfa_vfr_free_output (size:128b/16B) */8462struct hwrm_cfa_vfr_free_output {8463	__le16	error_code;8464	__le16	req_type;8465	__le16	seq_id;8466	__le16	resp_len;8467	u8	unused_0[7];8468	u8	valid;8469};8470 8471/* hwrm_cfa_eem_qcaps_input (size:192b/24B) */8472struct hwrm_cfa_eem_qcaps_input {8473	__le16	req_type;8474	__le16	cmpl_ring;8475	__le16	seq_id;8476	__le16	target_id;8477	__le64	resp_addr;8478	__le32	flags;8479	#define CFA_EEM_QCAPS_REQ_FLAGS_PATH_TX               0x1UL8480	#define CFA_EEM_QCAPS_REQ_FLAGS_PATH_RX               0x2UL8481	#define CFA_EEM_QCAPS_REQ_FLAGS_PREFERRED_OFFLOAD     0x4UL8482	__le32	unused_0;8483};8484 8485/* hwrm_cfa_eem_qcaps_output (size:320b/40B) */8486struct hwrm_cfa_eem_qcaps_output {8487	__le16	error_code;8488	__le16	req_type;8489	__le16	seq_id;8490	__le16	resp_len;8491	__le32	flags;8492	#define CFA_EEM_QCAPS_RESP_FLAGS_PATH_TX                                         0x1UL8493	#define CFA_EEM_QCAPS_RESP_FLAGS_PATH_RX                                         0x2UL8494	#define CFA_EEM_QCAPS_RESP_FLAGS_CENTRALIZED_MEMORY_MODEL_SUPPORTED              0x4UL8495	#define CFA_EEM_QCAPS_RESP_FLAGS_DETACHED_CENTRALIZED_MEMORY_MODEL_SUPPORTED     0x8UL8496	__le32	unused_0;8497	__le32	supported;8498	#define CFA_EEM_QCAPS_RESP_SUPPORTED_KEY0_TABLE                       0x1UL8499	#define CFA_EEM_QCAPS_RESP_SUPPORTED_KEY1_TABLE                       0x2UL8500	#define CFA_EEM_QCAPS_RESP_SUPPORTED_EXTERNAL_RECORD_TABLE            0x4UL8501	#define CFA_EEM_QCAPS_RESP_SUPPORTED_EXTERNAL_FLOW_COUNTERS_TABLE     0x8UL8502	#define CFA_EEM_QCAPS_RESP_SUPPORTED_FID_TABLE                        0x10UL8503	__le32	max_entries_supported;8504	__le16	key_entry_size;8505	__le16	record_entry_size;8506	__le16	efc_entry_size;8507	__le16	fid_entry_size;8508	u8	unused_1[7];8509	u8	valid;8510};8511 8512/* hwrm_cfa_eem_cfg_input (size:384b/48B) */8513struct hwrm_cfa_eem_cfg_input {8514	__le16	req_type;8515	__le16	cmpl_ring;8516	__le16	seq_id;8517	__le16	target_id;8518	__le64	resp_addr;8519	__le32	flags;8520	#define CFA_EEM_CFG_REQ_FLAGS_PATH_TX               0x1UL8521	#define CFA_EEM_CFG_REQ_FLAGS_PATH_RX               0x2UL8522	#define CFA_EEM_CFG_REQ_FLAGS_PREFERRED_OFFLOAD     0x4UL8523	#define CFA_EEM_CFG_REQ_FLAGS_SECONDARY_PF          0x8UL8524	__le16	group_id;8525	__le16	unused_0;8526	__le32	num_entries;8527	__le32	unused_1;8528	__le16	key0_ctx_id;8529	__le16	key1_ctx_id;8530	__le16	record_ctx_id;8531	__le16	efc_ctx_id;8532	__le16	fid_ctx_id;8533	__le16	unused_2;8534	__le32	unused_3;8535};8536 8537/* hwrm_cfa_eem_cfg_output (size:128b/16B) */8538struct hwrm_cfa_eem_cfg_output {8539	__le16	error_code;8540	__le16	req_type;8541	__le16	seq_id;8542	__le16	resp_len;8543	u8	unused_0[7];8544	u8	valid;8545};8546 8547/* hwrm_cfa_eem_qcfg_input (size:192b/24B) */8548struct hwrm_cfa_eem_qcfg_input {8549	__le16	req_type;8550	__le16	cmpl_ring;8551	__le16	seq_id;8552	__le16	target_id;8553	__le64	resp_addr;8554	__le32	flags;8555	#define CFA_EEM_QCFG_REQ_FLAGS_PATH_TX     0x1UL8556	#define CFA_EEM_QCFG_REQ_FLAGS_PATH_RX     0x2UL8557	__le32	unused_0;8558};8559 8560/* hwrm_cfa_eem_qcfg_output (size:256b/32B) */8561struct hwrm_cfa_eem_qcfg_output {8562	__le16	error_code;8563	__le16	req_type;8564	__le16	seq_id;8565	__le16	resp_len;8566	__le32	flags;8567	#define CFA_EEM_QCFG_RESP_FLAGS_PATH_TX               0x1UL8568	#define CFA_EEM_QCFG_RESP_FLAGS_PATH_RX               0x2UL8569	#define CFA_EEM_QCFG_RESP_FLAGS_PREFERRED_OFFLOAD     0x4UL8570	__le32	num_entries;8571	__le16	key0_ctx_id;8572	__le16	key1_ctx_id;8573	__le16	record_ctx_id;8574	__le16	efc_ctx_id;8575	__le16	fid_ctx_id;8576	u8	unused_2[5];8577	u8	valid;8578};8579 8580/* hwrm_cfa_eem_op_input (size:192b/24B) */8581struct hwrm_cfa_eem_op_input {8582	__le16	req_type;8583	__le16	cmpl_ring;8584	__le16	seq_id;8585	__le16	target_id;8586	__le64	resp_addr;8587	__le32	flags;8588	#define CFA_EEM_OP_REQ_FLAGS_PATH_TX     0x1UL8589	#define CFA_EEM_OP_REQ_FLAGS_PATH_RX     0x2UL8590	__le16	unused_0;8591	__le16	op;8592	#define CFA_EEM_OP_REQ_OP_RESERVED    0x0UL8593	#define CFA_EEM_OP_REQ_OP_EEM_DISABLE 0x1UL8594	#define CFA_EEM_OP_REQ_OP_EEM_ENABLE  0x2UL8595	#define CFA_EEM_OP_REQ_OP_EEM_CLEANUP 0x3UL8596	#define CFA_EEM_OP_REQ_OP_LAST       CFA_EEM_OP_REQ_OP_EEM_CLEANUP8597};8598 8599/* hwrm_cfa_eem_op_output (size:128b/16B) */8600struct hwrm_cfa_eem_op_output {8601	__le16	error_code;8602	__le16	req_type;8603	__le16	seq_id;8604	__le16	resp_len;8605	u8	unused_0[7];8606	u8	valid;8607};8608 8609/* hwrm_cfa_adv_flow_mgnt_qcaps_input (size:256b/32B) */8610struct hwrm_cfa_adv_flow_mgnt_qcaps_input {8611	__le16	req_type;8612	__le16	cmpl_ring;8613	__le16	seq_id;8614	__le16	target_id;8615	__le64	resp_addr;8616	__le32	unused_0[4];8617};8618 8619/* hwrm_cfa_adv_flow_mgnt_qcaps_output (size:128b/16B) */8620struct hwrm_cfa_adv_flow_mgnt_qcaps_output {8621	__le16	error_code;8622	__le16	req_type;8623	__le16	seq_id;8624	__le16	resp_len;8625	__le32	flags;8626	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_FLOW_HND_16BIT_SUPPORTED                     0x1UL8627	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_FLOW_HND_64BIT_SUPPORTED                     0x2UL8628	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_FLOW_BATCH_DELETE_SUPPORTED                  0x4UL8629	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_FLOW_RESET_ALL_SUPPORTED                     0x8UL8630	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_NTUPLE_FLOW_DEST_FUNC_SUPPORTED              0x10UL8631	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_TX_EEM_FLOW_SUPPORTED                        0x20UL8632	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_RX_EEM_FLOW_SUPPORTED                        0x40UL8633	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_FLOW_COUNTER_ALLOC_SUPPORTED                 0x80UL8634	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_RFS_RING_TBL_IDX_SUPPORTED                   0x100UL8635	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_UNTAGGED_VLAN_SUPPORTED                      0x200UL8636	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_XDP_SUPPORTED                                0x400UL8637	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_L2_HEADER_SOURCE_FIELDS_SUPPORTED            0x800UL8638	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_NTUPLE_FLOW_RX_ARP_SUPPORTED                 0x1000UL8639	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_RFS_RING_TBL_IDX_V2_SUPPORTED                0x2000UL8640	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_NTUPLE_FLOW_RX_ETHERTYPE_IP_SUPPORTED        0x4000UL8641	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_TRUFLOW_CAPABLE                              0x8000UL8642	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_L2_FILTER_TRAFFIC_TYPE_L2_ROCE_SUPPORTED     0x10000UL8643	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_LAG_SUPPORTED                                0x20000UL8644	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_NTUPLE_FLOW_NO_L2CTX_SUPPORTED               0x40000UL8645	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_NIC_FLOW_STATS_SUPPORTED                     0x80000UL8646	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_NTUPLE_FLOW_RX_EXT_IP_PROTO_SUPPORTED        0x100000UL8647	#define CFA_ADV_FLOW_MGNT_QCAPS_RESP_FLAGS_RFS_RING_TBL_IDX_V3_SUPPORTED                0x200000UL8648	u8	unused_0[3];8649	u8	valid;8650};8651 8652/* hwrm_tunnel_dst_port_query_input (size:192b/24B) */8653struct hwrm_tunnel_dst_port_query_input {8654	__le16	req_type;8655	__le16	cmpl_ring;8656	__le16	seq_id;8657	__le16	target_id;8658	__le64	resp_addr;8659	u8	tunnel_type;8660	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_VXLAN              0x1UL8661	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_GENEVE             0x5UL8662	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_VXLAN_V4           0x9UL8663	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_IPGRE_V1           0xaUL8664	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_L2_ETYPE           0xbUL8665	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_VXLAN_GPE_V6       0xcUL8666	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_CUSTOM_GRE         0xdUL8667	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_ECPRI              0xeUL8668	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_SRV6               0xfUL8669	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_VXLAN_GPE          0x10UL8670	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_GRE                0x11UL8671	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_ULP_DYN_UPAR       0x12UL8672	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES01 0x13UL8673	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES02 0x14UL8674	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES03 0x15UL8675	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES04 0x16UL8676	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES05 0x17UL8677	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES06 0x18UL8678	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES07 0x19UL8679	#define TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_LAST              TUNNEL_DST_PORT_QUERY_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES078680	u8	tunnel_next_proto;8681	u8	unused_0[6];8682};8683 8684/* hwrm_tunnel_dst_port_query_output (size:128b/16B) */8685struct hwrm_tunnel_dst_port_query_output {8686	__le16	error_code;8687	__le16	req_type;8688	__le16	seq_id;8689	__le16	resp_len;8690	__le16	tunnel_dst_port_id;8691	__be16	tunnel_dst_port_val;8692	u8	upar_in_use;8693	#define TUNNEL_DST_PORT_QUERY_RESP_UPAR_IN_USE_UPAR0     0x1UL8694	#define TUNNEL_DST_PORT_QUERY_RESP_UPAR_IN_USE_UPAR1     0x2UL8695	#define TUNNEL_DST_PORT_QUERY_RESP_UPAR_IN_USE_UPAR2     0x4UL8696	#define TUNNEL_DST_PORT_QUERY_RESP_UPAR_IN_USE_UPAR3     0x8UL8697	#define TUNNEL_DST_PORT_QUERY_RESP_UPAR_IN_USE_UPAR4     0x10UL8698	#define TUNNEL_DST_PORT_QUERY_RESP_UPAR_IN_USE_UPAR5     0x20UL8699	#define TUNNEL_DST_PORT_QUERY_RESP_UPAR_IN_USE_UPAR6     0x40UL8700	#define TUNNEL_DST_PORT_QUERY_RESP_UPAR_IN_USE_UPAR7     0x80UL8701	u8	status;8702	#define TUNNEL_DST_PORT_QUERY_RESP_STATUS_CHIP_LEVEL     0x1UL8703	#define TUNNEL_DST_PORT_QUERY_RESP_STATUS_FUNC_LEVEL     0x2UL8704	u8	unused_0;8705	u8	valid;8706};8707 8708/* hwrm_tunnel_dst_port_alloc_input (size:192b/24B) */8709struct hwrm_tunnel_dst_port_alloc_input {8710	__le16	req_type;8711	__le16	cmpl_ring;8712	__le16	seq_id;8713	__le16	target_id;8714	__le64	resp_addr;8715	u8	tunnel_type;8716	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_VXLAN              0x1UL8717	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_GENEVE             0x5UL8718	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_VXLAN_V4           0x9UL8719	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_IPGRE_V1           0xaUL8720	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_L2_ETYPE           0xbUL8721	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_VXLAN_GPE_V6       0xcUL8722	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_CUSTOM_GRE         0xdUL8723	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_ECPRI              0xeUL8724	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_SRV6               0xfUL8725	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_VXLAN_GPE          0x10UL8726	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_GRE                0x11UL8727	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_ULP_DYN_UPAR       0x12UL8728	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES01 0x13UL8729	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES02 0x14UL8730	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES03 0x15UL8731	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES04 0x16UL8732	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES05 0x17UL8733	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES06 0x18UL8734	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES07 0x19UL8735	#define TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_LAST              TUNNEL_DST_PORT_ALLOC_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES078736	u8	tunnel_next_proto;8737	__be16	tunnel_dst_port_val;8738	u8	unused_0[4];8739};8740 8741/* hwrm_tunnel_dst_port_alloc_output (size:128b/16B) */8742struct hwrm_tunnel_dst_port_alloc_output {8743	__le16	error_code;8744	__le16	req_type;8745	__le16	seq_id;8746	__le16	resp_len;8747	__le16	tunnel_dst_port_id;8748	u8	error_info;8749	#define TUNNEL_DST_PORT_ALLOC_RESP_ERROR_INFO_SUCCESS         0x0UL8750	#define TUNNEL_DST_PORT_ALLOC_RESP_ERROR_INFO_ERR_ALLOCATED   0x1UL8751	#define TUNNEL_DST_PORT_ALLOC_RESP_ERROR_INFO_ERR_NO_RESOURCE 0x2UL8752	#define TUNNEL_DST_PORT_ALLOC_RESP_ERROR_INFO_ERR_ENABLED     0x3UL8753	#define TUNNEL_DST_PORT_ALLOC_RESP_ERROR_INFO_LAST           TUNNEL_DST_PORT_ALLOC_RESP_ERROR_INFO_ERR_ENABLED8754	u8	upar_in_use;8755	#define TUNNEL_DST_PORT_ALLOC_RESP_UPAR_IN_USE_UPAR0     0x1UL8756	#define TUNNEL_DST_PORT_ALLOC_RESP_UPAR_IN_USE_UPAR1     0x2UL8757	#define TUNNEL_DST_PORT_ALLOC_RESP_UPAR_IN_USE_UPAR2     0x4UL8758	#define TUNNEL_DST_PORT_ALLOC_RESP_UPAR_IN_USE_UPAR3     0x8UL8759	#define TUNNEL_DST_PORT_ALLOC_RESP_UPAR_IN_USE_UPAR4     0x10UL8760	#define TUNNEL_DST_PORT_ALLOC_RESP_UPAR_IN_USE_UPAR5     0x20UL8761	#define TUNNEL_DST_PORT_ALLOC_RESP_UPAR_IN_USE_UPAR6     0x40UL8762	#define TUNNEL_DST_PORT_ALLOC_RESP_UPAR_IN_USE_UPAR7     0x80UL8763	u8	unused_0[3];8764	u8	valid;8765};8766 8767/* hwrm_tunnel_dst_port_free_input (size:192b/24B) */8768struct hwrm_tunnel_dst_port_free_input {8769	__le16	req_type;8770	__le16	cmpl_ring;8771	__le16	seq_id;8772	__le16	target_id;8773	__le64	resp_addr;8774	u8	tunnel_type;8775	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_VXLAN              0x1UL8776	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_GENEVE             0x5UL8777	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_VXLAN_V4           0x9UL8778	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_IPGRE_V1           0xaUL8779	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_L2_ETYPE           0xbUL8780	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_VXLAN_GPE_V6       0xcUL8781	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_CUSTOM_GRE         0xdUL8782	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_ECPRI              0xeUL8783	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_SRV6               0xfUL8784	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_VXLAN_GPE          0x10UL8785	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_GRE                0x11UL8786	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_ULP_DYN_UPAR       0x12UL8787	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES01 0x13UL8788	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES02 0x14UL8789	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES03 0x15UL8790	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES04 0x16UL8791	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES05 0x17UL8792	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES06 0x18UL8793	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES07 0x19UL8794	#define TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_LAST              TUNNEL_DST_PORT_FREE_REQ_TUNNEL_TYPE_ULP_DYN_UPAR_RES078795	u8	tunnel_next_proto;8796	__le16	tunnel_dst_port_id;8797	u8	unused_0[4];8798};8799 8800/* hwrm_tunnel_dst_port_free_output (size:128b/16B) */8801struct hwrm_tunnel_dst_port_free_output {8802	__le16	error_code;8803	__le16	req_type;8804	__le16	seq_id;8805	__le16	resp_len;8806	u8	error_info;8807	#define TUNNEL_DST_PORT_FREE_RESP_ERROR_INFO_SUCCESS           0x0UL8808	#define TUNNEL_DST_PORT_FREE_RESP_ERROR_INFO_ERR_NOT_OWNER     0x1UL8809	#define TUNNEL_DST_PORT_FREE_RESP_ERROR_INFO_ERR_NOT_ALLOCATED 0x2UL8810	#define TUNNEL_DST_PORT_FREE_RESP_ERROR_INFO_LAST             TUNNEL_DST_PORT_FREE_RESP_ERROR_INFO_ERR_NOT_ALLOCATED8811	u8	unused_1[6];8812	u8	valid;8813};8814 8815/* ctx_hw_stats (size:1280b/160B) */8816struct ctx_hw_stats {8817	__le64	rx_ucast_pkts;8818	__le64	rx_mcast_pkts;8819	__le64	rx_bcast_pkts;8820	__le64	rx_discard_pkts;8821	__le64	rx_error_pkts;8822	__le64	rx_ucast_bytes;8823	__le64	rx_mcast_bytes;8824	__le64	rx_bcast_bytes;8825	__le64	tx_ucast_pkts;8826	__le64	tx_mcast_pkts;8827	__le64	tx_bcast_pkts;8828	__le64	tx_error_pkts;8829	__le64	tx_discard_pkts;8830	__le64	tx_ucast_bytes;8831	__le64	tx_mcast_bytes;8832	__le64	tx_bcast_bytes;8833	__le64	tpa_pkts;8834	__le64	tpa_bytes;8835	__le64	tpa_events;8836	__le64	tpa_aborts;8837};8838 8839/* ctx_hw_stats_ext (size:1408b/176B) */8840struct ctx_hw_stats_ext {8841	__le64	rx_ucast_pkts;8842	__le64	rx_mcast_pkts;8843	__le64	rx_bcast_pkts;8844	__le64	rx_discard_pkts;8845	__le64	rx_error_pkts;8846	__le64	rx_ucast_bytes;8847	__le64	rx_mcast_bytes;8848	__le64	rx_bcast_bytes;8849	__le64	tx_ucast_pkts;8850	__le64	tx_mcast_pkts;8851	__le64	tx_bcast_pkts;8852	__le64	tx_error_pkts;8853	__le64	tx_discard_pkts;8854	__le64	tx_ucast_bytes;8855	__le64	tx_mcast_bytes;8856	__le64	tx_bcast_bytes;8857	__le64	rx_tpa_eligible_pkt;8858	__le64	rx_tpa_eligible_bytes;8859	__le64	rx_tpa_pkt;8860	__le64	rx_tpa_bytes;8861	__le64	rx_tpa_errors;8862	__le64	rx_tpa_events;8863};8864 8865/* hwrm_stat_ctx_alloc_input (size:384b/48B) */8866struct hwrm_stat_ctx_alloc_input {8867	__le16	req_type;8868	__le16	cmpl_ring;8869	__le16	seq_id;8870	__le16	target_id;8871	__le64	resp_addr;8872	__le64	stats_dma_addr;8873	__le32	update_period_ms;8874	u8	stat_ctx_flags;8875	#define STAT_CTX_ALLOC_REQ_STAT_CTX_FLAGS_ROCE             0x1UL8876	#define STAT_CTX_ALLOC_REQ_STAT_CTX_FLAGS_DUP_HOST_BUF     0x2UL8877	u8	unused_0;8878	__le16	stats_dma_length;8879	__le16	flags;8880	#define STAT_CTX_ALLOC_REQ_FLAGS_STEERING_TAG_VALID     0x1UL8881	__le16	steering_tag;8882	__le32	stat_ctx_id;8883	__le16	alloc_seq_id;8884	u8	unused_1[6];8885};8886 8887/* hwrm_stat_ctx_alloc_output (size:128b/16B) */8888struct hwrm_stat_ctx_alloc_output {8889	__le16	error_code;8890	__le16	req_type;8891	__le16	seq_id;8892	__le16	resp_len;8893	__le32	stat_ctx_id;8894	u8	unused_0[3];8895	u8	valid;8896};8897 8898/* hwrm_stat_ctx_free_input (size:192b/24B) */8899struct hwrm_stat_ctx_free_input {8900	__le16	req_type;8901	__le16	cmpl_ring;8902	__le16	seq_id;8903	__le16	target_id;8904	__le64	resp_addr;8905	__le32	stat_ctx_id;8906	u8	unused_0[4];8907};8908 8909/* hwrm_stat_ctx_free_output (size:128b/16B) */8910struct hwrm_stat_ctx_free_output {8911	__le16	error_code;8912	__le16	req_type;8913	__le16	seq_id;8914	__le16	resp_len;8915	__le32	stat_ctx_id;8916	u8	unused_0[3];8917	u8	valid;8918};8919 8920/* hwrm_stat_ctx_query_input (size:192b/24B) */8921struct hwrm_stat_ctx_query_input {8922	__le16	req_type;8923	__le16	cmpl_ring;8924	__le16	seq_id;8925	__le16	target_id;8926	__le64	resp_addr;8927	__le32	stat_ctx_id;8928	u8	flags;8929	#define STAT_CTX_QUERY_REQ_FLAGS_COUNTER_MASK     0x1UL8930	u8	unused_0[3];8931};8932 8933/* hwrm_stat_ctx_query_output (size:1408b/176B) */8934struct hwrm_stat_ctx_query_output {8935	__le16	error_code;8936	__le16	req_type;8937	__le16	seq_id;8938	__le16	resp_len;8939	__le64	tx_ucast_pkts;8940	__le64	tx_mcast_pkts;8941	__le64	tx_bcast_pkts;8942	__le64	tx_discard_pkts;8943	__le64	tx_error_pkts;8944	__le64	tx_ucast_bytes;8945	__le64	tx_mcast_bytes;8946	__le64	tx_bcast_bytes;8947	__le64	rx_ucast_pkts;8948	__le64	rx_mcast_pkts;8949	__le64	rx_bcast_pkts;8950	__le64	rx_discard_pkts;8951	__le64	rx_error_pkts;8952	__le64	rx_ucast_bytes;8953	__le64	rx_mcast_bytes;8954	__le64	rx_bcast_bytes;8955	__le64	rx_agg_pkts;8956	__le64	rx_agg_bytes;8957	__le64	rx_agg_events;8958	__le64	rx_agg_aborts;8959	u8	unused_0[7];8960	u8	valid;8961};8962 8963/* hwrm_stat_ext_ctx_query_input (size:192b/24B) */8964struct hwrm_stat_ext_ctx_query_input {8965	__le16	req_type;8966	__le16	cmpl_ring;8967	__le16	seq_id;8968	__le16	target_id;8969	__le64	resp_addr;8970	__le32	stat_ctx_id;8971	u8	flags;8972	#define STAT_EXT_CTX_QUERY_REQ_FLAGS_COUNTER_MASK     0x1UL8973	u8	unused_0[3];8974};8975 8976/* hwrm_stat_ext_ctx_query_output (size:1536b/192B) */8977struct hwrm_stat_ext_ctx_query_output {8978	__le16	error_code;8979	__le16	req_type;8980	__le16	seq_id;8981	__le16	resp_len;8982	__le64	rx_ucast_pkts;8983	__le64	rx_mcast_pkts;8984	__le64	rx_bcast_pkts;8985	__le64	rx_discard_pkts;8986	__le64	rx_error_pkts;8987	__le64	rx_ucast_bytes;8988	__le64	rx_mcast_bytes;8989	__le64	rx_bcast_bytes;8990	__le64	tx_ucast_pkts;8991	__le64	tx_mcast_pkts;8992	__le64	tx_bcast_pkts;8993	__le64	tx_error_pkts;8994	__le64	tx_discard_pkts;8995	__le64	tx_ucast_bytes;8996	__le64	tx_mcast_bytes;8997	__le64	tx_bcast_bytes;8998	__le64	rx_tpa_eligible_pkt;8999	__le64	rx_tpa_eligible_bytes;9000	__le64	rx_tpa_pkt;9001	__le64	rx_tpa_bytes;9002	__le64	rx_tpa_errors;9003	__le64	rx_tpa_events;9004	u8	unused_0[7];9005	u8	valid;9006};9007 9008/* hwrm_stat_ctx_clr_stats_input (size:192b/24B) */9009struct hwrm_stat_ctx_clr_stats_input {9010	__le16	req_type;9011	__le16	cmpl_ring;9012	__le16	seq_id;9013	__le16	target_id;9014	__le64	resp_addr;9015	__le32	stat_ctx_id;9016	u8	unused_0[4];9017};9018 9019/* hwrm_stat_ctx_clr_stats_output (size:128b/16B) */9020struct hwrm_stat_ctx_clr_stats_output {9021	__le16	error_code;9022	__le16	req_type;9023	__le16	seq_id;9024	__le16	resp_len;9025	u8	unused_0[7];9026	u8	valid;9027};9028 9029/* hwrm_pcie_qstats_input (size:256b/32B) */9030struct hwrm_pcie_qstats_input {9031	__le16	req_type;9032	__le16	cmpl_ring;9033	__le16	seq_id;9034	__le16	target_id;9035	__le64	resp_addr;9036	__le16	pcie_stat_size;9037	u8	unused_0[6];9038	__le64	pcie_stat_host_addr;9039};9040 9041/* hwrm_pcie_qstats_output (size:128b/16B) */9042struct hwrm_pcie_qstats_output {9043	__le16	error_code;9044	__le16	req_type;9045	__le16	seq_id;9046	__le16	resp_len;9047	__le16	pcie_stat_size;9048	u8	unused_0[5];9049	u8	valid;9050};9051 9052/* pcie_ctx_hw_stats (size:768b/96B) */9053struct pcie_ctx_hw_stats {9054	__le64	pcie_pl_signal_integrity;9055	__le64	pcie_dl_signal_integrity;9056	__le64	pcie_tl_signal_integrity;9057	__le64	pcie_link_integrity;9058	__le64	pcie_tx_traffic_rate;9059	__le64	pcie_rx_traffic_rate;9060	__le64	pcie_tx_dllp_statistics;9061	__le64	pcie_rx_dllp_statistics;9062	__le64	pcie_equalization_time;9063	__le32	pcie_ltssm_histogram[4];9064	__le64	pcie_recovery_histogram;9065};9066 9067/* hwrm_stat_generic_qstats_input (size:256b/32B) */9068struct hwrm_stat_generic_qstats_input {9069	__le16	req_type;9070	__le16	cmpl_ring;9071	__le16	seq_id;9072	__le16	target_id;9073	__le64	resp_addr;9074	__le16	generic_stat_size;9075	u8	flags;9076	#define STAT_GENERIC_QSTATS_REQ_FLAGS_COUNTER_MASK     0x1UL9077	u8	unused_0[5];9078	__le64	generic_stat_host_addr;9079};9080 9081/* hwrm_stat_generic_qstats_output (size:128b/16B) */9082struct hwrm_stat_generic_qstats_output {9083	__le16	error_code;9084	__le16	req_type;9085	__le16	seq_id;9086	__le16	resp_len;9087	__le16	generic_stat_size;9088	u8	unused_0[5];9089	u8	valid;9090};9091 9092/* generic_sw_hw_stats (size:1472b/184B) */9093struct generic_sw_hw_stats {9094	__le64	pcie_statistics_tx_tlp;9095	__le64	pcie_statistics_rx_tlp;9096	__le64	pcie_credit_fc_hdr_posted;9097	__le64	pcie_credit_fc_hdr_nonposted;9098	__le64	pcie_credit_fc_hdr_cmpl;9099	__le64	pcie_credit_fc_data_posted;9100	__le64	pcie_credit_fc_data_nonposted;9101	__le64	pcie_credit_fc_data_cmpl;9102	__le64	pcie_credit_fc_tgt_nonposted;9103	__le64	pcie_credit_fc_tgt_data_posted;9104	__le64	pcie_credit_fc_tgt_hdr_posted;9105	__le64	pcie_credit_fc_cmpl_hdr_posted;9106	__le64	pcie_credit_fc_cmpl_data_posted;9107	__le64	pcie_cmpl_longest;9108	__le64	pcie_cmpl_shortest;9109	__le64	cache_miss_count_cfcq;9110	__le64	cache_miss_count_cfcs;9111	__le64	cache_miss_count_cfcc;9112	__le64	cache_miss_count_cfcm;9113	__le64	hw_db_recov_dbs_dropped;9114	__le64	hw_db_recov_drops_serviced;9115	__le64	hw_db_recov_dbs_recovered;9116	__le64	hw_db_recov_oo_drop_count;9117};9118 9119/* hwrm_fw_reset_input (size:192b/24B) */9120struct hwrm_fw_reset_input {9121	__le16	req_type;9122	__le16	cmpl_ring;9123	__le16	seq_id;9124	__le16	target_id;9125	__le64	resp_addr;9126	u8	embedded_proc_type;9127	#define FW_RESET_REQ_EMBEDDED_PROC_TYPE_BOOT                  0x0UL9128	#define FW_RESET_REQ_EMBEDDED_PROC_TYPE_MGMT                  0x1UL9129	#define FW_RESET_REQ_EMBEDDED_PROC_TYPE_NETCTRL               0x2UL9130	#define FW_RESET_REQ_EMBEDDED_PROC_TYPE_ROCE                  0x3UL9131	#define FW_RESET_REQ_EMBEDDED_PROC_TYPE_HOST                  0x4UL9132	#define FW_RESET_REQ_EMBEDDED_PROC_TYPE_AP                    0x5UL9133	#define FW_RESET_REQ_EMBEDDED_PROC_TYPE_CHIP                  0x6UL9134	#define FW_RESET_REQ_EMBEDDED_PROC_TYPE_HOST_RESOURCE_REINIT  0x7UL9135	#define FW_RESET_REQ_EMBEDDED_PROC_TYPE_IMPACTLESS_ACTIVATION 0x8UL9136	#define FW_RESET_REQ_EMBEDDED_PROC_TYPE_LAST                 FW_RESET_REQ_EMBEDDED_PROC_TYPE_IMPACTLESS_ACTIVATION9137	u8	selfrst_status;9138	#define FW_RESET_REQ_SELFRST_STATUS_SELFRSTNONE      0x0UL9139	#define FW_RESET_REQ_SELFRST_STATUS_SELFRSTASAP      0x1UL9140	#define FW_RESET_REQ_SELFRST_STATUS_SELFRSTPCIERST   0x2UL9141	#define FW_RESET_REQ_SELFRST_STATUS_SELFRSTIMMEDIATE 0x3UL9142	#define FW_RESET_REQ_SELFRST_STATUS_LAST            FW_RESET_REQ_SELFRST_STATUS_SELFRSTIMMEDIATE9143	u8	host_idx;9144	u8	flags;9145	#define FW_RESET_REQ_FLAGS_RESET_GRACEFUL     0x1UL9146	#define FW_RESET_REQ_FLAGS_FW_ACTIVATION      0x2UL9147	u8	unused_0[4];9148};9149 9150/* hwrm_fw_reset_output (size:128b/16B) */9151struct hwrm_fw_reset_output {9152	__le16	error_code;9153	__le16	req_type;9154	__le16	seq_id;9155	__le16	resp_len;9156	u8	selfrst_status;9157	#define FW_RESET_RESP_SELFRST_STATUS_SELFRSTNONE      0x0UL9158	#define FW_RESET_RESP_SELFRST_STATUS_SELFRSTASAP      0x1UL9159	#define FW_RESET_RESP_SELFRST_STATUS_SELFRSTPCIERST   0x2UL9160	#define FW_RESET_RESP_SELFRST_STATUS_SELFRSTIMMEDIATE 0x3UL9161	#define FW_RESET_RESP_SELFRST_STATUS_LAST            FW_RESET_RESP_SELFRST_STATUS_SELFRSTIMMEDIATE9162	u8	unused_0[6];9163	u8	valid;9164};9165 9166/* hwrm_fw_qstatus_input (size:192b/24B) */9167struct hwrm_fw_qstatus_input {9168	__le16	req_type;9169	__le16	cmpl_ring;9170	__le16	seq_id;9171	__le16	target_id;9172	__le64	resp_addr;9173	u8	embedded_proc_type;9174	#define FW_QSTATUS_REQ_EMBEDDED_PROC_TYPE_BOOT    0x0UL9175	#define FW_QSTATUS_REQ_EMBEDDED_PROC_TYPE_MGMT    0x1UL9176	#define FW_QSTATUS_REQ_EMBEDDED_PROC_TYPE_NETCTRL 0x2UL9177	#define FW_QSTATUS_REQ_EMBEDDED_PROC_TYPE_ROCE    0x3UL9178	#define FW_QSTATUS_REQ_EMBEDDED_PROC_TYPE_HOST    0x4UL9179	#define FW_QSTATUS_REQ_EMBEDDED_PROC_TYPE_AP      0x5UL9180	#define FW_QSTATUS_REQ_EMBEDDED_PROC_TYPE_CHIP    0x6UL9181	#define FW_QSTATUS_REQ_EMBEDDED_PROC_TYPE_LAST   FW_QSTATUS_REQ_EMBEDDED_PROC_TYPE_CHIP9182	u8	unused_0[7];9183};9184 9185/* hwrm_fw_qstatus_output (size:128b/16B) */9186struct hwrm_fw_qstatus_output {9187	__le16	error_code;9188	__le16	req_type;9189	__le16	seq_id;9190	__le16	resp_len;9191	u8	selfrst_status;9192	#define FW_QSTATUS_RESP_SELFRST_STATUS_SELFRSTNONE    0x0UL9193	#define FW_QSTATUS_RESP_SELFRST_STATUS_SELFRSTASAP    0x1UL9194	#define FW_QSTATUS_RESP_SELFRST_STATUS_SELFRSTPCIERST 0x2UL9195	#define FW_QSTATUS_RESP_SELFRST_STATUS_SELFRSTPOWER   0x3UL9196	#define FW_QSTATUS_RESP_SELFRST_STATUS_LAST          FW_QSTATUS_RESP_SELFRST_STATUS_SELFRSTPOWER9197	u8	nvm_option_action_status;9198	#define FW_QSTATUS_RESP_NVM_OPTION_ACTION_STATUS_NVMOPT_ACTION_NONE     0x0UL9199	#define FW_QSTATUS_RESP_NVM_OPTION_ACTION_STATUS_NVMOPT_ACTION_HOTRESET 0x1UL9200	#define FW_QSTATUS_RESP_NVM_OPTION_ACTION_STATUS_NVMOPT_ACTION_WARMBOOT 0x2UL9201	#define FW_QSTATUS_RESP_NVM_OPTION_ACTION_STATUS_NVMOPT_ACTION_COLDBOOT 0x3UL9202	#define FW_QSTATUS_RESP_NVM_OPTION_ACTION_STATUS_LAST                  FW_QSTATUS_RESP_NVM_OPTION_ACTION_STATUS_NVMOPT_ACTION_COLDBOOT9203	u8	unused_0[5];9204	u8	valid;9205};9206 9207/* hwrm_fw_set_time_input (size:256b/32B) */9208struct hwrm_fw_set_time_input {9209	__le16	req_type;9210	__le16	cmpl_ring;9211	__le16	seq_id;9212	__le16	target_id;9213	__le64	resp_addr;9214	__le16	year;9215	#define FW_SET_TIME_REQ_YEAR_UNKNOWN 0x0UL9216	#define FW_SET_TIME_REQ_YEAR_LAST   FW_SET_TIME_REQ_YEAR_UNKNOWN9217	u8	month;9218	u8	day;9219	u8	hour;9220	u8	minute;9221	u8	second;9222	u8	unused_0;9223	__le16	millisecond;9224	__le16	zone;9225	#define FW_SET_TIME_REQ_ZONE_UTC     09226	#define FW_SET_TIME_REQ_ZONE_UNKNOWN 655359227	#define FW_SET_TIME_REQ_ZONE_LAST   FW_SET_TIME_REQ_ZONE_UNKNOWN9228	u8	unused_1[4];9229};9230 9231/* hwrm_fw_set_time_output (size:128b/16B) */9232struct hwrm_fw_set_time_output {9233	__le16	error_code;9234	__le16	req_type;9235	__le16	seq_id;9236	__le16	resp_len;9237	u8	unused_0[7];9238	u8	valid;9239};9240 9241/* hwrm_struct_hdr (size:128b/16B) */9242struct hwrm_struct_hdr {9243	__le16	struct_id;9244	#define STRUCT_HDR_STRUCT_ID_LLDP_CFG           0x41bUL9245	#define STRUCT_HDR_STRUCT_ID_DCBX_ETS           0x41dUL9246	#define STRUCT_HDR_STRUCT_ID_DCBX_PFC           0x41fUL9247	#define STRUCT_HDR_STRUCT_ID_DCBX_APP           0x421UL9248	#define STRUCT_HDR_STRUCT_ID_DCBX_FEATURE_STATE 0x422UL9249	#define STRUCT_HDR_STRUCT_ID_LLDP_GENERIC       0x424UL9250	#define STRUCT_HDR_STRUCT_ID_LLDP_DEVICE        0x426UL9251	#define STRUCT_HDR_STRUCT_ID_POWER_BKUP         0x427UL9252	#define STRUCT_HDR_STRUCT_ID_PEER_MMAP          0x429UL9253	#define STRUCT_HDR_STRUCT_ID_AFM_OPAQUE         0x1UL9254	#define STRUCT_HDR_STRUCT_ID_PORT_DESCRIPTION   0xaUL9255	#define STRUCT_HDR_STRUCT_ID_RSS_V2             0x64UL9256	#define STRUCT_HDR_STRUCT_ID_MSIX_PER_VF        0xc8UL9257	#define STRUCT_HDR_STRUCT_ID_LAST              STRUCT_HDR_STRUCT_ID_MSIX_PER_VF9258	__le16	len;9259	u8	version;9260	u8	count;9261	__le16	subtype;9262	__le16	next_offset;9263	#define STRUCT_HDR_NEXT_OFFSET_LAST 0x0UL9264	u8	unused_0[6];9265};9266 9267/* hwrm_struct_data_dcbx_app (size:64b/8B) */9268struct hwrm_struct_data_dcbx_app {9269	__be16	protocol_id;9270	u8	protocol_selector;9271	#define STRUCT_DATA_DCBX_APP_PROTOCOL_SELECTOR_ETHER_TYPE   0x1UL9272	#define STRUCT_DATA_DCBX_APP_PROTOCOL_SELECTOR_TCP_PORT     0x2UL9273	#define STRUCT_DATA_DCBX_APP_PROTOCOL_SELECTOR_UDP_PORT     0x3UL9274	#define STRUCT_DATA_DCBX_APP_PROTOCOL_SELECTOR_TCP_UDP_PORT 0x4UL9275	#define STRUCT_DATA_DCBX_APP_PROTOCOL_SELECTOR_LAST        STRUCT_DATA_DCBX_APP_PROTOCOL_SELECTOR_TCP_UDP_PORT9276	u8	priority;9277	u8	valid;9278	u8	unused_0[3];9279};9280 9281/* hwrm_fw_set_structured_data_input (size:256b/32B) */9282struct hwrm_fw_set_structured_data_input {9283	__le16	req_type;9284	__le16	cmpl_ring;9285	__le16	seq_id;9286	__le16	target_id;9287	__le64	resp_addr;9288	__le64	src_data_addr;9289	__le16	data_len;9290	u8	hdr_cnt;9291	u8	unused_0[5];9292};9293 9294/* hwrm_fw_set_structured_data_output (size:128b/16B) */9295struct hwrm_fw_set_structured_data_output {9296	__le16	error_code;9297	__le16	req_type;9298	__le16	seq_id;9299	__le16	resp_len;9300	u8	unused_0[7];9301	u8	valid;9302};9303 9304/* hwrm_fw_set_structured_data_cmd_err (size:64b/8B) */9305struct hwrm_fw_set_structured_data_cmd_err {9306	u8	code;9307	#define FW_SET_STRUCTURED_DATA_CMD_ERR_CODE_UNKNOWN     0x0UL9308	#define FW_SET_STRUCTURED_DATA_CMD_ERR_CODE_BAD_HDR_CNT 0x1UL9309	#define FW_SET_STRUCTURED_DATA_CMD_ERR_CODE_BAD_FMT     0x2UL9310	#define FW_SET_STRUCTURED_DATA_CMD_ERR_CODE_BAD_ID      0x3UL9311	#define FW_SET_STRUCTURED_DATA_CMD_ERR_CODE_LAST       FW_SET_STRUCTURED_DATA_CMD_ERR_CODE_BAD_ID9312	u8	unused_0[7];9313};9314 9315/* hwrm_fw_get_structured_data_input (size:256b/32B) */9316struct hwrm_fw_get_structured_data_input {9317	__le16	req_type;9318	__le16	cmpl_ring;9319	__le16	seq_id;9320	__le16	target_id;9321	__le64	resp_addr;9322	__le64	dest_data_addr;9323	__le16	data_len;9324	__le16	structure_id;9325	__le16	subtype;9326	#define FW_GET_STRUCTURED_DATA_REQ_SUBTYPE_UNUSED                  0x0UL9327	#define FW_GET_STRUCTURED_DATA_REQ_SUBTYPE_ALL                     0xffffUL9328	#define FW_GET_STRUCTURED_DATA_REQ_SUBTYPE_NEAR_BRIDGE_ADMIN       0x100UL9329	#define FW_GET_STRUCTURED_DATA_REQ_SUBTYPE_NEAR_BRIDGE_PEER        0x101UL9330	#define FW_GET_STRUCTURED_DATA_REQ_SUBTYPE_NEAR_BRIDGE_OPERATIONAL 0x102UL9331	#define FW_GET_STRUCTURED_DATA_REQ_SUBTYPE_NON_TPMR_ADMIN          0x200UL9332	#define FW_GET_STRUCTURED_DATA_REQ_SUBTYPE_NON_TPMR_PEER           0x201UL9333	#define FW_GET_STRUCTURED_DATA_REQ_SUBTYPE_NON_TPMR_OPERATIONAL    0x202UL9334	#define FW_GET_STRUCTURED_DATA_REQ_SUBTYPE_HOST_OPERATIONAL        0x300UL9335	#define FW_GET_STRUCTURED_DATA_REQ_SUBTYPE_LAST                   FW_GET_STRUCTURED_DATA_REQ_SUBTYPE_HOST_OPERATIONAL9336	u8	count;9337	u8	unused_0;9338};9339 9340/* hwrm_fw_get_structured_data_output (size:128b/16B) */9341struct hwrm_fw_get_structured_data_output {9342	__le16	error_code;9343	__le16	req_type;9344	__le16	seq_id;9345	__le16	resp_len;9346	u8	hdr_cnt;9347	u8	unused_0[6];9348	u8	valid;9349};9350 9351/* hwrm_fw_get_structured_data_cmd_err (size:64b/8B) */9352struct hwrm_fw_get_structured_data_cmd_err {9353	u8	code;9354	#define FW_GET_STRUCTURED_DATA_CMD_ERR_CODE_UNKNOWN 0x0UL9355	#define FW_GET_STRUCTURED_DATA_CMD_ERR_CODE_BAD_ID  0x3UL9356	#define FW_GET_STRUCTURED_DATA_CMD_ERR_CODE_LAST   FW_GET_STRUCTURED_DATA_CMD_ERR_CODE_BAD_ID9357	u8	unused_0[7];9358};9359 9360/* hwrm_fw_livepatch_query_input (size:192b/24B) */9361struct hwrm_fw_livepatch_query_input {9362	__le16	req_type;9363	__le16	cmpl_ring;9364	__le16	seq_id;9365	__le16	target_id;9366	__le64	resp_addr;9367	u8	fw_target;9368	#define FW_LIVEPATCH_QUERY_REQ_FW_TARGET_COMMON_FW 0x1UL9369	#define FW_LIVEPATCH_QUERY_REQ_FW_TARGET_SECURE_FW 0x2UL9370	#define FW_LIVEPATCH_QUERY_REQ_FW_TARGET_LAST     FW_LIVEPATCH_QUERY_REQ_FW_TARGET_SECURE_FW9371	u8	unused_0[7];9372};9373 9374/* hwrm_fw_livepatch_query_output (size:640b/80B) */9375struct hwrm_fw_livepatch_query_output {9376	__le16	error_code;9377	__le16	req_type;9378	__le16	seq_id;9379	__le16	resp_len;9380	char	install_ver[32];9381	char	active_ver[32];9382	__le16	status_flags;9383	#define FW_LIVEPATCH_QUERY_RESP_STATUS_FLAGS_INSTALL     0x1UL9384	#define FW_LIVEPATCH_QUERY_RESP_STATUS_FLAGS_ACTIVE      0x2UL9385	u8	unused_0[5];9386	u8	valid;9387};9388 9389/* hwrm_fw_livepatch_input (size:256b/32B) */9390struct hwrm_fw_livepatch_input {9391	__le16	req_type;9392	__le16	cmpl_ring;9393	__le16	seq_id;9394	__le16	target_id;9395	__le64	resp_addr;9396	u8	opcode;9397	#define FW_LIVEPATCH_REQ_OPCODE_ACTIVATE   0x1UL9398	#define FW_LIVEPATCH_REQ_OPCODE_DEACTIVATE 0x2UL9399	#define FW_LIVEPATCH_REQ_OPCODE_LAST      FW_LIVEPATCH_REQ_OPCODE_DEACTIVATE9400	u8	fw_target;9401	#define FW_LIVEPATCH_REQ_FW_TARGET_COMMON_FW 0x1UL9402	#define FW_LIVEPATCH_REQ_FW_TARGET_SECURE_FW 0x2UL9403	#define FW_LIVEPATCH_REQ_FW_TARGET_LAST     FW_LIVEPATCH_REQ_FW_TARGET_SECURE_FW9404	u8	loadtype;9405	#define FW_LIVEPATCH_REQ_LOADTYPE_NVM_INSTALL   0x1UL9406	#define FW_LIVEPATCH_REQ_LOADTYPE_MEMORY_DIRECT 0x2UL9407	#define FW_LIVEPATCH_REQ_LOADTYPE_LAST         FW_LIVEPATCH_REQ_LOADTYPE_MEMORY_DIRECT9408	u8	flags;9409	__le32	patch_len;9410	__le64	host_addr;9411};9412 9413/* hwrm_fw_livepatch_output (size:128b/16B) */9414struct hwrm_fw_livepatch_output {9415	__le16	error_code;9416	__le16	req_type;9417	__le16	seq_id;9418	__le16	resp_len;9419	u8	unused_0[7];9420	u8	valid;9421};9422 9423/* hwrm_fw_livepatch_cmd_err (size:64b/8B) */9424struct hwrm_fw_livepatch_cmd_err {9425	u8	code;9426	#define FW_LIVEPATCH_CMD_ERR_CODE_UNKNOWN         0x0UL9427	#define FW_LIVEPATCH_CMD_ERR_CODE_INVALID_OPCODE  0x1UL9428	#define FW_LIVEPATCH_CMD_ERR_CODE_INVALID_TARGET  0x2UL9429	#define FW_LIVEPATCH_CMD_ERR_CODE_NOT_SUPPORTED   0x3UL9430	#define FW_LIVEPATCH_CMD_ERR_CODE_NOT_INSTALLED   0x4UL9431	#define FW_LIVEPATCH_CMD_ERR_CODE_NOT_PATCHED     0x5UL9432	#define FW_LIVEPATCH_CMD_ERR_CODE_AUTH_FAIL       0x6UL9433	#define FW_LIVEPATCH_CMD_ERR_CODE_INVALID_HEADER  0x7UL9434	#define FW_LIVEPATCH_CMD_ERR_CODE_INVALID_SIZE    0x8UL9435	#define FW_LIVEPATCH_CMD_ERR_CODE_ALREADY_PATCHED 0x9UL9436	#define FW_LIVEPATCH_CMD_ERR_CODE_LAST           FW_LIVEPATCH_CMD_ERR_CODE_ALREADY_PATCHED9437	u8	unused_0[7];9438};9439 9440/* hwrm_exec_fwd_resp_input (size:1024b/128B) */9441struct hwrm_exec_fwd_resp_input {9442	__le16	req_type;9443	__le16	cmpl_ring;9444	__le16	seq_id;9445	__le16	target_id;9446	__le64	resp_addr;9447	__le32	encap_request[26];9448	__le16	encap_resp_target_id;9449	u8	unused_0[6];9450};9451 9452/* hwrm_exec_fwd_resp_output (size:128b/16B) */9453struct hwrm_exec_fwd_resp_output {9454	__le16	error_code;9455	__le16	req_type;9456	__le16	seq_id;9457	__le16	resp_len;9458	u8	unused_0[7];9459	u8	valid;9460};9461 9462/* hwrm_reject_fwd_resp_input (size:1024b/128B) */9463struct hwrm_reject_fwd_resp_input {9464	__le16	req_type;9465	__le16	cmpl_ring;9466	__le16	seq_id;9467	__le16	target_id;9468	__le64	resp_addr;9469	__le32	encap_request[26];9470	__le16	encap_resp_target_id;9471	u8	unused_0[6];9472};9473 9474/* hwrm_reject_fwd_resp_output (size:128b/16B) */9475struct hwrm_reject_fwd_resp_output {9476	__le16	error_code;9477	__le16	req_type;9478	__le16	seq_id;9479	__le16	resp_len;9480	u8	unused_0[7];9481	u8	valid;9482};9483 9484/* hwrm_fwd_resp_input (size:1024b/128B) */9485struct hwrm_fwd_resp_input {9486	__le16	req_type;9487	__le16	cmpl_ring;9488	__le16	seq_id;9489	__le16	target_id;9490	__le64	resp_addr;9491	__le16	encap_resp_target_id;9492	__le16	encap_resp_cmpl_ring;9493	__le16	encap_resp_len;9494	u8	unused_0;9495	u8	unused_1;9496	__le64	encap_resp_addr;9497	__le32	encap_resp[24];9498};9499 9500/* hwrm_fwd_resp_output (size:128b/16B) */9501struct hwrm_fwd_resp_output {9502	__le16	error_code;9503	__le16	req_type;9504	__le16	seq_id;9505	__le16	resp_len;9506	u8	unused_0[7];9507	u8	valid;9508};9509 9510/* hwrm_fwd_async_event_cmpl_input (size:320b/40B) */9511struct hwrm_fwd_async_event_cmpl_input {9512	__le16	req_type;9513	__le16	cmpl_ring;9514	__le16	seq_id;9515	__le16	target_id;9516	__le64	resp_addr;9517	__le16	encap_async_event_target_id;9518	u8	unused_0[6];9519	__le32	encap_async_event_cmpl[4];9520};9521 9522/* hwrm_fwd_async_event_cmpl_output (size:128b/16B) */9523struct hwrm_fwd_async_event_cmpl_output {9524	__le16	error_code;9525	__le16	req_type;9526	__le16	seq_id;9527	__le16	resp_len;9528	u8	unused_0[7];9529	u8	valid;9530};9531 9532/* hwrm_temp_monitor_query_input (size:128b/16B) */9533struct hwrm_temp_monitor_query_input {9534	__le16	req_type;9535	__le16	cmpl_ring;9536	__le16	seq_id;9537	__le16	target_id;9538	__le64	resp_addr;9539};9540 9541/* hwrm_temp_monitor_query_output (size:192b/24B) */9542struct hwrm_temp_monitor_query_output {9543	__le16	error_code;9544	__le16	req_type;9545	__le16	seq_id;9546	__le16	resp_len;9547	u8	temp;9548	u8	phy_temp;9549	u8	om_temp;9550	u8	flags;9551	#define TEMP_MONITOR_QUERY_RESP_FLAGS_TEMP_NOT_AVAILABLE             0x1UL9552	#define TEMP_MONITOR_QUERY_RESP_FLAGS_PHY_TEMP_NOT_AVAILABLE         0x2UL9553	#define TEMP_MONITOR_QUERY_RESP_FLAGS_OM_NOT_PRESENT                 0x4UL9554	#define TEMP_MONITOR_QUERY_RESP_FLAGS_OM_TEMP_NOT_AVAILABLE          0x8UL9555	#define TEMP_MONITOR_QUERY_RESP_FLAGS_EXT_TEMP_FIELDS_AVAILABLE      0x10UL9556	#define TEMP_MONITOR_QUERY_RESP_FLAGS_THRESHOLD_VALUES_AVAILABLE     0x20UL9557	u8	temp2;9558	u8	phy_temp2;9559	u8	om_temp2;9560	u8	warn_threshold;9561	u8	critical_threshold;9562	u8	fatal_threshold;9563	u8	shutdown_threshold;9564	u8	unused_0[4];9565	u8	valid;9566};9567 9568/* hwrm_wol_filter_alloc_input (size:512b/64B) */9569struct hwrm_wol_filter_alloc_input {9570	__le16	req_type;9571	__le16	cmpl_ring;9572	__le16	seq_id;9573	__le16	target_id;9574	__le64	resp_addr;9575	__le32	flags;9576	__le32	enables;9577	#define WOL_FILTER_ALLOC_REQ_ENABLES_MAC_ADDRESS           0x1UL9578	#define WOL_FILTER_ALLOC_REQ_ENABLES_PATTERN_OFFSET        0x2UL9579	#define WOL_FILTER_ALLOC_REQ_ENABLES_PATTERN_BUF_SIZE      0x4UL9580	#define WOL_FILTER_ALLOC_REQ_ENABLES_PATTERN_BUF_ADDR      0x8UL9581	#define WOL_FILTER_ALLOC_REQ_ENABLES_PATTERN_MASK_ADDR     0x10UL9582	#define WOL_FILTER_ALLOC_REQ_ENABLES_PATTERN_MASK_SIZE     0x20UL9583	__le16	port_id;9584	u8	wol_type;9585	#define WOL_FILTER_ALLOC_REQ_WOL_TYPE_MAGICPKT 0x0UL9586	#define WOL_FILTER_ALLOC_REQ_WOL_TYPE_BMP      0x1UL9587	#define WOL_FILTER_ALLOC_REQ_WOL_TYPE_INVALID  0xffUL9588	#define WOL_FILTER_ALLOC_REQ_WOL_TYPE_LAST    WOL_FILTER_ALLOC_REQ_WOL_TYPE_INVALID9589	u8	unused_0[5];9590	u8	mac_address[6];9591	__le16	pattern_offset;9592	__le16	pattern_buf_size;9593	__le16	pattern_mask_size;9594	u8	unused_1[4];9595	__le64	pattern_buf_addr;9596	__le64	pattern_mask_addr;9597};9598 9599/* hwrm_wol_filter_alloc_output (size:128b/16B) */9600struct hwrm_wol_filter_alloc_output {9601	__le16	error_code;9602	__le16	req_type;9603	__le16	seq_id;9604	__le16	resp_len;9605	u8	wol_filter_id;9606	u8	unused_0[6];9607	u8	valid;9608};9609 9610/* hwrm_wol_filter_free_input (size:256b/32B) */9611struct hwrm_wol_filter_free_input {9612	__le16	req_type;9613	__le16	cmpl_ring;9614	__le16	seq_id;9615	__le16	target_id;9616	__le64	resp_addr;9617	__le32	flags;9618	#define WOL_FILTER_FREE_REQ_FLAGS_FREE_ALL_WOL_FILTERS     0x1UL9619	__le32	enables;9620	#define WOL_FILTER_FREE_REQ_ENABLES_WOL_FILTER_ID     0x1UL9621	__le16	port_id;9622	u8	wol_filter_id;9623	u8	unused_0[5];9624};9625 9626/* hwrm_wol_filter_free_output (size:128b/16B) */9627struct hwrm_wol_filter_free_output {9628	__le16	error_code;9629	__le16	req_type;9630	__le16	seq_id;9631	__le16	resp_len;9632	u8	unused_0[7];9633	u8	valid;9634};9635 9636/* hwrm_wol_filter_qcfg_input (size:448b/56B) */9637struct hwrm_wol_filter_qcfg_input {9638	__le16	req_type;9639	__le16	cmpl_ring;9640	__le16	seq_id;9641	__le16	target_id;9642	__le64	resp_addr;9643	__le16	port_id;9644	__le16	handle;9645	u8	unused_0[4];9646	__le64	pattern_buf_addr;9647	__le16	pattern_buf_size;9648	u8	unused_1[6];9649	__le64	pattern_mask_addr;9650	__le16	pattern_mask_size;9651	u8	unused_2[6];9652};9653 9654/* hwrm_wol_filter_qcfg_output (size:256b/32B) */9655struct hwrm_wol_filter_qcfg_output {9656	__le16	error_code;9657	__le16	req_type;9658	__le16	seq_id;9659	__le16	resp_len;9660	__le16	next_handle;9661	u8	wol_filter_id;9662	u8	wol_type;9663	#define WOL_FILTER_QCFG_RESP_WOL_TYPE_MAGICPKT 0x0UL9664	#define WOL_FILTER_QCFG_RESP_WOL_TYPE_BMP      0x1UL9665	#define WOL_FILTER_QCFG_RESP_WOL_TYPE_INVALID  0xffUL9666	#define WOL_FILTER_QCFG_RESP_WOL_TYPE_LAST    WOL_FILTER_QCFG_RESP_WOL_TYPE_INVALID9667	__le32	unused_0;9668	u8	mac_address[6];9669	__le16	pattern_offset;9670	__le16	pattern_size;9671	__le16	pattern_mask_size;9672	u8	unused_1[3];9673	u8	valid;9674};9675 9676/* hwrm_wol_reason_qcfg_input (size:320b/40B) */9677struct hwrm_wol_reason_qcfg_input {9678	__le16	req_type;9679	__le16	cmpl_ring;9680	__le16	seq_id;9681	__le16	target_id;9682	__le64	resp_addr;9683	__le16	port_id;9684	u8	unused_0[6];9685	__le64	wol_pkt_buf_addr;9686	__le16	wol_pkt_buf_size;9687	u8	unused_1[6];9688};9689 9690/* hwrm_wol_reason_qcfg_output (size:128b/16B) */9691struct hwrm_wol_reason_qcfg_output {9692	__le16	error_code;9693	__le16	req_type;9694	__le16	seq_id;9695	__le16	resp_len;9696	u8	wol_filter_id;9697	u8	wol_reason;9698	#define WOL_REASON_QCFG_RESP_WOL_REASON_MAGICPKT 0x0UL9699	#define WOL_REASON_QCFG_RESP_WOL_REASON_BMP      0x1UL9700	#define WOL_REASON_QCFG_RESP_WOL_REASON_INVALID  0xffUL9701	#define WOL_REASON_QCFG_RESP_WOL_REASON_LAST    WOL_REASON_QCFG_RESP_WOL_REASON_INVALID9702	u8	wol_pkt_len;9703	u8	unused_0[4];9704	u8	valid;9705};9706 9707/* hwrm_dbg_read_direct_input (size:256b/32B) */9708struct hwrm_dbg_read_direct_input {9709	__le16	req_type;9710	__le16	cmpl_ring;9711	__le16	seq_id;9712	__le16	target_id;9713	__le64	resp_addr;9714	__le64	host_dest_addr;9715	__le32	read_addr;9716	__le32	read_len32;9717};9718 9719/* hwrm_dbg_read_direct_output (size:128b/16B) */9720struct hwrm_dbg_read_direct_output {9721	__le16	error_code;9722	__le16	req_type;9723	__le16	seq_id;9724	__le16	resp_len;9725	__le32	crc32;9726	u8	unused_0[3];9727	u8	valid;9728};9729 9730/* hwrm_dbg_qcaps_input (size:192b/24B) */9731struct hwrm_dbg_qcaps_input {9732	__le16	req_type;9733	__le16	cmpl_ring;9734	__le16	seq_id;9735	__le16	target_id;9736	__le64	resp_addr;9737	__le16	fid;9738	u8	unused_0[6];9739};9740 9741/* hwrm_dbg_qcaps_output (size:192b/24B) */9742struct hwrm_dbg_qcaps_output {9743	__le16	error_code;9744	__le16	req_type;9745	__le16	seq_id;9746	__le16	resp_len;9747	__le16	fid;9748	u8	unused_0[2];9749	__le32	coredump_component_disable_caps;9750	#define DBG_QCAPS_RESP_COREDUMP_COMPONENT_DISABLE_CAPS_NVRAM     0x1UL9751	__le32	flags;9752	#define DBG_QCAPS_RESP_FLAGS_CRASHDUMP_NVM             0x1UL9753	#define DBG_QCAPS_RESP_FLAGS_CRASHDUMP_HOST_DDR        0x2UL9754	#define DBG_QCAPS_RESP_FLAGS_CRASHDUMP_SOC_DDR         0x4UL9755	#define DBG_QCAPS_RESP_FLAGS_USEQ                      0x8UL9756	#define DBG_QCAPS_RESP_FLAGS_COREDUMP_HOST_DDR         0x10UL9757	#define DBG_QCAPS_RESP_FLAGS_COREDUMP_HOST_CAPTURE     0x20UL9758	#define DBG_QCAPS_RESP_FLAGS_PTRACE                    0x40UL9759	u8	unused_1[3];9760	u8	valid;9761};9762 9763/* hwrm_dbg_qcfg_input (size:192b/24B) */9764struct hwrm_dbg_qcfg_input {9765	__le16	req_type;9766	__le16	cmpl_ring;9767	__le16	seq_id;9768	__le16	target_id;9769	__le64	resp_addr;9770	__le16	fid;9771	__le16	flags;9772	#define DBG_QCFG_REQ_FLAGS_CRASHDUMP_SIZE_FOR_DEST_MASK         0x3UL9773	#define DBG_QCFG_REQ_FLAGS_CRASHDUMP_SIZE_FOR_DEST_SFT          09774	#define DBG_QCFG_REQ_FLAGS_CRASHDUMP_SIZE_FOR_DEST_DEST_NVM       0x0UL9775	#define DBG_QCFG_REQ_FLAGS_CRASHDUMP_SIZE_FOR_DEST_DEST_HOST_DDR  0x1UL9776	#define DBG_QCFG_REQ_FLAGS_CRASHDUMP_SIZE_FOR_DEST_DEST_SOC_DDR   0x2UL9777	#define DBG_QCFG_REQ_FLAGS_CRASHDUMP_SIZE_FOR_DEST_LAST          DBG_QCFG_REQ_FLAGS_CRASHDUMP_SIZE_FOR_DEST_DEST_SOC_DDR9778	__le32	coredump_component_disable_flags;9779	#define DBG_QCFG_REQ_COREDUMP_COMPONENT_DISABLE_FLAGS_NVRAM     0x1UL9780};9781 9782/* hwrm_dbg_qcfg_output (size:256b/32B) */9783struct hwrm_dbg_qcfg_output {9784	__le16	error_code;9785	__le16	req_type;9786	__le16	seq_id;9787	__le16	resp_len;9788	__le16	fid;9789	u8	unused_0[2];9790	__le32	coredump_size;9791	__le32	flags;9792	#define DBG_QCFG_RESP_FLAGS_UART_LOG               0x1UL9793	#define DBG_QCFG_RESP_FLAGS_UART_LOG_SECONDARY     0x2UL9794	#define DBG_QCFG_RESP_FLAGS_FW_TRACE               0x4UL9795	#define DBG_QCFG_RESP_FLAGS_FW_TRACE_SECONDARY     0x8UL9796	#define DBG_QCFG_RESP_FLAGS_DEBUG_NOTIFY           0x10UL9797	#define DBG_QCFG_RESP_FLAGS_JTAG_DEBUG             0x20UL9798	__le16	async_cmpl_ring;9799	u8	unused_2[2];9800	__le32	crashdump_size;9801	u8	unused_3[3];9802	u8	valid;9803};9804 9805/* hwrm_dbg_crashdump_medium_cfg_input (size:320b/40B) */9806struct hwrm_dbg_crashdump_medium_cfg_input {9807	__le16	req_type;9808	__le16	cmpl_ring;9809	__le16	seq_id;9810	__le16	target_id;9811	__le64	resp_addr;9812	__le16	output_dest_flags;9813	#define DBG_CRASHDUMP_MEDIUM_CFG_REQ_TYPE_DDR     0x1UL9814	__le16	pg_size_lvl;9815	#define DBG_CRASHDUMP_MEDIUM_CFG_REQ_LVL_MASK      0x3UL9816	#define DBG_CRASHDUMP_MEDIUM_CFG_REQ_LVL_SFT       09817	#define DBG_CRASHDUMP_MEDIUM_CFG_REQ_LVL_LVL_0       0x0UL9818	#define DBG_CRASHDUMP_MEDIUM_CFG_REQ_LVL_LVL_1       0x1UL9819	#define DBG_CRASHDUMP_MEDIUM_CFG_REQ_LVL_LVL_2       0x2UL9820	#define DBG_CRASHDUMP_MEDIUM_CFG_REQ_LVL_LAST       DBG_CRASHDUMP_MEDIUM_CFG_REQ_LVL_LVL_29821	#define DBG_CRASHDUMP_MEDIUM_CFG_REQ_PG_SIZE_MASK  0x1cUL9822	#define DBG_CRASHDUMP_MEDIUM_CFG_REQ_PG_SIZE_SFT   29823	#define DBG_CRASHDUMP_MEDIUM_CFG_REQ_PG_SIZE_PG_4K   (0x0UL << 2)9824	#define DBG_CRASHDUMP_MEDIUM_CFG_REQ_PG_SIZE_PG_8K   (0x1UL << 2)9825	#define DBG_CRASHDUMP_MEDIUM_CFG_REQ_PG_SIZE_PG_64K  (0x2UL << 2)9826	#define DBG_CRASHDUMP_MEDIUM_CFG_REQ_PG_SIZE_PG_2M   (0x3UL << 2)9827	#define DBG_CRASHDUMP_MEDIUM_CFG_REQ_PG_SIZE_PG_8M   (0x4UL << 2)9828	#define DBG_CRASHDUMP_MEDIUM_CFG_REQ_PG_SIZE_PG_1G   (0x5UL << 2)9829	#define DBG_CRASHDUMP_MEDIUM_CFG_REQ_PG_SIZE_LAST   DBG_CRASHDUMP_MEDIUM_CFG_REQ_PG_SIZE_PG_1G9830	#define DBG_CRASHDUMP_MEDIUM_CFG_REQ_UNUSED11_MASK 0xffe0UL9831	#define DBG_CRASHDUMP_MEDIUM_CFG_REQ_UNUSED11_SFT  59832	__le32	size;9833	__le32	coredump_component_disable_flags;9834	#define DBG_CRASHDUMP_MEDIUM_CFG_REQ_NVRAM     0x1UL9835	__le32	unused_0;9836	__le64	pbl;9837};9838 9839/* hwrm_dbg_crashdump_medium_cfg_output (size:128b/16B) */9840struct hwrm_dbg_crashdump_medium_cfg_output {9841	__le16	error_code;9842	__le16	req_type;9843	__le16	seq_id;9844	__le16	resp_len;9845	u8	unused_1[7];9846	u8	valid;9847};9848 9849/* coredump_segment_record (size:128b/16B) */9850struct coredump_segment_record {9851	__le16	component_id;9852	__le16	segment_id;9853	__le16	max_instances;9854	u8	version_hi;9855	u8	version_low;9856	u8	seg_flags;9857	u8	compress_flags;9858	#define SFLAG_COMPRESSED_ZLIB     0x1UL9859	u8	unused_0[2];9860	__le32	segment_len;9861};9862 9863/* hwrm_dbg_coredump_list_input (size:256b/32B) */9864struct hwrm_dbg_coredump_list_input {9865	__le16	req_type;9866	__le16	cmpl_ring;9867	__le16	seq_id;9868	__le16	target_id;9869	__le64	resp_addr;9870	__le64	host_dest_addr;9871	__le32	host_buf_len;9872	__le16	seq_no;9873	u8	flags;9874	#define DBG_COREDUMP_LIST_REQ_FLAGS_CRASHDUMP     0x1UL9875	u8	unused_0[1];9876};9877 9878/* hwrm_dbg_coredump_list_output (size:128b/16B) */9879struct hwrm_dbg_coredump_list_output {9880	__le16	error_code;9881	__le16	req_type;9882	__le16	seq_id;9883	__le16	resp_len;9884	u8	flags;9885	#define DBG_COREDUMP_LIST_RESP_FLAGS_MORE     0x1UL9886	u8	unused_0;9887	__le16	total_segments;9888	__le16	data_len;9889	u8	unused_1;9890	u8	valid;9891};9892 9893/* hwrm_dbg_coredump_initiate_input (size:256b/32B) */9894struct hwrm_dbg_coredump_initiate_input {9895	__le16	req_type;9896	__le16	cmpl_ring;9897	__le16	seq_id;9898	__le16	target_id;9899	__le64	resp_addr;9900	__le16	component_id;9901	__le16	segment_id;9902	__le16	instance;9903	__le16	unused_0;9904	u8	seg_flags;9905	#define DBG_COREDUMP_INITIATE_REQ_SEG_FLAGS_LIVE_DATA                0x1UL9906	#define DBG_COREDUMP_INITIATE_REQ_SEG_FLAGS_CRASH_DATA               0x2UL9907	#define DBG_COREDUMP_INITIATE_REQ_SEG_FLAGS_COLLECT_CTX_L1_CACHE     0x4UL9908	u8	unused_1[7];9909};9910 9911/* hwrm_dbg_coredump_initiate_output (size:128b/16B) */9912struct hwrm_dbg_coredump_initiate_output {9913	__le16	error_code;9914	__le16	req_type;9915	__le16	seq_id;9916	__le16	resp_len;9917	u8	unused_0[7];9918	u8	valid;9919};9920 9921/* coredump_data_hdr (size:128b/16B) */9922struct coredump_data_hdr {9923	__le32	address;9924	__le32	flags_length;9925	#define COREDUMP_DATA_HDR_FLAGS_LENGTH_ACTUAL_LEN_MASK     0xffffffUL9926	#define COREDUMP_DATA_HDR_FLAGS_LENGTH_ACTUAL_LEN_SFT      09927	#define COREDUMP_DATA_HDR_FLAGS_LENGTH_INDIRECT_ACCESS     0x1000000UL9928	__le32	instance;9929	__le32	next_offset;9930};9931 9932/* hwrm_dbg_coredump_retrieve_input (size:448b/56B) */9933struct hwrm_dbg_coredump_retrieve_input {9934	__le16	req_type;9935	__le16	cmpl_ring;9936	__le16	seq_id;9937	__le16	target_id;9938	__le64	resp_addr;9939	__le64	host_dest_addr;9940	__le32	host_buf_len;9941	__le32	unused_0;9942	__le16	component_id;9943	__le16	segment_id;9944	__le16	instance;9945	__le16	unused_1;9946	u8	seg_flags;9947	u8	unused_2;9948	__le16	unused_3;9949	__le32	unused_4;9950	__le32	seq_no;9951	__le32	unused_5;9952};9953 9954/* hwrm_dbg_coredump_retrieve_output (size:128b/16B) */9955struct hwrm_dbg_coredump_retrieve_output {9956	__le16	error_code;9957	__le16	req_type;9958	__le16	seq_id;9959	__le16	resp_len;9960	u8	flags;9961	#define DBG_COREDUMP_RETRIEVE_RESP_FLAGS_MORE     0x1UL9962	u8	unused_0;9963	__le16	data_len;9964	u8	unused_1[3];9965	u8	valid;9966};9967 9968/* hwrm_dbg_ring_info_get_input (size:192b/24B) */9969struct hwrm_dbg_ring_info_get_input {9970	__le16	req_type;9971	__le16	cmpl_ring;9972	__le16	seq_id;9973	__le16	target_id;9974	__le64	resp_addr;9975	u8	ring_type;9976	#define DBG_RING_INFO_GET_REQ_RING_TYPE_L2_CMPL 0x0UL9977	#define DBG_RING_INFO_GET_REQ_RING_TYPE_TX      0x1UL9978	#define DBG_RING_INFO_GET_REQ_RING_TYPE_RX      0x2UL9979	#define DBG_RING_INFO_GET_REQ_RING_TYPE_NQ      0x3UL9980	#define DBG_RING_INFO_GET_REQ_RING_TYPE_LAST   DBG_RING_INFO_GET_REQ_RING_TYPE_NQ9981	u8	unused_0[3];9982	__le32	fw_ring_id;9983};9984 9985/* hwrm_dbg_ring_info_get_output (size:192b/24B) */9986struct hwrm_dbg_ring_info_get_output {9987	__le16	error_code;9988	__le16	req_type;9989	__le16	seq_id;9990	__le16	resp_len;9991	__le32	producer_index;9992	__le32	consumer_index;9993	__le32	cag_vector_ctrl;9994	__le16	st_tag;9995	u8	unused_0;9996	u8	valid;9997};9998 9999/* hwrm_nvm_read_input (size:320b/40B) */10000struct hwrm_nvm_read_input {10001	__le16	req_type;10002	__le16	cmpl_ring;10003	__le16	seq_id;10004	__le16	target_id;10005	__le64	resp_addr;10006	__le64	host_dest_addr;10007	__le16	dir_idx;10008	u8	unused_0[2];10009	__le32	offset;10010	__le32	len;10011	u8	unused_1[4];10012};10013 10014/* hwrm_nvm_read_output (size:128b/16B) */10015struct hwrm_nvm_read_output {10016	__le16	error_code;10017	__le16	req_type;10018	__le16	seq_id;10019	__le16	resp_len;10020	u8	unused_0[7];10021	u8	valid;10022};10023 10024/* hwrm_nvm_get_dir_entries_input (size:192b/24B) */10025struct hwrm_nvm_get_dir_entries_input {10026	__le16	req_type;10027	__le16	cmpl_ring;10028	__le16	seq_id;10029	__le16	target_id;10030	__le64	resp_addr;10031	__le64	host_dest_addr;10032};10033 10034/* hwrm_nvm_get_dir_entries_output (size:128b/16B) */10035struct hwrm_nvm_get_dir_entries_output {10036	__le16	error_code;10037	__le16	req_type;10038	__le16	seq_id;10039	__le16	resp_len;10040	u8	unused_0[7];10041	u8	valid;10042};10043 10044/* hwrm_nvm_get_dir_info_input (size:128b/16B) */10045struct hwrm_nvm_get_dir_info_input {10046	__le16	req_type;10047	__le16	cmpl_ring;10048	__le16	seq_id;10049	__le16	target_id;10050	__le64	resp_addr;10051};10052 10053/* hwrm_nvm_get_dir_info_output (size:192b/24B) */10054struct hwrm_nvm_get_dir_info_output {10055	__le16	error_code;10056	__le16	req_type;10057	__le16	seq_id;10058	__le16	resp_len;10059	__le32	entries;10060	__le32	entry_length;10061	u8	unused_0[7];10062	u8	valid;10063};10064 10065/* hwrm_nvm_write_input (size:448b/56B) */10066struct hwrm_nvm_write_input {10067	__le16	req_type;10068	__le16	cmpl_ring;10069	__le16	seq_id;10070	__le16	target_id;10071	__le64	resp_addr;10072	__le64	host_src_addr;10073	__le16	dir_type;10074	__le16	dir_ordinal;10075	__le16	dir_ext;10076	__le16	dir_attr;10077	__le32	dir_data_length;10078	__le16	option;10079	__le16	flags;10080	#define NVM_WRITE_REQ_FLAGS_KEEP_ORIG_ACTIVE_IMG     0x1UL10081	#define NVM_WRITE_REQ_FLAGS_BATCH_MODE               0x2UL10082	#define NVM_WRITE_REQ_FLAGS_BATCH_LAST               0x4UL10083	__le32	dir_item_length;10084	__le32	offset;10085	__le32	len;10086	__le32	unused_0;10087};10088 10089/* hwrm_nvm_write_output (size:128b/16B) */10090struct hwrm_nvm_write_output {10091	__le16	error_code;10092	__le16	req_type;10093	__le16	seq_id;10094	__le16	resp_len;10095	__le32	dir_item_length;10096	__le16	dir_idx;10097	u8	unused_0;10098	u8	valid;10099};10100 10101/* hwrm_nvm_write_cmd_err (size:64b/8B) */10102struct hwrm_nvm_write_cmd_err {10103	u8	code;10104	#define NVM_WRITE_CMD_ERR_CODE_UNKNOWN  0x0UL10105	#define NVM_WRITE_CMD_ERR_CODE_FRAG_ERR 0x1UL10106	#define NVM_WRITE_CMD_ERR_CODE_NO_SPACE 0x2UL10107	#define NVM_WRITE_CMD_ERR_CODE_LAST    NVM_WRITE_CMD_ERR_CODE_NO_SPACE10108	u8	unused_0[7];10109};10110 10111/* hwrm_nvm_modify_input (size:320b/40B) */10112struct hwrm_nvm_modify_input {10113	__le16	req_type;10114	__le16	cmpl_ring;10115	__le16	seq_id;10116	__le16	target_id;10117	__le64	resp_addr;10118	__le64	host_src_addr;10119	__le16	dir_idx;10120	__le16	flags;10121	#define NVM_MODIFY_REQ_FLAGS_BATCH_MODE     0x1UL10122	#define NVM_MODIFY_REQ_FLAGS_BATCH_LAST     0x2UL10123	__le32	offset;10124	__le32	len;10125	u8	unused_1[4];10126};10127 10128/* hwrm_nvm_modify_output (size:128b/16B) */10129struct hwrm_nvm_modify_output {10130	__le16	error_code;10131	__le16	req_type;10132	__le16	seq_id;10133	__le16	resp_len;10134	u8	unused_0[7];10135	u8	valid;10136};10137 10138/* hwrm_nvm_find_dir_entry_input (size:256b/32B) */10139struct hwrm_nvm_find_dir_entry_input {10140	__le16	req_type;10141	__le16	cmpl_ring;10142	__le16	seq_id;10143	__le16	target_id;10144	__le64	resp_addr;10145	__le32	enables;10146	#define NVM_FIND_DIR_ENTRY_REQ_ENABLES_DIR_IDX_VALID     0x1UL10147	__le16	dir_idx;10148	__le16	dir_type;10149	__le16	dir_ordinal;10150	__le16	dir_ext;10151	u8	opt_ordinal;10152	#define NVM_FIND_DIR_ENTRY_REQ_OPT_ORDINAL_MASK 0x3UL10153	#define NVM_FIND_DIR_ENTRY_REQ_OPT_ORDINAL_SFT 010154	#define NVM_FIND_DIR_ENTRY_REQ_OPT_ORDINAL_EQ    0x0UL10155	#define NVM_FIND_DIR_ENTRY_REQ_OPT_ORDINAL_GE    0x1UL10156	#define NVM_FIND_DIR_ENTRY_REQ_OPT_ORDINAL_GT    0x2UL10157	#define NVM_FIND_DIR_ENTRY_REQ_OPT_ORDINAL_LAST NVM_FIND_DIR_ENTRY_REQ_OPT_ORDINAL_GT10158	u8	unused_0[3];10159};10160 10161/* hwrm_nvm_find_dir_entry_output (size:256b/32B) */10162struct hwrm_nvm_find_dir_entry_output {10163	__le16	error_code;10164	__le16	req_type;10165	__le16	seq_id;10166	__le16	resp_len;10167	__le32	dir_item_length;10168	__le32	dir_data_length;10169	__le32	fw_ver;10170	__le16	dir_ordinal;10171	__le16	dir_idx;10172	u8	unused_0[7];10173	u8	valid;10174};10175 10176/* hwrm_nvm_erase_dir_entry_input (size:192b/24B) */10177struct hwrm_nvm_erase_dir_entry_input {10178	__le16	req_type;10179	__le16	cmpl_ring;10180	__le16	seq_id;10181	__le16	target_id;10182	__le64	resp_addr;10183	__le16	dir_idx;10184	u8	unused_0[6];10185};10186 10187/* hwrm_nvm_erase_dir_entry_output (size:128b/16B) */10188struct hwrm_nvm_erase_dir_entry_output {10189	__le16	error_code;10190	__le16	req_type;10191	__le16	seq_id;10192	__le16	resp_len;10193	u8	unused_0[7];10194	u8	valid;10195};10196 10197/* hwrm_nvm_get_dev_info_input (size:192b/24B) */10198struct hwrm_nvm_get_dev_info_input {10199	__le16	req_type;10200	__le16	cmpl_ring;10201	__le16	seq_id;10202	__le16	target_id;10203	__le64	resp_addr;10204	u8	flags;10205	#define NVM_GET_DEV_INFO_REQ_FLAGS_SECURITY_SOC_NVM     0x1UL10206	u8	unused_0[7];10207};10208 10209/* hwrm_nvm_get_dev_info_output (size:768b/96B) */10210struct hwrm_nvm_get_dev_info_output {10211	__le16	error_code;10212	__le16	req_type;10213	__le16	seq_id;10214	__le16	resp_len;10215	__le16	manufacturer_id;10216	__le16	device_id;10217	__le32	sector_size;10218	__le32	nvram_size;10219	__le32	reserved_size;10220	__le32	available_size;10221	u8	nvm_cfg_ver_maj;10222	u8	nvm_cfg_ver_min;10223	u8	nvm_cfg_ver_upd;10224	u8	flags;10225	#define NVM_GET_DEV_INFO_RESP_FLAGS_FW_VER_VALID     0x1UL10226	char	pkg_name[16];10227	__le16	hwrm_fw_major;10228	__le16	hwrm_fw_minor;10229	__le16	hwrm_fw_build;10230	__le16	hwrm_fw_patch;10231	__le16	mgmt_fw_major;10232	__le16	mgmt_fw_minor;10233	__le16	mgmt_fw_build;10234	__le16	mgmt_fw_patch;10235	__le16	roce_fw_major;10236	__le16	roce_fw_minor;10237	__le16	roce_fw_build;10238	__le16	roce_fw_patch;10239	__le16	netctrl_fw_major;10240	__le16	netctrl_fw_minor;10241	__le16	netctrl_fw_build;10242	__le16	netctrl_fw_patch;10243	__le16	srt2_fw_major;10244	__le16	srt2_fw_minor;10245	__le16	srt2_fw_build;10246	__le16	srt2_fw_patch;10247	u8	unused_0[7];10248	u8	valid;10249};10250 10251/* hwrm_nvm_mod_dir_entry_input (size:256b/32B) */10252struct hwrm_nvm_mod_dir_entry_input {10253	__le16	req_type;10254	__le16	cmpl_ring;10255	__le16	seq_id;10256	__le16	target_id;10257	__le64	resp_addr;10258	__le32	enables;10259	#define NVM_MOD_DIR_ENTRY_REQ_ENABLES_CHECKSUM     0x1UL10260	__le16	dir_idx;10261	__le16	dir_ordinal;10262	__le16	dir_ext;10263	__le16	dir_attr;10264	__le32	checksum;10265};10266 10267/* hwrm_nvm_mod_dir_entry_output (size:128b/16B) */10268struct hwrm_nvm_mod_dir_entry_output {10269	__le16	error_code;10270	__le16	req_type;10271	__le16	seq_id;10272	__le16	resp_len;10273	u8	unused_0[7];10274	u8	valid;10275};10276 10277/* hwrm_nvm_verify_update_input (size:192b/24B) */10278struct hwrm_nvm_verify_update_input {10279	__le16	req_type;10280	__le16	cmpl_ring;10281	__le16	seq_id;10282	__le16	target_id;10283	__le64	resp_addr;10284	__le16	dir_type;10285	__le16	dir_ordinal;10286	__le16	dir_ext;10287	u8	unused_0[2];10288};10289 10290/* hwrm_nvm_verify_update_output (size:128b/16B) */10291struct hwrm_nvm_verify_update_output {10292	__le16	error_code;10293	__le16	req_type;10294	__le16	seq_id;10295	__le16	resp_len;10296	u8	unused_0[7];10297	u8	valid;10298};10299 10300/* hwrm_nvm_install_update_input (size:192b/24B) */10301struct hwrm_nvm_install_update_input {10302	__le16	req_type;10303	__le16	cmpl_ring;10304	__le16	seq_id;10305	__le16	target_id;10306	__le64	resp_addr;10307	__le32	install_type;10308	#define NVM_INSTALL_UPDATE_REQ_INSTALL_TYPE_NORMAL 0x0UL10309	#define NVM_INSTALL_UPDATE_REQ_INSTALL_TYPE_ALL    0xffffffffUL10310	#define NVM_INSTALL_UPDATE_REQ_INSTALL_TYPE_LAST  NVM_INSTALL_UPDATE_REQ_INSTALL_TYPE_ALL10311	__le16	flags;10312	#define NVM_INSTALL_UPDATE_REQ_FLAGS_ERASE_UNUSED_SPACE     0x1UL10313	#define NVM_INSTALL_UPDATE_REQ_FLAGS_REMOVE_UNUSED_PKG      0x2UL10314	#define NVM_INSTALL_UPDATE_REQ_FLAGS_ALLOWED_TO_DEFRAG      0x4UL10315	#define NVM_INSTALL_UPDATE_REQ_FLAGS_VERIFY_ONLY            0x8UL10316	u8	unused_0[2];10317};10318 10319/* hwrm_nvm_install_update_output (size:192b/24B) */10320struct hwrm_nvm_install_update_output {10321	__le16	error_code;10322	__le16	req_type;10323	__le16	seq_id;10324	__le16	resp_len;10325	__le64	installed_items;10326	u8	result;10327	#define NVM_INSTALL_UPDATE_RESP_RESULT_SUCCESS                      0x0UL10328	#define NVM_INSTALL_UPDATE_RESP_RESULT_FAILURE                      0xffUL10329	#define NVM_INSTALL_UPDATE_RESP_RESULT_MALLOC_FAILURE               0xfdUL10330	#define NVM_INSTALL_UPDATE_RESP_RESULT_INVALID_INDEX_PARAMETER      0xfbUL10331	#define NVM_INSTALL_UPDATE_RESP_RESULT_INVALID_TYPE_PARAMETER       0xf3UL10332	#define NVM_INSTALL_UPDATE_RESP_RESULT_INVALID_PREREQUISITE         0xf2UL10333	#define NVM_INSTALL_UPDATE_RESP_RESULT_INVALID_FILE_HEADER          0xecUL10334	#define NVM_INSTALL_UPDATE_RESP_RESULT_INVALID_SIGNATURE            0xebUL10335	#define NVM_INSTALL_UPDATE_RESP_RESULT_INVALID_PROP_STREAM          0xeaUL10336	#define NVM_INSTALL_UPDATE_RESP_RESULT_INVALID_PROP_LENGTH          0xe9UL10337	#define NVM_INSTALL_UPDATE_RESP_RESULT_INVALID_MANIFEST             0xe8UL10338	#define NVM_INSTALL_UPDATE_RESP_RESULT_INVALID_TRAILER              0xe7UL10339	#define NVM_INSTALL_UPDATE_RESP_RESULT_INVALID_CHECKSUM             0xe6UL10340	#define NVM_INSTALL_UPDATE_RESP_RESULT_INVALID_ITEM_CHECKSUM        0xe5UL10341	#define NVM_INSTALL_UPDATE_RESP_RESULT_INVALID_DATA_LENGTH          0xe4UL10342	#define NVM_INSTALL_UPDATE_RESP_RESULT_INVALID_DIRECTIVE            0xe1UL10343	#define NVM_INSTALL_UPDATE_RESP_RESULT_UNSUPPORTED_CHIP_REV         0xceUL10344	#define NVM_INSTALL_UPDATE_RESP_RESULT_UNSUPPORTED_DEVICE_ID        0xcdUL10345	#define NVM_INSTALL_UPDATE_RESP_RESULT_UNSUPPORTED_SUBSYS_VENDOR    0xccUL10346	#define NVM_INSTALL_UPDATE_RESP_RESULT_UNSUPPORTED_SUBSYS_ID        0xcbUL10347	#define NVM_INSTALL_UPDATE_RESP_RESULT_UNSUPPORTED_PLATFORM         0xc5UL10348	#define NVM_INSTALL_UPDATE_RESP_RESULT_DUPLICATE_ITEM               0xc4UL10349	#define NVM_INSTALL_UPDATE_RESP_RESULT_ZERO_LENGTH_ITEM             0xc3UL10350	#define NVM_INSTALL_UPDATE_RESP_RESULT_INSTALL_CHECKSUM_ERROR       0xb9UL10351	#define NVM_INSTALL_UPDATE_RESP_RESULT_INSTALL_DATA_ERROR           0xb8UL10352	#define NVM_INSTALL_UPDATE_RESP_RESULT_INSTALL_AUTHENTICATION_ERROR 0xb7UL10353	#define NVM_INSTALL_UPDATE_RESP_RESULT_ITEM_NOT_FOUND               0xb0UL10354	#define NVM_INSTALL_UPDATE_RESP_RESULT_ITEM_LOCKED                  0xa7UL10355	#define NVM_INSTALL_UPDATE_RESP_RESULT_LAST                        NVM_INSTALL_UPDATE_RESP_RESULT_ITEM_LOCKED10356	u8	problem_item;10357	#define NVM_INSTALL_UPDATE_RESP_PROBLEM_ITEM_NONE    0x0UL10358	#define NVM_INSTALL_UPDATE_RESP_PROBLEM_ITEM_PACKAGE 0xffUL10359	#define NVM_INSTALL_UPDATE_RESP_PROBLEM_ITEM_LAST   NVM_INSTALL_UPDATE_RESP_PROBLEM_ITEM_PACKAGE10360	u8	reset_required;10361	#define NVM_INSTALL_UPDATE_RESP_RESET_REQUIRED_NONE  0x0UL10362	#define NVM_INSTALL_UPDATE_RESP_RESET_REQUIRED_PCI   0x1UL10363	#define NVM_INSTALL_UPDATE_RESP_RESET_REQUIRED_POWER 0x2UL10364	#define NVM_INSTALL_UPDATE_RESP_RESET_REQUIRED_LAST NVM_INSTALL_UPDATE_RESP_RESET_REQUIRED_POWER10365	u8	unused_0[4];10366	u8	valid;10367};10368 10369/* hwrm_nvm_install_update_cmd_err (size:64b/8B) */10370struct hwrm_nvm_install_update_cmd_err {10371	u8	code;10372	#define NVM_INSTALL_UPDATE_CMD_ERR_CODE_UNKNOWN            0x0UL10373	#define NVM_INSTALL_UPDATE_CMD_ERR_CODE_FRAG_ERR           0x1UL10374	#define NVM_INSTALL_UPDATE_CMD_ERR_CODE_NO_SPACE           0x2UL10375	#define NVM_INSTALL_UPDATE_CMD_ERR_CODE_ANTI_ROLLBACK      0x3UL10376	#define NVM_INSTALL_UPDATE_CMD_ERR_CODE_NO_VOLTREG_SUPPORT 0x4UL10377	#define NVM_INSTALL_UPDATE_CMD_ERR_CODE_LAST              NVM_INSTALL_UPDATE_CMD_ERR_CODE_NO_VOLTREG_SUPPORT10378	u8	unused_0[7];10379};10380 10381/* hwrm_nvm_get_variable_input (size:320b/40B) */10382struct hwrm_nvm_get_variable_input {10383	__le16	req_type;10384	__le16	cmpl_ring;10385	__le16	seq_id;10386	__le16	target_id;10387	__le64	resp_addr;10388	__le64	dest_data_addr;10389	__le16	data_len;10390	__le16	option_num;10391	#define NVM_GET_VARIABLE_REQ_OPTION_NUM_RSVD_0    0x0UL10392	#define NVM_GET_VARIABLE_REQ_OPTION_NUM_RSVD_FFFF 0xffffUL10393	#define NVM_GET_VARIABLE_REQ_OPTION_NUM_LAST     NVM_GET_VARIABLE_REQ_OPTION_NUM_RSVD_FFFF10394	__le16	dimensions;10395	__le16	index_0;10396	__le16	index_1;10397	__le16	index_2;10398	__le16	index_3;10399	u8	flags;10400	#define NVM_GET_VARIABLE_REQ_FLAGS_FACTORY_DFLT     0x1UL10401	u8	unused_0;10402};10403 10404/* hwrm_nvm_get_variable_output (size:128b/16B) */10405struct hwrm_nvm_get_variable_output {10406	__le16	error_code;10407	__le16	req_type;10408	__le16	seq_id;10409	__le16	resp_len;10410	__le16	data_len;10411	__le16	option_num;10412	#define NVM_GET_VARIABLE_RESP_OPTION_NUM_RSVD_0    0x0UL10413	#define NVM_GET_VARIABLE_RESP_OPTION_NUM_RSVD_FFFF 0xffffUL10414	#define NVM_GET_VARIABLE_RESP_OPTION_NUM_LAST     NVM_GET_VARIABLE_RESP_OPTION_NUM_RSVD_FFFF10415	u8	unused_0[3];10416	u8	valid;10417};10418 10419/* hwrm_nvm_get_variable_cmd_err (size:64b/8B) */10420struct hwrm_nvm_get_variable_cmd_err {10421	u8	code;10422	#define NVM_GET_VARIABLE_CMD_ERR_CODE_UNKNOWN       0x0UL10423	#define NVM_GET_VARIABLE_CMD_ERR_CODE_VAR_NOT_EXIST 0x1UL10424	#define NVM_GET_VARIABLE_CMD_ERR_CODE_CORRUPT_VAR   0x2UL10425	#define NVM_GET_VARIABLE_CMD_ERR_CODE_LEN_TOO_SHORT 0x3UL10426	#define NVM_GET_VARIABLE_CMD_ERR_CODE_LAST         NVM_GET_VARIABLE_CMD_ERR_CODE_LEN_TOO_SHORT10427	u8	unused_0[7];10428};10429 10430/* hwrm_nvm_set_variable_input (size:320b/40B) */10431struct hwrm_nvm_set_variable_input {10432	__le16	req_type;10433	__le16	cmpl_ring;10434	__le16	seq_id;10435	__le16	target_id;10436	__le64	resp_addr;10437	__le64	src_data_addr;10438	__le16	data_len;10439	__le16	option_num;10440	#define NVM_SET_VARIABLE_REQ_OPTION_NUM_RSVD_0    0x0UL10441	#define NVM_SET_VARIABLE_REQ_OPTION_NUM_RSVD_FFFF 0xffffUL10442	#define NVM_SET_VARIABLE_REQ_OPTION_NUM_LAST     NVM_SET_VARIABLE_REQ_OPTION_NUM_RSVD_FFFF10443	__le16	dimensions;10444	__le16	index_0;10445	__le16	index_1;10446	__le16	index_2;10447	__le16	index_3;10448	u8	flags;10449	#define NVM_SET_VARIABLE_REQ_FLAGS_FORCE_FLUSH                0x1UL10450	#define NVM_SET_VARIABLE_REQ_FLAGS_ENCRYPT_MODE_MASK          0xeUL10451	#define NVM_SET_VARIABLE_REQ_FLAGS_ENCRYPT_MODE_SFT           110452	#define NVM_SET_VARIABLE_REQ_FLAGS_ENCRYPT_MODE_NONE            (0x0UL << 1)10453	#define NVM_SET_VARIABLE_REQ_FLAGS_ENCRYPT_MODE_HMAC_SHA1       (0x1UL << 1)10454	#define NVM_SET_VARIABLE_REQ_FLAGS_ENCRYPT_MODE_AES256          (0x2UL << 1)10455	#define NVM_SET_VARIABLE_REQ_FLAGS_ENCRYPT_MODE_HMAC_SHA1_AUTH  (0x3UL << 1)10456	#define NVM_SET_VARIABLE_REQ_FLAGS_ENCRYPT_MODE_LAST           NVM_SET_VARIABLE_REQ_FLAGS_ENCRYPT_MODE_HMAC_SHA1_AUTH10457	#define NVM_SET_VARIABLE_REQ_FLAGS_FLAGS_UNUSED_0_MASK        0x70UL10458	#define NVM_SET_VARIABLE_REQ_FLAGS_FLAGS_UNUSED_0_SFT         410459	#define NVM_SET_VARIABLE_REQ_FLAGS_FACTORY_DEFAULT            0x80UL10460	u8	unused_0;10461};10462 10463/* hwrm_nvm_set_variable_output (size:128b/16B) */10464struct hwrm_nvm_set_variable_output {10465	__le16	error_code;10466	__le16	req_type;10467	__le16	seq_id;10468	__le16	resp_len;10469	u8	unused_0[7];10470	u8	valid;10471};10472 10473/* hwrm_nvm_set_variable_cmd_err (size:64b/8B) */10474struct hwrm_nvm_set_variable_cmd_err {10475	u8	code;10476	#define NVM_SET_VARIABLE_CMD_ERR_CODE_UNKNOWN       0x0UL10477	#define NVM_SET_VARIABLE_CMD_ERR_CODE_VAR_NOT_EXIST 0x1UL10478	#define NVM_SET_VARIABLE_CMD_ERR_CODE_CORRUPT_VAR   0x2UL10479	#define NVM_SET_VARIABLE_CMD_ERR_CODE_LAST         NVM_SET_VARIABLE_CMD_ERR_CODE_CORRUPT_VAR10480	u8	unused_0[7];10481};10482 10483/* hwrm_selftest_qlist_input (size:128b/16B) */10484struct hwrm_selftest_qlist_input {10485	__le16	req_type;10486	__le16	cmpl_ring;10487	__le16	seq_id;10488	__le16	target_id;10489	__le64	resp_addr;10490};10491 10492/* hwrm_selftest_qlist_output (size:2240b/280B) */10493struct hwrm_selftest_qlist_output {10494	__le16	error_code;10495	__le16	req_type;10496	__le16	seq_id;10497	__le16	resp_len;10498	u8	num_tests;10499	u8	available_tests;10500	#define SELFTEST_QLIST_RESP_AVAILABLE_TESTS_NVM_TEST                 0x1UL10501	#define SELFTEST_QLIST_RESP_AVAILABLE_TESTS_LINK_TEST                0x2UL10502	#define SELFTEST_QLIST_RESP_AVAILABLE_TESTS_REGISTER_TEST            0x4UL10503	#define SELFTEST_QLIST_RESP_AVAILABLE_TESTS_MEMORY_TEST              0x8UL10504	#define SELFTEST_QLIST_RESP_AVAILABLE_TESTS_PCIE_SERDES_TEST         0x10UL10505	#define SELFTEST_QLIST_RESP_AVAILABLE_TESTS_ETHERNET_SERDES_TEST     0x20UL10506	u8	offline_tests;10507	#define SELFTEST_QLIST_RESP_OFFLINE_TESTS_NVM_TEST                 0x1UL10508	#define SELFTEST_QLIST_RESP_OFFLINE_TESTS_LINK_TEST                0x2UL10509	#define SELFTEST_QLIST_RESP_OFFLINE_TESTS_REGISTER_TEST            0x4UL10510	#define SELFTEST_QLIST_RESP_OFFLINE_TESTS_MEMORY_TEST              0x8UL10511	#define SELFTEST_QLIST_RESP_OFFLINE_TESTS_PCIE_SERDES_TEST         0x10UL10512	#define SELFTEST_QLIST_RESP_OFFLINE_TESTS_ETHERNET_SERDES_TEST     0x20UL10513	u8	unused_0;10514	__le16	test_timeout;10515	u8	unused_1[2];10516	char	test_name[8][32];10517	u8	eyescope_target_BER_support;10518	#define SELFTEST_QLIST_RESP_EYESCOPE_TARGET_BER_SUPPORT_BER_1E8_SUPPORTED  0x0UL10519	#define SELFTEST_QLIST_RESP_EYESCOPE_TARGET_BER_SUPPORT_BER_1E9_SUPPORTED  0x1UL10520	#define SELFTEST_QLIST_RESP_EYESCOPE_TARGET_BER_SUPPORT_BER_1E10_SUPPORTED 0x2UL10521	#define SELFTEST_QLIST_RESP_EYESCOPE_TARGET_BER_SUPPORT_BER_1E11_SUPPORTED 0x3UL10522	#define SELFTEST_QLIST_RESP_EYESCOPE_TARGET_BER_SUPPORT_BER_1E12_SUPPORTED 0x4UL10523	#define SELFTEST_QLIST_RESP_EYESCOPE_TARGET_BER_SUPPORT_LAST              SELFTEST_QLIST_RESP_EYESCOPE_TARGET_BER_SUPPORT_BER_1E12_SUPPORTED10524	u8	unused_2[6];10525	u8	valid;10526};10527 10528/* hwrm_selftest_exec_input (size:192b/24B) */10529struct hwrm_selftest_exec_input {10530	__le16	req_type;10531	__le16	cmpl_ring;10532	__le16	seq_id;10533	__le16	target_id;10534	__le64	resp_addr;10535	u8	flags;10536	#define SELFTEST_EXEC_REQ_FLAGS_NVM_TEST                 0x1UL10537	#define SELFTEST_EXEC_REQ_FLAGS_LINK_TEST                0x2UL10538	#define SELFTEST_EXEC_REQ_FLAGS_REGISTER_TEST            0x4UL10539	#define SELFTEST_EXEC_REQ_FLAGS_MEMORY_TEST              0x8UL10540	#define SELFTEST_EXEC_REQ_FLAGS_PCIE_SERDES_TEST         0x10UL10541	#define SELFTEST_EXEC_REQ_FLAGS_ETHERNET_SERDES_TEST     0x20UL10542	u8	unused_0[7];10543};10544 10545/* hwrm_selftest_exec_output (size:128b/16B) */10546struct hwrm_selftest_exec_output {10547	__le16	error_code;10548	__le16	req_type;10549	__le16	seq_id;10550	__le16	resp_len;10551	u8	requested_tests;10552	#define SELFTEST_EXEC_RESP_REQUESTED_TESTS_NVM_TEST                 0x1UL10553	#define SELFTEST_EXEC_RESP_REQUESTED_TESTS_LINK_TEST                0x2UL10554	#define SELFTEST_EXEC_RESP_REQUESTED_TESTS_REGISTER_TEST            0x4UL10555	#define SELFTEST_EXEC_RESP_REQUESTED_TESTS_MEMORY_TEST              0x8UL10556	#define SELFTEST_EXEC_RESP_REQUESTED_TESTS_PCIE_SERDES_TEST         0x10UL10557	#define SELFTEST_EXEC_RESP_REQUESTED_TESTS_ETHERNET_SERDES_TEST     0x20UL10558	u8	test_success;10559	#define SELFTEST_EXEC_RESP_TEST_SUCCESS_NVM_TEST                 0x1UL10560	#define SELFTEST_EXEC_RESP_TEST_SUCCESS_LINK_TEST                0x2UL10561	#define SELFTEST_EXEC_RESP_TEST_SUCCESS_REGISTER_TEST            0x4UL10562	#define SELFTEST_EXEC_RESP_TEST_SUCCESS_MEMORY_TEST              0x8UL10563	#define SELFTEST_EXEC_RESP_TEST_SUCCESS_PCIE_SERDES_TEST         0x10UL10564	#define SELFTEST_EXEC_RESP_TEST_SUCCESS_ETHERNET_SERDES_TEST     0x20UL10565	u8	unused_0[5];10566	u8	valid;10567};10568 10569/* hwrm_selftest_irq_input (size:128b/16B) */10570struct hwrm_selftest_irq_input {10571	__le16	req_type;10572	__le16	cmpl_ring;10573	__le16	seq_id;10574	__le16	target_id;10575	__le64	resp_addr;10576};10577 10578/* hwrm_selftest_irq_output (size:128b/16B) */10579struct hwrm_selftest_irq_output {10580	__le16	error_code;10581	__le16	req_type;10582	__le16	seq_id;10583	__le16	resp_len;10584	u8	unused_0[7];10585	u8	valid;10586};10587 10588/* dbc_dbc (size:64b/8B) */10589struct dbc_dbc {10590	__le32	index;10591	#define DBC_DBC_INDEX_MASK 0xffffffUL10592	#define DBC_DBC_INDEX_SFT  010593	#define DBC_DBC_EPOCH      0x1000000UL10594	#define DBC_DBC_TOGGLE_MASK 0x6000000UL10595	#define DBC_DBC_TOGGLE_SFT 2510596	__le32	type_path_xid;10597	#define DBC_DBC_XID_MASK          0xfffffUL10598	#define DBC_DBC_XID_SFT           010599	#define DBC_DBC_PATH_MASK         0x3000000UL10600	#define DBC_DBC_PATH_SFT          2410601	#define DBC_DBC_PATH_ROCE           (0x0UL << 24)10602	#define DBC_DBC_PATH_L2             (0x1UL << 24)10603	#define DBC_DBC_PATH_ENGINE         (0x2UL << 24)10604	#define DBC_DBC_PATH_LAST          DBC_DBC_PATH_ENGINE10605	#define DBC_DBC_VALID             0x4000000UL10606	#define DBC_DBC_DEBUG_TRACE       0x8000000UL10607	#define DBC_DBC_TYPE_MASK         0xf0000000UL10608	#define DBC_DBC_TYPE_SFT          2810609	#define DBC_DBC_TYPE_SQ             (0x0UL << 28)10610	#define DBC_DBC_TYPE_RQ             (0x1UL << 28)10611	#define DBC_DBC_TYPE_SRQ            (0x2UL << 28)10612	#define DBC_DBC_TYPE_SRQ_ARM        (0x3UL << 28)10613	#define DBC_DBC_TYPE_CQ             (0x4UL << 28)10614	#define DBC_DBC_TYPE_CQ_ARMSE       (0x5UL << 28)10615	#define DBC_DBC_TYPE_CQ_ARMALL      (0x6UL << 28)10616	#define DBC_DBC_TYPE_CQ_ARMENA      (0x7UL << 28)10617	#define DBC_DBC_TYPE_SRQ_ARMENA     (0x8UL << 28)10618	#define DBC_DBC_TYPE_CQ_CUTOFF_ACK  (0x9UL << 28)10619	#define DBC_DBC_TYPE_NQ             (0xaUL << 28)10620	#define DBC_DBC_TYPE_NQ_ARM         (0xbUL << 28)10621	#define DBC_DBC_TYPE_NQ_MASK        (0xeUL << 28)10622	#define DBC_DBC_TYPE_NULL           (0xfUL << 28)10623	#define DBC_DBC_TYPE_LAST          DBC_DBC_TYPE_NULL10624};10625 10626/* db_push_start (size:64b/8B) */10627struct db_push_start {10628	u64	db;10629	#define DB_PUSH_START_DB_INDEX_MASK     0xffffffUL10630	#define DB_PUSH_START_DB_INDEX_SFT      010631	#define DB_PUSH_START_DB_PI_LO_MASK     0xff000000UL10632	#define DB_PUSH_START_DB_PI_LO_SFT      2410633	#define DB_PUSH_START_DB_XID_MASK       0xfffff00000000ULL10634	#define DB_PUSH_START_DB_XID_SFT        3210635	#define DB_PUSH_START_DB_PI_HI_MASK     0xf0000000000000ULL10636	#define DB_PUSH_START_DB_PI_HI_SFT      5210637	#define DB_PUSH_START_DB_TYPE_MASK      0xf000000000000000ULL10638	#define DB_PUSH_START_DB_TYPE_SFT       6010639	#define DB_PUSH_START_DB_TYPE_PUSH_START  (0xcULL << 60)10640	#define DB_PUSH_START_DB_TYPE_PUSH_END    (0xdULL << 60)10641	#define DB_PUSH_START_DB_TYPE_LAST       DB_PUSH_START_DB_TYPE_PUSH_END10642};10643 10644/* db_push_end (size:64b/8B) */10645struct db_push_end {10646	u64	db;10647	#define DB_PUSH_END_DB_INDEX_MASK      0xffffffUL10648	#define DB_PUSH_END_DB_INDEX_SFT       010649	#define DB_PUSH_END_DB_PI_LO_MASK      0xff000000UL10650	#define DB_PUSH_END_DB_PI_LO_SFT       2410651	#define DB_PUSH_END_DB_XID_MASK        0xfffff00000000ULL10652	#define DB_PUSH_END_DB_XID_SFT         3210653	#define DB_PUSH_END_DB_PI_HI_MASK      0xf0000000000000ULL10654	#define DB_PUSH_END_DB_PI_HI_SFT       5210655	#define DB_PUSH_END_DB_PATH_MASK       0x300000000000000ULL10656	#define DB_PUSH_END_DB_PATH_SFT        5610657	#define DB_PUSH_END_DB_PATH_ROCE         (0x0ULL << 56)10658	#define DB_PUSH_END_DB_PATH_L2           (0x1ULL << 56)10659	#define DB_PUSH_END_DB_PATH_ENGINE       (0x2ULL << 56)10660	#define DB_PUSH_END_DB_PATH_LAST        DB_PUSH_END_DB_PATH_ENGINE10661	#define DB_PUSH_END_DB_DEBUG_TRACE     0x800000000000000ULL10662	#define DB_PUSH_END_DB_TYPE_MASK       0xf000000000000000ULL10663	#define DB_PUSH_END_DB_TYPE_SFT        6010664	#define DB_PUSH_END_DB_TYPE_PUSH_START   (0xcULL << 60)10665	#define DB_PUSH_END_DB_TYPE_PUSH_END     (0xdULL << 60)10666	#define DB_PUSH_END_DB_TYPE_LAST        DB_PUSH_END_DB_TYPE_PUSH_END10667};10668 10669/* db_push_info (size:64b/8B) */10670struct db_push_info {10671	u32	push_size_push_index;10672	#define DB_PUSH_INFO_PUSH_INDEX_MASK 0xffffffUL10673	#define DB_PUSH_INFO_PUSH_INDEX_SFT 010674	#define DB_PUSH_INFO_PUSH_SIZE_MASK 0x1f000000UL10675	#define DB_PUSH_INFO_PUSH_SIZE_SFT  2410676	u32	reserved32;10677};10678 10679/* fw_status_reg (size:32b/4B) */10680struct fw_status_reg {10681	u32	fw_status;10682	#define FW_STATUS_REG_CODE_MASK              0xffffUL10683	#define FW_STATUS_REG_CODE_SFT               010684	#define FW_STATUS_REG_CODE_READY               0x8000UL10685	#define FW_STATUS_REG_CODE_LAST               FW_STATUS_REG_CODE_READY10686	#define FW_STATUS_REG_IMAGE_DEGRADED         0x10000UL10687	#define FW_STATUS_REG_RECOVERABLE            0x20000UL10688	#define FW_STATUS_REG_CRASHDUMP_ONGOING      0x40000UL10689	#define FW_STATUS_REG_CRASHDUMP_COMPLETE     0x80000UL10690	#define FW_STATUS_REG_SHUTDOWN               0x100000UL10691	#define FW_STATUS_REG_CRASHED_NO_MASTER      0x200000UL10692	#define FW_STATUS_REG_RECOVERING             0x400000UL10693	#define FW_STATUS_REG_MANU_DEBUG_STATUS      0x800000UL10694};10695 10696/* hcomm_status (size:64b/8B) */10697struct hcomm_status {10698	u32	sig_ver;10699	#define HCOMM_STATUS_VER_MASK      0xffUL10700	#define HCOMM_STATUS_VER_SFT       010701	#define HCOMM_STATUS_VER_LATEST      0x1UL10702	#define HCOMM_STATUS_VER_LAST       HCOMM_STATUS_VER_LATEST10703	#define HCOMM_STATUS_SIGNATURE_MASK 0xffffff00UL10704	#define HCOMM_STATUS_SIGNATURE_SFT 810705	#define HCOMM_STATUS_SIGNATURE_VAL   (0x484353UL << 8)10706	#define HCOMM_STATUS_SIGNATURE_LAST HCOMM_STATUS_SIGNATURE_VAL10707	u32	fw_status_loc;10708	#define HCOMM_STATUS_TRUE_ADDR_SPACE_MASK    0x3UL10709	#define HCOMM_STATUS_TRUE_ADDR_SPACE_SFT     010710	#define HCOMM_STATUS_FW_STATUS_LOC_ADDR_SPACE_PCIE_CFG  0x0UL10711	#define HCOMM_STATUS_FW_STATUS_LOC_ADDR_SPACE_GRC       0x1UL10712	#define HCOMM_STATUS_FW_STATUS_LOC_ADDR_SPACE_BAR0      0x2UL10713	#define HCOMM_STATUS_FW_STATUS_LOC_ADDR_SPACE_BAR1      0x3UL10714	#define HCOMM_STATUS_FW_STATUS_LOC_ADDR_SPACE_LAST     HCOMM_STATUS_FW_STATUS_LOC_ADDR_SPACE_BAR110715	#define HCOMM_STATUS_TRUE_OFFSET_MASK        0xfffffffcUL10716	#define HCOMM_STATUS_TRUE_OFFSET_SFT         210717};10718#define HCOMM_STATUS_STRUCT_LOC 0x31001F0UL10719 10720#endif /* _BNXT_HSI_H_ */10721