Penguin
Annotated edit history of dsp56k(4) version 1, including all changes. View license author blame.
Rev Author # Line
1 perry 1 DSP56K
2 !!!DSP56K
3 NAME
4 SYNOPSIS
5 CONFIGURATION
6 DESCRIPTION
7 FILES
8 AUTHORS
9 SEE ALSO
10 ----
11 !!NAME
12
13
14 dsp56k - DSP56001 interface device
15 !!SYNOPSIS
16
17
18 #include
19 ssize_t read (int__ ''fd''__, void *__ ''data''__, size_t__ ''length''__);
20 ssize_t write (int__ ''fd''__, void *__ ''data''__, size_t__ ''length''__);
21 int ioctl (int__ ''fd''__, DSP56K_UPLOAD, struct dsp56k_upload *__''program''__);
22 int ioctl (int__ ''fd''__, DSP56K_SET_TX_WSIZE, int__ ''wsize''__);
23 int ioctl (int__ ''fd''__, DSP56K_SET_RX_WSIZE, int__ ''wsize''__);
24 int ioctl (int__ ''fd''__, DSP56K_HOST_FLAGS, struct dsp56k_host_flags *__''flags''__);
25 int ioctl (int__ ''fd''__, DSP56K_HOST_CMD, int__ ''cmd''__);
26 __
27 !!CONFIGURATION
28
29
30 The dsp56k device is a character device with major number 55
31 and minor number 0.
32 !!DESCRIPTION
33
34
35 The Motorola DSP56001 is a fully programmable 24-bit digital
36 signal processor found in Atari Falcon030-compatible
37 computers. The __dsp56k__ special file is used to control
38 the DSP56001, and to send and receive data using the
39 bi-directional handshaked host port.
40
41
42 To send a data stream to the signal processor, use write()
43 to the device, and read() to receive processed data. The
44 data can be sent or received in 8, 16, 24, or 32-bit
45 quantities on the host side, but will always be seen as
46 24-bit quantities in the DSP56001.
47
48
49 The following ioctl(2) calls are used to control the
50 __dsp56k__ device:
51
52
53 __DSP56K_UPLOAD__
54
55
56 resets the DSP56001 and uploads a program. The third ioctl()
57 argument must be a pointer to a __struct dsp56k_binary__
58 with members __bin__ pointing to a DSP56001 binary
59 program, and __len__ set to the length of the program,
60 counted in 24-bit words.
61
62
63 __DSP56K_SET_TX_WSIZE__
64
65
66 sets the transmit word size. Allowed values are in the range
67 1 to 4, and is the number of bytes that will be sent at a
68 time to the DSP56001. These data quantities will either be
69 padded with zero bytes, or truncated to fit the native
70 24-bit data format of the DSP56001.
71
72
73 __DSP56K_SET_RX_WSIZE__
74
75
76 sets the receive word size. Allowed values are in the range
77 1 to 4, and is the number of bytes that will be received at
78 a time from the DSP56001. These data quantities will either
79 truncated, or padded with a zero byte to fit the native
80 24-bit data format of the DSP56001.
81
82
83 __DSP56K_HOST_FLAGS__
84
85
86 read and write the host flags. The host flags are four
87 general-purpose bits that can be read by both the hosting
88 computer and the DSP56001. Bits 0 and 1 can be written by
89 the host, and bits 2 and 3 can be written by the
90 DSP56001.
91
92
93 To access the host flags, the third ioctl() argument must be
94 a pointer to a __struct dsp56k_host_flags__. If bit 0 or
95 1 is set in the __dir__ member, the corresponding bit in
96 __out__ will be written to the host flags. The state of
97 all host flags will be returned in the lower four bits of
98 the __status__ member.
99
100
101 __DSP56K_HOST_CMD__
102
103
104 sends a host command. Allowed values are in the range 0 to
105 31, and is a user-defined command handled by the program
106 running in the DSP56001.
107 !!FILES
108
109
110 /dev/dsp56k
111 !!AUTHORS
112
113
114 Fredrik Noring
115 !!SEE ALSO
116
117
118 linux/include/asm-m68k/dsp56k.h,
119 linux/drivers/char/dsp56k.c, http://dsp56k.nocrew.org/,
120 DSP56000/DSP56001 Digital Signal Processor User's
121 Manual
122 ----
This page is a man page (or other imported legacy content). We are unable to automatically determine the license status of this page.