设备树中interrupts两种写法是否等效?完整文档获取咨询
设备树中断属性写法疑问解答
两个中断属性写法的含义是否相同?
是,这两种写法完全等价。
IRQ_TYPE_LEVEL_LOW是设备树中用于描述中断触发类型的宏,它的定义值就是0。你可以在Linux内核源码的include/dt-bindings/interrupt-controller/irq.h头文件里找到这个宏的定义:
#define IRQ_TYPE_LEVEL_LOW 0x00000000
所以在设备树里写interrupts = <4 0>;和interrupts = <4 IRQ_TYPE_LEVEL_LOW>;,预编译后都会被解析成相同的数值,含义完全一致。
完整的设备树文档获取渠道
- Linux内核源码自带的设备树绑定文档:位于内核源码树的
Documentation/devicetree/bindings目录下,按设备类型、总线、中断控制器等分类,详细说明了各类设备树节点的属性规范。 - 内核头文件中的宏定义:除了前面提到的
irq.h,include/dt-bindings目录下的其他头文件还包含了各类设备树常用宏(比如GPIO极性、时钟属性等)的定义。 - 官方设备树规范文档:Linux内核官方维护的设备树规范内容,包含在内核文档的
Documentation/devicetree/主目录下,涵盖了设备树的基本语法、节点结构、属性含义等核心内容。
内容的提问来源于stack exchange,提问作者LittleSaints
相关产品推荐
相关产品推荐

