看板 LinuxDev 關於我們 聯絡資訊
現在一般的裝置大多都是level trigger了, 多半使用IRQF_DISABLED, 要看完整的IRQF_ 種類可以看linux/interrupt.h. ※ 引述《hsuya (隱身術??)》之銘言: : 各位先進你好: : 小弟剛踏入linux 驅動程式開發 : 我想請問一下 : IRQF_TRIGGER_NONE 的信號觸發方式是怎樣的一個觸發方式?? : 在諸多範例中不乏有下面的用法 : if (request_irq(BUTTON_IRQ, button_interrupt, 0, "button", NULL)) : { : printk(KERN_ERR "button.c: Can't allocate irq %d\n", button_irq); : return -EBUSY; : } : 但是在程式上下文中卻沒有用set_irq_type 來宣告該信號是上緣/下緣/level trigger : 我很納悶這樣的用法的意義為何? : IRQF_TRIGGER_NONE是哪種觸發方式啊? : #include <linux/input.h> : #include <linux/module.h> : #include <linux/init.h> : #include <asm/irq.h> : include <asm/io.h> : static struct input_dev *button_dev; : static irqreturn_t button_interrupt(int irq, void *dummy) : { : input_report_key(button_dev, BTN_0, inb(BUTTON_PORT) & 1); : input_sync(button_dev); : return IRQ_HANDLED; : } : static int __init button_init(void) : { : int error; : if (request_irq(BUTTON_IRQ, button_interrupt, 0, "button", NULL)) : { : printk(KERN_ERR "button.c: Can't allocate irq %d\n", button_irq); : return -EBUSY; : } : button_dev = input_allocate_device(); : .... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 1.169.182.117