| From: Pavel Machek<pavel at ucw.cz> | >... | > My question is whether there are aspects of suspending, other than | > latency, that the policy manager would need to consider in deciding | > whether to suspend or not. | > | > Look at it this way. In one scheme the policy manager code is: | > | > new_OP = select_transition(current_OP, decision_factors); | > set_OP(new_OP); | | No, it would be | | new_OP = select_transition(current_OP, decision_factors); | if (new_OP == SUSPEND) { | setup wakeup events ... | } | set_OP(new_OP); --- Sorry; in our implementation, the devices are responsible for configuring the wakeup events, either globally or in their suspend routines, so it would look like my example code. However, I would have expected the setup of wakeup events to happen in the kernel's set_OP implementation, rather than in the policy manager, anyway. Again, this model puts the decision to change in user space and the implementation of the decision in the kernel. scott -- scott preece motorola mobile devices, il67, 1800 s. oak st., champaign, il 61820 e-mail: preece at motorola.com fax: +1-217-384-8550 phone: +1-217-384-8589 cell: +1-217-433-6114 pager: 2174336114 at vtext.com