/*1*2* mwavedd.h -- declarations for mwave device driver3*4*5* Written By: Mike Sullivan IBM Corporation6*7* Copyright (C) 1999 IBM Corporation8*9* This program is free software; you can redistribute it and/or modify10* it under the terms of the GNU General Public License as published by11* the Free Software Foundation; either version 2 of the License, or12* (at your option) any later version.13*14* This program is distributed in the hope that it will be useful,15* but WITHOUT ANY WARRANTY; without even the implied warranty of16* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the17* GNU General Public License for more details.18*19* NO WARRANTY20* THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR21* CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT22* LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT,23* MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is24* solely responsible for determining the appropriateness of using and25* distributing the Program and assumes all risks associated with its26* exercise of rights under this Agreement, including but not limited to27* the risks and costs of program errors, damage to or loss of data,28* programs or equipment, and unavailability or interruption of operations.29*30* DISCLAIMER OF LIABILITY31* NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY32* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL33* DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND34* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR35* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE36* USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED37* HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES38*39* You should have received a copy of the GNU General Public License40* along with this program; if not, write to the Free Software41* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA42*43*44* 10/23/2000 - Alpha Release45* First release to the public46*/4748#ifndef _LINUX_MWAVEDD_H49#define _LINUX_MWAVEDD_H50#include "3780i.h"51#include "tp3780i.h"52#include "smapi.h"53#include "mwavepub.h"54#include <linux/ioctl.h>55#include <linux/uaccess.h>56#include <linux/wait.h>5758extern int mwave_3780i_irq;59extern int mwave_3780i_io;60extern int mwave_uart_irq;61extern int mwave_uart_io;6263struct mwave_ipc {64unsigned short usIntCount; /* 0=none, 1=first, 2=greater than 1st */65bool bIsEnabled;66bool bIsHere;67/* entry spin lock */68wait_queue_head_t ipc_wait_queue;69};7071struct mwave_device_data {72struct thinkpad_bd_data rBDData; /* board driver's data area */73unsigned long ulIPCSource_ISR; /* IPC source bits for recently processed intr, set during ISR processing */74unsigned long ulIPCSource_DPC; /* IPC source bits for recently processed intr, set during DPC processing */75bool bBDInitialized;76bool bResourcesClaimed;77bool bDSPEnabled;78bool bDSPReset;79struct mwave_ipc IPCs[16];80bool bMwaveDevRegistered;81short sLine;82int nr_registered_attrs;83int device_registered;8485};8687extern struct mwave_device_data mwave_s_mdd;8889#endif909192