ZYNQ Linux 下 AXI Ethernet使用记录
版本信息:
Vivado:2016.4
Linux:Ubuntu16.4
ZYNQ:xc7z020
1. Vivado下搭建好AXI Ethernet框架后(参考xapp1082),建议现在裸机环境下创建LWIP工程测试硬件的连通性,不过LWIP有时候也偶有bug,尤其在多个AXI Ethernet的情况下。
2. AXI ethernet 的设备树比较复杂,参考如下链接直接由vivado生成后修改:
https://blog.csdn.net/ryuuei_1984/article/details/52367444
修改设备树的时候注意有些参数是数字组成的,有些是引用名称的,修改成数字的过程多对照上下文修改。
3. 由于AXI Ethernet是纯FPGA搭建起来的MAC,因此在启动的过程中驱动需要访问相应寄存器,但是FPGA的bit文件设计是启动后再加载的,因此如果直接在内核编译过程中打开驱动的话会导致运行报错,这里选择将驱动配置成手动加载的模式。系统启动后先加载FPGA,然后加载驱动。手动加载驱动的方法见上一条博客。
4. AXI Ethernet默认不支持fixed-link模式,加载驱动的时候报错Connection timed out,跟踪发现是axienet_open函数里有访问MDIO的函数调用返回失败,手动屏蔽MDIO的访问函数后重新编译加载驱动没有出现再报错的情况:
************************************************************************************************
作者:huakaimanlin
出处:https://www.cnblogs.com/huakaimanlin/
版权所有,如需转载请声明出处