0

PCIeFPGAデバイスのデバイスドライバーでやや奇妙な問題をデバッグしようとしています。デバイスドライバーとFPGAイメージの両方が社内で開発されています。

ターゲットシステムはx86で、OSはfedora 9です。PCIeカードがあり、FPGAが唯一のPCIeスロットに接続されています。FPGAイメージは、EEPROMからの起動後にロードされます。

ドライバは、/ sys / bus / pci / devices / 0000:02:00.0 /リソースファイル(0000:02:00.0はFPGAを含むカードのPCIスロット)を使用して構成するように記述されています。 FPGA。

システムが起動すると(または休止状態から復帰すると)、FPGAリンクの継ぎ目が失われ、リソースファイルが失われます。FPGAが正しく起動すると、すべてが正常に動作します(リソースファイルがあります)。システムが休止状態に入ると、FPGAの電源がオフになります。休止状態から戻ると、ドライバの初期化を開始する前にFPGAの電源がオンになります。

私は次のことを疑っています:

  • ファームウェアのバグ-PCIプラグインに関連するもの?
  • カーネルのバグ-他のPCIカードが正常に認識されるため、最も可能性は低いです。
    このPCIカードだけが問題を引き起こします

そして質問は:

  • 誰かが同様の問題を抱えていましたか?
  • 他に何が間違っている可能性がありますか?
  • この問題をデバッグする方法に関する提案はありますか?

編集

私はこのバグを見つけました。これは私が見ている問題と非常によく似ています。

4

2 に答える 2

1

私はついに問題をデバッグすることができました。休止状態に入る直前に、まだリソースファイルを使用しているすべてのプロセスが強制終了されます。なんらかの理由で、1つのプロセスがリソースを解放せず、強制終了されました。実行されていないすべてのプロセスを再生成するウォッチドッグがあります。

休止状態から戻ると、このプロセスが再生成され、リソースファイルを開くことができなかったため、再び停止し、重大なエラーが宣言されました。非常に短い時間の後、リソースファイルがOSによって追加され、このプロセスは正常に続行できました。

于 2010-11-17T07:51:01.357 に答える
0

PCIeカードは、特定の時間内に「Isanybodytherethere」メッセージに応答する必要があります。休止状態/リセット後、カードが十分に速く応答しない可能性はありますか?

デザインの詳細がなければ、推測以外のことはできません。

システムが機能している場合と機能していない場合の違いを挙げてください。つまり、カードを機能させるために何を変えますか。

于 2010-11-11T15:05:23.940 に答える