【发布时间】:2018-06-15 14:41:00
【问题描述】:
我正在开发来自 Altera 的 Cyclone V SOC FPGA,它带有双 Cortex-A9 处理器。嵌入式系统(linux 4.15.7)是使用 Buildroot-2018.02 创建的。 U-boot 用于加载系统 i-e FPGA.rbf 文件、设备树 blob 和 zImage,一切正常。
我现在想将 RBF 文件集成到我的 linux 并从 Linux 对 FPGA 进行编程。我找到了几种方法,我理解的最常见的一种是将 CONFIGFS 与设备树覆盖一起使用。
所以我更改了我的设备树以集成覆盖、u-boot 启动脚本以禁用 FPGA 加载以及 linux“.config”文件中的以下选项make linux-xconfig:
+CONFIG_OF_OVERLAY=y
+CONFIG_ALTERA_STAPL=y
+CONFIG_CONFIGFS_FS=y
+CONFIG_SAMPLES=y
+CONFIG_SAMPLE_CONFIGFS=m
这些选项是我经过几次尝试后的状态。
在make和reboot之后,一旦内核被加载,我在控制台输入以下命令:
mkdir /config
mount -t configfs none /config
在这种状态下,我希望在 /config 文件夹中看到一些设备树文件,但没有,只有一个 rdma_cm 文件夹:
# ls /config
rdma_cm
我继续阅读这个主题,发现我必须在我的 linux 内核中启用 CONFIG_OF_CONFIGFS 选项。
问题:此选项在我的 linux 内核中不可用。此外,文件drivers/of/configfs.c 也不在这里。我徒劳地寻找如何为我的内核版本启用设备树覆盖。
如何配置我的内核以使设备树在 configfs 中可用?
【问题讨论】:
-
我可能会添加一些信息来帮助您帮助我,但我不知道哪一个是相关的。我会根据要求添加缺少的内容,以防止发布一千行...
标签: linux-kernel intel-fpga device-tree