use powersuspend when needed

Many thanks to Davide Rombolà for correcting the logic of the patch