Re: Power Mangement Interfaces

Zhang Rui
2007-04-02T09:36:04Z

On Fri, 2007-03-30 at 17:57 -0600, Jordan Crouse wrote:
> Hey all -
>
> I'm happy to report that the OLPC power management effort is proceeding
> nicely. We have suspend to RAM functional, and the system is resuming
> back to the framebuffer console. We have the usual blips (USB), but
> those will be resolved in the fullness of time.
>
> I am now turning my attention to handling wakeup events - in particular,
> events that we can set at run-time. My thoughts on the matter are
> detailed here:
>
> http://wiki.laptop.org/go/Power_Management_Interface
>
> I use the ACPI wakeup infrastructure as an example because a) it exists,
> and b) it works. However, it doesn't share nicely, and it is a /proc
> file, so I sat down and thought of a more /sysfs friendly and generic
> model. I did keep APCI in mind, figuring that if a generic framework was
> designed well enough, they could slowly transition over as well (which is
> why the ACPI list is CCed).

The ACPI sysfs conversion work is on the way. :)
And we'll develop a generic interface for wakeup events to
replace /proc/acpi/wakeup.
Now a device may have two nodes in sysfs, one is the physical device
node and another is the ACPI devices node. Take a PCI device for
example, it's shown under /sys/devices/pci0000:00/...,
while /sys/devices/acpisystem:00/.../PNPOAO3:00/... stands for the same
device. This is a mess.
And we will map the ACPI device node to the physical one, so
that /sys/devices/pci0000:00/.../power/wakeup is the only one that we
should take care of.
If we want to make it more friendly, we can add /sys/power/wakeup/ and
create syslinks to all the devices that support wakeup attribute.

Thanks,
Rui