ACPI/PCI _PS3 slot power management

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



pci_set_power_state() is a per-PCI-function interface, just like
most of the other PCI interfaces.  On ACPI systems, it ultimately
calls acpi_bus_set_power(), which evaluates the _PSx method of the
ACPI function object.

This: http://www.microsoft.com/whdc/system/pnppwr/hotadd/hotplugpci.mspx
suggests that a system that supports ACPI hotplug and power control
should supply an ACPI device for each PCI function that might exist
in the slot.  The _PSx methods exist under one or more of these devices
(the document above suggests that it's under each device; the HP systems
I've seen have _PSx only under the device for function 0).

In any case, the _PSx methods control power to the whole *slot*, not
just a single function.  The result is that calling pci_set_power_state()
on one PCI function turns off power to the entire slot, even though there
may be other independent functions that shouldn't be turned off.

Do we need to be smarter in acpi_pci_set_power_state(), and collect
up all the PCI per-function power requests, and only pass those
down to acpi_bus_set_power() when all the functions agree?

Other than the Microsoft document above, I haven't seen a good spec
that clarifies this issue.

Bjorn
-
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux