Hi, On Fri, Oct 26, 2012 at 03:19:13PM +0200, Tim Niemeyer wrote: > Adds support for configuring the omap-gpio driver use autosuspend for > runtime power management. This can reduce the latency in using it by > not suspending the device immediately on idle. If another access takes > place before the autosuspend timeout (2 secs), the call to resume the > device can return immediately saving some save/ restore cycles. > > This removes also the bank->mod_usage counter, because this is already > handled in pm_runtime. > > I use a gpio to monitor a spi transfer which occurs every 250µs. The > suspend overhead is to high, so almost every second transfer is lost. > This patch fixes that. > > Signed-off-by: Tim Niemeyer <tim.niemeyer@xxxxxxxxxxxxx> > --- > drivers/gpio/gpio-omap.c | 81 ++++++++++++++++++++++++--------------------- > 1 files changed, 43 insertions(+), 38 deletions(-) > > diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c > index 94cbc84..708d5a9 100644 > --- a/drivers/gpio/gpio-omap.c > +++ b/drivers/gpio/gpio-omap.c > @@ -31,6 +31,7 @@ > #include <asm/mach/irq.h> > > #define OFF_MODE 1 > +#define GPIO_AUTOSUSPEND_TIMEOUT 2000 something just hit me... If you keep timeout at 2000 ms and you hook this up to an IRQ line, it's very unlikely GPIO will ever sleep. Why did you choose 2000 ms ? Arbitrary value ? -- balbi
Attachment:
signature.asc
Description: Digital signature