新闻  |   论坛  |   博客  |   在线研讨会
zynq linux 中断号如何对应
lolo84 | 2016-12-28 17:35:06    阅读:6445   发布文章

在linux系统下,中断号跟BD中zynq7000 processer中配置的生成的中断号不是直接对应的,中间有一个“-32” 的关系,如下

For Shared Periperal interrupts, the value in the device tree is the (IRQ - 32) ;

例子 interrupts = <0x0 0x32 0x0>; 中间的参数0X32是中断号 50

uart@e0001000 {
 compatible = "xlnx,ps7-uart-1.00.a";
 reg = <0xe0001000 0x1000>;
 interrupts = <0x0 0x32 0x0>;
 interrupt-parent = <&gic>;
 clock = <50000000>;
};

The second value is the interrupt number. The translate function adds 16
 to SPIs and 32 to non-SPIs, so for interrupts generated by fabric logic
 in a Zynq, the number in the DTS file should be the hardware number (as
 shown in Xilinx Platform Studio, XPS) minus 32.

翻译:第二个参数是中断号。传递的过程中会区分是否为spi中断,如果是spi中断则加16,非spi则加32 ,
所以在devicetree中的生成的中断号是实际中断号减去32 ;


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客