From 1d960003603403f28b9d391087905491b98f3923 Mon Sep 17 00:00:00 2001 From: Marek Szyprowski Date: Fri, 30 Mar 2018 11:12:21 -0700 Subject: Input: stmfts - use async probe & suspend/resume to avoid 2s delay Executing stmfts_power_on() function lasts over 2 seconds, what significantly slows down the boot and resume processes if driver is compiled in. Avoid this delay by forcing this driver to be probed and suspended/resumed asynchronously. Signed-off-by: Marek Szyprowski Signed-off-by: Dmitry Torokhov --- drivers/input/touchscreen/stmfts.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/input/touchscreen/stmfts.c b/drivers/input/touchscreen/stmfts.c index efdb1a75a163..40c833db150a 100644 --- a/drivers/input/touchscreen/stmfts.c +++ b/drivers/input/touchscreen/stmfts.c @@ -730,6 +730,7 @@ static int stmfts_probe(struct i2c_client *client, return err; pm_runtime_enable(&client->dev); + device_enable_async_suspend(&client->dev); return 0; } @@ -805,6 +806,7 @@ static struct i2c_driver stmfts_driver = { .name = STMFTS_DEV_NAME, .of_match_table = of_match_ptr(stmfts_of_match), .pm = &stmfts_pm_ops, + .probe_type = PROBE_PREFER_ASYNCHRONOUS, }, .probe = stmfts_probe, .remove = stmfts_remove, -- cgit v1.2.3-59-g8ed1b