ice: make use of DEFINE_FLEX() in ice_ddp.c
Use DEFINE_FLEX() macro for constant-num-of-elems (4) flex array members of ice_ddp.c Signed-off-by: Przemek Kitszel <przemyslaw.kitszel@intel.com> Link: https://lore.kernel.org/r/20230912115937.1645707-5-przemyslaw.kitszel@intel.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
a034fcdbea
commit
230064baa4
@ -1560,21 +1560,14 @@ static enum ice_ddp_state ice_init_pkg_info(struct ice_hw *hw,
|
||||
*/
|
||||
static enum ice_ddp_state ice_get_pkg_info(struct ice_hw *hw)
|
||||
{
|
||||
enum ice_ddp_state state = ICE_DDP_PKG_SUCCESS;
|
||||
struct ice_aqc_get_pkg_info_resp *pkg_info;
|
||||
u16 size;
|
||||
DEFINE_FLEX(struct ice_aqc_get_pkg_info_resp, pkg_info, pkg_info,
|
||||
ICE_PKG_CNT);
|
||||
u16 size = __struct_size(pkg_info);
|
||||
u32 i;
|
||||
|
||||
size = struct_size(pkg_info, pkg_info, ICE_PKG_CNT);
|
||||
pkg_info = kzalloc(size, GFP_KERNEL);
|
||||
if (!pkg_info)
|
||||
if (ice_aq_get_pkg_info_list(hw, pkg_info, size, NULL))
|
||||
return ICE_DDP_PKG_ERR;
|
||||
|
||||
if (ice_aq_get_pkg_info_list(hw, pkg_info, size, NULL)) {
|
||||
state = ICE_DDP_PKG_ERR;
|
||||
goto init_pkg_free_alloc;
|
||||
}
|
||||
|
||||
for (i = 0; i < le32_to_cpu(pkg_info->count); i++) {
|
||||
#define ICE_PKG_FLAG_COUNT 4
|
||||
char flags[ICE_PKG_FLAG_COUNT + 1] = { 0 };
|
||||
@ -1604,10 +1597,7 @@ static enum ice_ddp_state ice_get_pkg_info(struct ice_hw *hw)
|
||||
pkg_info->pkg_info[i].name, flags);
|
||||
}
|
||||
|
||||
init_pkg_free_alloc:
|
||||
kfree(pkg_info);
|
||||
|
||||
return state;
|
||||
return ICE_DDP_PKG_SUCCESS;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1622,9 +1612,10 @@ static enum ice_ddp_state ice_chk_pkg_compat(struct ice_hw *hw,
|
||||
struct ice_pkg_hdr *ospkg,
|
||||
struct ice_seg **seg)
|
||||
{
|
||||
struct ice_aqc_get_pkg_info_resp *pkg;
|
||||
DEFINE_FLEX(struct ice_aqc_get_pkg_info_resp, pkg, pkg_info,
|
||||
ICE_PKG_CNT);
|
||||
u16 size = __struct_size(pkg);
|
||||
enum ice_ddp_state state;
|
||||
u16 size;
|
||||
u32 i;
|
||||
|
||||
/* Check package version compatibility */
|
||||
@ -1643,15 +1634,8 @@ static enum ice_ddp_state ice_chk_pkg_compat(struct ice_hw *hw,
|
||||
}
|
||||
|
||||
/* Check if FW is compatible with the OS package */
|
||||
size = struct_size(pkg, pkg_info, ICE_PKG_CNT);
|
||||
pkg = kzalloc(size, GFP_KERNEL);
|
||||
if (!pkg)
|
||||
return ICE_DDP_PKG_ERR;
|
||||
|
||||
if (ice_aq_get_pkg_info_list(hw, pkg, size, NULL)) {
|
||||
state = ICE_DDP_PKG_LOAD_ERROR;
|
||||
goto fw_ddp_compat_free_alloc;
|
||||
}
|
||||
if (ice_aq_get_pkg_info_list(hw, pkg, size, NULL))
|
||||
return ICE_DDP_PKG_LOAD_ERROR;
|
||||
|
||||
for (i = 0; i < le32_to_cpu(pkg->count); i++) {
|
||||
/* loop till we find the NVM package */
|
||||
@ -1668,8 +1652,7 @@ static enum ice_ddp_state ice_chk_pkg_compat(struct ice_hw *hw,
|
||||
/* done processing NVM package so break */
|
||||
break;
|
||||
}
|
||||
fw_ddp_compat_free_alloc:
|
||||
kfree(pkg);
|
||||
|
||||
return state;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user