Message ID | E1tUmAz-007VXn-0o@rmk-PC.armlinux.org.uk (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | net: stmmac: clean up and fix EEE implementation | expand |
On Mon, Jan 06, 2025 at 12:25:45PM +0000, Russell King (Oracle) wrote: > Since all call sites of stmmac_eee_init() assign priv->eee_active > immediately before, pass this state into stmmac_eee_init() and > assign priv->eee_active within this function. > > Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Andrew
Hi Russell,
kernel test robot noticed the following build warnings:
[auto build test WARNING on net-next/main]
url: https://github.com/intel-lab-lkp/linux/commits/Russell-King-Oracle/net-stmmac-move-tx_lpi_timer-tracking-to-phylib/20250107-002808
base: net-next/main
patch link: https://lore.kernel.org/r/E1tUmAz-007VXn-0o%40rmk-PC.armlinux.org.uk
patch subject: [PATCH net-next v2 12/17] net: stmmac: move priv->eee_active into stmmac_eee_init()
config: i386-buildonly-randconfig-005-20250107 (https://download.01.org/0day-ci/archive/20250107/202501071547.L5CjLObQ-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250107/202501071547.L5CjLObQ-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202501071547.L5CjLObQ-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:468: warning: Function parameter or struct member 'active' not described in 'stmmac_eee_init'
vim +468 drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
d765955d2ae0b8 Giuseppe CAVALLARO 2012-06-27 458
d765955d2ae0b8 Giuseppe CAVALLARO 2012-06-27 459 /**
732fdf0e5253e9 Giuseppe CAVALLARO 2014-11-18 460 * stmmac_eee_init - init EEE
32ceabcad3c8ab Giuseppe CAVALLARO 2013-04-08 461 * @priv: driver private structure
d765955d2ae0b8 Giuseppe CAVALLARO 2012-06-27 462 * Description:
732fdf0e5253e9 Giuseppe CAVALLARO 2014-11-18 463 * if the GMAC supports the EEE (from the HW cap reg) and the phy device
732fdf0e5253e9 Giuseppe CAVALLARO 2014-11-18 464 * can also manage EEE, this function enable the LPI state and start related
732fdf0e5253e9 Giuseppe CAVALLARO 2014-11-18 465 * timer.
d765955d2ae0b8 Giuseppe CAVALLARO 2012-06-27 466 */
5ad24fd233fa83 Russell King (Oracle 2025-01-06 467) static void stmmac_eee_init(struct stmmac_priv *priv, bool active)
d765955d2ae0b8 Giuseppe CAVALLARO 2012-06-27 @468 {
5ad24fd233fa83 Russell King (Oracle 2025-01-06 469) priv->eee_active = active;
5ad24fd233fa83 Russell King (Oracle 2025-01-06 470)
74371272f97fd1 Jose Abreu 2019-06-11 471 /* Check if MAC core supports the EEE feature. */
418ee895284762 Russell King (Oracle 2025-01-06 472) if (!priv->dma_cap.eee) {
418ee895284762 Russell King (Oracle 2025-01-06 473) priv->eee_enabled = false;
418ee895284762 Russell King (Oracle 2025-01-06 474) return;
418ee895284762 Russell King (Oracle 2025-01-06 475) }
83bf79b6bb64e6 Giuseppe CAVALLARO 2014-03-10 476
29555fa3de8656 Thierry Reding 2018-05-24 477 mutex_lock(&priv->lock);
74371272f97fd1 Jose Abreu 2019-06-11 478
74371272f97fd1 Jose Abreu 2019-06-11 479 /* Check if it needs to be deactivated */
177d935a13703e Jon Hunter 2019-06-26 480 if (!priv->eee_active) {
177d935a13703e Jon Hunter 2019-06-26 481 if (priv->eee_enabled) {
38ddc59d65b6d9 LABBE Corentin 2016-11-16 482 netdev_dbg(priv->dev, "disable EEE\n");
be1c7eae8c7dfc Vineetha G. Jaya Kumaran 2020-10-28 483 stmmac_lpi_entry_timer_config(priv, 0);
83bf79b6bb64e6 Giuseppe CAVALLARO 2014-03-10 484 del_timer_sync(&priv->eee_ctrl_timer);
26dbf37afd5d4b Russell King (Oracle 2025-01-06 485) stmmac_set_eee_timer(priv, priv->hw, 0,
26dbf37afd5d4b Russell King (Oracle 2025-01-06 486) STMMAC_DEFAULT_TWT_LS);
d4aeaed80b0ebb Wong Vee Khee 2021-10-05 487 if (priv->hw->xpcs)
d4aeaed80b0ebb Wong Vee Khee 2021-10-05 488 xpcs_config_eee(priv->hw->xpcs,
d4aeaed80b0ebb Wong Vee Khee 2021-10-05 489 priv->plat->mult_fact_100ns,
d4aeaed80b0ebb Wong Vee Khee 2021-10-05 490 false);
177d935a13703e Jon Hunter 2019-06-26 491 }
418ee895284762 Russell King (Oracle 2025-01-06 492) priv->eee_enabled = false;
0867bb9768deda Jon Hunter 2019-06-26 493 mutex_unlock(&priv->lock);
418ee895284762 Russell King (Oracle 2025-01-06 494) return;
83bf79b6bb64e6 Giuseppe CAVALLARO 2014-03-10 495 }
d765955d2ae0b8 Giuseppe CAVALLARO 2012-06-27 496
74371272f97fd1 Jose Abreu 2019-06-11 497 if (priv->eee_active && !priv->eee_enabled) {
74371272f97fd1 Jose Abreu 2019-06-11 498 timer_setup(&priv->eee_ctrl_timer, stmmac_eee_ctrl_timer, 0);
74371272f97fd1 Jose Abreu 2019-06-11 499 stmmac_set_eee_timer(priv, priv->hw, STMMAC_DEFAULT_LIT_LS,
26dbf37afd5d4b Russell King (Oracle 2025-01-06 500) STMMAC_DEFAULT_TWT_LS);
656ed8b015f19b Wong Vee Khee 2021-09-30 501 if (priv->hw->xpcs)
656ed8b015f19b Wong Vee Khee 2021-09-30 502 xpcs_config_eee(priv->hw->xpcs,
656ed8b015f19b Wong Vee Khee 2021-09-30 503 priv->plat->mult_fact_100ns,
656ed8b015f19b Wong Vee Khee 2021-09-30 504 true);
71965352eedd0c Giuseppe CAVALLARO 2014-08-28 505 }
d765955d2ae0b8 Giuseppe CAVALLARO 2012-06-27 506
be1c7eae8c7dfc Vineetha G. Jaya Kumaran 2020-10-28 507 if (priv->plat->has_gmac4 && priv->tx_lpi_timer <= STMMAC_ET_MAX) {
be1c7eae8c7dfc Vineetha G. Jaya Kumaran 2020-10-28 508 del_timer_sync(&priv->eee_ctrl_timer);
be1c7eae8c7dfc Vineetha G. Jaya Kumaran 2020-10-28 509 priv->tx_path_in_lpi_mode = false;
be1c7eae8c7dfc Vineetha G. Jaya Kumaran 2020-10-28 510 stmmac_lpi_entry_timer_config(priv, 1);
be1c7eae8c7dfc Vineetha G. Jaya Kumaran 2020-10-28 511 } else {
be1c7eae8c7dfc Vineetha G. Jaya Kumaran 2020-10-28 512 stmmac_lpi_entry_timer_config(priv, 0);
be1c7eae8c7dfc Vineetha G. Jaya Kumaran 2020-10-28 513 mod_timer(&priv->eee_ctrl_timer,
be1c7eae8c7dfc Vineetha G. Jaya Kumaran 2020-10-28 514 STMMAC_LPI_T(priv->tx_lpi_timer));
be1c7eae8c7dfc Vineetha G. Jaya Kumaran 2020-10-28 515 }
388e201d41fa1e Vineetha G. Jaya Kumaran 2020-10-01 516
418ee895284762 Russell King (Oracle 2025-01-06 517) priv->eee_enabled = true;
418ee895284762 Russell King (Oracle 2025-01-06 518)
29555fa3de8656 Thierry Reding 2018-05-24 519 mutex_unlock(&priv->lock);
38ddc59d65b6d9 LABBE Corentin 2016-11-16 520 netdev_dbg(priv->dev, "Energy-Efficient Ethernet initialized\n");
d765955d2ae0b8 Giuseppe CAVALLARO 2012-06-27 521 }
d765955d2ae0b8 Giuseppe CAVALLARO 2012-06-27 522
diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c index cf294fe3f726..1aedb49944ec 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c @@ -464,8 +464,10 @@ static void stmmac_eee_ctrl_timer(struct timer_list *t) * can also manage EEE, this function enable the LPI state and start related * timer. */ -static void stmmac_eee_init(struct stmmac_priv *priv) +static void stmmac_eee_init(struct stmmac_priv *priv, bool active) { + priv->eee_active = active; + /* Check if MAC core supports the EEE feature. */ if (!priv->dma_cap.eee) { priv->eee_enabled = false; @@ -972,8 +974,7 @@ static void stmmac_mac_link_down(struct phylink_config *config, struct stmmac_priv *priv = netdev_priv(to_net_dev(config->dev)); stmmac_mac_set(priv, priv->ioaddr, false); - priv->eee_active = false; - stmmac_eee_init(priv); + stmmac_eee_init(priv, false); stmmac_set_eee_pls(priv, priv->hw, false); if (stmmac_fpe_supported(priv)) @@ -1085,8 +1086,7 @@ static void stmmac_mac_link_up(struct phylink_config *config, phy_eee_rx_clock_stop(phy, !(priv->plat->flags & STMMAC_FLAG_RX_CLK_RUNS_IN_LPI)); priv->tx_lpi_timer = phy->eee_cfg.tx_lpi_timer; - priv->eee_active = phy->enable_tx_lpi; - stmmac_eee_init(priv); + stmmac_eee_init(priv, phy->enable_tx_lpi); stmmac_set_eee_pls(priv, priv->hw, true); }
Since all call sites of stmmac_eee_init() assign priv->eee_active immediately before, pass this state into stmmac_eee_init() and assign priv->eee_active within this function. Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk> --- drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)