Messages in this thread |  | | Date | Wed, 20 Nov 2013 21:54:19 +0100 | From | Sebastian Hesselbarth <> | Subject | Re: [PATCH RFC v1 0/7] net: phy: Ethernet PHY powerdown optimization |
| |
On 11/20/2013 09:36 PM, David Miller wrote: > From: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> > Date: Wed, 20 Nov 2013 21:21:46 +0100 > >> Ethernet PHYs consume a significant amount of power when link is detected. >> Especially, for embedded systems it can be easily 20-40% of total system >> power. Now, currently most likely all ethernet drivers leave PHYs powered >> on, even if the device is taken down. Also, some stupid boot loaders power >> on all PHYs available. >> >> This RFC deals with saving power consumed by ethernet PHYs, that have no >> corresponding ethernet device driver or are attached to ethernet devices >> which are taken down by user request, i.e. ifconfig ethN down. Ports with >> no link, i.e. cable removed, are already quite good at power saving due to >> PHY internal link detection. > > The idea is sound and the goal is of course valuable, but it brings up > a chronically reoccurring issue as of late. > > You cannot reset the PHY or take it down without somehow retaining the > settings the PHY had when you bring it back up.
Right, as far as I understand BMCR powerdown, i.e. what is called in genphy_suspend/resume, powers down the PHY but _does_ retain PHY config. It is not resetting the device.
I haven't checked a lot of datasheets but [1] notes that "registers will preserve their configuration". Even if we have PHYs that do not preserve it, they should have a device specific callback for suspend/resume that takes care of preserving it.
[1] http://www.ti.com/lit/an/snoa463a/snoa463a.pdf
> If I ifdown/ifup a device, my ethtool link configuration better be > retained. > > This means the PHY layer must have a way to reprogram the device when > it is brought back up, with whatever settings the software state > things are there. >
|  |