2004-10-27 06:36:11

by Brown, Len

[permalink] [raw]
Subject: Re: [ACPI] Re: [Proposal]Another way to save/restore PCI config space for suspend/resume

Li Shaohua wrote:
> On Tue, 2004-10-26 at 17:21, Pavel Machek wrote:

>>>Here is a another idea:
>>>Record all PCI writes in Linux kernel...
>>
>>That looks extremely ugly to me. If you want to do something special
>>in resume function, just do it there. It will probably share a lot of
>>code with your init function, anyway.
>
> How can you handle devices without driver? And how to save/restore
> config space for special devices, such as LPC bridge and host bridge?

Say that writing the missing drivers is the only workable solution.
Does anybody have an estimate of how many there are and how big
a task that would be?

-Len


2004-10-27 10:21:52

by Benjamin Herrenschmidt

[permalink] [raw]
Subject: Re: [ACPI] Re: [Proposal]Another way to save/restore PCI config space for suspend/resume

On Wed, 2004-10-27 at 02:30 -0400, Len Brown wrote:
> Li Shaohua wrote:
> > On Tue, 2004-10-26 at 17:21, Pavel Machek wrote:
>
> >>>Here is a another idea:
> >>>Record all PCI writes in Linux kernel...
> >>
> >>That looks extremely ugly to me. If you want to do something special
> >>in resume function, just do it there. It will probably share a lot of
> >>code with your init function, anyway.
> >
> > How can you handle devices without driver? And how to save/restore
> > config space for special devices, such as LPC bridge and host bridge?
>
> Say that writing the missing drivers is the only workable solution.
> Does anybody have an estimate of how many there are and how big
> a task that would be?

This has been discussed a bit on linux-pm (on osdl lists, it's a new
list to discuss PM specific matters). I tend to think the core should
know at least a few "standard" things like P2P bridges, by simply
saving/restoring a bigger chunk of config space. We also need to fix the
current restore code I suppose, so that it disables IO & MEM, then
restore all registers, then re-enable those 2 ones...

I don't want to cross-post between lists, but people are welcome to join
linux-pm to talk about implementation issues related to power
management, including the changes we are trying to define to the various
driver callbacks.

Ben.