Hi!
In 2.6.19, support for splitting driver suspend and resume callbacks into interrupt and non-interrupt contexts was added. Unfortunately, this broke /sys/device/.../power/state support for all devices. In the long run, this should be obsoleted by power management support in the individual drivers - however, in the case of network drivers (for example), currently only three drivers implement any sort of useful run-time power management.
Well... solution seems to be 'implement useful pm for more drivers'
not 'discourage people from doing so by re-enabling broken interface'.
--- a/Documentation/feature-removal-schedule.txt
+++ b/Documentation/feature-removal-schedule.txt
@@ -9,7 +9,8 @@ be removed from this file.
What: /sys/devices/.../power/state
dev->power.power_state
dpm_runtime_{suspend,resume)()
-When: July 2007
+ bus->pm_has_noirq_stage()
+When: Once alternative functionality has been implemented
.../power/state never worked properly. You have been warned and it is
going to be removed. It oopses kernels... while 'only' providing power
savings. If you are interested in power savings, please help doing
them right.