一. 简介
前面学习了Linux内核中断的框架,主要学习了 Linux内核中断的上半部与下半部,以及常用的几种下半部机制。
如果使用设备树的话,就需要在设备树中设置好中断属性信息,
Linux
内核通过读取设备树中的中断属性信息来配置中断。
本文学习了如何在设备树中描述中断信息。
二. Linux中断实验-如何在设备树中描述中断信息
如果使用设备树的话就需要在设备树中设置好中断属性信息,
Linux
内核通过读取设备树
中的中断属性信息来配置中断。
1. IMX6ULL的GIC控制器
对于中断控制器而言,设备树绑定信息参考文档
Documentation/devicetree/bindings/arm/gic.txt
。打开
imx6ull.dtsi
文件,其中的
intc
节点就是
I.MX6ULL
的中断控制器节点,节点内容如下所示:
intc: interrupt-controller@00a01000 {
compatible = "arm,cortex-a7-gic";
#interrupt-cells = <3>;
interrupt-controller;
reg = <0x00a01000 0x1000>,
<0x00a02000 0x100>;
};
第
2
行,
compatible 属性值为“arm,cortex-a7-gic
”,在
Linux 内核源码中搜索“arm,cortex-a7-gic”即可找到 GIC
中断控制器驱动文件。
第
3
行,
#interrupt-cells
和
#address-cells
、