From: Antoine Tenart <antoine.tenart@bootlin.com>
To: Russell King <rmk+kernel@armlinux.org.uk>
Cc: Antoine Tenart <antoine.tenart@bootlin.com>,
maxime.chevallier@bootlin.com, Willy Tarreau <w@1wt.eu>,
"David S. Miller" <davem@davemloft.net>,
netdev@vger.kernel.org
Subject: Re: [PATCH net-next] net: mvpp2: cycle comphy to power it down
Date: Tue, 17 Dec 2019 19:04:23 +0100 [thread overview]
Message-ID: <20191217180423.GI3160@kwain> (raw)
In-Reply-To: <E1ihF4S-0000gt-1B@rmk-PC.armlinux.org.uk>
Hi Russell,
On Tue, Dec 17, 2019 at 03:47:36PM +0000, Russell King wrote:
> Presently, at boot time, the comphys are enabled. For firmware
> compatibility reasons, the comphy driver does not power down the
> comphys at boot. Consequently, the ethernet comphys are left active
> until the network interfaces are brought through an up/down cycle.
>
> If the port is never used, the port wastes power needlessly. Arrange
> for the ethernet comphys to be cycled by the mvpp2 driver as if the
> interface went through an up/down cycle during driver probe, thereby
> powering them down.
>
> This saves:
> 270mW per 10G SFP+ port on the Macchiatobin Single Shot (eth0/eth1)
> 370mW per 10G PHY port on the Macchiatobin Double Shot (eth0/eth1)
> 160mW on the SFP port on either Macchiatobin flavour (eth3)
>
> Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Acked-by: Antoine Tenart <antoine.tenart@bootlin.com>
Thanks!
Antoine
> ---
> drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c b/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
> index c17b6cafef07..88a475606f19 100644
> --- a/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
> +++ b/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
> @@ -5546,6 +5546,16 @@ static int mvpp2_port_probe(struct platform_device *pdev,
> port->phylink = NULL;
> }
>
> + /* Cycle the comphy to power it down, saving 270mW per port -
> + * don't worry about an error powering it up. When the comphy
> + * driver does this, we can remove this code.
> + */
> + if (port->comphy) {
> + err = mvpp22_comphy_init(port);
> + if (err == 0)
> + phy_power_off(port->comphy);
> + }
> +
> err = register_netdev(dev);
> if (err < 0) {
> dev_err(&pdev->dev, "failed to register netdev\n");
> --
> 2.20.1
>
--
Antoine Ténart, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
next prev parent reply other threads:[~2019-12-17 18:04 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-17 15:47 [PATCH net-next] net: mvpp2: cycle comphy to power it down Russell King
2019-12-17 18:04 ` Antoine Tenart [this message]
2019-12-20 1:27 ` 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=20191217180423.GI3160@kwain \
--to=antoine.tenart@bootlin.com \
--cc=davem@davemloft.net \
--cc=maxime.chevallier@bootlin.com \
--cc=netdev@vger.kernel.org \
--cc=rmk+kernel@armlinux.org.uk \
--cc=w@1wt.eu \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).