From: khalasa@piap•pl (Krzysztof Hałasa)
To: linux-kernel@vger•kernel.org
Cc: netdev@vger•kernel.org
Subject: Re: [PATCH 01/15] net: phy: Add phy_ethtool_nway_reset
Date: Thu, 17 Nov 2016 11:06:36 +0100 [thread overview]
Message-ID: <m3oa1e2zf7.fsf@t19.piap.pl> (raw)
In-Reply-To: 20161115180644.3941-2-f.fainelli@gmail.com
Hi,
Florian Fainelli <f.fainelli@gmail•com> writes:
> This function just calls into genphy_restart_aneg() to perform an
> autonegotation restart.
>
> +int phy_ethtool_nway_reset(struct net_device *ndev)
> +{
> + struct phy_device *phydev = ndev->phydev;
> +
> + if (!phydev)
> + return -ENODEV;
> +
> + return genphy_restart_aneg(phydev);
> +}
and then you're using this function as .nway_reset of all netdev drivers
in question.
genphy_restart_aneg() deals directly with MII BMCR register:
int genphy_restart_aneg(struct phy_device *phydev)
{
int ctl = phy_read(phydev, MII_BMCR);
if (ctl < 0)
return ctl;
ctl |= BMCR_ANENABLE | BMCR_ANRESTART;
/* Don't isolate the PHY if we're negotiating */
ctl &= ~BMCR_ISOLATE;
return phy_write(phydev, MII_BMCR, ctl);
}
Will the above work if the PHY is something special, e.g. a "fixed"
connection, or some kind of fiber trx etc? Normally, the PHY driver
could provide its own config_aneg().
--
Krzysztof Halasa
Industrial Research Institute for Automation and Measurements PIAP
Al. Jerozolimskie 202, 02-486 Warsaw, Poland
next prev parent reply other threads:[~2016-11-17 10:06 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-15 18:06 [PATCH 00/15] net: phy: Centralize auto-negotation restart Florian Fainelli
2016-11-15 18:06 ` [PATCH 01/15] net: phy: Add phy_ethtool_nway_reset Florian Fainelli
2016-11-17 10:06 ` Krzysztof Hałasa [this message]
2016-11-15 18:06 ` [PATCH 02/15] net: nb8800: Utilize phy_ethtool_nway_reset Florian Fainelli
2016-11-15 18:06 ` [PATCH 03/15] net: bcm63xx_enet: " Florian Fainelli
2016-11-15 19:59 ` Heinrich Schuchardt
2016-11-15 20:15 ` Florian Fainelli
2016-11-15 18:06 ` [PATCH 04/15] net: mv643xx_eth: " Florian Fainelli
2016-11-15 19:28 ` Andrew Lunn
2016-11-15 18:06 ` [PATCH 05/15] net: smsc911x: " Florian Fainelli
2016-11-15 18:06 ` [PATCH 06/15] net: ethernet: smsc9420: " Florian Fainelli
2016-11-15 18:06 ` [PATCH 07/15] net: ethernet: ll_temac: " Florian Fainelli
2016-11-15 18:06 ` [PATCH 08/15] net: ethernet: ixp4xx_eth: " Florian Fainelli
2016-11-15 18:06 ` [PATCH 09/15] net: bcmgenet: " Florian Fainelli
2016-11-15 18:06 ` [PATCH 10/15] net: fs_enet: " Florian Fainelli
2016-11-15 18:06 ` [PATCH 11/15] net: fec: " Florian Fainelli
2016-11-15 18:06 ` [PATCH 12/15] net: ethernet: ucc: " Florian Fainelli
2016-11-15 18:06 ` [PATCH 13/15] net: ethernet: lantiq_etop: " Florian Fainelli
2016-11-15 21:14 ` Langer, Thomas
2016-11-15 18:06 ` [PATCH 14/15] net: usb: ax88172x: " Florian Fainelli
[not found] ` <20161115180644.3941-1-f.fainelli-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2016-11-15 18:06 ` [PATCH 15/15] net: usb: lan78xx: " Florian Fainelli
2016-11-15 18:14 ` Woojung.Huh
2016-11-15 21:33 ` [PATCH 00/15] net: phy: Centralize auto-negotation restart David Miller
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=m3oa1e2zf7.fsf@t19.piap.pl \
--to=khalasa@piap$(echo .)pl \
--cc=linux-kernel@vger$(echo .)kernel.org \
--cc=netdev@vger$(echo .)kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox