当前位置: 技术问答>linux和unix
linux串口驱动问题
来源: 互联网 发布时间:2017-04-09
本文导语: 本帖最后由 cyd411 于 2012-11-14 13:21:13 编辑 今天想自己写个uart1的驱动,使用的开发板是天嵌2440 但是申请中断的时候怎么搞都不行 只要申请中断就开发就没反映了,然后就自己从起了 代码如下 知道的说下,谢谢 ...
但是申请中断的时候怎么搞都不行 只要申请中断就开发就没反映了,然后就自己从起了
代码如下
知道的说下,谢谢
/* 注册中断 */
rc = request_irq(IRQ_S3CUART_RX1, irq_read, 0, "irq_read", NULL);
if (rc)
{
printk("irq_read not registered! Err:%dn", rc);
}
printk("register irq_read ok!n");
rc = request_irq(IRQ_S3CUART_TX1, irq_write, IRQF_DISABLED, "irq_write", NULL);
if (rc)
{
printk("irq_write not registered! Err:%dn", rc);
}
printk("register irq_write ok!n");
IRQ_S3CUART_RX1 可以申请
IRQ_S3CUART_TX1 就不行
为什么。。。
|
1. 先确认此引脚是否在系统中被复用,如果是,需要在开发板文件中进行配置。
2. 把IRQF_DISABLE换成IRQF_SHARED试下
3. 别用NULL,给具体的dev_id
2. 把IRQF_DISABLE换成IRQF_SHARED试下
3. 别用NULL,给具体的dev_id
|
确认中断号 有没有写对 当前要申请的中断是否已经被用了