net: stmmac: sti: remove of_get_phy_mode()
authorRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
Wed, 12 Mar 2025 09:20:57 +0000 (09:20 +0000)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 18 Mar 2025 14:53:15 +0000 (15:53 +0100)
devm_stmmac_probe_config_dt() already gets the PHY mode from firmware,
which is stored in plat_dat->phy_interface. Therefore, we don't need to
get it in platform code.

Pass plat_dat into sti_dwmac_parse_data(), and set dwmac->interface
from plat_dat->phy_interface.

Reviewed-by: Michal Kubiak <michal.kubiak@intel.com>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Link: https://patch.msgid.link/E1tsIGn-005v02-7G@rmk-PC.armlinux.org.uk
Reviewed-by: Jacob Keller <jacob.e.keller@intel.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/ethernet/stmicro/stmmac/dwmac-sti.c

index 13b9c2a51fce4b6c480e8483acac6f71850fbd2b..be57c6c12c1c21b5e8740280bf65be940384c895 100644 (file)
@@ -185,7 +185,8 @@ static int sti_dwmac_set_mode(struct sti_dwmac *dwmac)
 }
 
 static int sti_dwmac_parse_data(struct sti_dwmac *dwmac,
-                               struct platform_device *pdev)
+                               struct platform_device *pdev,
+                               struct plat_stmmacenet_data *plat_dat)
 {
        struct resource *res;
        struct device *dev = &pdev->dev;
@@ -204,12 +205,7 @@ static int sti_dwmac_parse_data(struct sti_dwmac *dwmac,
        if (IS_ERR(regmap))
                return PTR_ERR(regmap);
 
-       err = of_get_phy_mode(np, &dwmac->interface);
-       if (err && err != -ENODEV) {
-               dev_err(dev, "Can't get phy-mode\n");
-               return err;
-       }
-
+       dwmac->interface = plat_dat->phy_interface;
        dwmac->regmap = regmap;
        dwmac->gmac_en = of_property_read_bool(np, "st,gmac_en");
        dwmac->ext_phyclk = of_property_read_bool(np, "st,ext-phyclk");
@@ -268,7 +264,7 @@ static int sti_dwmac_probe(struct platform_device *pdev)
        if (!dwmac)
                return -ENOMEM;
 
-       ret = sti_dwmac_parse_data(dwmac, pdev);
+       ret = sti_dwmac_parse_data(dwmac, pdev, plat_dat);
        if (ret) {
                dev_err(&pdev->dev, "Unable to parse OF data\n");
                return ret;