[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Interrupt routine accessing i2c bus
Hi John,
On 10/5/06, john bogus <bogusemail98230@xxxxxxxxx> wrote:
Both ISR's and tasklets both run in
interrupt context so the i2c drivers need to accessed
some other way.
Which Linux kernel are you using?
What about task_queues running in schedular queue in 2.4 Linux
kernels? They run in process context.
http://www.xml.com/ldd/chapter/book/ch06.html#t4
I was thinking of creating a task with
wait_for_completion(&xxx) and having the ISR do a
complete(&xxx) to wake the task.
Or use kernel_thread() and sleep, and let ISR wake it up? USB hub
thread is an example:
http://lxr.linux.no/source/drivers/usb/hub.c?v=2.4.28#L903
SK
--
Shakthi Kannan
http://www.shakthimaan.com
--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive: http://mail.nl.linux.org/kernelnewbies/
FAQ: http://kernelnewbies.org/faq/