gpt4 book ai didi

linux - petalinux 问题重置为 zynq 上的逻辑

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:48:54 28 4
gpt4 key购买 nike

我一直在使用 Petalinux 在 Zynq 芯片上开发系统。对我来说仍然是个谜的一件事是从 petalinux 向芯片的逻辑端发出重置的方法。在Vivado中,当添加一个内存映射外设时,会自动插入一个处理器复位模块,复位连接到FCLK_ARESETx_N引脚。有没有办法从用户空间驱动这个重置?我可以愉快地从内存映射模块控制逻辑复位,但我对此很好奇。

最佳答案

slcr.c中曾经有一个sysfs接口(interface)正是出于这个目的,但它在 this commit 中被删除了.删除的原因是因为“永远不应该使用外围设备的重置控制,因为设备驱动程序控制外围设备”...

当时您可以通过将 1 写入 /sys/class/xslcr_reset/fpgax_out/reset 来断言 FCLK_ARESETx_N 信号。

如果您仍想使用来自用户空间的复位信号,您可以使用 devmem 命令(或 mmap 等)手动与 SLCR 寄存器对话。对我来说,合适的寄存器位于 0xf8000240。这来自...

  • .dts 中的 SLCR 基地址是 0xf8000000
  • slcr.c 的 FPGA 复位偏移量为 0x240

第n位将控制第n个复位信号。要从用户空间重置所有行,请使用:

devmem 0xf8000240 32 0xf #Raise reset
devmem 0xf8000240 32 0x0 #Lower reset

希望这对您有所帮助!

关于linux - petalinux 问题重置为 zynq 上的逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33909806/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com