|
@@ -2074,6 +2074,15 @@ I40E_CHECK_CMD_LENGTH(i40e_aqc_lldp_start);
|
|
|
#define I40E_AQC_CEE_ISCSI_STATUS_MASK (0x7 << I40E_AQC_CEE_ISCSI_STATUS_SHIFT)
|
|
|
#define I40E_AQC_CEE_FIP_STATUS_SHIFT 0x10
|
|
|
#define I40E_AQC_CEE_FIP_STATUS_MASK (0x7 << I40E_AQC_CEE_FIP_STATUS_SHIFT)
|
|
|
+
|
|
|
+/* struct i40e_aqc_get_cee_dcb_cfg_v1_resp was originally defined with
|
|
|
+ * word boundary layout issues, which the Linux compilers silently deal
|
|
|
+ * with by adding padding, making the actual struct larger than designed.
|
|
|
+ * However, the FW compiler for the NIC is less lenient and complains
|
|
|
+ * about the struct. Hence, the struct defined here has an extra byte in
|
|
|
+ * fields reserved3 and reserved4 to directly acknowledge that padding,
|
|
|
+ * and the new length is used in the length check macro.
|
|
|
+ */
|
|
|
struct i40e_aqc_get_cee_dcb_cfg_v1_resp {
|
|
|
u8 reserved1;
|
|
|
u8 oper_num_tc;
|
|
@@ -2081,9 +2090,9 @@ struct i40e_aqc_get_cee_dcb_cfg_v1_resp {
|
|
|
u8 reserved2;
|
|
|
u8 oper_tc_bw[8];
|
|
|
u8 oper_pfc_en;
|
|
|
- u8 reserved3;
|
|
|
+ u8 reserved3[2];
|
|
|
__le16 oper_app_prio;
|
|
|
- u8 reserved4;
|
|
|
+ u8 reserved4[2];
|
|
|
__le16 tlv_status;
|
|
|
};
|
|
|
|