mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH iwl-next] ixgbe: make EEPROM init_params() return void
@ 2026-11-01 23:47 Ingyu Jang
  2026-11-05 13:49 ` Przemek Kitszel
  0 siblings, 1 reply; 2+ messages in thread
From: Ingyu Jang @ 2026-11-01 23:47 UTC (permalink / raw)
  To: Tony Nguyen, Przemek Kitszel
  Cc: Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
	Paolo Abeni, intel-wired-lan, netdev, linux-kernel, Ingyu Jang

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/8524c812-b659-4670-b370-35682aba2d2f@intel.com
Signed-off-by: Ingyu Jang <ingyujang25@korea.ac.kr>
---
 .../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


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH iwl-next] ixgbe: make EEPROM init_params() return void
  2026-11-01 23:47 [PATCH iwl-next] ixgbe: make EEPROM init_params() return void Ingyu Jang
@ 2026-11-05 13:49 ` Przemek Kitszel
  0 siblings, 0 replies; 2+ messages in thread
From: Przemek Kitszel @ 2026-11-05 13:49 UTC (permalink / raw)
  To: Ingyu Jang
  Cc: Andrew Lunn, Tony Nguyen, David S. Miller, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, intel-wired-lan, netdev,
	linux-kernel

On 11/2/26 12:47 AM, Ingyu Jang wrote:
> 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/8524c812-b659-4670-b370-35682aba2d2f@intel.com
> Signed-off-by: Ingyu Jang <ingyujang25@korea.ac.kr>

thank you for reaching out,
in general we don't want trivial refactors unless as a part of bigger
contribution
https://www.kernel.org/doc/html/latest/process/maintainer-netdev.html#clean-up-patches

especially now, we are drowned in patches, so this particular one would
be on the very bottom of the priority list

> ---
>   .../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;
>   }
>   

[...]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-11-05 13:42 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-11-01 23:47 [PATCH iwl-next] ixgbe: make EEPROM init_params() return void Ingyu Jang
2026-11-05 13:49 ` Przemek Kitszel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®