另外参见

linux / include / asm-m68k / dsp56k.h,linux / drivers / char / dsp56k.c,DSP56000 / 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 - Linux手册页

Linux程序员手册 第4部分
更新日期: 2020-08-13

文件

/ dev / dsp56k

出版信息

这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/

CONFIGURATION

dsp56k设备是主要编号为55且次要编号为0的字符设备。

名称

dsp56k-DSP56001接口设备

说明

摩托罗拉DSP56001是Atari Falcon030兼容计算机中的完全可编程的24位数字信号处理器。 dsp56k特殊文件用于控制DSP56001,并使用双向握手主机端口发送和接收数据。

要将数据流发送到信号处理器,请对设备使用write(2),然后使用read(2)接收处理后的数据。可以在主机端以8位,16位,24位或32位的数量发送或接收数据,但在DSP56001中始终将其视为24位的数量。

以下ioctl(2)调用用于控制dsp56k设备:

DSP56K_UPLOAD
复位DSP56001并上传程序。第三个ioctl(2)参数必须是指向dsp56k_upload结构的指针,成员bin指向DSP56001二进制程序,并且len设置为程序的长度,以24位字为单位。
DSP56K_SET_TX_WSIZE
设置发送字的大小。允许的值在1到4的范围内,是一次发送到DSP56001的字节数。这些数据量将用包含零的字节填充,或者被截断以适合DSP56001的本机24位数据格式。
DSP56K_SET_RX_WSIZE
设置接收字的大小。允许的值在1到4的范围内,并且是一次从DSP56001接收的字节数。这些数据量将被截断或填充一个空字节(aq \ 0aq)以适合DSP56001的本机24位数据格式。
DSP56K_HOST_FLAGS
读取和写入主机标志。主机标志是主机计算机和DSP56001均可读取的四个通用位。位0和1可以由主机写入,位2和3可以由DSP56001写入。
若要访问主机标志,第三个ioctl(2)参数必须是指向结构dsp56k_host_flags的指针。如果在dir成员中设置了位0或1,则将相应的in out位写入主机标志。所有主机标志的状态将在状态成员的低四位中返回。
DSP56K_HOST_CMD
发送主机命令。允许的值在0到31的范围内,并且是由DSP56001中运行的程序处理的用户定义命令。
日期:2019-08-20 18:01:45 来源:oir作者:oir