diff options
Diffstat (limited to 'man/man4/dsp56k.4')
-rw-r--r-- | man/man4/dsp56k.4 | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/man/man4/dsp56k.4 b/man/man4/dsp56k.4 new file mode 100644 index 0000000..f0aed35 --- /dev/null +++ b/man/man4/dsp56k.4 @@ -0,0 +1,107 @@ +.\" Copyright (c) 2000 lars brinkhoff <lars@nocrew.org> +.\" +.\" SPDX-License-Identifier: GPL-2.0-or-later +.\" +.\" Modified, Thu Jan 27 19:16:19 CET 2000, lars@nocrew.org +.\" +.TH dsp56k 4 2024-05-02 "Linux man-pages (unreleased)" +.SH NAME +dsp56k \- DSP56001 interface device +.SH SYNOPSIS +.nf +.B #include <asm/dsp56k.h> +.P +.BI "ssize_t read(int " fd ", void *" data ", size_t " length ); +.BI "ssize_t write(int " fd ", void *" data ", size_t " length ); +.P +.BI "int ioctl(int " fd ", DSP56K_UPLOAD, struct dsp56k_upload *" program ); +.BI "int ioctl(int " fd ", DSP56K_SET_TX_WSIZE, int " wsize ); +.BI "int ioctl(int " fd ", DSP56K_SET_RX_WSIZE, int " wsize ); +.BI "int ioctl(int " fd ", DSP56K_HOST_FLAGS, struct dsp56k_host_flags *" flags ); +.BI "int ioctl(int " fd ", DSP56K_HOST_CMD, int " cmd ); +.fi +.SH CONFIGURATION +The +.I dsp56k +device is a character device with major number 55 and minor +number 0. +.SH DESCRIPTION +The Motorola DSP56001 is a fully programmable 24-bit digital signal +processor found in Atari Falcon030-compatible computers. +The \fIdsp56k\fP special file is used to control the DSP56001, and +to send and receive data using the bidirectional handshaked host +port. +.P +To send a data stream to the signal processor, use +.BR write (2) +to the +device, and +.BR read (2) +to receive processed data. +The data can be sent or +received in 8, 16, 24, or 32-bit quantities on the host side, but will +always be seen as 24-bit quantities in the DSP56001. +.P +The following +.BR ioctl (2) +calls are used to control the +\fIdsp56k\fP device: +.TP +.B DSP56K_UPLOAD +resets the DSP56001 and uploads a program. +The third +.BR ioctl (2) +argument must be a pointer to a \fIstruct dsp56k_upload\fP with members +\fIbin\fP pointing to a DSP56001 binary program, and \fIlen\fP set to +the length of the program, counted in 24-bit words. +.TP +.B 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. +.TP +.B DSP56K_SET_RX_WSIZE +sets the receive word size. +Allowed values are in the range 1 to 4, +and is the number of bytes that will be received at a time from the DSP56001. +These data quantities will either truncated, +or padded with a null byte (\[aq]\e0\[aq]), +to fit the native 24-bit data format of the DSP56001. +.TP +.B DSP56K_HOST_FLAGS +read and write the host flags. +The host flags are four +general-purpose bits that can be read by both the hosting computer and +the DSP56001. +Bits 0 and 1 can be written by the host, and bits 2 and +3 can be written by the DSP56001. +.IP +To access the host flags, the third +.BR ioctl (2) +argument must be a pointer +to a \fIstruct dsp56k_host_flags\fP. +If bit 0 or 1 is set in the +\fIdir\fP member, the corresponding bit in \fIout\fP will be written +to the host flags. +The state of all host flags will be returned in +the lower four bits of the \fIstatus\fP member. +.TP +.B DSP56K_HOST_CMD +sends a host command. +Allowed values are in the range 0 to 31, and is a +user-defined command handled by the program running in the DSP56001. +.SH FILES +.I /dev/dsp56k +.\" .SH AUTHORS +.\" Fredrik Noring <noring@nocrew.org>, lars brinkhoff <lars@nocrew.org>, +.\" Tomas Berndtsson <tomas@nocrew.org>. +.SH SEE ALSO +.IR linux/include/asm\-m68k/dsp56k.h , +.IR linux/drivers/char/dsp56k.c , +.UR http://dsp56k.nocrew.org/ +.UE , +DSP56000/DSP56001 Digital Signal Processor User's Manual |