]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
net: stmmac: sti: convert to stmmac_pltfr_pm_ops
authorRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
Tue, 15 Apr 2025 16:42:34 +0000 (17:42 +0100)
committerJakub Kicinski <kuba@kernel.org>
Thu, 17 Apr 2025 01:31:06 +0000 (18:31 -0700)
As we now have the plat_dat->init()/plat_dat->exit() populated which
have the required functionality on suspend/resume, we can now use
stmmac_pltfr_pm_ops which has methods that call these two functions.
Switch over to use this.

Doing so also fills in the runtime PM ops and _noirq variants as well.

Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://patch.msgid.link/E1u4jMo-000rCS-6f@rmk-PC.armlinux.org.uk
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/stmicro/stmmac/dwmac-sti.c

index b6e09bd33894358c7fb973541b62b54eab3981eb..53d5ce1f6dc699574971e69cbf6532e7defa6652 100644 (file)
@@ -298,29 +298,6 @@ static int sti_dwmac_probe(struct platform_device *pdev)
        return devm_stmmac_pltfr_probe(pdev, plat_dat, &stmmac_res);
 }
 
-static int sti_dwmac_suspend(struct device *dev)
-{
-       struct sti_dwmac *dwmac = get_stmmac_bsp_priv(dev);
-       int ret = stmmac_suspend(dev);
-
-       clk_disable_unprepare(dwmac->clk);
-
-       return ret;
-}
-
-static int sti_dwmac_resume(struct device *dev)
-{
-       struct sti_dwmac *dwmac = get_stmmac_bsp_priv(dev);
-
-       clk_prepare_enable(dwmac->clk);
-       sti_dwmac_set_mode(dwmac);
-
-       return stmmac_resume(dev);
-}
-
-static DEFINE_SIMPLE_DEV_PM_OPS(sti_dwmac_pm_ops, sti_dwmac_suspend,
-                                                 sti_dwmac_resume);
-
 static const struct sti_dwmac_of_data stih4xx_dwmac_data = {
        .fix_retime_src = stih4xx_fix_retime_src,
 };
@@ -335,7 +312,7 @@ static struct platform_driver sti_dwmac_driver = {
        .probe  = sti_dwmac_probe,
        .driver = {
                .name           = "sti-dwmac",
-               .pm             = pm_sleep_ptr(&sti_dwmac_pm_ops),
+               .pm             = &stmmac_pltfr_pm_ops,
                .of_match_table = sti_dwmac_match,
        },
 };