<html><body><div style="color:#000; background-color:#fff; font-family:tahoma, new york, times, serif;font-size:12pt"><div><span>Is the issue resolved?</span></div><div><br><span></span></div><div><span>This seems to be more of either a device that's buggy or some misunderstanding in understanding the device specs.</span></div><div><span><br></span></div><div><span> I had a similar issue with one of our devices. When I get an interrupt I would do some thing in the device (reading buffers writing some registers and stuff) that should reset the Interrupt pin to high state again. But the hardware had a bug that would not let the Interrupt pin reset, and once I return from the Interrupt it would strike again causing the system to freeze.&nbsp;</span></div><div><br><span></span></div><div>Thanks <br></div><div>Shaji Yusuf</div><div><br><span></span></div><div><br></div>  <div style="font-family: tahoma, new york, times, serif; font-size: 12pt;"> <div
 style="font-family: times new roman, new york, times, serif; font-size: 12pt;"> <div dir="ltr"> <font face="Arial" size="2"> <hr size="1">  <b><span style="font-weight:bold;">From:</span></b> siddharth saxena &lt;siddharthsaxena1989@gmail.com&gt;<br> <b><span style="font-weight: bold;">To:</span></b> anish singh &lt;anish198519851985@gmail.com&gt; <br><b><span style="font-weight: bold;">Cc:</span></b> Arun KS &lt;getarunks@gmail.com&gt;; Sarbojit Ganguly &lt;unixman.linuxboy@gmail.com&gt;; kernelnewbies@kernelnewbies.org <br> <b><span style="font-weight: bold;">Sent:</span></b> Thursday, June 14, 2012 2:35 PM<br> <b><span style="font-weight: bold;">Subject:</span></b> Re: Continuous Interrupt Problem<br> </font> </div> <br>
<div id="yiv1710388756">Initialized in Probe :<br><br>if (device-&gt;irq) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ret = request_irq(device-&gt;irq, ts_int_handler,<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; IRQF_TRIGGER_LOW, DRIVER_NAME, device);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if (ret) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; pr_err("unable to register touch irq.(%s)\r\n",<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; device-&gt;input_dev-&gt;name);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; goto err_request_irq;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; }<br><br><br><br>The pin by default has to be initialized to Active Low.<br><br><br><br><br><div class="yiv1710388756gmail_quote">On Thu, Jun 14, 2012 at 2:24 PM, anish singh <span dir="ltr">&lt;<a rel="nofollow" ymailto="mailto:anish198519851985@gmail.com" target="_blank" href="mailto:anish198519851985@gmail.com">anish198519851985@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="yiv1710388756gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="yiv1710388756im">On Thu, Jun 14, 2012 at 2:11 PM, siddharth saxena<br>
&lt;<a rel="nofollow" ymailto="mailto:siddharthsaxena1989@gmail.com" target="_blank" href="mailto:siddharthsaxena1989@gmail.com">siddharthsaxena1989@gmail.com</a>&gt; wrote:<br>
&gt; Hi Arun<br>
&gt;<br>
&gt; I tried changing the flag to IRQF_TRIGGER_HIGH but then device is behaving<br>
&gt; abnormally(Hangs and is dead after some time).<br>
&gt; Flooding interrupts still observed. Problem not solved.<br>
&gt;<br>
&gt; I want to know, are we supposed to change interrupt pin status or it is done<br>
&gt; automatically when we return IRQ_HANDLED.<br>
</div>why don't you paste the code for your probe routine where you are<br>
calling request_irq.<br>
Are you using threaded irq?It would be difficult to diagnose the<br>
problem without looking<br>
at your TSP manual and your code to find out the problem.<br>
<div class="yiv1710388756HOEnZb"><div class="yiv1710388756h5">&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; On Thu, Jun 14, 2012 at 12:21 PM, Sarbojit Ganguly<br>
&gt; &lt;<a rel="nofollow" ymailto="mailto:unixman.linuxboy@gmail.com" target="_blank" href="mailto:unixman.linuxboy@gmail.com">unixman.linuxboy@gmail.com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; Hi Arun,<br>
&gt;&gt;<br>
&gt;&gt; While I agree to your pointers but he is facing the problem of<br>
&gt;&gt; "interrupt floods" even before he touches.<br>
&gt;&gt; IMHO the culprit could be the flag.<br>
&gt;&gt;<br>
&gt;&gt; On 14 June 2012 12:01, Arun KS &lt;<a rel="nofollow" ymailto="mailto:getarunks@gmail.com" target="_blank" href="mailto:getarunks@gmail.com">getarunks@gmail.com</a>&gt; wrote:<br>
&gt;&gt; &gt; Hello Siddharth,<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; On Thu, Jun 14, 2012 at 10:34 AM, siddharth saxena<br>
&gt;&gt; &gt; &lt;<a rel="nofollow" ymailto="mailto:siddharthsaxena1989@gmail.com" target="_blank" href="mailto:siddharthsaxena1989@gmail.com">siddharthsaxena1989@gmail.com</a>&gt; wrote:<br>
&gt;&gt; &gt;&gt; Hi all<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; I need help with an issue.<br>
&gt;&gt; &gt;&gt; I have written a touch driver for a device and used the flag<br>
&gt;&gt; &gt;&gt; IRQF_TRIGGER_LOW to request irq.<br>
&gt;&gt; &gt;&gt; Now, when I boot the device, the touch interrupts are coming already<br>
&gt;&gt; &gt;&gt; without<br>
&gt;&gt; &gt;&gt; touching the screen.<br>
&gt;&gt; &gt;&gt; Continuous interrupts are occurring without any touch.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Probably the default state of the gpio pin(which you configured as<br>
&gt;&gt; &gt; irq) is low. Check your HW schematic.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; TSC should have interrupt polarity(Active High/Low), which you have to<br>
&gt;&gt; &gt; choose depending on your schematic while initiallizing the TSC.<br>
&gt;&gt; &gt; Also different modes like assert interrupt when finger moving, when<br>
&gt;&gt; &gt; finger touch, or assert periodically.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Hope these pointer will help you.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Thanks,<br>
&gt;&gt; &gt; Arun<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; --<br>
&gt;&gt; &gt;&gt; Regards<br>
&gt;&gt; &gt;&gt; Siddharth Saxena<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; _______________________________________________<br>
&gt;&gt; &gt;&gt; Kernelnewbies mailing list<br>
&gt;&gt; &gt;&gt; <a rel="nofollow" ymailto="mailto:Kernelnewbies@kernelnewbies.org" target="_blank" href="mailto:Kernelnewbies@kernelnewbies.org">Kernelnewbies@kernelnewbies.org</a><br>
&gt;&gt; &gt;&gt; http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; _______________________________________________<br>
&gt;&gt; &gt; Kernelnewbies mailing list<br>
&gt;&gt; &gt; <a rel="nofollow" ymailto="mailto:Kernelnewbies@kernelnewbies.org" target="_blank" href="mailto:Kernelnewbies@kernelnewbies.org">Kernelnewbies@kernelnewbies.org</a><br>
&gt;&gt; &gt; <a rel="nofollow" target="_blank" href="http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies">http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies</a><br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; --<br>
&gt;&gt; Regards,<br>
&gt;&gt; Sarbojit<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; --<br>
&gt; Regards<br>
&gt; Siddharth Saxena<br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; Kernelnewbies mailing list<br>
&gt; <a rel="nofollow" ymailto="mailto:Kernelnewbies@kernelnewbies.org" target="_blank" href="mailto:Kernelnewbies@kernelnewbies.org">Kernelnewbies@kernelnewbies.org</a><br>
&gt; <a rel="nofollow" target="_blank" href="http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies">http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies</a><br>
&gt;<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>Regards<div>Siddharth Saxena</div><br>
</div><br>_______________________________________________<br>Kernelnewbies mailing list<br><a ymailto="mailto:Kernelnewbies@kernelnewbies.org" href="mailto:Kernelnewbies@kernelnewbies.org">Kernelnewbies@kernelnewbies.org</a><br><a href="http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies" target="_blank">http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies</a><br><br><br> </div> </div>  </div></body></html>