All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andre Edich <andre.edich@microchip.com>
To: <netdev@vger.kernel.org>, <UNGLinuxDriver@microchip.com>,
	<steve.glendinning@shawell.net>
Cc: <Parthiban.Veerasooran@microchip.com>,
	Andre Edich <andre.edich@microchip.com>
Subject: [PATCH net-next v2 5/6] smsc95xx: use PAL framework read/write functions
Date: Thu, 23 Jul 2020 13:55:06 +0200	[thread overview]
Message-ID: <20200723115507.26194-6-andre.edich@microchip.com> (raw)
In-Reply-To: <20200723115507.26194-1-andre.edich@microchip.com>

Use functions phy_read and phy_write instead of smsc95xx_mdio_read and
smsc95xx_mdio_write respectively.

Signed-off-by: Andre Edich <andre.edich@microchip.com>
---
 drivers/net/usb/smsc95xx.c | 43 +++++++++++++++-----------------------
 1 file changed, 17 insertions(+), 26 deletions(-)

diff --git a/drivers/net/usb/smsc95xx.c b/drivers/net/usb/smsc95xx.c
index 8731724bf2c5..8add7109e661 100644
--- a/drivers/net/usb/smsc95xx.c
+++ b/drivers/net/usb/smsc95xx.c
@@ -582,22 +582,20 @@ static int smsc95xx_link_reset(struct usbnet *dev)
 
 	if (pdata->internal_phy) {
 		/* clear interrupt status */
-		ret = smsc95xx_mdio_read(dev->net, mii->phy_id, PHY_INT_SRC);
+		ret = phy_read(pdata->phydev, PHY_INT_SRC);
 		if (ret < 0)
 			return ret;
 
-		smsc95xx_mdio_write(dev->net, mii->phy_id, PHY_INT_MASK,
-				    PHY_INT_MASK_DEFAULT_);
+		ret = phy_write(pdata->phydev, PHY_INT_MASK,
+				PHY_INT_MASK_DEFAULT_);
+		if (ret < 0)
+			return ret;
 	}
 
 	mii_check_media(mii, 1, 1);
 	mii_ethtool_gset(&dev->mii, &ecmd);
-	lcladv = smsc95xx_mdio_read(dev->net, mii->phy_id, MII_ADVERTISE);
-	rmtadv = smsc95xx_mdio_read(dev->net, mii->phy_id, MII_LPA);
-
-	netif_dbg(dev, link, dev->net,
-		  "speed: %u duplex: %d lcladv: %04x rmtadv: %04x\n",
-		  ethtool_cmd_speed(&ecmd), ecmd.duplex, lcladv, rmtadv);
+	lcladv = phy_read(pdata->phydev, MII_ADVERTISE);
+	rmtadv = phy_read(pdata->phydev, MII_LPA);
 
 	spin_lock_irqsave(&pdata->mac_cr_lock, flags);
 	if (ecmd.duplex != DUPLEX_FULL) {
@@ -761,10 +759,11 @@ static int smsc95xx_ethtool_set_wol(struct net_device *net,
 static int get_mdix_status(struct net_device *net)
 {
 	struct usbnet *dev = netdev_priv(net);
+	struct smsc95xx_priv *pdata = dev->driver_priv;
 	u32 val;
 	int buf;
 
-	buf = smsc95xx_mdio_read(dev->net, dev->mii.phy_id, SPECIAL_CTRL_STS);
+	buf = phy_read(pdata->phydev, SPECIAL_CTRL_STS);
 	if (buf & SPECIAL_CTRL_STS_OVRRD_AMDIX_) {
 		if (buf & SPECIAL_CTRL_STS_AMDIX_ENABLE_)
 			return ETH_TP_MDI_AUTO;
@@ -790,39 +789,31 @@ static void set_mdix_status(struct net_device *net, __u8 mdix_ctrl)
 	    (pdata->chip_id == ID_REV_CHIP_ID_89530_) ||
 	    (pdata->chip_id == ID_REV_CHIP_ID_9730_)) {
 		/* Extend Manual AutoMDIX timer for 9500A/9500Ai */
-		buf = smsc95xx_mdio_read(dev->net, dev->mii.phy_id,
-					 PHY_EDPD_CONFIG);
+		buf = phy_read(pdata->phydev, PHY_EDPD_CONFIG);
 		buf |= PHY_EDPD_CONFIG_EXT_CROSSOVER_;
-		smsc95xx_mdio_write(dev->net, dev->mii.phy_id,
-				    PHY_EDPD_CONFIG, buf);
+		phy_write(pdata->phydev, PHY_EDPD_CONFIG, buf);
 	}
 
 	if (mdix_ctrl == ETH_TP_MDI) {
-		buf = smsc95xx_mdio_read(dev->net, dev->mii.phy_id,
-					 SPECIAL_CTRL_STS);
+		buf = phy_read(pdata->phydev, SPECIAL_CTRL_STS);
 		buf |= SPECIAL_CTRL_STS_OVRRD_AMDIX_;
 		buf &= ~(SPECIAL_CTRL_STS_AMDIX_ENABLE_ |
 			 SPECIAL_CTRL_STS_AMDIX_STATE_);
-		smsc95xx_mdio_write(dev->net, dev->mii.phy_id,
-				    SPECIAL_CTRL_STS, buf);
+		phy_write(pdata->phydev, SPECIAL_CTRL_STS, buf);
 	} else if (mdix_ctrl == ETH_TP_MDI_X) {
-		buf = smsc95xx_mdio_read(dev->net, dev->mii.phy_id,
-					 SPECIAL_CTRL_STS);
+		buf = phy_read(pdata->phydev, SPECIAL_CTRL_STS);
 		buf |= SPECIAL_CTRL_STS_OVRRD_AMDIX_;
 		buf &= ~(SPECIAL_CTRL_STS_AMDIX_ENABLE_ |
 			 SPECIAL_CTRL_STS_AMDIX_STATE_);
 		buf |= SPECIAL_CTRL_STS_AMDIX_STATE_;
-		smsc95xx_mdio_write(dev->net, dev->mii.phy_id,
-				    SPECIAL_CTRL_STS, buf);
+		phy_write(pdata->phydev, SPECIAL_CTRL_STS, buf);
 	} else if (mdix_ctrl == ETH_TP_MDI_AUTO) {
-		buf = smsc95xx_mdio_read(dev->net, dev->mii.phy_id,
-					 SPECIAL_CTRL_STS);
+		buf = phy_read(pdata->phydev, SPECIAL_CTRL_STS);
 		buf &= ~SPECIAL_CTRL_STS_OVRRD_AMDIX_;
 		buf &= ~(SPECIAL_CTRL_STS_AMDIX_ENABLE_ |
 			 SPECIAL_CTRL_STS_AMDIX_STATE_);
 		buf |= SPECIAL_CTRL_STS_AMDIX_ENABLE_;
-		smsc95xx_mdio_write(dev->net, dev->mii.phy_id,
-				    SPECIAL_CTRL_STS, buf);
+		phy_write(pdata->phydev, SPECIAL_CTRL_STS, buf);
 	}
 	pdata->mdix_ctrl = mdix_ctrl;
 }
-- 
2.27.0


  parent reply	other threads:[~2020-07-23 11:56 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-07-23 11:55 [PATCH net-next v2 0/6] Add PAL support to smsc95xx Andre Edich
2020-07-23 11:55 ` [PATCH net-next v2 1/6] smsc95xx: remove redundant function arguments Andre Edich
2020-07-23 11:55 ` [PATCH net-next v2 2/6] smsc95xx: use usbnet->driver_priv Andre Edich
2020-07-23 22:42   ` Andrew Lunn
2020-07-23 11:55 ` [PATCH net-next v2 3/6] smsc95xx: add PAL support to use external PHY drivers Andre Edich
2020-07-23 22:39   ` Andrew Lunn
2020-07-24 15:17     ` Andre.Edich
2020-07-24 15:34       ` Andrew Lunn
2020-07-25 16:33   ` kernel test robot
2020-07-25 16:33     ` kernel test robot
2020-07-23 11:55 ` [PATCH net-next v2 4/6] smsc95xx: remove redundant link status checking Andre Edich
2020-07-23 22:41   ` Andrew Lunn
2020-07-23 11:55 ` Andre Edich [this message]
2020-07-25 19:30   ` [PATCH net-next v2 5/6] smsc95xx: use PAL framework read/write functions kernel test robot
2020-07-25 19:30     ` kernel test robot
2020-07-23 11:55 ` [PATCH net-next v2 6/6] smsc95xx: use PHY framework instead of MII library Andre Edich
2020-07-25 23:36   ` kernel test robot
2020-07-25 23:36     ` kernel test robot

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=20200723115507.26194-6-andre.edich@microchip.com \
    --to=andre.edich@microchip.com \
    --cc=Parthiban.Veerasooran@microchip.com \
    --cc=UNGLinuxDriver@microchip.com \
    --cc=netdev@vger.kernel.org \
    --cc=steve.glendinning@shawell.net \
    /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.