On 25 October 2012 15:34, Viresh Kumar <[email protected]> wrote:
> On 25 October 2012 15:26, Hongbo Zhang <[email protected]> wrote:
This is what your prcmu driver's routines are doing:
int db8500_prcmu_config_hotmon(u8 low, u8 high)
{
...
wait_for_completion(&mb4_transfer.work);
...
return 0;
}
This is why others in STE have used threaded_irqs... Because the
routine you guys call from interrupt handlers actually sleeps.
So, they can't be called from interrupt context.
I wanted you to knew this :)
Its okay now, you need to use threaded irq only and you can't use
normal request_irq(). Its not that you want to make things fast that's why
you used threaded irqs... If you try to sleep from interrupt context
(i.e. if you
have registered your handler with request_irq()), you will see a kernel crash.
--
viresh
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/