eicon_mod.c
上传用户:lgb322
上传日期:2013-02-24
资源大小:30529k
文件大小:44k
- /* $Id: eicon_mod.c,v 1.1.4.1 2001/11/20 14:19:35 kai Exp $
- *
- * ISDN lowlevel-module for Eicon active cards.
- *
- * Copyright 1997 by Fritz Elfert (fritz@isdn4linux.de)
- * Copyright 1998-2000 by Armin Schindler (mac@melware.de)
- * Copyright 1999,2000 Cytronics & Melware (info@melware.de)
- *
- * This software may be used and distributed according to the terms
- * of the GNU General Public License, incorporated herein by reference.
- *
- * Thanks to Eicon Networks for
- * documents, informations and hardware.
- *
- * Deutsche Mailbox Saar-Lor-Lux GmbH
- * for sponsoring and testing fax
- * capabilities with Diva Server cards.
- * (dor@deutschemailbox.de)
- *
- */
- #define DRIVERNAME "Eicon active ISDN driver"
- #define DRIVERRELEASE "2.0"
- #define DRIVERPATCH ".16"
- #include <linux/config.h>
- #include <linux/module.h>
- #include <linux/init.h>
- #ifdef CONFIG_MCA
- #include <linux/mca.h>
- #endif /* CONFIG_MCA */
- #include "eicon.h"
- #include "../avmb1/capicmd.h" /* this should be moved in a common place */
- #undef N_DATA
- #include "adapter.h"
- #include "uxio.h"
- #define INCLUDE_INLINE_FUNCS
- static eicon_card *cards = (eicon_card *) NULL; /* glob. var , contains
- start of card-list */
- static char *eicon_revision = "$Revision: 1.1.4.1 $";
- extern char *eicon_pci_revision;
- extern char *eicon_isa_revision;
- extern char *eicon_idi_revision;
- extern int do_ioctl(struct inode *pDivasInode, struct file *pDivasFile,
- unsigned int command, unsigned long arg);
- extern void eicon_pci_init_conf(eicon_card *card);
- #ifdef MODULE
- #define MOD_USE_COUNT (GET_USE_COUNT (&__this_module))
- #endif
- #define EICON_CTRL_VERSION 2
- ulong DebugVar;
- spinlock_t eicon_lock;
- DESCRIPTOR idi_d[32];
- /* Parameters to be set by insmod */
- #ifdef CONFIG_ISDN_DRV_EICON_ISA
- static int membase = -1;
- static int irq = -1;
- #endif
- static char *id = "