While I do agree that Linux is partly to blame for this fiasco, we are also in a different world.<p>Who is responsible for the fact that an active I2C device prevents entering sleep state 0 but an active SPI device does not?  Where does that information get recorded?  And who needs to act on it?<p>On the RPi, you can change pin direction without being in supervisor mode--that&#x27;s not true on the BeagleBone.<p>These aren&#x27;t easy questions, and the Linux architecture makes it even harder.