<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mtk-20170518/package/kernel/gpio-button-hotplug/src, branch reboot</title>
<subtitle>MTK 20170518 : Mediatek SDK based on OpenWRT Barrier Breaker</subtitle>
<link rel='alternate' type='text/html' href='http://www.chd.sx/cgit/mtk-20170518/'/>
<entry>
<title>kernel: gpio-button-hotplug: Add missing ONESHOT flag to threaded IRQ request</title>
<updated>2016-03-03T20:24:47+00:00</updated>
<author>
<name>John Crispin</name>
<email>john@openwrt.org</email>
</author>
<published>2016-03-03T20:24:47+00:00</published>
<link rel='alternate' type='text/html' href='http://www.chd.sx/cgit/mtk-20170518/commit/?id=4ac3411f09cc2a1a3ef32dfb656ba3b044f3f2e7'/>
<id>4ac3411f09cc2a1a3ef32dfb656ba3b044f3f2e7</id>
<content type='text'>
Without the IRQF_ONESHOT flag in devm_request_threaded_irq() call I get
following error:

  genirq: Threaded irq requested with handler=NULL and !ONESHOT for irq 56
  gpio-keys gpio-keys: failed to request irq:56 for gpio:20

&gt;From kernel/irq/manage.c:

 The interrupt was requested with handler = NULL, so we use the default
 primary handler for it. But it does not have the oneshot flag set. In
 combination with level interrupts this is deadly, because the default
 primary handler just wakes the thread, then the irq lines is reenabled,
 but the device still has the level irq asserted. Rinse and repeat....

 While this works for edge type interrupts, we play it safe and reject
 unconditionally because we can't say for sure which type this interrupt
 really has. The type flags are unreliable as the underlying chip
 implementation can override them.

Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;

SVN-Revision: 48894
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Without the IRQF_ONESHOT flag in devm_request_threaded_irq() call I get
following error:

  genirq: Threaded irq requested with handler=NULL and !ONESHOT for irq 56
  gpio-keys gpio-keys: failed to request irq:56 for gpio:20

&gt;From kernel/irq/manage.c:

 The interrupt was requested with handler = NULL, so we use the default
 primary handler for it. But it does not have the oneshot flag set. In
 combination with level interrupts this is deadly, because the default
 primary handler just wakes the thread, then the irq lines is reenabled,
 but the device still has the level irq asserted. Rinse and repeat....

 While this works for edge type interrupts, we play it safe and reject
 unconditionally because we can't say for sure which type this interrupt
 really has. The type flags are unreliable as the underlying chip
 implementation can override them.

Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;

SVN-Revision: 48894
</pre>
</div>
</content>
</entry>
<entry>
<title>kernel: gpio-button-hotplug: update to use threaded irq's</title>
<updated>2016-02-12T08:29:11+00:00</updated>
<author>
<name>John Crispin</name>
<email>john@openwrt.org</email>
</author>
<published>2016-02-12T08:29:11+00:00</published>
<link rel='alternate' type='text/html' href='http://www.chd.sx/cgit/mtk-20170518/commit/?id=69517e88bea6ac19626dbff16cdc5e4a9f55cc25'/>
<id>69517e88bea6ac19626dbff16cdc5e4a9f55cc25</id>
<content type='text'>
Many gpio controllers 'cansleep' due to the fact that they are behind busses
e.g. i2c etc.

Using threaded irq's allows for 'sleep-able' gpio's to be used.

Signed-off-by: Pushpal Sidhu &lt;psidhu@gateworks.com&gt;
Signed-off-by: Tim Harvey &lt;tharvey@gateworks.com&gt;

SVN-Revision: 48696
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Many gpio controllers 'cansleep' due to the fact that they are behind busses
e.g. i2c etc.

Using threaded irq's allows for 'sleep-able' gpio's to be used.

Signed-off-by: Pushpal Sidhu &lt;psidhu@gateworks.com&gt;
Signed-off-by: Tim Harvey &lt;tharvey@gateworks.com&gt;

SVN-Revision: 48696
</pre>
</div>
</content>
</entry>
<entry>
<title>gpio-button-hotplug: handle EPROBE_DEFER and other errors</title>
<updated>2015-07-26T15:52:17+00:00</updated>
<author>
<name>Hauke Mehrtens</name>
<email>hauke@hauke-m.de</email>
</author>
<published>2015-07-26T15:52:17+00:00</published>
<link rel='alternate' type='text/html' href='http://www.chd.sx/cgit/mtk-20170518/commit/?id=886764657ad978194931e0bbc425d66f83f577da'/>
<id>886764657ad978194931e0bbc425d66f83f577da</id>
<content type='text'>
of_get_gpio_flags() could return an error like EPROBE_DEFER which was
not handled before. This patch takes the code from gpio_keys_polled.c
for error handling and also improves some other unrelated small parts.

Signed-off-by: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;

SVN-Revision: 46502
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
of_get_gpio_flags() could return an error like EPROBE_DEFER which was
not handled before. This patch takes the code from gpio_keys_polled.c
for error handling and also improves some other unrelated small parts.

Signed-off-by: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;

SVN-Revision: 46502
</pre>
</div>
</content>
</entry>
<entry>
<title>gpio-button-hotplug: remove #ifdef CONFIG_HOTPLUG, it is gone in newer kernels (fixes #16413)</title>
<updated>2014-05-23T22:13:10+00:00</updated>
<author>
<name>Felix Fietkau</name>
<email>nbd@openwrt.org</email>
</author>
<published>2014-05-23T22:13:10+00:00</published>
<link rel='alternate' type='text/html' href='http://www.chd.sx/cgit/mtk-20170518/commit/?id=6ee4d92e3469de50fbcf486a5bfc673b4c12a142'/>
<id>6ee4d92e3469de50fbcf486a5bfc673b4c12a142</id>
<content type='text'>
Signed-off-by: Felix Fietkau &lt;nbd@openwrt.org&gt;

SVN-Revision: 40838
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Felix Fietkau &lt;nbd@openwrt.org&gt;

SVN-Revision: 40838
</pre>
</div>
</content>
</entry>
<entry>
<title>gpio-button-hotplug: add wwan button</title>
<updated>2014-01-14T23:11:10+00:00</updated>
<author>
<name>Hauke Mehrtens</name>
<email>hauke@hauke-m.de</email>
</author>
<published>2014-01-14T23:11:10+00:00</published>
<link rel='alternate' type='text/html' href='http://www.chd.sx/cgit/mtk-20170518/commit/?id=45e3898a1122337ee1453883026b15056d6321c0'/>
<id>45e3898a1122337ee1453883026b15056d6321c0</id>
<content type='text'>
The wimax key will be used as a generic wwan key starting with Linux
3.13. The brcm47xx target uses this key for the 3g buttons. Also remove
the ifdef around KEY_WPS_BUTTON, this is in the kernel for a long time
now.

Signed-off-by: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;

SVN-Revision: 39290
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The wimax key will be used as a generic wwan key starting with Linux
3.13. The brcm47xx target uses this key for the 3g buttons. Also remove
the ifdef around KEY_WPS_BUTTON, this is in the kernel for a long time
now.

Signed-off-by: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;

SVN-Revision: 39290
</pre>
</div>
</content>
</entry>
<entry>
<title>gpio-button-hotplug: fix crash on remove</title>
<updated>2013-12-17T19:05:03+00:00</updated>
<author>
<name>Jonas Gorski</name>
<email>jogo@openwrt.org</email>
</author>
<published>2013-12-17T19:05:03+00:00</published>
<link rel='alternate' type='text/html' href='http://www.chd.sx/cgit/mtk-20170518/commit/?id=5c2aee90acc78d273d96a5f3126537257757fef7'/>
<id>5c2aee90acc78d273d96a5f3126537257757fef7</id>
<content type='text'>
Don't call gpio_keys_remove recursively. Setting the platform
data to NULL triggered an oops on the second iteration, so there was
no infinate loop.

Signed-off-by: Jonas Gorski &lt;jogo@openwrt.org&gt;

SVN-Revision: 39124
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Don't call gpio_keys_remove recursively. Setting the platform
data to NULL triggered an oops on the second iteration, so there was
no infinate loop.

Signed-off-by: Jonas Gorski &lt;jogo@openwrt.org&gt;

SVN-Revision: 39124
</pre>
</div>
</content>
</entry>
<entry>
<title>gpio-button-hotplug: add irq mode to driver</title>
<updated>2013-12-09T17:29:39+00:00</updated>
<author>
<name>John Crispin</name>
<email>john@openwrt.org</email>
</author>
<published>2013-12-09T17:29:39+00:00</published>
<link rel='alternate' type='text/html' href='http://www.chd.sx/cgit/mtk-20170518/commit/?id=bc76dec31f48771260a699229cd031982365d259'/>
<id>bc76dec31f48771260a699229cd031982365d259</id>
<content type='text'>
Signed-off-by: John Crispin &lt;blogic@openwrt.org&gt;

SVN-Revision: 39021
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: John Crispin &lt;blogic@openwrt.org&gt;

SVN-Revision: 39021
</pre>
</div>
</content>
</entry>
<entry>
<title>gpio-button-hotplug: add support for sliding switches</title>
<updated>2013-11-11T12:19:06+00:00</updated>
<author>
<name>John Crispin</name>
<email>john@openwrt.org</email>
</author>
<published>2013-11-11T12:19:06+00:00</published>
<link rel='alternate' type='text/html' href='http://www.chd.sx/cgit/mtk-20170518/commit/?id=40031fdf9b95c76d9e4a3df9886f9e1900909a82'/>
<id>40031fdf9b95c76d9e4a3df9886f9e1900909a82</id>
<content type='text'>
Signed-off-by: John Crispin &lt;blogic@openwrt.org&gt;

SVN-Revision: 38725
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: John Crispin &lt;blogic@openwrt.org&gt;

SVN-Revision: 38725
</pre>
</div>
</content>
</entry>
<entry>
<title>gpio-button-hotplug: add support for power buttons</title>
<updated>2013-10-28T13:45:57+00:00</updated>
<author>
<name>John Crispin</name>
<email>john@openwrt.org</email>
</author>
<published>2013-10-28T13:45:57+00:00</published>
<link rel='alternate' type='text/html' href='http://www.chd.sx/cgit/mtk-20170518/commit/?id=14457da13f7a96daae8e3eec4da7fd45133f08ad'/>
<id>14457da13f7a96daae8e3eec4da7fd45133f08ad</id>
<content type='text'>
Signed-off-by: John Crispin &lt;blogic@openwrt.org&gt;

SVN-Revision: 38557
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: John Crispin &lt;blogic@openwrt.org&gt;

SVN-Revision: 38557
</pre>
</div>
</content>
</entry>
<entry>
<title>gpio-button-hotplug: debounce the initial button state, the first reads at boot time might be wrong</title>
<updated>2013-08-05T10:32:13+00:00</updated>
<author>
<name>Felix Fietkau</name>
<email>nbd@openwrt.org</email>
</author>
<published>2013-08-05T10:32:13+00:00</published>
<link rel='alternate' type='text/html' href='http://www.chd.sx/cgit/mtk-20170518/commit/?id=6743f2625b854cd45d253e289844524c99584777'/>
<id>6743f2625b854cd45d253e289844524c99584777</id>
<content type='text'>
Signed-off-by: Felix Fietkau &lt;nbd@openwrt.org&gt;

SVN-Revision: 37702
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Felix Fietkau &lt;nbd@openwrt.org&gt;

SVN-Revision: 37702
</pre>
</div>
</content>
</entry>
</feed>
