Writing driver for a net device which does not support interrupt
phil
phil at pjd.me.uk
Mon Mar 23 12:59:00 EDT 2015
On 23/03/15 10:51, Freeman Zhang wrote:
> I'm writing a net device driver for my final project in college. But the
> half-finished device doesn't support interrupt yet(those hardware guys...)
>
> So I'm wondering if there is some way to poll the device for its status
> and events.
You should take a look at kernel timers, this is a rather old resource
and was just the first hit in a google search but it should still be
relevant.
http://www.ibm.com/developerworks/library/l-timers-list/
Kernel timers will sort of prepare you for interrupts i.e. a kernel
timer will fire every $time_value and you can put your code which should
normally run during an interrupt in the callback code.
I've used kernel timers to debug interrupts on our hardware devices,
i.e. there have been times when the hardware has stopped raising
interrupts and I've put timers in to cover this. For example a new
firmware might work fine, but have completely broken interrupts or not
fire interrupts often enough and timers can prove to the hardware guys
that it's interrupts at fault ;)
hint: you might also want to look at tasklets and have your timer
callback just call a tasklet.
Phil
More information about the Kernelnewbies
mailing list