i40e: Add other helpers to check version of running firmware and AQ API
Add another helper functions that will be used by subsequent patch to refactor existing open-coded checks whether the version of running firmware and AdminQ API is recent enough to provide certain capabilities. Signed-off-by: Ivan Vecera <ivecera@redhat.com> Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com> Link: https://lore.kernel.org/r/20231113231047.548659-12-anthony.l.nguyen@intel.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
28c1726b2c
commit
cf488e1322
@ -608,6 +608,60 @@ static inline bool i40e_is_aq_api_ver_ge(struct i40e_hw *hw, u16 maj, u16 min)
|
||||
(hw->aq.api_maj_ver == maj && hw->aq.api_min_ver >= min));
|
||||
}
|
||||
|
||||
/**
|
||||
* i40e_is_aq_api_ver_lt
|
||||
* @hw: pointer to i40e_hw structure
|
||||
* @maj: API major value to compare
|
||||
* @min: API minor value to compare
|
||||
*
|
||||
* Assert whether current HW API version is less than provided.
|
||||
**/
|
||||
static inline bool i40e_is_aq_api_ver_lt(struct i40e_hw *hw, u16 maj, u16 min)
|
||||
{
|
||||
return !i40e_is_aq_api_ver_ge(hw, maj, min);
|
||||
}
|
||||
|
||||
/**
|
||||
* i40e_is_fw_ver_ge
|
||||
* @hw: pointer to i40e_hw structure
|
||||
* @maj: API major value to compare
|
||||
* @min: API minor value to compare
|
||||
*
|
||||
* Assert whether current firmware version is greater/equal than provided.
|
||||
**/
|
||||
static inline bool i40e_is_fw_ver_ge(struct i40e_hw *hw, u16 maj, u16 min)
|
||||
{
|
||||
return (hw->aq.fw_maj_ver > maj ||
|
||||
(hw->aq.fw_maj_ver == maj && hw->aq.fw_min_ver >= min));
|
||||
}
|
||||
|
||||
/**
|
||||
* i40e_is_fw_ver_lt
|
||||
* @hw: pointer to i40e_hw structure
|
||||
* @maj: API major value to compare
|
||||
* @min: API minor value to compare
|
||||
*
|
||||
* Assert whether current firmware version is less than provided.
|
||||
**/
|
||||
static inline bool i40e_is_fw_ver_lt(struct i40e_hw *hw, u16 maj, u16 min)
|
||||
{
|
||||
return !i40e_is_fw_ver_ge(hw, maj, min);
|
||||
}
|
||||
|
||||
/**
|
||||
* i40e_is_fw_ver_eq
|
||||
* @hw: pointer to i40e_hw structure
|
||||
* @maj: API major value to compare
|
||||
* @min: API minor value to compare
|
||||
*
|
||||
* Assert whether current firmware version is equal to provided.
|
||||
**/
|
||||
static inline bool i40e_is_fw_ver_eq(struct i40e_hw *hw, u16 maj, u16 min)
|
||||
{
|
||||
return (hw->aq.fw_maj_ver > maj ||
|
||||
(hw->aq.fw_maj_ver == maj && hw->aq.fw_min_ver == min));
|
||||
}
|
||||
|
||||
struct i40e_driver_version {
|
||||
u8 major_version;
|
||||
u8 minor_version;
|
||||
|
Loading…
x
Reference in New Issue
Block a user