From: "Russell King (Oracle)" <linux@armlinux.org.uk>
To: Andrew Lunn <andrew@lunn.ch>
Cc: netdev <netdev@vger.kernel.org>,
Florian Fainelli <f.fainelli@gmail.com>,
Vladimir Oltean <vladimir.oltean@nxp.com>,
Sean Wang <sean.wang@mediatek.com>,
Landen Chao <Landen.Chao@mediatek.com>,
DENG Qingfang <dqfext@gmail.com>,
Matthias Brugger <matthias.bgg@gmail.com>,
AngeloGioacchino Del Regno
<angelogioacchino.delregno@collabora.com>,
Doug Berger <opendmb@gmail.com>,
Broadcom internal kernel review list
<bcm-kernel-feedback-list@broadcom.com>,
Wei Fang <wei.fang@nxp.com>, Shenwei Wang <shenwei.wang@nxp.com>,
Clark Wang <xiaoning.wang@nxp.com>,
NXP Linux Team <linux-imx@nxp.com>,
UNGLinuxDriver@microchip.com, Byungho An <bh74.an@samsung.com>,
Giuseppe Cavallaro <peppe.cavallaro@st.com>,
Alexandre Torgue <alexandre.torgue@foss.st.com>,
Jose Abreu <joabreu@synopsys.com>,
Maxime Coquelin <mcoquelin.stm32@gmail.com>,
Heiner Kallweit <hkallweit1@gmail.com>,
Woojung Huh <woojung.huh@microchip.com>,
Oleksij Rempel <linux@rempel-privat.de>
Subject: Re: [PATCH RFC 00/18] Rework MAC drivers EEE support
Date: Fri, 17 Feb 2023 11:42:06 +0000 [thread overview]
Message-ID: <Y+9oDrTXCX6xVKSl@shell.armlinux.org.uk> (raw)
In-Reply-To: <20230217034230.1249661-1-andrew@lunn.ch>
On Fri, Feb 17, 2023 at 04:42:12AM +0100, Andrew Lunn wrote:
> phy_init_eee() is supposed to be called once auto-neg has been
> completed to determine if EEE should be used with the current link
> mode. The MAC hardware should then be configured to either enable or
> disable EEE. Many drivers get this wrong, calling phy_init_eee() once,
> or only in the ethtool set_eee callback.
>
> This patchset changes the API, such that EEE becomes the same as other
> parameters which are determined by auto-neg. As will speed and duplex,
> active EEE is now indicated in the phydev structure, and the
> adjust_link callbacks have been modified to act upon its value.
>
> eee_set and eee_get have been simplified, given that the phylib
> functions act upon most of the data in eee_set, and fill in most of
> the information needed for eee_set.
This is a very nice cleanup, and removes a bunch of logic from MAC
drivers into the phylib core code that should result in more
uniform behaviour across MAC drivers for this feature. Great!
I'm left wondering about the phylink using drivers, whether we could
go a little further, because there's also the tx_lpi_enabled flag
which should also gate whether EEE is enabled at the MAC - and
whether that logic could be handled entirely within phylink too.
That would mean instead of mac_link_up() being passed the phydev
(and EEE is the reason the phydev is passed) we could instead just
pass an "eee" flag to tell the MAC to program itself appropriately.
Then, the only thing which MAC drivers need to concern themselves
with is setting the TX LPI timer to the appropriate value (which
may need to happen in mac_link_up()).
However, for this series, it's definitely a much needed improvement!
Thanks!
--
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 40Mbps down 10Mbps up. Decent connectivity at last!
next prev parent reply other threads:[~2023-02-17 11:42 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-17 3:42 [PATCH RFC 00/18] Rework MAC drivers EEE support Andrew Lunn
2023-02-17 3:42 ` [PATCH RFC 01/18] net: phy: Add phydev->eee_active to simplify adjust link callbacks Andrew Lunn
2023-02-17 9:09 ` Oleksij Rempel
2023-02-17 13:35 ` Andrew Lunn
2023-02-17 11:36 ` Russell King (Oracle)
2023-02-17 13:37 ` Andrew Lunn
2023-02-17 3:42 ` [PATCH RFC 02/18] net: phy: Add helper to set EEE Clock stop enable bit Andrew Lunn
2023-02-17 13:33 ` Andrew Lunn
2023-02-17 3:42 ` [PATCH RFC 03/18] net: marvell: mvneta: Simplify EEE configuration Andrew Lunn
2023-02-17 11:35 ` Russell King (Oracle)
2023-02-17 11:59 ` Russell King (Oracle)
2023-02-17 13:13 ` Russell King (Oracle)
2023-02-17 13:45 ` Andrew Lunn
2023-02-17 3:42 ` [PATCH RFC 04/18] net: stmmac: Drop usage of phy_init_eee() Andrew Lunn
2023-02-17 3:42 ` [PATCH RFC 05/18] net: stmmac: Simplify ethtool get eee Andrew Lunn
2023-02-17 3:42 ` [PATCH RFC 06/18] net: lan743x: Fixup EEE Andrew Lunn
2023-02-17 3:42 ` [PATCH RFC 07/18] net: fec: Move fec_enet_eee_mode_set() and helper earlier Andrew Lunn
2023-02-17 3:42 ` [PATCH RFC 08/18] net: FEC: Fixup EEE Andrew Lunn
2023-02-17 8:19 ` Oleksij Rempel
2023-02-17 12:32 ` Russell King (Oracle)
2023-02-17 13:58 ` Andrew Lunn
2023-02-18 2:00 ` Andrew Lunn
2023-02-17 3:42 ` [PATCH RFC 09/18] net: genet: " Andrew Lunn
2023-02-17 3:48 ` Florian Fainelli
2023-02-17 14:00 ` Andrew Lunn
2023-02-17 3:42 ` [PATCH RFC 10/18] net: sxgdb: " Andrew Lunn
2023-02-17 3:42 ` [PATCH RFC 11/18] net: dsa: mt7530: Swap to using phydev->eee_active Andrew Lunn
2023-02-17 3:42 ` [PATCH RFC 12/18] net: dsa: mt7530: Call phylib for set_eee and get_eee Andrew Lunn
2023-02-17 11:48 ` Russell King (Oracle)
2023-02-17 14:10 ` Andrew Lunn
2023-02-18 2:10 ` Andrew Lunn
2023-02-17 3:42 ` [PATCH RFC 13/18] net: dsa: b53: Swap to using phydev->eee_active Andrew Lunn
2023-02-17 3:42 ` [PATCH RFC 14/18] net: dsa: b53: Call phylib for set_eee and get_eee Andrew Lunn
2023-02-17 3:42 ` [PATCH RFC 15/18] net: phylink: Remove unused phylink_init_eee() Andrew Lunn
2023-02-17 11:42 ` Russell King (Oracle)
2023-02-17 3:42 ` [PATCH RFC 16/18] net: phylink: Update comment about configuring EEE in mac_link_up() Andrew Lunn
2023-02-17 11:43 ` Russell King (Oracle)
2023-02-17 3:42 ` [PATCH RFC 17/18] net: phy: remove unused phy_init_eee() Andrew Lunn
2023-02-17 3:42 ` [PATCH RFC 18/18] net: usb: lan78xx: Fixup EEE Andrew Lunn
2023-02-17 11:42 ` Russell King (Oracle) [this message]
2023-02-17 14:17 ` [PATCH RFC 00/18] Rework MAC drivers EEE support Andrew Lunn
2023-02-17 14:25 ` Russell King (Oracle)
2023-02-18 12:25 ` Oleksij Rempel
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=Y+9oDrTXCX6xVKSl@shell.armlinux.org.uk \
--to=linux@armlinux.org.uk \
--cc=Landen.Chao@mediatek.com \
--cc=UNGLinuxDriver@microchip.com \
--cc=alexandre.torgue@foss.st.com \
--cc=andrew@lunn.ch \
--cc=angelogioacchino.delregno@collabora.com \
--cc=bcm-kernel-feedback-list@broadcom.com \
--cc=bh74.an@samsung.com \
--cc=dqfext@gmail.com \
--cc=f.fainelli@gmail.com \
--cc=hkallweit1@gmail.com \
--cc=joabreu@synopsys.com \
--cc=linux-imx@nxp.com \
--cc=linux@rempel-privat.de \
--cc=matthias.bgg@gmail.com \
--cc=mcoquelin.stm32@gmail.com \
--cc=netdev@vger.kernel.org \
--cc=opendmb@gmail.com \
--cc=peppe.cavallaro@st.com \
--cc=sean.wang@mediatek.com \
--cc=shenwei.wang@nxp.com \
--cc=vladimir.oltean@nxp.com \
--cc=wei.fang@nxp.com \
--cc=woojung.huh@microchip.com \
--cc=xiaoning.wang@nxp.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 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).