From: Meng Li meng.li@windriver.com
In stable kernel v5.10, when run below command to remove ethernet driver on stratix10 platform, there will be warning trace as below:
$ cd /sys/class/net/eth0/device/driver/ $ echo ff800000.ethernet > unbind
WARNING: CPU: 3 PID: 386 at drivers/clk/clk.c:810 clk_core_unprepare+0x114/0x274 Modules linked in: sch_fq_codel CPU: 3 PID: 386 Comm: sh Tainted: G W 5.10.74-yocto-standard #1 Hardware name: SoCFPGA Stratix 10 SoCDK (DT) pstate: 00000005 (nzcv daif -PAN -UAO -TCO BTYPE=--) pc : clk_core_unprepare+0x114/0x274 lr : clk_core_unprepare+0x114/0x274 sp : ffff800011bdbb10 clk_core_unprepare+0x114/0x274 clk_unprepare+0x38/0x50 stmmac_remove_config_dt+0x40/0x80 stmmac_pltfr_remove+0x64/0x80 platform_drv_remove+0x38/0x60 ... .. el0_sync_handler+0x1a4/0x1b0 el0_sync+0x180/0x1c0 This issue is introduced by introducing upstream commit 8f269102baf7 ("net: stmmac: disable clocks in stmmac_remove_config_dt()")
But in latest mainline kernel, there is no this issue. Because commit 5ec55823438e("net: stmmac: add clocks management for gmac driver") and its folowing fixing commits improved clocks management for stmmac driver. Therefore, backport them to stable kernel v5.10.
Joakim Zhang (2): net: stmmac: add clocks management for gmac driver net: stmmac: fix system hang if change mac address after interface ifdown
Michael Riesch (1): net: stmmac: dwmac-rk: fix unbalanced pm_runtime_enable warnings
Wei Yongjun (1): net: stmmac: platform: fix build error with !CONFIG_PM_SLEEP
Wong Vee Khee (1): net: stmmac: fix issue where clk is being unprepared twice
Yang Yingliang (1): net: stmmac: fix missing unlock on error in stmmac_suspend()
.../net/ethernet/stmicro/stmmac/dwmac-rk.c | 9 -- drivers/net/ethernet/stmicro/stmmac/stmmac.h | 1 + .../net/ethernet/stmicro/stmmac/stmmac_main.c | 87 ++++++++++++-- .../net/ethernet/stmicro/stmmac/stmmac_mdio.c | 111 ++++++++++++++---- .../ethernet/stmicro/stmmac/stmmac_platform.c | 30 ++++- 5 files changed, 187 insertions(+), 51 deletions(-)