<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/input/keyboard, branch v5.0</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v5.0</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v5.0'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2019-02-17T05:44:02Z</updated>
<entry>
<title>Input: st-keyscan - fix potential zalloc NULL dereference</title>
<updated>2019-02-17T05:44:02Z</updated>
<author>
<name>Gabriel Fernandez</name>
<email>gabriel.fernandez@st.com</email>
</author>
<published>2019-02-17T05:10:16Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=2439d37e1bf8a34d437573c086572abe0f3f1b15'/>
<id>urn:sha1:2439d37e1bf8a34d437573c086572abe0f3f1b15</id>
<content type='text'>
This patch fixes the following static checker warning:

drivers/input/keyboard/st-keyscan.c:156 keyscan_probe()
error: potential zalloc NULL dereference: 'keypad_data-&gt;input_dev'

Reported-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Signed-off-by: Gabriel Fernandez &lt;gabriel.fernandez@st.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;</content>
</entry>
<entry>
<title>Input: qt2160 - switch to using brightness_set_blocking()</title>
<updated>2019-02-11T22:25:31Z</updated>
<author>
<name>Dmitry Torokhov</name>
<email>dmitry.torokhov@gmail.com</email>
</author>
<published>2019-02-06T18:29:17Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=83cd203084f68707839c00df120eed367d49e311'/>
<id>urn:sha1:83cd203084f68707839c00df120eed367d49e311</id>
<content type='text'>
Now that LEDs core allows "blocking" flavor of "set brightness" method we
can use it and get rid of private work items.

Reviewed-by: Sven Van Asbroeck &lt;TheSven73@gmail.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
</entry>
<entry>
<title>Input: matrix_keypad - use flush_delayed_work()</title>
<updated>2019-02-09T17:00:03Z</updated>
<author>
<name>Dmitry Torokhov</name>
<email>dmitry.torokhov@gmail.com</email>
</author>
<published>2019-02-07T22:39:40Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=a342083abe576db43594a32d458a61fa81f7cb32'/>
<id>urn:sha1:a342083abe576db43594a32d458a61fa81f7cb32</id>
<content type='text'>
We should be using flush_delayed_work() instead of flush_work() in
matrix_keypad_stop() to ensure that we are not missing work that is
scheduled but not yet put in the workqueue (i.e. its delay timer has not
expired yet).

Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
</entry>
<entry>
<title>Input: cap11xx - switch to using set_brightness_blocking()</title>
<updated>2019-02-09T16:56:56Z</updated>
<author>
<name>Dmitry Torokhov</name>
<email>dmitry.torokhov@gmail.com</email>
</author>
<published>2019-02-05T21:52:26Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=628442880af8c201d307a45f3862a7a17df8a189'/>
<id>urn:sha1:628442880af8c201d307a45f3862a7a17df8a189</id>
<content type='text'>
Updating LED state requires access to regmap and therefore we may sleep,
so we could not do that directly form set_brightness() method.
Historically we used private work to adjust the brightness, but with the
introduction of set_brightness_blocking() we no longer need it.

As a bonus, not having our own work item means we do not have
use-after-free issue as we neglected to cancel outstanding work on
driver unbind.

Reported-by: Sven Van Asbroeck &lt;thesven73@gmail.com&gt;
Reviewed-by: Sven Van Asbroeck &lt;TheSven73@googlemail.com&gt;
Acked-by: Jacek Anaszewski &lt;jacek.anaszewski@gmail.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
</entry>
<entry>
<title>Input: snvs_pwrkey - allow selecting driver for i.MX 7D</title>
<updated>2019-01-28T19:24:18Z</updated>
<author>
<name>Stefan Agner</name>
<email>stefan@agner.ch</email>
</author>
<published>2019-01-28T18:24:29Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=4d741f3dd11c2a8a11536d568f14ab0321169f3d'/>
<id>urn:sha1:4d741f3dd11c2a8a11536d568f14ab0321169f3d</id>
<content type='text'>
The i.MX SNVS Power Key driver supports the i.MX 7D SoC family too.
Allow to enable the i.MX SNVS Power Key driver even if only i.MX 7D
SoC is selected.

Signed-off-by: Stefan Agner &lt;stefan@agner.ch&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;</content>
</entry>
<entry>
<title>Merge tag 'v4.20' into for-linus</title>
<updated>2019-01-14T23:33:23Z</updated>
<author>
<name>Dmitry Torokhov</name>
<email>dmitry.torokhov@gmail.com</email>
</author>
<published>2019-01-14T23:33:23Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=3eb66e91a25497065c5322b1268cbc3953642227'/>
<id>urn:sha1:3eb66e91a25497065c5322b1268cbc3953642227</id>
<content type='text'>
Sync with mainline to get linux/overflow.h among other things.
</content>
</entry>
<entry>
<title>Merge branch 'next' into for-linus</title>
<updated>2018-12-29T01:10:54Z</updated>
<author>
<name>Dmitry Torokhov</name>
<email>dmitry.torokhov@gmail.com</email>
</author>
<published>2018-12-29T01:10:54Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=592b15ba7260f8dec8bfc71ef0ea1934801a35aa'/>
<id>urn:sha1:592b15ba7260f8dec8bfc71ef0ea1934801a35aa</id>
<content type='text'>
Prepare input updates for 4.21 merge window.
</content>
</entry>
<entry>
<title>Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input</title>
<updated>2018-12-21T17:09:30Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2018-12-21T17:09:30Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=0b517333721c1b7a740e54b1cbe78a14884d51e7'/>
<id>urn:sha1:0b517333721c1b7a740e54b1cbe78a14884d51e7</id>
<content type='text'>
Pull input fixes from Dmitry Torokhov:
 "Switching a few devices with Synaptics over to SMbus and disabling
  SMbus on a couple devices with Elan touchpads as they need more
  plumbing on PS/2 side"

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
  Input: synaptics - enable SMBus for HP EliteBook 840 G4
  Input: elantech - disable elan-i2c for P52 and P72
  Input: synaptics - enable RMI on ThinkPad T560
  Input: omap-keypad - fix idle configuration to not block SoC idle states
</content>
</entry>
<entry>
<title>Input: nomadik-ske-keypad - fix a loop timeout test</title>
<updated>2018-12-21T08:52:37Z</updated>
<author>
<name>Dan Carpenter</name>
<email>dan.carpenter@oracle.com</email>
</author>
<published>2018-12-21T08:38:30Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=4d8f727b83bcd6702c2d210330872c9122d2d360'/>
<id>urn:sha1:4d8f727b83bcd6702c2d210330872c9122d2d360</id>
<content type='text'>
The loop exits with "timeout" set to -1 not to 0.

Fixes: 1158f0f16224 ("Input: add support for Nomadik SKE keypad controller")
Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;</content>
</entry>
<entry>
<title>Input: omap-keypad - fix idle configuration to not block SoC idle states</title>
<updated>2018-12-09T05:48:48Z</updated>
<author>
<name>Tony Lindgren</name>
<email>tony@atomide.com</email>
</author>
<published>2018-12-04T21:52:49Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=e2ca26ec4f01486661b55b03597c13e2b9c18b73'/>
<id>urn:sha1:e2ca26ec4f01486661b55b03597c13e2b9c18b73</id>
<content type='text'>
With PM enabled, I noticed that pressing a key on the droid4 keyboard will
block deeper idle states for the SoC. Let's fix this by using IRQF_ONESHOT
and stop constantly toggling the device OMAP4_KBD_IRQENABLE register as
suggested by Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;.

From the hardware point of view, looks like we need to manage the registers
for OMAP4_KBD_IRQENABLE and OMAP4_KBD_WAKEUPENABLE together to avoid
blocking deeper SoC idle states. And with toggling of OMAP4_KBD_IRQENABLE
register now gone with IRQF_ONESHOT, also the SoC idle state problem is
gone during runtime. We still also need to clear OMAP4_KBD_WAKEUPENABLE in
omap4_keypad_close() though to pair it with omap4_keypad_open() to prevent
blocking deeper SoC idle states after rmmod omap4-keypad.

Reported-by: Pavel Machek &lt;pavel@ucw.cz&gt;
Signed-off-by: Tony Lindgren &lt;tony@atomide.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;</content>
</entry>
</feed>
