On Friday 03 April 2009, Azam Ansari wrote:
> static irqreturn_t vpfe_motion_isr(int irq, void *dev_id, struct pt_regs 
> *regs)
> {
>     vpfe_obj *vpfe = &vpfe_device;
> 
>     tasklet_schedule(&motion_night_isr_work);
> 
>     return IRQ_RETVAL(1);

Make that IRQ_HANDLED ... and don't bother with "vpfe".


> }
> 
> In tasklet I do I2C Write and then I2C Read to get detection information and
> based on the detection information I wake-up the thread. But I get kernel
> panic error.

That's the problem.  Tasklets can't issue I2C calls,
since they can't sleep.  Don't use a tasklet.

Instead, use a workqueue.


_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to