Is the issue resolved?
This seems to be more of either a device that's buggy or some misunderstanding
in understanding the device specs.
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.
Thanks
Shaji Yusuf
________________________________
From: siddharth saxena <[email protected]>
To: anish singh <[email protected]>
Cc: Arun KS <[email protected]>; Sarbojit Ganguly
<[email protected]>; [email protected]
Sent: Thursday, June 14, 2012 2:35 PM
Subject: Re: Continuous Interrupt Problem
Initialized in Probe :
if (device->irq) {
ret = request_irq(device->irq, ts_int_handler,
IRQF_TRIGGER_LOW, DRIVER_NAME, device);
if (ret) {
pr_err("unable to register touch irq.(%s)\r\n",
device->input_dev->name);
goto err_request_irq;
}
}
The pin by default has to be initialized to Active Low.
On Thu, Jun 14, 2012 at 2:24 PM, anish singh <[email protected]>
wrote:
On Thu, Jun 14, 2012 at 2:11 PM, siddharth saxena
><[email protected]> wrote:
>> Hi Arun
>>
>> I tried changing the flag to IRQF_TRIGGER_HIGH but then device is behaving
>> abnormally(Hangs and is dead after some time).
>> Flooding interrupts still observed. Problem not solved.
>>
>> I want to know, are we supposed to change interrupt pin status or it is done
>> automatically when we return IRQ_HANDLED.
>why don't you paste the code for your probe routine where you are
>calling request_irq.
>Are you using threaded irq?It would be difficult to diagnose the
>problem without looking
>at your TSP manual and your code to find out the problem.
>
>>
>>
>>
>>
>> On Thu, Jun 14, 2012 at 12:21 PM, Sarbojit Ganguly
>> <[email protected]> wrote:
>>>
>>> Hi Arun,
>>>
>>> While I agree to your pointers but he is facing the problem of
>>> "interrupt floods" even before he touches.
>>> IMHO the culprit could be the flag.
>>>
>>> On 14 June 2012 12:01, Arun KS <[email protected]> wrote:
>>> > Hello Siddharth,
>>> >
>>> > On Thu, Jun 14, 2012 at 10:34 AM, siddharth saxena
>>> > <[email protected]> wrote:
>>> >> Hi all
>>> >>
>>> >> I need help with an issue.
>>> >> I have written a touch driver for a device and used the flag
>>> >> IRQF_TRIGGER_LOW to request irq.
>>> >> Now, when I boot the device, the touch interrupts are coming already
>>> >> without
>>> >> touching the screen.
>>> >> Continuous interrupts are occurring without any touch.
>>> >
>>> > Probably the default state of the gpio pin(which you configured as
>>> > irq) is low. Check your HW schematic.
>>> >
>>> > TSC should have interrupt polarity(Active High/Low), which you have to
>>> > choose depending on your schematic while initiallizing the TSC.
>>> > Also different modes like assert interrupt when finger moving, when
>>> > finger touch, or assert periodically.
>>> >
>>> > Hope these pointer will help you.
>>> >
>>> > Thanks,
>>> > Arun
>>> >
>>> >>
>>> >>
>>> >>
>>> >> --
>>> >> Regards
>>> >> Siddharth Saxena
>>> >>
>>> >>
>>> >> _______________________________________________
>>> >> Kernelnewbies mailing list
>>> >> [email protected]
>>> >> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>>> >>
>>> >
>>> > _______________________________________________
>>> > Kernelnewbies mailing list
>>> > [email protected]
>>> > http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>>>
>>>
>>>
>>> --
>>> Regards,
>>> Sarbojit
>>
>>
>>
>>
>> --
>> Regards
>> Siddharth Saxena
>>
>>
>> _______________________________________________
>> Kernelnewbies mailing list
>> [email protected]
>> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>>
>
--
Regards
Siddharth Saxena
_______________________________________________
Kernelnewbies mailing list
[email protected]
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies_______________________________________________
Kernelnewbies mailing list
[email protected]
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies