AR# 72813

Queue DMA subsystem for PCI Express (PCIe) (Vivado 2019.1) - 「Read file: Input/output error」というエラー メッセージが表示される

説明

PCI Express (PCIe) の Queue DMA サブシステムを使用し、サンプル デザインを使用して次のアプリケーションをテストすると、システムが「Read file: Input/output error」というエラーをレポートします。


[root@xyz linux]# dma_from_device -d /dev/qdma01000-ST-0 -s 512
/dev/qdma01000-ST-0, read off 0x0 + 0x200 failed -1.
read file: Input/output error


このアンサーは、PCI Express ソリューション センターの一部です。

(Xilinx Answer 34536)ザイリンクス PCI Express ソリューション センター

ソリューション

ST C2H の場合、ユーザー アプリケーションでユーザー ロジックをコンフィギュレーションし、パケットを生成する必要があります。

パケットが生成されなければ、ドライバーは要求されたデータを取得できません。

ザイリンクスのサンプル デザインでは、ユーザー ロジックが、ユーザー BAR レジスタをプログラムしてキュー番号、パケット サイズ、およびパケット番号を書き込み、パケットを生成するためのインターフェイスを提供します。

詳細は、PG302 のサンプル デザイン レジスタのセクションを参照してください。

パケットが生成されると、dma_from_device が QDMA リングからデータを取得して表示します。

次の例に、ユーザー ロジックに応じてどのように変わるかを示しています。

[root@lab21 linux]# dmactl qdma01000 q add idx 0 mode st dir bi
qdma01000-ST-0 C2H added.
qdma01000-ST-0 H2C added.
Added 1 Queues.


[root@lab21 linux]# dmactl qdma01000 q list
H2C Q: 1, C2H Q: 1.
qdma01000-ST-0 H2C online
hw_ID 0, thp ?, desc 0xffff9e0a476b8000/0xff9e8000, 1536
qdma01000-ST-0 C2H online
hw_ID 0, thp ?, desc 0xffff9e0a372e0000/0xffff8000, 1536
cmpt desc 0xffff9e0a35378000/0xff9f0000, 2048



[root@lab21 linux]# dma_from_device -d /dev/qdma01000-ST-0 -s 512
/dev/qdma01000-ST-0, read off 0x0 + 0x200 failed -1.
read file: Input/output error


上記のエラーは、ユーザー ロジックの対応するレジスタをプログラムした後に消えます。


[root@lab21 linux]# dmactl qdma01000 reg write bar 2 0x0 0
qdma01000, 01:00.00, bar#2, reg 0x0 -> 0x0, read back 0x0.
[root@lab21 linux]# dmactl qdma01000 reg write bar 2 0x4 512
qdma01000, 01:00.00, bar#2, reg 0x4 -> 0x200, read back 0x200.
[root@lab21 linux]# dmactl qdma01000 reg write bar 2 0x20 1
qdma01000, 01:00.00, bar#2, reg 0x20 -> 0x1, read back 0x1.
[root@lab21 linux]# dmactl qdma01000 reg write bar 2 0x8 2
qdma01000, 01:00.00, bar#2, reg 0x8 -> 0x2, read back 0x0.
[root@xsjpcielab21 linux]# dma_from_device -d /dev/qdma01000-ST-0 -s 512
** Average BW = 512, 9.636196


改訂履歴

  • 2019/09/30 - 初版
AR# 72813
日付 10/02/2019
ステータス アクティブ
種類 一般
IP