Message ID | Z4gdtOaGsBhQCZXn@shell.armlinux.org.uk (mailing list archive) |
---|---|
Headers | show |
Series | net: add phylink managed EEE support | expand |
On 1/15/2025 12:42 PM, Russell King (Oracle) wrote: > Hi, > > Adding managed EEE support to phylink has been on the cards ever since > the idea in phylib was mooted. This overly large series attempts to do > so. I've included all the patches as it's important to get the driver > patches out there. > > Patch 1 adds a definition for the clock stop capable bit in the PCS > MMD status register. > > Patch 2 adds a phylib API to query whether the PHY allows the transmit > xMII clock to be stopped while in LPI mode. This capability is for MAC > drivers to save power when LPI is active, to allow them to stop their > transmit clock. > > Patch 3 extracts a phylink internal helper for determining whether the > link is up. > > Patch 4 adds basic phylink managed EEE support. Two new MAC APIs are > added, to enable and disable LPI. The enable method is passed the LPI > timer setting which it is expected to program into the hardware, and > also a flag ehther the transmit clock should be stopped. > > I have taken the decision to make enable_tx_lpi() to return an error > code, but not do much with it other than report it - the intention > being that we can later use it to extend functionality if needed > without reworking loads of drivers. > > I have also dropped the validation/limitation of the LPI timer, and > left that in the driver code prior to calling phylink_ethtool_set_eee(). > > The remainder of the patches convert mvneta, lan743x and stmmac, and > add support for mvneta. > > Since yesterday's RFC: > - fixed the mvpp2 GENMASK() > - dropped the DSA patch > - changed how phylink restricts EEE advertisement, and the EEE support > reported to userspace which fixes a bug. > Everything in this series looks good to me. Reviewed-by: Jacob Keller <jacob.e.keller@intel.com>