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