我发布了这是讨论 request_threaded_irq 的线程,但我没有得到任何回复。所以我是新鲜发布的。
我正在为电容式触摸屏开发触摸屏驱动程序。它使用 request_threaded_irq() 调用而不是 request_irq()。我无法理解两者之间的基本区别。它说 :-
姓名
request_threaded_irq — 分配中断线
概要
int request_threaded_irq (unsigned int irq, irq_handler_t handler,irq_handler_t thread_fn, unsigned long irqflags, const char *devname, void *dev_id);
论据
- irq - 要分配的中断线
- handler - 发生 IRQ 时要调用的函数。线程中断的主处理程序如果 NULL 和 thread_fn != NULL,则安装默认的主处理程序
- thread_fn - 从 irq 处理程序线程调用的函数 如果为 NULL,则不创建 irq 线程
- irqflags - 中断类型标志
- devname - 声明设备的 ascii 名称
- dev_id - 传回处理函数的 cookie
Handler 和 Thread_fn 参数是令人困惑的参数。驱动程序中也没有定义工作函数。
有人可以帮助我理解这一点吗?