Provided by: manpages-ja_0.5.0.0.20221215+dfsg-1_all
名前
dsp56k - DSP56001 のインターフェースデバイス
書式
#include <asm/dsp56k.h> ssize_t read(int fd, void *data, size_t length); ssize_t write(int fd, void *data, size_t length); int ioctl(int fd, DSP56K_UPLOAD, struct dsp56k_upload *program); int ioctl(int fd, DSP56K_SET_TX_WSIZE, int wsize); int ioctl(int fd, DSP56K_SET_RX_WSIZE, int wsize); int ioctl(int fd, DSP56K_HOST_FLAGS, struct dsp56k_host_flags *flags); int ioctl(int fd, DSP56K_HOST_CMD, int cmd);
設定
dsp56k デバイスは、メジャー番号 55、マイナー番号 0 の キャラクターデバイスである。
説明
Motorola DSP56001 は、Atari Falcon030 互換のコンピュータで使われている フルプログラマブル な 24 ビットのデジタルシグナルプロセッサーである。 スペシャルファイル dsp56k は、DSP56001 の制御と 双方向ハンドシェイクホストポートでのデータの送受信のために使われる。 データストリームをシグナルプロセッサーに送信するためには、 デバイスに対して write(2) を使 うこと。 処理されたデータを受信するためには、 read(2) を使うこと。 ホスト側では、データは 8, 16, 24, 32 ビット単位で送受信できるが、 DSP56001 内では、24 ビット単位で扱われる。 次の ioctl(2) コールが dsp56k デバイスを制御するために使われる。 DSP56K_UPLOAD DSP56001 をリセットし、プログラムをアップロードする。 ioctl(2) の 3 番目の引数は、 構造体 struct dsp56k_upload へのポインターでなければならない。 構造体のメンバー bin は DSP56001 バイナリプログラムを指し、 構造体のメンバー len は 24 ビットワードで数 えた プログラムの長さに設定されていなければならない。 DSP56K_SET_TX_WSIZE sets the transmit word size. Allowed values are in the range 1 to 4, and is the number of bytes that will be sent at a time to the DSP56001. These data quantities will either be padded with bytes containing zero, or truncated to fit the native 24-bit data format of the DSP56001. DSP56K_SET_RX_WSIZE 受信ワードサイズを設定する。 設定できる値は 1 〜 4 の範囲で、 このバイト数分だけ 1 度に DSP56001 から受信する。 このデータ単位は、DSP56001 本来の 24 ビットデータ形式 に合わせるため、 切り詰められたり、ヌルバイト ('\0') で埋められたりする。 DSP56K_HOST_FLAGS ホストフラグを読み書きする。 ホストフラグは、一般的な目的で使うことのできるビット で、 ホストコンピュータと DSP56001 の両方から読むことができる。 ビット 0 と 1 は、ホストによって書き込むことができ、 ビット 2 と 3 は、DSP56001 によって書き込む ことができる。 ホストフラグにアクセスするためには、 ioctl(2) の 3 番目の引数が 構造体 struct dsp56k_host_flags へのポインターでなければならない。 この構造体のメンバー dir の ビット 0 または 1 が設定されると、 メンバー out の対応するビットの値がホストフラグ に書き込まれる。 すべてのホストフラグの状態は、構造体のメンバー status の 下から 4 ビットとして返される。 DSP56K_HOST_CMD ホストコマンドを送信する。 送信できる値は 0 〜 31 の範囲で、DSP56001 で動作している プログラムによって 処理されるユーザー定義コマンドである。
ファイル
/dev/dsp56k
関連項目
linux/include/asm-m68k/dsp56k.h, linux/drivers/char/dsp56k.c, ⟨http://dsp56k.nocrew.org/⟩, DSP56000/DSP56001 Digital Signal Processor User's Manual
この文書について
この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの 説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。