Re: [linux-usb-devel] error to be returned while suspended

Pavel Machek
2006-10-07T11:08:38Z

Hi!

> > > > > - the issues of manual & automatic suspend and remote wakeup are orthogonal
> > > > > - there should be a common API for all devices
> > > >
> > > > AFAIK there is no demonstrated need for an API to suspend
> > > > individual devices. ...
> > >
> > > I doubt that a lot.
> >
> > You haven't demonstrated such a need either; so why doubt it?
>
> OK, let me state the basics.
>
> To get real power savings, we:
> - blank the display
> - spin down the hard drive
> - put the CPU into an ACPI sleep state
>
> To do the latter well, we need to make sure there's no DMA. It is
> important that less or little DMA will not help. We need no DMA.
> So we need to handle the commonest scenarios fully.
>
> I dare say that the commonest scenario involving USB is a laptop with
> an input device attached. Input devices are for practical purposes always
> opened. A simple resume upon open and suspend upon close is useless.

Okay, but you can simply do autosuspend with remote wakeup completely
inside input driver. You do ot need it to be controlled from X... at
most you need one variable ('autosuspend_inactivity_timeout')
controlled from userland.

That's what we already do for hdd spindown... you simply tell disk to
aitospindown after X seconds of inactivity.
Pavel
--
Thanks for all the (sleeping) penguins.