dsp56k - Périphérique d'interface DSP 56001
#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);
The
dsp56k device is a character device with major number 55 and minor
number 0.
Le DSP 56001 Motorola est un processeur de signal numérique
24 bits entièrement programmable, que l'on trouve dans les
ordinateurs compatibles avec l'Atari Falcon 030. Le fichier
spécial
dsp56k sert à commander le DSP 56001, pour
envoyer ou recevoir des signaux sur le port hôte.
Pour envoyer un flux de signal vers le processeur, utilisez
write(2) sur
le périphérique, et pour en recevoir, utilisez
read(2).
Les données peuvent être émises ou reçues par
blocs de 8, 16, 24 ou 32 bits du
côté hôte, mais seront toujours vues comme des blocs de
24 bits du côté du DSP 56001.
Les appels
ioctl(2) suivants permettent de commander le
périphérique
dsp56k :
- DSP56K_UPLOAD
- Réinitialise le DSP 56001 et
télécharge un programme. Le troisième
paramètre de l'appel ioctl(2) doit être un pointeur
sur une struct dsp56k_upload dont le champ bin pointe sur un
programme DSP 56001 binaire. Le champ len doit contenir la
longueur du programme en mots de 24 bits.
- DSP56K_SET_TX_WSIZE
- Configure la taille des mots émis. Les valeurs
autorisées se trouvent dans l'intervalle
1 à 4, correspondant au nombre d'octets
envoyés à la fois. Ces données seront soit
complétées avec des octets de valeur zéro, soit
tronquées pour s'aligner sur le format natif 24 bits du
DSP 56001.
- 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 ('\0') to fit the native 24-bit data format of the
DSP56001.
- DSP56K_HOST_FLAGS
- Lire ou écrire les attributs d'hôte. Ces
attributs sont représentés par 4 bits à usage
général qui peuvent être lus aussi bien par
l'ordinateur hôte que par le DSP 56001. Les bits
0 et 1 peuvent être écrits par l'hôte,
et les bits 2 et 3 peuvent être écrits par le
DSP 56001.
- Pour accéder aux attributs d'hôte, le
troisième paramètre de l'appel ioctl(2) doit
être un pointeur sur une struct dsp56k_host_flags. Si les
bits 0 ou 1 sont à 1 dans le champ dir,
le bit correspondant de out sera écrit dans les attributs
d'hôte. L'état des attributs d'hôte sera
renvoyé dans les quatre bits de poids faible du membre
status.
- DSP56K_HOST_CMD
- Envoie une commande d'hôte. Les valeurs
autorisées sont dans l'intervalle 0 à 31 et
correspondent à un numéro de commande (définie par
l'utilisateur) manipulé par le programme tournant sur le
DSP 56001.
/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
La traduction française de cette page de manuel a été
créée par Christophe Blaess
<
https://www.blaess.fr/christophe/>, Stéphan Rafin
<
[email protected]>, Thierry Vignaud
<
[email protected]>, François Micaux, Alain Portal
<
[email protected]>, Jean-Philippe Guérard
<
[email protected]>, Jean-Luc Coulon (f5ibh)
<
[email protected]>, Julien Cristau
<
[email protected]>, Thomas Huriaux <
[email protected]>,
Nicolas François <
[email protected]>, Florentin
Duneau <
[email protected]>, Simon Paillard
<
[email protected]>, Denis Barbier
<
[email protected]>, David Prévot <
[email protected]>,
Cédric Boutillier <
[email protected]>,
Frédéric Hantrais <
[email protected]> et Grégoire
Scano <
[email protected]>
Cette traduction est une documentation libre ; veuillez vous reporter
à la
GNU
General Public License version 3 concernant les conditions de copie
et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel,
veuillez envoyer un message à
[email protected]