Re: [PATCH 3/3] Input: zforce - remove zforce_irq
From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Date: 2015-07-13 17:11:52
On Mon, Jul 13, 2015 at 02:49:39PM +0200, Dirk Behme wrote:
From: Oleksij Rempel <redacted> zforce_irq will not be executed, since we use IRQF_ONESHOT.
? This does not make sense. Even with IRQF_ONESHOT the hard interrupt handles does get called. See handle_irq_event_percpu(). Thanks.
quoted hunk ↗ jump to hunk
Signed-off-by: Oleksij Rempel <redacted> Signed-off-by: Dirk Behme <redacted> --- drivers/input/touchscreen/zforce_ts.c | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-)diff --git a/drivers/input/touchscreen/zforce_ts.c b/drivers/input/touchscreen/zforce_ts.c index a1889e5..96bec6a 100644 --- a/drivers/input/touchscreen/zforce_ts.c +++ b/drivers/input/touchscreen/zforce_ts.c@@ -477,17 +477,6 @@ static void zforce_complete(struct zforce_ts *ts, int cmd, int result) } } -static irqreturn_t zforce_irq(int irq, void *dev_id) -{ - struct zforce_ts *ts = dev_id; - struct i2c_client *client = ts->client; - - if (ts->suspended && device_may_wakeup(&client->dev)) - pm_wakeup_event(&client->dev, 500); - - return IRQ_WAKE_THREAD; -} - static irqreturn_t zforce_irq_thread(int irq, void *dev_id) { struct zforce_ts *ts = dev_id;@@ -847,7 +836,7 @@ static int zforce_probe(struct i2c_client *client, */ irq_set_status_flags(irq, IRQ_NOAUTOEN); ret = devm_request_threaded_irq(&client->dev, irq, - zforce_irq, zforce_irq_thread, + NULL, zforce_irq_thread, IRQF_TRIGGER_LOW | IRQF_ONESHOT, input_dev->name, ts); if (ret) {-- 2.3.4
-- Dmitry