Функция обработчик прерываний
#include "proto.h"const struct sigevent *ser_intr( void *area,int id )
libio-char
Функция ser_attach_intr(), вызываемая из create_device(), использует InterruptAttach() для привязки ser_intr() к первому обработчику. Если вы не хотите передавать данные во время обработки прерывания, вы можете установить событие EVENT_TTO
и завершить выполнение. Это приведет к вызову функции tte() из io-char в контексте потока (thread time) вместо прерывания.
Функция ser_intr() выполняет следующие действия:
Возвращаемое значение функции-обработчика handler должно быть NULL
или указателем на событие struct sigevent, доставляемое ядром. События определены в <signal.h>
.
ЗОСРВ «Нейтрино»
Предыдущий раздел: Обзор примера драйвера последовательного порта