162306a36Sopenharmony_ci/* 262306a36Sopenharmony_ci * linux/include/asm-m68k/dsp56k.h - defines and declarations for 362306a36Sopenharmony_ci * DSP56k device driver 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * Copyright (C) 1996,1997 Fredrik Noring, lars brinkhoff & Tomas Berndtsson 662306a36Sopenharmony_ci * 762306a36Sopenharmony_ci * This file is subject to the terms and conditions of the GNU General Public 862306a36Sopenharmony_ci * License. See the file COPYING in the main directory of this archive 962306a36Sopenharmony_ci * for more details. 1062306a36Sopenharmony_ci */ 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci/* Used for uploading DSP binary code */ 1462306a36Sopenharmony_cistruct dsp56k_upload { 1562306a36Sopenharmony_ci int len; 1662306a36Sopenharmony_ci char __user *bin; 1762306a36Sopenharmony_ci}; 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci/* For the DSP host flags */ 2062306a36Sopenharmony_cistruct dsp56k_host_flags { 2162306a36Sopenharmony_ci int dir; /* Bit field. 1 = write output bit, 0 = do nothing. 2262306a36Sopenharmony_ci * 0x0000 means reading only, 0x0011 means 2362306a36Sopenharmony_ci * writing the bits stored in `out' on HF0 and HF1. 2462306a36Sopenharmony_ci * Note that HF2 and HF3 can only be read. 2562306a36Sopenharmony_ci */ 2662306a36Sopenharmony_ci int out; /* Bit field like above. */ 2762306a36Sopenharmony_ci int status; /* Host register's current state is returned */ 2862306a36Sopenharmony_ci}; 2962306a36Sopenharmony_ci 3062306a36Sopenharmony_ci/* ioctl command codes */ 3162306a36Sopenharmony_ci#define DSP56K_UPLOAD 1 /* Upload DSP binary program */ 3262306a36Sopenharmony_ci#define DSP56K_SET_TX_WSIZE 2 /* Host transmit word size (1-4) */ 3362306a36Sopenharmony_ci#define DSP56K_SET_RX_WSIZE 3 /* Host receive word size (1-4) */ 3462306a36Sopenharmony_ci#define DSP56K_HOST_FLAGS 4 /* Host flag registers */ 3562306a36Sopenharmony_ci#define DSP56K_HOST_CMD 5 /* Trig Host Command (0-31) */ 36