Nios® V プロセッサー・ソフトウェア開発者ハンドブック

ID 743810
日付 7/08/2024
Public
ドキュメント目次

8.7.1.1.2. alt_dev で定義された関数のデフォルトの動作

ドライバーは、alt_dev 構造内のすべての関数を提供する必要はありません。指定された関数ポインターが NULL に設定されている場合、代わりにデフォルトのアクションが使用されます。
表 33.  alt_dev で定義された関数のデフォルトの動作
説明 デフォルトの動作
open() このデバイスに対する open() の呼び出しは成功しますが、ioctl()req = TIOCEXCL で呼び出して以前にデバイスがロックされていた場合は除きます。
close このデバイスの有効なファイル・ディスクリプターに対する close() の呼び出しは常に成功します。
read このデバイスに対する read() の呼び出しは常に失敗します。
write このデバイスに対する write() の呼び出しは常に失敗します。
lseek() このデバイスに対する lseek() の呼び出しは常に失敗します。
fstat() デバイスは、自身をキャラクター・モード・デバイスとして識別します。
ioctl() デバイスを参照しなければ処理ができない ioctl() リクエストはします。

関数ポインターに加えて、alt_dev 構造体には、llistname の 2 つのフィールドが含まれています。llist は内部での使用を目的としており、常に値を ALT_LLIST_ENTRY に設定する必要があります。name は、HAL ファイルシステム内のデバイスの位置であり、system.h で定義されているデバイスの名前です。