"); //-->
1.1 中断概述
ARM 架构 linux 内核中,有 5 种常见的异常,其中中断异常是其一,Linux 内核将所
有中断统一编号,使用一个 irq_desc 结构体来描述这些中断,里面记录了中断名称、中断状
态、中断标记、并提供了中断的底层硬件访问函数(如:清除、屏蔽、使能中断),提供了这
个中断的处理函数入口,通过它还可以调用用户注册的的中断处理函数。linux 内核的中断体
系已经很完善了,驱动工程师需要做的就是调用 request_irq 函数向内核注册中断处理函
数,下面我们来看看 request_irq 函数的定义:
static inline int __must_check
request_irq(unsigned int irq, irq_handler_t handler, unsigned long flags,
const char *name, void *dev)
第一个参数 irq:中断号,与平台架构相关;
第二个参数 handler:用户中断处理函数;
第三个参数 flags:中断标记
第四个参数 devname:中断名字,可以通过 cat /proc/interrupts 查看;
第五个参数 dev_id:在 free_irq 中有用,也用做区分中断处理函数;
有注册就得对应着有注销,驱动的注销函数是 free_irq,其定义如下:
void free_irq(unsigned int irq, void *dev_id)
第一个参数 irq:中断号,与 request_irq 中的 irq 一致,用于定位 action 链表;
第二个参数 dev_id:用于在 action 链表中找到要卸载的表项;同一个中断的不同中断
处理函数必须使用不通的 dev_id 来区分,这就要求在注册中断共享时参数 dev_id 必须唯
一。
1.2 设备树文件修改
这里我们选用 back 按键用于测试,它的网络标号是“DISP0_WR”,对应的 IO 管脚编
号是“NANDF_WP”,对应的宏定义为“MX6QDL_PAD_NANDF_WP_B__GPIO6_IO09 ”
这个管脚在 gpio-keys 驱动中已经使用,我们需要在设备树中将其屏蔽,然后在设备树
文件中增加测试例程的设备树代码。
打开“arch/arm/boot/dts/imx6qdl-sabresd.dtsi”设备树文件。
将 gpios = <&gpio6 9 GPIO_ACTIVE_LOW>; 屏蔽掉,如下图所示。

在“itop_max485_ctl”之后添加以下代码:
key_int{
compatible = "itop,key_int_name";
pinctrl-names = "default";
gpio_key_int = <&gpio6 9 GPIO_ACTIVE_LOW>;
status = "okay";
};
添加完成之后如下图所示,

重新烧写设备树文件,在开发板“/sys/bus/platform/device”目录下会有 key_int 文件
夹生成,表明设备注册完成。
1.3 测试驱动
驱动源码在压缩包“独立中断例程_V1.0”中。
使用“insmod key_int.ko”命令加载驱动模块。如下图。

按下按键“Back”,会有打印信息,如下图所示。

卸载驱动如下图。

测试完成。

专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们
相关推荐
电子科技大学--嵌入式系统应用开发技术09
米尔发表演讲,并携瑞萨RZ产品亮相2025 Elexcon深圳电子展
[求助]VxWorks在DiskOnChip2000上的启动问题
关于VXWorks的菜鸟问题,请老鸟指教~~~~
电子科技大学--嵌入式系统应用开发技术06
2025年第二季度全球DRAM市场分析
网络安全是您的第一大风险,您可能没有做好准备
电动机步进角的显示电路
光电耦合器的应用电路
LoRa联盟® 扩大在华业务布局;任命甘泉(Andy Gan)为首位区域大使
交通灯显示系统
电子科技大学--嵌入式系统应用开发技术08
芯片的高级组件平均测试
光电耦合器组成的脉冲电路
Diodes 公司推出 80V/100V 异步降压转换器
光电耦合器技术资料
人工智能合理使用决定对半导体行业来说是个好兆头
电子科技大学--嵌入式系统应用开发技术07
诚聘
有用华邦的w90n740做开发的朋友吗?
谷歌将验证 Android 开发者在 Play 商店之外分发应用程序
\"菲\"逻辑元件构形电路
Qwen2-VL-3B模型在米尔瑞芯微RK3576开发板NPU多模态部署指导与评测
红外线光电开关术语解释
全波光控电路
光标控制电路
英特尔的珍珠港时刻
电子科技大学--嵌入式系统应用开发技术05
图形接口电路
关于打开文件