如何在Xilinx ZCU102上启用PMU GIC代理?

问题描述 投票:0回答:1

我的板子是Xilinx ZCU102,我需要GIC Proxy功能来实现UART中断。这是我的配置。

  1. 根据官方文档,要激活PMU的GIC Proxy,需要关闭RPU和APU。 (触发掉电中断)

  2. 初始化以下将要使用的寄存器

  3. 启用GPI1

  4. 启用 GICP0 IRQ(将 GICP0_IRQ_STATUS 读取为 0x0)。

  5. 触发GICP0 IRQ(读取GICP0_IRQ_STATUS为0x400000,满足触发UART1中断的预期条件。)。

  6. 完成这些步骤后,使用uartps中的XUartPs_Recv接收数据,但不会触发UART中断。

我尝试过官方Xilinx UART驱动,但FAE提到它适用于APU,不适用于PMU。因此,我必须自己去尝试、去犯错。有人尝试过使用 zcu102 PMU GIC 代理或 UART 中断吗?请帮助我,谢谢。

interrupt uart xilinx
1个回答
0
投票

PMU 无法访问 UART 中断,只能访问PMU 中断中列出的中断。即使使用 GIC 代理,也无法将 UART 中断与 PMU 连接,因为只有APU 专用外设中断表中提到的中断可以传播到 PMU(并且此列表不包括外设中断,也如下所示) ).

但是可能有一种方法可以将 UART 中断连接到 PMU:如果您可以将 UART 中断从 Zynq PS IP 中取出(在 vivado 模块设计中),并将该 UART 中断连接到 zynq PS 中断端口(PL 2 PS 中断) )。但我不确定是否可以从 Zynq 中带出 UART 中断。

© www.soinside.com 2019 - 2024. All rights reserved.