【发布时间】:2021-04-01 17:12:39
【问题描述】:
我正在使用 petalinux2020.2 和 RFSOC、zcu111 板构建一个项目,对于我的应用程序,我需要从 petalinux 保留一段内存以用于 DMA,在 FPGA 的可编程逻辑上实现。 我尝试关注this tutorial,但在启动时出现错误。
以内核恐慌终止,如下所示: 我尝试使用 petalinux-config 命令修改内存大小,将内存大小设置为 0x70000000,但没有帮助。
设备树的条目如下所示:
/include/ "system-conf.dtsi"
/{
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
reserved: buffer@0 {
no-map;
reg = <0x0 0x70000000 0x0 0x10000000>;
};
};
reserved-driver@0 {
compatible = "xlnx,reserved-memory";
memory-region = <&reserved>;
};
};
我怎样才能做到这一点?
【问题讨论】:
-
0x10000000 是 256MB,看起来您正在尝试覆盖您的 ramdisk。这就是你想要的吗?
-
是的,我试图为 DMA 保留该范围内的内存。基本上我有一个 IP-Core,它会在启用时通过 DMA 写入这些位置。该位置由自定义内核模块映射,以便用户应用程序可以读取我的 DMA 设备生成的数据。
标签: linux embedded-linux xilinx device-tree petalinux