All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bartosz Golaszewski <brgl@bgdev.pl>
To: Andrew Lunn <andrew@lunn.ch>,
	Florian Fainelli <f.fainelli@gmail.com>,
	Heiner Kallweit <hkallweit1@gmail.com>,
	Russell King <linux@armlinux.org.uk>,
	"David S . Miller" <davem@davemloft.net>,
	Jakub Kicinski <kuba@kernel.org>,
	Rob Herring <robh+dt@kernel.org>,
	Matthias Brugger <matthias.bgg@gmail.com>,
	Microchip Linux Driver Support <UNGLinuxDriver@microchip.com>,
	Vladimir Oltean <vladimir.oltean@nxp.com>,
	Claudiu Manoil <claudiu.manoil@nxp.com>,
	Alexandre Belloni <alexandre.belloni@bootlin.com>,
	Vivien Didelot <vivien.didelot@gmail.com>,
	Tom Lendacky <thomas.lendacky@amd.com>,
	Yisen Zhuang <yisen.zhuang@huawei.com>,
	Salil Mehta <salil.mehta@huawei.com>,
	Jassi Brar <jaswinder.singh@linaro.org>,
	Ilias Apalodimas <ilias.apalodimas@linaro.org>,
	Iyappan Subramanian <iyappan@os.amperecomputing.com>,
	Keyur Chudgar <keyur@os.amperecomputing.com>,
	Quan Nguyen <quan@os.amperecomputing.com>,
	Frank Rowand <frowand.list@gmail.com>,
	Philipp Zabel <p.zabel@pengutronix.de>,
	Liam Girdwood <lgirdwood@gmail.com>,
	Mark Brown <broonie@kernel.org>
Cc: netdev@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-mediatek@lists.infradead.org,
	Fabien Parent <fparent@baylibre.com>,
	Stephane Le Provost <stephane.leprovost@mediatek.com>,
	Pedro Tsai <pedro.tsai@mediatek.com>,
	Andrew Perepech <andrew.perepech@mediatek.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>
Subject: [PATCH 11/15] net: phy: drop get_phy_device()
Date: Mon, 22 Jun 2020 11:37:40 +0200	[thread overview]
Message-ID: <20200622093744.13685-12-brgl@bgdev.pl> (raw)
In-Reply-To: <20200622093744.13685-1-brgl@bgdev.pl>

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

get_phy_device() has now become just a wrapper for phy_device_create()
with the phy_id argument set to PHY_ID_NONE. Let's remove this function
treewide and replace it with opencoded phy_device_create(). This has the
advantage of being more explicit about the PHY not having the ID set
when being created.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 drivers/net/dsa/ocelot/felix_vsc9959.c            |  3 ++-
 drivers/net/ethernet/amd/xgbe/xgbe-phy-v2.c       |  5 +++--
 drivers/net/ethernet/hisilicon/hns/hns_dsaf_mac.c |  2 +-
 drivers/net/ethernet/socionext/netsec.c           |  3 ++-
 drivers/net/phy/fixed_phy.c                       |  2 +-
 drivers/net/phy/mdio-xgene.c                      |  2 +-
 drivers/net/phy/mdio_bus.c                        |  2 +-
 drivers/net/phy/phy_device.c                      | 14 --------------
 drivers/net/phy/sfp.c                             |  2 +-
 drivers/of/of_mdio.c                              | 11 +++++++----
 include/linux/phy.h                               |  7 -------
 11 files changed, 19 insertions(+), 34 deletions(-)

diff --git a/drivers/net/dsa/ocelot/felix_vsc9959.c b/drivers/net/dsa/ocelot/felix_vsc9959.c
index 1dd9e348152d..40c868382e03 100644
--- a/drivers/net/dsa/ocelot/felix_vsc9959.c
+++ b/drivers/net/dsa/ocelot/felix_vsc9959.c
@@ -1183,7 +1183,8 @@ static int vsc9959_mdio_bus_alloc(struct ocelot *ocelot)
 		if (ocelot_port->phy_mode == PHY_INTERFACE_MODE_USXGMII)
 			is_c45 = true;
 
-		pcs = get_phy_device(felix->imdio, port, is_c45);
+		pcs = phy_device_create(felix->imdio, port,
+					PHY_ID_NONE, is_c45);
 		if (IS_ERR(pcs))
 			continue;
 
diff --git a/drivers/net/ethernet/amd/xgbe/xgbe-phy-v2.c b/drivers/net/ethernet/amd/xgbe/xgbe-phy-v2.c
index 46c3c1ca38d6..1117ed468abf 100644
--- a/drivers/net/ethernet/amd/xgbe/xgbe-phy-v2.c
+++ b/drivers/net/ethernet/amd/xgbe/xgbe-phy-v2.c
@@ -1017,8 +1017,9 @@ static int xgbe_phy_find_phy_device(struct xgbe_prv_data *pdata)
 	}
 
 	/* Create and connect to the PHY device */
-	phydev = get_phy_device(phy_data->mii, phy_data->mdio_addr,
-				(phy_data->phydev_mode == XGBE_MDIO_MODE_CL45));
+	phydev = phy_device_create(phy_data->mii, phy_data->mdio_addr,
+			PHY_ID_NONE,
+			phy_data->phydev_mode == XGBE_MDIO_MODE_CL45);
 	if (IS_ERR(phydev)) {
 		netdev_err(pdata->netdev, "get_phy_device failed\n");
 		return -ENODEV;
diff --git a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_mac.c b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_mac.c
index 9a907947ba19..75fa6a855727 100644
--- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_mac.c
+++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_mac.c
@@ -703,7 +703,7 @@ hns_mac_register_phydev(struct mii_bus *mdio, struct hns_mac_cb *mac_cb,
 	else
 		return -ENODATA;
 
-	phy = get_phy_device(mdio, addr, is_c45);
+	phy = phy_device_create(mdio, addr, PHY_ID_NONE, is_c45);
 	if (!phy || IS_ERR(phy))
 		return -EIO;
 
diff --git a/drivers/net/ethernet/socionext/netsec.c b/drivers/net/ethernet/socionext/netsec.c
index 328bc38848bb..48c405d81000 100644
--- a/drivers/net/ethernet/socionext/netsec.c
+++ b/drivers/net/ethernet/socionext/netsec.c
@@ -1935,7 +1935,8 @@ static int netsec_register_mdio(struct netsec_priv *priv, u32 phy_addr)
 			return ret;
 		}
 
-		priv->phydev = get_phy_device(bus, phy_addr, false);
+		priv->phydev = phy_device_create(bus, phy_addr,
+						 PHY_ID_NONE, false);
 		if (IS_ERR(priv->phydev)) {
 			ret = PTR_ERR(priv->phydev);
 			dev_err(priv->dev, "get_phy_device err(%d)\n", ret);
diff --git a/drivers/net/phy/fixed_phy.c b/drivers/net/phy/fixed_phy.c
index c4641b1704d6..9019f0035ef0 100644
--- a/drivers/net/phy/fixed_phy.c
+++ b/drivers/net/phy/fixed_phy.c
@@ -254,7 +254,7 @@ static struct phy_device *__fixed_phy_register(unsigned int irq,
 		return ERR_PTR(ret);
 	}
 
-	phy = get_phy_device(fmb->mii_bus, phy_addr, false);
+	phy = phy_device_create(fmb->mii_bus, phy_addr, PHY_ID_NONE, false);
 	if (IS_ERR(phy)) {
 		fixed_phy_del(phy_addr);
 		return ERR_PTR(-EINVAL);
diff --git a/drivers/net/phy/mdio-xgene.c b/drivers/net/phy/mdio-xgene.c
index 34990eaa3298..6698e7caaf78 100644
--- a/drivers/net/phy/mdio-xgene.c
+++ b/drivers/net/phy/mdio-xgene.c
@@ -264,7 +264,7 @@ struct phy_device *xgene_enet_phy_register(struct mii_bus *bus, int phy_addr)
 {
 	struct phy_device *phy_dev;
 
-	phy_dev = get_phy_device(bus, phy_addr, false);
+	phy_dev = phy_device_create(bus, phy_addr, PHY_ID_NONE, false);
 	if (!phy_dev || IS_ERR(phy_dev))
 		return NULL;
 
diff --git a/drivers/net/phy/mdio_bus.c b/drivers/net/phy/mdio_bus.c
index 296cf9771483..53e2fb0be7b9 100644
--- a/drivers/net/phy/mdio_bus.c
+++ b/drivers/net/phy/mdio_bus.c
@@ -742,7 +742,7 @@ struct phy_device *mdiobus_scan(struct mii_bus *bus, int addr)
 	struct phy_device *phydev;
 	int err;
 
-	phydev = get_phy_device(bus, addr, false);
+	phydev = phy_device_create(bus, addr, PHY_ID_NONE, false);
 	if (IS_ERR(phydev))
 		return phydev;
 
diff --git a/drivers/net/phy/phy_device.c b/drivers/net/phy/phy_device.c
index ad7c4cd9d357..58923826838b 100644
--- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c
@@ -817,20 +817,6 @@ static int phy_device_read_id(struct phy_device *phydev)
 			  phydev->is_c45, &phydev->c45_ids);
 }
 
-/**
- * get_phy_device - create a phy_device withoug PHY ID
- * @bus: the target MII bus
- * @addr: PHY address on the MII bus
- * @is_c45: If true the PHY uses the 802.3 clause 45 protocol
- *
- * Allocates a new phy_device for @addr on the @bus.
- */
-struct phy_device *get_phy_device(struct mii_bus *bus, int addr, bool is_c45)
-{
-	return phy_device_create(bus, addr, PHY_ID_NONE, is_c45);
-}
-EXPORT_SYMBOL(get_phy_device);
-
 /**
  * phy_device_register - Register the phy device on the MDIO bus
  * @phydev: phy_device structure to be added to the MDIO bus
diff --git a/drivers/net/phy/sfp.c b/drivers/net/phy/sfp.c
index 73c2969f11a4..0b165d928762 100644
--- a/drivers/net/phy/sfp.c
+++ b/drivers/net/phy/sfp.c
@@ -1431,7 +1431,7 @@ static int sfp_sm_probe_phy(struct sfp *sfp, bool is_c45)
 	struct phy_device *phy;
 	int err;
 
-	phy = get_phy_device(sfp->i2c_mii, SFP_PHY_ADDR, is_c45);
+	phy = phy_device_create(sfp->i2c_mii, SFP_PHY_ADDR, PHY_ID_NONE, is_c45);
 	if (phy == ERR_PTR(-ENODEV))
 		return PTR_ERR(phy);
 	if (IS_ERR(phy)) {
diff --git a/drivers/of/of_mdio.c b/drivers/of/of_mdio.c
index 63843037673c..af576d056e45 100644
--- a/drivers/of/of_mdio.c
+++ b/drivers/of/of_mdio.c
@@ -120,10 +120,13 @@ static int of_mdiobus_register_phy(struct mii_bus *mdio,
 	is_c45 = of_device_is_compatible(child,
 					 "ethernet-phy-ieee802.3-c45");
 
-	if (!is_c45 && !of_get_phy_id(child, &phy_id))
-		phy = phy_device_create(mdio, addr, phy_id, 0);
-	else
-		phy = get_phy_device(mdio, addr, is_c45);
+	if (!is_c45) {
+		rc = of_get_phy_id(child, &phy_id);
+		if (rc)
+			phy_id = PHY_ID_NONE;
+	}
+
+	phy = phy_device_create(mdio, addr, phy_id, is_c45);
 	if (IS_ERR(phy)) {
 		if (mii_ts)
 			unregister_mii_timestamper(mii_ts);
diff --git a/include/linux/phy.h b/include/linux/phy.h
index 662919c1dd27..01d24a934ad1 100644
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
@@ -1215,16 +1215,9 @@ int phy_modify_paged(struct phy_device *phydev, int page, u32 regnum,
 struct phy_device *phy_device_create(struct mii_bus *bus, int addr, u32 phy_id,
 				     bool is_c45);
 #if IS_ENABLED(CONFIG_PHYLIB)
-struct phy_device *get_phy_device(struct mii_bus *bus, int addr, bool is_c45);
 int phy_device_register(struct phy_device *phy);
 void phy_device_free(struct phy_device *phydev);
 #else
-static inline
-struct phy_device *get_phy_device(struct mii_bus *bus, int addr, bool is_c45)
-{
-	return NULL;
-}
-
 static inline int phy_device_register(struct phy_device *phy)
 {
 	return 0;
-- 
2.26.1


  parent reply	other threads:[~2020-06-22  9:42 UTC|newest]

Thread overview: 86+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-22  9:37 [PATCH 00/15] net: phy: correctly model the PHY voltage supply in DT Bartosz Golaszewski
2020-06-22  9:37 ` [PATCH 01/15] net: phy: arrange headers in mdio_bus.c alphabetically Bartosz Golaszewski
2020-06-22 13:12   ` Andrew Lunn
2020-06-23 18:54   ` Florian Fainelli
2020-06-23 18:54     ` Florian Fainelli
2020-06-23 18:54     ` Florian Fainelli
2020-06-22  9:37 ` [PATCH 02/15] net: phy: arrange headers in mdio_device.c alphabetically Bartosz Golaszewski
2020-06-22 13:12   ` Andrew Lunn
2020-06-23 18:56   ` Florian Fainelli
2020-06-23 18:56     ` Florian Fainelli
2020-06-23 18:56     ` Florian Fainelli
2020-06-22  9:37 ` [PATCH 03/15] net: phy: arrange headers in phy_device.c alphabetically Bartosz Golaszewski
2020-06-22 13:12   ` Andrew Lunn
2020-06-23 18:57   ` Florian Fainelli
2020-06-23 18:57     ` Florian Fainelli
2020-06-23 18:57     ` Florian Fainelli
2020-06-22  9:37 ` [PATCH 04/15] net: mdio: add a forward declaration for reset_control to mdio.h Bartosz Golaszewski
2020-06-22 13:13   ` Andrew Lunn
2020-06-23 18:59   ` Florian Fainelli
2020-06-23 18:59     ` Florian Fainelli
2020-06-23 18:59     ` Florian Fainelli
2020-06-22  9:37 ` [PATCH 05/15] net: phy: reset the PHY even if probe() is not implemented Bartosz Golaszewski
2020-06-22 13:16   ` Andrew Lunn
2020-06-23 19:14   ` Florian Fainelli
2020-06-23 19:14     ` Florian Fainelli
2020-06-23 19:14     ` Florian Fainelli
2020-06-24 16:22     ` Bartosz Golaszewski
2020-06-24 16:22       ` Bartosz Golaszewski
2020-06-24 16:22       ` Bartosz Golaszewski
2020-06-22  9:37 ` [PATCH 06/15] net: phy: mdio: reset MDIO devices " Bartosz Golaszewski
2020-06-22 13:18   ` Andrew Lunn
2020-06-23 19:16   ` Florian Fainelli
2020-06-23 19:16     ` Florian Fainelli
2020-06-23 19:16     ` Florian Fainelli
2020-06-22  9:37 ` [PATCH 07/15] net: phy: split out the PHY driver request out of phy_device_create() Bartosz Golaszewski
2020-06-22  9:37 ` [PATCH 08/15] net: phy: check the PHY presence in get_phy_id() Bartosz Golaszewski
2020-06-22  9:37 ` [PATCH 09/15] net: phy: delay PHY driver probe until PHY registration Bartosz Golaszewski
2020-06-22 13:39   ` Andrew Lunn
2020-06-22 13:51     ` Mark Brown
2020-06-23 19:49       ` Florian Fainelli
2020-06-23 19:49         ` Florian Fainelli
2020-06-23 19:49         ` Florian Fainelli
2020-06-24  9:43         ` Mark Brown
2020-06-24  9:43           ` Mark Brown
2020-06-24  9:43           ` Mark Brown
2020-06-24 13:48           ` Bartosz Golaszewski
2020-06-24 13:48             ` Bartosz Golaszewski
2020-06-24 13:48             ` Bartosz Golaszewski
2020-06-24 16:06             ` Florian Fainelli
2020-06-24 16:06               ` Florian Fainelli
2020-06-24 16:06               ` Florian Fainelli
2020-06-24 16:35               ` Bartosz Golaszewski
2020-06-24 16:35                 ` Bartosz Golaszewski
2020-06-24 16:35                 ` Bartosz Golaszewski
2020-06-24 16:50               ` Russell King - ARM Linux admin
2020-06-24 16:50                 ` Russell King - ARM Linux admin
2020-06-24 16:50                 ` Russell King - ARM Linux admin
2020-06-24 18:59                 ` Robin Murphy
2020-06-24 18:59                   ` Robin Murphy
2020-06-24 18:59                   ` Robin Murphy
2020-06-22  9:37 ` [PATCH 10/15] net: phy: simplify phy_device_create() Bartosz Golaszewski
2020-06-22  9:37 ` Bartosz Golaszewski [this message]
2020-06-22 19:29   ` [PATCH 11/15] net: phy: drop get_phy_device() kernel test robot
2020-06-22  9:37 ` [PATCH 12/15] dt-bindings: mdio: add phy-supply property to ethernet phy node Bartosz Golaszewski
2020-06-23 19:39   ` Florian Fainelli
2020-06-23 19:39     ` Florian Fainelli
2020-06-23 19:39     ` Florian Fainelli
2020-06-22  9:37 ` [PATCH 13/15] net: phy: mdio: add support for PHY supply regulator Bartosz Golaszewski
2020-06-22 13:25   ` Russell King - ARM Linux admin
2020-06-23  9:30     ` Bartosz Golaszewski
2020-06-22  9:37 ` [PATCH 14/15] net: phy: add PHY regulator support Bartosz Golaszewski
2020-06-22 13:29   ` Russell King - ARM Linux admin
2020-06-23  9:41     ` Bartosz Golaszewski
2020-06-23  9:42       ` Russell King - ARM Linux admin
2020-06-23  9:46         ` Bartosz Golaszewski
2020-06-23  9:56           ` Russell King - ARM Linux admin
2020-06-23 16:27             ` Bartosz Golaszewski
2020-06-23 16:27               ` Bartosz Golaszewski
2020-06-23 16:27               ` Bartosz Golaszewski
2020-06-24 16:57               ` Russell King - ARM Linux admin
2020-06-24 16:57                 ` Russell King - ARM Linux admin
2020-06-24 16:57                 ` Russell King - ARM Linux admin
2020-06-24 18:12                 ` Russell King - ARM Linux admin
2020-06-24 18:12                   ` Russell King - ARM Linux admin
2020-06-24 18:12                   ` Russell King - ARM Linux admin
2020-06-22  9:37 ` [PATCH 15/15] ARM64: dts: mediatek: add a phy regulator to pumpkin-common.dtsi Bartosz Golaszewski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200622093744.13685-12-brgl@bgdev.pl \
    --to=brgl@bgdev.pl \
    --cc=UNGLinuxDriver@microchip.com \
    --cc=alexandre.belloni@bootlin.com \
    --cc=andrew.perepech@mediatek.com \
    --cc=andrew@lunn.ch \
    --cc=bgolaszewski@baylibre.com \
    --cc=broonie@kernel.org \
    --cc=claudiu.manoil@nxp.com \
    --cc=davem@davemloft.net \
    --cc=devicetree@vger.kernel.org \
    --cc=f.fainelli@gmail.com \
    --cc=fparent@baylibre.com \
    --cc=frowand.list@gmail.com \
    --cc=hkallweit1@gmail.com \
    --cc=ilias.apalodimas@linaro.org \
    --cc=iyappan@os.amperecomputing.com \
    --cc=jaswinder.singh@linaro.org \
    --cc=keyur@os.amperecomputing.com \
    --cc=kuba@kernel.org \
    --cc=lgirdwood@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=linux@armlinux.org.uk \
    --cc=matthias.bgg@gmail.com \
    --cc=netdev@vger.kernel.org \
    --cc=p.zabel@pengutronix.de \
    --cc=pedro.tsai@mediatek.com \
    --cc=quan@os.amperecomputing.com \
    --cc=robh+dt@kernel.org \
    --cc=salil.mehta@huawei.com \
    --cc=stephane.leprovost@mediatek.com \
    --cc=thomas.lendacky@amd.com \
    --cc=vivien.didelot@gmail.com \
    --cc=vladimir.oltean@nxp.com \
    --cc=yisen.zhuang@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.