All implementations of the EEPROM init_params() operation always return 0, so the error checks on its return value in ixgbe_sw_init() and the E610 NVM helpers never trigger.
Make init_params() return void and remove the dead checks. Link: https://lore.kernel.org/all/[email protected] Signed-off-by: Ingyu Jang <[email protected]> --- .../net/ethernet/intel/ixgbe/ixgbe_common.c | 4 +-- .../net/ethernet/intel/ixgbe/ixgbe_common.h | 2 +- drivers/net/ethernet/intel/ixgbe/ixgbe_e610.c | 29 +++++-------------- drivers/net/ethernet/intel/ixgbe/ixgbe_e610.h | 2 +- drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 5 +--- drivers/net/ethernet/intel/ixgbe/ixgbe_type.h | 2 +- drivers/net/ethernet/intel/ixgbe/ixgbe_x540.c | 4 +-- drivers/net/ethernet/intel/ixgbe/ixgbe_x540.h | 2 +- drivers/net/ethernet/intel/ixgbe/ixgbe_x550.c | 4 +-- 9 files changed, 16 insertions(+), 38 deletions(-) diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_common.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_common.c index 3ea6765f9c5d8..ab2c0818f2417 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_common.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_common.c @@ -857,7 +857,7 @@ int ixgbe_led_off_generic(struct ixgbe_hw *hw, u32 index) * Initializes the EEPROM parameters ixgbe_eeprom_info within the * ixgbe_hw struct in order to set up EEPROM access. **/ -int ixgbe_init_eeprom_params_generic(struct ixgbe_hw *hw) +void ixgbe_init_eeprom_params_generic(struct ixgbe_hw *hw) { struct ixgbe_eeprom_info *eeprom = &hw->eeprom; u32 eec; @@ -895,8 +895,6 @@ int ixgbe_init_eeprom_params_generic(struct ixgbe_hw *hw) hw_dbg(hw, "Eeprom params: type = %d, size = %d, address bits: %d\n", eeprom->type, eeprom->word_size, eeprom->address_bits); } - - return 0; } /** diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_common.h b/drivers/net/ethernet/intel/ixgbe/ixgbe_common.h index 6639069ad5283..8d4fd9074938b 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_common.h +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_common.h @@ -25,7 +25,7 @@ int ixgbe_led_on_generic(struct ixgbe_hw *hw, u32 index); int ixgbe_led_off_generic(struct ixgbe_hw *hw, u32 index); int ixgbe_init_led_link_act_generic(struct ixgbe_hw *hw); -int ixgbe_init_eeprom_params_generic(struct ixgbe_hw *hw); +void ixgbe_init_eeprom_params_generic(struct ixgbe_hw *hw); int ixgbe_write_eeprom_generic(struct ixgbe_hw *hw, u16 offset, u16 data); int ixgbe_write_eeprom_buffer_bit_bang_generic(struct ixgbe_hw *hw, u16 offset, u16 words, u16 *data); diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_e610.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_e610.c index 4d8ae5b56145a..eb20ef11f890b 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_e610.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_e610.c @@ -2267,17 +2267,15 @@ int ixgbe_enter_lplu_e610(struct ixgbe_hw *hw) * * Initialize the EEPROM parameters ixgbe_eeprom_info within the ixgbe_hw * struct in order to set up EEPROM access. - * - * Return: the operation exit code. */ -int ixgbe_init_eeprom_params_e610(struct ixgbe_hw *hw) +void ixgbe_init_eeprom_params_e610(struct ixgbe_hw *hw) { struct ixgbe_eeprom_info *eeprom = &hw->eeprom; u32 gens_stat; u8 sr_size; if (eeprom->type != ixgbe_eeprom_uninitialized) - return 0; + return; eeprom->type = ixgbe_flash; @@ -2289,8 +2287,6 @@ int ixgbe_init_eeprom_params_e610(struct ixgbe_hw *hw) hw_dbg(hw, "Eeprom params: type = %d, size = %d\n", eeprom->type, eeprom->word_size); - - return 0; } /** @@ -3681,11 +3677,8 @@ int ixgbe_read_ee_aci_e610(struct ixgbe_hw *hw, u16 offset, u16 *data) { int err; - if (hw->eeprom.type == ixgbe_eeprom_uninitialized) { - err = hw->eeprom.ops.init_params(hw); - if (err) - return err; - } + if (hw->eeprom.type == ixgbe_eeprom_uninitialized) + hw->eeprom.ops.init_params(hw); err = ixgbe_acquire_nvm(hw, LIBIE_AQC_RES_ACCESS_READ); if (err) @@ -3714,11 +3707,8 @@ int ixgbe_read_ee_aci_buffer_e610(struct ixgbe_hw *hw, u16 offset, { int err; - if (hw->eeprom.type == ixgbe_eeprom_uninitialized) { - err = hw->eeprom.ops.init_params(hw); - if (err) - return err; - } + if (hw->eeprom.type == ixgbe_eeprom_uninitialized) + hw->eeprom.ops.init_params(hw); err = ixgbe_acquire_nvm(hw, LIBIE_AQC_RES_ACCESS_READ); if (err) @@ -3747,11 +3737,8 @@ int ixgbe_validate_eeprom_checksum_e610(struct ixgbe_hw *hw, u16 *checksum_val) { int err; - if (hw->eeprom.type == ixgbe_eeprom_uninitialized) { - err = hw->eeprom.ops.init_params(hw); - if (err) - return err; - } + if (hw->eeprom.type == ixgbe_eeprom_uninitialized) + hw->eeprom.ops.init_params(hw); err = ixgbe_nvm_validate_checksum(hw); if (err) diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_e610.h b/drivers/net/ethernet/intel/ixgbe/ixgbe_e610.h index 2cb76a3d30ae6..2bc1210756fe1 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_e610.h +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_e610.h @@ -58,7 +58,7 @@ int ixgbe_setup_phy_link_e610(struct ixgbe_hw *hw); int ixgbe_setup_eee_e610(struct ixgbe_hw *hw, bool enable_eee); int ixgbe_set_phy_power_e610(struct ixgbe_hw *hw, bool on); int ixgbe_enter_lplu_e610(struct ixgbe_hw *hw); -int ixgbe_init_eeprom_params_e610(struct ixgbe_hw *hw); +void ixgbe_init_eeprom_params_e610(struct ixgbe_hw *hw); int ixgbe_aci_get_netlist_node(struct ixgbe_hw *hw, struct ixgbe_aci_cmd_get_link_topo *cmd, u8 *node_part_number, u16 *node_handle); diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c index f91856498eb2d..b337e2d4cf1c3 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c @@ -7058,10 +7058,7 @@ static int ixgbe_sw_init(struct ixgbe_adapter *adapter, adapter->tx_work_limit = IXGBE_DEFAULT_TX_WORK; /* initialize eeprom parameters */ - if (hw->eeprom.ops.init_params(hw)) { - e_dev_err("EEPROM initialization failed\n"); - return -EIO; - } + hw->eeprom.ops.init_params(hw); /* PF holds first pool slot */ set_bit(0, adapter->fwd_bitmask); diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h b/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h index a461b6542f96b..48a74c89a799c 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h @@ -3476,7 +3476,7 @@ struct ixgbe_hw; /* Function pointer table */ struct ixgbe_eeprom_operations { - int (*init_params)(struct ixgbe_hw *); + void (*init_params)(struct ixgbe_hw *hw); int (*read)(struct ixgbe_hw *, u16, u16 *); int (*read_buffer)(struct ixgbe_hw *, u16, u16, u16 *); int (*write)(struct ixgbe_hw *, u16, u16); diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_x540.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_x540.c index e67e2feb045b3..d77c6efd800f2 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_x540.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_x540.c @@ -191,7 +191,7 @@ int ixgbe_start_hw_X540(struct ixgbe_hw *hw) * Initializes the EEPROM parameters ixgbe_eeprom_info within the * ixgbe_hw struct in order to set up EEPROM access. **/ -int ixgbe_init_eeprom_params_X540(struct ixgbe_hw *hw) +void ixgbe_init_eeprom_params_X540(struct ixgbe_hw *hw) { struct ixgbe_eeprom_info *eeprom = &hw->eeprom; @@ -210,8 +210,6 @@ int ixgbe_init_eeprom_params_X540(struct ixgbe_hw *hw) hw_dbg(hw, "Eeprom params: type = %d, size = %d\n", eeprom->type, eeprom->word_size); } - - return 0; } /** diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_x540.h b/drivers/net/ethernet/intel/ixgbe/ixgbe_x540.h index 6ed360c5b605b..282d10b7d4733 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_x540.h +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_x540.h @@ -19,6 +19,6 @@ int ixgbe_blink_led_stop_X540(struct ixgbe_hw *hw, u32 index); int ixgbe_acquire_swfw_sync_X540(struct ixgbe_hw *hw, u32 mask); void ixgbe_release_swfw_sync_X540(struct ixgbe_hw *hw, u32 mask); void ixgbe_init_swfw_sync_X540(struct ixgbe_hw *hw); -int ixgbe_init_eeprom_params_X540(struct ixgbe_hw *hw); +void ixgbe_init_eeprom_params_X540(struct ixgbe_hw *hw); #endif /* _IXGBE_X540_H_ */ diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_x550.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_x550.c index 4a0ccbf448a2a..a8d300e3f471a 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_x550.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_x550.c @@ -629,7 +629,7 @@ static int ixgbe_fc_autoneg_fw(struct ixgbe_hw *hw) * Initializes the EEPROM parameters ixgbe_eeprom_info within the * ixgbe_hw struct in order to set up EEPROM access. **/ -static int ixgbe_init_eeprom_params_X550(struct ixgbe_hw *hw) +static void ixgbe_init_eeprom_params_X550(struct ixgbe_hw *hw) { struct ixgbe_eeprom_info *eeprom = &hw->eeprom; @@ -648,8 +648,6 @@ static int ixgbe_init_eeprom_params_X550(struct ixgbe_hw *hw) hw_dbg(hw, "Eeprom params: type = %d, size = %d\n", eeprom->type, eeprom->word_size); } - - return 0; } /** -- 2.34.1
