]> git.neil.brown.name Git - history.git/commitdiff
Linux 2.2.21pre2 2.2.21pre2
authorAlan Cox <alan@lxorguk.ukuu.org.uk>
Fri, 23 Nov 2007 20:24:05 +0000 (15:24 -0500)
committerAlan Cox <alan@lxorguk.ukuu.org.uk>
Fri, 23 Nov 2007 20:24:05 +0000 (15:24 -0500)
o Fix non blocking midi close on es1370, es1371 (Alan Cox)
sonicvibes
o Update osst driver (Willem Riede)
o Update machine check support in 2.2 to match 2.4(Dave Jones)
o Additional P4, Rise, Winchip handling for setup (Dave Jones)
o Fix extended MMX initialisation on Cyrix MII (Alan Cox)
o Backport a lot of x86 setup (cache size etc) (Dave Jones)
o ISDN cleanups (Kai Germaschewski)
o Backport eicon driver fixes (Kai Germaschewski)
o ISDN ppp fixes (Andre Beck)
o Fix timeout handling in eicon driver (Kai Germaschewski)
o Fix null pointer bug in isdnloop (Kai Germaschewski)
o Menuconfig refresh fixup (Willy Tarreau)
o Modular ati frame buffer build fix (Krzysztof Taraszka)
o Backport VIA chipset fixes to 2.2 (Alan Cox)
o Make DCD high->low work on SX16 with CLOCAL set (Ado Arnolds)

243 files changed:
Documentation/isdn/INTERFACE
Documentation/isdn/INTERFACE.fax
Documentation/isdn/README.act2000
Documentation/isdn/README.audio
Documentation/isdn/README.concap
Documentation/isdn/README.eicon
Documentation/isdn/README.hysdn
Documentation/isdn/README.icn
Makefile
arch/i386/kernel/bluesmoke.c
arch/i386/kernel/entry.S
arch/i386/kernel/setup.c
arch/i386/mm/init.c
drivers/char/sx.c
drivers/isdn/Config.in
drivers/isdn/act2000/act2000.h
drivers/isdn/act2000/act2000_isa.c
drivers/isdn/act2000/act2000_isa.h
drivers/isdn/act2000/capi.c
drivers/isdn/act2000/capi.h
drivers/isdn/act2000/module.c
drivers/isdn/avmb1/Makefile
drivers/isdn/avmb1/avmcard.h
drivers/isdn/avmb1/b1.c
drivers/isdn/avmb1/b1dma.c
drivers/isdn/avmb1/b1isa.c
drivers/isdn/avmb1/b1pci.c
drivers/isdn/avmb1/b1pcmcia.c
drivers/isdn/avmb1/c4.c
drivers/isdn/avmb1/capi.c
drivers/isdn/avmb1/capicmd.h
drivers/isdn/avmb1/capidev.h
drivers/isdn/avmb1/capidrv.c
drivers/isdn/avmb1/capidrv.h
drivers/isdn/avmb1/capifs.c
drivers/isdn/avmb1/capifs.h
drivers/isdn/avmb1/capilli.h
drivers/isdn/avmb1/capiutil.c
drivers/isdn/avmb1/capiutil.h
drivers/isdn/avmb1/kcapi.c
drivers/isdn/avmb1/t1isa.c
drivers/isdn/avmb1/t1pci.c
drivers/isdn/divert/divert_init.c
drivers/isdn/divert/divert_procfs.c
drivers/isdn/divert/isdn_divert.c
drivers/isdn/divert/isdn_divert.h
drivers/isdn/eicon/Divas_mod.c
drivers/isdn/eicon/adapter.h
drivers/isdn/eicon/bri.c
drivers/isdn/eicon/common.c
drivers/isdn/eicon/constant.h
drivers/isdn/eicon/divalog.h
drivers/isdn/eicon/divas.h
drivers/isdn/eicon/dsp_defs.h
drivers/isdn/eicon/dspdids.h
drivers/isdn/eicon/eicon.h
drivers/isdn/eicon/eicon_dsp.h
drivers/isdn/eicon/eicon_idi.c
drivers/isdn/eicon/eicon_idi.h
drivers/isdn/eicon/eicon_io.c
drivers/isdn/eicon/eicon_isa.c
drivers/isdn/eicon/eicon_isa.h
drivers/isdn/eicon/eicon_mod.c
drivers/isdn/eicon/eicon_pci.c
drivers/isdn/eicon/eicon_pci.h
drivers/isdn/eicon/fourbri.c
drivers/isdn/eicon/fpga.c
drivers/isdn/eicon/idi.c
drivers/isdn/eicon/idi.h
drivers/isdn/eicon/kprintf.c
drivers/isdn/eicon/lincfg.c
drivers/isdn/eicon/linchr.c
drivers/isdn/eicon/linio.c
drivers/isdn/eicon/linsys.c
drivers/isdn/eicon/log.c
drivers/isdn/eicon/pc.h
drivers/isdn/eicon/pc_maint.h
drivers/isdn/eicon/pr_pc.h
drivers/isdn/eicon/pri.c
drivers/isdn/eicon/sys.h
drivers/isdn/eicon/uxio.h
drivers/isdn/eicon/xlog.c
drivers/isdn/hisax/amd7930.c
drivers/isdn/hisax/arcofi.c
drivers/isdn/hisax/arcofi.h
drivers/isdn/hisax/asuscom.c
drivers/isdn/hisax/avm_a1.c
drivers/isdn/hisax/avm_a1p.c
drivers/isdn/hisax/avm_pci.c
drivers/isdn/hisax/bkm_a4t.c
drivers/isdn/hisax/bkm_a8.c
drivers/isdn/hisax/bkm_ax.h
drivers/isdn/hisax/callc.c
drivers/isdn/hisax/cert.c
drivers/isdn/hisax/config.c
drivers/isdn/hisax/diva.c
drivers/isdn/hisax/elsa.c
drivers/isdn/hisax/elsa_ser.c
drivers/isdn/hisax/fsm.c
drivers/isdn/hisax/gazel.c
drivers/isdn/hisax/hfc_2bds0.c
drivers/isdn/hisax/hfc_2bds0.h
drivers/isdn/hisax/hfc_2bs0.c
drivers/isdn/hisax/hfc_2bs0.h
drivers/isdn/hisax/hfc_pci.c
drivers/isdn/hisax/hfc_pci.h
drivers/isdn/hisax/hfc_sx.c
drivers/isdn/hisax/hfc_sx.h
drivers/isdn/hisax/hfcscard.c
drivers/isdn/hisax/hisax.h
drivers/isdn/hisax/hscx.c
drivers/isdn/hisax/hscx.h
drivers/isdn/hisax/hscx_irq.c
drivers/isdn/hisax/icc.c
drivers/isdn/hisax/icc.h
drivers/isdn/hisax/ipac.h
drivers/isdn/hisax/isac.c
drivers/isdn/hisax/isac.h
drivers/isdn/hisax/isar.c
drivers/isdn/hisax/isar.h
drivers/isdn/hisax/isdnl1.c
drivers/isdn/hisax/isdnl1.h
drivers/isdn/hisax/isdnl2.c
drivers/isdn/hisax/isdnl2.h
drivers/isdn/hisax/isdnl3.c
drivers/isdn/hisax/isdnl3.h
drivers/isdn/hisax/isurf.c
drivers/isdn/hisax/ix1_micro.c
drivers/isdn/hisax/jade.c
drivers/isdn/hisax/jade.h
drivers/isdn/hisax/jade_irq.c
drivers/isdn/hisax/l3_1tr6.c
drivers/isdn/hisax/l3_1tr6.h
drivers/isdn/hisax/l3dss1.c
drivers/isdn/hisax/l3dss1.h
drivers/isdn/hisax/l3ni1.c
drivers/isdn/hisax/l3ni1.h
drivers/isdn/hisax/lmgr.c
drivers/isdn/hisax/mic.c
drivers/isdn/hisax/netjet.c
drivers/isdn/hisax/netjet.h
drivers/isdn/hisax/niccy.c
drivers/isdn/hisax/nj_s.c
drivers/isdn/hisax/nj_u.c
drivers/isdn/hisax/q931.c
drivers/isdn/hisax/rawhdlc.c
drivers/isdn/hisax/rawhdlc.h
drivers/isdn/hisax/s0box.c
drivers/isdn/hisax/saphir.c
drivers/isdn/hisax/sedlbauer.c
drivers/isdn/hisax/sportster.c
drivers/isdn/hisax/tei.c
drivers/isdn/hisax/teleint.c
drivers/isdn/hisax/teles0.c
drivers/isdn/hisax/teles3.c
drivers/isdn/hisax/telespci.c
drivers/isdn/hisax/w6692.c
drivers/isdn/hisax/w6692.h
drivers/isdn/hysdn/boardergo.c
drivers/isdn/hysdn/boardergo.h
drivers/isdn/hysdn/hycapi.c
drivers/isdn/hysdn/hysdn_boot.c
drivers/isdn/hysdn/hysdn_defs.h
drivers/isdn/hysdn/hysdn_init.c
drivers/isdn/hysdn/hysdn_net.c
drivers/isdn/hysdn/hysdn_pof.h
drivers/isdn/hysdn/hysdn_procconf.c
drivers/isdn/hysdn/hysdn_proclog.c
drivers/isdn/hysdn/hysdn_sched.c
drivers/isdn/hysdn/ince1pc.h
drivers/isdn/icn/icn.c
drivers/isdn/icn/icn.h
drivers/isdn/isdn_audio.c
drivers/isdn/isdn_audio.h
drivers/isdn/isdn_bsdcomp.c
drivers/isdn/isdn_common.c
drivers/isdn/isdn_common.h
drivers/isdn/isdn_concap.c
drivers/isdn/isdn_concap.h
drivers/isdn/isdn_net.c
drivers/isdn/isdn_net.h
drivers/isdn/isdn_ppp.c
drivers/isdn/isdn_ppp.h
drivers/isdn/isdn_syms.c [deleted file]
drivers/isdn/isdn_tty.c
drivers/isdn/isdn_tty.h
drivers/isdn/isdn_ttyfax.c
drivers/isdn/isdn_ttyfax.h
drivers/isdn/isdn_v110.c
drivers/isdn/isdn_v110.h
drivers/isdn/isdn_x25iface.c
drivers/isdn/isdn_x25iface.h
drivers/isdn/isdnloop/isdnloop.c
drivers/isdn/isdnloop/isdnloop.h
drivers/isdn/pcbit/callbacks.c
drivers/isdn/pcbit/callbacks.h
drivers/isdn/pcbit/capi.c
drivers/isdn/pcbit/capi.h
drivers/isdn/pcbit/drv.c
drivers/isdn/pcbit/edss1.c
drivers/isdn/pcbit/edss1.h
drivers/isdn/pcbit/layer2.c
drivers/isdn/pcbit/layer2.h
drivers/isdn/pcbit/module.c
drivers/isdn/pcbit/pcbit.h
drivers/isdn/sc/card.h
drivers/isdn/sc/command.c
drivers/isdn/sc/debug.c
drivers/isdn/sc/debug.h
drivers/isdn/sc/event.c
drivers/isdn/sc/hardware.h
drivers/isdn/sc/includes.h
drivers/isdn/sc/init.c
drivers/isdn/sc/interrupt.c
drivers/isdn/sc/ioctl.c
drivers/isdn/sc/message.c
drivers/isdn/sc/message.h
drivers/isdn/sc/packet.c
drivers/isdn/sc/scioc.h
drivers/isdn/sc/shmem.c
drivers/isdn/sc/timer.c
drivers/pci/oldproc.c
drivers/pci/quirks.c
drivers/scsi/osst.c
drivers/scsi/osst.h
drivers/sound/es1370.c
drivers/sound/es1371.c
drivers/sound/sonicvibes.c
drivers/video/Makefile
include/asm-i386/processor.h
include/linux/b1lli.h
include/linux/b1pcmcia.h
include/linux/capi.h
include/linux/concap.h
include/linux/hysdn_if.h
include/linux/isdn.h
include/linux/isdn_divertif.h
include/linux/isdn_ppp.h
include/linux/isdnif.h
include/linux/kernelcapi.h
include/linux/module.h
include/linux/pci.h
scripts/lxdialog/checklist.c

index e8d70fae9a2ac2181411baf3fa19d9d5dbea88dd..6b40fe4555e8fbd959008d85b92b55956c76a34d 100644 (file)
@@ -1,4 +1,4 @@
-$Id: INTERFACE,v 1.15.8.2 2001/03/13 16:17:07 kai Exp $
+$Id: INTERFACE,v 1.1 2001/05/26 11:47:14 armin Exp $
 
 Description of the Interface between Linklevel and Hardwarelevel
   of isdn4linux:
index 7e5731319e30d6b0b5361bff7c94c2952f5d2a97..a3c51cebe96c6b76b101192f0ad423728fda2322 100644 (file)
@@ -1,4 +1,4 @@
-$Id: INTERFACE.fax,v 1.2 2000/08/06 09:22:50 armin Exp $
+$Id: INTERFACE.fax,v 1.1 2001/05/26 11:47:14 armin Exp $
 
 
 Description of the fax-subinterface between linklevel and hardwarelevel of 
index ce7115e7f4cec44ac4545f189eff9706083888b5..8457a57997b436d4f1e7d68b450320d3342cd9d5 100644 (file)
@@ -1,4 +1,4 @@
-$Id: README.act2000,v 1.3 2000/08/06 09:22:51 armin Exp $
+$Id: README.act2000,v 1.1 2001/05/26 11:47:16 armin Exp $
 
 This document describes the ACT2000 driver for the
 IBM Active 2000 ISDN card.
index 8ebca19290d93aeac4fd8fa8d0cf42bb7ecd638a..6b5acee1a381f16f8161fe40f4596598db619ca0 100644 (file)
@@ -1,4 +1,4 @@
-$Id: README.audio,v 1.8 1999/07/11 17:17:29 armin Exp $
+$Id: README.audio,v 1.1 2001/05/26 11:47:17 armin Exp $
 
 ISDN subsystem for Linux.
   Description of audio mode.
index 2f114babe4b6a22538274deff8f384eece7a801f..c3edb372685e543d2ad462ed67e9a2c18fee57f6 100644 (file)
@@ -118,7 +118,7 @@ struct concap_proto_ops{
           or when the device driver resets the interface. All services of the
           encapsulation protocol may be used after this*/
        int (*restart)(struct concap_proto *cprot, 
-                      struct net_device *ndev,
+                      struct device *ndev,
                       struct concap_device_ops *dops);
 
        /* deactivate an encapsulation protocol instance. The encapsulation
@@ -174,7 +174,7 @@ because the encapsulation protocol directly calls netif_rx().
 
 An encapsulation protocol itself is actually the
 struct concap_proto{
-       struct net_device *net_dev;             /* net device using our service  */
+       struct device *net_dev;         /* net device using our service  */
        struct concap_device_ops *dops; /* callbacks provided by device */
        struct concap_proto_ops  *pops; /* callbacks provided by us */
        int flags;
@@ -199,7 +199,7 @@ A possible extended device structure which uses the connection controlling
 encapsulation services could look like this:
 
 struct concap_device{
-       struct net_device net_dev;
+       struct device net_dev;
        struct my_priv  /* device->local stuff */
                        /* the my_priv struct might contain a 
                           struct concap_device_ops *dops;
@@ -225,9 +225,9 @@ ATM).
 
 
 If general linux network interfaces explicitly supported concap
-protocols (e.g. by a member struct concap_proto* in struct net_device)
+protocols (e.g. by a member struct concap_proto* in struct device)
 then the interface of the service function could be changed
-by passing a pointer of type (struct net_device*) instead of
+by passing a pointer of type (struct device*) instead of
 type (struct concap_proto*). Doing so would make many of the service
 functions compatible to network device support functions.
 
@@ -237,7 +237,7 @@ e.g. instead of the concap protocol's service function
 
 we could have
 
-  int (*encap_and_xmit)(struct net_device *ndev, struct sk_buff *skb);
+  int (*encap_and_xmit)(struct device *ndev, struct sk_buff *skb);
 
 As this is compatible to the dev->hard_start_xmit() method, the device
 driver could directly register the concap protocol's encap_and_xmit()
@@ -247,7 +247,7 @@ procedure call layer.
 
 The device's data request function could also be defined as
  
-  int (*data_req)(struct net_device *ndev, struct sk_buff *skb);
+  int (*data_req)(struct device *ndev, struct sk_buff *skb);
 
 This might even allow for some protocol stacking. And the network
 interface might even register the same data_req() function directly
index 111409ba662252ae599dd9d45dca5923becf2706..052b9938ce2d14a53c36cc16ed975702913474b2 100644 (file)
@@ -1,4 +1,4 @@
-$Id: README.eicon,v 1.10.6.1 2001/02/19 10:04:59 armin Exp $
+$Id: README.eicon,v 1.1 2001/05/26 11:47:18 armin Exp $
 
 (c) 1999,2000 Armin Schindler (mac@melware.de)
 (c) 1999,2000 Cytronics & Melware (info@melware.de)
index 94e9f902b999118b4b4831f826a766f4e4b3accd..94371bfb7fa9977b874c69b22d82e1d381e44c4a 100644 (file)
@@ -1,4 +1,4 @@
-$Id: README.hysdn,v 1.3.6.1 2001/02/10 14:41:19 kai Exp $
+$Id: README.hysdn,v 1.1 2001/05/26 11:47:18 armin Exp $
 The hysdn driver has been written by
 by Werner Cornelius (werner@isdn4linux.de or werner@titro.de) 
 for Hypercope GmbH Aachen Germany. Hypercope agreed to publish this driver
index a5f55eadb3ca5d45ad88734e24a93222c2e12675..e10c3b39330e3b2fc3537a44613845c3f7502ee4 100644 (file)
@@ -1,4 +1,4 @@
-$Id: README.icn,v 1.7 2000/08/06 09:22:51 armin Exp $
+$Id: README.icn,v 1.1 2001/05/26 11:47:18 armin Exp $
 
 You can get the ICN-ISDN-card from:
 
index 462bc7ec8814255e3305bf8a015d6da74a2cd9f2..773abb1afbc8dc82a6ae5e900dc6fe325e32d6ef 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
 VERSION = 2
 PATCHLEVEL = 2
 SUBLEVEL = 21
-EXTRAVERSION = pre1
+EXTRAVERSION = pre2
 
 ARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ -e s/arm.*/arm/ -e s/sa110/arm/)
 
index 273791ba879070555a1a383346e1dc25fb872066..6b5b2fe145e190893b64b4c0e2eca5a82e717350 100644 (file)
@@ -1,17 +1,18 @@
-/*
- *     Machine Check Handler For PII/PIII
- */
 
-#include <linux/config.h>
+#include <linux/init.h>
 #include <linux/types.h>
 #include <linux/kernel.h>
 #include <linux/sched.h>
 #include <asm/processor.h> 
 #include <asm/msr.h>
 
-static int banks = 0;
+/*
+ *     Machine Check Handler For PII/PIII
+ */
+
+static int banks;
 
-void mcheck_fault(void)
+static void intel_machine_check(struct pt_regs * regs, long error_code)
 {
        int recover=1;
        u32 alow, ahigh, high, low;
@@ -37,7 +38,7 @@ void mcheck_fault(void)
                        high&=~(1<<31);
                        if(high&(1<<27))
                        {
-                               rdmsr(0x403+i*4, alow, ahigh);
+                               rdmsr(0x402+i*4, alow, ahigh);
                                printk("[%08x%08x]", alow, ahigh);
                        }
                        if(high&(1<<26))
@@ -50,7 +51,7 @@ void mcheck_fault(void)
                        /* Clear it */
                        wrmsr(0x401+i*4, 0UL, 0UL);
                        /* Serialize */
-                       mb();
+                       wmb();
                }
        }
        
@@ -63,31 +64,101 @@ void mcheck_fault(void)
        wrmsr(0x17a,mcgstl, mcgsth);
 }
 
+/*
+ *     Machine check handler for Pentium class Intel
+ */
+static void pentium_machine_check(struct pt_regs * regs, long error_code)
+{
+       u32 loaddr, hi, lotype;
+       rdmsr(0x0, loaddr, hi);
+       rdmsr(0x1, lotype, hi);
+       printk(KERN_EMERG "CPU#%d: Machine Check Exception:  0x%8X (type 0x%8X).\n", smp_processor_id(), loaddr, lotype);
+       if(lotype&(1<<5))
+               printk(KERN_EMERG "CPU#%d: Possible thermal failure (CPU on fire ?).\n", smp_processor_id());
+}
 
 /*
- *     This has to be run for each processor
+ *     Machine check handler for WinChip C6
  */
  
-void mcheck_init(void)
+static void winchip_machine_check(struct pt_regs * regs, long error_code)
+{
+       printk(KERN_EMERG "CPU#%d: Machine Check Exception.\n", smp_processor_id());
+}
+
+/*
+ *     Handle unconfigured int18 (should never happen)
+ */
+
+static void unexpected_machine_check(struct pt_regs * regs, long error_code)
+{      
+       printk(KERN_ERR "CPU#%d: Unexpected int18 (Machine Check).\n", smp_processor_id());
+}
+
+/*
+ *     Call the installed machine check handler for this CPU setup.
+ */ 
+static void (*machine_check_vector)(struct pt_regs *, long error_code) = unexpected_machine_check;
+
+void do_machine_check(struct pt_regs * regs, long error_code)
+{
+       machine_check_vector(regs, error_code);
+}
+
+/*
+ *     Set up machine check reporting for Intel processors
+ */
+
+void __init intel_mcheck_init(struct cpuinfo_x86 *c)
 {
        u32 l, h;
        int i;
-       struct cpuinfo_x86 *c;
-       static int done=0;
+       static int done;
+       
+       /*
+        *      Check for MCE support
+        */
 
-       c=cpu_data+smp_processor_id();
+       if(!(c->x86_capability&X86_FEATURE_MCE))
+               return; 
        
-       if(c->x86_vendor!=X86_VENDOR_INTEL)
-               return;
+       /*
+        *      Pentium machine check
+        */
        
-       if(!(c->x86_capability&X86_FEATURE_MCE))
+       if(c->x86 == 5)
+       {
+               machine_check_vector = pentium_machine_check;
+               wmb();
+               /* Read registers before enabling */
+               rdmsr(0x0, l, h);
+               rdmsr(0x1, l, h);
+               if(done==0)
+                       printk(KERN_INFO "Intel old style machine check architecture supported.\n");
+               /* Enable MCE */        
+               __asm__ __volatile__ (
+                       "movl %%cr4, %%eax\n\t"
+                       "orl $0x40, %%eax\n\t"
+                       "movl %%eax, %%cr4\n\t" : : : "eax");
+               printk(KERN_INFO "Intel old style machine check reporting enabled on CPU#%d.\n", smp_processor_id());
                return;
-               
+       }
+       
+
+       /*
+        *      Check for PPro style MCA
+        */
+                       
        if(!(c->x86_capability&X86_FEATURE_MCA))
                return;
                
        /* Ok machine check is available */
        
+       machine_check_vector = intel_machine_check;
+       wmb();
+       
        if(done==0)
                printk(KERN_INFO "Intel machine check architecture supported.\n");
        rdmsr(0x179, l, h);
@@ -102,10 +173,69 @@ void mcheck_init(void)
        {
                wrmsr(0x401+4*i, 0x0, 0x0); 
        }
+       set_in_cr4(X86_CR4_MCE);
+       printk(KERN_INFO "Intel machine check reporting enabled on CPU#%d.\n", smp_processor_id());
+       done=1;
+}
+
+/*
+ *     Set up machine check reporting on the Winchip C6 series
+ */
+static void __init winchip_mcheck_init(struct cpuinfo_x86 *c)
+{
+       u32 lo, hi;
+       /* Not supported on C3 */
+       if(c->x86 != 5)
+               return;
+       /* Winchip C6 */
+       machine_check_vector = winchip_machine_check;
+       wmb();
+       rdmsr(0x107, lo, hi);
+       lo|= (1<<2);    /* Enable EIERRINT (int 18 MCE) */
+       lo&= ~(1<<4);   /* Enable MCE */
+       wrmsr(0x107, lo, hi);
        __asm__ __volatile__ (
                "movl %%cr4, %%eax\n\t"
                "orl $0x40, %%eax\n\t"
                "movl %%eax, %%cr4\n\t" : : : "eax");
-       printk(KERN_INFO "Intel machine check reporting enabled on CPU#%d.\n", smp_processor_id());
-       done=1;
+       printk(KERN_INFO "Winchip machine check reporting enabled on CPU#%d.\n", smp_processor_id());
+}
+
+
+/*
+ *     This has to be run for each processor
+ */
+
+
+static int mce_disabled = 0;
+
+void __init mcheck_init(struct cpuinfo_x86 *c)
+{
+       if(mce_disabled)
+               return;
+               
+       switch(c->x86_vendor)
+       {
+               case X86_VENDOR_AMD:
+                       /*
+                        *      AMD K7 machine check is Intel like
+                        */
+                       if(c->x86 == 6)
+                               intel_mcheck_init(c);
+                       break;
+               case X86_VENDOR_INTEL:
+                       intel_mcheck_init(c);
+                       break;
+               case X86_VENDOR_CENTAUR:
+                       winchip_mcheck_init(c);
+                       break;
+       }
+}
+
+static int __init mcheck_disable(char *str, int *unused)
+{
+       mce_disabled = 1;
+       return 0;
 }
+__setup("nomce", mcheck_disable);
index d3bdbb73ab941e26bceab6422870d4dbf773e612..01adebf5d8cd3d86062fcc8d988790c39677991d 100644 (file)
@@ -366,7 +366,7 @@ ENTRY(page_fault)
 
 ENTRY(machine_check)
        pushl $0
-       pushl $ SYMBOL_NAME(mcheck_fault)
+       pushl $ SYMBOL_NAME(do_machine_check)
        jmp error_code
 
 ENTRY(spurious_interrupt_bug)
index a5aa3b40e30f74a8290ceaf3dd7841baddd47960..3a9be3b0bf1d0f51705e85d8f672f73013b0bf9a 100644 (file)
  *     Added Cyrix III initial detection code
  *     Alan Cox <alan@redhat.com>, Septembr 2000
  *
- *      Improve cache size calculation
- *      Asit Mallick <asit.k.mallick@intel.com>, October 2000
- *      Andrew Ip <aip@turbolinux.com>, October 2000
+ *     Improve cache size calculation
+ *     Asit Mallick <asit.k.mallick@intel.com>, October 2000
+ *     Andrew Ip <aip@turbolinux.com>, October 2000
+ *
+ *     Backport various workarounds from 2.4.16
+ *     Dave Jones <davej@suse.de>, December 2001
+ *
  */
 
 /*
@@ -114,10 +118,13 @@ extern int rd_prompt;             /* 1 = prompt for ramdisk, 0 = don't prompt */
 extern int rd_image_start;     /* starting block # of image */
 #endif
 
+extern void mcheck_init(struct cpuinfo_x86 *c);
 extern int root_mountflags;
 extern int _etext, _edata, _end;
 extern unsigned long cpu_khz;
 
+static int disable_x86_serial_nr __initdata = 1;
+
 /*
  * This is set up by the setup-routine at boot-time
  */
@@ -386,8 +393,8 @@ static void __init setup_memory_region(void)
 static char command_line[COMMAND_LINE_SIZE] = { 0, };
        char saved_command_line[COMMAND_LINE_SIZE];
 
-__initfunc(void setup_arch(char **cmdline_p,
-       unsigned long * memory_start_p, unsigned long * memory_end_p))
+void __init setup_arch(char **cmdline_p,
+       unsigned long * memory_start_p, unsigned long * memory_end_p)
 {
        unsigned long memory_start, memory_end = 0;
        char c = ' ', *to = command_line, *from = COMMAND_LINE;
@@ -572,49 +579,52 @@ __initfunc(void setup_arch(char **cmdline_p,
 }
 
 
-__initfunc(static int get_model_name(struct cpuinfo_x86 *c))
+static int __init get_model_name(struct cpuinfo_x86 *c)
 {
-       unsigned int n, dummy, *v;
-
-       /* 
-        * Actually we must have cpuid or we could never have
-        * figured out that this was AMD/Centaur/Cyrix/Transmeta
-        * from the vendor info :-).
-        */
+       unsigned int *v;
+       char *p, *q;
 
-       cpuid(0x80000000, &n, &dummy, &dummy, &dummy);
-       if (n < 0x80000004)
+       if (cpuid_eax(0x80000000) < 0x80000004)
                return 0;
-       cpuid(0x80000001, &dummy, &dummy, &dummy, &(c->x86_capability));
        v = (unsigned int *) c->x86_model_id;
        cpuid(0x80000002, &v[0], &v[1], &v[2], &v[3]);
        cpuid(0x80000003, &v[4], &v[5], &v[6], &v[7]);
        cpuid(0x80000004, &v[8], &v[9], &v[10], &v[11]);
        c->x86_model_id[48] = 0;
-       
+
+       /* Intel chips right-justify this string for some dumb reason;
+          undo that brain damage */
+       p = q = &c->x86_model_id[0];
+       while ( *p == ' ' )
+               p++;
+       if ( p != q ) {
+               while ( *p )
+                       *q++ = *p++;
+               while ( q <= &c->x86_model_id[48] )
+                       *q++ = '\0';  /* Zero-pad the rest */
+       }
        return 1;
 }
 
 
-__initfunc (static void display_cacheinfo(struct cpuinfo_x86 *c))
+static void __init display_cacheinfo(struct cpuinfo_x86 *c)
 {
-       unsigned int n, dummy, ecx, edx;
+       unsigned int n, dummy, ecx, edx, l2size;
 
-       cpuid(0x80000000, &n, &dummy, &dummy, &dummy);
+       n = cpuid_eax(0x80000000);
 
        if (n >= 0x80000005){
                cpuid(0x80000005, &dummy, &dummy, &ecx, &edx);
-               printk("CPU: L1 I Cache: %dK  L1 D Cache: %dK\n",
-                       ecx>>24, edx>>24);
+               printk("CPU: L1 I Cache: %dK (%d bytes/line), D cache %dK (%d bytes/line)\n",
+                       edx>>24, edx&0xFF, ecx>>24, ecx&0xFF);
                c->x86_cache_size=(ecx>>24)+(edx>>24);
        }
 
-       /* Yes this can occur - the CyrixIII just has a large L1 */
-       if (n < 0x80000006)
-               return; /* No function to get L2 info */
+       if (n < 0x80000006)     /* Some chips just has a large L1. */
+               return;
 
-       cpuid(0x80000006, &dummy, &dummy, &ecx, &edx);
-       c->x86_cache_size = ecx>>16;
+       ecx = cpuid_ecx(0x80000006);
+       l2size = ecx >> 16;
 
        /* AMD errata T13 (order #21922) */
        if(boot_cpu_data.x86_vendor == X86_VENDOR_AMD &&
@@ -622,15 +632,20 @@ __initfunc (static void display_cacheinfo(struct cpuinfo_x86 *c))
                boot_cpu_data.x86_model== 3 &&
                boot_cpu_data.x86_mask == 0)
        {
-               c->x86_cache_size = 64;
+               l2size = 64;
        }
 
-       printk("CPU: L2 Cache: %dK\n", c->x86_cache_size);
-}
+       if (l2size == 0)
+               return;         /* Again, no L2 cache is possible */
+
+       c->x86_cache_size = l2size;
 
+       printk("CPU: L2 Cache: %dK (%d bytes/line)\n",
+               l2size, ecx & 0xFF);
+}
 
 
-__initfunc(static int amd_model(struct cpuinfo_x86 *c))
+static int __init init_amd(struct cpuinfo_x86 *c)
 {
        u32 l, h;
        unsigned long flags;
@@ -645,23 +660,24 @@ __initfunc(static int amd_model(struct cpuinfo_x86 *c))
        switch(c->x86)
        {
                case 5:
-                       if( c->x86_model < 6 )
-                       {
-                               /* Anyone with a K5 want to fill this in */                             
+                       if( c->x86_model < 6 ) {
+                               /* Based on AMD doc 20734R - June 2000 */
+                               if ( c->x86_model == 0 ) {
+                                       c->x86_capability&=~X86_FEATURE_APIC;
+                                       c->x86_capability|=X86_FEATURE_PGE;
+                               }
                                break;
                        }
 
                        /* K6 with old style WHCR */
-                       if( c->x86_model < 8 ||
-                               (c->x86_model== 8 && c->x86_mask < 8))
-                       {
+                       if (c->x86_model < 8 ||
+                          (c->x86_model== 8 && c->x86_mask < 8)) {
                                /* We can only write allocate on the low 508Mb */
                                if(mbytes>508)
                                        mbytes=508;
-                                       
+
                                rdmsr(0xC0000082, l, h);
-                               if((l&0x0000FFFF)==0)
-                               {               
+                               if((l&0x0000FFFF)==0) {         
                                        l=(1<<0)|((mbytes/4)<<1);
                                        save_flags(flags);
                                        __cli();
@@ -670,20 +686,19 @@ __initfunc(static int amd_model(struct cpuinfo_x86 *c))
                                        restore_flags(flags);
                                        printk(KERN_INFO "Enabling old style K6 write allocation for %d Mb\n",
                                                mbytes);
-
                                }
                                break;
                        }
-                       if (c->x86_model == 8 || c->x86_model == 9 || c->x86_model == 13)
-                       {
+
+                       if ((c->x86_model == 8 && c->x86_mask >7) ||
+                            c->x86_model == 9 || c->x86_model == 13) {
                                /* The more serious chips .. */
-                               
+
                                if(mbytes>4092)
                                        mbytes=4092;
 
                                rdmsr(0xC0000082, l, h);
-                               if((l&0xFFFF0000)==0)
-                               {
+                               if((l&0xFFFF0000)==0) {
                                        l=((mbytes>>2)<<22)|(1<<16);
                                        save_flags(flags);
                                        __cli();
@@ -695,35 +710,21 @@ __initfunc(static int amd_model(struct cpuinfo_x86 *c))
                                }
 
                                /*  Set MTRR capability flag if appropriate  */
-                               if((boot_cpu_data.x86_model == 13) ||
-                                  (boot_cpu_data.x86_model == 9) ||
-                                 ((boot_cpu_data.x86_model == 8) && 
-                                  (boot_cpu_data.x86_mask >= 8)))
+                               if (c->x86_model == 13 || c->x86_model == 9 ||
+                                  (c->x86_model == 8 && c->x86_mask >= 8))
                                        c->x86_capability |= X86_FEATURE_MTRR;
                                break;
                        }
                        break;
 
                case 6: /* An Athlon. We can trust the BIOS probably */
-               {
                        break;
-               }
        }
 
        display_cacheinfo(c);
        return r;
 }
 
-__initfunc(static void intel_model(struct cpuinfo_x86 *c))
-{
-       unsigned int *v = (unsigned int *) c->x86_model_id;
-       cpuid(0x80000002, &v[0], &v[1], &v[2], &v[3]);
-       cpuid(0x80000003, &v[4], &v[5], &v[6], &v[7]);
-       cpuid(0x80000004, &v[8], &v[9], &v[10], &v[11]);
-       c->x86_model_id[48] = 0;
-       printk("CPU: %s\n", c->x86_model_id);
-}
-                       
 
 /*
  * Read Cyrix DEVID registers (DIR) to get more detailed info. about the CPU
@@ -784,7 +785,7 @@ static char Cx86_cb[] __initdata = "?.5x Core/Bus Clock";
 static char cyrix_model_mult1[] __initdata = "12??43";
 static char cyrix_model_mult2[] __initdata = "12233445";
 
-__initfunc(static void cyrix_model(struct cpuinfo_x86 *c))
+static void __init init_cyrix(struct cpuinfo_x86 *c)
 {
        unsigned char dir0, dir0_msn, dir0_lsn, dir1 = 0;
        char *buf = c->x86_model_id;
@@ -860,6 +861,8 @@ __initfunc(static void cyrix_model(struct cpuinfo_x86 *c))
                 isa_dma_bridge_buggy = 2;
                                                                                                        
 #endif
+               c->x86_cache_size=16;   /* Yep 16K integrated cache thats it */
+
                /* GXm supports extended cpuid levels 'ala' AMD */
                if (c->cpuid_level == 2) {
                        get_model_name(c);  /* get CPU marketing name */
@@ -875,8 +878,13 @@ __initfunc(static void cyrix_model(struct cpuinfo_x86 *c))
                break;
 
         case 5: /* 6x86MX/M II */
-               if (dir1 > 7) dir0_msn++;  /* M II */
-               else c->coma_bug = 1;      /* 6x86MX, it has the bug. */
+               if (dir1 > 7) {
+                       dir0_msn++;  /* M II */
+                       /* Enable MMX extensions (App note 108) */
+                       setCx86(CX86_CCR7, getCx86(CX86_CCR7)|1);
+               } else {
+                       c->coma_bug = 1;      /* 6x86MX, it has the bug. */
+               }
                tmp = (!(dir0_lsn & 7) || dir0_lsn & 1) ? 2 : 0;
                Cx86_cb[tmp] = cyrix_model_mult2[dir0_lsn & 7];
                p = Cx86_cb+tmp;
@@ -897,8 +905,8 @@ __initfunc(static void cyrix_model(struct cpuinfo_x86 *c))
                        dir0_msn = 0;
                        p = Cx486S_name[0];
                        break;
-               break;
                }
+               break;
 
        default:  /* unknown (shouldn't happen, we know everyone ;-) */
                dir0_msn = 7;
@@ -909,7 +917,7 @@ __initfunc(static void cyrix_model(struct cpuinfo_x86 *c))
        return;
 }
 
-__initfunc(static void transmeta_model(struct cpuinfo_x86 *c))
+static void __init init_transmeta(struct cpuinfo_x86 *c)
 {
        unsigned int cap_mask, uk, max, dummy;
        unsigned int cms_rev1, cms_rev2;
@@ -974,7 +982,31 @@ __initfunc(static void transmeta_model(struct cpuinfo_x86 *c))
 }
 
 
-__initfunc(void get_cpu_vendor(struct cpuinfo_x86 *c))
+static void __init init_rise(struct cpuinfo_x86 *c)
+{
+       printk("CPU: Rise iDragon");
+       if (c->x86_model > 2)
+               printk(" II");
+       printk("\n");
+
+       /* Unhide possibly hidden capability flags
+        * The mp6 iDragon family don't have MSRs
+        * We switch on extra features with this cpuid weirdness: */
+       __asm__ (
+               "movl $0x6363452a, %%eax\n\t"
+               "movl $0x3231206c, %%ecx\n\t"
+               "movl $0x2a32313a, %%edx\n\t"
+               "cpuid\n\t"
+               "movl $0x63634523, %%eax\n\t"
+               "movl $0x32315f6c, %%ecx\n\t"
+               "movl $0x2333313a, %%edx\n\t"
+               "cpuid\n\t" : : : "eax", "ebx", "ecx", "edx"
+       );
+       c->x86_capability |= X86_FEATURE_CX8;
+}
+
+
+static void __init get_cpu_vendor(struct cpuinfo_x86 *c)
 {
        char *v = c->x86_vendor_id;
 
@@ -998,9 +1030,211 @@ __initfunc(void get_cpu_vendor(struct cpuinfo_x86 *c))
                c->x86_vendor = X86_VENDOR_UNKNOWN;
 }
 
+
+static void __init init_centaur(struct cpuinfo_x86 *c)
+{
+       u32 hv,lv;
+       
+       /* Centaur C6 Series */
+       if(c->x86==5)
+       {
+               rdmsr(0x107, lv, hv);
+               printk("Centaur FSR was 0x%X ",lv);
+               lv|=(1<<1 | 1<<2 | 1<<7);
+               /* lv|=(1<<6);  - may help too if the board can cope */
+               printk("now 0x%X\n", lv);
+               wrmsr(0x107, lv, hv);
+               /* Emulate MTRRs using Centaur's MCR. */
+               c->x86_capability |= X86_FEATURE_MTRR;
+
+               /* Disable TSC on C6 as per errata. */
+               if (c->x86_model ==4) {
+                       printk ("Disabling bugged TSC.\n");
+                       c->x86_capability &= ~X86_FEATURE_TSC;
+               }
+
+               /* Set 3DNow! on Winchip 2 and above. */
+               if (c->x86_model >=8)
+                   c->x86_capability |= X86_FEATURE_AMD3D;
+
+               c->x86_capability |=X86_FEATURE_CX8;
+       }
+       /* Cyrix III 'Samuel' CPU */
+       if(c->x86 == 6 && c->x86_model == 6)
+       {
+               rdmsr(0x1107, lv, hv);
+               lv|=(1<<1);     /* Report CX8 */
+               lv|=(1<<7);     /* PGE enable */
+               wrmsr(0x1107, lv, hv);
+               /* Cyrix III */
+               c->x86_capability |= X86_FEATURE_CX8;
+               
+               /* Check for 3dnow */
+               cpuid(0x80000001, &lv, &lv, &lv, &hv);
+               if(hv&(1<<31))
+                       c->x86_capability |= X86_FEATURE_AMD3D;
+       }       
+}
+
+
+static void __init init_intel(struct cpuinfo_x86 *c)
+{
+       char *p;
+       unsigned int l1i = 0, l1d = 0, l2 = 0, l3 = 0; /* Cache sizes */
+
+       if (c->cpuid_level > 1) {
+               /* supports eax=2  call */
+               int i, j, n;
+               int regs[4];
+               unsigned char *dp = (unsigned char *)regs;
+
+               /* Number of times to iterate */
+               n = cpuid_eax(2) & 0xFF;
+
+               for ( i = 0 ; i < n ; i++ ) {
+                       cpuid(2, &regs[0], &regs[1], &regs[2], &regs[3]);
+                       
+                       /* If bit 31 is set, this is an unknown format */
+                       for ( j = 0 ; j < 3 ; j++ ) {
+                               if ( regs[j] < 0 ) regs[j] = 0;
+                       }
+
+                       /* Byte 0 is level count, not a descriptor */
+                       for ( j = 1 ; j < 16 ; j++ ) {
+                               unsigned char des = dp[j];
+                               unsigned char dl, dh;
+                               unsigned int cs;
+
+                               dh = des >> 4;
+                               dl = des & 0x0F;
+
+                               /* Black magic... */
+
+                               switch ( dh )
+                               {
+                               case 0:
+                                       switch ( dl ) {
+                                       case 6:
+                                               /* L1 I cache */
+                                               l1i += 8;
+                                               break;
+                                       case 8:
+                                               /* L1 I cache */
+                                               l1i += 16;
+                                               break;
+                                       case 10:
+                                               /* L1 D cache */
+                                               l1d += 8;
+                                               break;
+                                       case 12:
+                                               /* L1 D cache */
+                                               l1d += 16;
+                                               break;
+                                       default:;
+                                               /* TLB, or unknown */
+                                       }
+                                       break;
+                               case 2:
+                                       if ( dl ) {
+                                               /* L3 cache */
+                                               cs = (dl-1) << 9;
+                                               l3 += cs;
+                                       }
+                                       break;
+                               case 4:
+                                       if ( c->x86 > 6 && dl ) {
+                                               /* P4 family */
+                                               /* L3 cache */
+                                               cs = 128 << (dl-1);
+                                               l3 += cs;
+                                               break;
+                                       }
+                                       /* else same as 8 - fall through */
+                               case 8:
+                                       if ( dl ) {
+                                               /* L2 cache */
+                                               cs = 128 << (dl-1);
+                                               l2 += cs;
+                                       }
+                                       break;
+                               case 6:
+                                       if (dl > 5) {
+                                               /* L1 D cache */
+                                               cs = 8<<(dl-6);
+                                               l1d += cs;
+                                       }
+                                       break;
+                               case 7:
+                                       if ( dl >= 8 ) 
+                                       {
+                                               /* L2 cache */
+                                               cs = 64<<(dl-8);
+                                               l2 += cs;
+                                       } else {
+                                               /* L0 I cache, count as L1 */
+                                               cs = dl ? (16 << (dl-1)) : 12;
+                                               l1i += cs;
+                                       }
+                                       break;
+                               default:
+                                       /* TLB, or something else we don't know about */
+                                       break;
+                               }
+                       }
+               }
+               if ( l1i || l1d )
+                       printk(KERN_INFO "CPU: L1 I cache: %dK, L1 D cache: %dK\n",
+                              l1i, l1d);
+               if ( l2 )
+                       printk(KERN_INFO "CPU: L2 cache: %dK\n", l2);
+               if ( l3 )
+                       printk(KERN_INFO "CPU: L3 cache: %dK\n", l3);
+
+               /*
+                * This assumes the L3 cache is shared; it typically lives in
+                * the northbridge.  The L1 caches are included by the L2
+                * cache, and so should not be included for the purpose of
+                * SMP switching weights.
+                */
+               c->x86_cache_size = l2 ? l2 : (l1i+l1d);
+       }
+
+       /*
+        *      Intel finally adopted the AMD/Cyrix extended id naming
+        *      stuff for the 'Pentium IV'
+        */
+
+       if (c->x86 == 15) {
+               get_model_name(c);
+               printk("CPU: %s\n", c->x86_model_id);
+               return;
+       }
+
+       /* Names for the Pentium II Celeron processors
+          detectable only by also checking the cache size */
+    if (c->x86 == 6) { 
+               switch (c->x86_model) {
+                       case 5:
+                               if (c->x86_cache_size == 0)
+                                       p = "Celeron (Covington)";
+                               if (c->x86_cache_size == 256)
+                                       p = "Mobile Pentium II (Dixon)";
+                               break;
+                       case 6:
+                               if (c->x86_cache_size == 128)
+                                       p = "Celeron (Mendocino)";
+                               break;
+                       case 8:
+                               if (c->x86_cache_size == 128)
+                                       p = "Celeron (Coppermine)";
+                               break;
+               }
+       }
+}
+
 struct cpu_model_info {
        int vendor;
-       int x86;
+       int family;
        char *model_names[16];
 };
 
@@ -1042,189 +1276,120 @@ static struct cpu_model_info cpu_models[] __initdata = {
        { X86_VENDOR_NEXGEN,    5,
          { "Nx586", NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
            NULL, NULL, NULL, NULL, NULL, NULL, NULL }},
+       { X86_VENDOR_RISE,  5,
+         { "iDragon", NULL, "iDragon", NULL, NULL, NULL, NULL,
+           NULL, "iDragon II", "iDragon II", NULL, NULL, NULL, NULL, NULL, NULL }},
 };
 
-__initfunc(void identify_cpu(struct cpuinfo_x86 *c))
+
+static char __init *table_lookup_model(struct cpuinfo_x86 *c)
 {
+       struct cpu_model_info *info = cpu_models;
        int i;
-       char *p = NULL;
-       extern void mcheck_init(void);
-       
-       c->loops_per_jiffy = loops_per_jiffy;
-       c->x86_cache_size = -1;
 
-       get_cpu_vendor(c);
+       if ( c->x86_model >= 16 )
+               return NULL;    /* Range check */
 
-       if (c->x86_vendor == X86_VENDOR_UNKNOWN &&
-           c->cpuid_level < 0)
-               return;
+       for ( i = 0 ; i < sizeof(cpu_models)/sizeof(struct cpu_model_info) ; i++ ) {
+               if ( info->vendor == c->x86_vendor &&
+                       info->family == c->x86 ) {
+                       return info->model_names[c->x86_model];
+               }
+               info++;
+       }
+       return NULL;    /* Not found */
+}
 
-       /* It should be possible for the user to override this. */
-       if(c->cpuid_level > 0 && 
-          (c->x86_vendor == X86_VENDOR_INTEL || c->x86_vendor == X86_VENDOR_TRANSMETA) &&
-          c->x86_capability&(1<<18)) {
+
+static void __init squash_the_stupid_serial_number(struct cpuinfo_x86 *c)
+{
+       if (c->x86_capability&(X86_FEATURE_PN) && disable_x86_serial_nr) {
                /* Disable processor serial number */
                unsigned long lo,hi;
                rdmsr(0x119,lo,hi);
                lo |= 0x200000;
                wrmsr(0x119,lo,hi);
-               printk(KERN_INFO "CPU serial number disabled.\n");
-       }
-
-       mcheck_init();
-       
-       if (c->x86_vendor == X86_VENDOR_CYRIX) {
-               cyrix_model(c);
-               return;
+               printk(KERN_NOTICE "CPU serial number disabled.\n");
+               c->x86_capability &= ~X86_FEATURE_PN;
+               c->cpuid_level = cpuid_eax(0);
        }
+}
+int __init x86_serial_nr_setup(char *s)
+{
+       disable_x86_serial_nr = 0;
+       return 1;
+}
+__setup("serialnumber", x86_serial_nr_setup);
 
-       if (c->x86_vendor == X86_VENDOR_AMD && amd_model(c))
-               return;
-               
-       if (c->x86_vendor == X86_VENDOR_TRANSMETA) {
-               transmeta_model(c);
-               return;
-       }
-       
-       if(c->x86_vendor == X86_VENDOR_CENTAUR && c->x86==6)
-       {
-               /* The Cyrix III supports model naming and cache queries */
-               get_model_name(c);
-               display_cacheinfo(c);
-               return;
-       }
-
-       if (c->cpuid_level > 1) {
-               /* supports eax=2  call */
-               int regs[4];
-               int l1c=0, l1d=0, l2=0, l3=0;   /* Cache sizes */
-
-               cpuid(2, &regs[0], &regs[1], &regs[2], &regs[3]);
-
-               /* Least significant byte of eax says how many times
-                * to call cpuid with value 2 to get cache and TLB
-                * info.
-                */
-               if ((regs[0] & 0xFF) != 1 )
-                       printk(KERN_WARNING "Multiple cache reports are not supported yet\n");
-
-               c->x86_cache_size = 0;
-
-               for ( i = 0 ; i < 4 ; i++ ) {
-
-                       int j;
-
-                       if ( regs[i] < 0 )
-                               continue; /* no useful data */
-
-                       /* look at all the bytes returned */
-
-                       for ( j = ( i == 0 ? 8:0 ) ; j < 25 ; j+=8 ) {
-
-                               unsigned char rh = regs[i]>>j;
-                               unsigned char rl;
-
-                               rl = rh & 0x0F;
-                               rh >>=4;
-
-                               switch(rh) {
-
-                                       case 2:
-                                               if(rl) {
-                                                       printk("%dK L3 cache\n", (rl-1)*512);
-                                                       l3 += (rl-1)*512;
-                                               }
-                                               break;
-
-                                       case 4:
-                                       case 8:
-                                               if(rl) {
-                                                       printk("%dK L2 cache (%d way)\n",128<<(rl-1), rh);
-                                                       l2 += 128<<(rl-1);
-                                               }
-                                               break;
 
-                                       /*
-                                        *      L1 caches do not count for SMP switching weights,
-                                        *      they are shadowed by L2.
-                                        */
+__initfunc(void identify_cpu(struct cpuinfo_x86 *c))
+{
+       c->loops_per_jiffy = loops_per_jiffy;
+       c->x86_cache_size = -1;
 
-                                       case 6:
-                                               if(rh==6 && rl > 5) {
-                                                       printk("%dK L1 data cache\n", 8<<(rl - 6));
-                                                       l1d+=8<<(rl-6);
-                                               }
-                                               break;
+       get_cpu_vendor(c);
 
-                                       case 7:
-                                               printk("%dK L1 instruction cache\n",
-                                               rl?(16<<(rl-1)):12);
-                                               l1c+=rl?(16<<(rl-1)):12;
-                                               break;
-                               }                     
-                       }                       
-               }
+       switch (c->x86_vendor) {
+               case X86_VENDOR_UNKNOWN:
+               default:
+                       /* Not much we can do here... */
+                       /* Check if at least it has cpuid */
+                       if (c->cpuid_level == -1) {
+                               /* No cpuid. It must be an ancient CPU */
+                               if (c->x86 == 4)
+                                       strcpy(c->x86_model_id, "486");
+                               else if (c->x86 == 3)
+                                       strcpy(c->x86_model_id, "386");
+                       }
+                       break;
 
-               if(l1c && l1d)
-                       printk("CPU: L1 I Cache: %dK  L1 D Cache: %dK\n", l1c, l1d);
-               if(l2)
-                       printk("CPU: L2 Cache: %dK\n", l2);
-               if(l3)
-                       printk("CPU: L3 Cache: %dK\n", l3);
+               case X86_VENDOR_CYRIX:
+                       init_cyrix(c);
+                       return;
 
-               /*
-                *      Assuming L3 is shared. The L1 cache is shadowed by L2
-                *      so doesn't need to be included.
-                */
+               case X86_VENDOR_AMD:
+                       init_amd(c);
+                       return;
 
-               c->x86_cache_size += l2;
-       }
+               case X86_VENDOR_CENTAUR:
+                       init_centaur(c);
+                       return;
 
-       /*
-        *      Intel finally adopted the AMD/Cyrix extended id naming
-        *      stuff for the 'Pentium IV'
-        */
+               case X86_VENDOR_TRANSMETA:
+                       init_transmeta(c);
+                       return;
 
-       if(c->x86_vendor ==X86_VENDOR_INTEL && c->x86 == 15)
-       {
-               intel_model(c);
-               return;
-       }
+               case X86_VENDOR_RISE:
+                       init_rise(c);
+                       break;
 
-       for (i = 0; i < sizeof(cpu_models)/sizeof(struct cpu_model_info); i++) {
-               if (cpu_models[i].vendor == c->x86_vendor &&
-                   cpu_models[i].x86 == c->x86) {
-                       if (c->x86_model <= 16)
-                               p = cpu_models[i].model_names[c->x86_model];
-
-                       /* Names for the Pentium II Celeron processors
-                          detectable only by also checking the cache size */
-                       if ((cpu_models[i].vendor == X86_VENDOR_INTEL)
-                           && (cpu_models[i].x86 == 6)){ 
-                               if(c->x86_model == 6 && c->x86_cache_size == 128) {
-                                       p = "Celeron (Mendocino)"; 
-                               } else { 
-                                       if (c->x86_model == 5 && c->x86_cache_size == 0) {
-                                               p = "Celeron (Covington)";
-                                       }
-                               }
-                       }
-               }
+               case X86_VENDOR_INTEL:
+                       init_intel(c);
+                       break;
        }
+       
+       squash_the_stupid_serial_number(c);
 
-       if (p) {
-               strcpy(c->x86_model_id, p);
-               return;
+       mcheck_init(c);
+       
+       /* If the model name is still unset, do table lookup. */
+       if ( !c->x86_model_id[0] ) {
+               char *p;
+               p = table_lookup_model(c);
+               if ( p )
+                       strcpy(c->x86_model_id, p);
+               else
+                       /* Last resort... */
+                       sprintf(c->x86_model_id, "%02x/%02x",
+                               c->x86_vendor, c->x86_model);
        }
-
-       sprintf(c->x86_model_id, "%02x/%02x", c->x86_vendor, c->x86_model);
 }
 
 /*
  *     Perform early boot up checks for a valid TSC. See arch/i386/kernel/time.c
  */
  
-__initfunc(void dodgy_tsc(void))
+void __init dodgy_tsc(void)
 {
        get_cpu_vendor(&boot_cpu_data);
        
@@ -1232,61 +1397,15 @@ __initfunc(void dodgy_tsc(void))
        {
                return;
        }
-       cyrix_model(&boot_cpu_data);
+       init_cyrix(&boot_cpu_data);
 }
        
-       
 
 static char *cpu_vendor_names[] __initdata = {
        "Intel", "Cyrix", "AMD", "UMC", "NexGen", "Centaur", "Rise", "Transmeta" };
 
 
-__initfunc(void setup_centaur(struct cpuinfo_x86 *c))
-{
-       u32 hv,lv;
-       
-       /* Centaur C6 Series */
-       if(c->x86==5)
-       {
-               rdmsr(0x107, lv, hv);
-               printk("Centaur FSR was 0x%X ",lv);
-               lv|=(1<<1 | 1<<2 | 1<<7);
-               /* lv|=(1<<6);  - may help too if the board can cope */
-               printk("now 0x%X\n", lv);
-               wrmsr(0x107, lv, hv);
-               /* Emulate MTRRs using Centaur's MCR. */
-               c->x86_capability |= X86_FEATURE_MTRR;
-
-               /* Disable TSC on C6 as per errata. */
-               if (c->x86_model ==4) {
-                       printk ("Disabling bugged TSC.\n");
-                       c->x86_capability &= ~X86_FEATURE_TSC;
-               }
-
-               /* Set 3DNow! on Winchip 2 and above. */
-               if (c->x86_model >=8)
-                   c->x86_capability |= X86_FEATURE_AMD3D;
-
-               c->x86_capability |=X86_FEATURE_CX8;
-       }
-       /* Cyrix III 'Samuel' CPU */
-       if(c->x86 == 6 && c->x86_model == 6)
-       {
-               rdmsr(0x1107, lv, hv);
-               lv|=(1<<1);     /* Report CX8 */
-               lv|=(1<<7);     /* PGE enable */
-               wrmsr(0x1107, lv, hv);
-               /* Cyrix III */
-               c->x86_capability |= X86_FEATURE_CX8;
-               
-               /* Check for 3dnow */
-               cpuid(0x80000001, &lv, &lv, &lv, &hv);
-               if(hv&(1<<31))
-                       c->x86_capability |= X86_FEATURE_AMD3D;
-       }       
-}
-
-__initfunc(void print_cpu_info(struct cpuinfo_x86 *c))
+void __init print_cpu_info(struct cpuinfo_x86 *c)
 {
        char *vendor = NULL;
 
@@ -1307,12 +1426,9 @@ __initfunc(void print_cpu_info(struct cpuinfo_x86 *c))
                printk(" stepping %02x\n", c->x86_mask);
        else
                printk("\n");
-
-       if(c->x86_vendor == X86_VENDOR_CENTAUR) {
-               setup_centaur(c);
-       }
 }
 
+
 /*
  *     Get CPU information for use by the procfs.
  */
@@ -1322,10 +1438,10 @@ int get_cpuinfo(char * buffer)
        char *p = buffer;
        int sep_bug;
        static char *x86_cap_flags[] = {
-               "fpu", "vme", "de", "pse", "tsc", "msr", "pae", "mce",
-               "cx8", "apic", "10", "sep", "mtrr", "pge", "mca", "cmov",
-               "16", "pse36", "psn", "19", "20", "21", "22", "mmx",
-               "24", "xmm", "26", "27", "28", "29", "30", "31"
+               "fpu", "vme", "de", "pse", "tsc", "msr", "pae", "mce",
+               "cx8", "apic", "10", "sep", "mtrr", "pge", "mca", "cmov",
+               "pat", "pse36", "pn", "clflush", "20", "dts", "acpi", "mmx",
+               "fxsr", "sse", "sse2", "ss", "28", "tm", "ia64", "31"
        };
        struct cpuinfo_x86 *c = cpu_data;
        int i, n;
index 9de0d67c0dcc1aacd976f78c6511149085b77b00..75a63c90bb2bedec2419def34f66c9f3a22dbc85 100644 (file)
@@ -185,33 +185,8 @@ extern unsigned long free_area_init(unsigned long, unsigned long);
 extern char _text, _etext, _edata, __bss_start, _end;
 extern char __init_begin, __init_end;
 
-#define X86_CR4_VME            0x0001          /* enable vm86 extensions */
-#define X86_CR4_PVI            0x0002          /* virtual interrupts flag enable */
-#define X86_CR4_TSD            0x0004          /* disable time stamp at ipl 3 */
-#define X86_CR4_DE             0x0008          /* enable debugging extensions */
-#define X86_CR4_PSE            0x0010          /* enable page size extensions */
-#define X86_CR4_PAE            0x0020          /* enable physical address extensions */
-#define X86_CR4_MCE            0x0040          /* Machine check enable */
-#define X86_CR4_PGE            0x0080          /* enable global pages */
-#define X86_CR4_PCE            0x0100          /* enable performance counters at ipl 3 */
-
-/*
- * Save the cr4 feature set we're using (ie
- * Pentium 4MB enable and PPro Global page
- * enable), so that any CPU's that boot up
- * after us can get the correct flags.
- */
 unsigned long mmu_cr4_features __initdata = 0;
 
-static inline void set_in_cr4(unsigned long mask)
-{
-       mmu_cr4_features |= mask;
-       __asm__("movl %%cr4,%%eax\n\t"
-               "orl %0,%%eax\n\t"
-               "movl %%eax,%%cr4\n"
-               : : "irg" (mask)
-               :"ax");
-}
 
 /*
  * allocate page table(s) for compile-time fixed mappings
index fc4ab9699a4add88cfa60e96c09444072609f2ca..4c77dacf6b4cbd92e98f30a9f9f860191f42f4f6 100644 (file)
@@ -1169,7 +1169,8 @@ inline void sx_check_modem_signals (struct sx_port *port)
                                /* DCD went UP */
                                if( (~(port->gs.flags & ASYNC_NORMAL_ACTIVE) || 
                                                 ~(port->gs.flags & ASYNC_CALLOUT_ACTIVE)) &&
-                                               (sx_read_channel_byte(port, hi_hstat) != HS_IDLE_CLOSED)) {
+                                               (sx_read_channel_byte(port, hi_hstat) != HS_IDLE_CLOSED) &&
+                                               !(port->gs.tty->termios->c_cflag & CLOCAL) ) {
                                        /* Are we blocking in open?*/
                                        sx_dprintk (SX_DEBUG_MODEMSIGNALS, "DCD active, unblocking open\n");
                                        wake_up_interruptible(&port->gs.open_wait);
@@ -1179,7 +1180,8 @@ inline void sx_check_modem_signals (struct sx_port *port)
                        } else {
                                /* DCD went down! */
                                if (!((port->gs.flags & ASYNC_CALLOUT_ACTIVE) &&
-                                     (port->gs.flags & ASYNC_CALLOUT_NOHUP))) {
+                                     (port->gs.flags & ASYNC_CALLOUT_NOHUP)) &&
+                                   !(port->gs.tty->termios->c_cflag & CLOCAL) ) {
                                        sx_dprintk (SX_DEBUG_MODEMSIGNALS, "DCD dropped. hanging up....\n");
                                        tty_hangup (port->gs.tty);
                                } else {
index c72a8b1d4c790d1be10372a7f80b9178e7dd5aa3..b47ac899c89d589fc3dc783b6c2f6593218ea8cb 100644 (file)
@@ -16,9 +16,7 @@ bool '  Support audio via ISDN' CONFIG_ISDN_AUDIO
 if [ "$CONFIG_ISDN_AUDIO" != "n" ]; then
    bool '    Support AT-Fax Class 1 and 2 commands' CONFIG_ISDN_TTY_FAX
 fi
-
-#  CONFIG_X25 is defined only when CONFIG_EXPERIMENTAL=y
-if [ "$CONFIG_EXPERIMENTAL" = "y" -a "$CONFIG_X25" != "n" ]; then
+if [ "$CONFIG_X25" != "n" ]; then
    bool '  X.25 PLP on top of ISDN' CONFIG_ISDN_X25
 fi
 
@@ -71,8 +69,8 @@ if [ "$CONFIG_ISDN_DRV_HISAX" != "n" ]; then
    bool '  Gazel cards' CONFIG_HISAX_GAZEL
    bool '  HFC PCI-Bus cards' CONFIG_HISAX_HFC_PCI
    bool '  Winbond W6692 based cards' CONFIG_HISAX_W6692
-   bool '  HFC-S+, HFC-SP, HFC-PCMCIA cards' CONFIG_HISAX_HFC_SX
    if [ "$CONFIG_EXPERIMENTAL" != "n" ]; then
+      bool '  HFC-S+, HFC-SP, HFC-PCMCIA cards' CONFIG_HISAX_HFC_SX
 #      bool '  TESTEMULATOR (EXPERIMENTAL)' CONFIG_HISAX_TESTEMU
       if [ "$ARCH" = "sparc" -o "$ARCH" = "sparc64" ]; then
         bool '  Am7930' CONFIG_HISAX_AMD7930
@@ -130,7 +128,7 @@ if [ "$CONFIG_ISDN_CAPI" != "n" ]; then
    dep_tristate '  AVM B1 PCI support' CONFIG_ISDN_DRV_AVMB1_B1PCI $CONFIG_ISDN_CAPI $CONFIG_PCI
    dep_mbool    '    AVM B1 PCI V4 support' CONFIG_ISDN_DRV_AVMB1_B1PCIV4 $CONFIG_ISDN_DRV_AVMB1_B1PCI
    dep_tristate '  AVM T1/T1-B ISA support' CONFIG_ISDN_DRV_AVMB1_T1ISA $CONFIG_ISDN_CAPI
-   dep_tristate '  AVM B1/M1/M2 PCMCIA support' CONFIG_ISDN_DRV_AVMB1_B1PCMCIA $CONFIG_ISDN_CAPI $CONFIG_PCMCIA
+   dep_tristate '  AVM B1/M1/M2 PCMCIA support' CONFIG_ISDN_DRV_AVMB1_B1PCMCIA $CONFIG_ISDN_CAPI
    dep_tristate '  AVM T1/T1-B PCI support' CONFIG_ISDN_DRV_AVMB1_T1PCI $CONFIG_ISDN_CAPI $CONFIG_PCI
    dep_tristate '  AVM C4/C2 support' CONFIG_ISDN_DRV_AVMB1_C4 $CONFIG_ISDN_CAPI $CONFIG_PCI
 fi
index adffe94b188894405b18a4eedb0b7613d34db17e..23f3991a60e1723c0b3d20324c850f6d5b25dc4b 100644 (file)
@@ -1,36 +1,20 @@
-/* $Id: act2000.h,v 1.8.6.2 2001/02/16 16:43:23 kai Exp $
+/* $Id: act2000.h,v 1.1.2.1 2001/12/31 13:26:35 kai Exp $
  *
  * ISDN lowlevel-module for the IBM ISDN-S0 Active 2000.
  *
- * Copyright 1998 by Fritz Elfert (fritz@isdn4linux.de)
- * Thanks to Friedemann Baitinger and IBM 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, or (at your option)
- * any later version.
+ * Author       Fritz Elfert
+ * Copyright    by Fritz Elfert      <fritz@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- * 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. 
+ * Thanks to Friedemann Baitinger and IBM Germany
  *
  */
 
 #ifndef act2000_h
 #define act2000_h
 
-#ifdef __KERNEL__
-/* Kernel includes */
-
-#include <linux/module.h>
-#include <linux/version.h>
-#endif
-
 #define ACT2000_IOCTL_SETPORT    1
 #define ACT2000_IOCTL_GETPORT    2
 #define ACT2000_IOCTL_SETIRQ     3
index 216269dcae72055f3b77df69d4d4849d528b10e2..484a3c4a14d3cf1bf0f35be78bb551133843eab6 100644 (file)
@@ -1,23 +1,14 @@
-/* $Id: act2000_isa.c,v 1.11 2000/11/12 16:32:06 kai Exp $
+/* $Id: act2000_isa.c,v 1.1.2.1 2001/12/31 13:26:37 kai Exp $
  *
  * ISDN lowlevel-module for the IBM ISDN-S0 Active 2000 (ISA-Version).
  *
- * Copyright 1998 by Fritz Elfert (fritz@isdn4linux.de)
- * Thanks to Friedemann Baitinger and IBM 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, or (at your option)
- * any later version.
+ * Author       Fritz Elfert
+ * Copyright    by Fritz Elfert      <fritz@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- * 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. 
+ * Thanks to Friedemann Baitinger and IBM Germany
  *
  */
 
index 0b705d33fe59f0b1e44a49a93694a7058e550d60..e4aad7804b57467d24c9084193277acb333994c4 100644 (file)
@@ -1,23 +1,14 @@
-/* $Id: act2000_isa.h,v 1.4 2000/11/12 16:32:06 kai Exp $
+/* $Id: act2000_isa.h,v 1.1.2.1 2001/12/31 13:26:38 kai Exp $
  *
  * ISDN lowlevel-module for the IBM ISDN-S0 Active 2000 (ISA-Version).
  *
- * Copyright 1998 by Fritz Elfert (fritz@isdn4linux.de)
- * Thanks to Friedemann Baitinger and IBM 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, or (at your option)
- * any later version.
+ * Author       Fritz Elfert
+ * Copyright    by Fritz Elfert      <fritz@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- * 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. 
+ * Thanks to Friedemann Baitinger and IBM Germany
  *
  */
 
index ee126cb2cc5e34e7466002b1617f8bb06591c51a..c49175955c2243d799e82f41464bc87c782c23b0 100644 (file)
@@ -1,24 +1,15 @@
-/* $Id: capi.c,v 1.9.6.1 2001/02/16 16:43:23 kai Exp $
+/* $Id: capi.c,v 1.1.2.1 2001/12/31 13:26:38 kai Exp $
  *
  * ISDN lowlevel-module for the IBM ISDN-S0 Active 2000.
- *        CAPI encoder/decoder
+ * CAPI encoder/decoder
  *
- * Copyright 1998 by Fritz Elfert (fritz@isdn4linux.de)
- * Thanks to Friedemann Baitinger and IBM 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, or (at your option)
- * any later version.
+ * Author       Fritz Elfert
+ * Copyright    by Fritz Elfert      <fritz@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- * 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. 
+ * Thanks to Friedemann Baitinger and IBM Germany
  *
  */
 
index fb64fa877c9f11c90a78fb564d7806b4b9808158..f228c14aa086a4f1d9a26cead317bfebd8642944 100644 (file)
@@ -1,23 +1,14 @@
-/* $Id: capi.h,v 1.6.6.1 2001/02/16 16:43:23 kai Exp $
+/* $Id: capi.h,v 1.1.2.1 2001/12/31 13:26:38 kai Exp $
  *
  * ISDN lowlevel-module for the IBM ISDN-S0 Active 2000.
  *
- * Copyright 1998 by Fritz Elfert (fritz@isdn4linux.de)
- * Thanks to Friedemann Baitinger and IBM 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, or (at your option)
- * any later version.
+ * Author       Fritz Elfert
+ * Copyright    by Fritz Elfert      <fritz@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- * 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. 
+ * Thanks to Friedemann Baitinger and IBM Germany
  *
  */
 
index 5d634f991e5c7001432697c4810fee96f946f4c1..a55178e9563fe159e9b4a04472feb15a4e8a2c06 100644 (file)
@@ -1,29 +1,21 @@
-/* $Id: module.c,v 1.14.6.2 2000/12/18 22:14:10 kai Exp $
+/* $Id: module.c,v 1.1.2.1 2001/12/31 13:26:38 kai Exp $
  *
  * ISDN lowlevel-module for the IBM ISDN-S0 Active 2000.
  *
- * Copyright 1998 by Fritz Elfert (fritz@isdn4linux.de)
- * Thanks to Friedemann Baitinger and IBM 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, or (at your option)
- * any later version.
+ * Author       Fritz Elfert
+ * Copyright    by Fritz Elfert      <fritz@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- * 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. 
+ * Thanks to Friedemann Baitinger and IBM Germany
  *
  */
 
 #include "act2000.h"
 #include "act2000_isa.h"
 #include "capi.h"
+#include <linux/module.h>
 #include <linux/init.h>
 
 static unsigned short act2000_isa_ports[] =
@@ -41,9 +33,9 @@ static int   act_port = -1;  /* -1 = Autoprobe  */
 static int   act_irq  = -1;  /* -1 = Autoselect */
 static char *act_id   = "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0";
 
-MODULE_DESCRIPTION(       "Driver for IBM Active 2000 ISDN card");
+MODULE_DESCRIPTION(       "ISDN4Linux: Driver for IBM Active 2000 ISDN card");
 MODULE_AUTHOR(            "Fritz Elfert");
-MODULE_SUPPORTED_DEVICE(  "ISDN subsystem");
+MODULE_LICENSE(           "GPL");
 MODULE_PARM_DESC(act_bus, "BusType of first card, 1=ISA, 2=MCA, 3=PCMCIA, currently only ISA");
 MODULE_PARM_DESC(membase, "Base port address of first card");
 MODULE_PARM_DESC(act_irq, "IRQ of first card (-1 = grab next free IRQ)");
index 285059036a2f56fcccf56b1b526477c9f8642a8d..aff19782c46d561f17a4de56a7cf964a5a745be0 100644 (file)
@@ -24,7 +24,6 @@ obj-$(CONFIG_ISDN_CAPI_CAPIFS)                += capifs.o
 obj-$(CONFIG_ISDN_DRV_AVMB1_B1ISA)     += b1isa.o b1.o
 obj-$(CONFIG_ISDN_DRV_AVMB1_B1PCI)     += b1pci.o b1.o b1dma.o
 obj-$(CONFIG_ISDN_DRV_AVMB1_B1PCMCIA)  += b1pcmcia.o b1.o
-obj-$(CONFIG_ISDN_DRV_AVMB1_AVM_CS)    += avm_cs.o
 obj-$(CONFIG_ISDN_DRV_AVMB1_T1ISA)     += t1isa.o b1.o
 obj-$(CONFIG_ISDN_DRV_AVMB1_T1PCI)     += t1pci.o b1.o b1dma.o
 obj-$(CONFIG_ISDN_DRV_AVMB1_C4)                += c4.o b1.o
index 73c45cb93e3f84c98c62ea1f599992916d942750..05ac534e43daf501958e5002282aa4316c713e49 100644 (file)
@@ -1,7 +1,9 @@
-/*
- * $Id: avmcard.h,v 1.8.6.3 2001/05/17 21:15:33 kai Exp $
+/* $Id: avmcard.h,v 1.1.2.1 2001/12/31 13:26:39 kai Exp $
+ *
+ * Copyright 1999 by Carsten Paeth <calle@calle.de>
  *
- * Copyright 1999 by Carsten Paeth (calle@calle.in-berlin.de)
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index eb9a15cefc144c97c7fe9ac67fba3a738a9f76e2..17a22949a1bcaf0842f6fae8caebb222a0580580 100644 (file)
@@ -1,9 +1,11 @@
-/*
- * $Id: b1.c,v 1.20.6.6 2001/05/17 21:15:33 kai Exp $
+/* $Id: b1.c,v 1.1.2.1 2001/12/31 13:26:39 kai Exp $
  * 
  * Common module for AVM B1 cards.
  * 
- * (c) Copyright 1999 by Carsten Paeth (calle@calle.in-berlin.de)
+ * Copyright 1999 by Carsten Paeth <calle@calle.de>
+ *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
 #include "capicmd.h"
 #include "capiutil.h"
 
-static char *revision = "$Revision: 1.20.6.6 $";
+static char *revision = "$Revision: 1.1.2.1 $";
 
 /* ------------------------------------------------------------- */
 
-MODULE_AUTHOR("Carsten Paeth <calle@calle.in-berlin.de>");
+MODULE_DESCRIPTION("CAPI4Linux: Common support for active AVM cards");
+MODULE_AUTHOR("Carsten Paeth");
+MODULE_LICENSE("GPL");
 
 /* ------------------------------------------------------------- */
 
index 4bc5eacac0b5272c319728bd3f159cec644aeec8..b0fe39bccac418aff3bd255fdc96d3d631e7cb36 100644 (file)
@@ -1,10 +1,12 @@
-/*
- * $Id: b1dma.c,v 1.11.6.7 2001/07/18 16:02:15 kai Exp $
+/* $Id: b1dma.c,v 1.1.2.1 2001/12/31 13:26:39 kai Exp $
  * 
  * Common module for AVM B1 cards that support dma with AMCC
  * 
- * (c) Copyright 2000 by Carsten Paeth (calle@calle.in-berlin.de)
+ * Copyright 2000 by Carsten Paeth <calle@calle.de>
  * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
  */
 
 #include <linux/config.h>
 #error FIXME: driver requires 32-bit platform
 #endif
 
-static char *revision = "$Revision: 1.11.6.7 $";
+static char *revision = "$Revision: 1.1.2.1 $";
 
 /* ------------------------------------------------------------- */
 
-MODULE_AUTHOR("Carsten Paeth <calle@calle.in-berlin.de>");
+MODULE_DESCRIPTION("CAPI4Linux: DMA support for active AVM cards");
+MODULE_AUTHOR("Carsten Paeth");
+MODULE_LICENSE("GPL");
 
 static int suppress_pollack = 0;
 MODULE_PARM(suppress_pollack, "0-1i");
index 0f8b5133e847abc0fe4a906746594a684edf31c9..4c3bd5e588eb06bc0bdc9eb68d7d9367fb01c113 100644 (file)
@@ -1,10 +1,12 @@
-/*
- * $Id: b1isa.c,v 1.10.6.5 2001/05/17 20:41:51 kai Exp $
+/* $Id: b1isa.c,v 1.1.2.1 2001/12/31 13:26:39 kai Exp $
  * 
  * Module for AVM B1 ISA-card.
  * 
- * (c) Copyright 1999 by Carsten Paeth (calle@calle.in-berlin.de)
+ * Copyright 1999 by Carsten Paeth <calle@calle.de>
  * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
  */
 
 #include <linux/module.h>
 #include "capilli.h"
 #include "avmcard.h"
 
-static char *revision = "$Revision: 1.10.6.5 $";
+static char *revision = "$Revision: 1.1.2.1 $";
 
 /* ------------------------------------------------------------- */
 
-MODULE_AUTHOR("Carsten Paeth <calle@calle.in-berlin.de>");
+MODULE_DESCRIPTION("CAPI4Linux: Driver for AVM B1 ISA card");
+MODULE_AUTHOR("Carsten Paeth");
+MODULE_LICENSE("GPL");
 
 /* ------------------------------------------------------------- */
 
index 17c3a1d9bc44ebd58648b04d06d1c893765ad0ef..31ee8ee0fb4839d729d52650dc523b88d01ada9f 100644 (file)
@@ -1,10 +1,12 @@
-/*
- * $Id: b1pci.c,v 1.29.6.4 2001/05/17 20:41:51 kai Exp $
+/* $Id: b1pci.c,v 1.1.2.1 2001/12/31 13:26:39 kai Exp $
  * 
  * Module for AVM B1 PCI-card.
  * 
- * (c) Copyright 1999 by Carsten Paeth (calle@calle.in-berlin.de)
+ * Copyright 1999 by Carsten Paeth <calle@calle.de>
  * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
  */
 
 #include <linux/config.h>
 #include "capilli.h"
 #include "avmcard.h"
 
-static char *revision = "$Revision: 1.29.6.4 $";
+static char *revision = "$Revision: 1.1.2.1 $";
 
 /* ------------------------------------------------------------- */
 
-MODULE_AUTHOR("Carsten Paeth <calle@calle.in-berlin.de>");
+MODULE_DESCRIPTION("CAPI4Linux: Driver for AVM B1 PCI card");
+MODULE_AUTHOR("Carsten Paeth");
+MODULE_LICENSE("GPL");
 
 /* ------------------------------------------------------------- */
 
index 8ae9053075c82f7ec1f59b1b48889d60883ae032..99191cced52f262e22be30bf45461332d4068a5b 100644 (file)
@@ -1,10 +1,12 @@
-/*
- * $Id: b1pcmcia.c,v 1.12.6.4 2001/05/17 20:41:51 kai Exp $
+/* $Id: b1pcmcia.c,v 1.1.2.1 2001/12/31 13:26:39 kai Exp $
  * 
  * Module for AVM B1/M1/M2 PCMCIA-card.
  * 
- * (c) Copyright 1999 by Carsten Paeth (calle@calle.in-berlin.de)
+ * Copyright 1999 by Carsten Paeth <calle@calle.de>
  * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
  */
 
 #include <linux/module.h>
 #include "capilli.h"
 #include "avmcard.h"
 
-static char *revision = "$Revision: 1.12.6.4 $";
+static char *revision = "$Revision: 1.1.2.1 $";
 
 /* ------------------------------------------------------------- */
 
-MODULE_AUTHOR("Carsten Paeth <calle@calle.in-berlin.de>");
+MODULE_DESCRIPTION("CAPI4Linux: Driver for AVM PCMCIA cards");
+MODULE_AUTHOR("Carsten Paeth");
+MODULE_LICENSE("GPL");
 
 /* ------------------------------------------------------------- */
 
index efbc6934ab4a19b2a75adf0058fd80c084e2db20..f3f07e8c6ad354ddbb621893635ea4308df878e8 100644 (file)
@@ -1,9 +1,11 @@
-/*
- * $Id: c4.c,v 1.20.6.10 2001/06/09 15:14:15 kai Exp $
+/* $Id: c4.c,v 1.1.2.1 2001/12/31 13:26:39 kai Exp $
  * 
  * Module for AVM C4 & C2 card.
  * 
- * (c) Copyright 1999 by Carsten Paeth (calle@calle.in-berlin.de)
+ * Copyright 1999 by Carsten Paeth <calle@calle.de>
+ *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
@@ -28,7 +30,7 @@
 #include "capilli.h"
 #include "avmcard.h"
 
-static char *revision = "$Revision: 1.20.6.10 $";
+static char *revision = "$Revision: 1.1.2.1 $";
 
 #undef CONFIG_C4_DEBUG
 #undef CONFIG_C4_POLLDEBUG
@@ -37,7 +39,9 @@ static char *revision = "$Revision: 1.20.6.10 $";
 
 static int suppress_pollack;
 
-MODULE_AUTHOR("Carsten Paeth <calle@calle.in-berlin.de>");
+MODULE_DESCRIPTION("CAPI4Linux: Driver for AVM C2/C4 cards");
+MODULE_AUTHOR("Carsten Paeth");
+MODULE_LICENSE("GPL");
 MODULE_PARM(suppress_pollack, "0-1i");
 
 /* ------------------------------------------------------------- */
@@ -1362,7 +1366,7 @@ static int __init c4_init(void)
                MOD_DEC_USE_COUNT;
                return retval;
        }
-       retval = search_cards(&c2_driver, 0x1100, 2);
+       retval = search_cards(&c2_driver, PCI_DEVICE_ID_AVM_C2, 2);
        if (retval && ncards == 0) {
                detach_capi_driver(&c2_driver);
                detach_capi_driver(&c4_driver);
index f986735dbf746032893c05c410b9544d1ee74b25..863e1d34ef11590251e428e443a827d002ac97b4 100644 (file)
@@ -1,9 +1,11 @@
-/*
- * $Id: capi.c,v 1.44.6.12 2001/06/09 15:14:15 kai Exp $
+/* $Id: capi.c,v 1.1.2.1 2001/12/31 13:26:39 kai Exp $
  *
  * CAPI 2.0 Interface for Linux
  *
- * Copyright 1996 by Carsten Paeth (calle@calle.in-berlin.de)
+ * Copyright 1996 by Carsten Paeth <calle@calle.de>
+ *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
 #include "capifs.h"
 #endif
 
-static char *revision = "$Revision: 1.44.6.12 $";
+static char *revision = "$Revision: 1.1.2.1 $";
 
-MODULE_AUTHOR("Carsten Paeth (calle@calle.in-berlin.de)");
+MODULE_DESCRIPTION("CAPI4Linux: Userspace /dev/capi20 interface");
+MODULE_AUTHOR("Carsten Paeth");
+MODULE_LICENSE("GPL");
 
 #undef _DEBUG_REFCOUNT         /* alloc/free and open/close debug */
 #undef _DEBUG_TTYFUNCS         /* call to tty_driver */
@@ -83,10 +87,10 @@ struct capiminor {
        struct capincci  *nccip;
        unsigned int      minor;
 
-       __u16            applid;
-       __u32            ncci;
-       __u16            datahandle;
-       __u16            msgid;
+       u16              applid;
+       u32              ncci;
+       u16              datahandle;
+       u16              msgid;
 
        struct file      *file;
        struct tty_struct *tty;
@@ -108,7 +112,7 @@ struct capiminor {
        /* transmit path */
        struct datahandle_queue {
                    struct datahandle_queue *next;
-                   __u16                    datahandle;
+                   u16                      datahandle;
        } *ackqueue;
        int nack;
 
@@ -117,7 +121,7 @@ struct capiminor {
 
 struct capincci {
        struct capincci *next;
-       __u32            ncci;
+       u32              ncci;
        struct capidev  *cdev;
 #ifdef CONFIG_ISDN_CAPI_MIDDLEWARE
        struct capiminor *minorp;
@@ -127,8 +131,8 @@ struct capincci {
 struct capidev {
        struct capidev *next;
        struct file    *file;
-       __u16           applid;
-       __u16           errcode;
+       u16             applid;
+       u16             errcode;
        unsigned int    minor;
        unsigned        userflags;
 
@@ -156,7 +160,7 @@ static struct capiminor *minors = 0;
 #ifdef CONFIG_ISDN_CAPI_MIDDLEWARE
 /* -------- datahandles --------------------------------------------- */
 
-int capincci_add_ack(struct capiminor *mp, __u16 datahandle)
+static int capincci_add_ack(struct capiminor *mp, u16 datahandle)
 {
        struct datahandle_queue *n, **pp;
 
@@ -174,7 +178,7 @@ int capincci_add_ack(struct capiminor *mp, __u16 datahandle)
        return 0;
 }
 
-int capiminor_del_ack(struct capiminor *mp, __u16 datahandle)
+static int capiminor_del_ack(struct capiminor *mp, u16 datahandle)
 {
        struct datahandle_queue **pp, *p;
 
@@ -190,7 +194,7 @@ int capiminor_del_ack(struct capiminor *mp, __u16 datahandle)
        return -1;
 }
 
-void capiminor_del_all_ack(struct capiminor *mp)
+static void capiminor_del_all_ack(struct capiminor *mp)
 {
        struct datahandle_queue **pp, *p;
 
@@ -206,7 +210,7 @@ void capiminor_del_all_ack(struct capiminor *mp)
 
 /* -------- struct capiminor ---------------------------------------- */
 
-struct capiminor *capiminor_alloc(__u16 applid, __u32 ncci)
+static struct capiminor *capiminor_alloc(u16 applid, u32 ncci)
 {
        struct capiminor *mp, **pp;
         unsigned int minor = 0;
@@ -247,7 +251,7 @@ struct capiminor *capiminor_alloc(__u16 applid, __u32 ncci)
        return mp;
 }
 
-void capiminor_free(struct capiminor *mp)
+static void capiminor_free(struct capiminor *mp)
 {
        struct capiminor **pp;
 
@@ -273,7 +277,7 @@ void capiminor_free(struct capiminor *mp)
        }
 }
 
-struct capiminor *capiminor_find(unsigned int minor)
+static struct capiminor *capiminor_find(unsigned int minor)
 {
        struct capiminor *p;
        for (p = minors; p && p->minor != minor; p = p->next)
@@ -284,7 +288,7 @@ struct capiminor *capiminor_find(unsigned int minor)
 
 /* -------- struct capincci ----------------------------------------- */
 
-static struct capincci *capincci_alloc(struct capidev *cdev, __u32 ncci)
+static struct capincci *capincci_alloc(struct capidev *cdev, u32 ncci)
 {
        struct capincci *np, **pp;
 #ifdef CONFIG_ISDN_CAPI_MIDDLEWARE
@@ -321,7 +325,7 @@ static struct capincci *capincci_alloc(struct capidev *cdev, __u32 ncci)
         return np;
 }
 
-static void capincci_free(struct capidev *cdev, __u32 ncci)
+static void capincci_free(struct capidev *cdev, u32 ncci)
 {
        struct capincci *np, **pp;
 #ifdef CONFIG_ISDN_CAPI_MIDDLEWARE
@@ -365,7 +369,7 @@ static void capincci_free(struct capidev *cdev, __u32 ncci)
        }
 }
 
-struct capincci *capincci_find(struct capidev *cdev, __u32 ncci)
+static struct capincci *capincci_find(struct capidev *cdev, u32 ncci)
 {
        struct capincci *p;
 
@@ -416,7 +420,7 @@ static void capidev_free(struct capidev *cdev)
        kfree(cdev);
 }
 
-static struct capidev *capidev_find(__u16 applid)
+static struct capidev *capidev_find(u16 applid)
 {
        struct capidev *p;
        for (p=capidev_openlist; p; p = p->next) {
@@ -429,13 +433,13 @@ static struct capidev *capidev_find(__u16 applid)
 #ifdef CONFIG_ISDN_CAPI_MIDDLEWARE
 /* -------- handle data queue --------------------------------------- */
 
-struct sk_buff *
+static struct sk_buff *
 gen_data_b3_resp_for(struct capiminor *mp, struct sk_buff *skb)
 {
        struct sk_buff *nskb;
        nskb = alloc_skb(CAPI_DATA_B3_RESP_LEN, GFP_ATOMIC);
        if (nskb) {
-               __u16 datahandle = CAPIMSG_U16(skb->data,CAPIMSG_BASELEN+4+4+2);
+               u16 datahandle = CAPIMSG_U16(skb->data,CAPIMSG_BASELEN+4+4+2);
                unsigned char *s = skb_put(nskb, CAPI_DATA_B3_RESP_LEN);
                capimsg_setu16(s, 0, CAPI_DATA_B3_RESP_LEN);
                capimsg_setu16(s, 2, mp->applid);
@@ -448,11 +452,11 @@ gen_data_b3_resp_for(struct capiminor *mp, struct sk_buff *skb)
        return nskb;
 }
 
-int handle_recv_skb(struct capiminor *mp, struct sk_buff *skb)
+static int handle_recv_skb(struct capiminor *mp, struct sk_buff *skb)
 {
        struct sk_buff *nskb;
        unsigned int datalen;
-       __u16 errcode, datahandle;
+       u16 errcode, datahandle;
 
        datalen = skb->len - CAPIMSG_LEN(skb->data);
        if (mp->tty) {
@@ -528,7 +532,7 @@ int handle_recv_skb(struct capiminor *mp, struct sk_buff *skb)
        return -1;
 }
 
-void handle_minor_recv(struct capiminor *mp)
+static void handle_minor_recv(struct capiminor *mp)
 {
        struct sk_buff *skb;
        while ((skb = skb_dequeue(&mp->inqueue)) != 0) {
@@ -542,13 +546,13 @@ void handle_minor_recv(struct capiminor *mp)
        }
 }
 
-int handle_minor_send(struct capiminor *mp)
+static int handle_minor_send(struct capiminor *mp)
 {
        struct sk_buff *skb;
-       __u16 len;
+       u16 len;
        int count = 0;
-       __u16 errcode;
-       __u16 datahandle;
+       u16 errcode;
+       u16 datahandle;
 
        if (mp->tty && mp->ttyoutstop) {
 #if defined(_DEBUG_DATAFLOW) || defined(_DEBUG_TTYFUNCS)
@@ -559,7 +563,7 @@ int handle_minor_send(struct capiminor *mp)
 
        while ((skb = skb_dequeue(&mp->outqueue)) != 0) {
                datahandle = mp->datahandle;
-               len = (__u16)skb->len;
+               len = (u16)skb->len;
                skb_push(skb, CAPI_DATA_B3_REQ_LEN);
                memset(skb->data, 0, CAPI_DATA_B3_REQ_LEN);
                capimsg_setu16(skb->data, 0, CAPI_DATA_B3_REQ_LEN);
@@ -568,7 +572,7 @@ int handle_minor_send(struct capiminor *mp)
                capimsg_setu8 (skb->data, 5, CAPI_REQ);
                capimsg_setu16(skb->data, 6, mp->msgid++);
                capimsg_setu32(skb->data, 8, mp->ncci); /* NCCI */
-               capimsg_setu32(skb->data, 12, (__u32) skb->data); /* Data32 */
+               capimsg_setu32(skb->data, 12, (u32) skb->data); /* Data32 */
                capimsg_setu16(skb->data, 16, len);     /* Data length */
                capimsg_setu16(skb->data, 18, datahandle);
                capimsg_setu16(skb->data, 20, 0);       /* Flags */
@@ -610,16 +614,16 @@ int handle_minor_send(struct capiminor *mp)
 #endif /* CONFIG_ISDN_CAPI_MIDDLEWARE */
 /* -------- function called by lower level -------------------------- */
 
-static void capi_signal(__u16 applid, void *param)
+static void capi_signal(u16 applid, void *param)
 {
        struct capidev *cdev = (struct capidev *)param;
 #ifdef CONFIG_ISDN_CAPI_MIDDLEWARE
        struct capiminor *mp;
-       __u16 datahandle;
+       u16 datahandle;
 #endif /* CONFIG_ISDN_CAPI_MIDDLEWARE */
        struct capincci *np;
        struct sk_buff *skb = 0;
-       __u32 ncci;
+       u32 ncci;
 
        (void) (*capifuncs->capi_get_message) (applid, &skb);
        if (!skb) {
@@ -754,7 +758,7 @@ capi_write(struct file *file, const char *buf, size_t count, loff_t *ppos)
        struct capidev *cdev = (struct capidev *)file->private_data;
        struct sk_buff *skb;
        int retval;
-       __u16 mlen;
+       u16 mlen;
 
         if (ppos != &file->f_pos)
                return -ESPIPE;
@@ -994,7 +998,7 @@ capi_ioctl(struct inode *inode, struct file *file,
                                                sizeof(ncci));
                        if (retval)
                                return -EFAULT;
-                       nccip = capincci_find(cdev, (__u32) ncci);
+                       nccip = capincci_find(cdev, (u32) ncci);
                        if (!nccip)
                                return 0;
 #ifdef CONFIG_ISDN_CAPI_MIDDLEWARE
@@ -1019,7 +1023,7 @@ capi_ioctl(struct inode *inode, struct file *file,
                                                sizeof(ncci));
                        if (retval)
                                return -EFAULT;
-                       nccip = capincci_find(cdev, (__u32) ncci);
+                       nccip = capincci_find(cdev, (u32) ncci);
                        if (!nccip || (mp = nccip->minorp) == 0)
                                return -ESRCH;
                        return mp->minor;
@@ -1272,7 +1276,7 @@ static struct file_operations capinc_raw_fops =
 
 /* -------- tty_operations for capincci ----------------------------- */
 
-int capinc_tty_open(struct tty_struct * tty, struct file * file)
+static int capinc_tty_open(struct tty_struct * tty, struct file * file)
 {
        struct capiminor *mp;
 
@@ -1300,7 +1304,7 @@ int capinc_tty_open(struct tty_struct * tty, struct file * file)
        return 0;
 }
 
-void capinc_tty_close(struct tty_struct * tty, struct file * file)
+static void capinc_tty_close(struct tty_struct * tty, struct file * file)
 {
        struct capiminor *mp;
 
@@ -1325,8 +1329,8 @@ void capinc_tty_close(struct tty_struct * tty, struct file * file)
 #endif
 }
 
-int capinc_tty_write(struct tty_struct * tty, int from_user,
-                     const unsigned char *buf, int count)
+static int capinc_tty_write(struct tty_struct * tty, int from_user,
+                           const unsigned char *buf, int count)
 {
        struct capiminor *mp = (struct capiminor *)tty->driver_data;
        struct sk_buff *skb;
@@ -1377,7 +1381,7 @@ int capinc_tty_write(struct tty_struct * tty, int from_user,
        return count;
 }
 
-void capinc_tty_put_char(struct tty_struct *tty, unsigned char ch)
+static void capinc_tty_put_char(struct tty_struct *tty, unsigned char ch)
 {
        struct capiminor *mp = (struct capiminor *)tty->driver_data;
        struct sk_buff *skb;
@@ -1414,7 +1418,7 @@ void capinc_tty_put_char(struct tty_struct *tty, unsigned char ch)
        }
 }
 
-void capinc_tty_flush_chars(struct tty_struct *tty)
+static void capinc_tty_flush_chars(struct tty_struct *tty)
 {
        struct capiminor *mp = (struct capiminor *)tty->driver_data;
        struct sk_buff *skb;
@@ -1440,7 +1444,7 @@ void capinc_tty_flush_chars(struct tty_struct *tty)
        (void)handle_minor_recv(mp);
 }
 
-int capinc_tty_write_room(struct tty_struct *tty)
+static int capinc_tty_write_room(struct tty_struct *tty)
 {
        struct capiminor *mp = (struct capiminor *)tty->driver_data;
        int room;
@@ -1458,7 +1462,7 @@ int capinc_tty_write_room(struct tty_struct *tty)
        return room;
 }
 
-int capinc_tty_chars_in_buffer(struct tty_struct *tty)
+static int capinc_tty_chars_in_buffer(struct tty_struct *tty)
 {
        struct capiminor *mp = (struct capiminor *)tty->driver_data;
        if (!mp || !mp->nccip) {
@@ -1476,7 +1480,7 @@ int capinc_tty_chars_in_buffer(struct tty_struct *tty)
        return mp->outbytes;
 }
 
-int capinc_tty_ioctl(struct tty_struct *tty, struct file * file,
+static int capinc_tty_ioctl(struct tty_struct *tty, struct file * file,
                    unsigned int cmd, unsigned long arg)
 {
        int error = 0;
@@ -1488,14 +1492,14 @@ int capinc_tty_ioctl(struct tty_struct *tty, struct file * file,
        return error;
 }
 
-void capinc_tty_set_termios(struct tty_struct *tty, struct termios * old)
+static void capinc_tty_set_termios(struct tty_struct *tty, struct termios * old)
 {
 #ifdef _DEBUG_TTYFUNCS
        printk(KERN_DEBUG "capinc_tty_set_termios\n");
 #endif
 }
 
-void capinc_tty_throttle(struct tty_struct * tty)
+static void capinc_tty_throttle(struct tty_struct * tty)
 {
        struct capiminor *mp = (struct capiminor *)tty->driver_data;
 #ifdef _DEBUG_TTYFUNCS
@@ -1505,7 +1509,7 @@ void capinc_tty_throttle(struct tty_struct * tty)
                mp->ttyinstop = 1;
 }
 
-void capinc_tty_unthrottle(struct tty_struct * tty)
+static void capinc_tty_unthrottle(struct tty_struct * tty)
 {
        struct capiminor *mp = (struct capiminor *)tty->driver_data;
 #ifdef _DEBUG_TTYFUNCS
@@ -1517,7 +1521,7 @@ void capinc_tty_unthrottle(struct tty_struct * tty)
        }
 }
 
-void capinc_tty_stop(struct tty_struct *tty)
+static void capinc_tty_stop(struct tty_struct *tty)
 {
        struct capiminor *mp = (struct capiminor *)tty->driver_data;
 #ifdef _DEBUG_TTYFUNCS
@@ -1528,7 +1532,7 @@ void capinc_tty_stop(struct tty_struct *tty)
        }
 }
 
-void capinc_tty_start(struct tty_struct *tty)
+static void capinc_tty_start(struct tty_struct *tty)
 {
        struct capiminor *mp = (struct capiminor *)tty->driver_data;
 #ifdef _DEBUG_TTYFUNCS
@@ -1540,49 +1544,43 @@ void capinc_tty_start(struct tty_struct *tty)
        }
 }
 
-void capinc_tty_hangup(struct tty_struct *tty)
+static void capinc_tty_hangup(struct tty_struct *tty)
 {
 #ifdef _DEBUG_TTYFUNCS
        printk(KERN_DEBUG "capinc_tty_hangup\n");
 #endif
 }
 
-void capinc_tty_break_ctl(struct tty_struct *tty, int state)
+static void capinc_tty_break_ctl(struct tty_struct *tty, int state)
 {
 #ifdef _DEBUG_TTYFUNCS
        printk(KERN_DEBUG "capinc_tty_break_ctl(%d)\n", state);
 #endif
 }
 
-void capinc_tty_flush_buffer(struct tty_struct *tty)
+static void capinc_tty_flush_buffer(struct tty_struct *tty)
 {
 #ifdef _DEBUG_TTYFUNCS
        printk(KERN_DEBUG "capinc_tty_flush_buffer\n");
 #endif
 }
 
-void capinc_tty_set_ldisc(struct tty_struct *tty)
+static void capinc_tty_set_ldisc(struct tty_struct *tty)
 {
 #ifdef _DEBUG_TTYFUNCS
        printk(KERN_DEBUG "capinc_tty_set_ldisc\n");
 #endif
 }
 
-void capinc_tty_send_xchar(struct tty_struct *tty, char ch)
+static void capinc_tty_send_xchar(struct tty_struct *tty, char ch)
 {
 #ifdef _DEBUG_TTYFUNCS
        printk(KERN_DEBUG "capinc_tty_send_xchar(%d)\n", ch);
 #endif
 }
 
-int capinc_tty_read_proc(char *page, char **start, off_t off,
-                         int count, int *eof, void *data)
-{
-       return 0;
-}
-
-int capinc_write_proc(struct file *file, const char *buffer,
-                         unsigned long count, void *data)
+static int capinc_tty_read_proc(char *page, char **start, off_t off,
+                               int count, int *eof, void *data)
 {
        return 0;
 }
@@ -1594,7 +1592,7 @@ static struct tty_struct *capinc_tty_table[CAPINC_NR_PORTS];
 static struct termios *capinc_tty_termios[CAPINC_NR_PORTS];
 static struct termios *capinc_tty_termios_locked[CAPINC_NR_PORTS];
 
-int capinc_tty_init(void)
+static int capinc_tty_init(void)
 {
        struct tty_driver *drv = &capinc_tty_driver;
 
@@ -1652,7 +1650,7 @@ int capinc_tty_init(void)
        return 0;
 }
 
-void capinc_tty_exit(void)
+static void capinc_tty_exit(void)
 {
        struct tty_driver *drv = &capinc_tty_driver;
        int retval;
@@ -1778,7 +1776,7 @@ static void  proc_exit(void)
 /* -------- init function and module interface ---------------------- */
 
 
-static void lower_callback(unsigned int cmd, __u32 contr, void *data)
+static void lower_callback(unsigned int cmd, u32 contr, void *data)
 {
        struct capi_ncciinfo *np;
        struct capidev *cdev;
index d9566f10d603c3ca8087d9ef03e9c368c21b6e88..b2070a5ad74a12cd8d039c64a5baf3620b8d6cb8 100644 (file)
@@ -1,11 +1,14 @@
-/*
- * $Id: capicmd.h,v 1.2.6.1 2001/05/17 20:41:51 kai Exp $
+/* $Id: capicmd.h,v 1.1.2.1 2001/12/31 13:26:41 kai Exp $
  * 
  * CAPI 2.0 Interface for Linux
  * 
- * Copyright 1997 by Carsten Paeth (calle@calle.in-berlin.de)
+ * Copyright 1997 by Carsten Paeth <calle@calle.de>
  * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
  */
+
 #ifndef __CAPICMD_H__
 #define __CAPICMD_H__
 
index cf0b41c051e2ed80a0769a81aa6cb5adbddc5c1d..a7543e7598685455018e1f53c50e28640668bec0 100644 (file)
@@ -1,9 +1,11 @@
-/*
- * $Id: capidev.h,v 1.6.6.1 2001/05/17 20:41:51 kai Exp $
+/* $Id: capidev.h,v 1.1.2.1 2001/12/31 13:26:41 kai Exp $
  *
  * CAPI 2.0 Interface for Linux
  *
- * (c) Copyright 1996 by Carsten Paeth (calle@calle.in-berlin.de)
+ * Copyright 1996 by Carsten Paeth <calle@calle.de>
+ *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index b391c9cda136bb129f09ac6f4cdfd74b765bbb81..2a40051f6813dadd90043fd394578520b5401beb 100644 (file)
@@ -1,9 +1,11 @@
-/*
- * $Id: capidrv.c,v 1.39.6.6 2001/05/17 20:41:51 kai Exp $
+/* $Id: capidrv.c,v 1.1.2.1 2001/12/31 13:26:41 kai Exp $
  *
  * ISDN4Linux Driver, using capi20 interface (kernelcapi)
  *
- * Copyright 1997 by Carsten Paeth (calle@calle.in-berlin.de)
+ * Copyright 1997 by Carsten Paeth <calle@calle.de>
+ *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
 #include "capicmd.h"
 #include "capidrv.h"
 
-static char *revision = "$Revision: 1.39.6.6 $";
+static char *revision = "$Revision: 1.1.2.1 $";
 static int debugmode = 0;
 
-MODULE_AUTHOR("Carsten Paeth <calle@calle.in-berlin.de>");
+MODULE_DESCRIPTION("CAPI4Linux: Interface to ISDN4Linux");
+MODULE_AUTHOR("Carsten Paeth");
+MODULE_LICENSE("GPL");
 MODULE_PARM(debugmode, "i");
 
 /* -------- type definitions ----------------------------------------- */
index 245993e3218e1c06207081784a2aa0810f9ff656..3675309100fc79b6888b3a7f5a29ecfab7efa58f 100644 (file)
@@ -1,11 +1,14 @@
-/*
- * $Id: capidrv.h,v 1.2.8.1 2001/05/17 20:41:51 kai Exp $
+/* $Id: capidrv.h,v 1.1.2.1 2001/12/31 13:26:41 kai Exp $
  *
  * ISDN4Linux Driver, using capi20 interface (kernelcapi)
  *
- * Copyright 1997 by Carsten Paeth (calle@calle.in-berlin.de)
+ * Copyright 1997 by Carsten Paeth <calle@calle.de>
+ *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
+
 #ifndef __CAPIDRV_H__
 #define __CAPIDRV_H__
 
index 831536e1dd604a286e262d540af3337260aca4b7..669970450ea0d0748582f604784596f9c0af5c94 100644 (file)
@@ -1,10 +1,12 @@
-/*
- * $Id: capifs.c,v 1.14.6.7 2001/05/24 08:29:08 kai Exp $
+/* $Id: capifs.c,v 1.1.2.1 2001/12/31 13:26:41 kai Exp $
  * 
- * (c) Copyright 2000 by Carsten Paeth (calle@calle.de)
+ * Copyright 2000 by Carsten Paeth <calle@calle.de>
  *
  * Heavily based on devpts filesystem from H. Peter Anvin
  * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
  */
 
 #include <linux/version.h>
 #include <asm/bitops.h>
 #include <asm/uaccess.h>
 
-MODULE_AUTHOR("Carsten Paeth <calle@calle.de>");
+MODULE_DESCRIPTION("CAPI4Linux: /dev/capi/ filesystem");
+MODULE_AUTHOR("Carsten Paeth");
+MODULE_LICENSE("GPL");
 
-static char *revision = "$Revision: 1.14.6.7 $";
+static char *revision = "$Revision: 1.1.2.1 $";
 
 struct capifs_ncci {
        struct inode *inode;
index 8ee489e3ac9a49536079ecdf5d2ff057ace35fb1..8958d49ba897cb9a7914ed76c6d6fb67b678f353 100644 (file)
@@ -1,7 +1,9 @@
-/*
- * $Id: capifs.h,v 1.2.6.1 2001/05/17 20:41:51 kai Exp $
+/* $Id: capifs.h,v 1.1.2.1 2001/12/31 13:26:42 kai Exp $
  * 
- * (c) Copyright 2000 by Carsten Paeth (calle@calle.de)
+ * Copyright 2000 by Carsten Paeth <calle@calle.de>
+ *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index da64a183b6732c1775e19357974c41a4f304e491..f08fb97b82f5de37ab27054944a13fd53449f5b2 100644 (file)
@@ -1,11 +1,14 @@
-/*
- * $Id: capilli.h,v 1.4 1999/07/23 08:51:05 calle Exp $
+/* $Id: capilli.h,v 1.1.2.1 2001/12/31 13:26:42 kai Exp $
  * 
  * Kernel CAPI 2.0 Driver Interface for Linux
  * 
- * (c) Copyright 1999 by Carsten Paeth (calle@calle.in-berlin.de)
+ * Copyright 1999 by Carsten Paeth <calle@calle.de>
  * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
  */
+
 #ifndef __CAPILLI_H__
 #define __CAPILLI_H__
 
index c88ccc4f0f7953937b33df46666d42563364f565..30e3d4e3edfbe9fc67b5ccdfe928b4866e79e1f1 100644 (file)
@@ -1,12 +1,15 @@
-/*
- * $Id: capiutil.c,v 1.13.6.3 2001/05/17 20:41:51 kai Exp $
+/* $Id: capiutil.c,v 1.1.2.1 2001/12/31 13:26:42 kai Exp $
  *
  * CAPI 2.0 convert capi message to capi message struct
  *
  * From CAPI 2.0 Development Kit AVM 1995 (msg.c)
- * Rewritten for Linux 1996 by Carsten Paeth (calle@calle.in-berlin.de)
+ * Rewritten for Linux 1996 by Carsten Paeth <calle@calle.de>
+ *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
+
 #include <linux/module.h>
 #include <linux/string.h>
 #include <linux/ctype.h>
 #include <linux/isdn_compat.h>
 #include "capiutil.h"
 
+MODULE_DESCRIPTION("CAPI4Linux: CAPI message conversion support");
+MODULE_AUTHOR("Carsten Paeth");
+MODULE_LICENSE("GPL");
+
 /* from CAPI2.0 DDK AVM Berlin GmbH */
 
 #ifndef CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON
index ab7f1ceb72dc3ac1c43b1ef7f28bbb4dddd0a67b..36d6a924757f0cd30bed6c1607e21d8c67e5015a 100644 (file)
@@ -1,12 +1,15 @@
-/*
- * $Id: capiutil.h,v 1.5.6.1 2001/05/17 20:41:51 kai Exp $
- * 
+/* $Id: capiutil.h,v 1.1.2.1 2001/12/31 13:26:43 kai Exp $
+ *
  * CAPI 2.0 defines & types
- * 
- * From CAPI 2.0 Development Kit AVM 1995 (capi20.h)
- * Rewritten for Linux 1996 by Carsten Paeth (calle@calle.in-berlin.de)
- * 
+ *
+ * From CAPI 2.0 Development Kit AVM 1995 (msg.c)
+ * Rewritten for Linux 1996 by Carsten Paeth <calle@calle.de>
+ *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
  */
+
 #ifndef __CAPIUTIL_H__
 #define __CAPIUTIL_H__
 
index 5faa668adcfdf8cd154a26c8882e7e0bf98f91fd..868e98bab91968da8457f23f6d8d63e6d5cc82e9 100644 (file)
@@ -1,11 +1,14 @@
-/*
- * $Id: kcapi.c,v 1.21.6.7 2001/06/09 15:14:15 kai Exp $
+/* $Id: kcapi.c,v 1.1.2.1 2001/12/31 13:26:43 kai Exp $
  * 
  * Kernel CAPI 2.0 Module
  * 
- * (c) Copyright 1999 by Carsten Paeth (calle@calle.in-berlin.de)
+ * Copyright 1999 by Carsten Paeth <calle@calle.de>
  * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
  */
+
 #define CONFIG_AVMB1_COMPAT
 
 #include <linux/config.h>
@@ -31,7 +34,7 @@
 #include <linux/b1lli.h>
 #endif
 
-static char *revision = "$Revision: 1.21.6.7 $";
+static char *revision = "$Revision: 1.1.2.1 $";
 
 /* ------------------------------------------------------------- */
 
@@ -42,10 +45,12 @@ static char *revision = "$Revision: 1.21.6.7 $";
 
 /* ------------------------------------------------------------- */
 
-int showcapimsgs = 0;
+static int showcapimsgs = 0;
 
-MODULE_AUTHOR("Carsten Paeth <calle@calle.in-berlin.de>");
-MODULE_PARM(showcapimsgs, "0-4i");
+MODULE_DESCRIPTION("CAPI4Linux: kernel CAPI layer");
+MODULE_AUTHOR("Carsten Paeth");
+MODULE_LICENSE("GPL");
+MODULE_PARM(showcapimsgs, "i");
 
 /* ------------------------------------------------------------- */
 
index ce80b470c5009ee928eff1977f5d993e21e8506e..7399af9264c0df51f16599515f9f99a2714a71d7 100644 (file)
@@ -1,10 +1,12 @@
-/*
- * $Id: t1isa.c,v 1.16.6.6 2001/05/17 21:15:33 kai Exp $
+/* $Id: t1isa.c,v 1.1.2.1 2001/12/31 13:26:43 kai Exp $
  * 
  * Module for AVM T1 HEMA-card.
  * 
- * (c) Copyright 1999 by Carsten Paeth (calle@calle.in-berlin.de)
+ * Copyright 1999 by Carsten Paeth <calle@calle.de>
  * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
  */
 
 #include <linux/module.h>
 #include "capilli.h"
 #include "avmcard.h"
 
-static char *revision = "$Revision: 1.16.6.6 $";
+static char *revision = "$Revision: 1.1.2.1 $";
 
 /* ------------------------------------------------------------- */
 
-MODULE_AUTHOR("Carsten Paeth <calle@calle.in-berlin.de>");
+MODULE_DESCRIPTION("CAPI4Linux: Driver for AVM T1 HEMA ISA card");
+MODULE_AUTHOR("Carsten Paeth");
+MODULE_LICENSE("GPL");
 
 /* ------------------------------------------------------------- */
 
index c73e405d2a977a008d62f0130a78e9777646d896..e19d24b48d1a6ec2ec0d8f811c3e18e2c623b009 100644 (file)
@@ -1,10 +1,12 @@
-/*
- * $Id: t1pci.c,v 1.13.6.5 2001/05/17 20:41:51 kai Exp $
+/* $Id: t1pci.c,v 1.1.2.1 2001/12/31 13:26:43 kai Exp $
  * 
  * Module for AVM T1 PCI-card.
  * 
- * (c) Copyright 1999 by Carsten Paeth (calle@calle.in-berlin.de)
+ * Copyright 1999 by Carsten Paeth <calle@calle.de>
  * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
  */
 
 #include <linux/config.h>
 #include "capilli.h"
 #include "avmcard.h"
 
-static char *revision = "$Revision: 1.13.6.5 $";
+static char *revision = "$Revision: 1.1.2.1 $";
 
 #undef CONFIG_T1PCI_DEBUG
 #undef CONFIG_T1PCI_POLLDEBUG
 
 /* ------------------------------------------------------------- */
 
-MODULE_AUTHOR("Carsten Paeth <calle@calle.in-berlin.de>");
+MODULE_DESCRIPTION("CAPI4Linux: Driver for AVM T1 PCI card");
+MODULE_AUTHOR("Carsten Paeth");
+MODULE_LICENSE("GPL");
 
 /* ------------------------------------------------------------- */
 
index 8320d8d34058b39840c7a4b6af3aa7bac21aa0cc..dc0625c2f6bdb3df23668cf707914e53d45df256 100644 (file)
@@ -1,23 +1,11 @@
-/* 
- * $Id: divert_init.c,v 1.5.6.2 2001/01/24 22:18:17 kai Exp $
+/* $Id divert_init.c,v 1.5.6.2 2001/01/24 22:18:17 kai Exp $
  *
  * Module init for DSS1 diversion services for i4l.
  *
  * Copyright 1999       by Werner Cornelius (werner@isdn4linux.de)
  * 
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
 #include <linux/init.h>
 #include "isdn_divert.h"
 
+MODULE_DESCRIPTION("ISDN4Linux: Call diversion support");
+MODULE_AUTHOR("Werner Cornelius");
+MODULE_LICENSE("GPL");
+
 /********************/
 /* needed externals */
 /********************/
@@ -70,7 +62,7 @@ static int __init divert_init(void)
 /* Module deinit code */
 /**********************/
 static void  divert_exit(void)
-{ int flags;
+{ unsigned long flags;
   int i;
 
   save_flags(flags);
index 0da6516d4c409074568579754e4fb54eb772cdc9..85b382c2496d501a768115869b6c8a962aa2a54f 100644 (file)
@@ -1,23 +1,11 @@
-/*
- * $Id: divert_procfs.c,v 1.11 2000/11/25 17:01:00 kai Exp $
+/* $Id: divert_procfs.c,v 1.1.2.1 2001/12/31 13:26:44 kai Exp $
  *
  * Filesystem handling for the diversion supplementary services.
  *
  * Copyright 1998       by Werner Cornelius (werner@isdn4linux.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
@@ -50,7 +38,7 @@ void
 put_info_buffer(char *cp)
 {
        struct divert_info *ib;
-       int flags;
+       unsigned long flags;
 
        if (if_used <= 0)
                return;
@@ -145,7 +133,7 @@ isdn_divert_poll(struct file *file, poll_table * wait)
 static int
 isdn_divert_open(struct inode *ino, struct file *filep)
 {
-       int flags;
+       unsigned long flags;
 
        MOD_INC_USE_COUNT;
        save_flags(flags);
@@ -167,7 +155,7 @@ static int
 isdn_divert_close(struct inode *ino, struct file *filep)
 {
        struct divert_info *inf;
-       int flags;
+       unsigned long flags;
 
        save_flags(flags);
        cli();
@@ -196,7 +184,8 @@ isdn_divert_ioctl(struct inode *inode, struct file *file,
                  uint cmd, ulong arg)
 {
        divert_ioctl dioctl;
-       int i, flags;
+       int i;
+       unsigned long flags;
        divert_rule *rulep;
        char *cp;
 
index 47a27977525218e21edf90daac08b25ba599ccbc..d9f343cc94bf5bb385dfcb6c658a554e109136a1 100644 (file)
@@ -1,30 +1,14 @@
-/* 
- * $Id: isdn_divert.c,v 1.6.6.2 2001/02/16 16:43:25 kai Exp $
+/* $Id: isdn_divert.c,v 1.1.2.1 2001/12/31 13:26:44 kai Exp $
  *
  * DSS1 main diversion supplementary handling for i4l.
  *
  * Copyright 1999       by Werner Cornelius (werner@isdn4linux.de)
  * 
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
-
-#define __NO_VERSION__
-#include <linux/module.h>
 #include <linux/version.h>
 #include <linux/proc_fs.h>
 #include "isdn_divert.h"
@@ -67,7 +51,7 @@ static unsigned char extern_wait_max = 4; /* maximum wait in s for external proc
 /* timer callback function */
 /***************************/
 static void deflect_timer_expire(ulong arg)
-{ int flags;
+{ unsigned long flags;
   struct call_struc *cs = (struct call_struc *) arg;
 
   save_flags(flags);
@@ -125,7 +109,8 @@ static void deflect_timer_expire(ulong arg)
 int cf_command(int drvid, int mode, 
                u_char proc, char *msn, 
                u_char service, char *fwd_nr, ulong *procid)
-{ int retval,msnlen,flags;
+{ int retval,msnlen;
+  unsigned long flags; 
   int fwd_len;
   char *p,*ielenp,tmp[60];
   struct call_struc *cs;
@@ -220,7 +205,7 @@ int cf_command(int drvid, int mode,
 int deflect_extern_action(u_char cmd, ulong callid, char *to_nr)
 { struct call_struc *cs;
   isdn_ctrl ic;
-  int flags;
+  unsigned long flags;
   int i;
 
   if ((cmd & 0x7F) > 2) return(-EINVAL); /* invalid command */
@@ -291,7 +276,7 @@ int deflect_extern_action(u_char cmd, ulong callid, char *to_nr)
 /********************************/
 int insertrule(int idx, divert_rule *newrule)
 { struct deflect_struc *ds,*ds1=NULL;
-  int flags;
+  unsigned long flags;
 
   if (!(ds = (struct deflect_struc *) kmalloc(sizeof(struct deflect_struc), 
                                               GFP_KERNEL))) 
@@ -337,7 +322,7 @@ int insertrule(int idx, divert_rule *newrule)
 /***********************************/
 int deleterule(int idx)
 { struct deflect_struc *ds,*ds1;
-  int flags;
+  unsigned long flags;
   
   if (idx < 0) 
    { save_flags(flags);
@@ -405,7 +390,7 @@ divert_rule *getruleptr(int idx)
 /*************************************************/
 int isdn_divert_icall(isdn_ctrl *ic)
 { int retval = 0;
-  int flags;
+  unsigned long flags;
   struct call_struc *cs = NULL; 
   struct deflect_struc *dv;
   char *p,*p1;
@@ -557,7 +542,7 @@ int isdn_divert_icall(isdn_ctrl *ic)
 
 void deleteprocs(void)
 { struct call_struc *cs, *cs1; 
-  int flags;
+  unsigned long flags;
 
   save_flags(flags);
   cli();
@@ -714,7 +699,8 @@ int interrogate_success(isdn_ctrl *ic, struct call_struc *cs)
 /*********************************************/
 int prot_stat_callback(isdn_ctrl *ic)
 { struct call_struc *cs, *cs1;
-  int i,flags;
+  int i;
+  unsigned long flags;
 
   cs = divert_head; /* start of list */
   cs1 = NULL;
@@ -805,7 +791,7 @@ int prot_stat_callback(isdn_ctrl *ic)
 /***************************/
 int isdn_divert_stat_callback(isdn_ctrl *ic)
 { struct call_struc *cs, *cs1;
-  int flags, retval;
+  unsigned long flags, retval;
 
   retval = -1;
   cs = divert_head; /* start of list */
index 84390c9976c5b5e69fc6cdb2db28038eedbff049..59223ba99749ff5f126c726021140a5faae47046 100644 (file)
@@ -1,27 +1,14 @@
-/* 
- * $Id: isdn_divert.h,v 1.5 2000/11/13 22:51:47 kai Exp $
+/* $Id: isdn_divert.h,v 1.1.2.1 2001/12/31 13:26:44 kai Exp $
  *
  * Header for the diversion supplementary ioctl interface.
  *
  * Copyright 1998       by Werner Cornelius (werner@ikt.de)
  * 
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
 #include <linux/ioctl.h>
 #include <linux/types.h>
 
index 14fdef0c498edf114d2f7da5fb8a1a7827dee53d..ccf3e1e5fed23d5ab0912aa92ebce1dc387811a0 100644 (file)
@@ -1,23 +1,9 @@
-
 /*
- *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
 #include <linux/config.h>
 #include <linux/init.h>
 #include <linux/fs.h>
 
 #include <linux/isdn_compat.h>
 
+MODULE_DESCRIPTION("ISDN4Linux: Driver for Eicon Diva Server cards");
+MODULE_AUTHOR("Armin Schindler");
+MODULE_LICENSE("GPL");
+
 #ifdef MODULE
 #include "idi.h"
 void DIVA_DIDD_Write(DESCRIPTOR *, int);
@@ -53,7 +43,6 @@ divas_init(void)
        
        printk(KERN_DEBUG "DIVA Server Driver - Version 2.0.16\n");
 
-
 #if !defined(CONFIG_PCI)
        printk(KERN_WARNING "CONFIG_PCI is not defined!\n");
        return -ENODEV;
index e8a37498c32dad563fc119d32114d62e94dea9e0..761aebcd5f5b2d8ba36fbc27eb13561d659834ee 100644 (file)
@@ -1,29 +1,15 @@
-
 /*
+ * Main internal include file for Diva Server driver
  *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.7  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
-/* Main internal include file for Diva Server driver */
-
 #if !defined(ADAPTER_H)
 #define ADAPTER_H
 
index e03c104d373baadc3ddb9e68cabd5a56e28dd25f..aa56bf85b017531e8cd1659df134b77eadbcb5d9 100644 (file)
@@ -1,23 +1,10 @@
-
 /*
- *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.8  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 132961e6fba15c17b517983e4ce3174311a3ed46..95d165d52981cab73fe73ce1f0d695b223aa5126 100644 (file)
@@ -1,27 +1,13 @@
-
 /*
- *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.15  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
 #include "eicon.h"
 #include "sys.h"
 #include "idi.h"
@@ -822,7 +808,9 @@ void        DivasDoDpc(void *pData)
        
        while(i--)
        {
-               DivaDoCardDpc(card++);
+            if (card->state == DIA_RUNNING)
+               DivaDoCardDpc(card);
+            card++;
        }
 }
 
index f039fd52a7e2ea5b5e4eca365dc41aeb83dff052..b389cb92b30a85647b3b9ee9342a0043573bc935 100644 (file)
@@ -1,28 +1,13 @@
-
 /*
- *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.0  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
-
 /*------------------------------------------------------------------*/
 /* Q.931 information elements maximum length                        */
 /* excluding the identifier, including the length field             */
index 48c0596b944bb417eb6cacef4b197c7d3c35da79..858b66e70e883cd066488113165a2155a7f3d9af 100644 (file)
@@ -1,31 +1,15 @@
-
 /*
+ * Include file for defining the kernel loggger messages
+ * These definitions are shared between the klog driver and the
+ * klogd daemon process
  *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.0  
  *
- * 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, or (at your option)
- * any later version.
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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.
- *
- */
-
-
-/*
- * Include file for defining the kernel loggger messages
- * These definitions are shared between the klog driver and the
- * klogd daemon process
  */
 
 #if !defined(_KLOGMSG_H)
index 3ea401edcd6e5391b2aab1445e9bb7c401a27e47..90d45e478fe6e415c6a06b149bb4eaf2db650cee 100644 (file)
@@ -1,29 +1,15 @@
-
 /*
+ * External Diva Server driver include file
  *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.5  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
-/* External Diva Server driver include file */
-
 #if !defined(DIVAS_H)
 #define DIVAS_H
 
index 35ab16e67284295a5021fcf867d3b48f7d527bd0..20d3c08f33046adebe7143ffa7b1960f1bf5e474 100644 (file)
@@ -1,27 +1,13 @@
-
 /*
- *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.0  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
 #ifndef DSP_DEFS_H_
 #define DSP_DEFS_H_
 
index 618fda717c88454dc61ee8e85ff9b0b4cbae6a14..000a8ba1b2fb56a2a8043e67b1665567b519b8c6 100644 (file)
@@ -1,27 +1,13 @@
-
 /*
- *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.0  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
 #ifndef DSPDIDS_H_
 #define DSPDIDS_H_
 
index 801f3c8838b2be9fa47c7963e5fa65b39b24b1cc..59340f13f53c8523351ce0873b5a8161b7bc21bd 100644 (file)
@@ -1,28 +1,16 @@
-/* $Id: eicon.h,v 1.23.6.4 2001/06/09 15:14:16 kai Exp $
+/* $Id: eicon.h,v 1.1.2.1 2001/12/31 13:26:44 kai Exp $
  *
  * ISDN low-level module for Eicon active ISDN-Cards.
  *
- * Copyright 1998    by Fritz Elfert (fritz@isdn4linux.de)
+ * Copyright 1998       by Fritz Elfert (fritz@isdn4linux.de)
  * Copyright 1998-2000  by Armin Schindler (mac@melware.de) 
  * Copyright 1999,2000  Cytronics & Melware (info@melware.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
 #ifndef eicon_h
 #define eicon_h
 
index 1470fa7e6d856052e5add96c452afe1bd914c410..4c75f72134100e8f2fcbf6ff4297f646d117387c 100644 (file)
@@ -1,25 +1,13 @@
-/* $Id: eicon_dsp.h,v 1.7 2000/05/07 08:51:04 armin Exp $
+/* $Id: eicon_dsp.h,v 1.1.2.1 2001/12/31 13:26:44 kai Exp $
  *
  * ISDN lowlevel-module for Eicon active cards.
- *        DSP definitions
+ * DSP definitions
  *
  * Copyright 1999,2000  by Armin Schindler (mac@melware.de)
  * Copyright 1999,2000  Cytronics & Melware (info@melware.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 5565ecb32b4ab974e605cedc9cef7ba8bb7c52fa..a72d66dd379b56b22d24bc67f80332864df78f6a 100644 (file)
@@ -1,7 +1,7 @@
-/* $Id: eicon_idi.c,v 1.41.6.1 2001/02/10 14:44:09 kai Exp $
+/* $Id: eicon_idi.c,v 1.1.2.1 2001/12/31 13:26:44 kai Exp $
  *
  * ISDN lowlevel-module for Eicon active cards.
- *        IDI interface 
+ * IDI interface 
  *
  * Copyright 1998-2000  by Armin Schindler (mac@melware.de)
  * Copyright 1999,2000  Cytronics & Melware (info@melware.de)
  *             capabilities with Diva Server cards.
  *             (dor@deutschemailbox.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
@@ -36,7 +25,7 @@
 
 #undef EICON_FULL_SERVICE_OKTETT
 
-char *eicon_idi_revision = "$Revision: 1.41.6.1 $";
+char *eicon_idi_revision = "$Revision: 1.1.2.1 $";
 
 eicon_manifbuf *manbuf;
 
@@ -3130,8 +3119,8 @@ eicon_idi_manage(eicon_card *card, eicon_manifbuf *mb)
                        return(ret); 
                }
 
-               timeout = jiffies + 50;
-               while (timeout > jiffies) {
+               timeout = jiffies + HZ / 2;
+               while (time_before(jiffies, timeout)) {
                        if (chan->e.B2Id) break;
                        SLEEP(10);
                }
@@ -3192,8 +3181,8 @@ eicon_idi_manage(eicon_card *card, eicon_manifbuf *mb)
 
         eicon_schedule_tx(card);
 
-        timeout = jiffies + 50;
-        while (timeout > jiffies) {
+        timeout = jiffies + HZ / 2;
+        while (time_before(jiffies, timeout)) {
                 if (chan->fsm_state) break;
                 SLEEP(10);
         }
index a1103921931260d4347c415d8d37112858ab22da..b62b4a32cdf8084b5f1ab20bda29343ad70cd3d3 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: eicon_idi.h,v 1.11 2000/05/07 08:51:04 armin Exp $
+/* $Id: eicon_idi.h,v 1.1.2.1 2001/12/31 13:26:44 kai Exp $
  *
  * ISDN lowlevel-module for the Eicon active cards.
  * IDI-Interface
@@ -6,20 +6,8 @@
  * Copyright 1998-2000  by Armin Schindler (mac@melware.de)
  * Copyright 1999,2000  Cytronics & Melware (info@melware.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index f21a045c247e431d454c59ecb341e75538512d7c..f4291a79b15b3cd619a87375ec2b7e8efba10ef9 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: eicon_io.c,v 1.13.6.1 2001/02/16 09:09:50 armin Exp $
+/* $Id: eicon_io.c,v 1.1.2.1 2001/12/31 13:26:44 kai Exp $
  *
  * ISDN low-level module for Eicon active ISDN-Cards.
  * Code for communicating with hardware.
@@ -6,26 +6,14 @@
  * Copyright 1999,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. 
  *
- * 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, 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. 
- *
  */
 
-
 #include <linux/config.h>
 #include "eicon.h"
 #include "uxio.h"
index e33d0414e5fcd32af006ae2254f1aab97c3c589f..1201811dd366144d5db85d5c4ac822b9302d591f 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: eicon_isa.c,v 1.16 2000/06/12 12:44:02 armin Exp $
+/* $Id: eicon_isa.c,v 1.1.2.1 2001/12/31 13:26:44 kai Exp $
  *
  * ISDN low-level module for Eicon active ISDN-Cards.
  * Hardware-specific code for old ISA cards.
@@ -7,19 +7,8 @@
  * Copyright 1998-2000 by Armin Schindler (mac@melware.de)
  * Copyright 1999,2000 Cytronics & Melware (info@melware.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
@@ -31,7 +20,7 @@
 #define release_shmem release_region
 #define request_shmem request_region
 
-char *eicon_isa_revision = "$Revision: 1.16 $";
+char *eicon_isa_revision = "$Revision: 1.1.2.1 $";
 
 #undef EICON_MCA_DEBUG
 
@@ -239,7 +228,7 @@ eicon_isa_bootload(eicon_isa_card *card, eicon_isa_codebuf *cb) {
        boot = &card->shmem->boot;
 
        /* Delay 0.2 sec. */
-       SLEEP(20);
+       SLEEP(HZ / 5);
 
        /* Start CPU */
        writeb(cbuf.boot_opt, &boot->ctrl);
@@ -252,10 +241,10 @@ eicon_isa_bootload(eicon_isa_card *card, eicon_isa_codebuf *cb) {
 #endif /* CONFIG_MCA */
 
        /* Delay 0.2 sec. */
-       SLEEP(20);
+       SLEEP(HZ / 5);
 
        timeout = jiffies + (HZ * 22);
-       while (timeout > jiffies) {
+       while (time_before(jiffies, timeout)) {
                if (readb(&boot->ctrl) == 0)
                        break;
                SLEEP(10);
@@ -370,8 +359,8 @@ eicon_isa_load(eicon_isa_card *card, eicon_isa_codebuf *cb) {
        while (tmp--) {
                memcpy_toio(&boot->b, p, 256);
                writeb(1, &boot->ctrl);
-               timeout = jiffies + 10;
-               while (timeout > jiffies) {
+               timeout = jiffies + HZ / 10;
+               while (time_before(jiffies, timeout)) {
                        if (readb(&boot->ctrl) == 0)
                                break;
                        SLEEP(2);
@@ -394,7 +383,7 @@ eicon_isa_load(eicon_isa_card *card, eicon_isa_codebuf *cb) {
        /* Start firmware, wait for signature */
        writeb(2, &boot->ctrl);
        timeout = jiffies + (5*HZ);
-       while (timeout > jiffies) {
+       while (time_before(jiffies, timeout)) {
                if (readw(&boot->signature) == 0x4447)
                        break;
                SLEEP(2);
@@ -418,8 +407,8 @@ eicon_isa_load(eicon_isa_card *card, eicon_isa_codebuf *cb) {
                tmp = readb(&card->shmem->com.ReadyInt);
                tmp ++;
                writeb(tmp, &card->shmem->com.ReadyInt);
-               timeout = jiffies + 20;
-               while (timeout > jiffies) {
+               timeout = jiffies + HZ / 5;
+               while (time_before(jiffies, timeout)) {
                        if (card->irqprobe > 1)
                                break;
                        SLEEP(2);
index 1c8034f77786e6412b0611418764e88a39ef5ebd..f7949a1de281ab0be6f8b8f67a4bc8af0ea4c9a9 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: eicon_isa.h,v 1.10 2000/05/07 08:51:04 armin Exp $
+/* $Id: eicon_isa.h,v 1.1.2.1 2001/12/31 13:26:44 kai Exp $
  *
  * ISDN low-level module for Eicon active ISDN-Cards.
  *
@@ -6,19 +6,8 @@
  * Copyright 1998-2000 by Armin Schindler (mac@melware.de)
  * Copyright 1999,2000 Cytronics & Melware (info@melware.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 32bebf4b74f82bf8ce9b638d0a752f37df9faf20..6fcce414741833f91045332ff985231617f7b385 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: eicon_mod.c,v 1.37.6.5 2001/07/17 19:42:31 armin Exp $
+/* $Id: eicon_mod.c,v 1.1.2.1 2001/12/31 13:26:44 kai Exp $
  *
  * ISDN lowlevel-module for Eicon active cards.
  * 
@@ -6,6 +6,9 @@
  * 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.
  *
  *             capabilities with Diva Server cards.
  *             (dor@deutschemailbox.de)
  *
- * 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, 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. 
- *
  */
 
 #define DRIVERNAME "Eicon active ISDN driver"
@@ -55,7 +44,7 @@
 static eicon_card *cards = (eicon_card *) NULL;   /* glob. var , contains
                                                      start of card-list   */
 
-static char *eicon_revision = "$Revision: 1.37.6.5 $";
+static char *eicon_revision = "$Revision: 1.1.2.1 $";
 
 extern char *eicon_pci_revision;
 extern char *eicon_isa_revision;
@@ -84,9 +73,9 @@ static int   irq          = -1;
 #endif
 static char *id           = "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0";
 
-MODULE_DESCRIPTION(             "Driver for Eicon active ISDN cards");
+MODULE_DESCRIPTION(             "ISDN4Linux: Driver for Eicon active ISDN cards");
 MODULE_AUTHOR(                  "Armin Schindler");
-MODULE_SUPPORTED_DEVICE(        "ISDN subsystem");
+MODULE_LICENSE(                 "GPL");
 MODULE_PARM_DESC(id,                   "ID-String of first card");
 MODULE_PARM(id,                "s");
 #ifdef CONFIG_ISDN_DRV_EICON_ISA
@@ -1555,7 +1544,7 @@ int eicon_mca_find_card(int type,          /* type-idx of eicon-card          */
                };
        };
        /* all adapter flavors checked without match, finito with:            */
-        return ENODEV;
+        return -ENODEV;
 };
 
 
@@ -1602,14 +1591,14 @@ int eicon_mca_probe(int slot,  /* slot-nr where the card was detected         */
                                membase = cards_membase;
                        } else {
                                if (membase != cards_membase)
-                                       return ENODEV;
+                                       return -ENODEV;
                        };
                        cards_irq=irq_array[((adf_pos0 & 0xC)>>2)];
                        if (irq == -1) { 
                                irq = cards_irq;
                        } else {
                                if (irq != cards_irq)
-                                       return ENODEV;
+                                       return -ENODEV;
                        };
                        cards_io= 0xC00 + ((adf_pos0>>4)*0x10);
                        type = EICON_CTYPE_ISAPRI; 
@@ -1621,14 +1610,14 @@ int eicon_mca_probe(int slot,  /* slot-nr where the card was detected         */
                                membase = cards_membase;
                        } else {
                                if (membase != cards_membase)
-                                       return ENODEV;
+                                       return -ENODEV;
                        };
                        cards_irq=irq_array[((adf_pos0 & 0xC)>>2)];
                        if (irq == -1) { 
                                irq = cards_irq;
                        } else {
                                if (irq != cards_irq)
-                                       return ENODEV;
+                                       return -ENODEV;
                        };
 
                        cards_io= 0xC00 + ((adf_pos0>>4)*0x10);
@@ -1642,12 +1631,12 @@ int eicon_mca_probe(int slot,  /* slot-nr where the card was detected         */
                                irq = cards_irq;
                        } else {
                                if (irq != cards_irq)
-                                       return ENODEV;
+                                       return -ENODEV;
                        };
                        type = 0; 
                        break;
                default:
-                       return  ENODEV;
+                       return -ENODEV;
        };
        /* matching membase & irq */
        if ( 1 == eicon_addcard(type, membase, irq, id, 0)) { 
@@ -1666,7 +1655,7 @@ int eicon_mca_probe(int slot,  /* slot-nr where the card was detected         */
                        cards->mca_slot+1);
                return  0 ; /* eicon_addcard added a card */
        } else {
-               return ENODEV;
+               return -ENODEV;
        };
 };
 #endif /* CONFIG_MCA */
index 8d5b60f98b78ddad13b6715194934a2a6652d9aa..7443823a7abb28b8fb436333daa3dc3b1d7ca81b 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: eicon_pci.c,v 1.15.6.2 2001/02/16 09:09:50 armin Exp $
+/* $Id: eicon_pci.c,v 1.1.2.1 2001/12/31 13:26:44 kai Exp $
  *
  * ISDN low-level module for Eicon active ISDN-Cards.
  * Hardware-specific code for PCI cards.
@@ -6,23 +6,12 @@
  * 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. 
  *
- * 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, 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. 
- *
  */
 
 #include <linux/config.h>
@@ -35,7 +24,7 @@
 #include "adapter.h"
 #include "uxio.h"
 
-char *eicon_pci_revision = "$Revision: 1.15.6.2 $";
+char *eicon_pci_revision = "$Revision: 1.1.2.1 $";
 
 #if CONFIG_PCI          /* intire stuff is only for PCI */
 #ifdef CONFIG_ISDN_DRV_EICON_PCI
index 17fd4183a7a9bee16ae061f2d3bee52e4a46238c..fc236bbdedc01521f42429d05bb37807e80ece1c 100644 (file)
@@ -1,23 +1,12 @@
-/* $Id: eicon_pci.h,v 1.6 2000/05/07 08:51:04 armin Exp $
+/* $Id: eicon_pci.h,v 1.1.2.1 2001/12/31 13:26:44 kai Exp $
  *
  * ISDN low-level module for Eicon active ISDN-Cards (PCI part).
  *
  * Copyright 1998-2000 by Armin Schindler (mac@melware.de)
  * Copyright 1999,2000 Cytronics & Melware (info@melware.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 0efb16fed1d46bfd042b53885b192f1a720be3cc..42c4c0a09561f2a64300ab6469c7b913878a8efb 100644 (file)
@@ -1,28 +1,15 @@
-
 /*
+ * Diva Server 4BRI specific part of initialisation
  *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.7  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
-/* Diva Server 4BRI specific part of initialisation */
 #include "sys.h"
 #include "idi.h"
 #include "divas.h"
index dda2f1ae07eb9d83eee5e57c14b15bd1bf69fa58..be858533804b0b78dc6d0d5bb9a963fa27debbd9 100644 (file)
@@ -1,27 +1,13 @@
-
 /*
- *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.2  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
 #include "sys.h"
 #include "idi.h"
 #include "uxio.h"
index 1bb57a77924a5363e6588ba2c4c5deb3ee81beec..e838d5f94f79228aa736376463a1cf8f5c0fda86 100644 (file)
@@ -1,30 +1,14 @@
-
 /*
+ * Core driver for Diva Server cards
+ * Implements the IDI interface
  *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.8  
  *
- * 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, or (at your option)
- * any later version.
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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.
- *
- */
-
-
-/*
- * Core driver for Diva Server cards
- * Implements the IDI interface
  */
 
 #include "idi.h"
index eda433110984c5f5301230c13312d9d74fc068b0..2dde67d2502dac596d05f7027c90f775c761d2fd 100644 (file)
@@ -1,29 +1,15 @@
-
 /*
+ * External IDI interface
  *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.0  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
-/* External IDI interface */
-
 #if !defined(IDI_H)
 #define IDI_H
 
index f5c46cb7e06678cab8e42debadc12e20abcac284..d526c40f55ee74f326c25f412f751ecd6afd51ef 100644 (file)
@@ -1,32 +1,15 @@
-
 /*
+ * Source file for kernel interface to kernel log facility
  *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.3  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
- * See the GNU General Public License for more details.
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- * 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.
- *
- */
-
-
-/*
- * Source file for kernel interface to kernel log facility
  */
 
-
 #include "eicon.h"
 #include "sys.h"
 #include <stdarg.h>
index 58bdc5613f1e85827933458c770775cba187ad7d..92d9e891f2e2f860af59381957bd6b56963f2f23 100644 (file)
@@ -1,27 +1,13 @@
-
 /*
- *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.9  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
 #include <linux/fs.h>
 #undef N_DATA   /* Because we have our own definition */
 
index a35979ac25b22d3464dd87b666f64ec06c4a53e0..c4f9dd4c1dd736a2131aff8056fd1dc9b4f8cd9a 100644 (file)
@@ -1,23 +1,10 @@
-
 /*
- *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.12  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 3d970abce38260643bba3633d434ac98a0df3934..7fbfc826ef28d70709bdce2ea53d360b2a1e8017 100644 (file)
@@ -1,27 +1,13 @@
-
 /*
- *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.16  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
 #define N_DATA
 
 #include <asm/io.h>
index 4d970122048357fbc8d67125ba944063d80dd79b..30748c5c8e3c6563d86be2e8268511160280550a 100644 (file)
@@ -1,27 +1,13 @@
-
 /*
- *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.10  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
 #include <linux/sched.h>
 #undef N_DATA
 #include <linux/tqueue.h>
index 8b060c9f9d2e972ccce17dce356561c408a87430..0d1204aac01ca80c293889b75e4b62d066ec3b45 100644 (file)
@@ -1,29 +1,13 @@
-   
 /*
+ * Source file for diva log facility
  *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.5  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
- * See the GNU General Public License for more details.
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- * 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.
- *
- */
-
-
-/*
- * Source file for diva log facility
  */
 
 #include "sys.h"
index 0ba821ad2600335e427e6ba45982b2dc7c3a0ad9..763ecba4ef72979d0da425ad83087f37234d272f 100644 (file)
@@ -1,27 +1,13 @@
-
 /*
- *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.2  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
 #ifndef PC_H_INCLUDED
 #define PC_H_INCLUDED
 
index f6fa6733dc04bae559c704cc17691750d3b74768..660db8ec62ffbaaeb9d610e6ebb515eb9529a860 100644 (file)
@@ -1,27 +1,13 @@
-
 /*
- *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.0  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
 #ifndef PC_MAINT_H
 #define PC_MAINT_H
 
index 7634c7b7da943249d28cca3e837a85e8d3d43f93..3d79cc8c3cb846dcda3d586806c783abb082c618 100644 (file)
@@ -1,23 +1,10 @@
-
 /*
- *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.0  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index ee15449742ac5e855e8f28780002b7d5c1811115..e240cdda58472406bce4e969618a70f6a0b874b9 100644 (file)
@@ -1,28 +1,15 @@
-
 /*
+ * Diva Server PRI specific part of initialisation
  *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.5  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
-/* Diva Server PRI specific part of initialisation */
 #include "sys.h"
 #include "idi.h"
 #include "divas.h"
index e5141b856b0445e73bb06cf7c34136916ea806de..4c795d4bce22a10c57fe0b1b802d6625f737b281 100644 (file)
@@ -1,29 +1,15 @@
-
 /*
+ * Environment provided by system and miscellaneous definitions
  *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.2  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
-/* Environment provided by system and miscellaneous definitions */
-
 #if !defined(SYS_H)
 #define SYS_H
 
index dfbd7bda30708331003924eee00efa99e7b3359d..62b896ffb3da4550a4835d84aa16658092ffb723 100644 (file)
@@ -1,29 +1,13 @@
-
 /*
+ * Interface to Unix specific code for performing card I/O
  *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.6  
  *
- * 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, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
- * See the GNU General Public License for more details.
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- * 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.
- *
- */
-
-
-/*
- * Interface to Unix specific code for performing card I/O
  */
 
 #if !defined(UXIO_H)
index e89e3a6eced8c6b7907aca6d32b4ba49ba9871a3..b3cc1e82015b6196244bff94c7f8d5aceb509da7 100644 (file)
@@ -1,30 +1,14 @@
-
 /*
+ * Unix Eicon active card driver
+ * XLOG related functions
  *
  * Copyright (C) Eicon Technology Corporation, 2000.
  *
  * Eicon File Revision :    1.2  
  *
- * 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, or (at your option)
- * any later version.
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY 
- * 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.
- *
- */
-
-
-/*
- * Unix Eicon active card driver
- * XLOG related functions
  */
 
 #include "sys.h"
index c6cf3dd2df05a2c84755ad7c2704dd48a14a2d6a..453f536d6d90ca1f75e71ee700fdf44b5e7a74ce 100644 (file)
@@ -1,8 +1,12 @@
-/* $Id: amd7930.c,v 1.5.6.3 2001/06/11 22:08:37 kai Exp $
+/* $Id: amd7930.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
  * HiSax ISDN driver - chip specific routines for AMD 7930
  *
- * Author       Brent Baccala (baccala@FreeSoft.org)
+ * Author       Brent Baccala
+ * Copyright    by Brent Baccala <baccala@FreeSoft.org>
+ *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  *    - Existing ISDN HiSax driver provides all the smarts
  *    - it compiles, runs, talks to an isolated phone switch, connects
@@ -94,7 +98,7 @@
 #include "rawhdlc.h"
 #include <linux/interrupt.h>
 
-static const char *amd7930_revision = "$Revision: 1.5.6.3 $";
+static const char *amd7930_revision = "$Revision: 1.1.2.1 $";
 
 #define RCV_BUFSIZE    1024    /* Size of raw receive buffer in bytes */
 #define RCV_BUFBLKS    4       /* Number of blocks to divide buffer into
index 11154150db85aa873c161b1e30873f2db96efc78..073928867b38b9923094d58d4f14de7f5e09fb9c 100644 (file)
@@ -1,10 +1,12 @@
-/* $Id: arcofi.c,v 1.12.6.1 2001/02/16 16:43:25 kai Exp $
+/* $Id: arcofi.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * arcofi.c   Ansteuerung ARCOFI 2165
+ * Ansteuerung ARCOFI 2165
  *
- * Author     Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
  *
- * This file is (c) under GNU General Public License
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
  
index badf9f01000fe6e9e05bdbbe51fc748a72e9ff03..eb2ef1cb5a4d38b8f6b727fd8c2cffae901b8706 100644 (file)
@@ -1,10 +1,12 @@
-/* $Id: arcofi.h,v 1.6.6.1 2001/02/16 16:43:25 kai Exp $
+/* $Id: arcofi.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * arcofi.h   Ansteuerung ARCOFI 2165
+ * Ansteuerung ARCOFI 2165
  *
- * Author     Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
  *
- * This file is (c) under GNU General Public License
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
  
index f92ee9af00172bd6bf294594af786ce853b2a4ea..91323a29961f8f31c4067e0538ba81da8c3448fe 100644 (file)
@@ -1,12 +1,14 @@
-/* $Id: asuscom.c,v 1.11.6.2 2001/07/13 09:20:12 kai Exp $
+/* $Id: asuscom.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * asuscom.c     low level stuff for ASUSCOM NETWORK INC. ISDNLink cards
+ * low level stuff for ASUSCOM NETWORK INC. ISDNLink cards
  *
- * Author     Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
  *
- * Thanks to  ASUSCOM NETWORK INC. Taiwan and  Dynalink NL for informations
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- * This file is (c) under GNU General Public License
+ * Thanks to  ASUSCOM NETWORK INC. Taiwan and  Dynalink NL for information
  *
  */
 
@@ -20,7 +22,7 @@
 
 extern const char *CardType[];
 
-const char *Asuscom_revision = "$Revision: 1.11.6.2 $";
+const char *Asuscom_revision = "$Revision: 1.1.2.1 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index 66126727f50b92aa00a8a61114b189f168d287de..b9bff88f19b43516cd2a10489d0c842d22904830 100644 (file)
@@ -1,12 +1,15 @@
-/* $Id: avm_a1.c,v 2.13.6.1 2001/02/16 16:43:25 kai Exp $
+/* $Id: avm_a1.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * avm_a1.c     low level stuff for AVM A1 (Fritz) isdn cards
+ * low level stuff for AVM A1 (Fritz) isdn cards
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
  *
- * This file is (c) under GNU General Public License
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
+
 #define __NO_VERSION__
 #include <linux/init.h>
 #include "hisax.h"
@@ -15,7 +18,7 @@
 #include "isdnl1.h"
 
 extern const char *CardType[];
-static const char *avm_revision = "$Revision: 2.13.6.1 $";
+static const char *avm_revision = "$Revision: 1.1.2.1 $";
 
 #define         AVM_A1_STAT_ISAC       0x01
 #define         AVM_A1_STAT_HSCX       0x02
index c622e8ca7c27d93321b07a30d958164f11c03a43..b2c103f0ca602d1ffb3e7c543ed2f03e9385f28a 100644 (file)
@@ -1,14 +1,18 @@
-/* $Id: avm_a1p.c,v 2.7.6.1 2001/02/16 16:43:25 kai Exp $
+/* $Id: avm_a1p.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * avm_a1p.c    low level stuff for the following AVM cards:
- *              A1 PCMCIA
- *             FRITZ!Card PCMCIA
- *             FRITZ!Card PCMCIA 2.0
+ * low level stuff for the following AVM cards:
+ * A1 PCMCIA
+ * FRITZ!Card PCMCIA
+ * FRITZ!Card PCMCIA 2.0
  *
- * Author       Carsten Paeth (calle@calle.in-berlin.de)
+ * Author       Carsten Paeth
+ * Copyright    by Carsten Paeth     <calle@calle.de>
+ *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *  This file is (c) under GNU General Public License
  */
+
 #define __NO_VERSION__
 #include <linux/init.h>
 #include "hisax.h"
@@ -53,7 +57,7 @@
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
 
-static const char *avm_revision = "$Revision: 2.7.6.1 $";
+static const char *avm_revision = "$Revision: 1.1.2.1 $";
 
 static inline u_char
 ReadISAC(struct IsdnCardState *cs, u_char offset)
index 34f1141113f560ca43e897acef78b5d11d258550..7da21ad7a8e66111e77c4f5190215da458803b7c 100644 (file)
@@ -1,13 +1,17 @@
-/* $Id: avm_pci.c,v 1.22.6.5 2001/06/09 15:14:16 kai Exp $
+/* $Id: avm_pci.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * avm_pci.c    low level stuff for AVM Fritz!PCI and ISA PnP isdn cards
- *              Thanks to AVM, Berlin for informations
+ * low level stuff for AVM Fritz!PCI and ISA PnP isdn cards
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
  *
- * This file is (c) under GNU General Public License
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
+ * Thanks to AVM, Berlin for information
  *
  */
+
 #define __NO_VERSION__
 #include <linux/config.h>
 #include <linux/init.h>
@@ -19,7 +23,7 @@
 #include <linux/interrupt.h>
 
 extern const char *CardType[];
-static const char *avm_pci_rev = "$Revision: 1.22.6.5 $";
+static const char *avm_pci_rev = "$Revision: 1.1.2.1 $";
 
 #define  AVM_FRITZ_PCI         1
 #define  AVM_FRITZ_PNP         2
index aafea9f14a5174b1b4d3dc0034de8cd1a5b8fa0d..a2f8ca11d72c683f6c0260fbd972c8b1a9cb57c4 100644 (file)
@@ -1,12 +1,12 @@
-/* $Id: bkm_a4t.c,v 1.13.6.5 2001/07/18 16:02:15 kai Exp $
- * bkm_a4t.c    low level stuff for T-Berkom A4T
- *              derived from the original file sedlbauer.c
- *              derived from the original file niccy.c
- *              derived from the original file netjet.c
+/* $Id: bkm_a4t.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * Author       Roland Klabunde (R.Klabunde@Berkom.de)
+ * low level stuff for T-Berkom A4T
  *
- * This file is (c) under GNU General Public License
+ * Author       Roland Klabunde
+ * Copyright    by Roland Klabunde   <R.Klabunde@Berkom.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
@@ -25,7 +25,7 @@
 
 extern const char *CardType[];
 
-const char *bkm_a4t_revision = "$Revision: 1.13.6.5 $";
+const char *bkm_a4t_revision = "$Revision: 1.1.2.1 $";
 
 
 static inline u_char
index 09bd536b20ca9a5d108f796bac94cea315d03824..2566fb6f7c9c9d0e35f2ee7cfa93fba0ce65e187 100644 (file)
@@ -1,14 +1,15 @@
-/* $Id: bkm_a8.c,v 1.14.6.6 2001/07/18 16:02:15 kai Exp $
- * bkm_a8.c     low level stuff for Scitel Quadro (4*S0, passive)
- *              derived from the original file sedlbauer.c
- *              derived from the original file niccy.c
- *              derived from the original file netjet.c
+/* $Id: bkm_a8.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * Author       Roland Klabunde (R.Klabunde@Berkom.de)
+ * low level stuff for Scitel Quadro (4*S0, passive)
  *
- * This file is (c) under GNU General Public License
+ * Author       Roland Klabunde
+ * Copyright    by Roland Klabunde   <R.Klabunde@Berkom.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
+
 #define __NO_VERSION__
 
 #include <linux/config.h>
@@ -28,7 +29,7 @@
 
 extern const char *CardType[];
 
-const char sct_quadro_revision[] = "$Revision: 1.14.6.6 $";
+const char sct_quadro_revision[] = "$Revision: 1.1.2.1 $";
 
 static const char *sct_quadro_subtypes[] =
 {
index 17cab1215c2f5091537406595cb5b48bc37a9291..8cd72ad68b18fca154ce4a573f7cee1273cc326a 100644 (file)
@@ -1,9 +1,12 @@
-/* $Id: bkm_ax.h,v 1.5.6.2 2001/02/16 16:43:25 kai Exp $
- * bkm_ax.h   low level decls for T-Berkom cards A4T and Scitel Quadro (4*S0, passive)
+/* $Id: bkm_ax.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * Author     Roland Klabunde (R.Klabunde@Berkom.de)
+ * low level decls for T-Berkom cards A4T and Scitel Quadro (4*S0, passive)
  *
- * This file is (c) under GNU General Public License
+ * Author       Roland Klabunde
+ * Copyright    by Roland Klabunde   <R.Klabunde@Berkom.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 2f25292320e7045f712e0cf73c69c66a5839bb79..800b20201a427b302638fb056de1b334909e3f07 100644 (file)
@@ -1,17 +1,23 @@
-/* $Id: callc.c,v 2.51.6.4 2001/06/09 15:14:17 kai Exp $
+/* $Id: callc.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
- *              based on the teles driver from Jan den Ouden
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *             This file is (c) under GNU General Public License
- *             For changes and modifications please read
- *             ../../../Documentation/isdn/HiSax.cert
+ * For changes and modifications please read
+ * ../../../Documentation/isdn/HiSax.cert
+ *
+ * based on the teles driver from Jan den Ouden
  *
  * Thanks to    Jan den Ouden
  *              Fritz Elfert
  *
  */
+
 #define __NO_VERSION__
+#include <linux/module.h>
 #include <linux/init.h>
 #include "hisax.h"
 #include "../avmb1/capicmd.h"  /* this should be moved in a common place */
@@ -20,7 +26,7 @@
 #define MOD_USE_COUNT ( GET_USE_COUNT (&__this_module))
 #endif /* MODULE */
 
-const char *lli_revision = "$Revision: 2.51.6.4 $";
+const char *lli_revision = "$Revision: 1.1.2.1 $";
 
 extern struct IsdnCard cards[];
 extern int nrcards;
index af7c4e14c477aefc89828b540489990783e2b7a8..5cfa56e7a451a7abd21d30464ccf529349dc1ea5 100644 (file)
@@ -1,10 +1,13 @@
-/* $Id: cert.c,v 2.3.6.2 2001/07/27 09:08:27 kai Exp $
+/* $Id: cert.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *             This file is (c) under GNU General Public License
- *             For changes and modifications please read
- *             ../../../Documentation/isdn/HiSax.cert
+ * For changes and modifications please read
+ * ../../../Documentation/isdn/HiSax.cert
  *
  */
  
index 09a0afeed8e10eb9e5c43156c28ba35d3c367dca..c3e3fe8af093158e5abec0d4e582b0bc632db762 100644 (file)
@@ -1,11 +1,19 @@
-/* $Id: config.c,v 2.57.6.16 2001/07/13 09:01:00 kai Exp $
+/* $Id: config.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
- *              based on the teles driver from Jan den Ouden
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ *              by Kai Germaschewski <kai.germaschewski@gmx.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- * This file is (c) under GNU General Public License
+ * For changes and modifications please read
+ * ../../../Documentation/isdn/HiSax.cert
+ *
+ * based on the teles driver from Jan den Ouden
  *
  */
+
 #include <linux/types.h>
 #include <linux/stddef.h>
 #include <linux/timer.h>
@@ -364,7 +372,9 @@ static int irq[8]  = { 0, };
 static int mem[8]  = { 0, };
 static char *id  = HiSaxID;
 
+MODULE_DESCRIPTION("ISDN4Linux: Driver for passive ISDN cards");
 MODULE_AUTHOR("Karsten Keil");
+MODULE_LICENSE("GPL");
 MODULE_PARM(type, "1-8i");
 MODULE_PARM(protocol, "1-8i");
 MODULE_PARM(io, "1-8i");
index 69cdbffdd562937d58e3c96038cc6f5be61b2ea1..6fd51abe5490fd36ae7d0a3b63d6cdd3950c771f 100644 (file)
@@ -1,14 +1,17 @@
-/* $Id: diva.c,v 1.25.6.4 2001/02/16 16:43:25 kai Exp $
+/* $Id: diva.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * diva.c     low level stuff for Eicon.Diehl Diva Family ISDN cards
+ * low level stuff for Eicon.Diehl Diva Family ISDN cards
  *
- * Author     Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *             This file is (c) under GNU General Public License
- *             For changes and modifications please read
- *             ../../../Documentation/isdn/HiSax.cert
+ * For changes and modifications please read
+ * ../../../Documentation/isdn/HiSax.cert
  *
- * Thanks to Eicon Technology for documents and informations
+ * Thanks to Eicon Technology for documents and information
  *
  */
 
@@ -25,7 +28,7 @@
 
 extern const char *CardType[];
 
-const char *Diva_revision = "$Revision: 1.25.6.4 $";
+const char *Diva_revision = "$Revision: 1.1.2.1 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index 81ec61fefd1d13d4b34f3b36591b197fa035865b..d6d792ba4269dde6a14b6cfd45439328376fccd5 100644 (file)
@@ -1,14 +1,17 @@
-/* $Id: elsa.c,v 2.26.6.5 2001/07/18 16:25:12 kai Exp $
+/* $Id: elsa.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * elsa.c     low level stuff for Elsa isdn cards
+ * low level stuff for Elsa isdn cards
  *
- * Author     Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *             This file is (c) under GNU General Public License
- *             For changes and modifications please read
- *             ../../../Documentation/isdn/HiSax.cert
+ * For changes and modifications please read
+ * ../../../Documentation/isdn/HiSax.cert
  *
- * Thanks to    Elsa GmbH for documents and informations
+ * Thanks to    Elsa GmbH for documents and information
  *
  *              Klaus Lichtenwalder (Klaus.Lichtenwalder@WebForum.DE)
  *              for ELSA PCMCIA support
@@ -31,7 +34,7 @@
 
 extern const char *CardType[];
 
-const char *Elsa_revision = "$Revision: 2.26.6.5 $";
+const char *Elsa_revision = "$Revision: 1.1.2.1 $";
 const char *Elsa_Types[] =
 {"None", "PC", "PCC-8", "PCC-16", "PCF", "PCF-Pro",
  "PCMCIA", "QS 1000", "QS 3000", "Microlink PCI", "QS 3000 PCI", 
index 6a6a62d1c35a3071f0c0151c2a815f34b14b48e3..a205ef24b5ee719d43d3af748d1586515af6d376 100644 (file)
@@ -1,10 +1,12 @@
-/* $Id: elsa_ser.c,v 2.10.6.2 2001/06/09 15:14:17 kai Exp $
+/* $Id: elsa_ser.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
  * stuff for the serial modem on ELSA cards
  *
- * This file is (c) under GNU General Public License
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
+
 #include <linux/config.h>
 #include <linux/serial.h>
 #include <linux/serial_reg.h>
index d1f385ecaf506671870ade98251be58dce6a8b2a..7aa21f04890a02cdfa0b05e9f24f9502ea22b2e9 100644 (file)
@@ -1,15 +1,21 @@
-/* $Id: fsm.c,v 1.14.6.2 2001/05/26 15:19:57 kai Exp $
+/* $Id: fsm.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
- *              based on the teles driver from Jan den Ouden
+ * Finite state machine
+ *
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ *              by Kai Germaschewski <kai.germaschewski@gmx.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  * Thanks to    Jan den Ouden
  *              Fritz Elfert
  *
- * This file is (c) under GNU General Public License
- *
  */
+
 #define __NO_VERSION__
+#include <linux/module.h>
 #include <linux/init.h>
 #include "hisax.h"
 
index 38f8a79a523c5140ebfaff8e870e212991138c3f..a968b5db7ed9b5b071dbed2c7d2fe7093ec4f38b 100644 (file)
@@ -1,13 +1,16 @@
-/* $Id: gazel.c,v 2.11.6.6 2001/06/08 08:48:46 kai Exp $
+/* $Id: gazel.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * gazel.c     low level stuff for Gazel isdn cards
+ * low level stuff for Gazel isdn cards
  *
  * Author       BeWan Systems
  *              based on source code from Karsten Keil
- *
- * This file is (c) under GNU General Public License
+ * Copyright    by BeWan Systems
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
+
 #include <linux/config.h>
 #include <linux/init.h>
 #define __NO_VERSION__
@@ -20,7 +23,7 @@
 #include <linux/isdn_compat.h>
 
 extern const char *CardType[];
-const char *gazel_revision = "$Revision: 2.11.6.6 $";
+const char *gazel_revision = "$Revision: 1.1.2.1 $";
 
 #define R647      1
 #define R685      2
index 58fe5fc938a83bfd9ca8cda3d4a1ca8616acf122..7894665b0fc2c1d0256304ded8deab612a213ac9 100644 (file)
@@ -1,12 +1,15 @@
-/* $Id: hfc_2bds0.c,v 1.15.6.2 2001/06/09 15:14:17 kai Exp $
+/* $Id: hfc_2bds0.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- *  specific routines for CCD's HFC 2BDS0
+ * specific routines for CCD's HFC 2BDS0
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
- *
- * This file is (c) under GNU General Public License
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
+
 #define __NO_VERSION__
 #include <linux/init.h>
 #include "hisax.h"
index 7bb8f4dee2096faf7e243672c0a6d1e0af68349f..e1ce758eba3526c94f3957d8dc491d0cfffe018b 100644 (file)
@@ -1,10 +1,12 @@
-/* $Id: hfc_2bds0.h,v 1.4.6.1 2001/02/16 16:43:27 kai Exp $
+/* $Id: hfc_2bds0.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- *  specific defines for CCD's HFC 2BDS0
+ * specific defines for CCD's HFC 2BDS0
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
- *
- * This file is (c) under GNU General Public License
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index b1b63ed522fff2c67df99f0f1e23d4c13569207b..8e0322e79e8e24b8943a5cbdcafffb4c401b7fdf 100644 (file)
@@ -1,10 +1,12 @@
-/* $Id: hfc_2bs0.c,v 1.17.6.2 2001/06/09 15:14:17 kai Exp $
+/* $Id: hfc_2bs0.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- *  specific routines for CCD's HFC 2BS0
+ * specific routines for CCD's HFC 2BS0
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
- *
- * This file is (c) under GNU General Public License
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index f8f6391f328529c286f5d6ed0950191975303704..f821f0e1c473b746d7f11951d16a81e56610fa93 100644 (file)
@@ -1,10 +1,12 @@
-/* $Id: hfc_2bs0.h,v 1.3.6.1 2001/02/16 16:43:27 kai Exp $
+/* $Id: hfc_2bs0.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- *  specific defines for CCD's HFC 2BS0
+ * specific defines for CCD's HFC 2BS0
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
- *
- * This file is (c) under GNU General Public License
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 6b90d668033f35caf9ce9e9cc35400eb053e70c2..f841652da3349fcd26b9ec2011f31ce520061507 100644 (file)
@@ -1,27 +1,17 @@
-/* $Id: hfc_pci.c,v 1.34.6.7 2001/07/27 09:08:27 kai Exp $
-
- * hfc_pci.c     low level driver for CCD´s hfc-pci based cards
- *
- * Author     Werner Cornelius (werner@isdn4linux.de)
- *            based on existing driver for CCD hfc ISA cards
- *            type approval valid for HFC-S PCI A based card 
- *
- * Copyright 1999  by Werner Cornelius (werner@isdn-development.de)
- * Copyright 1999  by Karsten Keil (keil@isdn4linux.de)
+/* $Id: hfc_pci.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * 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, or (at your option)
- * any later version.
+ * low level driver for CCD´s hfc-pci based cards
  *
- * 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.
+ * Author       Werner Cornelius
+ *              based on existing driver for CCD hfc ISA cards
+ * Copyright    by Werner Cornelius  <werner@isdn4linux.de>
+ *              by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- * 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.
+ * For changes and modifications please read
+ * ../../../Documentation/isdn/HiSax.cert
  *
  */
 
@@ -37,7 +27,7 @@
 
 extern const char *CardType[];
 
-static const char *hfcpci_revision = "$Revision: 1.34.6.7 $";
+static const char *hfcpci_revision = "$Revision: 1.1.2.1 $";
 
 /* table entry in the PCI devices list */
 typedef struct {
@@ -113,7 +103,7 @@ release_io_hfcpci(struct IsdnCardState *cs)
 static void
 reset_hfcpci(struct IsdnCardState *cs)
 {
-       long flags;
+       unsigned long flags;
 
        save_flags(flags);
        cli();
@@ -481,7 +471,7 @@ hfcpci_empty_fifo_trans(struct BCState *bcs, bzfifo_type * bz, u_char * bdata)
 void
 main_rec_hfcpci(struct BCState *bcs)
 {
-       long flags;
+       unsigned long flags;
        struct IsdnCardState *cs = bcs->cs;
        int rcnt, real_fifo;
        int receive, count = 5;
@@ -558,7 +548,7 @@ main_rec_hfcpci(struct BCState *bcs)
 static void
 hfcpci_fill_dfifo(struct IsdnCardState *cs)
 {
-       long flags;
+       unsigned long flags;
        int fcnt;
        int count, new_z1, maxlen;
        dfifo_type *df;
@@ -873,7 +863,7 @@ hfcpci_auxcmd(struct IsdnCardState *cs, isdn_ctrl * ic)
 static void
 receive_emsg(struct IsdnCardState *cs)
 {
-       long flags;
+       unsigned long flags;
        int rcnt;
        int receive, count = 5;
        bzfifo_type *bz;
@@ -983,7 +973,7 @@ hfcpci_interrupt(int intno, void *dev_id, struct pt_regs *regs)
        u_char exval;
        struct BCState *bcs;
        int count = 15;
-       long flags;
+       unsigned long flags;
        u_char val, stat;
 
        if (!cs) {
@@ -1439,7 +1429,7 @@ static void
 hfcpci_l2l1(struct PStack *st, int pr, void *arg)
 {
        struct sk_buff *skb = arg;
-       long flags;
+       unsigned long flags;
 
        switch (pr) {
                case (PH_DATA | REQUEST):
@@ -1652,7 +1642,7 @@ inithfcpci(struct IsdnCardState *cs)
 static int
 hfcpci_card_msg(struct IsdnCardState *cs, int mt, void *arg)
 {
-       long flags;
+       unsigned long flags;
 
        if (cs->debug & L1_DEB_ISAC)
                debugl1(cs, "HFCPCI: card_msg %x", mt);
index 136eb20517aa1fd931cc55a0f608f0b90eab5cf4..d6b9efb79654b6d2a61cc658f2322653f2037ac8 100644 (file)
@@ -1,24 +1,12 @@
-/* $Id: hfc_pci.h,v 1.8.6.1 2001/04/08 19:32:26 kai Exp $
+/* $Id: hfc_pci.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- *  specific defines for CCD's HFC 2BDS0 PCI chips
+ * specific defines for CCD's HFC 2BDS0 PCI chips
  *
- * Author     Werner Cornelius (werner@isdn4linux.de)      
- *
- * Copyright 1999  by Werner Cornelius (werner@isdn4linux.de)
- *
- * 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, 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.
+ * Author       Werner Cornelius
+ * Copyright    by Werner Cornelius  <werner@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 45ce4598d02c7c34f0c6c8dfee5429c9785b514f..57a810bc4c5c381f9ad16d6a863b7e1d59f7393f 100644 (file)
@@ -1,25 +1,13 @@
-/* $Id: hfc_sx.c,v 1.9.6.2 2001/07/18 16:25:12 kai Exp $
-
- * hfc_sx.c     low level driver for CCD´s hfc-s+/sp based cards
- *
- * Author     Werner Cornelius (werner@isdn4linux.de)
- *            based on existing driver for CCD HFC PCI cards
- *
- * Copyright 1999  by Werner Cornelius (werner@isdn4linux.de)
- *
- * 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, or (at your option)
- * any later version.
+/* $Id: hfc_sx.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * 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.
+ * level driver for CCD´s hfc-s+/sp based cards
  *
- * 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.
+ * Author       Werner Cornelius
+ *              based on existing driver for CCD HFC PCI cards
+ * Copyright    by Werner Cornelius  <werner@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
@@ -32,7 +20,7 @@
 
 extern const char *CardType[];
 
-static const char *hfcsx_revision = "$Revision: 1.9.6.2 $";
+static const char *hfcsx_revision = "$Revision: 1.1.2.1 $";
 
 /***************************************/
 /* IRQ-table for CCDs demo board       */
@@ -382,7 +370,7 @@ static int set_fifo_size(struct IsdnCardState *cs)
 static void
 reset_hfcsx(struct IsdnCardState *cs)
 {
-       long flags;
+       unsigned long flags;
 
        save_flags(flags);
        cli();
@@ -539,7 +527,7 @@ receive_dmsg(struct IsdnCardState *cs)
 void
 main_rec_hfcsx(struct BCState *bcs)
 {
-       long flags;
+       unsigned long flags;
        struct IsdnCardState *cs = bcs->cs;
        int count = 5;
        struct sk_buff *skb;
@@ -783,7 +771,7 @@ hfcsx_interrupt(int intno, void *dev_id, struct pt_regs *regs)
        u_char exval;
        struct BCState *bcs;
        int count = 15;
-       long flags;
+       unsigned long flags;
        u_char val, stat;
 
        if (!cs) {
@@ -1228,7 +1216,7 @@ static void
 hfcsx_l2l1(struct PStack *st, int pr, void *arg)
 {
        struct sk_buff *skb = arg;
-       long flags;
+       unsigned long flags;
 
        switch (pr) {
                case (PH_DATA | REQUEST):
@@ -1441,7 +1429,7 @@ inithfcsx(struct IsdnCardState *cs)
 static int
 hfcsx_card_msg(struct IsdnCardState *cs, int mt, void *arg)
 {
-       long flags;
+       unsigned long flags;
 
        if (cs->debug & L1_DEB_ISAC)
                debugl1(cs, "HFCSX: card_msg %x", mt);
index 41c8056bcbfdfd280786f96a49463466b3cc7bdb..da4b8776d21234e4a7111d1979facaf816932045 100644 (file)
@@ -1,24 +1,13 @@
-/* $Id: hfc_sx.h,v 1.2 2000/06/26 08:59:13 keil Exp $
+/* $Id: hfc_sx.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- *  specific defines for CCD's HFC 2BDS0 S+,SP chips
+ * specific defines for CCD's HFC 2BDS0 S+,SP chips
  *
- * Author     Werner Cornelius (werner@isdn4linux.de)      
- *
- * Copyright 1999  by Werner Cornelius (werner@isdn4linux.de)
- *
- * 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, 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.
+ * Author       Werner Cornelius
+ *              based on existing driver for CCD HFC PCI cards
+ * Copyright    by Werner Cornelius  <werner@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index e98557cc4502d7b2b008ab761a7ca141ae9e2406..ee49ff308d257d5acfc1fa5cab4cba31cd297703 100644 (file)
@@ -1,10 +1,12 @@
-/* $Id: hfcscard.c,v 1.8.6.1 2001/02/16 16:43:27 kai Exp $
+/* $Id: hfcscard.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * hfcscard.c     low level stuff for hfcs based cards (Teles3c, ACER P10)
+ * low level stuff for hfcs based cards (Teles3c, ACER P10)
  *
- * Author     Karsten Keil (keil@isdn4linux.de)
- *
- * This file is (c) under GNU General Public License
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
@@ -16,7 +18,7 @@
 
 extern const char *CardType[];
 
-static const char *hfcs_revision = "$Revision: 1.8.6.1 $";
+static const char *hfcs_revision = "$Revision: 1.1.2.1 $";
 
 static void
 hfcs_interrupt(int intno, void *dev_id, struct pt_regs *regs)
index 86932774cd63b98bc7b760592e4ffee397f380ab..fde523e2bc8e8e122f20321fb16978732610ae84 100644 (file)
@@ -1,13 +1,12 @@
-/* $Id: hisax.h,v 2.52.6.7 2001/07/18 16:02:15 kai Exp $
+/* $Id: hisax.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- *   Basic declarations, defines and prototypes
+ * Basic declarations, defines and prototypes
  *
- * This file is (c) under GNU General Public License
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 #include <linux/config.h>
-#include <linux/module.h>
-#include <linux/version.h>
 #include <linux/errno.h>
 #include <linux/fs.h>
 #include <linux/major.h>
index 3ed37991c006820f46cd2a508afa095e22aa7b86..f71093f486ae463542d979ea653de30d90d21b83 100644 (file)
@@ -1,10 +1,12 @@
-/* $Id: hscx.c,v 1.21.6.2 2001/06/09 15:14:17 kai Exp $
+/* $Id: hscx.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * hscx.c   HSCX specific routines
+ * HSCX specific routines
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
- *
- * This file is (c) under GNU General Public License
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index bb1fd004d4757d063123e74e930184b14b698d42..d9ebff6212236ae8c8464e0a9d75aee8d327af8e 100644 (file)
@@ -1,10 +1,12 @@
-/* $Id: hscx.h,v 1.6.6.1 2001/02/16 16:43:27 kai Exp $
+/* $Id: hscx.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * hscx.h   HSCX specific defines
+ * HSCX specific defines
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
- *
- * This file is (c) under GNU General Public License
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 00cfe456d92ddc3266a6c4efdb6cee0c26bb2a0c..b45d7e9063a52ba1c3cea69d26e2aea396a4c601 100644 (file)
@@ -1,13 +1,15 @@
-/* $Id: hscx_irq.c,v 1.16.6.1 2001/02/16 16:43:27 kai Exp $
+/* $Id: hscx_irq.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * hscx_irq.c     low level b-channel stuff for Siemens HSCX
+ * low level b-channel stuff for Siemens HSCX
  *
- * Author     Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  * This is an include file for fast inline IRQ stuff
  *
- * This file is (c) under GNU General Public License
- *
  */
 
 
index cd6d7fd0e4664667ad0001b3a3be554efc54f977..b4493d15d5bd1184aba686b60c4b58c739569eb3 100644 (file)
@@ -1,18 +1,18 @@
-// $Id: icc.c,v 1.5.6.3 2001/06/09 15:14:17 kai Exp $
-//-----------------------------------------------------------------------------
-//
-// ICC specific routines
-//
-// Author       Matt Henderson & Guy Ellis - Traverse Tecnologies Pty Ltd
-//              www.traverse.com.au
-//
-// 1999.6.25 Initial implementation of routines for Siemens ISDN
-// Communication Controller PEB 2070 based on the ISAC routines
-// written by Karsten Keil.
-//
-// This file is (c) under GNU General Public License
-//
-//-----------------------------------------------------------------------------
+/* $Id: icc.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
+ *
+ * ICC specific routines
+ *
+ * Author       Matt Henderson & Guy Ellis
+ * Copyright    by Traverse Technologies Pty Ltd, www.travers.com.au
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
+ * 1999.6.25 Initial implementation of routines for Siemens ISDN
+ * Communication Controller PEB 2070 based on the ISAC routines
+ * written by Karsten Keil.
+ *
+ */
 
 #define __NO_VERSION__
 #include <linux/init.h>
index f624a63ab6a62579fb9c99bd93fad15caeb5f9f7..556d4c12a53a8e1e5e1a1f340b03c1e43a4c1283 100644 (file)
@@ -1,19 +1,17 @@
-// $Id: icc.h,v 1.2.6.2 2001/03/13 16:17:08 kai Exp $
-//-----------------------------------------------------------------------------
-//
-// ICC specific routines
-//
-// Author       Matt Henderson & Guy Ellis - Traverse Tecnologies Pty Ltd
-//              www.traverse.com.au
-//
-// 1999.7.14 Initial implementation of routines for Siemens ISDN 
-// Communication Controller PEB 2070 based on the ISAC routines 
-// written by Karsten Keil.
-//
-// This file is (c) under GNU General Public License
-//
-//-----------------------------------------------------------------------------
-
+/* $Id: icc.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
+ *
+ * ICC specific routines
+ *
+ * Author       Matt Henderson & Guy Ellis
+ * Copyright    by Traverse Technologies Pty Ltd, www.travers.com.au
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
+ * 1999.7.14 Initial implementation of routines for Siemens ISDN 
+ * Communication Controller PEB 2070 based on the ISAC routines 
+ * written by Karsten Keil.
+ */
 
 /* All Registers original Siemens Spec  */
 
index a46840be6677fdb86118daf336d93ca9ec22c9d1..2b5214041c2cf5ef87549f12c67016e8c90ab211 100644 (file)
@@ -1,14 +1,15 @@
-/* $Id: ipac.h,v 1.5.6.1 2001/02/16 16:43:27 kai Exp $
+/* $Id: ipac.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * ipac.h   IPAC specific defines
+ * IPAC specific defines
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
- *
- * This file is (c) under GNU General Public License
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
 /* All Registers original Siemens Spec  */
 
 #define IPAC_CONF      0xC0
index b9c0a7e9d8b6568df13a9fae6ccdb50de045c0ec..0bb31b1c24c9fa89f3d652e0c317857b45672634 100644 (file)
@@ -1,12 +1,16 @@
-/* $Id: isac.c,v 1.28.6.2 2001/06/09 15:14:17 kai Exp $
+/* $Id: isac.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * isac.c   ISAC specific routines
+ * ISAC specific routines
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
+ * For changes and modifications please read
+ * ../../../Documentation/isdn/HiSax.cert
  *
- *             This file is (c) under GNU General Public License
- *             For changes and modifications please read
- *             ../../../Documentation/isdn/HiSax.cert
  */
 
 #define __NO_VERSION__
index 928439f815ea050a67e82451f4765e06f109e48f..47860174c97b42b2fa31f52105d430b546e045da 100644 (file)
@@ -1,14 +1,15 @@
-/* $Id: isac.h,v 1.7.6.1 2001/02/16 16:43:27 kai Exp $
+/* $Id: isac.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * isac.h   ISAC specific defines
+ * ISAC specific defines
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
- *
- * This file is (c) under GNU General Public License
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-
 /* All Registers original Siemens Spec  */
 
 #define ISAC_MASK 0x20
index 43769e106ffb54c20e84d0761528eca93dc9ba31..976df7ff3e90667a4ab448053b37e9a296b2f1b3 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: isar.c,v 1.17.6.3 2001/06/09 15:14:17 kai Exp $
+/* $Id: isar.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
  * isar.c   ISAR (Siemens PSB 7110) specific routines
  *
index 509652784df074b9b2de4f041b096085861909ba..79f193c6916803ec20734618b50f035700cbd154 100644 (file)
@@ -1,10 +1,12 @@
-/* $Id: isar.h,v 1.9.6.1 2001/02/16 16:43:27 kai Exp $
+/* $Id: isar.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * isar.h   ISAR (Siemens PSB 7110) specific defines
+ * ISAR (Siemens PSB 7110) specific defines
  *
- * Author Karsten Keil (keil@isdn4linux.de)
- *
- * This file is (c) under GNU General Public License
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
  
index 792f9567d679830b36682a88a4037b88951ecbf9..facd7c47ee31638ac94515fd26788668834330e8 100644 (file)
@@ -1,13 +1,16 @@
-/* $Id: isdnl1.c,v 2.41.6.3 2001/05/26 15:19:57 kai Exp $
+/* $Id: isdnl1.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * isdnl1.c     common low level stuff for Siemens Chipsetbased isdn cards
- *              based on the teles driver from Jan den Ouden
+ * common low level stuff for Siemens Chipsetbased isdn cards
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
+ *              based on the teles driver from Jan den Ouden
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *             This file is (c) under GNU General Public License
- *             For changes and modifications please read
- *             ../../../Documentation/isdn/HiSax.cert
+ * For changes and modifications please read
+ * ../../../Documentation/isdn/HiSax.cert
  *
  * Thanks to    Jan den Ouden
  *              Fritz Elfert
@@ -15,7 +18,7 @@
  *
  */
 
-const char *l1_revision = "$Revision: 2.41.6.3 $";
+const char *l1_revision = "$Revision: 1.1.2.1 $";
 
 #define __NO_VERSION__
 #include <linux/init.h>
index 435638de1e7635a06e9cdebcb0b5f923b8fee9af..1527ea4cb9deb86001624c4dafb6a6f33531243d 100644 (file)
@@ -1,8 +1,9 @@
-/* $Id: isdnl1.h,v 2.9.6.1 2001/02/16 16:43:27 kai Exp $
+/* $Id: isdnl1.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
  * Layer 1 defines
  *
- * This file is (c) under GNU General Public License
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 18683236802f24f6f4a925b13cc02956477bfa74..8154664b68f283297910c5d0bebfad76dd709c16 100644 (file)
@@ -1,22 +1,26 @@
-/* $Id: isdnl2.c,v 2.25.6.3 2001/06/09 15:14:17 kai Exp $
+/* $Id: isdnl2.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
  *              based on the teles driver from Jan den Ouden
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *             This file is (c) under GNU General Public License
- *             For changes and modifications please read
- *             ../../../Documentation/isdn/HiSax.cert
+ * For changes and modifications please read
+ * ../../../Documentation/isdn/HiSax.cert
  *
  * Thanks to    Jan den Ouden
  *              Fritz Elfert
  *
  */
+
 #define __NO_VERSION__
 #include <linux/init.h>
 #include "hisax.h"
 #include "isdnl2.h"
 
-const char *l2_revision = "$Revision: 2.25.6.3 $";
+const char *l2_revision = "$Revision: 1.1.2.1 $";
 
 static void l2m_debug(struct FsmInst *fi, char *fmt, ...);
 
index 6a73943f65dfe153a2a5218857c171419116dc47..ad90ef0a4ef06ccd7ecb76d543d011d67c15bf05 100644 (file)
@@ -1,8 +1,9 @@
-/* $Id: isdnl2.h,v 1.3.6.1 2001/02/16 16:43:27 kai Exp $
+/* $Id: isdnl2.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
  * Layer 2 defines
  *
- * This file is (c) under GNU General Public License
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 5eaa9bfad15bce93431f6a2176bbaafeb8e935f1..1f46947377338593ff0aaa4cf0c996f24e159c82 100644 (file)
@@ -1,11 +1,14 @@
-/* $Id: isdnl3.c,v 2.17.6.4 2001/06/09 15:14:17 kai Exp $
+/* $Id: isdnl3.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
  *              based on the teles driver from Jan den Ouden
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *             This file is (c) under GNU General Public License
- *             For changes and modifications please read
- *             ../../../Documentation/isdn/HiSax.cert
+ * For changes and modifications please read
+ * ../../../Documentation/isdn/HiSax.cert
  *
  * Thanks to    Jan den Ouden
  *              Fritz Elfert
@@ -18,7 +21,7 @@
 #include "isdnl3.h"
 #include <linux/config.h>
 
-const char *l3_revision = "$Revision: 2.17.6.4 $";
+const char *l3_revision = "$Revision: 1.1.2.1 $";
 
 static struct Fsm l3fsm;
 
index be25d32ba80922d48c9a971d38ce50da0ec705aa..486828717f86fa3e3b27ba94668ceb8f9b4a09c4 100644 (file)
@@ -1,6 +1,7 @@
-/* $Id: isdnl3.h,v 2.6.6.1 2001/02/16 16:43:27 kai Exp $
+/* $Id: isdnl3.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * This file is (c) under GNU General Public License
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 1b6f4489d12a78c7cb6dce0b88f1e541f2957a82..9a6caf4e2a415de31b6a9771ba4725ec13d1b9fd 100644 (file)
@@ -1,10 +1,12 @@
-/* $Id: isurf.c,v 1.10.6.1 2001/02/16 16:43:27 kai Exp $
+/* $Id: isurf.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * isurf.c  low level stuff for Siemens I-Surf/I-Talk cards
+ * low level stuff for Siemens I-Surf/I-Talk cards
  *
- * Author     Karsten Keil (keil@isdn4linux.de)
- *
- * This file is (c) under GNU General Public License
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
@@ -17,7 +19,7 @@
 
 extern const char *CardType[];
 
-static const char *ISurf_revision = "$Revision: 1.10.6.1 $";
+static const char *ISurf_revision = "$Revision: 1.1.2.1 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index 770b94268522cdb733a9d180d6133a8ecd404d43..2d0cd339297d4044c1f2c9b0125ebd2fc6b3233d 100644 (file)
@@ -1,47 +1,22 @@
-/* $Id: ix1_micro.c,v 2.10.6.1 2001/02/16 16:43:27 kai Exp $
+/* $Id: ix1_micro.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * ix1_micro.c  low level stuff for ITK ix1-micro Rev.2 isdn cards
- *              derived from the original file teles3.c from Karsten Keil
+ * low level stuff for ITK ix1-micro Rev.2 isdn cards
+ * derived from the original file teles3.c from Karsten Keil
  *
- * Copyright (C) 1997 Klaus-Peter Nischke (ITK AG) (for the modifications to
- *                                                  the original file teles.c)
- *
- * Thanks to    Jan den Ouden
- *              Fritz Elfert
- *              Beat Doebeli
+ * Author       Klaus-Peter Nischke
+ * Copyright    by Klaus-Peter Nischke, ITK AG
+ *                                   <klaus@nischke.do.eunet.de>
+ *              by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
+ * Klaus-Peter Nischke
+ * Deusener Str. 287
+ * 44369 Dortmund
+ * Germany
  */
 
-/*
-   For the modification done by the author the following terms and conditions
-   apply (GNU General Public License)
-
-
-   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.
-
-
-   You may contact Klaus-Peter Nischke by email: klaus@nischke.do.eunet.de
-   or by conventional mail:
-
-   Klaus-Peter Nischke
-   Deusener Str. 287
-   44369 Dortmund
-   Germany
- */
-
-
 #define __NO_VERSION__
 #include <linux/init.h>
 #include "hisax.h"
@@ -50,7 +25,7 @@
 #include "isdnl1.h"
 
 extern const char *CardType[];
-const char *ix1_revision = "$Revision: 2.10.6.1 $";
+const char *ix1_revision = "$Revision: 1.1.2.1 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index 9a881c8f315d3332a075d3a34c3b8602ee352356..c46b63cee207a54d5bd50b2682213bc647227219 100644 (file)
@@ -1,10 +1,12 @@
-/* $Id: jade.c,v 1.6.6.2 2001/06/09 15:14:18 kai Exp $
+/* $Id: jade.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * jade.c   JADE stuff (derived from original hscx.c)
+ * JADE stuff (derived from original hscx.c)
  *
- * Author   Roland Klabunde (R.Klabunde@Berkom.de)
- *
- * This file is (c) under GNU General Public License
+ * Author       Roland Klabunde
+ * Copyright    by Roland Klabunde   <R.Klabunde@Berkom.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 81eb8ddf258274ad3183ad6f904acf597d5b07ac..f892869aaaa760ec0cd0651da1d89a45e3908515 100644 (file)
@@ -1,9 +1,12 @@
-/* $Id: jade.h,v 1.3.6.1 2001/02/16 16:43:27 kai Exp $
- * jade.h   JADE specific defines
+/* $Id: jade.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * Author   Roland Klabunde (R.Klabunde@Berkom.de)
+ * JADE specific defines
  *
- * This file is (c) under GNU General Public License
+ * Author       Roland Klabunde
+ * Copyright    by Roland Klabunde   <R.Klabunde@Berkom.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index dd400bddc9b7e6231dadf8ee4221fb40e76f4299..66739ad04a0b18a065acfc84b5196d91a06ddeef 100644 (file)
@@ -1,10 +1,12 @@
-/* $Id: jade_irq.c,v 1.5.6.1 2001/02/16 16:43:27 kai Exp $
+/* $Id: jade_irq.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * jade_irq.c   Low level JADE IRQ stuff (derived from original hscx_irq.c)
+ * Low level JADE IRQ stuff (derived from original hscx_irq.c)
  *
- * Author   Roland Klabunde (R.Klabunde@Berkom.de)
- *
- * This file is (c) under GNU General Public License
+ * Author       Roland Klabunde
+ * Copyright    by Roland Klabunde   <R.Klabunde@Berkom.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 6e05b5a60bc9b1d5982415f2541108b3de9d7603..02b31b4527c6e603221b41e0f25d269a8fae111f 100644 (file)
@@ -1,12 +1,15 @@
-/* $Id: l3_1tr6.c,v 2.13.6.1 2001/02/16 16:43:27 kai Exp $
+/* $Id: l3_1tr6.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- *  German 1TR6 D-channel protocol
+ * German 1TR6 D-channel protocol
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *             This file is (c) under GNU General Public License
- *             For changes and modifications please read
- *             ../../../Documentation/isdn/HiSax.cert
+ * For changes and modifications please read
+ * ../../../Documentation/isdn/HiSax.cert
  *
  */
 
@@ -17,7 +20,7 @@
 #include <linux/ctype.h>
 
 extern char *HiSax_getrev(const char *revision);
-const char *l3_1tr6_revision = "$Revision: 2.13.6.1 $";
+const char *l3_1tr6_revision = "$Revision: 1.1.2.1 $";
 
 #define MsgHead(ptr, cref, mty, dis) \
        *ptr++ = dis; \
index cfb6d7326d9dc7a0ad77fc81646169b11d658e94..bb86eb084b80fbc91b460fcb3abb3998be35aacb 100644 (file)
@@ -1,10 +1,12 @@
-/* $Id: l3_1tr6.h,v 2.2.6.1 2001/02/16 16:43:27 kai Exp $
+/* $Id: l3_1tr6.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- *  German 1TR6 D-channel protocol defines
+ * German 1TR6 D-channel protocol defines
  *
- * This file is (c) under GNU General Public License
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
+
 #ifndef l3_1tr6
 #define l3_1tr6
 
index 2ab9ed940e95eaa67796bfe98acaf5f115e53a69..e5ab44fa3c03d8757131264cb90afdd1973a6007 100644 (file)
@@ -1,13 +1,18 @@
-/* $Id: l3dss1.c,v 2.30.6.1 2001/02/16 16:43:27 kai Exp $
+/* $Id: l3dss1.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
  * EURO/DSS1 D-channel protocol
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
+ * German 1TR6 D-channel protocol
+ *
+ * Author       Karsten Keil
  *              based on the teles driver from Jan den Ouden
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *             This file is (c) under GNU General Public License
- *             For changes and modifications please read
- *             ../../../Documentation/isdn/HiSax.cert
+ * For changes and modifications please read
+ * ../../../Documentation/isdn/HiSax.cert
  *
  * Thanks to    Jan den Ouden
  *              Fritz Elfert
@@ -22,7 +27,7 @@
 #include <linux/config.h>
 
 extern char *HiSax_getrev(const char *revision);
-const char *dss1_revision = "$Revision: 2.30.6.1 $";
+const char *dss1_revision = "$Revision: 1.1.2.1 $";
 
 #define EXT_BEARER_CAPS 1
 
@@ -44,7 +49,8 @@ const char *dss1_revision = "$Revision: 2.30.6.1 $";
 static unsigned char new_invoke_id(struct PStack *p)
 {
        unsigned char retval;
-       int flags,i;
+       unsigned long flags;
+       int i;
   
        i = 32; /* maximum search depth */
 
@@ -72,7 +78,7 @@ static unsigned char new_invoke_id(struct PStack *p)
 /* free a used invoke id */
 /*************************/
 static void free_invoke_id(struct PStack *p, unsigned char id)
-{ int flags;
+{ unsigned long flags;
 
   if (!id) return; /* 0 = invalid value */
 
index 76207660c0102bc0117436235ffa2b7a06d4f856..c9994ec7bbe970d94fdeeea8510cce8ed97e9b72 100644 (file)
@@ -1,8 +1,9 @@
-/* $Id: l3dss1.h,v 1.10.6.1 2001/02/16 16:43:28 kai Exp $
+/* $Id: l3dss1.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- *  DSS1 (Euro) D-channel protocol defines
+ * DSS1 (Euro) D-channel protocol defines
  *
- * This file is (c) under GNU General Public License
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 86245b474d086d06cab3221a59c318f783f980cb..af197519acc7dee9cbfd2bfb111166de20fc1f71 100644 (file)
@@ -1,24 +1,23 @@
-// $Id: l3ni1.c,v 2.5.6.2 2001/02/16 16:43:28 kai Exp $
-//
-//-----------------------------------------------------------------------------
-//
-// NI1 D-channel protocol
-//
-// Authors:
-// Matt Henderson & Guy Ellis - Traverse Tecnologies Pty Ltd
-// www.traverse.com.au
-//
-// 2000.6.6 Initial implementation of routines for US NI1 
-// Layer 3 protocol based on the EURO/DSS1 D-channel protocol 
-// driver written by Karsten Keil et al.  
-// NI-1 Hall of Fame - Thanks to.... 
-// Ragnar Paulson - for some handy code fragments
-// Will Scales - beta tester extraordinaire
-// Brett Whittacre - beta tester and remote devel system in Vegas
-//
-// This file is (c) under GNU General Public License
-//
-//-----------------------------------------------------------------------------
+/* $Id: l3ni1.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
+ *
+ * NI1 D-channel protocol
+ *
+ * Author       Matt Henderson & Guy Ellis
+ * Copyright    by Traverse Technologies Pty Ltd, www.travers.com.au
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
+ * 2000.6.6 Initial implementation of routines for US NI1 
+ * Layer 3 protocol based on the EURO/DSS1 D-channel protocol 
+ * driver written by Karsten Keil et al.  
+ * NI-1 Hall of Fame - Thanks to.... 
+ * Ragnar Paulson - for some handy code fragments
+ * Will Scales - beta tester extraordinaire
+ * Brett Whittacre - beta tester and remote devel system in Vegas
+ *
+ */
+
 #define __NO_VERSION__
 #include "hisax.h"
 #include "isdnl3.h"
@@ -26,7 +25,7 @@
 #include <linux/ctype.h>
 
 extern char *HiSax_getrev(const char *revision);
-const char *ni1_revision = "$Revision: 2.5.6.2 $";
+const char *ni1_revision = "$Revision: 1.1.2.1 $";
 
 #define EXT_BEARER_CAPS 1
 
@@ -48,7 +47,8 @@ const char *ni1_revision = "$Revision: 2.5.6.2 $";
 static unsigned char new_invoke_id(struct PStack *p)
 {
        unsigned char retval;
-       int flags,i;
+       unsigned long flags;
+       int i;
   
        i = 32; /* maximum search depth */
 
@@ -76,7 +76,7 @@ static unsigned char new_invoke_id(struct PStack *p)
 /* free a used invoke id */
 /*************************/
 static void free_invoke_id(struct PStack *p, unsigned char id)
-{ int flags;
+{ unsigned long flags;
 
   if (!id) return; /* 0 = invalid value */
 
index 57410c1514a54e98abc0745ddd99c87e94b6a816..baeea34267a7012240b75b71d0b448ba172b5a0e 100644 (file)
@@ -1,20 +1,19 @@
-// $Id: l3ni1.h,v 2.3.6.1 2001/02/16 16:43:28 kai Exp $
-//-----------------------------------------------------------------------------
-//
-// NI1 D-channel protocol
-//
-// Author       Matt Henderson & Guy Ellis - Traverse Tecnologies Pty Ltd
-//              www.traverse.com.au
-//
-// 2000.6.6 Initial implementation of routines for US NI1 
-// Layer 3 protocol based on the EURO/DSS1 D-channel protocol 
-// driver written by Karsten Keil et al.  Thanks also for the 
-// code provided by Ragnar Paulson.
-//
-//
-// This file is (c) under GNU General Public License
-//
-//-----------------------------------------------------------------------------
+/* $Id: l3ni1.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
+ *
+ * NI1 D-channel protocol
+ *
+ * Author       Matt Henderson & Guy Ellis
+ * Copyright    by Traverse Technologies Pty Ltd, www.travers.com.au
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
+ * 2000.6.6 Initial implementation of routines for US NI1 
+ * Layer 3 protocol based on the EURO/DSS1 D-channel protocol 
+ * driver written by Karsten Keil et al.  Thanks also for the 
+ * code provided by Ragnar Paulson.
+ *
+ */
 
 #ifndef l3ni1_process
 
index c261ba6cdffef75f46d7a2f16bfc7d85a520ca0c..ca5db2bd05a52122289082c810f215a4aa410a5e 100644 (file)
@@ -1,10 +1,12 @@
-/* $Id: lmgr.c,v 1.7.6.1 2001/02/16 16:43:28 kai Exp $
+/* $Id: lmgr.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
+ * Layermanagement module
  *
- *  Layermanagement module
- *
- * This file is (c) under GNU General Public License
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index b38235d4116877e1fe2ea0308a748240596940e7..560f3f81bab1d4161a03f55e43942ca8e4bc39d6 100644 (file)
@@ -1,12 +1,12 @@
-/* $Id: mic.c,v 1.10.6.1 2001/02/16 16:43:28 kai Exp $
+/* $Id: mic.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * mic.c  low level stuff for mic cards
+ * low level stuff for mic cards
  *
- * Copyright (C) 1997 
- *
- * Author  Stephan von Krawczynski <skraw@ithnet.com>
- *
- * This file is (c) under GNU General Public License
+ * Author       Stephan von Krawczynski
+ * Copyright    by Stephan von Krawczynski <skraw@ithnet.com>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
@@ -19,7 +19,7 @@
 
 extern const char *CardType[];
 
-const char *mic_revision = "$Revision: 1.10.6.1 $";
+const char *mic_revision = "$Revision: 1.1.2.1 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index d37d9844800ea6809ced51001f5dac88b133e5b5..d92839b9b5b7ed4430633e24d6b37516bd81133e 100644 (file)
@@ -1,12 +1,14 @@
-/* $Id: netjet.c,v 1.24.6.5 2001/06/09 15:14:18 kai Exp $
+/* $Id: netjet.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * netjet.c     low level stuff for Traverse Technologie NETJet ISDN cards
+ * low level stuff for Traverse Technologie NETJet ISDN cards
  *
- * Author     Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- * Thanks to Traverse Technologie Australia for documents and informations
- *
- * This file is (c) under GNU General Public License
+ * Thanks to Traverse Technologie Australia for documents and information
  *
  */
 
@@ -22,7 +24,7 @@
 #include <asm/io.h>
 #include "netjet.h"
 
-const char *NETjet_revision = "$Revision: 1.24.6.5 $";
+const char *NETjet_revision = "$Revision: 1.1.2.1 $";
 
 /* Interface functions */
 
index f24f6992bf2197af85ebcaacfaf14ba9a4b01b61..0160c686127982d1ce375496bbf5d6fad2632434 100644 (file)
@@ -1,14 +1,16 @@
-// $Id: netjet.h,v 2.5.6.2 2001/02/16 16:43:28 kai Exp $
-//-----------------------------------------------------------------------------
-//
-// NETjet common header file
-//
-// Author       Kerstern Keil repackaged by
-//              Matt Henderson - Traverse Technologies P/L www.traverse.com.au
-//
-// This file is (c) under GNU General Public License
-//
-//-----------------------------------------------------------------------------
+/* $Id: netjet.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
+ *
+ * NETjet common header file
+ *
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ *              by Matt Henderson,
+ *                 Traverse Technologies P/L www.traverse.com.au
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
+ */
 
 extern const char *CardType[];
 
index 46758007530ce82a48f8dd53ba648cd4aeed0f44..8af634d177fde927281470b57664dae625416eed 100644 (file)
@@ -1,13 +1,15 @@
-/* $Id: niccy.c,v 1.15.6.4 2001/02/16 16:43:28 kai Exp $
+/* $Id: niccy.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * niccy.c  low level stuff for Dr. Neuhaus NICCY PnP and NICCY PCI and
- *          compatible (SAGEM cybermodem)
+ * low level stuff for Dr. Neuhaus NICCY PnP and NICCY PCI and
+ * compatible (SAGEM cybermodem)
  *
- * Author   Karsten Keil
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
  * 
- * Thanks to Dr. Neuhaus and SAGEM for informations
- *
- * This file is (c) under GNU General Public License
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ * 
+ * Thanks to Dr. Neuhaus and SAGEM for information
  *
  */
 
@@ -23,7 +25,7 @@
 #include <linux/isdn_compat.h>
 
 extern const char *CardType[];
-const char *niccy_revision = "$Revision: 1.15.6.4 $";
+const char *niccy_revision = "$Revision: 1.1.2.1 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index 628a91e738aaef9384d93931901c0e135c7e399a..a1f82603defc71eb1b2ec4b5d825e69a4a502d10 100644 (file)
@@ -1,7 +1,9 @@
-// $Id: nj_s.c,v 2.7.6.5 2001/07/18 16:25:12 kai Exp $
-//
-// This file is (c) under GNU General Public License
-//
+/* $Id: nj_s.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
+ *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
+ */
 
 #define __NO_VERSION__
 #include <linux/config.h>
@@ -15,7 +17,7 @@
 #include <linux/ppp_defs.h>
 #include "netjet.h"
 
-const char *NETjet_S_revision = "$Revision: 2.7.6.5 $";
+const char *NETjet_S_revision = "$Revision: 1.1.2.1 $";
 
 static u_char dummyrr(struct IsdnCardState *cs, int chan, u_char off)
 {
index 2015b2453eff95e8c8bc70cd07d115cbbb4254c3..130260b9e6a4eebe3998a3dc941002c2549d3ba7 100644 (file)
@@ -1,6 +1,7 @@
-/* $Id: nj_u.c,v 2.8.6.5 2001/07/18 16:25:12 kai Exp $ 
+/* $Id: nj_u.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $ 
  *
- * This file is (c) under GNU General Public License
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
@@ -16,7 +17,7 @@
 #include <linux/ppp_defs.h>
 #include "netjet.h"
 
-const char *NETjet_U_revision = "$Revision: 2.8.6.5 $";
+const char *NETjet_U_revision = "$Revision: 1.1.2.1 $";
 
 static u_char dummyrr(struct IsdnCardState *cs, int chan, u_char off)
 {
index 2f68e3224776191dd7f62bbd0f459aadff5341ca..1e428fed32eea9db364059fac179ae23a5619c14 100644 (file)
@@ -1,17 +1,17 @@
-/* $Id: q931.c,v 1.10.6.2 2001/03/13 16:17:08 kai Exp $
+/* $Id: q931.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * q931.c       code to decode ITU Q.931 call control messages
+ * code to decode ITU Q.931 call control messages
  *
  * Author       Jan den Ouden
+ * Copyright    by Jan den Ouden
  *
- * This file is (c) under GNU General Public License
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- * Changelog
+ * Changelog:
  *
  * Pauline Middelink    general improvements
- *
  * Beat Doebeli         cause texts, display information element
- *
  * Karsten Keil         cause texts, display information element for 1TR6
  *
  */
index 09e05f67718c80a52a9ae2d6d72e884d6d62367f..40bb0d0f63e7d92809f143f2390126c6955b7ebc 100644 (file)
@@ -1,11 +1,14 @@
-/* $Id: rawhdlc.c,v 1.5.6.1 2001/02/16 16:43:28 kai Exp $
+/* $Id: rawhdlc.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * rawhdlc.c     support routines for cards that don't support HDLC
+ * support routines for cards that don't support HDLC
  *
- * Author     Karsten Keil (keil@isdn4linux.de)
- *            Brent Baccala <baccala@FreeSoft.org>
+ * Author     Brent Baccala
+ * Copyright  by Karsten Keil <keil@isdn4linux.de>
+ *            by Brent Baccala <baccala@FreeSoft.org>
+ *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- * This file is (c) under GNU General Public License
  *
  * Some passive ISDN cards, such as the Traverse NETJet and the AMD 7930,
  * don't perform HDLC encapsulation over the B channel.  Drivers for
index 1ba38a51f52733eb8b1fb8b8d922a039415293fb..bceb322f6fd1ab870a55cfb9fa6f5423edaaa91c 100644 (file)
@@ -1,10 +1,10 @@
-/* $Id: rawhdlc.h,v 1.3.6.1 2001/02/16 16:43:29 kai Exp $
+/* $Id: rawhdlc.h,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * rawhdlc.h     support routines for cards that don't support HDLC
+ * Author     Brent Baccala
+ * Copyright  by Brent Baccala <baccala@FreeSoft.org>
  *
- * Author     Brent Baccala <baccala@FreeSoft.org>
- *
- * This file is (c) under GNU General Public License
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index fa965fe87c50e3aa5af24deb20527e5db10af252..399904bd67dba23665dfadada505a8ec14a45f93 100644 (file)
@@ -1,12 +1,15 @@
-/* $Id: s0box.c,v 2.4.6.1 2001/02/16 16:43:29 kai Exp $
+/* $Id: s0box.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * s0box.c      low level stuff for Creatix S0BOX
+ * low level stuff for Creatix S0BOX
  *
- * Author       S0BOX specific stuff: Enrik Berkhan (enrik@starfleet.inka.de)
+ * Author       Enrik Berkhan
+ * Copyright    by Enrik Berkhan <enrik@starfleet.inka.de>
  *
- * This file is (c) under GNU General Public License
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
+
 #define __NO_VERSION__
 #include <linux/init.h>
 #include "hisax.h"
@@ -15,7 +18,7 @@
 #include "isdnl1.h"
 
 extern const char *CardType[];
-const char *s0box_revision = "$Revision: 2.4.6.1 $";
+const char *s0box_revision = "$Revision: 1.1.2.1 $";
 
 static inline void
 writereg(unsigned int padr, signed int addr, u_char off, u_char val) {
index c243cef3b11b9df5397385eaef7d5aefd65bf66d..b0f1665d2e40fee4f220b411ecc6cfd0a36a9464 100644 (file)
@@ -1,16 +1,17 @@
-/* $Id: saphir.c,v 1.8.6.1 2001/02/16 16:43:29 kai Exp $
+/* $Id: saphir.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * saphir.c low level stuff for HST Saphir 1
+ * low level stuff for HST Saphir 1
  *
- * Author     Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  * Thanks to    HST High Soft Tech GmbH
  *
- * This file is (c) under GNU General Public License
- *
  */
 
-
 #define __NO_VERSION__
 #include <linux/init.h>
 #include "hisax.h"
@@ -19,7 +20,7 @@
 #include "isdnl1.h"
 
 extern const char *CardType[];
-static char *saphir_rev = "$Revision: 1.8.6.1 $";
+static char *saphir_rev = "$Revision: 1.1.2.1 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index f880fc87ab5362410d256311a0470fa69de2ca0f..cc00b84d5def0211bf621e70563d991d7ba0aae6 100644 (file)
@@ -1,23 +1,22 @@
-/* $Id: sedlbauer.c,v 1.25.6.5 2001/07/13 09:20:12 kai Exp $
+/* $Id: sedlbauer.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * sedlbauer.c  low level stuff for Sedlbauer cards
- *              includes support for the Sedlbauer speed star (speed star II),
- *              support for the Sedlbauer speed fax+,
- *              support for the Sedlbauer ISDN-Controller PC/104 and
- *              support for the Sedlbauer speed pci
- *              derived from the original file asuscom.c from Karsten Keil
+ * low level stuff for Sedlbauer cards
+ * includes support for the Sedlbauer speed star (speed star II),
+ * support for the Sedlbauer speed fax+,
+ * support for the Sedlbauer ISDN-Controller PC/104 and
+ * support for the Sedlbauer speed pci
+ * derived from the original file asuscom.c from Karsten Keil
  *
- * Copyright (C) 1997,1998 Marcus Niemann (for the modifications to
- *                                         the original file asuscom.c)
- *
- * Author     Marcus Niemann (niemann@www-bib.fh-bielefeld.de)
+ * Author       Marcus Niemann
+ * Copyright    by Marcus Niemann    <niemann@www-bib.fh-bielefeld.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  * Thanks to  Karsten Keil
  *            Sedlbauer AG for informations
  *            Edgar Toernig
  *
- * This file is (c) under GNU General Public License
- *
  */
 
 /* Supported cards:
@@ -53,7 +52,7 @@
 
 extern const char *CardType[];
 
-const char *Sedlbauer_revision = "$Revision: 1.25.6.5 $";
+const char *Sedlbauer_revision = "$Revision: 1.1.2.1 $";
 
 const char *Sedlbauer_Types[] =
        {"None", "speed card/win", "speed star", "speed fax+",
index 01877caa3c734828ae5425eca2fd080cbbf0d342..55bcf5dd4d3e844debf2a55be8a2fcaa0354e341 100644 (file)
@@ -1,12 +1,15 @@
-/* $Id: sportster.c,v 1.14.6.1 2001/02/16 16:43:29 kai Exp $
+/* $Id: sportster.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * sportster.c     low level stuff for USR Sportster internal TA
+ * low level stuff for USR Sportster internal TA
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  * Thanks to Christian "naddy" Weisgerber (3Com, US Robotics) for documentation
  *
- * This file is (c) under GNU General Public License
  *
  */
 #define __NO_VERSION__
@@ -17,7 +20,7 @@
 #include "isdnl1.h"
 
 extern const char *CardType[];
-const char *sportster_revision = "$Revision: 1.14.6.1 $";
+const char *sportster_revision = "$Revision: 1.1.2.1 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index b40cb12a2275d190b7612e58526bedf8a2ea77b2..dfe26ec6e898958cb4c1a21e62aaf6c11ca94492 100644 (file)
@@ -1,23 +1,27 @@
-/* $Id: tei.c,v 2.17.6.2 2001/05/26 15:19:57 kai Exp $
+/* $Id: tei.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
  *              based on the teles driver from Jan den Ouden
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *             This file is (c) under GNU General Public License
- *             For changes and modifications please read
- *             ../../../Documentation/isdn/HiSax.cert
+ * For changes and modifications please read
+ * ../../../Documentation/isdn/HiSax.cert
  *
  * Thanks to    Jan den Ouden
  *              Fritz Elfert
  *
  */
+
 #define __NO_VERSION__
 #include "hisax.h"
 #include "isdnl2.h"
 #include <linux/init.h>
 #include <linux/random.h>
 
-const char *tei_revision = "$Revision: 2.17.6.2 $";
+const char *tei_revision = "$Revision: 1.1.2.1 $";
 
 #define ID_REQUEST     1
 #define ID_ASSIGNED    2
index dc42b6d5c17503b4b31cbc7a6e5ea13ef52456de..6fdd0096f02a8a924cfcd523e93072643bc6fc89 100644 (file)
@@ -1,10 +1,12 @@
-/* $Id: teleint.c,v 1.14.6.1 2001/02/16 16:43:29 kai Exp $
+/* $Id: teleint.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * teleint.c     low level stuff for TeleInt isdn cards
+ * low level stuff for TeleInt isdn cards
  *
- * Author     Karsten Keil (keil@isdn4linux.de)
- *
- * This file is (c) under GNU General Public License
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
@@ -17,7 +19,7 @@
 
 extern const char *CardType[];
 
-const char *TeleInt_revision = "$Revision: 1.14.6.1 $";
+const char *TeleInt_revision = "$Revision: 1.1.2.1 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index 45f6cdea7fb6213cc1564b5e0fda2cb3f353d0e5..02b60614c36fc9ef89be214ba5452480a429cba4 100644 (file)
@@ -1,17 +1,20 @@
-/* $Id: teles0.c,v 2.13.6.1 2001/02/16 16:43:29 kai Exp $
+/* $Id: teles0.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * teles0.c     low level stuff for Teles Memory IO isdn cards
- *              based on the teles driver from Jan den Ouden
+ * low level stuff for Teles Memory IO isdn cards
  *
- * Author       Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
+ *              based on the teles driver from Jan den Ouden
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  * Thanks to    Jan den Ouden
  *              Fritz Elfert
  *              Beat Doebeli
  *
- * This file is (c) under GNU General Public License
- *
  */
+
 #define __NO_VERSION__
 #include <linux/init.h>
 #include "hisax.h"
@@ -21,7 +24,7 @@
 
 extern const char *CardType[];
 
-const char *teles0_revision = "$Revision: 2.13.6.1 $";
+const char *teles0_revision = "$Revision: 1.1.2.1 $";
 
 #define TELES_IOMEM_SIZE       0x400
 #define byteout(addr,val) outb(val,addr)
index 544401698af972de11a7736733fd9543526dceda..7433ec7c7094950372250ba8f16af5dcd8544d33 100644 (file)
@@ -1,17 +1,17 @@
-/* $Id: teles3.c,v 2.17.6.1 2001/02/16 16:43:29 kai Exp $
+/* $Id: teles3.c,v 1.1.2.1 2001/12/31 13:26:45 kai Exp $
  *
- * teles3.c     low level stuff for Teles 16.3 & PNP isdn cards
+ * low level stuff for Teles 16.3 & PNP isdn cards
  *
- *              based on the teles driver from Jan den Ouden
- *
- * Author       Karsten Keil (keil@isdn4linux.de)
+ * Author       Karsten Keil
+ * Copyright    by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  * Thanks to    Jan den Ouden
  *              Fritz Elfert
  *              Beat Doebeli
  *
- * This file is (c) under GNU General Public License
- *
  */
 #define __NO_VERSION__
 #include <linux/init.h>
@@ -21,7 +21,7 @@
 #include "isdnl1.h"
 
 extern const char *CardType[];
-const char *teles3_revision = "$Revision: 2.17.6.1 $";
+const char *teles3_revision = "$Revision: 1.1.2.1 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index 1bd46d445dfe1aec928d0dae1b71f6013293d576..3470141582e144b9825c092d1d6c6cb5e68b233f 100644 (file)
@@ -1,13 +1,17 @@
-/* $Id: telespci.c,v 2.16.6.4 2001/02/16 16:43:29 kai Exp $
+/* $Id: telespci.c,v 1.1.2.1 2001/12/31 13:26:46 kai Exp $
  *
- * telespci.c     low level stuff for Teles PCI isdn cards
+ * low level stuff for Teles PCI isdn cards
  *
- * Author       Ton van Rosmalen 
- *              Karsten Keil (keil@isdn4linux.de)
- *
- * This file is (c) under GNU General Public License
+ * Author       Ton van Rosmalen
+ *              Karsten Keil
+ * Copyright    by Ton van Rosmalen
+ *              by Karsten Keil      <keil@isdn4linux.de>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
+
 #define __NO_VERSION__
 #include <linux/init.h>
 #include <linux/config.h>
@@ -19,7 +23,7 @@
 #include <linux/isdn_compat.h>
 
 extern const char *CardType[];
-const char *telespci_revision = "$Revision: 2.16.6.4 $";
+const char *telespci_revision = "$Revision: 1.1.2.1 $";
 
 #define ZORAN_PO_RQ_PEN        0x02000000
 #define ZORAN_PO_WR    0x00800000
index cc374292da66c1926b2273ab137abcd79ff7c75e..6255a2cbc5b329d2a10abc7c41d539df93e5e7dc 100644 (file)
@@ -1,11 +1,12 @@
-/* $Id: w6692.c,v 1.12.6.5 2001/06/09 15:14:18 kai Exp $
+/* $Id: w6692.c,v 1.1.2.1 2001/12/31 13:26:46 kai Exp $
  *
- * w6692.c   Winbond W6692 specific routines
+ * Winbond W6692 specific routines
  *
- * Author       Petr Novak <petr.novak@i.cz>
- *              (based on HiSax driver by Karsten Keil)
- *
- *              This file is (c) under GNU General Public License
+ * Author       Petr Novak
+ * Copyright    by Petr Novak        <petr.novak@i.cz>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
@@ -36,7 +37,7 @@ static const PCI_ENTRY id_list[] =
 
 extern const char *CardType[];
 
-const char *w6692_revision = "$Revision: 1.12.6.5 $";
+const char *w6692_revision = "$Revision: 1.1.2.1 $";
 
 #define DBUSY_TIMER_VALUE 80
 
index 977ae341d2d90a2ef0edaa1c9412e99939871fd6..b2b51db8ee3f52c1ce163931e5e89acf6f1ba072 100644 (file)
@@ -1,10 +1,12 @@
-/* $Id: w6692.h,v 1.2.6.1 2001/02/16 16:43:29 kai Exp $
+/* $Id: w6692.h,v 1.1.2.1 2001/12/31 13:26:46 kai Exp $
  *
- * w6692.h   Winbond W6692 specific defines
+ * Winbond W6692 specific defines
  *
- * Author       Petr Novak <petr.novak@i.cz>
- *
- * This file is (c) under GNU General Public License
+ * Author       Petr Novak
+ * Copyright    by Petr Novak        <petr.novak@i.cz>
+ * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index d95f98231edda0dc4068872f0080e3db2d68cc0f..3c39a8a73e5f37890b69dbfcfbe4877c225943d3 100644 (file)
@@ -1,41 +1,25 @@
-/* $Id: boardergo.c,v 1.5.6.5 2001/07/18 16:02:16 kai Exp $
-
+/* $Id: boardergo.c,v 1.1.2.1 2001/12/31 13:26:46 kai Exp $
+ *
  * Linux driver for HYSDN cards, specific routines for ergo type boards.
  *
+ * Author    Werner Cornelius (werner@titro.de) for Hypercope GmbH
+ * Copyright 1999 by Werner Cornelius (werner@titro.de)
+ *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
  * As all Linux supported cards Champ2, Ergo and Metro2/4 use the same
  * DPRAM interface and layout with only minor differences all related
  * stuff is done here, not in separate modules.
  *
- * written by Werner Cornelius (werner@titro.de) for Hypercope GmbH
- *
- * Copyright 1999  by Werner Cornelius (werner@titro.de)
- *
- * 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, 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.
- *
  */
 
-#define __NO_VERSION__
 #include <linux/config.h>
-#include <linux/module.h>
-#include <linux/version.h>
-#include <asm/io.h>
 #include <linux/signal.h>
 #include <linux/kernel.h>
 #include <linux/ioport.h>
-#include <linux/interrupt.h>
 #include <linux/vmalloc.h>
+#include <asm/io.h>
 
 #include "hysdn_defs.h"
 #include "boardergo.h"
index ea3c744b4a22278b80ec7f778e68eb15fb46e390..57b68e4b3b7e4856a206770e9bcadb2836398057 100644 (file)
@@ -1,23 +1,12 @@
-/* $Id: boardergo.h,v 1.2 2000/11/13 22:51:47 kai Exp $
-
- * Linux driver for HYSDN cards, definitions for ergo type boards (buffers..).
- * written by Werner Cornelius (werner@titro.de) for Hypercope GmbH
+/* $Id: boardergo.h,v 1.1.2.1 2001/12/31 13:26:46 kai Exp $
  *
- * Copyright 1999  by Werner Cornelius (werner@titro.de)
- *
- * 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, or (at your option)
- * any later version.
+ * Linux driver for HYSDN cards, definitions for ergo type boards (buffers..).
  *
- * 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.
+ * Author    Werner Cornelius (werner@titro.de) for Hypercope GmbH
+ * Copyright 1999 by Werner Cornelius (werner@titro.de)
  *
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 9c2e3f4ca4eeafb7c61c676435013a0eb6ff48d0..bb35aa76dd0b8a075f231dc9aa4fbc4dd396fafa 100644 (file)
@@ -1,23 +1,12 @@
-/* $Id: hycapi.c,v 1.8.6.3 2001/05/26 15:19:58 kai Exp $
+/* $Id: hycapi.c,v 1.1.2.1 2001/12/31 13:26:46 kai Exp $
  *
  * Linux driver for HYSDN cards, CAPI2.0-Interface.
- * written by Ulrich Albrecht (u.albrecht@hypercope.de) for Hypercope GmbH
  *
+ * Author    Ulrich Albrecht <u.albrecht@hypercope.de> for Hypercope GmbH
  * Copyright 2000 by Hypercope GmbH
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
@@ -41,7 +30,7 @@
 #include "hysdn_defs.h"
 #include <linux/kernelcapi.h>
 
-static char hycapi_revision[]="$Revision: 1.8.6.3 $";
+static char hycapi_revision[]="$Revision: 1.1.2.1 $";
 
 unsigned int hycapi_enable = 0xffffffff; 
 MODULE_PARM(hycapi_enable, "i");
index 8c5517e2195a0effd7f1b06ab04c62aeccc1910a..96062d056ded9b283a3a0a5eb7022b0e5f534714 100644 (file)
@@ -1,30 +1,16 @@
-/* $Id: hysdn_boot.c,v 1.4.6.3 2001/03/13 16:17:09 kai Exp $
-
- * Linux driver for HYSDN cards, specific routines for booting and pof handling.
- *
- * written by Werner Cornelius (werner@titro.de) for Hypercope GmbH
- *
- * Copyright 1999  by Werner Cornelius (werner@titro.de)
+/* $Id: hysdn_boot.c,v 1.1.2.1 2001/12/31 13:26:46 kai Exp $
  *
- * 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, or (at your option)
- * any later version.
+ * Linux driver for HYSDN cards
+ * specific routines for booting and pof handling
  *
- * 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.
+ * Author    Werner Cornelius (werner@titro.de) for Hypercope GmbH
+ * Copyright 1999 by Werner Cornelius (werner@titro.de)
  *
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-#define __NO_VERSION__
-#include <linux/module.h>
-#include <linux/version.h>
 #include <linux/vmalloc.h>
 #include <linux/slab.h>
 #include <asm/uaccess.h>
index 95a5e446a7b960f424861e5ab27ea1ee41303380..69ff73f4b6783cee889b625c5a3c592e41908ab0 100644 (file)
@@ -1,23 +1,13 @@
-/* $Id: hysdn_defs.h,v 1.5.6.2 2001/04/20 02:42:00 keil Exp $
-
- * Linux driver for HYSDN cards, global definitions and exported vars and functions.
- * written by Werner Cornelius (werner@titro.de) for Hypercope GmbH
- *
- * Copyright 1999  by Werner Cornelius (werner@titro.de)
+/* $Id: hysdn_defs.h,v 1.1.2.1 2001/12/31 13:26:46 kai Exp $
  *
- * 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, or (at your option)
- * any later version.
+ * Linux driver for HYSDN cards
+ * global definitions and exported vars and functions.
  *
- * 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.
+ * Author    Werner Cornelius (werner@titro.de) for Hypercope GmbH
+ * Copyright 1999 by Werner Cornelius (werner@titro.de)
  *
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 0e47d3e2e93913d3f36da2ea4e68541368efeafb..b92833507eb9e4f2f4237aaf1a33478049cf1d0b 100644 (file)
@@ -1,23 +1,12 @@
-/* $Id: hysdn_init.c,v 1.6.6.5 2001/02/16 16:43:30 kai Exp $
-
- * Linux driver for HYSDN cards, init functions.
- * written by Werner Cornelius (werner@titro.de) for Hypercope GmbH
- *
- * Copyright 1999  by Werner Cornelius (werner@titro.de)
+/* $Id: hysdn_init.c,v 1.1.2.1 2001/12/31 13:26:46 kai Exp $
  *
- * 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, or (at your option)
- * any later version.
+ * Linux driver for HYSDN cards, init functions.
  *
- * 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.
+ * Author    Werner Cornelius (werner@titro.de) for Hypercope GmbH
+ * Copyright 1999 by Werner Cornelius (werner@titro.de)
  *
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
 
 #include "hysdn_defs.h"
 
-static char *hysdn_init_revision = "$Revision: 1.6.6.5 $";
+MODULE_DESCRIPTION("ISDN4Linux: Driver for HYSDN cards");
+MODULE_AUTHOR("Werner Cornelius");
+MODULE_LICENSE("GPL");
+
+static char *hysdn_init_revision = "$Revision: 1.1.2.1 $";
 int cardmax;                   /* number of found cards */
 hysdn_card *card_root = NULL;  /* pointer to first card */
 
index 41e2775fa40bc6f8bd6ace3ab3285ba36ac13c0b..4ff648fec50cf0b63aaccf644aa8d4d87ba91d13 100644 (file)
@@ -1,28 +1,16 @@
-/* $Id: hysdn_net.c,v 1.8.6.3 2001/06/05 19:45:37 kai Exp $
-
+/* $Id: hysdn_net.c,v 1.1.2.1 2001/12/31 13:26:46 kai Exp $
+ *
  * Linux driver for HYSDN cards, net (ethernet type) handling routines.
  *
- * written by Werner Cornelius (werner@titro.de) for Hypercope GmbH
+ * Author    Werner Cornelius (werner@titro.de) for Hypercope GmbH
+ * Copyright 1999 by Werner Cornelius (werner@titro.de)
  *
- * Copyright 1999  by Werner Cornelius (werner@titro.de)
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  * This net module has been inspired by the skeleton driver from
  * Donald Becker (becker@CESDIS.gsfc.nasa.gov)
  *
- * 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, 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.
- *
  */
 
 #define __NO_VERSION__
@@ -41,7 +29,7 @@ unsigned int hynet_enable = 0xffffffff;
 MODULE_PARM(hynet_enable, "i");
 
 /* store the actual version for log reporting */
-char *hysdn_net_revision = "$Revision: 1.8.6.3 $";
+char *hysdn_net_revision = "$Revision: 1.1.2.1 $";
 
 #define MAX_SKB_BUFFERS 20     /* number of buffers for keeping TX-data */
 
index 524b7a0ae9c54e9af8fde2ed73a81c114a36c973..4762f787cde2296fe871a48d82501877732d1686 100644 (file)
@@ -1,23 +1,12 @@
-/* $Id: hysdn_pof.h,v 1.2 2000/11/13 22:51:47 kai Exp $
-
- * Linux driver for HYSDN cards, definitions used for handling pof-files.
- * written by Werner Cornelius (werner@titro.de) for Hypercope GmbH
+/* $Id: hysdn_pof.h,v 1.1.2.1 2001/12/31 13:26:46 kai Exp $
  *
- * Copyright 1999  by Werner Cornelius (werner@titro.de)
- *
- * 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, or (at your option)
- * any later version.
+ * Linux driver for HYSDN cards, definitions used for handling pof-files.
  *
- * 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.
+ * Author    Werner Cornelius (werner@titro.de) for Hypercope GmbH
+ * Copyright 1999 by Werner Cornelius (werner@titro.de)
  *
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index ff7739bce8e4f31ab20b158f41b8cc8025e6a30a..dddfd5af8f5105ad2c7e0161df538aea5a828082 100644 (file)
@@ -1,23 +1,13 @@
-/* $Id: hysdn_procconf.c,v 1.8.6.3 2001/08/13 07:46:15 kai Exp $
-
+/* $Id: hysdn_procconf.c,v 1.1.2.1 2001/12/31 13:26:46 kai Exp $
+ *
  * Linux driver for HYSDN cards, /proc/net filesystem dir and conf functions.
+ *
  * written by Werner Cornelius (werner@titro.de) for Hypercope GmbH
  *
  * Copyright 1999  by Werner Cornelius (werner@titro.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
@@ -30,7 +20,7 @@
 
 #include "hysdn_defs.h"
 
-static char *hysdn_procconf_revision = "$Revision: 1.8.6.3 $";
+static char *hysdn_procconf_revision = "$Revision: 1.1.2.1 $";
 
 #define INFO_OUT_LEN 80                /* length of info line including lf */
 
@@ -464,4 +454,4 @@ hysdn_procconf_release(void)
        }
 
        remove_proc_entry(PROC_SUBDIR_NAME, proc_net);
-}                              /* hysdn_procfs_release */
+}
index a4a81ef53f08f836cb5c6e9970c7048a12443f1e..f8cdd94b8a68dca75554862abc91251171698ef0 100644 (file)
@@ -1,23 +1,12 @@
-/* $Id: hysdn_proclog.c,v 1.9.6.2 2001/08/13 07:46:15 kai Exp $
-
- * Linux driver for HYSDN cards, /proc/net filesystem log functions.
- * written by Werner Cornelius (werner@titro.de) for Hypercope GmbH
+/* $Id: hysdn_proclog.c,v 1.1.2.1 2001/12/31 13:26:46 kai Exp $
  *
- * Copyright 1999  by Werner Cornelius (werner@titro.de)
- *
- * 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, or (at your option)
- * any later version.
+ * Linux driver for HYSDN cards, /proc/net filesystem log functions.
  *
- * 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.
+ * Author    Werner Cornelius (werner@titro.de) for Hypercope GmbH
+ * Copyright 1999 by Werner Cornelius (werner@titro.de)
  *
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index c6066bb853901f447dd4a42106db8b4560ab3f65..90dd840c4d102040ab91f0e4a685f3d40781399a 100644 (file)
@@ -1,36 +1,21 @@
-/* $Id: hysdn_sched.c,v 1.5.6.2 2001/04/20 02:42:00 keil Exp $
-
- * Linux driver for HYSDN cards, scheduler routines for handling exchange card <-> pc.
- *
- * written by Werner Cornelius (werner@titro.de) for Hypercope GmbH
- *
- * Copyright 1999  by Werner Cornelius (werner@titro.de)
+/* $Id: hysdn_sched.c,v 1.1.2.1 2001/12/31 13:26:46 kai Exp $
  *
- * 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, or (at your option)
- * any later version.
+ * Linux driver for HYSDN cards
+ * scheduler routines for handling exchange card <-> pc.
  *
- * 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.
+ * Author    Werner Cornelius (werner@titro.de) for Hypercope GmbH
+ * Copyright 1999 by Werner Cornelius (werner@titro.de)
  *
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-#define __NO_VERSION__
 #include <linux/config.h>
-#include <linux/module.h>
-#include <linux/version.h>
-#include <asm/io.h>
 #include <linux/signal.h>
 #include <linux/kernel.h>
 #include <linux/ioport.h>
-#include <linux/interrupt.h>
+#include <asm/io.h>
 
 #include "hysdn_defs.h"
 
index 9f9d3104dd2809a8e764910ba3fa945d8be75959..4a115a87c78216220ec21056da7f2e943a9baad4 100644 (file)
@@ -1,18 +1,20 @@
+/*
+ * Linux driver for HYSDN cards
+ * common definitions for both sides of the bus:
+ * - conventions both spoolers must know
+ * - channel numbers agreed upon
+ *
+ * Author    M. Steinkopf
+ * Copyright 1999 by M. Steinkopf
+ *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
+ */
+
 #ifndef __INCE1PC_H__
 #define __INCE1PC_H__
 
-/****************************************************************************
-
-    FILE:       ince1pc.h
-
-    AUTHOR:     M.Steinkopf
-
-    PURPOSE:    common definitions for both sides of the bus:
-               - conventions both spoolers must know
-               - channel numbers agreed upon
-
-*****************************************************************************/ 
-
 /*  basic scalar definitions have same meanning,
  *  but their declaration location depends on environment
  */ 
index d6069cc0fe1513a8f871d72d2092a7464daec78a..e5acf15129c7ca7978b5f82db6b203d9bd7e261f 100644 (file)
@@ -1,28 +1,35 @@
-/* $Id: icn.c,v 1.65.6.5 2001/06/09 15:14:19 kai Exp $
-
+/* $Id: icn.c,v 1.1.2.1 2001/12/31 13:26:47 kai Exp $
+ *
  * ISDN low-level module for the ICN active ISDN-Card.
  *
  * Copyright 1994,95,96 by Fritz Elfert (fritz@isdn4linux.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
 #include "icn.h"
+#include <linux/module.h>
 #include <linux/init.h>
 
+static int portbase = ICN_BASEADDR;
+static unsigned long membase = ICN_MEMADDR;
+static char *icn_id = "\0";
+static char *icn_id2 = "\0";
+
+MODULE_DESCRIPTION("ISDN4Linux: Driver for ICN active ISDN card");
+MODULE_AUTHOR("Fritz Elfert");
+MODULE_LICENSE("GPL");
+MODULE_PARM(portbase, "i");
+MODULE_PARM_DESC(portbase, "Port address of first card");
+MODULE_PARM(membase, "l");
+MODULE_PARM_DESC(membase, "Shared memory address of all cards");
+MODULE_PARM(icn_id, "s");
+MODULE_PARM_DESC(icn_id, "ID-String of first card");
+MODULE_PARM(icn_id2, "s");
+MODULE_PARM_DESC(icn_id2, "ID-String of first card, second S0 (4B only)");
+
 /*
  * Verbose bootcode- and protocol-downloading.
  */
@@ -34,7 +41,7 @@
 #undef MAP_DEBUG
 
 static char
-*revision = "$Revision: 1.65.6.5 $";
+*revision = "$Revision: 1.1.2.1 $";
 
 static int icn_addcard(int, char *, char *);
 
index 789b7deb987ac3f19823c060f2f8ca91138721e6..774ed015908dee1e75ce55926da7e1f3fa086d8b 100644 (file)
@@ -1,22 +1,11 @@
-/* $Id: icn.h,v 1.30.6.3 2001/04/20 02:42:01 keil Exp $
-
+/* $Id: icn.h,v 1.1.2.1 2001/12/31 13:26:47 kai Exp $
+ *
  * ISDN lowlevel-module for the ICN active ISDN-Card.
  *
  * Copyright 1994 by Fritz Elfert (fritz@isdn4linux.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
@@ -46,7 +35,6 @@ typedef struct icn_cdef {
 #ifdef __KERNEL__
 /* Kernel includes */
 
-#include <linux/module.h>
 #include <linux/version.h>
 #include <linux/errno.h>
 #include <linux/fs.h>
@@ -206,27 +194,6 @@ static u_char chan2bank[] =
 
 static icn_dev dev;
 
-/* With modutils >= 1.1.67 Integers can be changed while loading a
- * module. For this reason define the Port-Base an Shmem-Base as
- * integers.
- */
-static int portbase = ICN_BASEADDR;
-static unsigned long membase = ICN_MEMADDR;
-static char *icn_id = "\0";
-static char *icn_id2 = "\0";
-
-#ifdef MODULE
-MODULE_AUTHOR("Fritz Elfert");
-MODULE_PARM(portbase, "i");
-MODULE_PARM_DESC(portbase, "Port address of first card");
-MODULE_PARM(membase, "l");
-MODULE_PARM_DESC(membase, "Shared memory address of all cards");
-MODULE_PARM(icn_id, "s");
-MODULE_PARM_DESC(icn_id, "ID-String of first card");
-MODULE_PARM(icn_id2, "s");
-MODULE_PARM_DESC(icn_id2, "ID-String of first card, second S0 (4B only)");
-#endif
-
 #endif                          /* __KERNEL__ */
 
 /* Utility-Macros */
index e8850ee95107e87b383dc12de8179a25a7cd623d..74dd666fa4599e8136e50806bbf3522f0dd8350d 100644 (file)
@@ -1,34 +1,21 @@
-/* $Id: isdn_audio.c,v 1.21 2000/06/20 18:01:55 keil Exp $
-
+/* $Id: isdn_audio.c,v 1.1.2.1 2001/12/31 13:26:34 kai Exp $
+ *
  * Linux ISDN subsystem, audio conversion and compression (linklevel).
  *
  * Copyright 1994-1999 by Fritz Elfert (fritz@isdn4linux.de)
  * DTMF code (c) 1996 by Christian Mock (cm@kukuruz.ping.at)
  * Silence detection (c) 1998 by Armin Schindler (mac@gismo.telekom.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-#define __NO_VERSION__
-#include <linux/module.h>
 #include <linux/isdn.h>
 #include "isdn_audio.h"
 #include "isdn_common.h"
 
-char *isdn_audio_revision = "$Revision: 1.21 $";
+char *isdn_audio_revision = "$Revision: 1.1.2.1 $";
 
 /*
  * Misc. lookup-tables.
index 09c1651b1b13436c6d367e8d9ecc9528f3ada536..285d34954a4e59fe44dc189e38df845da5a0fac5 100644 (file)
@@ -1,22 +1,11 @@
-/* $Id: isdn_audio.h,v 1.9 2000/05/11 22:29:20 kai Exp $
-
+/* $Id: isdn_audio.h,v 1.1.2.1 2001/12/31 13:26:34 kai Exp $
+ *
  * Linux ISDN subsystem, audio conversion and compression (linklevel).
  *
  * Copyright 1994-1999 by Fritz Elfert (fritz@isdn4linux.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index c702fedb94ec1d1e2f2bd64be127de316700aea7..0fcb0c351bdc2387ae1a70a81dd82dde706459c8 100644 (file)
@@ -4,8 +4,14 @@
  * Patched version for ISDN syncPPP written 1997/1998 by Michael Hipp
  * The whole module is now SKB based.
  *
- * Compile with:
- *  gcc -O2 -I/usr/src/linux/include -D__KERNEL__ -DMODULE -c isdn_bsdcomp.c
+ */
+
+/*
+ * Update: The Berkeley copyright was changed, and the change 
+ * is retroactive to all "true" BSD software (ie everything
+ * from UCB as opposed to other peoples code that just carried
+ * the same license). The new copyright doesn't clash with the
+ * GPL, so the module-only restriction has been removed..
  */
 
 /*
@@ -82,7 +88,6 @@
 
 #include <linux/isdn.h>
 #include <linux/isdn_ppp.h>
-/* #include <linux/netprotocol.h> */
 #include <linux/ip.h>
 #include <linux/tcp.h>
 #include <linux/if_arp.h>
@@ -90,6 +95,9 @@
 
 #include "isdn_ppp.h"
 
+MODULE_DESCRIPTION("ISDN4Linux: BSD Compression for PPP over ISDN");
+MODULE_LICENSE("Dual BSD/GPL");
+
 #define BSD_VERSION(x) ((x) >> 5)
 #define BSD_NBITS(x)   ((x) & 0x1F)
 
index 24a2256e37ebd047edc64f4d31f58bc7f32dcace..57ee90d9260f253e69d4eca4f9b571447c7cd339 100644 (file)
@@ -1,24 +1,13 @@
-/* $Id: isdn_common.c,v 1.114.6.12 2001/06/09 15:14:15 kai Exp $
-
+/* $Id: isdn_common.c,v 1.1.2.1 2001/12/31 13:26:34 kai Exp $
+ *
  * Linux ISDN subsystem, common used functions (linklevel).
  *
  * Copyright 1994-1999  by Fritz Elfert (fritz@isdn4linux.de)
  * Copyright 1995,96    Thinking Objects Software GmbH Wuerzburg
  * Copyright 1995,96    by Michael Hipp (Michael.Hipp@student.uni-tuebingen.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
 /* Debugflags */
 #undef ISDN_DEBUG_STATCALLB
 
+MODULE_DESCRIPTION("ISDN4Linux: link layer");
+MODULE_AUTHOR("Fritz Elfert");
+MODULE_LICENSE("GPL");
+
 isdn_dev *dev;
 
-static char *isdn_revision = "$Revision: 1.114.6.12 $";
+static char *isdn_revision = "$Revision: 1.1.2.1 $";
 
 extern char *isdn_net_revision;
 extern char *isdn_tty_revision;
@@ -277,7 +270,7 @@ isdn_timer_funct(ulong dummy)
        }
        if (tf) 
        {
-               int flags;
+               unsigned long flags;
 
                save_flags(flags);
                cli();
@@ -289,7 +282,8 @@ isdn_timer_funct(ulong dummy)
 void
 isdn_timer_ctrl(int tf, int onoff)
 {
-       int flags, old_tflags;
+       unsigned long flags;
+       int old_tflags;
 
        save_flags(flags);
        cli();
@@ -1644,7 +1638,7 @@ isdn_open(struct inode *ino, struct file *filep)
        if (minor == ISDN_MINOR_STATUS) {
                infostruct *p;
 
-               if ((p = (infostruct *) kmalloc(sizeof(infostruct), GFP_KERNEL))) {
+               if ((p = kmalloc(sizeof(infostruct), GFP_KERNEL))) {
                        p->next = (char *) dev->infochain;
                        p->private = (char *) &(filep->private_data);
                        dev->infochain = p;
@@ -1996,7 +1990,7 @@ isdn_add_channels(driver *d, int drvidx, int n, int adding)
 
        if ((adding) && (d->rcverr))
                kfree(d->rcverr);
-       if (!(d->rcverr = (int *) kmalloc(sizeof(int) * m, GFP_KERNEL))) {
+       if (!(d->rcverr = kmalloc(sizeof(int) * m, GFP_KERNEL))) {
                printk(KERN_WARNING "register_isdn: Could not alloc rcverr\n");
                return -1;
        }
@@ -2004,7 +1998,7 @@ isdn_add_channels(driver *d, int drvidx, int n, int adding)
 
        if ((adding) && (d->rcvcount))
                kfree(d->rcvcount);
-       if (!(d->rcvcount = (int *) kmalloc(sizeof(int) * m, GFP_KERNEL))) {
+       if (!(d->rcvcount = kmalloc(sizeof(int) * m, GFP_KERNEL))) {
                printk(KERN_WARNING "register_isdn: Could not alloc rcvcount\n");
                if (!adding) kfree(d->rcverr);
                return -1;
@@ -2016,8 +2010,7 @@ isdn_add_channels(driver *d, int drvidx, int n, int adding)
                        skb_queue_purge(&d->rpqueue[j]);
                kfree(d->rpqueue);
        }
-       if (!(d->rpqueue =
-             (struct sk_buff_head *) kmalloc(sizeof(struct sk_buff_head) * m, GFP_KERNEL))) {
+       if (!(d->rpqueue = kmalloc(sizeof(struct sk_buff_head) * m, GFP_KERNEL))) {
                printk(KERN_WARNING "register_isdn: Could not alloc rpqueue\n");
                if (!adding) {
                        kfree(d->rcvcount);
@@ -2031,8 +2024,7 @@ isdn_add_channels(driver *d, int drvidx, int n, int adding)
 
        if ((adding) && (d->rcv_waitq))
                kfree(d->rcv_waitq);
-       d->rcv_waitq = (wait_queue_head_t *)
-               kmalloc(sizeof(wait_queue_head_t) * 2 * m, GFP_KERNEL);
+       d->rcv_waitq = kmalloc(sizeof(wait_queue_head_t) * 2 * m, GFP_KERNEL);
        if (!d->rcv_waitq) {
                printk(KERN_WARNING "register_isdn: Could not alloc rcv_waitq\n");
                if (!adding) {
@@ -2156,7 +2148,7 @@ register_isdn(isdn_if * i)
                printk(KERN_WARNING "register_isdn: No write routine given.\n");
                return 0;
        }
-       if (!(d = (driver *) kmalloc(sizeof(driver), GFP_KERNEL))) {
+       if (!(d = kmalloc(sizeof(driver), GFP_KERNEL))) {
                printk(KERN_WARNING "register_isdn: Could not alloc driver-struct\n");
                return 0;
        }
@@ -2297,7 +2289,7 @@ static int __init isdn_init(void)
  */
 static void  isdn_exit(void)
 {
-       int flags;
+       unsigned long flags;
        int i;
 
 #ifdef CONFIG_ISDN_PPP
index 3ee69282447ba9c3ce4ec488a9728f88e7bb7047..4a84462ece79b830aaf37cb66aa3e8c1f0125a42 100644 (file)
@@ -1,24 +1,14 @@
-/* $Id: isdn_common.h,v 1.21 2000/11/25 17:00:59 kai Exp $
-
- * header for Linux ISDN subsystem, common used functions and debugging-switches (linklevel).
+/* $Id: isdn_common.h,v 1.1.2.1 2001/12/31 13:26:34 kai Exp $
+ *
+ * header for Linux ISDN subsystem
+ * common used functions and debugging-switches (linklevel).
  *
  * Copyright 1994-1999  by Fritz Elfert (fritz@isdn4linux.de)
  * Copyright 1995,96    by Thinking Objects Software GmbH Wuerzburg
  * Copyright 1995,96    by Michael Hipp (Michael.Hipp@student.uni-tuebingen.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 8b971a7700be3cf2e496134e15e34e29be59f743..3fae41d0bc11e14df385a4b4327d580fe9b7d8f4 100644 (file)
@@ -1,20 +1,9 @@
-/* $Id: isdn_concap.c,v 1.8 2000/05/11 22:29:20 kai Exp $
+/* $Id: isdn_concap.c,v 1.1.2.1 2001/12/31 13:26:34 kai Exp $
+ * 
  * Linux ISDN subsystem, protocol encapsulation
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 507b05e4226f6b71ad371248613015fe1bea02e8..d7cfb2d99e666e4b3da385303c0786e1ec649d03 100644 (file)
@@ -1,20 +1,9 @@
-/* $Id: isdn_concap.h,v 1.3 2000/05/11 22:29:20 kai Exp $
+/* $Id: isdn_concap.h,v 1.1.2.1 2001/12/31 13:26:34 kai Exp $
  *
  * Linux ISDN subsystem, protocol encapsulation
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 468041e24ca3518267baf9c726bc20779611aa78..039eec66e4c1553b930f438c7f899b30b5957a4a 100644 (file)
@@ -1,35 +1,20 @@
-/* $Id: isdn_net.c,v 1.140.6.8 2001/08/14 14:04:21 kai Exp $
-
+/* $Id: isdn_net.c,v 1.1.2.1 2001/12/31 13:26:34 kai Exp $
+ *
  * Linux ISDN subsystem, network interfaces and related functions (linklevel).
  *
  * Copyright 1994-1998  by Fritz Elfert (fritz@isdn4linux.de)
  * Copyright 1995,96    by Thinking Objects Software GmbH Wuerzburg
  * Copyright 1995,96    by Michael Hipp (Michael.Hipp@student.uni-tuebingen.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- */
-
-/* Jan 2001: fix CISCO HDLC      Bjoern A. Zeeb <i4l@zabbadoz.net>
+ * Jan 2001: fix CISCO HDLC      Bjoern A. Zeeb <i4l@zabbadoz.net>
  *           for info on the protocol, see 
  *           http://i4l.zabbadoz.net/i4l/cisco-hdlc.txt
  */
 
 #include <linux/config.h>
-#define __NO_VERSION__
-#include <linux/module.h>
 #include <linux/isdn.h>
 #include <net/arp.h>
 #include <net/dst.h>
@@ -191,7 +176,7 @@ static int isdn_net_start_xmit(struct sk_buff *, struct device *);
 static void isdn_net_ciscohdlck_connected(isdn_net_local *lp);
 static void isdn_net_ciscohdlck_disconnected(isdn_net_local *lp);
 
-char *isdn_net_revision = "$Revision: 1.140.6.8 $";
+char *isdn_net_revision = "$Revision: 1.1.2.1 $";
 
  /*
   * Code for raw-networking over ISDN
@@ -301,7 +286,7 @@ isdn_net_bind_channel(isdn_net_local * lp, int idx)
 static void
 isdn_net_unbind_channel(isdn_net_local * lp)
 {
-       ulong flags;
+       unsigned long flags;
 
        save_flags(flags);
        cli();
@@ -349,7 +334,7 @@ isdn_net_autohup()
        anymore = 0;
        while (p) {
                isdn_net_local *l = p->local;
-               if ((jiffies - last_jiffies) == 0)
+               if (jiffies == last_jiffies)
                        l->cps = l->transcount;
                else
                        l->cps = (l->transcount * HZ) / (jiffies - last_jiffies);
@@ -368,9 +353,9 @@ isdn_net_autohup()
                        {
                                if (l->hupflags & ISDN_MANCHARGE &&
                                    l->hupflags & ISDN_CHARGEHUP) {
-                                       while (jiffies - l->chargetime > l->chargeint)
+                                       while (time_after(jiffies, l->chargetime + l->chargeint))
                                                l->chargetime += l->chargeint;
-                                       if (jiffies - l->chargetime >= l->chargeint - 2 * HZ)
+                                       if (time_after(jiffies, l->chargetime + l->chargeint - 2 * HZ))
                                                if (l->outgoing || l->hupflags & ISDN_INHUP)
                                                        isdn_net_hangup(&p->dev);
                                } else if (l->outgoing) {
@@ -379,7 +364,7 @@ isdn_net_autohup()
                                                        printk(KERN_DEBUG "isdn_net: Hupflags of %s are %X\n",
                                                               l->name, l->hupflags);
                                                        isdn_net_hangup(&p->dev);
-                                               } else if (jiffies - l->chargetime > l->chargeint) {
+                                               } else if (time_after(jiffies, l->chargetime + l->chargeint)) {
                                                        printk(KERN_DEBUG
                                                               "isdn_net: %s: chtime = %lu, chint = %d\n",
                                                               l->name, l->chargetime, l->chargeint);
@@ -584,7 +569,7 @@ isdn_net_dial(void)
        isdn_net_dev *p = dev->netdev;
        int anymore = 0;
        int i;
-       int flags;
+       unsigned long flags;
        isdn_ctrl cmd;
 
        while (p) {
@@ -615,7 +600,7 @@ isdn_net_dial(void)
                                anymore = 1;
 
                                if(lp->dialtimeout > 0)
-                                       if(lp->dialstarted == 0 || jiffies > (lp->dialstarted + lp->dialtimeout + lp->dialwait)) {
+                                       if(lp->dialstarted == 0 || time_after(jiffies, lp->dialstarted + lp->dialtimeout + lp->dialwait)) {
                                                lp->dialstarted = jiffies;
                                                lp->dialwait_timer = 0;
                                        }
@@ -675,7 +660,7 @@ isdn_net_dial(void)
                                        printk(KERN_INFO "%s: Open leased line ...\n", lp->name);
                                } else {
                                        if(lp->dialtimeout > 0)
-                                               if(jiffies > (lp->dialstarted + lp->dialtimeout)) {
+                                               if (time_after(jiffies, lp->dialstarted + lp->dialtimeout)) {
                                                        restore_flags(flags);
                                                        lp->dialwait_timer = jiffies + lp->dialwait;
                                                        lp->dialstarted = 0;
@@ -1117,7 +1102,7 @@ isdn_net_xmit(struct device *ndev, struct sk_buff *skb)
                                lp->sqfull_stamp = jiffies;
                        } else {
                                /* subsequent overload: if slavedelay exceeded, start dialing */
-                               if ((jiffies - lp->sqfull_stamp) > lp->slavedelay) {
+                               if (time_after(jiffies, lp->sqfull_stamp + lp->slavedelay)) {
                                        slp = lp->slave->priv;
                                        if (!(slp->flags & ISDN_NET_CONNECTED)) {
                                                isdn_net_force_dial_lp((isdn_net_local *) lp->slave->priv);
@@ -1126,7 +1111,7 @@ isdn_net_xmit(struct device *ndev, struct sk_buff *skb)
                        }
                }
        } else {
-               if (lp->sqfull && ((jiffies - lp->sqfull_stamp) > (lp->slavedelay + (10 * HZ)))) {
+               if (lp->sqfull && time_after(jiffies, lp->sqfull_stamp + lp->slavedelay + (10 * HZ))) {
                        lp->sqfull = 0;
                }
                /* this is a hack to allow auto-hangup for slaves on moderate loads */
@@ -1227,11 +1212,11 @@ isdn_net_start_xmit(struct sk_buff *skb, struct device *ndev)
                                cli();
 
                                if(lp->dialwait_timer <= 0)
-                                       if(lp->dialstarted > 0 && lp->dialtimeout > 0 && jiffies < lp->dialstarted + lp->dialtimeout + lp->dialwait)
+                                       if(lp->dialstarted > 0 && lp->dialtimeout > 0 && time_before(jiffies, lp->dialstarted + lp->dialtimeout + lp->dialwait))
                                                lp->dialwait_timer = lp->dialstarted + lp->dialtimeout + lp->dialwait;
 
                                if(lp->dialwait_timer > 0) {
-                                       if(jiffies < lp->dialwait_timer) {
+                                       if(time_before(jiffies, lp->dialwait_timer)) {
                                                isdn_net_unreachable(ndev, skb, "dial rejected: retry-time not reached");
                                                dev_kfree_skb(skb);
                                                restore_flags(flags);
@@ -2775,7 +2760,7 @@ isdn_net_setcfg(isdn_net_ioctl_cfg * cfg)
                        chidx = lp->pre_channel;
                }
                if (cfg->exclusive > 0) {
-                       int flags;
+                       unsigned long flags;
 
                        /* If binding is exclusive, try to grab the channel */
                        save_flags(flags);
@@ -3031,7 +3016,7 @@ isdn_net_delphone(isdn_net_ioctl_phone * phone)
        int inout = phone->outgoing & 1;
        isdn_net_phone *n;
        isdn_net_phone *m;
-       int flags;
+       unsigned long flags;
 
        if (p) {
                save_flags(flags);
@@ -3067,7 +3052,7 @@ isdn_net_rmallphone(isdn_net_dev * p)
 {
        isdn_net_phone *n;
        isdn_net_phone *m;
-       int flags;
+       unsigned long flags;
        int i;
 
        save_flags(flags);
@@ -3116,7 +3101,7 @@ isdn_net_force_hangup(char *name)
 static int
 isdn_net_realrm(isdn_net_dev * p, isdn_net_dev * q)
 {
-       int flags;
+       unsigned long flags;
 
        save_flags(flags);
        cli();
@@ -3202,7 +3187,7 @@ isdn_net_rm(char *name)
 int
 isdn_net_rmall(void)
 {
-       int flags;
+       unsigned long flags;
        int ret;
 
        /* Walk through netdev-chain */
index 135fcb099ad4956a3d599d9554fe3d3c66c124cc..52bdf9f30dd9ddc76f2d608fb49333c0585d1844 100644 (file)
@@ -1,24 +1,13 @@
-/* $Id: isdn_net.h,v 1.19.6.2 2001/08/14 14:04:21 kai Exp $
-
+/* $Id: isdn_net.h,v 1.1.2.1 2001/12/31 13:26:34 kai Exp $
+ *
  * header for Linux ISDN subsystem, network related functions (linklevel).
  *
  * Copyright 1994-1999  by Fritz Elfert (fritz@isdn4linux.de)
  * Copyright 1995,96    by Thinking Objects Software GmbH Wuerzburg
  * Copyright 1995,96    by Michael Hipp (Michael.Hipp@student.uni-tuebingen.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 1d4749157b22a35ee5cfbb4629e1353aa0777a3e..d5d081932b6c7b974cd8874e0162b3861656d2ff 100644 (file)
@@ -1,31 +1,17 @@
-/* $Id: isdn_ppp.c,v 1.85.6.6 2001/07/27 09:08:27 kai Exp $
+/* $Id: isdn_ppp.c,v 1.1.2.1 2001/12/31 13:26:34 kai Exp $
  *
  * Linux ISDN subsystem, functions for synchronous PPP (linklevel).
  *
  * Copyright 1995,96 by Michael Hipp (Michael.Hipp@student.uni-tuebingen.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
 #include <linux/config.h>
-#define __NO_VERSION__
-#include <linux/module.h>
-#include <linux/version.h>
-#include <linux/poll.h>
 #include <linux/isdn.h>
+#include <linux/poll.h>
 #include <linux/isdn_compat.h>
 #include <linux/ppp-comp.h>
 
@@ -84,7 +70,7 @@ static void isdn_ppp_mp_cleanup( isdn_net_local * lp );
 static int isdn_ppp_bundle(struct ippp_struct *, int unit);
 #endif /* CONFIG_ISDN_MPP */
   
-char *isdn_ppp_revision = "$Revision: 1.85.6.6 $";
+char *isdn_ppp_revision = "$Revision: 1.1.2.1 $";
 
 static struct ippp_struct *ippp_table[ISDN_MAX_CHANNELS];
 
@@ -992,7 +978,7 @@ isdn_ppp_push_higher(isdn_net_dev * net_dev, isdn_net_local * lp, struct sk_buff
                printk(KERN_DEBUG "push, skb %d %04x\n", (int) skb->len, proto);
                isdn_ppp_frame_log("rpush", skb->data, skb->len, 32,is->unit,lp->ppp_slot);
        }
-       if (is->compflags & SC_DECOMP_ON) {
+       if (mis->compflags & SC_DECOMP_ON) {
                skb = isdn_ppp_decompress(skb, is, mis, &proto);
                if (!skb) // decompression error
                        return;
@@ -1008,6 +994,10 @@ isdn_ppp_push_higher(isdn_net_dev * net_dev, isdn_net_local * lp, struct sk_buff
                                printk(KERN_DEBUG "isdn_ppp: IP\n");
                        skb->protocol = htons(ETH_P_IP);
                        break;
+               case PPP_COMP:
+               case PPP_COMPFRAG:
+                       printk(KERN_INFO "isdn_ppp: unexpected compressed frame dropped\n");
+                       goto drop_packet;
 #ifdef CONFIG_ISDN_PPP_VJ
                case PPP_VJC_UNCOMP:
                        if (is->debug & 0x20)
@@ -1231,8 +1221,15 @@ isdn_ppp_xmit(struct sk_buff *skb, struct device *netdev)
        /*
         * normal (single link) or bundle compression
         */
-       if(ipts->compflags & SC_COMP_ON)
-               skb = isdn_ppp_compress(skb,&proto,ipt,ipts,0);
+       if(ipts->compflags & SC_COMP_ON) {
+               /* We send compressed only if both down- und upstream
+                  compression is negotiated, that means, CCP is up */
+               if(ipts->compflags & SC_DECOMP_ON) {
+                       skb = isdn_ppp_compress(skb,&proto,ipt,ipts,0);
+               } else {
+                       printk(KERN_DEBUG "isdn_ppp: CCP not yet up - sending as-is\n");
+               }
+       }
 
        if (ipt->debug & 0x24)
                printk(KERN_DEBUG "xmit2 skb, len %d, proto %04x\n", (int) skb->len, proto);
@@ -2096,8 +2093,6 @@ static void isdn_ppp_ccp_timer_callback(unsigned long closure)
        }
        if(rs->ta && rs->state == CCPResetSentReq) {
                /* We are correct here */
-               printk(KERN_DEBUG "ippp_ccp: CCP Reset timed out for id %d\n",
-                      rs->id);
                if(!rs->expra) {
                        /* Hmm, there is no Ack really expected. We can clean
                           up the state now, it will be reallocated if the
@@ -2106,6 +2101,8 @@ static void isdn_ppp_ccp_timer_callback(unsigned long closure)
                        isdn_ppp_ccp_reset_free_state(rs->is, rs->id);
                        return;
                }
+               printk(KERN_DEBUG "ippp_ccp: CCP Reset timed out for id %d\n",
+                      rs->id);
                /* Push it again */
                isdn_ppp_ccp_xmit_reset(rs->is, PPP_CCP, CCP_RESETREQ, rs->id,
                                        rs->data, rs->dlen);
@@ -2332,7 +2329,6 @@ static struct sk_buff *isdn_ppp_decompress(struct sk_buff *skb,struct ippp_struc
                if (len <= 0) {
                        switch(len) {
                        case DECOMP_ERROR:
-                               ri->pppcfg |= SC_DC_ERROR;
                                printk(KERN_INFO "ippp: decomp wants reset %s params\n",
                                       rsparm.valid ? "with" : "without");
                                
@@ -2467,10 +2463,15 @@ static void isdn_ppp_receive_ccp(isdn_net_dev *net_dev, isdn_net_local *lp,
                /* if we RECEIVE an ackowledge we enable the decompressor */
                if(is->debug & 0x10)
                        printk(KERN_DEBUG "Enable decompression here!\n");
-               if(proto == PPP_CCP)
+               if(proto == PPP_CCP) {
+                       if (!mis->decompressor)
+                               break;
                        mis->compflags |= SC_DECOMP_ON;
-               else
+               } else {
+                       if (!is->decompressor)
+                               break;
                        is->compflags |= SC_LINK_DECOMP_ON;
+               }
                break;
 
        case CCP_RESETACK:
@@ -2491,7 +2492,6 @@ static void isdn_ppp_receive_ccp(isdn_net_dev *net_dev, isdn_net_local *lp,
                                              len, NULL);
                        /* TODO: This is not easy to decide here */
                        mis->compflags &= ~SC_DECOMP_DISCARD;
-                       mis->pppcfg &= ~SC_DC_ERROR;
                }
                else {
                        isdn_ppp_ccp_reset_ack_rcvd(is, skb->data[1]);
@@ -2504,7 +2504,6 @@ static void isdn_ppp_receive_ccp(isdn_net_dev *net_dev, isdn_net_local *lp,
                                              len, NULL);
                        /* TODO: neither here */
                        is->compflags &= ~SC_LINK_DECOMP_DISCARD;
-                       is->pppcfg &= ~SC_DC_ERROR;
                }
                break;
 
@@ -2579,6 +2578,15 @@ static void isdn_ppp_receive_ccp(isdn_net_dev *net_dev, isdn_net_local *lp,
  * that's too big of a change now. --kai
  */
 
+/* Actually, we might turn this into an advantage: deal with the RFC in
+ * the old tradition of beeing generous on what we accept, but beeing
+ * strict on what we send. Thus we should just
+ * - accept compressed frames as soon as decompression is negotiated
+ * - send compressed frames only when decomp *and* comp are negotiated
+ * - drop rx compressed frames if we cannot decomp (instead of pushing them
+ *   up to ipppd)
+ * and I tried to modify this file according to that. --abp
+ */
 
 static void isdn_ppp_send_ccp(isdn_net_dev *net_dev, isdn_net_local *lp, struct sk_buff *skb)
 {
@@ -2634,10 +2642,15 @@ static void isdn_ppp_send_ccp(isdn_net_dev *net_dev, isdn_net_local *lp, struct
                /* if we SEND an ackowledge we can/must enable the compressor */
                if(is->debug & 0x10)
                        printk(KERN_DEBUG "Enable compression here!\n");
-               if(proto == PPP_CCP)
+               if(proto == PPP_CCP) {
+                       if (!is->compressor)
+                               break;
                        is->compflags |= SC_COMP_ON;
-               else
+               } else {
+                       if (!is->compressor)
+                               break;
                        is->compflags |= SC_LINK_COMP_ON;
+               }
                break;
        case CCP_RESETACK:
                /* If we send a ACK we should reset our compressor */
index 42b265cb42452c44bf64cbdc6409db6757f7cb51..f56a6bc6cca4e907955cc5211d0d698b92f959b8 100644 (file)
@@ -1,27 +1,17 @@
-/* $Id: isdn_ppp.h,v 1.17 2000/08/10 22:52:46 kai Exp $
-
+/* $Id: isdn_ppp.h,v 1.1.2.1 2001/12/31 13:26:34 kai Exp $
+ *
  * header for Linux ISDN subsystem, functions for synchronous PPP (linklevel).
  *
  * Copyright 1995,96 by Michael Hipp (Michael.Hipp@student.uni-tuebingen.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
 #include <linux/ppp_defs.h>     /* for PPP_PROTOCOL */
 #include <linux/isdn_ppp.h>    /* for isdn_ppp info */
+
 extern int isdn_ppp_read(int, struct file *, char *, int);
 extern int isdn_ppp_write(int, struct file *, const char *, int);
 extern int isdn_ppp_open(int, struct file *);
diff --git a/drivers/isdn/isdn_syms.c b/drivers/isdn/isdn_syms.c
deleted file mode 100644 (file)
index c81b36c..0000000
+++ /dev/null
@@ -1,114 +0,0 @@
-/* $Id: isdn_syms.c,v 1.3.2.1 1999/04/22 21:09:37 werner Exp $
-
- * Linux ISDN subsystem, exported symbols (linklevel).
- *
- * 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, 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.
- *
- * $Log: isdn_syms.c,v $
- * Revision 1.3.2.1  1999/04/22 21:09:37  werner
- * Added support for dss1 diversion services
- *
- * Revision 1.3  1997/02/16 01:02:47  fritz
- * Added GPL-Header, Id and Log
- *
- */
-#include <linux/config.h>
-#include <linux/module.h>
-#include <linux/version.h>
-
-#ifndef __GENKSYMS__      /* Don't want genksyms report unneeded structs */
-#include <linux/isdn.h>
-#endif
-#include "isdn_common.h"
-#ifdef CONFIG_ISDN_DIVERSION
-  #include <linux/isdn_divertif.h>
-extern isdn_divert_if *divert_if;
-
-static char *map_drvname(int di)
-{
-  if ((di < 0) || (di >= ISDN_MAX_DRIVERS)) 
-    return(NULL);
-  return(dev->drvid[di]); /* driver name */
-} /* map_drvname */
-
-static int map_namedrv(char *id)
-{  int i;
-
-   for (i = 0; i < ISDN_MAX_DRIVERS; i++)
-    { if (!strcmp(dev->drvid[i],id)) 
-        return(i);
-    }
-   return(-1);
-} /* map_namedrv */
-
-int DIVERT_REG_NAME(isdn_divert_if *i_div)
-{
-  if (i_div->if_magic != DIVERT_IF_MAGIC) 
-    return(DIVERT_VER_ERR);
-  switch (i_div->cmd)
-    {
-      case DIVERT_CMD_REL:
-        if (divert_if != i_div) 
-          return(DIVERT_REL_ERR);
-        divert_if = NULL; /* free interface */
-        MOD_DEC_USE_COUNT;
-        return(DIVERT_NO_ERR);
-
-      case DIVERT_CMD_REG:
-        if (divert_if) 
-          return(DIVERT_REG_ERR);
-        i_div->ll_cmd = isdn_command; /* set command function */
-        i_div->drv_to_name = map_drvname; 
-        i_div->name_to_drv = map_namedrv; 
-        MOD_INC_USE_COUNT;
-        divert_if = i_div; /* remember interface */
-        return(DIVERT_NO_ERR);
-
-      default:
-        return(DIVERT_CMD_ERR);   
-    }
-} /* DIVERT_REG_NAME */
-
-#endif CONFIG_ISDN_DIVERSION
-
-#if (LINUX_VERSION_CODE < 0x020111)
-static int has_exported;
-
-static struct symbol_table isdn_syms = {
-#include <linux/symtab_begin.h>
-        X(register_isdn),
-#ifdef CONFIG_ISDN_DIVERSION
-        X(DIVERT_REG_NAME),
-#endif CONFIG_ISDN_DIVERSION
-#include <linux/symtab_end.h>
-};
-
-void
-isdn_export_syms(void)
-{
-       if (has_exported)
-               return;
-        register_symtab(&isdn_syms);
-        has_exported = 1;
-}
-
-#else
-
-EXPORT_SYMBOL(register_isdn);
-#ifdef CONFIG_ISDN_DIVERSION
-  EXPORT(DIVERT_REG_NAME);
-#endif CONFIG_ISDN_DIVERSION
-
-#endif
index 9d2dfeabf96d0400526b16c822e6f23062e1a49a..ba81de55793f7f493aca88da583d831eba9231ef 100644 (file)
@@ -1,30 +1,17 @@
-/* $Id: isdn_tty.c,v 1.94.6.5 2001/08/14 14:12:18 kai Exp $
-
+/* $Id: isdn_tty.c,v 1.1.2.1 2001/12/31 13:26:34 kai Exp $
+ *
  * Linux ISDN subsystem, tty functions and AT-command emulator (linklevel).
  *
  * Copyright 1994-1999  by Fritz Elfert (fritz@isdn4linux.de)
  * Copyright 1995,96    by Thinking Objects Software GmbH Wuerzburg
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 #undef ISDN_TTY_STAT_DEBUG
 
-#define __NO_VERSION__
 #include <linux/config.h>
-#include <linux/module.h>
 #include <linux/isdn.h>
 #include "isdn_common.h"
 #include "isdn_tty.h"
@@ -66,7 +53,7 @@ static int bit2si[8] =
 static int si2bit[8] =
 {4, 1, 4, 4, 4, 4, 4, 4};
 
-char *isdn_tty_revision = "$Revision: 1.94.6.5 $";
+char *isdn_tty_revision = "$Revision: 1.1.2.1 $";
 
 
 /* isdn_tty_try_read() is called from within isdn_tty_rcv_skb()
@@ -2598,11 +2585,11 @@ isdn_tty_check_esc(const u_char * p, u_char plus, int count, int *pluscount,
                if (*(p++) == plus) {
                        if ((*pluscount)++) {
                                /* Time since last '+' > 0.5 sec. ? */
-                               if ((jiffies - *lastplus) > PLUSWAIT1)
+                               if (time_after(jiffies, *lastplus + PLUSWAIT1))
                                        *pluscount = 1;
                        } else {
                                /* Time since last non-'+' < 1.5 sec. ? */
-                               if ((jiffies - *lastplus) < PLUSWAIT2)
+                               if (time_before(jiffies, *lastplus + PLUSWAIT2))
                                        *pluscount = 0;
                        }
                        if ((*pluscount == 3) && (count == 1))
@@ -3976,7 +3963,7 @@ isdn_tty_modem_escape(void)
                                if (info->online) {
                                        ton = 1;
                                        if ((info->emu.pluscount == 3) &&
-                                           ((jiffies - info->emu.lastplus) > PLUSWAIT2)) {
+                                           time_after(jiffies , info->emu.lastplus + PLUSWAIT2)) {
                                                info->emu.pluscount = 0;
                                                info->online = 0;
                                                isdn_tty_modem_result(RESULT_OK, info);
index e2ce92c38d188ab5648d0c95d3ef42218b8fac28..8bc4b37ffc7cb8ac9d3c45ad9d4e2bf86764964a 100644 (file)
@@ -1,23 +1,12 @@
-/* $Id: isdn_tty.h,v 1.22.6.1 2001/08/14 14:12:18 kai Exp $
-
+/* $Id: isdn_tty.h,v 1.1.2.1 2001/12/31 13:26:34 kai Exp $
+ *
  * header for Linux ISDN subsystem, tty related functions (linklevel).
  *
  * Copyright 1994-1999  by Fritz Elfert (fritz@isdn4linux.de)
  * Copyright 1995,96    by Thinking Objects Software GmbH Wuerzburg
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 0e6b9a35908fadb61e2a3d4e6d329b946bb0a1cc..b2f159d25474f91b527980d07e02f59b558b7dd2 100644 (file)
@@ -1,39 +1,26 @@
-/* $Id: isdn_ttyfax.c,v 1.7.6.1 2001/08/14 14:12:18 kai Exp $
-
+/* $Id: isdn_ttyfax.c,v 1.1.2.1 2001/12/31 13:26:34 kai Exp $
+ *
  * Linux ISDN subsystem, tty_fax AT-command emulator (linklevel).
  *
  * Copyright 1999    by Armin Schindler (mac@melware.de)
  * Copyright 1999    by Ralf Spachmann (mel@melware.de)
  * Copyright 1999    by Cytronics & Melware
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
 #undef ISDN_TTY_FAX_STAT_DEBUG
 #undef ISDN_TTY_FAX_CMD_DEBUG
 
-#define __NO_VERSION__
-#include <linux/module.h>
 #include <linux/isdn.h>
 #include "isdn_common.h"
 #include "isdn_tty.h"
 #include "isdn_ttyfax.h"
 
 
-static char *isdn_tty_fax_revision = "$Revision: 1.7.6.1 $";
+static char *isdn_tty_fax_revision = "$Revision: 1.1.2.1 $";
 
 #define PARSE_ERROR1 { isdn_tty_fax_modem_result(1, info); return 1; }
 
index 6390eee2ccbca221e9ced3eacfe259bc8e0c0952..eef2f7681c2e4cc28809840a3d720a6c3b0ddd55 100644 (file)
@@ -1,24 +1,13 @@
-/* $Id: isdn_ttyfax.h,v 1.2 2000/05/11 22:29:21 kai Exp $
-
+/* $Id: isdn_ttyfax.h,v 1.1.2.1 2001/12/31 13:26:34 kai Exp $
+ *
  * header for Linux ISDN subsystem, tty_fax related functions (linklevel).
  *
  * Copyright 1999   by Armin Schindler (mac@melware.de)
  * Copyright 1999   by Ralf Spachmann (mel@melware.de)
  * Copyright 1999   by Cytronics & Melware
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index bb897f8c08999a64ca6d5c5596af55c289742642..643e99f2e133fae9bffdb5a4eec86a3526939bf6 100644 (file)
@@ -1,22 +1,11 @@
-/* $Id: isdn_v110.c,v 1.5.6.3 2001/02/16 16:43:23 kai Exp $
-
+/* $Id: isdn_v110.c,v 1.1.2.1 2001/12/31 13:26:34 kai Exp $
+ *
  * Linux ISDN subsystem, V.110 related functions (linklevel).
  *
  * Copyright by Thomas Pfeiffer (pfeiffer@pds.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
@@ -30,7 +19,7 @@
 
 #undef ISDN_V110_DEBUG
 
-char *isdn_v110_revision = "$Revision: 1.5.6.3 $";
+char *isdn_v110_revision = "$Revision: 1.1.2.1 $";
 
 #define V110_38400 255
 #define V110_19200  15
index 553ba86ab5cf782b768234e35ae01399b3c20b6f..d8fd50f52e9c492e4a8eddaf1e35e6be7bf9b54f 100644 (file)
@@ -1,24 +1,14 @@
-/* $Id: isdn_v110.h,v 1.4 2000/05/11 22:29:21 kai Exp $
-
+/* $Id: isdn_v110.h,v 1.1.2.1 2001/12/31 13:26:34 kai Exp $
+ *
  * Linux ISDN subsystem, V.110 related functions (linklevel).
  *
  * Copyright by Thomas Pfeiffer (pfeiffer@pds.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
+
 #ifndef _isdn_v110_h_
 #define _isdn_v110_h_
 
index b9845fda69c0502935b1416708ff8f8a8c4480c1..db4ff28bc735103828ad1009c403fe4a507341b1 100644 (file)
@@ -1,22 +1,9 @@
-/* $Id: isdn_x25iface.c,v 1.9 2000/05/16 20:52:10 keil Exp $
-
+/* $Id: isdn_x25iface.c,v 1.1.2.1 2001/12/31 13:26:34 kai Exp $
  *
  * Linux ISDN subsystem, X.25 related functions
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  * stuff needed to support the Linux X.25 PLP code on top of devices that
  * can provide a lab_b service using the concap_proto mechanism.
index 97024e261457bc19412c193d38c29a07b7b98844..88724ea019913b8e8c88ed43d08f4b719a273cde 100644 (file)
@@ -1,20 +1,9 @@
-/* $Id: isdn_x25iface.h,v 1.3 2000/05/11 22:29:21 kai Exp $
-
- * header for Linux ISDN subsystem, x.25 related functions
+/* $Id: isdn_x25iface.h,v 1.1.2.1 2001/12/31 13:26:34 kai Exp $
  *
- * 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, 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.
+ * header for Linux ISDN subsystem, x.25 related functions
  *
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index a225dee8d8b2b516a3ba7622618d14f26a120e3e..e326aa76fddacc4e03bf81f722ee18ea589bd5e6 100644 (file)
@@ -1,22 +1,11 @@
-/* $Id: isdnloop.c,v 1.11.6.3 2001/06/09 15:14:19 kai Exp $
-
+/* $Id: isdnloop.c,v 1.1.2.1 2001/12/31 13:26:47 kai Exp $
+ *
  * ISDN low-level module implementing a dummy loop driver.
  *
  * Copyright 1997 by Fritz Elfert (fritz@isdn4linux.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
 #include <linux/init.h>
 #include "isdnloop.h"
 
-static char
-*revision = "$Revision: 1.11.6.3 $";
+static char *revision = "$Revision: 1.1.2.1 $";
+static char *isdnloop_id;
+
+MODULE_DESCRIPTION("ISDN4Linux: Pseudo Driver that simulates an ISDN card");
+MODULE_AUTHOR("Fritz Elfert");
+MODULE_LICENSE("GPL");
+MODULE_PARM(isdnloop_id, "s");
+MODULE_PARM_DESC(isdnloop_id, "ID-String of first card");
 
 static int isdnloop_addcard(char *);
 
index fe8a501104fff16b1e567c7d7334bf8ff5cb0f3a..1ce851e48bbc4a358e5b60fa7e2074599d20bd26 100644 (file)
@@ -1,22 +1,11 @@
-/* $Id: isdnloop.h,v 1.5.6.1 2001/02/10 14:41:23 kai Exp $
-
+/* $Id: isdnloop.h,v 1.1.2.1 2001/12/31 13:26:47 kai Exp $
+ *
  * Loopback lowlevel module for testing of linklevel.
  *
  * Copyright 1997 by Fritz Elfert (fritz@isdn4linux.de)
  *
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
@@ -44,7 +33,6 @@ typedef struct isdnloop_sdef {
 #ifdef __KERNEL__
 /* Kernel includes */
 
-#include <linux/module.h>
 #include <linux/version.h>
 #include <linux/errno.h>
 #include <linux/fs.h>
@@ -115,14 +103,6 @@ typedef struct isdnloop_card {
  */
 #ifdef __KERNEL__
 static isdnloop_card *cards = (isdnloop_card *) 0;
-static char *isdnloop_id = "\0";
-
-#ifdef MODULE
-MODULE_AUTHOR("Fritz Elfert");
-MODULE_PARM(isdnloop_id, "s");
-MODULE_PARM_DESC(isdnloop_id, "ID-String of first card");
-#endif
-
 #endif                          /* __KERNEL__ */
 
 /* Utility-Macros */
index ab67ae3f22535867c86a69b890cc39e03147a8a6..92a48172bea6b40a618ea4c826f8bb8ad3f41820 100644 (file)
@@ -1,4 +1,6 @@
 /*
+ * Callbacks for the FSM
+ *
  * Copyright (C) 1996 Universidade de Lisboa
  * 
  * Written by Pedro Roque Marques (roque@di.fc.ul.pt)
@@ -7,21 +9,12 @@
  * the GNU General Public License, incorporated herein by reference.
  */
 
-/*        
- *        callbacks for the FSM
- */
-
 /*
  * Fix: 19981230 - Carlos Morgado <chbm@techie.com>
  * Port of Nelson Escravana's <nelson.escravana@usa.net> fix to CalledPN 
  * NULL pointer dereference in cb_in_1 (originally fixed in 2.0)
  */
 
-
-#define __NO_VERSION__
-
-#include <linux/module.h>
-
 #include <linux/sched.h>
 #include <linux/string.h>
 #include <linux/kernel.h>
index 559b812e093b971ee42e04df867ea3a081d1be93..f510dc56b57eadb94f14bd15b9652bcaca205e93 100644 (file)
@@ -1,4 +1,6 @@
 /*
+ * Callbacks prototypes for FSM
+ *
  * Copyright (C) 1996 Universidade de Lisboa
  * 
  * Written by Pedro Roque Marques (roque@di.fc.ul.pt)
@@ -7,11 +9,6 @@
  * the GNU General Public License, incorporated herein by reference.
  */
 
-/*
- *        Callbacks prototypes for FSM
- *
- */
-
 #ifndef CALLBACKS_H
 #define CALLBACKS_H
 
index 60057c9bdb9be26272e24d1498b62b7a541872b5..2c882600787a42627545e47ff7cf6a23bcb89cee 100644 (file)
@@ -1,17 +1,16 @@
 /*
+ * CAPI encoder/decoder for
+ * Portugal Telecom CAPI 2.0
+ *
  * Copyright (C) 1996 Universidade de Lisboa
  * 
  * Written by Pedro Roque Marques (roque@di.fc.ul.pt)
  *
  * This software may be used and distributed according to the terms of 
  * the GNU General Public License, incorporated herein by reference.
- */
-
-/*        
- *        CAPI encoder/decoder for
- *        Portugal Telecom CAPI 2.0
  *
- *        Not compatible with the AVM Gmbh. CAPI 2.0
+ * Not compatible with the AVM Gmbh. CAPI 2.0
+ *
  */
 
 /*
  *              encode our number in CallerPN and ConnectedPN
  */
 
-#define __NO_VERSION__
-
-#include <linux/module.h>
-
 #include <linux/sched.h>
 #include <linux/string.h>
 #include <linux/kernel.h>
index 0d960f83a16c4889efda3f3978b13642ceecd310..a71cabad972743208779beb4debfc1b591651bcb 100644 (file)
@@ -1,4 +1,6 @@
 /*
+ * CAPI encode/decode prototypes and defines
+ *
  * Copyright (C) 1996 Universidade de Lisboa
  * 
  * Written by Pedro Roque Marques (roque@di.fc.ul.pt)
@@ -7,10 +9,6 @@
  * the GNU General Public License, incorporated herein by reference.
  */
 
-/*        
- *        CAPI encode/decode prototypes and defines
- */
-
 #ifndef CAPI_H
 #define CAPI_H
 
index 4ade4f62c59a06dfba383dc13c7bfe462821e075..49d7462b6a509a1bd13605d2f61d97b0ed63c6b3 100644 (file)
@@ -1,4 +1,6 @@
 /*
+ * PCBIT-D interface with isdn4linux
+ *
  * Copyright (C) 1996 Universidade de Lisboa
  * 
  * Written by Pedro Roque Marques (roque@di.fc.ul.pt)
@@ -7,10 +9,6 @@
  * the GNU General Public License, incorporated herein by reference.
  */
 
-/*        
- *        PCBIT-D interface with isdn4linux
- */
-
 /*
  *     Fixes:
  *
index e005341fc3dfadd4b1ae3796269b51eb69fd6812..088e679ecd865ffd7f63702b8726595b955ac6bd 100644 (file)
@@ -1,4 +1,7 @@
 /*
+ * DSS.1 Finite State Machine
+ * base: ITU-T Rec Q.931
+ *
  * Copyright (C) 1996 Universidade de Lisboa
  * 
  * Written by Pedro Roque Marques (roque@di.fc.ul.pt)
  * the GNU General Public License, incorporated herein by reference.
  */
 
-/*        
- *        DSS.1 Finite State Machine
- *        base: ITU-T Rec Q.931
- */
-
 /*
  *        TODO: complete the FSM
  *              move state/event descriptions to a user space logger
  */
 
-#define __NO_VERSION__
-
-#include <linux/module.h>
-
 #include <linux/sched.h>
 #include <linux/string.h>
 #include <linux/kernel.h>
index 22befde381a0b4d07eddff108a3b762de9a106e8..6bb587005b8628c57ac7972fea078d137afa022d 100644 (file)
@@ -1,4 +1,6 @@
 /*
+ * DSS.1 module definitions
+ *
  * Copyright (C) 1996 Universidade de Lisboa
  * 
  * Written by Pedro Roque Marques (roque@di.fc.ul.pt)
@@ -7,10 +9,6 @@
  * the GNU General Public License, incorporated herein by reference.
  */
 
-/*        
- *        DSS.1 module definitions
- */
-
 #ifndef EDSS1_H
 #define EDSS1_H
 
index e6e8108af79d2ebd2534871365330b03fc67c395..313b108e816bcd6c7074664782cbe080815fd183 100644 (file)
@@ -1,4 +1,6 @@
 /*
+ * PCBIT-D low-layer interface
+ *
  * Copyright (C) 1996 Universidade de Lisboa
  *
  * Written by Pedro Roque Marques (roque@di.fc.ul.pt)
  * Hacked to compile with egcs and run with current version of isdn modules
 */
 
-/*
- *        PCBIT-D low-layer interface
- */
-
 /*
  *        Based on documentation provided by Inesc:
  *        - "Interface com bus do PC para o PCBIT e PCBIT-D", Inesc, Jan 93
  *              re-write/remove debug printks
  */
 
-#define __NO_VERSION__
-
-
-#ifdef MODULE
-#define INCLUDE_INLINE_FUNCS
-#endif
-
-
-#include <linux/module.h>
-
 #include <linux/sched.h>
 #include <linux/string.h>
 #include <linux/kernel.h>
index 6d3e6cb3c8db3387f8695a2848979f0e80808f3b..304000cdfc6b9c4bee6024fd1fba6e58d3a6c479 100644 (file)
@@ -1,4 +1,6 @@
 /*
+ * PCBIT-D low-layer interface definitions
+ *
  * Copyright (C) 1996 Universidade de Lisboa
  * 
  * Written by Pedro Roque Marques (roque@di.fc.ul.pt)
  * Hacked to compile with egcs and run with current version of isdn modules
 */
 
-/*        
- *        PCBIT-D low-layer interface definitions
- */
-
 #ifndef LAYER2_H
 #define LAYER2_H
 
index 63ee1ba9ef02b9f746383daa5c1e7687337d0774..ee153229f03c623e59291724684b7bf31466d732 100644 (file)
@@ -1,4 +1,6 @@
 /*
+ * PCBIT-D module support
+ *
  * Copyright (C) 1996 Universidade de Lisboa
  * 
  * Written by Pedro Roque Marques (roque@di.fc.ul.pt)
@@ -7,10 +9,6 @@
  * the GNU General Public License, incorporated herein by reference.
  */
 
-/*        
- *        PCBIT-D module support
- */
-
 #include <linux/module.h>
 #include <linux/init.h>
 #include <linux/sched.h>
 #include <linux/isdnif.h>
 #include "pcbit.h"
 
+MODULE_DESCRIPTION("ISDN4Linux: Driver for PCBIT-T card");
+MODULE_AUTHOR("Pedro Roque Marques");
+MODULE_LICENSE("GPL");
+MODULE_PARM(mem, "1-" __MODULE_STRING(MAX_PCBIT_CARDS) "i");
+MODULE_PARM(irq, "1-" __MODULE_STRING(MAX_PCBIT_CARDS) "i");
+
 static int mem[MAX_PCBIT_CARDS] = {0, };
 static int irq[MAX_PCBIT_CARDS] = {0, };
 
@@ -112,9 +116,6 @@ void pcbit_setup(char *str, int *ints)
 }
 #endif
 
-MODULE_PARM(mem, "1-" __MODULE_STRING(MAX_PCBIT_CARDS) "i");
-MODULE_PARM(irq, "1-" __MODULE_STRING(MAX_PCBIT_CARDS) "i");
-
 module_init(pcbit_init);
 module_exit(pcbit_exit);
 
index 8ce921f07730de9c6c41ea7443e465d19307c136..223a32279f8629a12a3d4690452491f70635f2e1 100644 (file)
@@ -1,4 +1,6 @@
 /*
+ * PCBIT-D device driver definitions
+ *
  * Copyright (C) 1996 Universidade de Lisboa
  * 
  * Written by Pedro Roque Marques (roque@di.fc.ul.pt)
@@ -7,10 +9,6 @@
  * the GNU General Public License, incorporated herein by reference.
  */
 
-/*        
- *        PCBIT-D device driver definitions
- */
-
 #ifndef PCBIT_H
 #define PCBIT_H
 
index 3e5370f347d1370d66014351a52c0e13e03d3fba..72db2f19203f5821e0fd3645478dbba77089d7c2 100644 (file)
@@ -1,24 +1,13 @@
-/*
- *  $Id: card.h,v 1.1 1996/11/07 13:07:40 fritz Exp $
- *  Copyright (C) 1996  SpellCaster Telecommunications Inc.
- *
- *  card.h - Driver parameters for SpellCaster ISA ISDN adapters
+/* $Id: card.h,v 1.1.2.1 2001/12/31 13:26:48 kai Exp $
  *
- *  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.
+ * Driver parameters for SpellCaster ISA ISDN adapters
  *
- *  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.
+ * Copyright (C) 1996  SpellCaster Telecommunications Inc.
  *
- *  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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *  For more information, please contact gpl-info@spellcast.com or write:
+ * For more information, please contact gpl-info@spellcast.com or write:
  *
  *     SpellCaster Telecommunications Inc.
  *     5621 Finch Avenue East, Unit #3
index 28accdc0fbf77aba03e92700c3ef24848d38ba50..16925f8f192df8b14fd0692003e9452c06b70242 100644 (file)
@@ -1,22 +1,11 @@
-/*
- *  $Id: command.c,v 1.4 1997/03/30 16:51:34 calle Exp $
- *  Copyright (C) 1996  SpellCaster Telecommunications Inc.
- *
- *  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.
+/* $Id: command.c,v 1.1.2.1 2001/12/31 13:26:50 kai Exp $
  *
- *  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.
+ * Copyright (C) 1996  SpellCaster Telecommunications Inc.
  *
- *  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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *  For more information, please contact gpl-info@spellcast.com or write:
+ * For more information, please contact gpl-info@spellcast.com or write:
  *
  *     SpellCaster Telecommunications Inc.
  *     5621 Finch Avenue East, Unit #3
@@ -27,6 +16,7 @@
  */
 
 #define __NO_VERSION__
+#include <linux/module.h>
 #include "includes.h"          /* This must be first */
 #include "hardware.h"
 #include "message.h"
index 09c11f57da03fc223cd01476268243eb10b33294..29adfba500674bc0cc6ef869c5614d53f75961a5 100644 (file)
@@ -1,22 +1,11 @@
-/*
- *  $Id: debug.c,v 1.5 2000/11/12 15:29:37 kai Exp $
- *  Copyright (C) 1996  SpellCaster Telecommunications Inc.
+/* $Id: debug.c,v 1.1.2.1 2001/12/31 13:26:50 kai Exp $
  *
- *  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.
+ * Copyright (C) 1996  SpellCaster Telecommunications Inc.
  *
- *  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.
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *  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.
- *
- *  For more information, please contact gpl-info@spellcast.com or write:
+ * For more information, please contact gpl-info@spellcast.com or write:
  *
  *     SpellCaster Telecommunications Inc.
  *     5621 Finch Avenue East, Unit #3
@@ -25,6 +14,7 @@
  *     +1 (416) 297-8565
  *     +1 (416) 297-6433 Facsimile
  */
+
 #include <linux/kernel.h>
 
 inline char *strcpy(char *, const char *);
index ba100543d36f2b5d0c2c9f1f6c7e50580fb08571..b944eb2c3c9b5e9ce04025ca291d2f26aea32638 100644 (file)
@@ -1,22 +1,11 @@
-/*
- *  $Id: debug.h,v 1.2 2000/02/26 01:00:53 keil Exp $
- *  Copyright (C) 1996  SpellCaster Telecommunications Inc.
+/* $Id: debug.h,v 1.1.2.1 2001/12/31 13:26:50 kai Exp $
  *
- *  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.
+ * Copyright (C) 1996  SpellCaster Telecommunications Inc.
  *
- *  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.
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *  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.
- *
- *  For more information, please contact gpl-info@spellcast.com or write:
+ * For more information, please contact gpl-info@spellcast.com or write:
  *
  *     SpellCaster Telecommunications Inc.
  *     5621 Finch Avenue East, Unit #3
index 23cd53f07f37ad0f0d7ffb5ec500eddbecfbc54d..de65e21e88615cabb40db1c8663135ece59a00a0 100644 (file)
@@ -1,22 +1,11 @@
-/*
- *  $Id: event.c,v 1.4 1997/10/09 22:30:58 fritz Exp $
- *  Copyright (C) 1996  SpellCaster Telecommunications Inc.
+/* $Id: event.c,v 1.1.2.1 2001/12/31 13:26:50 kai Exp $
  *
- *  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.
+ * Copyright (C) 1996  SpellCaster Telecommunications Inc.
  *
- *  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.
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *  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.
- *
- *  For more information, please contact gpl-info@spellcast.com or write:
+ * For more information, please contact gpl-info@spellcast.com or write:
  *
  *     SpellCaster Telecommunications Inc.
  *     5621 Finch Avenue East, Unit #3
index b0f07ac3c9cda1cc8b4a7f51fe6b6fcda98d6526..d46416e588b02363adcc6269f5e5f9ae8e5ae0cd 100644 (file)
@@ -1,5 +1,9 @@
 /*
  * Hardware specific macros, defines and structures
+ *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
  */
 
 #ifndef HARDWARE_H
  */
 
 #define MAX_CARDS      4               /* The maximum number of cards to
-                                          control or probe for. If you change
-                                          this, you must also change the number
-                                          of elements in io, irq, and ram to
-                                          match. Initialized in init.c */
-/*
-extern unsigned int io[];
-extern unsigned char irq[];
-extern unsigned long ram[];
-*/
+                                          control or probe for. */
 
 #define SIGNATURE      0x87654321      /* Board reset signature */
 #define SIG_OFFSET     0x1004          /* Where to find signature in shared RAM */
index 840dfc0976fdd1370a02cdb28ab64e3e9e4edbeb..c33bf6de3e5489055158a12d720615dc3f5f3a8a 100644 (file)
@@ -1,4 +1,9 @@
-#include <linux/module.h>
+/*
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
+ */
+
 #include <linux/version.h>
 #include <linux/errno.h>
 #include <asm/segment.h>
index fbe7891793b79b62514647a645887d38ffe65cec..2ac29f1b8dd377cf98b8472004e97d3c2d690fd4 100644 (file)
@@ -1,9 +1,23 @@
+/*
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
+ */
+
 #include <linux/module.h>
 #include <linux/init.h>
 #include "includes.h"
 #include "hardware.h"
 #include "card.h"
 
+MODULE_DESCRIPTION("ISDN4Linux: Driver for Spellcaster card");
+MODULE_AUTHOR("Spellcaster Telecommunications Inc.");
+MODULE_LICENSE("GPL");
+MODULE_PARM( io, "1-" __MODULE_STRING(MAX_CARDS) "i");
+MODULE_PARM(irq, "1-" __MODULE_STRING(MAX_CARDS) "i");
+MODULE_PARM(ram, "1-" __MODULE_STRING(MAX_CARDS) "i");
+MODULE_PARM(do_reset, "i");
+
 board *adapter[MAX_CARDS];
 int cinst;
 
@@ -39,11 +53,6 @@ int irq_supported(int irq_x)
        return 0;
 }
 
-MODULE_PARM(io, "1-4i");
-MODULE_PARM(irq, "1-4i");
-MODULE_PARM(ram, "1-4i");
-MODULE_PARM(do_reset, "i");
-
 static int __init sc_init(void)
 {
        int b = -1;
index e0697710dd9e40feac7d130de610cf4279595da4..7bb9c1742d872470b3428e6f4d3ca491563ae849 100644 (file)
@@ -1,22 +1,11 @@
-/*
- *  $Id: interrupt.c,v 1.4.8.2 2001/04/08 17:51:43 kai Exp $
- *  Copyright (C) 1996  SpellCaster Telecommunications Inc.
- *
- *  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.
+/* $Id: interrupt.c,v 1.1.2.1 2001/12/31 13:26:50 kai Exp $
  *
- *  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.
+ * Copyright (C) 1996  SpellCaster Telecommunications Inc.
  *
- *  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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *  For more information, please contact gpl-info@spellcast.com or write:
+ * For more information, please contact gpl-info@spellcast.com or write:
  *
  *     SpellCaster Telecommunications Inc.
  *     5621 Finch Avenue East, Unit #3
index 141d5254dbeae762a66777cd785a9b9d2eafad5e..807d85d36c6990dde0869da86d9ba99cbb26939e 100644 (file)
@@ -1,3 +1,11 @@
+/*
+ * Copyright (C) 1996  SpellCaster Telecommunications Inc.
+ *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
+ */
+
 #define __NO_VERSION__
 #include "includes.h"
 #include "hardware.h"
index 205eeb9a5c138df980f70883770e67eb5e0cb8bd..e1b8303ec90d2ab6dbe4305b99ca3ee768701adf 100644 (file)
@@ -1,24 +1,13 @@
-/*
- *  $Id: message.c,v 1.5.8.1 2001/04/08 17:51:43 kai Exp $
- *  Copyright (C) 1996  SpellCaster Telecommunications Inc.
- *
- *  message.c - functions for sending and receiving control messages
+/* $Id: message.c,v 1.1.2.1 2001/12/31 13:26:50 kai Exp $
  *
- *  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.
+ * functions for sending and receiving control messages
  *
- *  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.
+ * Copyright (C) 1996  SpellCaster Telecommunications Inc.
  *
- *  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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *  For more information, please contact gpl-info@spellcast.com or write:
+ * For more information, please contact gpl-info@spellcast.com or write:
  *
  *     SpellCaster Telecommunications Inc.
  *     5621 Finch Avenue East, Unit #3
index 9b8bcb025a13f733cc7364fec3a15600c833937d..3715a177af74927ba80d07a23067b013ee7bd487 100644 (file)
@@ -1,25 +1,14 @@
-/*
- *  $Id: message.h,v 1.1 1996/11/07 13:07:47 fritz Exp $
- *  Copyright (C) 1996  SpellCaster Telecommunications Inc.
- *
- *  message.h - structures, macros and defines useful for sending
- *              messages to the adapter
+/* $Id: message.h,v 1.1.2.1 2001/12/31 13:26:50 kai Exp $
  *
- *  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.
+ * Copyright (C) 1996  SpellCaster Telecommunications Inc.
  *
- *  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.
+ * structures, macros and defines useful for sending
+ * messages to the adapter
  *
- *  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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *  For more information, please contact gpl-info@spellcast.com or write:
+ * For more information, please contact gpl-info@spellcast.com or write:
  *
  *     SpellCaster Telecommunications Inc.
  *     5621 Finch Avenue East, Unit #3
index 31e562c57b046e5470eed56d8bfeff74bef6584e..1e17f9eb7ad91be14c3003a1f2476eadaa87eac4 100644 (file)
@@ -1,22 +1,11 @@
-/*
- *  $Id: packet.c,v 1.5 1999/08/31 11:20:41 paul Exp $
- *  Copyright (C) 1996  SpellCaster Telecommunications Inc.
+/* $Id: packet.c,v 1.1.2.1 2001/12/31 13:26:50 kai Exp $
  *
- *  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.
+ * Copyright (C) 1996  SpellCaster Telecommunications Inc.
  *
- *  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.
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *  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.
- *
- *  For more information, please contact gpl-info@spellcast.com or write:
+ * For more information, please contact gpl-info@spellcast.com or write:
  *
  *     SpellCaster Telecommunications Inc.
  *     5621 Finch Avenue East, Unit #3
index 19db0b7c1175f8b81fb9fe5a50af43d89f2dafa0..c3dd551ecc3c52b49606808bf58ce25a03d1438c 100644 (file)
@@ -1,3 +1,7 @@
+/*
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ */
 
 /*
  * IOCTL Command Codes
index 6ff0812746b28c14d7217122d4816684fb2fab39..e6af0ce0b5a71240d7c5cc7688d7deb7eced3572 100644 (file)
@@ -1,24 +1,13 @@
-/*
- *  $Id: shmem.c,v 1.2 1996/11/20 17:49:56 fritz Exp $
- *  Copyright (C) 1996  SpellCaster Telecommunications Inc.
- *
- *  card.c - Card functions implementing ISDN4Linux functionality
+/* $Id: shmem.c,v 1.1.2.1 2001/12/31 13:26:50 kai Exp $
  *
- *  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.
+ * Copyright (C) 1996  SpellCaster Telecommunications Inc.
  *
- *  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.
+ * Card functions implementing ISDN4Linux functionality
  *
- *  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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *  For more information, please contact gpl-info@spellcast.com or write:
+ * For more information, please contact gpl-info@spellcast.com or write:
  *
  *     SpellCaster Telecommunications Inc.
  *     5621 Finch Avenue East, Unit #3
index 1c355dc28ef8c214ad609f5530b7559460f29928..5278fbc5337fbfa0965e82cf8879647fd1a5161a 100644 (file)
@@ -1,22 +1,11 @@
-/*
- *  $Id: timer.c,v 1.3 2000/05/06 00:52:39 kai Exp $
- *  Copyright (C) 1996  SpellCaster Telecommunications Inc.
- *
- *  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.
+/* $Id: timer.c,v 1.1.2.1 2001/12/31 13:26:50 kai Exp $
  *
- *  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.
+ * Copyright (C) 1996  SpellCaster Telecommunications Inc.
  *
- *  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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
- *  For more information, please contact gpl-info@spellcast.com or write:
+ * For more information, please contact gpl-info@spellcast.com or write:
  *
  *     SpellCaster Telecommunications Inc.
  *     5621 Finch Avenue East, Unit #3
index 84638c2b07065b0b96b8187d6b96ce3e47ce8ec7..47d3498aceb42c2bad4d5f5694532e94657614c9 100644 (file)
@@ -344,11 +344,11 @@ struct pci_dev_info dev_info[] = {
        DEVICE( VIA,            VIA_82C585,     "VT 82C585 Apollo VP1/VPX"),
        DEVICE( VIA,            VIA_82C586_0,   "VT 82C586 Apollo ISA"),
        DEVICE( VIA,            VIA_82C595,     "VT 82C595 Apollo VP2"),
-       DEVICE( VIA,            VIA_82C596_0,   "VT 82C596 Apollo Pro"),
+       DEVICE( VIA,            VIA_82C596,     "VT 82C596 Apollo Pro"),
        DEVICE( VIA,            VIA_82C597_0,   "VT 82C597 Apollo VP3"),
        DEVICE( VIA,            VIA_82C598_0,   "VT 82C598 Apollo MVP3"),
        DEVICE( VIA,            VIA_82C926,     "VT 82C926 Amazon"),
-       DEVICE( VIA,            VIA_82C416,     "VT 82C416MV"),
+       DEVICE( VIA,            VIA_82C576_1,   "VT 82C416MV"),
        DEVICE( VIA,            VIA_82C595_97,  "VT 82C595 Apollo VP2/97"),
        DEVICE( VIA,            VIA_82C586_2,   "VT 82C586 Apollo USB"),
        DEVICE( VIA,            VIA_82C586_3,   "VT 82C586B Apollo ACPI"),
index 0e76a8e598b9bbecbc81f564bf2137d78f9b8a87..35be825ee56b03acb79c49f6c258ca338072c5e6 100644 (file)
@@ -144,6 +144,96 @@ __initfunc(static void quirk_isa_dma_hangs(struct pci_dev *dev, int arg))
        }
 }
 
+/*
+ *     VIA Apollo KT133 needs PCI latency patch
+ *     Made according to a windows driver based patch by George E. Breese
+ *     see PCI Latency Adjust on http://www.viahardware.com/download/viatweak.shtm
+ *      Also see http://home.tiscalinet.de/au-ja/review-kt133a-1-en.html for
+ *      the info on which Mr Breese based his work.
+ *
+ *     Updated based on further information from the site and also on
+ *     information provided by VIA 
+ */
+
+__initfunc(static void quirk_vialatency(struct pci_dev *dev, int arg))
+{
+       struct pci_dev *p;
+       u8 rev;
+       u8 busarb;
+       /* Ok we have a potential problem chipset here. Now see if we have
+          a buggy southbridge */
+          
+       p=pci_find_device(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C686, NULL);
+       if(p!=NULL)
+       {
+               pci_read_config_byte(p, PCI_CLASS_REVISION, &rev);
+               /* 0x40 - 0x4f == 686B, 0x10 - 0x2f == 686A; thanks Dan Hollis */
+               /* Check for buggy part revisions */
+               if (rev < 0x40 || rev > 0x42) 
+                       return;
+       }
+       else
+       {
+               p = pci_find_device(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_8231, NULL);
+               if(p==NULL)     /* No problem parts */
+                       return;
+               pci_read_config_byte(p, PCI_CLASS_REVISION, &rev);
+               /* Check for buggy part revisions */
+               if (rev < 0x10 || rev > 0x12) 
+                       return;
+       }
+       
+       /*
+        *      Ok we have the problem. Now set the PCI master grant to 
+        *      occur every master grant. The apparent bug is that under high
+        *      PCI load (quite common in Linux of course) you can get data
+        *      loss when the CPU is held off the bus for 3 bus master requests
+        *      This happens to include the IDE controllers....
+        *
+        *      VIA only apply this fix when an SB Live! is present but under
+        *      both Linux and Windows this isnt enough, and we have seen
+        *      corruption without SB Live! but with things like 3 UDMA IDE
+        *      controllers. So we ignore that bit of the VIA recommendation..
+        */
+
+       pci_read_config_byte(dev, 0x76, &busarb);
+       /* Set bit 4 and bi 5 of byte 76 to 0x01 
+          "Master priority rotation on every PCI master grant */
+       busarb &= ~(1<<5);
+       busarb |= (1<<4);
+       pci_write_config_byte(dev, 0x76, busarb);
+       printk(KERN_INFO "Applying VIA southbridge workaround.\n");
+}
+
+/*
+ * Fix some problems with 'movntq' copies on Athlons. We need to ensure the
+ * non functional memory stuff wasn't enabled by the BIOS (and thus fix
+ * crashes when we use 100% memory bandwidth)
+ *
+ * VIA 8363 chipset:
+ * VIA 8363,8622,8361 Northbridges:
+ *  - bits  5, 6, 7 at offset 0x55 need to be turned off
+ * VIA 8367 (KT266x) Northbridges:
+ *  - bits  5, 6, 7 at offset 0x95 need to be turned off
+ */
+
+__initfunc(static void pci_fixup_via_athlon_bug(struct pci_dev *d, int arg))
+{
+       u8 v;
+       int where = 0x55;
+
+       if (d->device == PCI_DEVICE_ID_VIA_8367_0) {
+               where = 0x95; /* the memory write queue timer register is 
+                                different for the kt266x's: 0x95 not 0x55 */
+       }
+       pci_read_config_byte(d, where, &v);
+       if (v & 0xe0) {
+               printk("Trying to stomp on Athlon bug...\n");
+               v &= 0x1f; /* clear bits 5, 6, 7 */
+               pci_write_config_byte(d, where, v);
+       }
+}
+
 
 typedef void (*quirk_handler)(struct pci_dev *, int);
 
@@ -162,6 +252,7 @@ static struct quirk_name quirk_names[] __initdata = {
 #endif
        { quirk_passive_release,"Passive release enable" },
        { quirk_isa_dma_hangs,  "Work around ISA DMA hangs" },
+       { pci_fixup_via_athlon_bug, "Athlon/VIA fixup" },
 };
 
 
@@ -201,7 +292,14 @@ static struct quirk_info quirk_list[] __initdata = {
         * This is the 82C586 variants.
         */
        { PCI_VENDOR_ID_VIA,    PCI_DEVICE_ID_VIA_82C586_0,     quirk_isa_dma_hangs,    0x00 },
-       { PCI_VENDOR_ID_VIA,    PCI_DEVICE_ID_VIA_82C596_0,     quirk_isa_dma_hangs,    0x00 },
+       { PCI_VENDOR_ID_VIA,    PCI_DEVICE_ID_VIA_82C596,       quirk_isa_dma_hangs,    0x00 },
+       { PCI_VENDOR_ID_VIA,    PCI_DEVICE_ID_VIA_8363_0,       pci_fixup_via_athlon_bug, 0x00 },
+       { PCI_VENDOR_ID_VIA,    PCI_DEVICE_ID_VIA_8622,         pci_fixup_via_athlon_bug, 0x00 },
+       { PCI_VENDOR_ID_VIA,    PCI_DEVICE_ID_VIA_8361,         pci_fixup_via_athlon_bug, 0x00 },
+       { PCI_VENDOR_ID_VIA,    PCI_DEVICE_ID_VIA_8367_0,       pci_fixup_via_athlon_bug, 0x00 },
+       { PCI_VENDOR_ID_VIA,    PCI_DEVICE_ID_VIA_8363_0,       quirk_vialatency, 0x00 },
+       { PCI_VENDOR_ID_VIA,    PCI_DEVICE_ID_VIA_8371_1,       quirk_vialatency, 0x00 },
+       { PCI_VENDOR_ID_VIA,    0x3112  /* Not out yet ? */,    quirk_vialatency, 0x00 },
 };
 
 __initfunc(void pci_quirks_init(void))
index 07495e268291d0238caca17c042c4071af15c81f..dcf1fe7b744714b866ebd4b580f3ac77914562a0 100644 (file)
   Copyright 1992 - 2000 Kai Makisara
                 email Kai.Makisara@metla.fi
 
-  $Header: /home/cvsroot/Driver/osst.c,v 1.28.2.25 2001/06/03 21:56:26 riede Exp $
+  $Header: /home/cvsroot/Driver/osst.c,v 1.28.2.27 2001/11/01 21:03:42 riede Exp $
 
   Last modified: Wed Feb  2 22:04:05 2000 by makisara@kai.makisara.local
   Some small formal changes - aeb, 950809
 */
 
-static const char * cvsid = "$Id: osst.c,v 1.28.2.25 2001/06/03 21:56:26 riede Exp $";
-const char * osst_version = "0.8.13";
+static const char * cvsid = "$Id: osst.c,v 1.28.2.27 2001/11/01 21:03:42 riede Exp $";
+const char * osst_version = "0.8.15";
 
 /* The "failure to reconnect" firmware bug */
 #define OSST_FW_NEED_POLL_MIN 10601 /*(107A)*/
@@ -245,11 +245,10 @@ static    int     notyetprinted = 1;
 /* Wakeup from interrupt */
 static void osst_sleep_done (Scsi_Cmnd * SCpnt)
 {
-  unsigned int st_nbr;
+  unsigned int dev = TAPE_NR(SCpnt->request.rq_dev);
   OS_Scsi_Tape * STp;
 
-  if ((st_nbr = TAPE_NR(SCpnt->request.rq_dev)) < osst_template.nr_dev) {
-    STp = os_scsi_tapes[st_nbr];
+  if (os_scsi_tapes && (STp = os_scsi_tapes[dev])) {
     if ((STp->buffer)->writing &&
        (SCpnt->sense_buffer[0] & 0x70) == 0x70 &&
        (SCpnt->sense_buffer[2] & 0x40)) {
@@ -271,7 +270,7 @@ static void osst_sleep_done (Scsi_Cmnd * SCpnt)
   }
 #if DEBUG
   else if (debugging)
-    printk(KERN_ERR "osst?:D: Illegal interrupt device %x\n", st_nbr);
+    printk(KERN_ERR "osst?:D: Illegal interrupt device %x\n", dev);
 #endif
 }
 
@@ -588,8 +587,10 @@ static int osst_wait_ready(OS_Scsi_Tape * STp, Scsi_Cmnd ** aSCpnt, unsigned tim
         *aSCpnt = SCpnt;
        if (!SCpnt) return (-EBUSY);
 
-       while ( SCpnt->sense_buffer[2] == 2 && SCpnt->sense_buffer[12] == 4 &&
-               ( SCpnt->sense_buffer[13] == 1 || SCpnt->sense_buffer[13] == 8 ) && 
+       while ((( SCpnt->sense_buffer[2]  == 2 && SCpnt->sense_buffer[12] == 4    &&
+                (SCpnt->sense_buffer[13] == 1 || SCpnt->sense_buffer[13] == 8)    ) ||
+               ( SCpnt->sense_buffer[2]  == 6 && SCpnt->sense_buffer[12] == 0x28 &&
+                 SCpnt->sense_buffer[13] == 0                                     )  ) && 
                time_before(jiffies, startwait + timeout*HZ) ) {
 #if DEBUG
            if (debugging) {
@@ -623,6 +624,65 @@ static int osst_wait_ready(OS_Scsi_Tape * STp, Scsi_Cmnd ** aSCpnt, unsigned tim
        return 0;
 }
 
+/*
+ * Wait for a tape to be inserted in the unit
+ */
+static int osst_wait_for_medium(OS_Scsi_Tape * STp, Scsi_Cmnd ** aSCpnt, unsigned timeout)
+{
+       unsigned char   cmd[MAX_COMMAND_SIZE];
+       Scsi_Cmnd  * SCpnt;
+       long            startwait = jiffies;
+#if DEBUG
+       int             dbg = debugging;
+       int             dev  = TAPE_NR(STp->devt);
+
+       printk(OSST_DEB_MSG "osst%d:D: Reached onstream wait for medium\n", dev);
+#endif
+
+       memset(cmd, 0, MAX_COMMAND_SIZE);
+       cmd[0] = TEST_UNIT_READY;
+
+       SCpnt = osst_do_scsi(*aSCpnt, STp, cmd, 0, STp->timeout, MAX_READY_RETRIES, TRUE);
+       *aSCpnt = SCpnt;
+       if (!SCpnt) return (-EBUSY);
+
+       while ( SCpnt->sense_buffer[2]  == 2 && SCpnt->sense_buffer[12] == 0x3a &&
+               SCpnt->sense_buffer[13] == 0 && time_before(jiffies, startwait + timeout*HZ) ) {
+#if DEBUG
+           if (debugging) {
+               printk(OSST_DEB_MSG "osst%d:D: Sleeping in onstream wait medium\n", dev);
+               printk(OSST_DEB_MSG "osst%d:D: Turning off debugging for a while\n", dev);
+               debugging = 0;
+           }
+#endif
+           current->state = TASK_INTERRUPTIBLE;
+           schedule_timeout(HZ / 10);
+
+           memset(cmd, 0, MAX_COMMAND_SIZE);
+           cmd[0] = TEST_UNIT_READY;
+
+           SCpnt = osst_do_scsi(SCpnt, STp, cmd, 0, STp->timeout, MAX_READY_RETRIES, TRUE);
+       }
+       *aSCpnt = SCpnt;
+#if DEBUG
+       debugging = dbg;
+#endif
+       if ( SCpnt->sense_buffer[2]  != 2 &&
+            SCpnt->sense_buffer[12] != 4 && SCpnt->sense_buffer[13] != 1) {
+#if DEBUG
+           printk(OSST_DEB_MSG "osst%d:D: Abnormal exit from onstream wait medium\n", dev);
+           printk(OSST_DEB_MSG "osst%d:D: Result = %d, Sense: 0=%02x, 2=%02x, 12=%02x, 13=%02x\n", dev,
+                       SCpnt->result, SCpnt->sense_buffer[0], SCpnt->sense_buffer[2],
+                       SCpnt->sense_buffer[12], SCpnt->sense_buffer[13]);
+#endif
+           return 0;
+       }
+#if DEBUG
+       printk(OSST_DEB_MSG "osst%d:D: Normal exit from onstream wait medium\n", dev);
+#endif
+       return 1;
+}
+
 static int osst_position_tape_and_confirm(OS_Scsi_Tape * STp, Scsi_Cmnd ** aSCpnt, int frame)
 {
        int           retval;
@@ -661,7 +721,7 @@ static int osst_flush_drive_buffer(OS_Scsi_Tape * STp, Scsi_Cmnd ** aSCpnt)
                result = osst_write_error_recovery(STp, aSCpnt, 0);
 
        result |= osst_wait_ready(STp, aSCpnt, 5 * 60);
-       STp->ps[STp->partition].rw = ST_IDLE;
+       STp->ps[STp->partition].rw = OS_WRITING_COMPLETE;
        return (result);
 }
 /*
@@ -1583,7 +1643,7 @@ static int osst_space_over_filemarks_backward(OS_Scsi_Tape * STp, Scsi_Cmnd ** a
                               mt_count, last_mark_ppos);
 #endif
                if (last_mark_ppos > 10 && last_mark_ppos < STp->eod_frame_ppos) {
-                       osst_set_frame_position(STp, aSCpnt, last_mark_ppos, 0);
+                       osst_position_tape_and_confirm(STp, aSCpnt, last_mark_ppos);
                        if (osst_get_logical_frame(STp, aSCpnt, -1, 0) < 0) {
 #if DEBUG
                                printk(OSST_DEB_MSG
@@ -1615,7 +1675,7 @@ static int osst_space_over_filemarks_backward(OS_Scsi_Tape * STp, Scsi_Cmnd ** a
 #if DEBUG
                printk(OSST_DEB_MSG "osst%d:D: Positioning to last mark at %d\n", dev, last_mark_ppos);
 #endif
-               osst_set_frame_position(STp, aSCpnt, last_mark_ppos, 0);
+               osst_position_tape_and_confirm(STp, aSCpnt, last_mark_ppos);
                cnt++;
                if (osst_get_logical_frame(STp, aSCpnt, -1, 0) < 0) {
 #if DEBUG
@@ -1740,7 +1800,7 @@ static int osst_space_over_filemarks_forward_fast(OS_Scsi_Tape * STp, Scsi_Cmnd
 #endif
                        return osst_space_over_filemarks_forward_slow(STp, aSCpnt, mt_op, mt_count);
                } else {
-                       osst_set_frame_position(STp, aSCpnt, next_mark_ppos, 0);
+                       osst_position_tape_and_confirm(STp, aSCpnt, next_mark_ppos);
                        if (osst_get_logical_frame(STp, aSCpnt, -1, 0) < 0) {
 #if DEBUG
                                printk(OSST_DEB_MSG "osst%d:D: Couldn't get logical blk num in space_filemarks\n",
@@ -1780,7 +1840,7 @@ static int osst_space_over_filemarks_forward_fast(OS_Scsi_Tape * STp, Scsi_Cmnd
 #endif
                                        return osst_space_over_filemarks_forward_slow(STp, aSCpnt, mt_op, mt_count);
                                }
-                               osst_set_frame_position(STp, aSCpnt, STp->first_mark_ppos, 0);
+                               osst_position_tape_and_confirm(STp, aSCpnt, STp->first_mark_ppos);
                                if (osst_get_logical_frame(STp, aSCpnt, -1, 0) < 0) {
 #if DEBUG
                                        printk(OSST_DEB_MSG
@@ -1812,7 +1872,7 @@ static int osst_space_over_filemarks_forward_fast(OS_Scsi_Tape * STp, Scsi_Cmnd
 #if DEBUG
                        else printk(OSST_DEB_MSG "osst%d:D: Positioning to next mark at %d\n", dev, next_mark_ppos);
 #endif
-                       osst_set_frame_position(STp, aSCpnt, next_mark_ppos, 0);
+                       osst_position_tape_and_confirm(STp, aSCpnt, next_mark_ppos);
                        cnt++;
                        if (osst_get_logical_frame(STp, aSCpnt, -1, 0) < 0) {
 #if DEBUG
@@ -2450,7 +2510,7 @@ static int osst_configure_onstream(OS_Scsi_Tape *STp, Scsi_Cmnd ** aSCpnt)
        }
 
 #if DEBUG
-        printk(KERN_INFO "osst%d:D: Block Size changed to 32.5K\n", dev);
+       printk(KERN_INFO "osst%d:D: Drive Block Size changed to 32.5K\n", dev);
          /*
          * In debug mode, we want to see as many errors as possible
          * to test the error recovery mechanism.
@@ -3356,6 +3416,7 @@ static ssize_t osst_read(struct file * filp, char * buf, size_t count, loff_t *p
       if (transfer)
        return transfer;
       STps->rw = ST_IDLE;
+      /* FIXME -- this may leave the tape without EOD and up2date headers */
     }
 
     if ((count % STp->block_size) != 0) {
@@ -3762,6 +3823,10 @@ static int osst_int_ioctl(OS_Scsi_Tape * STp, Scsi_Cmnd ** aSCpnt, unsigned int
          ioctl_result = osst_flush_write_buffer(STp, &SCpnt);
        else
         ioctl_result = 0;
+#if DEBUG
+       if (debugging) 
+        printk(OSST_DEB_MSG "osst%d:D: Writing %ld filemark(s).\n", dev, arg);
+#endif
        for (i=0; i<arg; i++)
          ioctl_result |= osst_write_filemark(STp, &SCpnt);
        if (fileno >= 0) fileno += arg;
@@ -3781,14 +3846,9 @@ static int osst_int_ioctl(OS_Scsi_Tape * STp, Scsi_Cmnd ** aSCpnt, unsigned int
        cmd[4] = arg;
        timeout = STp->timeout;
 #if DEBUG
-       if (debugging) {
-        if (cmd_in == MTWEOF)
-           printk(OSST_DEB_MSG "osst%d:D: Writing %d filemarks.\n", dev,
-                 cmd[2] * 65536 + cmd[3] * 256 + cmd[4]);
-        else
-           printk(OSST_DEB_MSG "osst%d:D: Writing %d setmarks.\n", dev,
+       if (debugging) 
+          printk(OSST_DEB_MSG "osst%d:D: Writing %d setmark(s).\n", dev,
                  cmd[2] * 65536 + cmd[3] * 256 + cmd[4]);
-       }
 #endif
        if (fileno >= 0)
         fileno += arg;
@@ -3800,9 +3860,13 @@ static int osst_int_ioctl(OS_Scsi_Tape * STp, Scsi_Cmnd ** aSCpnt, unsigned int
      case MTUNLOAD:
      case MTRETEN:
        cmd[0] = START_STOP;
-        cmd[1] = 1;            /* Don't wait for completion */
-       if (cmd_in == MTLOAD)
-        cmd[4] = 1;            /* load */
+       cmd[1] = 1;             /* Don't wait for completion */
+       if (cmd_in == MTLOAD) {
+         if (STp->ready == ST_NO_TAPE)
+            cmd[4] = 4;                /* open tray */
+         else
+            cmd[4] = 1;                /* load */
+       }
        if (cmd_in == MTRETEN)
         cmd[4] = 3;            /* retension then mount */
        if (cmd_in == MTOFFL)
@@ -3940,7 +4004,7 @@ os_bypass:
       printk(OSST_DEB_MSG "osst%d:D: IOCTL (%d) Result=%d\n", dev, cmd_in, ioctl_result);
 #endif
 
-   if (!ioctl_result) {
+       if (!ioctl_result) {                            /* success */
 
       if (cmd_in == MTFSFM) {
         fileno--;
@@ -4017,6 +4081,8 @@ os_bypass:
       if (cmd_in == MTLOCK)
         STp->door_locked = ST_LOCK_FAILS;
 
+      if (cmd_in == MTLOAD && osst_wait_for_medium(STp, &SCpnt, 60))
+        ioctl_result = osst_wait_ready(STp, &SCpnt, 5 * 60);
    }
    *aSCpnt = SCpnt;
 
@@ -4171,7 +4237,7 @@ static int os_scsi_tape_open(struct inode * inode, struct file * filp)
        STp->nbr_partitions = 1;  /* This guess will be updated later if necessary */
       for (i=0; i < ST_NBR_PARTITIONS; i++) {
          STps = &(STp->ps[i]);
-         STps->rw = ST_IDLE;                   /* FIXME - seems to be redundant... */
+         STps->rw = ST_IDLE;           /* FIXME - seems to be redundant... */
          STps->eof = ST_NOEOF;
          STps->at_sm = 0;
          STps->last_block_valid = FALSE;
@@ -4438,8 +4504,7 @@ static int os_scsi_tape_flush(struct file * filp)
       if (result != 0 && result != (-ENOSPC))
          goto out;
     }
-
-    if ( STps->rw == ST_WRITING && !(STp->device)->was_reset) {
+    if ( STps->rw >= ST_WRITING && !(STp->device)->was_reset) {
 
 #if DEBUG
       if (debugging) {
@@ -4449,15 +4514,17 @@ static int os_scsi_tape_flush(struct file * filp)
               dev, STp->nbr_waits, STp->nbr_finished);
       }
 #endif
+      if (STp->write_type != OS_WRITE_NEW_MARK) {
+       /* true unless the user wrote the filemark for us */
+       result = osst_flush_drive_buffer(STp, &SCpnt);
+       if (result < 0) goto out;
+       result = osst_write_filemark(STp, &SCpnt);
+       if (result < 0) goto out;
 
-      result = osst_flush_drive_buffer(STp, &SCpnt);
-      if (result < 0) goto out;
-      result = osst_write_filemark(STp, &SCpnt);
-      if (result < 0) goto out;
-
-      if (STps->drv_file >= 0)
-       STps->drv_file++ ;
-      STps->drv_block = 0;
+       if (STps->drv_file >= 0)
+           STps->drv_file++ ;
+       STps->drv_block = 0;
+      }
 //osst_report_stats();
       result = osst_write_eod(STp, &SCpnt);
       osst_write_header(STp, &SCpnt, !(STp->rew_at_close));
@@ -4588,7 +4655,10 @@ static int osst_ioctl(struct inode * inode,struct file * file,
 
    cmd_type = _IOC_TYPE(cmd_in);
    cmd_nr   = _IOC_NR(cmd_in);
-
+#if DEBUG
+   printk(OSST_DEB_MSG "osst%d:D: Ioctl %d,%d in %s mode\n", dev,
+                       cmd_type, cmd_nr, STp->raw?"raw":"normal");
+#endif
    if (cmd_type == _IOC_TYPE(MTIOCTOP) && cmd_nr == _IOC_NR(MTIOCTOP)) {
      if (_IOC_SIZE(cmd_in) != sizeof(mtc))
        return (-EINVAL);
@@ -4660,8 +4730,8 @@ static int osst_ioctl(struct inode * inode,struct file * file,
        }
      }
 
-     if (mtc.mt_op != MTNOP && mtc.mt_op != MTSETBLK &&
-        mtc.mt_op != MTSETDENSITY && mtc.mt_op != MTWSM &&
+     if (mtc.mt_op != MTNOP && mtc.mt_op != MTWEOF && mtc.mt_op != MTWSM &&
+        mtc.mt_op != MTSETDENSITY && mtc.mt_op != MTSETBLK &&
         mtc.mt_op != MTSETDRVBUFFER && mtc.mt_op != MTSETPART)
        STps->rw = ST_IDLE;  /* Prevent automatic WEOF and fsf */
 
@@ -4703,7 +4773,11 @@ static int osst_ioctl(struct inode * inode,struct file * file,
        return 0;
      }
      if (mtc.mt_op == MTSEEK) {
-       i = osst_seek_sector(STp, &SCpnt, mtc.mt_count);
+       if (STp->raw) {
+        i = osst_set_frame_position(STp, &SCpnt, mtc.mt_count, 0);
+        STp->header_ok = 0;
+       } else
+        i = osst_seek_sector(STp, &SCpnt, mtc.mt_count);
        if (SCpnt) scsi_release_command(SCpnt);
        if (!STp->can_partitions)
           STp->ps[0].rw = ST_IDLE;
@@ -4796,7 +4870,10 @@ static int osst_ioctl(struct inode * inode,struct file * file,
    if (cmd_type == _IOC_TYPE(MTIOCPOS) && cmd_nr == _IOC_NR(MTIOCPOS)) {
      if (_IOC_SIZE(cmd_in) != sizeof(struct mtpos))
        return (-EINVAL);
-     blk = osst_get_sector(STp, &SCpnt);
+     if (STp->raw)
+       blk = osst_get_frame_position(STp, &SCpnt);
+     else
+       blk = osst_get_sector(STp, &SCpnt);
      if (SCpnt) scsi_release_command(SCpnt);
      if (blk < 0)
        return blk;
@@ -5289,6 +5366,7 @@ static int osst_attach(Scsi_Device * SDp){
 
    tpnt->current_mode = 0;
    tpnt->modes[0].defined = TRUE;
+   tpnt->modes[2].defined = TRUE;
 
    tpnt->density_changed = tpnt->compression_changed =
      tpnt->blksize_changed = FALSE;
index f4d1f6d010514a444b6489aefb2a2f2934eb4e74..3360a19f3cd67e6577dfe6cb27a2e38fdf6808c1 100644 (file)
@@ -1,5 +1,5 @@
 /*
- *     $Header: /home/cvsroot/Driver/osst.h,v 1.5.2.4 2001/01/26 01:30:56 riede Exp $
+ *     $Header: /home/cvsroot/Driver/osst.h,v 1.5.2.5 2001/10/11 00:28:20 riede Exp $
  */
 
 #include <linux/config.h>
@@ -517,3 +517,5 @@ extern Scsi_Tape * scsi_tapes;
 #define OS_WRITE_HEADER    4
 #define OS_WRITE_FILLER    5
 
+/* Additional rw state */
+#define OS_WRITING_COMPLETE 3
index 394989b777fefa21e1024496a60e0218dde74179..471872aed9cc181e9d1ff9c993a17ead64ed2331 100644 (file)
@@ -2436,7 +2436,7 @@ static int es1370_midi_release(struct inode *inode, struct file *file)
                        if (file->f_flags & O_NONBLOCK) {
                                remove_wait_queue(&s->midi.owait, &wait);
                                set_current_state(TASK_RUNNING);
-                               return -EBUSY;
+                               break;
                        }
                        tmo = (count * HZ) / 3100;
                        if (!schedule_timeout(tmo ? : 1) && tmo)
index 72276e623a5d603715bc8df255a1817ab7e61cbc..170b4dde03c05bd7226ec52734b025780dfa4457 100644 (file)
@@ -3001,7 +3001,7 @@ static int es1371_midi_release(struct inode *inode, struct file *file)
                        if (file->f_flags & O_NONBLOCK) {
                                remove_wait_queue(&s->midi.owait, &wait);
                                set_current_state(TASK_RUNNING);
-                               return -EBUSY;
+                               break;
                        }
                        tmo = (count * HZ) / 3100;
                        if (!schedule_timeout(tmo ? : 1) && tmo)
index 88ffcf29c1ea5094e408ad6502227a36c966a085..a3097a9295ae98dbead1274287dae11b42eba3db 100644 (file)
@@ -2201,7 +2201,7 @@ static int sv_midi_release(struct inode *inode, struct file *file)
                        if (file->f_flags & O_NONBLOCK) {
                                remove_wait_queue(&s->midi.owait, &wait);
                                set_current_state(TASK_RUNNING);
-                               return -EBUSY;
+                               break;
                        }
                        tmo = (count * HZ) / 3100;
                        if (!schedule_timeout(tmo ? : 1) && tmo)
index 849234947b7dd95a160cde388d6dbab6b503b8b5..ed74059a620fa18580e8813e0b7d796e52b457ae 100644 (file)
@@ -102,6 +102,10 @@ endif
 
 ifeq ($(CONFIG_FB_ATY),y)
 L_OBJS += atyfb.o
+else
+  ifeq ($(CONFIG_FB_ATY),m)
+  M_OBJS += atyfb.o
+  endif
 endif
 
 ifeq ($(CONFIG_FB_ATY128),y)
index 06657c582e08aa98e1cadfd8d9c3eb81c6d0f302..b187b15dd78c0a8587df0e88edd2f60a9ad6393d 100644 (file)
@@ -74,7 +74,7 @@ struct cpuinfo_x86 {
 #define X86_FEATURE_CMOV       0x00008000      /* CMOV instruction (FCMOVCC and FCOMI too if FPU present) */
 #define X86_FEATURE_PAT        0x00010000      /* Page Attribute Table */
 #define X86_FEATURE_PSE36      0x00020000      /* 36-bit PSEs */
-#define X86_FEATURE_18         0x00040000
+#define X86_FEATURE_PN         0x00040000      /* Processor serial number */
 #define X86_FEATURE_19         0x00080000
 #define X86_FEATURE_20         0x00100000
 #define X86_FEATURE_21         0x00200000
@@ -105,6 +105,27 @@ extern void identify_cpu(struct cpuinfo_x86 *);
 extern void print_cpu_info(struct cpuinfo_x86 *);
 extern void dodgy_tsc(void);
 
+/*
+ * EFLAGS bits
+ */
+#define X86_EFLAGS_CF   0x00000001 /* Carry Flag */
+#define X86_EFLAGS_PF   0x00000004 /* Parity Flag */
+#define X86_EFLAGS_AF   0x00000010 /* Auxillary carry Flag */
+#define X86_EFLAGS_ZF   0x00000040 /* Zero Flag */
+#define X86_EFLAGS_SF   0x00000080 /* Sign Flag */
+#define X86_EFLAGS_TF   0x00000100 /* Trap Flag */
+#define X86_EFLAGS_IF   0x00000200 /* Interrupt Flag */
+#define X86_EFLAGS_DF   0x00000400 /* Direction Flag */
+#define X86_EFLAGS_OF   0x00000800 /* Overflow Flag */
+#define X86_EFLAGS_IOPL 0x00003000 /* IOPL mask */
+#define X86_EFLAGS_NT   0x00004000 /* Nested Task */
+#define X86_EFLAGS_RF   0x00010000 /* Resume Flag */
+#define X86_EFLAGS_VM   0x00020000 /* Virtual Mode */
+#define X86_EFLAGS_AC   0x00040000 /* Alignment Check */
+#define X86_EFLAGS_VIF  0x00080000 /* Virtual Interrupt Flag */
+#define X86_EFLAGS_VIP  0x00100000 /* Virtual Interrupt Pending */
+#define X86_EFLAGS_ID   0x00200000 /* CPUID detection flag */
+
 /*
  *     Generic CPUID function
  */
@@ -119,6 +140,47 @@ extern inline void cpuid(int op, int *eax, int *ebx, int *ecx, int *edx)
                : "cc");
 }
 
+/*
+ *  * CPUID functions returning a single datum
+ *   */
+extern inline unsigned int cpuid_eax(unsigned int op)
+{
+       unsigned int eax, ebx, ecx, edx;
+
+       __asm__("cpuid"
+               : "=a" (eax), "=b" (ebx), "=c" (ecx), "=d" (edx)
+               : "a" (op));
+       return eax;
+}
+
+extern inline unsigned int cpuid_ebx(unsigned int op)
+{
+       unsigned int eax, ebx, ecx, edx;
+
+       __asm__("cpuid"
+               : "=a" (eax), "=b" (ebx), "=c" (ecx), "=d" (edx)
+               : "a" (op));
+       return ebx;
+}
+extern inline unsigned int cpuid_ecx(unsigned int op)
+{
+       unsigned int eax, ebx, ecx, edx;
+
+       __asm__("cpuid"
+               : "=a" (eax), "=b" (ebx), "=c" (ecx), "=d" (edx)
+               : "a" (op));
+       return ecx;
+}
+extern inline unsigned int cpuid_edx(unsigned int op)
+{
+       unsigned int eax, ebx, ecx, edx;
+
+       __asm__("cpuid"
+               : "=a" (eax), "=b" (ebx), "=c" (ecx), "=d" (edx)
+               : "a" (op));
+       return edx;
+}
+
 /*
  *      Cyrix CPU configuration register indexes
  */
@@ -129,6 +191,7 @@ extern inline void cpuid(int op, int *eax, int *ebx, int *ecx, int *edx)
 #define CX86_CCR4 0xe8
 #define CX86_CCR5 0xe9
 #define CX86_CCR6 0xea
+#define CX86_CCR7 0xeb
 #define CX86_DIR0 0xfe
 #define CX86_DIR1 0xff
 #define CX86_ARR_BASE 0xc4
@@ -145,6 +208,39 @@ extern inline void cpuid(int op, int *eax, int *ebx, int *ecx, int *edx)
        outb((data), 0x23); \
 } while (0)
 
+/*
+ *  * Intel CPU features in CR4
+ *   */
+#define X86_CR4_VME     0x0001  /* enable vm86 extensions */
+#define X86_CR4_PVI     0x0002  /* virtual interrupts flag enable */
+#define X86_CR4_TSD     0x0004  /* disable time stamp at ipl 3 */
+#define X86_CR4_DE      0x0008  /* enable debugging extensions */
+#define X86_CR4_PSE     0x0010  /* enable page size extensions */
+#define X86_CR4_PAE     0x0020  /* enable physical address extensions */
+#define X86_CR4_MCE     0x0040  /* Machine check enable */
+#define X86_CR4_PGE     0x0080  /* enable global pages */
+#define X86_CR4_PCE     0x0100  /* enable performance counters at ipl 3 */
+#define X86_CR4_OSFXSR      0x0200  /* enable fast FPU save and restore */
+#define X86_CR4_OSXMMEXCPT  0x0400  /* enable unmasked SSE exceptions */
+
+/*
+ * Save the cr4 feature set we're using (ie
+ * Pentium 4MB enable and PPro Global page
+ * enable), so that any CPU's that boot up
+ * after us can get the correct flags.
+ */
+extern unsigned long mmu_cr4_features;
+
+static inline void set_in_cr4 (unsigned long mask)
+{
+       mmu_cr4_features |= mask;
+       __asm__("movl %%cr4,%%eax\n\t"
+               "orl %0,%%eax\n\t"
+               "movl %%eax,%%cr4\n"
+               : : "irg" (mask)
+               :"ax"); 
+}
+
 /*
  * Bus types (default is ISA, but people can check others with these..)
  */
index cf40d7e6b7a1e674376773a7f1e9d15887cb76ef..b50d4bc516d125661bd2eeca732bc776be7a6f89 100644 (file)
@@ -1,8 +1,9 @@
-/*
- * $Id: b1lli.h,v 1.8.8.2 2001/05/17 20:41:52 kai Exp $
+/* $Id: $
  *
  * ISDN lowlevel-module for AVM B1-card.
  *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  * Copyright 1996 by Carsten Paeth (calle@calle.in-berlin.de)
  *
  */
index b73e4ddbeaa001f79b782547cffd7029124cfc5d..b8f8ae682cb5f35a87389509a4df8bea716886e7 100644 (file)
@@ -1,11 +1,13 @@
-/*
- * $Id: b1pcmcia.h,v 1.1.8.1 2001/05/17 20:41:52 kai Exp $
+/* $Id: $
  *
  * Exported functions of module b1pcmcia to be called by
  * avm_cs card services module.
  *
  * Copyright 1999 by Carsten Paeth (calle@calle.in-berlin.de)
  *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
  */
 
 #ifndef _B1PCMCIA_H_
index 0c347e003b21dc0f02153ddc3eaf347c9acdc309..fdbc62189b51f0bfd024ae6b06074415808fd0fc 100644 (file)
@@ -1,10 +1,12 @@
-/*
- * $Id: capi.h,v 1.4 2000/06/12 09:20:20 kai Exp $
+/* $Id: capi.h,v 1.1.2.2 2001/12/31 13:41:12 kai Exp $
  * 
  * CAPI 2.0 Interface for Linux
  * 
  * Copyright 1997 by Carsten Paeth (calle@calle.in-berlin.de)
  * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
  */
 
 #ifndef __LINUX_CAPI_H__
index 54d0984d9c3cfae3cc5f5917f45c50fd501e2acf..f8b1ebec01e5d5ac5d84455747a985fbc6e578f8 100644 (file)
@@ -1,5 +1,11 @@
-/* $Id: concap.h,v 1.2 1999/08/23 15:54:21 keil Exp $
-*/
+/* $Id: $
+ *
+ * Copyright 1997 by Henner Eisen <eis@baty.hanse.de>
+ *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ */
+
 #ifndef _LINUX_CONCAP_H
 #define _LINUX_CONCAP_H
 #ifdef __KERNEL__
 /* Stuff to support encapsulation protocols genericly. The encapsulation
    protocol is processed at the uppermost layer of the network interface.
 
-   (c) 1997 by Henner Eisen <eis@baty.hanse.de>
-   This software is subject to the GNU General Public License.
-
    Based on a ideas developed in a 'synchronous device' thread in the
    linux-x25 mailing list contributed by Alan Cox, Thomasz Motylewski
    and Jonathan Naylor.
 
    For more documetation on this refer to Documentation/isdn/README.concap
-   */
+*/
 
 struct concap_proto_ops;
 struct concap_device_ops;
index 9abd59bd707ad1e1b2b32ce772fe01cbde931fd2..781661bdb393c80836516ae0072b64d8d2d9263f 100644 (file)
@@ -1,23 +1,13 @@
-/* $Id: hysdn_if.h,v 1.1.8.2 2001/05/17 20:41:52 kai Exp $
-
- * Linux driver for HYSDN cards, ioctl definitions shared by hynetmgr and driver.
- * written by Werner Cornelius (werner@titro.de) for Hypercope GmbH
- *
- * Copyright 1999  by Werner Cornelius (werner@titro.de)
+/* $Id: $
  *
- * 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, or (at your option)
- * any later version.
+ * Linux driver for HYSDN cards
+ * ioctl definitions shared by hynetmgr and driver.
  *
- * 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.
+ * Author    Werner Cornelius (werner@titro.de) for Hypercope GmbH
+ * Copyright 1999 by Werner Cornelius (werner@titro.de)
  *
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index 49fd05e4036a72d226fca9be0877d9876939926b..131a78840f4b260a260b14ed56e1b50ca6ba045d 100644 (file)
@@ -1,74 +1,22 @@
-/* $Id: isdn.h,v 1.111.6.3 2001/02/10 14:44:10 kai Exp $
-
+/* $Id: isdn.h,v 1.1.2.1 2001/12/31 13:26:52 kai Exp $
+ *
  * Main header for the Linux ISDN subsystem (linklevel).
  *
  * Copyright 1994,95,96 by Fritz Elfert (fritz@isdn4linux.de)
  * Copyright 1995,96    by Thinking Objects Software GmbH Wuerzburg
  * Copyright 1995,96    by Michael Hipp (Michael.Hipp@student.uni-tuebingen.de)
  * 
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-#ifndef isdn_h
-#define isdn_h
+#ifndef __ISDN_H__
+#define __ISDN_H__
 
-#include <linux/config.h>
+#include <linux/isdn_compat.h>
 #include <linux/ioctl.h>
 
-#define ISDN_TTY_MAJOR    43
-#define ISDN_TTYAUX_MAJOR 44
-#define ISDN_MAJOR        45
-
-/* The minor-devicenumbers for Channel 0 and 1 are used as arguments for
- * physical Channel-Mapping, so they MUST NOT be changed without changing
- * the correspondent code in isdn.c
- */
-
-#ifdef CONFIG_COBALT_MICRO_SERVER
-/* Save memory */
-#define ISDN_MAX_DRIVERS    2
-#define ISDN_MAX_CHANNELS   8
-#else
-#define ISDN_MAX_DRIVERS    32
-#define ISDN_MAX_CHANNELS   64
-#endif
-#define ISDN_MINOR_B        0
-#define ISDN_MINOR_BMAX     (ISDN_MAX_CHANNELS-1)
-#define ISDN_MINOR_CTRL     64
-#define ISDN_MINOR_CTRLMAX  (64 + (ISDN_MAX_CHANNELS-1))
-#define ISDN_MINOR_PPP      128
-#define ISDN_MINOR_PPPMAX   (128 + (ISDN_MAX_CHANNELS-1))
-#define ISDN_MINOR_STATUS   255
-
-#undef CONFIG_ISDN_WITH_ABC_CALLB
-#undef CONFIG_ISDN_WITH_ABC_UDP_CHECK
-#undef CONFIG_ISDN_WITH_ABC_UDP_CHECK_HANGUP
-#undef CONFIG_ISDN_WITH_ABC_UDP_CHECK_DIAL
-#undef CONFIG_ISDN_WITH_ABC_OUTGOING_EAZ
-#undef CONFIG_ISDN_WITH_ABC_LCR_SUPPORT
-#undef CONFIG_ISDN_WITH_ABC_IPV4_TCP_KEEPALIVE
-#undef CONFIG_ISDN_WITH_ABC_IPV4_DYNADDR
-#undef CONFIG_ISDN_WITH_ABC_RCV_NO_HUPTIMER
-#undef CONFIG_ISDN_WITH_ABC_ICALL_BIND
-#undef CONFIG_ISDN_WITH_ABC_CH_EXTINUSE
-#undef CONFIG_ISDN_WITH_ABC_CONN_ERROR
-#undef CONFIG_ISDN_WITH_ABC_RAWIPCOMPRESS
-#undef CONFIG_ISDN_WITH_ABC_IPTABLES_NETFILTER
-
-
 /* New ioctl-codes */
 #define IIOCNETAIF  _IO('I',1)
 #define IIOCNETDIF  _IO('I',2)
 #define ISDN_NET_ENCAP_CISCOHDLCK 6 /* With SLARP and keepalive    */
 #define ISDN_NET_ENCAP_X25IFACE   7 /* Documentation/networking/x25-iface.txt*/
 #define ISDN_NET_ENCAP_MAX_ENCAP  ISDN_NET_ENCAP_X25IFACE
+
 /* Facility which currently uses an ISDN-channel */
 #define ISDN_USAGE_NONE       0
 #define ISDN_USAGE_RAW        1
@@ -147,12 +96,6 @@ typedef struct {
   unsigned long arg;
 } isdn_ioctl_struct;
 
-typedef struct {
-  unsigned long isdndev;
-  unsigned long atmodem[ISDN_MAX_CHANNELS];
-  unsigned long info[ISDN_MAX_CHANNELS];
-} debugvar_addr;
-
 typedef struct {
   char name[10];
   char phone[ISDN_MSNLEN];
@@ -187,14 +130,15 @@ typedef struct {
   int  dialmode;     /* Flag: off / on / auto                 */
 } isdn_net_ioctl_cfg;
 
-#define ISDN_NET_DIALMODE_MASK 0xC0  /* bits for status                   */
-#define  ISDN_NET_DM_OFF       0x00    /* this interface is stopped      */
-#define  ISDN_NET_DM_MANUAL    0x40    /* this interface is on (manual)  */
-#define  ISDN_NET_DM_AUTO      0x80    /* this interface is autodial     */
+#define ISDN_NET_DIALMODE_MASK  0xC0    /* bits for status                */
+#define ISDN_NET_DM_OFF                0x00    /* this interface is stopped      */
+#define ISDN_NET_DM_MANUAL     0x40    /* this interface is on (manual)  */
+#define ISDN_NET_DM_AUTO       0x80    /* this interface is autodial     */
 #define ISDN_NET_DIALMODE(x) ((&(x))->flags & ISDN_NET_DIALMODE_MASK)
 
 #ifdef __KERNEL__
 
+#include <linux/config.h>
 #include <linux/errno.h>
 #include <linux/fs.h>
 #include <linux/major.h>
@@ -218,6 +162,31 @@ typedef struct {
 #include <linux/skbuff.h>
 #include <linux/tcp.h>
 
+#define ISDN_TTY_MAJOR    43
+#define ISDN_TTYAUX_MAJOR 44
+#define ISDN_MAJOR        45
+
+/* The minor-devicenumbers for Channel 0 and 1 are used as arguments for
+ * physical Channel-Mapping, so they MUST NOT be changed without changing
+ * the correspondent code in isdn.c
+ */
+
+#ifdef CONFIG_COBALT_MICRO_SERVER
+/* Save memory */
+#define ISDN_MAX_DRIVERS    2
+#define ISDN_MAX_CHANNELS   8
+#else
+#define ISDN_MAX_DRIVERS    32
+#define ISDN_MAX_CHANNELS   64
+#endif
+#define ISDN_MINOR_B        0
+#define ISDN_MINOR_BMAX     (ISDN_MAX_CHANNELS-1)
+#define ISDN_MINOR_CTRL     64
+#define ISDN_MINOR_CTRLMAX  (64 + (ISDN_MAX_CHANNELS-1))
+#define ISDN_MINOR_PPP      128
+#define ISDN_MINOR_PPPMAX   (128 + (ISDN_MAX_CHANNELS-1))
+#define ISDN_MINOR_STATUS   255
+
 #ifdef CONFIG_ISDN_PPP
 
 #ifdef CONFIG_ISDN_PPP_VJ
@@ -427,7 +396,7 @@ typedef struct isdn_net_dev_s {
   struct device dev;               /* interface to upper levels        */
 #ifdef CONFIG_ISDN_PPP
   ippp_bundle * pb;            /* pointer to the common bundle structure
-                                * with the the per-bundle data */
+                                * with the per-bundle data */
 #endif
 #ifdef CONFIG_ISDN_X25
   struct concap_proto  *cprot; /* connection oriented encapsulation protocol */
@@ -668,4 +637,5 @@ extern isdn_dev *dev;
 #define MIN(a,b) ((a<b)?a:b)
 #define MAX(a,b) ((a>b)?a:b)
 #endif /* __KERNEL__ */
-#endif /* isdn_h */
+
+#endif /* __ISDN_H__ */
index ef532bad430fbc10caadab3c27d41ef7c7fa4ec8..2f42ad487fec944246d96f46fac727b5529472b2 100644 (file)
@@ -1,22 +1,12 @@
-/* $Id: isdn_divertif.h,v 1.4 2000/05/11 22:29:22 kai Exp $
-
- * Header for the diversion supplementary interface for i4l.
+/* $Id: isdn_divertif.h,v 1.1.2.1 2001/12/31 13:26:52 kai Exp $
  *
- * Copyright 1998       by Werner Cornelius (werner@isdn4linux.de)
- * 
- * 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, or (at your option)
- * any later version.
+ * Header for the diversion supplementary interface for i4l.
  *
- * 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.
+ * Author    Werner Cornelius (werner@titro.de)
+ * Copyright by Werner Cornelius (werner@titro.de)
  *
- * 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
index ddd27a95a140192e938e6485f5185c505944e00c..7b86dba02dcc63ccf1fb5b953de9ac3f45f0b9ec 100644 (file)
@@ -1,9 +1,14 @@
-/* -*- mode: c; c-basic-offset: 2 -*- */
+/*
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
+ */
+
 
 #ifndef _LINUX_ISDN_PPP_H
 #define _LINUX_ISDN_PPP_H
 
-#include <linux/config.h>
+#include <linux/isdn_compat.h>
 
 #define CALLTYPE_INCOMING 0x1
 #define CALLTYPE_OUTGOING 0x2
@@ -47,13 +52,6 @@ struct pppcallinfo
 #define SC_LINK_DECOMP_DISCARD 0x40
 #define SC_LINK_COMP_DISCARD   0x80
 
-#define DECOMP_ERR_NOMEM       (-10)
-
-#define MP_END_FRAG    0x40
-#define MP_BEGIN_FRAG  0x80
-
-#define MP_MAX_QUEUE_LEN       16
-
 #define ISDN_PPP_COMP_MAX_OPTIONS 16
 
 #define IPPP_COMP_FLAG_XMIT 0x1
@@ -68,6 +66,17 @@ struct isdn_ppp_comp_data {
 
 #ifdef __KERNEL__
 
+
+#include <linux/config.h>
+
+
+#define DECOMP_ERR_NOMEM       (-10)
+
+#define MP_END_FRAG    0x40
+#define MP_BEGIN_FRAG  0x80
+
+#define MP_MAX_QUEUE_LEN       16
+
 /*
  * We need a way for the decompressor to influence the generation of CCP
  * Reset-Requests in a variety of ways. The decompressor is already returning
index 1d5d4f85b7dd9ac041b2d8116e4188cd26b1835e..424c157e4f6e26b7102665aedefddd052522d392 100644 (file)
@@ -1,32 +1,20 @@
-/* $Id: isdnif.h,v 1.37 2000/11/19 17:01:54 kai Exp $
-
- * Linux ISDN subsystem
+/* $Id: isdnif.h,v 1.1.2.1 2001/12/31 13:26:52 kai Exp $
  *
+ * Linux ISDN subsystem
  * Definition of the interface between the subsystem and its low-level drivers.
  *
  * Copyright 1994,95,96 by Fritz Elfert (fritz@isdn4linux.de)
  * Copyright 1995,96    Thinking Objects Software GmbH Wuerzburg
  * 
- * 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, 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 software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
  *
  */
 
-#ifndef isdnif_h
-#define isdnif_h
+#ifndef __ISDNIF_H__
+#define __ISDNIF_H__
 
-#include <linux/config.h>
+#include <linux/isdn_compat.h>
 
 /*
  * Values for general protocol-selection
@@ -67,6 +55,7 @@
 
 #ifdef __KERNEL__
 
+#include <linux/config.h>
 #include <linux/skbuff.h>
 
 /***************************************************************************/
@@ -560,4 +549,5 @@ extern int register_isdn(isdn_if*);
 #include <asm/uaccess.h>
 
 #endif /* __KERNEL__ */
-#endif /* isdnif_h */
+
+#endif /* __ISDNIF_H__ */
index 5bdcd805e312a5ce84e332efff94899fad9019ff..996ce94559ed516514e69f3485759653751bab06 100644 (file)
@@ -1,10 +1,12 @@
-/*
- * $Id: kernelcapi.h,v 1.8.6.2 2001/02/07 11:31:31 kai Exp $
+/* $Id: kernelcapi.h,v 1.1.2.2 2001/12/31 13:41:12 kai Exp $
  * 
  * Kernel CAPI 2.0 Interface for Linux
  * 
  * (c) Copyright 1997 by Carsten Paeth (calle@calle.in-berlin.de)
  * 
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
  */
 
 #ifndef __KERNELCAPI_H__
index c50b867f5990339db27074b9616c54aeb43618aa..6564c44427912afb10c7916b840b5f03640b5577 100644 (file)
@@ -181,6 +181,8 @@ const char __module_device[] __attribute__((section(".modinfo"))) =            \
        s       string
 */
 
+#define MODULE_LICENSE(var)
+
 #define MODULE_PARM(var,type)                  \
 const char __module_parm_##var[]               \
 __attribute__((section(".modinfo"))) =         \
index 7dd86abe769946314e1ee3f73544e47f218c2fe6..e962cecc6c063316737f415f06b60750bc0287fd 100644 (file)
 #define PCI_DEVICE_ID_TTI_HPT343       0x0003
 
 #define PCI_VENDOR_ID_VIA              0x1106
-#define PCI_DEVICE_ID_VIA_8371_0        0x0391
+#define PCI_DEVICE_ID_VIA_8363_0       0x0305
+#define PCI_DEVICE_ID_VIA_8371_0       0x0391
+#define PCI_DEVICE_ID_VIA_8501_0       0x0501
 #define PCI_DEVICE_ID_VIA_82C505       0x0505
 #define PCI_DEVICE_ID_VIA_82C561       0x0561
 #define PCI_DEVICE_ID_VIA_82C586_1     0x0571
 #define PCI_DEVICE_ID_VIA_82C585       0x0585
 #define PCI_DEVICE_ID_VIA_82C586_0     0x0586
 #define PCI_DEVICE_ID_VIA_82C595       0x0595
-#define PCI_DEVICE_ID_VIA_82C596_0     0x0596
+#define PCI_DEVICE_ID_VIA_82C596       0x0596
 #define PCI_DEVICE_ID_VIA_82C597_0     0x0597
-#define PCI_DEVICE_ID_VIA_82C598_0      0x0598
+#define PCI_DEVICE_ID_VIA_82C598_0     0x0598
+#define PCI_DEVICE_ID_VIA_8601_0       0x0601
+#define PCI_DEVICE_ID_VIA_8605_0       0x0605
+#define PCI_DEVICE_ID_VIA_82C680       0x0680
+#define PCI_DEVICE_ID_VIA_82C686       0x0686
+#define PCI_DEVICE_ID_VIA_82C691       0x0691
+#define PCI_DEVICE_ID_VIA_82C693       0x0693
+#define PCI_DEVICE_ID_VIA_82C693_1     0x0698
 #define PCI_DEVICE_ID_VIA_82C926       0x0926
-#define PCI_DEVICE_ID_VIA_82C416       0x1571
+#define PCI_DEVICE_ID_VIA_82C576_1     0x1571
 #define PCI_DEVICE_ID_VIA_82C595_97    0x1595
 #define PCI_DEVICE_ID_VIA_82C586_2     0x3038
 #define PCI_DEVICE_ID_VIA_82C586_3     0x3040
+#define PCI_DEVICE_ID_VIA_6305         0x3044
+#define PCI_DEVICE_ID_VIA_82C596_3     0x3050
+#define PCI_DEVICE_ID_VIA_82C596B_3    0x3051
+#define PCI_DEVICE_ID_VIA_82C686_4     0x3057
 #define PCI_DEVICE_ID_VIA_82C686_5     0x3058
+#define PCI_DEVICE_ID_VIA_8233_5       0x3059
+#define PCI_DEVICE_ID_VIA_8233_7       0x3065
+#define PCI_DEVICE_ID_VIA_82C686_6     0x3068
+#define PCI_DEVICE_ID_VIA_8233_0       0x3074
+#define PCI_DEVICE_ID_VIA_8233C_0      0x3109
+#define PCI_DEVICE_ID_VIA_8633_0       0x3091
+#define PCI_DEVICE_ID_VIA_8367_0       0x3099
+#define PCI_DEVICE_ID_VIA_8622          0x3102
+#define PCI_DEVICE_ID_VIA_8361          0x3112
 #define PCI_DEVICE_ID_VIA_86C100A      0x6100
+#define PCI_DEVICE_ID_VIA_8231         0x8231
+#define PCI_DEVICE_ID_VIA_8231_4       0x8235
+#define PCI_DEVICE_ID_VIA_8365_1       0x8305
+#define PCI_DEVICE_ID_VIA_8371_1       0x8391
+#define PCI_DEVICE_ID_VIA_8501_1       0x8501
 #define PCI_DEVICE_ID_VIA_82C597_1     0x8597
-#define PCI_DEVICE_ID_VIA_82C598_1      0x8598
+#define PCI_DEVICE_ID_VIA_82C598_1     0x8598
+#define PCI_DEVICE_ID_VIA_8601_1       0x8601
+#define PCI_DEVICE_ID_VIA_8505_1       0X8605
+#define PCI_DEVICE_ID_VIA_8633_1       0xB091
+#define PCI_DEVICE_ID_VIA_8367_1       0xB099
 
 #define PCI_VENDOR_ID_SMC2             0x1113
 #define PCI_DEVICE_ID_SMC2_1211TX      0x1211
 #define PCI_DEVICE_ID_AVM_A1           0x0a00
 #define PCI_DEVICE_ID_AVM_B1           0x0700
 #define PCI_DEVICE_ID_AVM_C4           0x0800
+#define PCI_DEVICE_ID_AVM_C2           0x1100
 #define PCI_DEVICE_ID_AVM_T1           0x1200
 
 #define PCI_VENDOR_ID_DIPIX            0x1246
index af0b1ffc4bd807702cdd50343ef210aeda0892b7..eba0282148b4a054df0023738015cac68048e7bf 100644 (file)
@@ -108,8 +108,8 @@ print_buttons( WINDOW *dialog, int height, int width, int selected)
     print_button (dialog, "Select", y, x, selected == 0);
     print_button (dialog, " Help ", y, x + 14, selected == 1);
 
-    /*    wmove(dialog, y, x+1 + 14*selected);
-    wrefresh (dialog);*/
+    /*    wmove(dialog, y, x+1 + 14*selected);*/
+    wrefresh (dialog);
 }
 
 /*