Platform: MSM8X39
OS: Android4.4
overview
设备使用中断通过interrupt-parent来指定interrupt source, 可以通过前面说的phandle来表示。 Interrupt source作为一个interrupt controller存在。
当没有指定interrupt-parent时,DT会假设当前interrupt node是parent node.
每个设备的中断有个interrupt property存在,用来表示当前使用的中断口,以及可能还有触发方式。 #interrupt-cells
property用来定义interrupt <u32>
的number。
properties
1. interrupts Property: interrupts
Value type: < prop-encoded-array>
Des:
用于表示当前所用中断号是多少,第二个参数一般表示中断触发的方式,电平/边缘触发。
例子:
[msm8939-common.dtsi]
元素在不同场景下表示也不一样,这里第二个元素是interrupt number. 其他两个元素貌似没用上?
2. interrupt-parent Property: interrupt-parent
Value type: < phandle>
Des:
对于中断来说,它的parent node不一定是interrupt parent,所有需要显示地指出。
如果没有写明,表明parent node就是默认的interrupt parent.
例子:
表明它的interrupt parent是msm_gpio.
[msm8939-pinctrl.dtsi]
3. #interrupt-cells Property: #interrupt-cells
Value type: < u32>
Des:
定义interrupt property 的number.
例子:
[msm8939-pinctrl.dtsi]
4. interrupt-parent Property: interrupt-parent
Value type: < empty>
Des:
表明当前node是个interrupt controller.
例子:
[msm8939-pinctrl.dtsi]
参考文档:
Q1:Power_ePAPR_APPROVED_v1.1.pdf
Q2:http://www.devicetree.org/Device_Tree_Usage
Q3:http://www.wowotech.net/sort/device_model
Kris.Fei
2014/10/30