Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 10 Jun 2003 14:16:32 -0600 (MDT)
From:      "M. Warner Losh" <imp@bsdimp.com>
To:        marks@ripe.net
Cc:        orion@freebsd.org
Subject:   Re: Correct PCI suspend and resume operations
Message-ID:  <20030610.141632.71103986.imp@bsdimp.com>
In-Reply-To: <20030610191504.GA8927@laptop.6bone.nl>
References:  <20030609035127.GA36909@laptop.6bone.nl> <200306101644.h5AGiawR066527@puma.icir.org> <20030610191504.GA8927@laptop.6bone.nl>

next in thread | previous in thread | raw e-mail | index | archive | help
In message: <20030610191504.GA8927@laptop.6bone.nl>
            Mark Santcroos <marks@ripe.net> writes:
: On Tue, Jun 10, 2003 at 09:44:36AM -0700, Orion Hodson wrote:
: > It looks like the pci configuration space state has been lost during
: > the suspend and resume.  This may be because the bus has removed power
: > from the devices attached to it on suspend.
: 
: For sure, in S4 mode the devices are powered down totally.
: 
: > I've been through a cross section of drivers this morning and some
: > explicitly save and restore the PCI configuration state space and
: > others don't.  The former seems like the safest path in most cases.
: 
: Yes, it is absolutely necessary even. (For the reason stated above)
: 
: > AFAICT, we don't common code for handling this and maybe there should
: > be some rather than have each driver replicate this behaviour.
: 
: In general, that would of course be better. However, I don't know if the
: PCI layer (in this case) always knows enough.
: On the other side, if the device itself has to do some special things, the
: PCI layer could at least do the generic stuff.
: (Warner, will this also be covered by the stuff you are doing?)

Yes.  I'm still working out those fields that we need to save.  In
general, BARs and a few other things aren't preserved accross D3 -> D0
state transitions.  Some drivers try to cope, but it should be done in
the main pci thread.

Warner



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030610.141632.71103986.imp>