petalinux添加AD9361驱动

文章目录

  • 一、准备工具
  • 二、步骤

需要

  • petalinux2016.2
  • 包含AD9361驱动的Linux内核(xcomm_zynq_4_4)

一、准备工具

ADI提供的AD9361Linux驱动:
https://wiki.analog.com/resources/tools-software/linux-drivers/iio-transceiver/ad9361
源码链接,注意内核版本,这里我们选择xcomm_zynq_4_4:
https://github.com/analogdevicesinc/linux/tree/xcomm_zynq_4_4

petalinux2016.2官方链接
http://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/embedded-design-tools/2016-2.html

petalinux添加AD9361驱动_第1张图片

二、步骤

  1. 将下载后的含有AD9361驱动的内核(xcomm_zynq_4_4)直接替换掉petalinux中的Linux内核;
    petalinux添加AD9361驱动_第2张图片
    注意:
  • 一定要注意petalinux中Linux的版本内核与ADI提供的Linux版本一致;
  • 下载后的ADI内核不需要编译,交给petalinux工具完成,顺序执行下列命令;
  1. 执行petalinux工具命令(参考UG1144,还是要注意版本):
    1. petalinux-create --type project --template zynq --name test
    2. petalinux-config --get-hw-description
    3. petalinux-config -c kernel
    4. 在build之前需要插入一个步骤,那就是修改设备树。详见步骤3
    5. petalinux-build
    6. petalinux-package --boot --fsbl ./image/linux/xxx.elf --fpga ./image/linux/xxx.bit --uboot
  2. 步骤2或者步骤3之后都可以执行修改,只要在build之前;
    1. 将内核目录:linux-xcommm_zynq_4_4 -> arch -> arm -> boot -> dts 的两个文件复制到步骤2中所建的工程目录: test -> subsystems -> linux -> config -> device-tree
      petalinux添加AD9361驱动_第3张图片
      petalinux添加AD9361驱动_第4张图片
  3. 修改工程目录(test -> subsystems -> linux -> config -> device-tree)中dts文件:将步骤3-1中所添加的两个dtsi文件包含到system-top.dts中;
    petalinux添加AD9361驱动_第5张图片
  4. 修改步骤3-1中所添加的adi-fmcomms2.dtsi和adi-fmcomms3-up-down-converter.dtsi文件:如图添加语句;包括:#define fmc_spi spi0、#define fmc_i2c i2c0、#define pmod_spi spi1。
    petalinux添加AD9361驱动_第6张图片
    petalinux添加AD9361驱动_第7张图片
    petalinux添加AD9361驱动_第8张图片
  5. 将步骤2-6生成的镜像拷入FAT格式SD卡中,终端打印:

petalinux添加AD9361驱动_第9张图片


作者:行走的X君
来源:CSDN
原文:https://blog.csdn.net/zhouxiangjun11211/article/details/53998881
版权声明:本文为博主原创文章,转载请附上博文链接!

你可能感兴趣的:(FPGA,软件无线电,linux驱动,AD9361)