Entry points: hardware I/O
Interrupt handlers
The hardware wants to tell us something has happened, so it raises
an interrupt line, and the function assigned as the interrupt
handler in the driver's attach code is called.
As interrupt lines are shared we need to check if the interrupt
is for our driver and return an appropriate value.
Polled I/O timer expiring
Usually done using something like the timeout(9) interface, specify
timeout_set() specifies function to be called
timeout_add() set a new expiry time
timeout_del() cancel an active timer