驱动的io端口的申请,注册中断
来源:互联网 发布:淘宝涉水批文 编辑:程序博客网 时间:2024/06/06 18:39
request_region(int io_port, int off_set,char *devname)
如果这段I/O 端口没有被占用,在我们的驱动程序中就可以使用它。在使用之前,必须向系统登记,以防止其他程序占用。
登记后,在/proc/ioports文件中可以看到你登记的io口。
int request_irq(unsigned int irq, void(*handle)(int, void*, struct pt_regs*)unsigned int long flags, const char *device);
如果登记成功,返回0,这是在/proc/interrupts文件中可以看你请求的中断。
测试时,先创建设备节点:#mknod test c 254 0 (设备名,类型,主设备号,从设备号),
然后进入/proc/
然后查看:文件iomem,ioports,interrupts,device,module等文件,
interrupts是对应的中断号和对应的设备(如定时器),这是系统所使用的中断。
iomem:是系统所使用的内存
ioports:使用的寄存器地址和对应的设备名。
device:当前你打开的设备有哪些
module:是系统当前加载了哪些模块,这个模块是我们的驱动程序。
linux内核启动顺序:
1,boot加载完内核后,内核先执行head.S文件,执行完后跳转到linux2.4/init/main.c函数。里面有一个start kerenl()函数,
然后找到/etc/inittab这个shell脚本并执行,这是x86架构,这是系统配置文件,但是44b0开发板是找到/etc/linuxrc脚本并执行。
- 驱动的io端口的申请,注册中断
- Exynos4412 中断驱动开发(一)—— 中断基础及中断的注册过程
- Exynos4412 中断驱动开发(一)—— 中断基础及中断的注册过程
- Linux对io端口的管理——为什么要申请IO才能使用
- [arm驱动]linux等待队列阻塞中断IO的应用
- 自己写的linux字符设备驱动读写IO端口
- 通用IO的中断
- linux中断子系统 - 中断控制器的注册
- 中断的注册和释放
- 中断线程化的注册
- 理解io端口和io内存--关于驱动开发的问题
- 驱动注册的流程
- 驱动注册的顺序
- IIC 驱动的注册
- 关于Linode的申请注册的文章
- E-Bullion的注册、申请与使用
- 申请注册GMAIL的免费企业邮箱
- Linux GPIO 的注册与申请
- Linux下进程间通信概述
- C++ Memory Management C++ 内存管理
- SWF代码分析与破解之路 (YueTai VIP视频信息获取工具) Socket续篇
- [LeetCode.Trick]Rotate Array
- leetcode 4 Median of Two Sorted Arrays
- 驱动的io端口的申请,注册中断
- GitHub上史上最全的Android开源项目分类汇总
- ds18b20驱动终于写好了
- LeetCode 题解(159): Partition List
- CodeForces 429B()
- 多线程
- 【LeetCode-面试算法经典-Java实现】【113-Path Sum II(路径和)】
- 【LeetCode-面试算法经典-Java实现】【114-Flatten Binary Tree to Linked List(二叉树转单链表)】
- 【LeetCode-面试算法经典-Java实现】【116-Populating Next Right Pointers in Each Node(二叉树链接右指针)】