Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Input: cy8ctmg110_ts - let I2C core configure wake interrupt

I2C core already configures interrupt as wakeup source when device is
registered using I2C_CLIENT_WAKE flag, so let's rely on it instead of
configuring it ourselves.

Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://lore.kernel.org/r/20210603043726.3793876-4-dmitry.torokhov@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>

+4 -6
+4 -6
drivers/input/touchscreen/cy8ctmg110_ts.c
··· 254 254 struct i2c_client *client = to_i2c_client(dev); 255 255 struct cy8ctmg110 *ts = i2c_get_clientdata(client); 256 256 257 - if (device_may_wakeup(&client->dev)) 258 - enable_irq_wake(client->irq); 259 - else { 257 + if (!device_may_wakeup(&client->dev)) { 260 258 cy8ctmg110_set_sleepmode(ts, true); 261 259 cy8ctmg110_power(ts, false); 262 260 } 261 + 263 262 return 0; 264 263 } 265 264 ··· 267 268 struct i2c_client *client = to_i2c_client(dev); 268 269 struct cy8ctmg110 *ts = i2c_get_clientdata(client); 269 270 270 - if (device_may_wakeup(&client->dev)) 271 - disable_irq_wake(client->irq); 272 - else { 271 + if (!device_may_wakeup(&client->dev)) { 273 272 cy8ctmg110_power(ts, true); 274 273 cy8ctmg110_set_sleepmode(ts, false); 275 274 } 275 + 276 276 return 0; 277 277 } 278 278