版本信息:
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的訪問函數后重新編譯加載驅動沒有出現再報錯的情況: