]> git.ipfire.org Git - thirdparty/man-pages.git/blob - man4/dsp56k.4
man*/: srcfix (Use .P instead of .PP or .LP)
[thirdparty/man-pages.git] / man4 / dsp56k.4
1 .\" Copyright (c) 2000 lars brinkhoff <lars@nocrew.org>
2 .\"
3 .\" SPDX-License-Identifier: GPL-2.0-or-later
4 .\"
5 .\" Modified, Thu Jan 27 19:16:19 CET 2000, lars@nocrew.org
6 .\"
7 .TH dsp56k 4 (date) "Linux man-pages (unreleased)"
8 .SH NAME
9 dsp56k \- DSP56001 interface device
10 .SH SYNOPSIS
11 .nf
12 .B #include <asm/dsp56k.h>
13 .P
14 .BI "ssize_t read(int " fd ", void *" data ", size_t " length );
15 .BI "ssize_t write(int " fd ", void *" data ", size_t " length );
16 .P
17 .BI "int ioctl(int " fd ", DSP56K_UPLOAD, struct dsp56k_upload *" program );
18 .BI "int ioctl(int " fd ", DSP56K_SET_TX_WSIZE, int " wsize );
19 .BI "int ioctl(int " fd ", DSP56K_SET_RX_WSIZE, int " wsize );
20 .BI "int ioctl(int " fd ", DSP56K_HOST_FLAGS, struct dsp56k_host_flags *" flags );
21 .BI "int ioctl(int " fd ", DSP56K_HOST_CMD, int " cmd );
22 .fi
23 .SH CONFIGURATION
24 The
25 .I dsp56k
26 device is a character device with major number 55 and minor
27 number 0.
28 .SH DESCRIPTION
29 The Motorola DSP56001 is a fully programmable 24-bit digital signal
30 processor found in Atari Falcon030-compatible computers.
31 The \fIdsp56k\fP special file is used to control the DSP56001, and
32 to send and receive data using the bidirectional handshaked host
33 port.
34 .P
35 To send a data stream to the signal processor, use
36 .BR write (2)
37 to the
38 device, and
39 .BR read (2)
40 to receive processed data.
41 The data can be sent or
42 received in 8, 16, 24, or 32-bit quantities on the host side, but will
43 always be seen as 24-bit quantities in the DSP56001.
44 .P
45 The following
46 .BR ioctl (2)
47 calls are used to control the
48 \fIdsp56k\fP device:
49 .TP
50 .B DSP56K_UPLOAD
51 resets the DSP56001 and uploads a program.
52 The third
53 .BR ioctl (2)
54 argument must be a pointer to a \fIstruct dsp56k_upload\fP with members
55 \fIbin\fP pointing to a DSP56001 binary program, and \fIlen\fP set to
56 the length of the program, counted in 24-bit words.
57 .TP
58 .B DSP56K_SET_TX_WSIZE
59 sets the transmit word size.
60 Allowed values are in the range 1 to 4,
61 and is the number of bytes that will be sent at a time to the
62 DSP56001.
63 These data quantities will either be padded with bytes containing zero,
64 or truncated to fit the native 24-bit data format of the
65 DSP56001.
66 .TP
67 .B DSP56K_SET_RX_WSIZE
68 sets the receive word size.
69 Allowed values are in the range 1 to 4,
70 and is the number of bytes that will be received at a time from the DSP56001.
71 These data quantities will either truncated,
72 or padded with a null byte (\[aq]\e0\[aq]),
73 to fit the native 24-bit data format of the DSP56001.
74 .TP
75 .B DSP56K_HOST_FLAGS
76 read and write the host flags.
77 The host flags are four
78 general-purpose bits that can be read by both the hosting computer and
79 the DSP56001.
80 Bits 0 and 1 can be written by the host, and bits 2 and
81 3 can be written by the DSP56001.
82 .IP
83 To access the host flags, the third
84 .BR ioctl (2)
85 argument must be a pointer
86 to a \fIstruct dsp56k_host_flags\fP.
87 If bit 0 or 1 is set in the
88 \fIdir\fP member, the corresponding bit in \fIout\fP will be written
89 to the host flags.
90 The state of all host flags will be returned in
91 the lower four bits of the \fIstatus\fP member.
92 .TP
93 .B DSP56K_HOST_CMD
94 sends a host command.
95 Allowed values are in the range 0 to 31, and is a
96 user-defined command handled by the program running in the DSP56001.
97 .SH FILES
98 .I /dev/dsp56k
99 .\" .SH AUTHORS
100 .\" Fredrik Noring <noring@nocrew.org>, lars brinkhoff <lars@nocrew.org>,
101 .\" Tomas Berndtsson <tomas@nocrew.org>.
102 .SH SEE ALSO
103 .IR linux/include/asm\-m68k/dsp56k.h ,
104 .IR linux/drivers/char/dsp56k.c ,
105 .UR http://dsp56k.nocrew.org/
106 .UE ,
107 DSP56000/DSP56001 Digital Signal Processor User's Manual