设备树的interrupts属性

2021/09/08 08:50
阅读数 1.3K

在设备树里面,中断使用interrupts来描述。

interrupts属性后面,会有不同的参数,有时是两个,有时是三个

两个的时候一般是这样出现:

interrupt-parent = <&gpio2>;
interrupts = <29 0>;

一般这样表明:中断控制器是GPIO2,然后使用它的29号中断。(这里的29号,就是指29号引脚),0是指触发的方式(上升沿、下降沿等)。

 

三个的时候一般是这样出现:

interrupts = <0 37 1>;
interrupts = <GIC_SPI 37 1>;
interrupts = <GIC_PPI 37 1>;

先看几个缩写
IPI:inter-processer interrupt   中断号0~15
PPI:per processor interrupts    中断号16~31
SPI:shared processor interrupts  中断号 32 ~32+224
SGI:software generated interrupts (SGI).

三个的时候:

第一个参数表示是IPI、PPI、SPI、SGI其中的一个

第二个参数表示:是第一个参数里面的第几个

第三个参数表示:中断触发的类型。(上升沿、下降沿等)

下面是中断类型的值:

#define IRQ_TYPE_NONE        0
#define IRQ_TYPE_EDGE_RISING    1
#define IRQ_TYPE_EDGE_FALLING    2
#define IRQ_TYPE_EDGE_BOTH    (IRQ_TYPE_EDGE_FALLING | IRQ_TYPE_EDGE_RISING)
#define IRQ_TYPE_LEVEL_HIGH    4
#define IRQ_TYPE_LEVEL_LOW    8

 

以上是使用过程中的一点总结,有不对的地方,留言指正。

 

 

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部