Subversion Repositories f9daq

Rev

Blame | Last modification | View Log | RSS feed

#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__