brintos

brintos / linux-shallow public Read only

0
0
Text · 3.5 KiB · 60c961a Raw
90 lines · c
1/*2*3* mwavepub.h -- PUBLIC declarations for the mwave driver4*               and applications using it5*6*7* Written By: Mike Sullivan IBM Corporation8*9* Copyright (C) 1999 IBM Corporation10*11* This program is free software; you can redistribute it and/or modify12* it under the terms of the GNU General Public License as published by13* the Free Software Foundation; either version 2 of the License, or14* (at your option) any later version.15*16* This program is distributed in the hope that it will be useful,17* but WITHOUT ANY WARRANTY; without even the implied warranty of18* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the19* GNU General Public License for more details.20*21* NO WARRANTY22* THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR23* CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT24* LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT,25* MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is26* solely responsible for determining the appropriateness of using and27* distributing the Program and assumes all risks associated with its28* exercise of rights under this Agreement, including but not limited to29* the risks and costs of program errors, damage to or loss of data,30* programs or equipment, and unavailability or interruption of operations.31*32* DISCLAIMER OF LIABILITY33* NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY34* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL35* DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND36* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR37* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE38* USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED39* HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES40*41* You should have received a copy of the GNU General Public License42* along with this program; if not, write to the Free Software43* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA44*45*46* 10/23/2000 - Alpha Release47*	First release to the public48*/49 50#ifndef _LINUX_MWAVEPUB_H51#define _LINUX_MWAVEPUB_H52 53#include <linux/miscdevice.h>54 55 56typedef struct _MW_ABILITIES {57	unsigned long instr_per_sec;58	unsigned long data_size;59	unsigned long inst_size;60	unsigned long bus_dma_bw;61	unsigned short uart_enable;62	short component_count;63	unsigned long component_list[7];64	char mwave_os_name[16];65	char bios_task_name[16];66} MW_ABILITIES, *pMW_ABILITIES;67 68 69typedef struct _MW_READWRITE {70	unsigned short usDspAddress;	/* The dsp address */71	unsigned long ulDataLength;	/* The size in bytes of the data or user buffer */72	void __user *pBuf;		/* Input:variable sized buffer */73} MW_READWRITE, *pMW_READWRITE;74 75#define IOCTL_MW_RESET           _IO(MWAVE_MINOR,1)76#define IOCTL_MW_RUN             _IO(MWAVE_MINOR,2)77#define IOCTL_MW_DSP_ABILITIES   _IOR(MWAVE_MINOR,3,MW_ABILITIES)78#define IOCTL_MW_READ_DATA       _IOR(MWAVE_MINOR,4,MW_READWRITE)79#define IOCTL_MW_READCLEAR_DATA  _IOR(MWAVE_MINOR,5,MW_READWRITE)80#define IOCTL_MW_READ_INST       _IOR(MWAVE_MINOR,6,MW_READWRITE)81#define IOCTL_MW_WRITE_DATA      _IOW(MWAVE_MINOR,7,MW_READWRITE)82#define IOCTL_MW_WRITE_INST      _IOW(MWAVE_MINOR,8,MW_READWRITE)83#define IOCTL_MW_REGISTER_IPC    _IOW(MWAVE_MINOR,9,int)84#define IOCTL_MW_UNREGISTER_IPC  _IOW(MWAVE_MINOR,10,int)85#define IOCTL_MW_GET_IPC         _IOW(MWAVE_MINOR,11,int)86#define IOCTL_MW_TRACE           _IOR(MWAVE_MINOR,12,MW_READWRITE)87 88 89#endif90