并行端口打印机驱动及资源管理使用详解
并行端口打印机驱动函数分析
- lpt_timeout 函数
- 功能:该函数是 lpt(4) 的回调函数,用于处理丢失或未处理的中断。
- 代码示例:
static void lpt_timeout(void *arg) { struct lpt_data *sc = arg; device_t lpt_dev = sc->sc_dev; if (sc->sc_state & LP_OPEN) { sc->sc_ticks++; if (sc->sc_ticks > hz / LP_TOUT_MAX) sc->sc_ticks = hz / LP_TOUT_MAX; callout_reset(&sc->sc_callout, sc->sc_ticks, lpt_timeout, sc); } else sc->sc_state &= ~LP_TIMEOUT; if (sc->sc_state & LP_ERROR) sc->sc_state &= ~LP_ERROR; if (sc->s