Synopsys® linux-socfpga カーネルバージョン 4.1.22-ltsi における Linux ドライバーのイーサネット MAC の問題により、HPS サブシステム内のトラフィックが増加すると、イーサネット・インターフェイスが停滞する可能性があります。
この問題が発生すると、HPS EMAC DMA ステータスレジスターには次の状態が表示されます。
i_emac__dmagrp_status:
rs (受信プロセス状態) : 0x5: RUN WARRANT : 実行: 受信記述子を閉じる
以下のレジスターのステータスも存在する場合があります。
0x1: 送信記述子利用不可
ovf (レシーブ・オーバーフロー): 0x1: 受信バッファー・オーバーフロー
この問題は、https://github.com/altera-opensource から入手可能な linux-socfpga 4.1.33-ltsi カーネルで修正されました https://github.com/altera-opensource
コミット ID: 9a8bc214cc13bb318f403b (「stmmac: dwmac100 と dwmac1000 でリセット機能を共有」)
コミット ID: b0db4ee2b475f0b7ac1e36 (「stmmac: リワーク DMA バス設定と新しいプラットフォーム AXI 構造の導入」)
以前のバージョンのカーネルでこの問題を回避するには、EMAC DMA コントロールレジスターを編集してaxi_bus_mode rd_osr_lmtを設定し、レジスターを0xFにwr_osr_lmtします。 この設定により、EMAC DMA AXI マスター・インターフェイス上で多数の未処理 AXI トランザクションが可能になります。