#ifndef __FOPS_H__
 
#define __FOPS_H__
 
 
 
//****************************************************************************
 
// Copyright (C) 2000-2004  ARW Elektronik Germany
 
//
 
//
 
// This program is free software; you can redistribute it and/or modify
 
// it under the terms of the GNU General Public License as published by
 
// the Free Software Foundation; either version 2 of the License, or
 
// (at your option) any later version.
 
//
 
// This program is distributed in the hope that it will be useful,
 
// but WITHOUT ANY WARRANTY; without even the implied warranty of
 
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
// GNU General Public License for more details.
 
//
 
// You should have received a copy of the GNU General Public License
 
// along with this program; if not, write to the Free Software
 
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
//
 
// This product is not authorized for use as critical component in 
 
// life support systems without the express written approval of 
 
// ARW Elektronik Germany.
 
//  
 
// Please announce changes and hints to ARW Elektronik
 
//
 
// Maintainer(s): Klaus Hitschler (klaus.hitschler@gmx.de)
 
//
 
//****************************************************************************
 
 
 
//****************************************************************************
 
//
 
// fops.h -- the file operations header for the PCICC32 PCI to CAMAC Interface
 
//
 
// $Log: fops.h,v $
 
// Revision 1.7  2006/03/28 21:49:49  klaus
 
// release_20060328; Version 6.8; Support for AMD64 and Kernel 2.6.15
 
//
 
// Revision 1.6  2004/08/12 19:59:19  klaus
 
// conversion to kernel-version 2.6, released version 6.0
 
//
 
// Revision 1.5  2003/05/11 11:12:03  klaus
 
// matched to kernel 2.4 PCI handling, debug messages improved
 
//
 
// Revision 1.4  2002/04/14 18:25:38  klaus
 
// added interrupt handling, driver 4.4. ...3.5.tar.gz
 
//
 
// Revision 1.3  2002/04/10 18:40:10  klaus
 
// compiled and modified on RedHat 7.2
 
//
 
// Revision 1.2  2001/11/20 20:12:50  klaus
 
// included new header and CVS log
 
//
 
//
 
// first steps (on my mothers birthday)                        AR   23.02.2000
 
//
 
//****************************************************************************
 
 
 
/*--- INCLUDES ----------------------------------------------------------------------------*/
 
#include "askpci.h"
 
 
 
/*--- TYPEDEFS ----------------------------------------------------------------------------*/
 
typedef struct
 
{
 
        u16 wIndex; /* running index of all PCIADAs */
 
        PCIConfigHeader *pPch; /* associated PCI configuration */
 
        void *pLCR;  /* base of LCR */
 
        void *pUsr;  /* base of User space */
 
        u8  bConnected;    /* is it connected ?? */
 
        u8  cModuleNumber; /* module number */
 
        u8  cFPGAVersion;  /* FPGA Version number */
 
        u16 wInitStep;     /* counts the done init steps */
 
        u16 wIrq;          /* the assigned irq */
 
        u32 dwInterruptCount;  /* counts the LAM and timeout interrupts */
 
        u16 wIrqStatus;    /* last cause / status of interrupts */
 
        wait_queue_head_t event_queue; /* handle interrupt events */
 
} CC32_DESCRIPTOR;
 
 
 
/*--- PROTOTYPES --------------------------------------------------------------------------*/
 
 
 
#endif // __FOPS_H__