Re: General network driver suspend/resume (was e1000 carrier related)



Stephen Hemminger wrote:
On Wed, 8 Nov 2006 13:04:07 +0100
Pavel Machek <pavel@xxxxxx> wrote:

Hi!

This behavior differs from every other network card, and is also present in the
7.3* version of the driver from sourceforge.

I think the e1000 should try to raise the link during the probe, so that it
works properly, without having to set ifconfig ethX up first.
I think you should cc e1000 maintainers, and perhaps provide a patch....
I've read it and not come up with an answer due to some other issues at hand. E1000 hardware works differently and this has been asked before, but the cards itself are in low power state when down. Changing this to bring up the link would make the card start to consume lots more power, which would automatically suck enormously for anyone using a laptop.
Well, maybe E1000 should behave as the other cards behave, and
different solution needs to be found for power saving? ifconfig eth0
suspend?

Pavel



The standard which all network drivers should use is:

module insertion:
start in initial powerdown state

open:
power up, bring up link

stop:
bring down link
return to powerdown state unless WOL is set.
if doing WOL go to lowest power sensing state

suspend:
same as stop

resume:
same as open

module removal:
stop already called so device should be in power down state.


Since suspend is basically same as stop, and resume is open
I am going to investigate doing suspend/resume in the network device layer
(unless subclassed by driver), so we can rip out the suspend/resume hook
from many network drivers. There will still be boards like sky2
that need own suspend/resume to deal with dual port etc.


beware that e1000 needs to save pci msi config space on top of the normal pci config space. Perhaps this needs to be fixed upstream in pci_save_state for msi devices, but the api for msi is not capable of detecting this atm.

Auke
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



Relevant Pages

  • Re: General network driver suspend/resume (was e1000 carrier related)
    ... 7.3* version of the driver from sourceforge. ... the cards itself are in low power state when down. ... beware that e1000 needs to save pci msi config space on top of the normal pci config ...
    (Linux-Kernel)
  • General network driver suspend/resume (was e1000 carrier related)
    ... 7.3* version of the driver from sourceforge. ... the cards itself are in low power state when down. ... The standard which all network drivers should use is: ...
    (Linux-Kernel)
  • Re: Totally broken PCI PM calls
    ... And we need partial tree suspend for that. ... cold most of the time as the system will remove power). ... driver must refuse suspend if it can't do it. ... So the driver decision of what state to enter into and how to wakeup ...
    (Linux-Kernel)
  • Re: Suspend in critical code
    ... Check the power manager documentation in CE help. ... that your driver can implement that are called by the power manager when it ... When the system begins a suspend, the PowerDown function of your drivers is ... >critical executing code is terminated before a suspend occurs. ...
    (microsoft.public.windowsce.platbuilder)
  • Re: Nvidia MCP55 Machine reboots on ixgb driver load
    ... There are some serious hardware compatibility issues with the ixgb mixing it with other cards on the same PCI-X bus, ... loading the driver with debug does not appear to produce ... 02:00.0 PCI bridge: NEC Corporation uPD720400 PCI Express - PCI/PCI-X Bridge ... ACPI: Power Button ...
    (Linux-Kernel)