@@ -2418,12 +2418,15 @@ ice_parse_common_caps(struct ice_hw *hw, struct ice_hw_common_caps *caps,
24182418 caps -> reset_restrict_support );
24192419 break ;
24202420 case LIBIE_AQC_CAPS_FW_LAG_SUPPORT :
2421- caps -> roce_lag = !!( number & LIBIE_AQC_BIT_ROCEV2_LAG ) ;
2421+ caps -> roce_lag = number & LIBIE_AQC_BIT_ROCEV2_LAG ;
24222422 ice_debug (hw , ICE_DBG_INIT , "%s: roce_lag = %u\n" ,
24232423 prefix , caps -> roce_lag );
2424- caps -> sriov_lag = !!( number & LIBIE_AQC_BIT_SRIOV_LAG ) ;
2424+ caps -> sriov_lag = number & LIBIE_AQC_BIT_SRIOV_LAG ;
24252425 ice_debug (hw , ICE_DBG_INIT , "%s: sriov_lag = %u\n" ,
24262426 prefix , caps -> sriov_lag );
2427+ caps -> sriov_aa_lag = number & LIBIE_AQC_BIT_SRIOV_AA_LAG ;
2428+ ice_debug (hw , ICE_DBG_INIT , "%s: sriov_aa_lag = %u\n" ,
2429+ prefix , caps -> sriov_aa_lag );
24272430 break ;
24282431 case LIBIE_AQC_CAPS_TX_SCHED_TOPO_COMP_MODE :
24292432 caps -> tx_sched_topo_comp_mode_en = (number == 1 );
@@ -4712,24 +4715,24 @@ ice_aq_dis_lan_txq(struct ice_hw *hw, u8 num_qgrps,
47124715}
47134716
47144717/**
4715- * ice_aq_cfg_lan_txq
4718+ * ice_aq_cfg_lan_txq - send AQ command 0x0C32 to FW
47164719 * @hw: pointer to the hardware structure
47174720 * @buf: buffer for command
47184721 * @buf_size: size of buffer in bytes
47194722 * @num_qs: number of queues being configured
47204723 * @oldport: origination lport
47214724 * @newport: destination lport
4725+ * @mode: cmd_type for move to use
47224726 * @cd: pointer to command details structure or NULL
47234727 *
47244728 * Move/Configure LAN Tx queue (0x0C32)
47254729 *
4726- * There is a better AQ command to use for moving nodes, so only coding
4727- * this one for configuring the node.
4730+ * Return: Zero on success, associated error code on failure.
47284731 */
47294732int
47304733ice_aq_cfg_lan_txq (struct ice_hw * hw , struct ice_aqc_cfg_txqs_buf * buf ,
47314734 u16 buf_size , u16 num_qs , u8 oldport , u8 newport ,
4732- struct ice_sq_cd * cd )
4735+ u8 mode , struct ice_sq_cd * cd )
47334736{
47344737 struct ice_aqc_cfg_txqs * cmd ;
47354738 struct libie_aq_desc desc ;
@@ -4742,10 +4745,12 @@ ice_aq_cfg_lan_txq(struct ice_hw *hw, struct ice_aqc_cfg_txqs_buf *buf,
47424745 if (!buf )
47434746 return - EINVAL ;
47444747
4745- cmd -> cmd_type = ICE_AQC_Q_CFG_TC_CHNG ;
4748+ cmd -> cmd_type = mode ;
47464749 cmd -> num_qs = num_qs ;
47474750 cmd -> port_num_chng = (oldport & ICE_AQC_Q_CFG_SRC_PRT_M );
47484751 cmd -> port_num_chng |= FIELD_PREP (ICE_AQC_Q_CFG_DST_PRT_M , newport );
4752+ cmd -> port_num_chng |= FIELD_PREP (ICE_AQC_Q_CFG_MODE_M ,
4753+ ICE_AQC_Q_CFG_MODE_KEEP_OWN );
47494754 cmd -> time_out = FIELD_PREP (ICE_AQC_Q_CFG_TIMEOUT_M , 5 );
47504755 cmd -> blocked_cgds = 0 ;
47514756
0 commit comments