Beagleboard から nfs ブートを実行しようとしています。Davicom Dm9601 が U-Boot から検出されなかったため、「0 イーサネット デバイスが見つかりました」および「リモート デバイスが応答しませんでした」というエラーで失敗しました。
同じデバイスドライバーの作成を開始しました。
- dm9601_eth_before_probe
- dm9601_eth_プローブ
上記の 2 つの関数を使用すると、「1 つのイーサネット デバイスが見つかりました」と表示されます。
- dm9601_init
上記の関数を記述しようとすると、最初のアクションは MAC アドレスを取得することです。以下のasix.cを参考にしています。read_cmd および write_cmd 関数を作成しました。しかし、私の現在の問題は、MACアドレスを読み取るために「物理アドレスレジスタ」レジスタを使用しようとしていることです。Linux ドライバーの動作と asix.c の動作について少し混乱しています。
同じことを理解し、u-boot の dm9601 で同様のロジックを実装する方法を教えてください。
参考文献: