linux内核模块中 软中断的 例子.doc

linux内核模块中 软中断的 例子.doc

ID:49768423

大小:92.51 KB

页数:4页

时间:2020-03-04

linux内核模块中 软中断的 例子.doc_第1页
linux内核模块中 软中断的 例子.doc_第2页
linux内核模块中 软中断的 例子.doc_第3页
linux内核模块中 软中断的 例子.doc_第4页
资源描述:

《linux内核模块中 软中断的 例子.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、直接上例子吧。只是捕获某个设备的中断而已。。。该文件的名字是irq.cviewplaincopytoclipboardprint?#include#include#include#include#include#defineDEBUG#ifdefDEBUG#defineMSG(message,args...)printk(KERN_DEBUG"irq:"message,##args)#else#defineMSG(message,arg

2、s...)#endifMODULE_LICENSE("GPL");MODULE_AUTHOR("silence1214");intirq;char*interface;//下面这2个参数通过插入内核模块的时候赋值的...module_param(irq,int,0644);module_param(interface,charp,0644);//中断捕获的时候的处理函数intirq_handle_function(intirq,void*device_id){staticintcount=1;MSG("[%d]receivetheirqat%ld...",count,jiffies);co

3、unt++;returnIRQ_NONE;}intinit_module(){//注册中断捕获,第三个参数的意思是和其他设备共享该中断号,最后一个参数是设备的id,其实对于共享下的设备这个号码据说是随便写,一般都写irq的了。//只要注册成功就可以等待对应设备的该中断号的到来就可以处理回调函数了。。if(request_irq(irq,irq_handle_function,IRQF_SHARED,interface,(void*)&irq)){MSG("registirqfailure...");return-EIO;}MSG("interface=%sandirq=%d...",i

4、nterface,irq);MSG("registirqsuccess...");return0;}voidcleanup_module(){free_irq(irq,&irq);MSG("unregistirq...");}#include#include#include#include#include#defineDEBUG#ifdefDEBUG#defineMSG(message,args...)printk(KERN_D

5、EBUG"irq:"message,##args)#else#defineMSG(message,args...)#endifMODULE_LICENSE("GPL");MODULE_AUTHOR("silence1214");intirq;char*interface;//下面这2个参数通过插入内核模块的时候赋值的...module_param(irq,int,0644);module_param(interface,charp,0644);//中断捕获的时候的处理函数intirq_handle_function(intirq,void*device_id){staticintcount=1

6、;MSG("[%d]receivetheirqat%ld...",count,jiffies);count++;returnIRQ_NONE;}intinit_module(){//注册中断捕获,第三个参数的意思是和其他设备共享该中断号,最后一个参数是设备的id,其实对于共享下的设备这个号码据说是随便写,一般都写irq的了。//只要注册成功就可以等待对应设备的该中断号的到来就可以处理回调函数了。。if(request_irq(irq,irq_handle_function,IRQF_SHARED,interface,(void*)&irq)){MSG("registirqfailure..

7、.");return-EIO;}MSG("interface=%sandirq=%d...",interface,irq);MSG("registirqsuccess...");return0;}voidcleanup_module(){free_irq(irq,&irq);MSG("unregistirq...");}对应的makefile的内容是viewplaincopytoc

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。