ZYNQ跑系统 系列(四) AXI-DMA的linux下运行

本文详细介绍了如何在ZYNQ FPGA平台上,使用Linux系统配置和运行AXI-DMA驱动。从搭建硬件环境、生成设备树、制作FSBL引导文件、编译u-boot和kernel,到准备运行Linux、编译和测试示例程序,每个步骤都提供了详细的操作指南。通过此文,读者可以理解AXI-DMA在Linux环境下的工作流程,并学会将其应用于VDMA。
摘要由CSDN通过智能技术生成

AXI-DMA的linux驱动

一、搭建硬件环境

vivado版本2017.4,芯片为7010,不过不管什么版本和芯片大致步骤是一样的
本文工程文件:https://gitee.com/long_fly/AXIDMA_linux
硬件平台PL的搭建同ZYNQ基础系列(六) DMA基本用法,在这个工程的基础上添加SD卡(根据自己的开发板硬件选择相应的引脚)
这里写图片描述
然后直接生成bit文件,然后记得要导出硬件(包含bit文件)进SDK

二、生成设备树

1.解压设备树工具文件夹到一个地方
https://github.com/Xilinx/device-tree-xlnx下载
2.菜单栏 –> Xilinx –> Repositories
添加刚刚解压的位置
这里写图片描述
3.菜单栏 –> File –> New –> Board Support Package
创建BSP,可以发现多了一栏device_tree,直接点确定到下一步
这里写图片描述
4.设置环境变量
这里写图片描述
内容为:console=ttyPS0,115200 root=/dev/mmcblk0p2 rw rootfstype=ext4 earlyprintk rootwait
5.最后可以在工程文件夹中找到生成的设备树文件
这里写图片描述
待用

三、生成FSBL引导文件

1.在SDK中新建一个APP,选择FSBL模板工程,然后完成创建
这里写图片描述
这里写图片描述
2.使能调试信息打印

  • 16
    点赞
  • 194
    收藏
    觉得还不错? 一键收藏
  • 51
    评论
Linux 中,AXI DMA IP 核的驱动程序由 Xilinx 提供,并包含在 Xilinx 的 Linux 内核中。以下是在 Linux 中使用 AXI DMA 驱动程序的基本步骤: 1. 安装 Linux 内核:首先,你需要安装 Xilinx 提供的适用于你的 Zynq SoC 的 Linux 内核。这个内核版本应该包含 AXI DMA 驱动程序。 2. 配置设备树(Device Tree):设备树是一种描述硬件配置的数据结构,在 Linux 中使用设备树来配置 AXI DMA IP 核。你需要编辑设备树文件(.dts 或 .dtsi),添加 AXI DMA IP 核的节点,并设置相应的属性,如基地址、中断号等。 3. 编译设备树:将设备树文件编译成二进制格式(.dtb),并将其放置在适当的位置,以使 Linux 内核能够加载它。 4. 加载驱动程序:在启动 Linux 内核时,你需要加载 AXI DMA 驱动程序模块。可以通过修改启动脚本或使用 `modprobe` 命令加载驱动程序模块。 5. 使用 AXI DMA 驱动程序:一旦驱动程序加载成功,你可以通过使用相应的设备节点(例如 `/dev/xdevcfg`)来控制和配置 AXI DMA IP 核。你可以使用标准的文件操作系统调用(如 `open`、`read`、`write` 等)来与驱动程序进行交互。 需要注意的是,AXI DMA 驱动程序的具体使用方法可能会因不同的平台和内核版本而有所差异。你可以查阅 Xilinx 的文档和示例代码,以便更详细地了解在 Linux 中使用 AXI DMA 驱动程序的具体步骤和配置方法。希望对你有所帮助!
评论 51
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值