net: stmmac: ipq806x: remove of_get_phy_mode()
authorRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
Wed, 12 Mar 2025 09:20:41 +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 ipq806x_gmac_of_parse(), and set gmac->phy_mode 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/E1tsIGX-005uzl-TQ@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-ipq806x.c

index 0a9c137cc4e638322e7c5b3d11aaf74b5e869674..ca4035cbb55b6df58bb612236fee1af40ea9ac08 100644 (file)
@@ -211,16 +211,12 @@ static int ipq806x_gmac_set_speed(struct ipq806x_gmac *gmac, int speed)
        return 0;
 }
 
-static int ipq806x_gmac_of_parse(struct ipq806x_gmac *gmac)
+static int ipq806x_gmac_of_parse(struct ipq806x_gmac *gmac,
+                                struct plat_stmmacenet_data *plat_dat)
 {
        struct device *dev = &gmac->pdev->dev;
-       int ret;
 
-       ret = of_get_phy_mode(dev->of_node, &gmac->phy_mode);
-       if (ret) {
-               dev_err(dev, "missing phy mode property\n");
-               return -EINVAL;
-       }
+       gmac->phy_mode = plat_dat->phy_interface;
 
        if (of_property_read_u32(dev->of_node, "qcom,id", &gmac->id) < 0) {
                dev_err(dev, "missing qcom id property\n");
@@ -398,7 +394,7 @@ static int ipq806x_gmac_probe(struct platform_device *pdev)
 
        gmac->pdev = pdev;
 
-       err = ipq806x_gmac_of_parse(gmac);
+       err = ipq806x_gmac_of_parse(gmac, plat_dat);
        if (err) {
                dev_err(dev, "device tree parsing error\n");
                return err;