当前位置:  技术问答>linux和unix

关于S3C2410触摸屏与ADC驱动的冲突

    来源: 互联网  发布时间:2017-01-13

    本文导语:  我买了个开发板(2.4.18内核),本身带了触摸屏驱动,我想加上ADC驱动,但是当加上了ADC驱动,触摸屏不能用了。我好好的看这两个驱动,发现这两个驱动用了共同的中断号62。我到网上找了很久,有这样一种解决方...

我买了个开发板(2.4.18内核),本身带了触摸屏驱动,我想加上ADC驱动,但是当加上了ADC驱动,触摸屏不能用了。我好好的看这两个驱动,发现这两个驱动用了共同的中断号62。我到网上找了很久,有这样一种解决方案:
1、更改中断模式(一开始这两个驱动程序中才用的都是快速中断处理SA_INTERRUPT)成中断共享(SA_SHIRQ);
2、在中断服务程序的入口处,需要判断一下发生中断的设备。
具体的网页是:
http://topic.csdn.net/u/20080509/16/8dec027f-131b-496f-83e7-69474bb275a1.html
我也明白他的意思,但是当有中断发生时,怎么在驱动中判断是哪个设备产生的中断?应该怎么改我的驱动程序?

|
楼主,你贴代码吧,我告诉你怎么改。。
kernel 会调用所有注册在这个中断上的中断处理函数。
所以你需要自己在中断处理函数的入口判断一下, 这个中断是不是自己的,不是自己的就不要处理。
比如:

注册的时候:
irq = 4 ; //你自己的中断号
retval = request_irq(irq, fcpci_irq, IRQF_SHARED, "12345", 0);

处理的时候:

static irqreturn_t myirq (int irq, void *v, struct pt_regs *regs)
{
        if(*v != 12345(自己随便定义一个唯一的标识) )
           return IRQ_NONE;

}

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • s3c2410无线网卡
  • s3c2410开发路由器
  • 2.6内核 S3C2410 中断号怎么算啊
  • 如何利用s3c2410来计时
  • S3C2410寄存器的配置问题,请教了
  • 急需按键驱动源码 s3c2410开发板 linux-2.6.33的内核
  • S3C2410上SD卡驱动问题
  • 谁有s3c2410的USB Device Driver?
  • 在2.6.15下配置ARM s3c2410内核,无法启动munconfig,急......
  • S3C2410的AD驱动
  • S3C2410按键驱动功能实现
  • s3c2410 linux操作系统 insmod 驱动错误 内存耗尽
  • 嵌入式s3c2410的中断处理问题
  • arm S3c2410 上面的 linux 在哪里下载啊 ???
  • s3c2410无线网卡 iis7站长之家
  • S3C2410 SPI驱动问题(高手敬请入场)
  • 移植linux2.6.24到S3C2410却无法ping同主机
  • 跪地求助: 使用s3c2410自带ad运行开始不间断采集数据,我的鼠标就不能动了
  • 一个简单的s3c2410键盘驱动问题
  • s3c2410中断按钮怎么消除抖动


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3