[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <BD5D0538-BD03-4CD8-8E12-2344AD7ED669@goldelico.com>
Date: Sat, 28 Jun 2014 19:57:53 +0200
From: "Dr. H. Nikolaus Schaller" <hns@...delico.com>
To: Pavel Machek <pavel@....cz>
Cc: Lukas M?rdian <lukas@...delico.com>,
Dmitry Torokhov <dmitry.torokhov@...il.com>,
linux-input@...r.kernel.org, LKML <linux-kernel@...r.kernel.org>,
Marek Belisko <marek@...delico.com>
Subject: Re: [PATCH] gpio_keys, twl4030-pwrbutton: stay awake for 1sec on resume
Hi,
Am 28.06.2014 um 19:08 schrieb Pavel Machek:
> Hi!
>
>> This gives the userspace (Replicant) a chance to fully handle the
>> pm_wakeup_event, before autosleep suspends the system alltogether
>> again.
>>
>> This fixes suspend/resume on the OpenPhoenux GTA04, in combination with
>> the Replicant 4.2.2 userspace, which needs to execute this to stay
>> awake: 'echo on > /sys/power/state'
>>
>> Signed-off-by: Lukas Märdian <lukas@...delico.com>
>> Signed-off-by: H. Nikolaus Schaller <hns@...delico.com>
>
> I'm sorry, but we should not be doing this.
>
> You basically put a delay in driver to work around userspace bug.
Do you think it is a user-space bug if the kernel goes to sleep again
before giving user space any chance to react to an event?
And the msec parameter is described as:
@msec: Anticipated event processing time (in milliseconds).
Isn't calling pm_wakeup_event() with a non-zero msec the standard
method to handle this situation? And it is used in other drivers. E.g. in
_mmc_detect_change() or hub_suspend().
And if I understand the code of __pm_wakeup_event() correctly it does
*not* delay, but just modifies the wakeup_source timer to expire a little
later. I.e. keep the system longer awake. So as long as the system is
not suspended there is no difference to current driver.
> There must be better
> solution....
I am not sure how it could look like.
-- hns--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists