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

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

8.7.1.1. デバイス・インスタンスの作成

デバイスをキャラクター・モード・デバイスとして使用できるようにするには、alt_dev 構造体のインスタンスを提供する必要があります。<Intel Quartus Prime installation directory>/ip/altera/soft_processor/altera_hal2/HAL/inc/sys/alt_dev.h で定義されている alt_dev 構造体は、本質的には関数ポインターのコレクションです。これらの関数は、アプリケーションによる HAL ファイルシステムへのアクセスに応答して呼び出されます。たとえば、このデバイスに対応するファイル名を指定して関数 open() を呼び出すと、結果はこの構造体で提供される open() 関数への呼び出しになります。

alt_dev 構造体

typedef struct { alt_llist llist; /* for internal use */ const char* name; int (*open) (alt_fd* fd, const char* name, int flags, int mode); int (*close) (alt_fd* fd); int (*read) (alt_fd* fd, char* ptr, int len); int (*write) (alt_fd* fd, const char* ptr, int len); int (*lseek) (alt_fd* fd, int ptr, int dir); int (*fstat) (alt_fd* fd, struct stat* buf); int (*ioctl) (alt_fd* fd, int req, void* arg); } alt_dev;

open()close()read()write()lseek()fstat()、および ioctl() の詳細は、HAL API リファレンスのセクションを参照してください。