]> git.neil.brown.name Git - history.git/commitdiff
Import 2.4.0-test6pre6 2.4.0-test6pre6
authorLinus Torvalds <torvalds@linuxfoundation.org>
Fri, 23 Nov 2007 20:37:33 +0000 (15:37 -0500)
committerLinus Torvalds <torvalds@linuxfoundation.org>
Fri, 23 Nov 2007 20:37:33 +0000 (15:37 -0500)
231 files changed:
arch/arm/mm/small_page.c
arch/i386/kernel/microcode.c
arch/ia64/mm/init.c
arch/m68k/atari/stram.c
arch/mips/mm/r4xx0.c
arch/mips64/mm/r4xx0.c
arch/sparc/kernel/irq.c
arch/sparc/kernel/rtrap.S
arch/sparc/kernel/sparc_ksyms.c
arch/sparc64/kernel/irq.c
arch/sparc64/kernel/signal32.c
arch/sparc64/kernel/smp.c
arch/sparc64/kernel/sparc64_ksyms.c
arch/sparc64/mm/init.c
arch/sparc64/mm/ultra.S
drivers/Makefile
drivers/acorn/block/Makefile
drivers/acorn/net/Makefile
drivers/acorn/scsi/Makefile
drivers/atm/Makefile
drivers/block/Makefile
drivers/block/loop.c
drivers/block/paride/Makefile
drivers/block/raid1.c
drivers/block/raid5.c
drivers/cdrom/Makefile
drivers/char/bttv-cards.c
drivers/char/bttv-driver.c
drivers/char/bttv.h
drivers/char/cpia.c
drivers/char/joystick/Makefile
drivers/char/msp3400.c
drivers/char/pcmcia/Makefile
drivers/char/tda9875.c
drivers/fc4/Makefile
drivers/i2c/Makefile
drivers/ide/Makefile
drivers/ide/ide-geometry.c
drivers/ieee1394/Makefile
drivers/ieee1394/video1394.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/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/lmgr.c
drivers/isdn/hisax/mic.c
drivers/isdn/hisax/netjet.c
drivers/isdn/hisax/niccy.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/isdn_audio.c
drivers/isdn/isdn_audio.h
drivers/isdn/isdn_cards.c
drivers/isdn/isdn_cards.h
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_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/mtd/Makefile
drivers/net/82596.c
drivers/net/Makefile
drivers/net/at1700.c
drivers/net/fc/Makefile
drivers/net/fc/iph5526.c
drivers/net/hamradio/Makefile
drivers/net/irda/Makefile
drivers/net/pcmcia/Makefile
drivers/net/sk98lin/Makefile
drivers/net/skfp/Makefile
drivers/net/wan/lmc/Makefile
drivers/parport/parport_pc.c
drivers/pcmcia/Makefile
drivers/pcmcia/cs.c
drivers/scsi/Makefile
drivers/scsi/pcmcia/Makefile
drivers/scsi/sg.c
drivers/sgi/Makefile
drivers/sound/Makefile
drivers/usb/Makefile
drivers/usb/ibmcam.c
drivers/usb/ov511.c
drivers/usb/serial/Makefile
drivers/usb/storage/Makefile
drivers/usb/usb-ohci.c
drivers/video/Makefile
drivers/video/cyber2000fb.c
drivers/video/cyberfb.c
drivers/video/dn_cfb4.c
drivers/video/dn_cfb8.c
drivers/video/dnfb.c
drivers/video/fbmem.c
drivers/video/hitfb.c
drivers/video/hpfb.c
drivers/video/matrox/Makefile
drivers/video/sa1100fb.c
drivers/video/sgivwfb.c
fs/Makefile
fs/buffer.c
fs/cramfs/inode.c
fs/exec.c
fs/ext2/balloc.c
fs/jffs/inode-v23.c
fs/ncpfs/mmap.c
fs/nfs/read.c
fs/nls/Makefile
fs/ramfs/inode.c
fs/romfs/inode.c
fs/smbfs/file.c
fs/udf/file.c
fs/udf/inode.c
fs/umsdos/emd.c
fs/umsdos/inode.c
include/asm-alpha/pgalloc.h
include/asm-alpha/softirq.h
include/asm-arm/proc-armo/cache.h
include/asm-arm/proc-armv/cache.h
include/asm-i386/highmem.h
include/asm-i386/pgtable.h
include/asm-ia64/pgtable.h
include/asm-m68k/pgalloc.h
include/asm-m68k/pgtable.h
include/asm-mips/pgtable.h
include/asm-mips64/pgtable.h
include/asm-ppc/pgtable.h
include/asm-s390/pgtable.h
include/asm-sh/pgtable.h
include/asm-sparc/highmem.h
include/asm-sparc/irq.h
include/asm-sparc/pgtable.h
include/asm-sparc/softirq.h
include/asm-sparc64/pgalloc.h
include/asm-sparc64/pgtable.h
include/asm-sparc64/softirq.h
include/linux/highmem.h
include/linux/irq_cpustat.h
include/linux/isdn.h
include/linux/isdnif.h
include/linux/mm.h
include/linux/slab.h
init/main.c
kernel/kmod.c
kernel/softirq.c
kernel/timer.c
mm/filemap.c
mm/highmem.c
mm/page_alloc.c
mm/slab.c
net/Makefile
net/econet/Makefile
net/ipv4/Makefile
net/ipv4/netfilter/Makefile
net/ipv4/netfilter/ip_tables.c
net/ipv6/Makefile
net/ipv6/netfilter/Makefile
net/irda/Makefile
net/irda/compressors/Makefile
net/irda/irlan/Makefile
net/khttpd/Makefile
net/netlink/Makefile
net/packet/Makefile

index ee7f571a72c19a303bd7ab7e000a5cb1306726ac..40c91ba323966212626fc5f56986dba5ff973290 100644 (file)
@@ -116,7 +116,7 @@ again:
                remove_page_from_queue(page);
        restore_flags(flags);
 
-       return page_address(page) + (offset << order->shift);
+       return (unsigned long) page_address(page) + (offset << order->shift);
 
 need_new_page:
        page = alloc_page(priority);
index c02385e793f46b3a5561207de7298db407df6472..64db873a93ae8551e15fb8a10136dfa075d18c2e 100644 (file)
@@ -1,13 +1,14 @@
 /*
- *     CPU Microcode Update interface for Linux
+ *     Intel CPU Microcode Update driver for Linux
  *
  *     Copyright (C) 2000 Tigran Aivazian
  *
  *     This driver allows to upgrade microcode on Intel processors
- *     belonging to P6 family - PentiumPro, Pentium II, Pentium III etc.
+ *     belonging to P6 family - PentiumPro, Pentium II, 
+ *     Pentium III, Xeon etc.
  *
  *     Reference: Section 8.10 of Volume III, Intel Pentium III Manual, 
- *     Order Number 243192 or download from:
+ *     Order Number 243192 or free download from:
  *             
  *     http://developer.intel.com/design/pentiumii/manuals/243192.htm
  *
  *     as published by the Free Software Foundation; either version
  *     2 of the License, or (at your option) any later version.
  *
- *     1.0     16 February 2000, Tigran Aivazian <tigran@sco.com>
+ *     1.0     16 Feb 2000, Tigran Aivazian <tigran@sco.com>
  *             Initial release.
- *     1.01    18 February 2000, Tigran Aivazian <tigran@sco.com>
+ *     1.01    18 Feb 2000, Tigran Aivazian <tigran@sco.com>
  *             Added read() support + cleanups.
- *     1.02    21 February 2000, Tigran Aivazian <tigran@sco.com>
+ *     1.02    21 Feb 2000, Tigran Aivazian <tigran@sco.com>
  *             Added 'device trimming' support. open(O_WRONLY) zeroes
  *             and frees the saved copy of applied microcode.
- *     1.03    29 February 2000, Tigran Aivazian <tigran@sco.com>
+ *     1.03    29 Feb 2000, Tigran Aivazian <tigran@sco.com>
  *             Made to use devfs (/dev/cpu/microcode) + cleanups.
- *     1.04    06 June 2000, Simon Trimmer <simon@veritas.com>
+ *     1.04    06 Jun 2000, Simon Trimmer <simon@veritas.com>
  *             Added misc device support (now uses both devfs and misc).
  *             Added MICROCODE_IOCFREE ioctl to clear memory.
- *     1.05    09 June 2000, Simon Trimmer <simon@veritas.com>
+ *     1.05    09 Jun 2000, Simon Trimmer <simon@veritas.com>
  *             Messages for error cases (non intel & no suitable microcode).
+ *     1.06    03 Aug 2000, Tigran Aivazian <tigran@veritas.com>
+ *             Removed ->release(). Removed exclusive open and status bitmap.
+ *             Added microcode_rwsem to serialize read()/write()/ioctl().
+ *             Removed global kernel lock usage.
  */
 
 #include <linux/init.h>
-#include <linux/slab.h>
 #include <linux/sched.h>
 #include <linux/module.h>
+#include <linux/malloc.h>
 #include <linux/vmalloc.h>
-#include <linux/smp_lock.h>
 #include <linux/miscdevice.h>
 #include <linux/devfs_fs_kernel.h>
 
@@ -47,7 +51,7 @@
 #include <asm/uaccess.h>
 #include <asm/processor.h>
 
-#define MICROCODE_VERSION      "1.05"
+#define MICROCODE_VERSION      "1.06"
 
 MODULE_DESCRIPTION("Intel CPU (P6) microcode update driver");
 MODULE_AUTHOR("Tigran Aivazian <tigran@veritas.com>");
@@ -55,28 +59,20 @@ EXPORT_NO_SYMBOLS;
 
 /* VFS interface */
 static int microcode_open(struct inode *, struct file *);
-static int microcode_release(struct inode *, struct file *);
 static ssize_t microcode_read(struct file *, char *, size_t, loff_t *);
 static ssize_t microcode_write(struct file *, const char *, size_t, loff_t *);
 static int microcode_ioctl(struct inode *, struct file *, unsigned int, unsigned long);
 
-
-/* internal helpers to do the work */
 static int do_microcode_update(void);
 static void do_update_one(void *);
 
-/*
- *  Bits in microcode_status. (31 bits of room for future expansion)
- */
-#define MICROCODE_IS_OPEN      0       /* set if device is in use */
+/* read()/write()/ioctl() are serialized on this */
+DECLARE_RWSEM(microcode_rwsem);
 
-static unsigned long microcode_status;
-
-/* the actual array of microcode blocks, each 2048 bytes */
-static struct microcode *microcode;
-static unsigned int microcode_num;
-static char *mc_applied; /* holds an array of applied microcode blocks */
-static unsigned int mc_fsize;
+static struct microcode *microcode; /* array of 2048byte microcode blocks */
+static unsigned int microcode_num;  /* number of chunks in microcode */
+static char *mc_applied;            /* array of applied microcode blocks */
+static unsigned int mc_fsize;       /* file size of /dev/cpu/microcode */
 
 static struct file_operations microcode_fops = {
        owner:          THIS_MODULE,
@@ -84,7 +80,6 @@ static struct file_operations microcode_fops = {
        write:          microcode_write,
        ioctl:          microcode_ioctl,
        open:           microcode_open,
-       release:        microcode_release,
 };
 
 static struct miscdevice microcode_dev = {
@@ -112,8 +107,7 @@ static int __init microcode_init(void)
                printk(KERN_ERR "microcode: failed to devfs_register()\n");
                return -EINVAL;
        }
-       printk(KERN_INFO "P6 Microcode Update Driver v%s registered\n", 
-                       MICROCODE_VERSION);
+       printk(KERN_INFO "P6 Microcode Update Driver v%s\n", MICROCODE_VERSION);
        return 0;
 }
 
@@ -130,29 +124,12 @@ static void __exit microcode_exit(void)
 module_init(microcode_init);
 module_exit(microcode_exit);
 
-/*
- * We enforce only one user at a time here with open/close.
- */
-static int microcode_open(struct inode *inode, struct file *file)
+static int microcode_open(struct inode *unused1, struct file *unused2)
 {
-       if (!capable(CAP_SYS_RAWIO))
-               return -EPERM;
-
-       /* one at a time, please */
-       if (test_and_set_bit(MICROCODE_IS_OPEN, &microcode_status))
-               return -EBUSY;
-
-       return 0;
+       return capable(CAP_SYS_RAWIO) ? 0 : -EPERM;
 }
 
-/* our specific f_op->release() method needs no locking */
-static int microcode_release(struct inode *inode, struct file *file)
-{
-       clear_bit(MICROCODE_IS_OPEN, &microcode_status);
-       return 0;
-}
-
-/* a pointer to 'struct update_req' is passed to the IPI handler = do_update_one()
+/*
  * update_req[cpu].err is set to 1 if update failed on 'cpu', 0 otherwise
  * if err==0, microcode[update_req[cpu].slot] points to applied block of microcode
  */
@@ -166,9 +143,11 @@ static int do_microcode_update(void)
        int i, error = 0, err;
        struct microcode *m;
 
-       if (smp_call_function(do_update_one, (void *)update_req, 1, 1) != 0)
-               panic("do_microcode_update(): timed out waiting for other CPUs\n");
-       do_update_one((void *)update_req);
+       if (smp_call_function(do_update_one, NULL, 1, 1) != 0) {
+               printk(KERN_ERR "microcode: IPI timeout, giving up\n");
+               return -EIO;
+       }
+       do_update_one(NULL);
 
        for (i=0; i<smp_num_cpus; i++) {
                err = update_req[i].err;
@@ -181,18 +160,18 @@ static int do_microcode_update(void)
        return error;
 }
 
-static void do_update_one(void *arg)
+static void do_update_one(void *unused)
 {
        int cpu_num = smp_processor_id();
        struct cpuinfo_x86 *c = cpu_data + cpu_num;
-       struct update_req *req = (struct update_req *)arg + cpu_num;
+       struct update_req *req = update_req + cpu_num;
        unsigned int pf = 0, val[2], rev, sig;
        int i,found=0;
 
-       req->err = 1; /* be pessimistic */
+       req->err = 1; /* assume the worst */
 
        if (c->x86_vendor != X86_VENDOR_INTEL || c->x86 < 6){
-               printk(KERN_ERR "microcode: CPU%d not an Intel P6\n", cpu_num );
+               printk(KERN_ERR "microcode: CPU%d not an Intel P6\n", cpu_num);
                return;
        }
 
@@ -242,18 +221,23 @@ static void do_update_one(void *arg)
                }
 
        if(!found)
-               printk(KERN_ERR "microcode: found no data for CPU%d (sig=%x, pflags=%d)\n", cpu_num, sig, pf);
+               printk(KERN_ERR "microcode: CPU%d no microcode found! (sig=%x, pflags=%d)\n",
+                               cpu_num, sig, pf);
 }
 
 static ssize_t microcode_read(struct file *file, char *buf, size_t len, loff_t *ppos)
 {
        if (*ppos >= mc_fsize)
                return 0;
+       down_read(&microcode_rwsem);
        if (*ppos + len > mc_fsize)
                len = mc_fsize - *ppos;
-       if (copy_to_user(buf, mc_applied + *ppos, len))
+       if (copy_to_user(buf, mc_applied + *ppos, len)) {
+               up_read(&microcode_rwsem);
                return -EFAULT;
+       }
        *ppos += len;
+       up_read(&microcode_rwsem);
        return len;
 }
 
@@ -266,27 +250,29 @@ static ssize_t microcode_write(struct file *file, const char *buf, size_t len, l
                        sizeof(struct microcode));
                return -EINVAL;
        }
+       down_write(&microcode_rwsem);
        if (!mc_applied) {
                mc_applied = kmalloc(smp_num_cpus*sizeof(struct microcode),
                                GFP_KERNEL);
                if (!mc_applied) {
                        printk(KERN_ERR "microcode: out of memory for saved microcode\n");
+                       up_write(&microcode_rwsem);
                        return -ENOMEM;
                }
-               memset(mc_applied, 0, mc_fsize);
        }
        
-       lock_kernel();
        microcode_num = len/sizeof(struct microcode);
        microcode = vmalloc(len);
        if (!microcode) {
                ret = -ENOMEM;
                goto out_unlock;
        }
+
        if (copy_from_user(microcode, buf, len)) {
                ret = -EFAULT;
                goto out_fsize;
        }
+
        if(do_microcode_update()) {
                ret = -EIO;
                goto out_fsize;
@@ -298,7 +284,7 @@ out_fsize:
        devfs_set_file_size(devfs_handle, mc_fsize);
        vfree(microcode);
 out_unlock:
-       unlock_kernel();
+       up_write(&microcode_rwsem);
        return ret;
 }
 
@@ -307,23 +293,22 @@ static int microcode_ioctl(struct inode *inode, struct file *file,
 {
        switch(cmd) {
                case MICROCODE_IOCFREE:
+                       down_write(&microcode_rwsem);
                        if (mc_applied) {
                                devfs_set_file_size(devfs_handle, 0);
-                               memset(mc_applied, 0, mc_fsize);
                                kfree(mc_applied);
                                mc_applied = NULL;
-                               printk(KERN_WARNING 
-                                       "microcode: freed %d bytes\n", mc_fsize);
+                               printk(KERN_INFO "microcode: freed %d bytes\n", mc_fsize);
                                mc_fsize = 0;
+                               up_write(&microcode_rwsem);
                                return 0;
                        }
+                       up_write(&microcode_rwsem);
                        return -ENODATA;
 
                default:
-                       printk(KERN_ERR "microcode: unknown ioctl cmd=%d\n",
-                                       cmd);
+                       printk(KERN_ERR "microcode: unknown ioctl cmd=%d\n", cmd);
                        return -EINVAL;
        }
-       /* NOT REACHED */
        return -EINVAL;
 }
index aed9995737e647bdbabba4d4bf0ea13c0ee10c0f..d911c91bf17888b7fe72127155f46a95d80ebe8a 100644 (file)
@@ -249,7 +249,7 @@ put_gate_page (struct page *page, unsigned long address)
        pte_t *pte;
 
        if (!PageReserved(page))
-               printk("put_gate_page: gate page at 0x%lx not in reserved memory\n",
+               printk("put_gate_page: gate page at 0x%p not in reserved memory\n",
                       page_address(page));
 
        pgd = pgd_offset_k(address);            /* note: this is NOT pgd_offset()! */
index 7406a8d02e3ae4f6f3d271e92768db12801d214c..2b804b7670a30741df873081d58a9d7dd978582e 100644 (file)
@@ -934,7 +934,7 @@ static int unswap_by_read(unsigned short *map, unsigned long max,
                           get a clean page and read the swap into it. */
                        page_map = read_swap_cache(entry);
                        if (page_map) {
-                               page = page_address(page_map);
+                               page = (unsigned long) page_address(page_map);
                                read_lock(&tasklist_lock);
                                for_each_task(p)
                                        unswap_process(p->mm, entry, page
index 2796766161e87f0ba72ec61de347265d83bead36..1927e819403fea271dc874e6b0331d73adb1273d 100644 (file)
@@ -1963,7 +1963,7 @@ out:
  */
 static void r4k_flush_page_to_ram_s16d16i16(struct page * page)
 {
-       unsigned long addr = page_address(page) & PAGE_MASK;
+       unsigned long addr = (unsigned long) page_address(page) & PAGE_MASK;
 
        if ((addr >= KSEG0 && addr < KSEG1) || (addr >= KSEG2)) {
 #ifdef DEBUG_CACHE
@@ -1975,7 +1975,7 @@ static void r4k_flush_page_to_ram_s16d16i16(struct page * page)
 
 static void r4k_flush_page_to_ram_s32d16i16(struct page * page)
 {
-       unsigned long addr = page_address(page) & PAGE_MASK;
+       unsigned long addr = (unsigned long) page_address(page) & PAGE_MASK;
 
        if ((addr >= KSEG0 && addr < KSEG1) || (addr >= KSEG2)) {
 #ifdef DEBUG_CACHE
@@ -1987,7 +1987,7 @@ static void r4k_flush_page_to_ram_s32d16i16(struct page * page)
 
 static void r4k_flush_page_to_ram_s64d16i16(struct page * page)
 {
-       unsigned long addr = page_address(page) & PAGE_MASK;
+       unsigned long addr = (unsigned long) page_address(page) & PAGE_MASK;
 
        if ((addr >= KSEG0 && addr < KSEG1) || (addr >= KSEG2)) {
 #ifdef DEBUG_CACHE
@@ -1999,7 +1999,7 @@ static void r4k_flush_page_to_ram_s64d16i16(struct page * page)
 
 static void r4k_flush_page_to_ram_s128d16i16(struct page * page)
 {
-       unsigned long addr = page_address(page) & PAGE_MASK;
+       unsigned long addr = (unsigned long) page_address(page) & PAGE_MASK;
 
        if ((addr >= KSEG0 && addr < KSEG1) || (addr >= KSEG2)) {
 #ifdef DEBUG_CACHE
@@ -2011,7 +2011,7 @@ static void r4k_flush_page_to_ram_s128d16i16(struct page * page)
 
 static void r4k_flush_page_to_ram_s32d32i32(struct page * page)
 {
-       unsigned long addr = page_address(page) & PAGE_MASK;
+       unsigned long addr = (unsigned long) page_address(page) & PAGE_MASK;
 
        if ((addr >= KSEG0 && addr < KSEG1) || (addr >= KSEG2)) {
 #ifdef DEBUG_CACHE
@@ -2023,7 +2023,7 @@ static void r4k_flush_page_to_ram_s32d32i32(struct page * page)
 
 static void r4k_flush_page_to_ram_s64d32i32(struct page * page)
 {
-       unsigned long addr = page_address(page) & PAGE_MASK;
+       unsigned long addr = (unsigned long) page_address(page) & PAGE_MASK;
 
        if ((addr >= KSEG0 && addr < KSEG1) || (addr >= KSEG2)) {
 #ifdef DEBUG_CACHE
@@ -2035,7 +2035,7 @@ static void r4k_flush_page_to_ram_s64d32i32(struct page * page)
 
 static void r4k_flush_page_to_ram_s128d32i32(struct page * page)
 {
-       unsigned long addr = page_address(page) & PAGE_MASK;
+       unsigned long addr = (unsigned long) page_address(page) & PAGE_MASK;
 
        if ((addr >= KSEG0 && addr < KSEG1) || (addr >= KSEG2)) {
 #ifdef DEBUG_CACHE
@@ -2047,7 +2047,7 @@ static void r4k_flush_page_to_ram_s128d32i32(struct page * page)
 
 static void r4k_flush_page_to_ram_d16i16(struct page * page)
 {
-       unsigned long addr = page_address(page) & PAGE_MASK;
+       unsigned long addr = (unsigned long) page_address(page) & PAGE_MASK;
 
        if ((addr >= KSEG0 && addr < KSEG1) || (addr >= KSEG2)) {
                unsigned long flags;
@@ -2063,7 +2063,7 @@ static void r4k_flush_page_to_ram_d16i16(struct page * page)
 
 static void r4k_flush_page_to_ram_d32i32(struct page * page)
 {
-       unsigned long addr = page_address(page) & PAGE_MASK;
+       unsigned long addr = (unsigned long) page_address(page) & PAGE_MASK;
 
        if ((addr >= KSEG0 && addr < KSEG1) || (addr >= KSEG2)) {
                unsigned long flags;
index 1b2fb35bfb4bfad4ae5ec92218ccacfb2e9814fb..c6e37d78487dcc07e8814b1adc2ae1798354b020 100644 (file)
@@ -1750,7 +1750,7 @@ out:
  */
 static void r4k_flush_page_to_ram_s16d16i16(struct page * page)
 {
-       unsigned long addr = page_address(page) & PAGE_MASK;
+       unsigned long addr = (unsigned long) page_address(page) & PAGE_MASK;
 
        if ((addr >= KSEG0 && addr < KSEG1) || (addr >= KSEG2)) {
 #ifdef DEBUG_CACHE
@@ -1762,7 +1762,7 @@ static void r4k_flush_page_to_ram_s16d16i16(struct page * page)
 
 static void r4k_flush_page_to_ram_s32d16i16(struct page * page)
 {
-       unsigned long addr = page_address(page) & PAGE_MASK;
+       unsigned long addr = (unsigned long) page_address(page) & PAGE_MASK;
 
        if ((addr >= KSEG0 && addr < KSEG1) || (addr >= KSEG2)) {
 #ifdef DEBUG_CACHE
@@ -1774,7 +1774,7 @@ static void r4k_flush_page_to_ram_s32d16i16(struct page * page)
 
 static void r4k_flush_page_to_ram_s64d16i16(struct page * page)
 {
-       unsigned long addr = page_address(page) & PAGE_MASK;
+       unsigned long addr = (unsigned long) page_address(page) & PAGE_MASK;
 
        if ((addr >= KSEG0 && addr < KSEG1) || (addr >= KSEG2)) {
 #ifdef DEBUG_CACHE
@@ -1786,7 +1786,7 @@ static void r4k_flush_page_to_ram_s64d16i16(struct page * page)
 
 static void r4k_flush_page_to_ram_s128d16i16(struct page * page)
 {
-       unsigned long addr = page_address(page) & PAGE_MASK;
+       unsigned long addr = (unsigned long) page_address(page) & PAGE_MASK;
 
        if ((addr >= KSEG0 && addr < KSEG1) || (addr >= KSEG2)) {
 #ifdef DEBUG_CACHE
@@ -1798,7 +1798,7 @@ static void r4k_flush_page_to_ram_s128d16i16(struct page * page)
 
 static void r4k_flush_page_to_ram_s32d32i32(struct page * page)
 {
-       unsigned long addr = page_address(page) & PAGE_MASK;
+       unsigned long addr = (unsigned long) page_address(page) & PAGE_MASK;
 
        if ((addr >= KSEG0 && addr < KSEG1) || (addr >= KSEG2)) {
 #ifdef DEBUG_CACHE
@@ -1810,7 +1810,7 @@ static void r4k_flush_page_to_ram_s32d32i32(struct page * page)
 
 static void r4k_flush_page_to_ram_s64d32i32(struct page * page)
 {
-       unsigned long addr = page_address(page) & PAGE_MASK;
+       unsigned long addr = (unsigned long) page_address(page) & PAGE_MASK;
 
        if ((addr >= KSEG0 && addr < KSEG1) || (addr >= KSEG2)) {
 #ifdef DEBUG_CACHE
@@ -1822,7 +1822,7 @@ static void r4k_flush_page_to_ram_s64d32i32(struct page * page)
 
 static void r4k_flush_page_to_ram_s128d32i32(struct page * page)
 {
-       unsigned long addr = page_address(page) & PAGE_MASK;
+       unsigned long addr = (unsigned long) page_address(page) & PAGE_MASK;
 
        if ((addr >= KSEG0 && addr < KSEG1) || (addr >= KSEG2)) {
 #ifdef DEBUG_CACHE
@@ -1834,7 +1834,7 @@ static void r4k_flush_page_to_ram_s128d32i32(struct page * page)
 
 static void r4k_flush_page_to_ram_d16i16(struct page * page)
 {
-       unsigned long addr = page_address(page) & PAGE_MASK;
+       unsigned long addr = (unsigned long) page_address(page) & PAGE_MASK;
 
        if ((addr >= KSEG0 && addr < KSEG1) || (addr >= KSEG2)) {
                unsigned long flags;
@@ -1850,7 +1850,7 @@ static void r4k_flush_page_to_ram_d16i16(struct page * page)
 
 static void r4k_flush_page_to_ram_d32i32(struct page * page)
 {
-       unsigned long addr = page_address(page) & PAGE_MASK;
+       unsigned long addr = (unsigned long) page_address(page) & PAGE_MASK;
 
        if ((addr >= KSEG0 && addr < KSEG1) || (addr >= KSEG2)) {
                unsigned long flags;
index a6fd32fa49e50269fb7b74d1ee12d48092bf9b0a..f2aa6cae439849840cbcf793475ceba0ed283d79 100644 (file)
@@ -1,4 +1,4 @@
-/*  $Id: irq.c,v 1.105 2000/07/26 01:04:02 davem Exp $
+/*  $Id: irq.c,v 1.106 2000/08/05 10:48:40 davem Exp $
  *  arch/sparc/kernel/irq.c:  Interrupt request handling routines. On the
  *                            Sparc the IRQ's are basically 'cast in stone'
  *                            and you are supposed to probe the prom's device
index c44040bde099fd8fb8df3c59dc898e3fd5f55d81..b4b0b5f7b45fb0ed5ceed07e249bb1866e3f32d0 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: rtrap.S,v 1.54 2000/02/09 11:15:03 davem Exp $
+/* $Id: rtrap.S,v 1.55 2000/08/05 10:48:40 davem Exp $
  * rtrap.S: Return from Sparc trap low-level code.
  *
  * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
index 37c276c7fec86a47db711c2d5c2d951396baf66a..e05b20f4e7310fbd8c494d35862df7d6b1c5e633 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: sparc_ksyms.c,v 1.101 2000/07/12 00:25:32 anton Exp $
+/* $Id: sparc_ksyms.c,v 1.102 2000/08/05 10:48:40 davem Exp $
  * arch/sparc/kernel/ksyms.c: Sparc specific ksyms support.
  *
  * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu)
index c7f4905b8c8e5f62f6b49d4312da70887a4126b4..7f2e21a512e6f0d672ebd066d101cc2486504a4b 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: irq.c,v 1.90 2000/08/01 00:28:33 davem Exp $
+/* $Id: irq.c,v 1.91 2000/08/05 10:48:40 davem Exp $
  * irq.c: UltraSparc IRQ handling/init/registry.
  *
  * Copyright (C) 1997  David S. Miller  (davem@caip.rutgers.edu)
index aabde84c2a8ead93f688b4b37fb70da45c181286..efad55a1caa8153cb69fe8d615d84e5c1394b0df 100644 (file)
@@ -1,4 +1,4 @@
-/*  $Id: signal32.c,v 1.65 2000/07/07 04:25:17 davem Exp $
+/*  $Id: signal32.c,v 1.66 2000/07/27 01:05:15 davem Exp $
  *  arch/sparc64/kernel/signal32.c
  *
  *  Copyright (C) 1991, 1992  Linus Torvalds
@@ -750,7 +750,7 @@ static inline void new_setup_frame32(struct k_sigaction *ka, struct pt_regs *reg
                        goto sigsegv;
 
                if(pte_present(*ptep)) {
-                       unsigned long page = page_address(pte_page(*ptep));
+                       unsigned long page = (unsigned long) page_address(pte_page(*ptep));
 
                        __asm__ __volatile__("
                        membar  #StoreStore
@@ -1175,7 +1175,7 @@ static inline void setup_rt_frame32(struct k_sigaction *ka, struct pt_regs *regs
                        goto sigsegv;
 
                if(pte_present(*ptep)) {
-                       unsigned long page = page_address(pte_page(*ptep));
+                       unsigned long page = (unsigned long) page_address(pte_page(*ptep));
 
                        __asm__ __volatile__("
                        membar  #StoreStore
index 96f8624caa916046bc30c8049346ad1d700e2052..dbcb1f09eaa701703334a971010c377fb65ef31e 100644 (file)
@@ -817,14 +817,14 @@ static inline unsigned long find_flush_base(unsigned long size)
 
        size = PAGE_ALIGN(size);
        found = size;
-       base = page_address(p);
+       base = (unsigned long) page_address(p);
        while(found != 0) {
                /* Failure. */
                if(p >= (mem_map + max_mapnr))
                        return 0UL;
                if(PageReserved(p)) {
                        found = size;
-                       base = page_address(p);
+                       base = (unsigned long) page_address(p);
                } else {
                        found -= PAGE_SIZE;
                }
index 4a79b76bf3e683c63535b29218da21b295f8bc7a..5bb4c8839f27e0ffaa82a58ae113bb949a5c4528 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: sparc64_ksyms.c,v 1.89 2000/07/28 12:15:02 davem Exp $
+/* $Id: sparc64_ksyms.c,v 1.91 2000/08/05 13:30:33 davem Exp $
  * arch/sparc64/kernel/sparc64_ksyms.c: Sparc64 specific ksyms support.
  *
  * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu)
@@ -83,7 +83,7 @@ extern long sparc32_open(const char * filename, int flags, int mode);
 extern int register_ioctl32_conversion(unsigned int cmd, int (*handler)(unsigned int, unsigned int, unsigned long, struct file *));
 extern int unregister_ioctl32_conversion(unsigned int cmd);
 extern int io_remap_page_range(unsigned long from, unsigned long offset, unsigned long size, pgprot_t prot, int space);
-extern void flush_dcache_page(void *addr);
+extern void __flush_dcache_page(void *addr);
                 
 extern int __ashrdi3(int, int);
 
@@ -180,7 +180,7 @@ EXPORT_SYMBOL(disable_irq);
 
 EXPORT_SYMBOL_PRIVATE(flushw_user);
 
-EXPORT_SYMBOL(flush_dcache_page);
+EXPORT_SYMBOL(__flush_dcache_page);
 
 EXPORT_SYMBOL(mstk48t02_regs);
 EXPORT_SYMBOL(request_fast_irq);
index 88ac931039a799d64735dc359d5a60b99e2e0e9c..d3c9e5036f10e2517dd5548660b35dfe3590ec44 100644 (file)
@@ -1,4 +1,4 @@
-/*  $Id: init.c,v 1.152 2000/05/09 17:40:14 davem Exp $
+/*  $Id: init.c,v 1.153 2000/07/27 01:05:15 davem Exp $
  *  arch/sparc64/mm/init.c
  *
  *  Copyright (C) 1996-1999 David S. Miller (davem@caip.rutgers.edu)
@@ -746,7 +746,7 @@ pte_t *get_pte_slow(pmd_t *pmd, unsigned long offset, unsigned long color)
                pte_t *pte;
 
                set_page_count((page + 1), 1);
-               paddr = page_address(page);
+               paddr = (unsigned long) page_address(page);
                memset((char *)paddr, 0, (PAGE_SIZE << 1));
 
                if (!color) {
index 85e62ad251bb04513fa6202f2904b511bca16fd9..7940218d289f25a287a0063d2b5e13ff037bb1b6 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: ultra.S,v 1.44 2000/07/10 20:57:35 davem Exp $
+/* $Id: ultra.S,v 1.46 2000/08/05 13:30:33 davem Exp $
  * ultra.S: Don't expand these all over the place...
  *
  * Copyright (C) 1997, 2000 David S. Miller (davem@redhat.com)
@@ -206,6 +206,30 @@ iflush2:sub                %o1, 0x20, %g3
        flush           %g6
        ba,a,pt         %xcc, 3b
 
+       .align          64
+       .globl          __flush_dcache_page
+__flush_dcache_page:
+       sub             %o0, %g4, %o0
+       clr             %o1
+       srlx            %o0, 11, %o0
+       sethi           %hi(1 << 14), %o2
+1:     ldxa            [%o1] ASI_DCACHE_TAG, %o3
+       andn            %o3, 0x3, %o3
+       cmp             %o0, %o3
+       bne,pt          %xcc, 2f
+        nop
+       stxa            %g0, [%o1] ASI_DCACHE_TAG
+       membar          #Sync
+2:     add             %o1, (1 << 5), %o1
+       cmp             %o1, %o2
+       bne,pt          %xcc, 1b
+        nop
+       /* The I-cache does not snoop local stores so we
+        * better flush that too.
+        */
+       ba,pt           %xcc, __flush_icache_page
+        sllx           %o0, 11, %o0
+
        .align          32
 __prefill_dtlb:
        rdpr            %pstate, %g7
index a91c3355ecd3e5f19b10ba3ba0519321901a520d..23a0579cdb25cd1734dcf36204a350912a74238f 100644 (file)
@@ -171,6 +171,8 @@ endif
 # When MOD_LIST_NAME is set, make will try to add $(MOD_SUB_DIRS).o to
 # modules/MOD_LIST_NAME.  We don't have hamradio.o and Linus
 # sort of insisted on making hamradio/ a subdirectory of drivers/net/.
+# #FIXME# MOD_LIST_NAME doesn't exist any more -- does this comment
+# #FIXME# still mean anything?
 
 ifeq ($(CONFIG_HAMRADIO),y)
   SUB_DIRS += net/hamradio
index b52bc245fa1249d347deb688c9d4e0160f722205..50171ce472e80b8e9fb8cee289030a502a949c86 100644 (file)
@@ -10,7 +10,6 @@
 #
 
 L_TARGET       := acorn-block.a
-MOD_LIST_NAME  := ACORN_BLOCK_MODULES
 
 obj-y          :=
 obj-m          :=
index 095a43cef8ef51d7ea25d9dd2ba1d0937c571095..8435cabd57cb3b2af3ad6b22300e0d8c8ec65d88 100644 (file)
@@ -4,7 +4,6 @@
 #
 
 O_TARGET := acorn-net.o
-MOD_LIST_NAME := ACORN_NET_MODULES
 
 obj-y  :=
 obj-m  :=
index 35bc69a184a4b2fb6ec46089126597d833edf0d8..bde60136fa0c5500c9165495ab8c29ad8639dec8 100644 (file)
@@ -3,7 +3,6 @@
 #
 
 L_TARGET       := acorn-scsi.a
-MOD_LIST_NAME  := ACORN_SCSI_MODULES
 
 obj-y          :=
 obj-m          :=
index b41bc415a4c3e49c248fe715ac6ecf6d08983be4..8550b8a840aa78750277eed9e0b341d8ec20f9aa 100644 (file)
@@ -6,7 +6,6 @@
 O_TARGET := atm.o
 O_OBJS  := atmdev_init.o
 M_OBJS  :=
-MOD_LIST_NAME := ATM_MODULES
 
 include ../../.config
 
index af03cdf7b9749a3317da7f7f2676049164071c0e..237d7ac64a94a3622114ac4a746398b67ee4590a 100644 (file)
@@ -13,8 +13,6 @@ MOD_SUB_DIRS := $(SUB_DIRS)
 ALL_SUB_DIRS := $(SUB_DIRS) paride
 
 O_TARGET := block.o
-MOD_LIST_NAME  := BLOCK_MODULES
-
 
 export-objs    := ll_rw_blk.o blkpg.o loop.o DAC960.o md.o xor.o
 list-multi     := lvm-mod.o
index ed52ee2b8e1b09335d83057eef1870bbfd56ec13..47651b8529d8bddfb50ca957ff09633ee1c03d21 100644 (file)
@@ -192,7 +192,7 @@ static int lo_send(struct loop_device *lo, char *data, int len, loff_t pos,
                        goto fail;
                if (aops->prepare_write(file, page, offset, offset+size))
                        goto unlock;
-               kaddr = (char*)page_address(page);
+               kaddr = page_address(page);
                if ((lo->transfer)(lo, WRITE, kaddr+offset, data, size, IV))
                        goto write_fail;
                if (aops->commit_write(file, page, offset, offset+size))
index 32e85670409d6155d34bf336461258b429e55b1e..9f529353041b008c2729af9362ad891b4b754d6a 100644 (file)
@@ -12,7 +12,6 @@ SUB_DIRS     :=
 MOD_SUB_DIRS := $(SUB_DIRS)
 ALL_SUB_DIRS := $(SUB_DIRS)
 
-MOD_LIST_NAME := PARIDE_MODULES
 L_TARGET := paride.a
 MX_OBJS  :=
 LX_OBJS  := 
index 12eb8658f84f66e6b2a8b9eb3d65609ceeb45fed..7027d2dd6207559f08e4e24f468f14538b88c8cd 100644 (file)
@@ -274,7 +274,7 @@ static int raid1_grow_buffers (raid1_conf_t *conf, int cnt)
                }
                memset(r1_bh, 0, sizeof(*r1_bh));
                r1_bh->bh_req.b_page = page;
-               r1_bh->bh_req.b_data = (char *) page_address(page);
+               r1_bh->bh_req.b_data = page_address(page);
                r1_bh->next_r1 = conf->freebuf;
                conf->freebuf = r1_bh;
                i++;
@@ -1428,7 +1428,7 @@ static int raid1_sync_request (mddev_t *mddev, unsigned long block_nr)
                BUG();
        if (!bh->b_data)
                BUG();
-       if (bh->b_data != (char *) page_address(bh->b_page))
+       if (bh->b_data != page_address(bh->b_page))
                BUG();
        bh->b_end_io = end_sync_read;
        bh->b_private = r1_bh;
index 22a66fe2a08b043562aa4fdcb2314397c33c9240..a6c7b39e95d1f53b11940f852a5e3d0fc4e52fab 100644 (file)
@@ -257,7 +257,7 @@ static int grow_raid5_buffers(struct stripe_head *sh, int num, int b_size, int p
                memset(bh, 0, sizeof (struct buffer_head));
                init_waitqueue_head(&bh->b_wait);
                page = alloc_page(priority);
-               bh->b_data = (char *) page_address(page);
+               bh->b_data = page_address(page);
                if (!bh->b_data) {
                        kfree(bh);
                        return 1;
@@ -1671,7 +1671,7 @@ static int __check_consistency (mddev_t *mddev, int row)
        tmp = kmalloc(sizeof(*tmp), GFP_KERNEL);
        tmp->b_size = 4096;
        tmp->b_page = alloc_page(GFP_KERNEL);
-       tmp->b_data = (char *)page_address(tmp->b_page);
+       tmp->b_data = page_address(tmp->b_page);
        if (!tmp->b_data)
                goto out;
        md_clear_page(tmp->b_data);
index 025b25a7a871c36713d18ce494c541f2ca74f9a8..225c230e8c9d04d5aa498459a3d0f892770a3968 100644 (file)
@@ -53,7 +53,6 @@ obj-m         := $(filter-out $(obj-y), $(obj-m))
 # Translate to Rules.make lists.
 
 L_TARGET       := cdrom.a
-MOD_LIST_NAME  := CDROM_MODULES
 
 L_OBJS         := $(sort $(filter-out $(export-objs), $(obj-y)))
 LX_OBJS                := $(sort $(filter     $(export-objs), $(obj-y)))
index e4e26c92cc949aa1090668c29a0f8585c9f2e841..b2c26e35bd33cb73f32e66df76d439523b7530b5 100644 (file)
@@ -73,11 +73,9 @@ static struct CARD {
        { 0x1123153b, BTTV_TERRATVRADIO,  "Terratec TV/Radio+" },
        { 0x1200bd11, BTTV_PINNACLERAVE,  "Pinnacle PCTV Rave" },
        { 0x13eb0070, BTTV_HAUPPAUGE878,  "Hauppauge WinTV" },
-#if 0 /* probably wrong */
-       { 0x14610002, BTTV_AVERMEDIA98,   "Avermedia TVCapture 98" },
-#endif
        { 0x18501851, BTTV_CHRONOS_VS2,   "Chronos Video Shuttle II" },
        { 0x18521852, BTTV_TYPHOON_TVIEW, "Typhoon TView TV/FM Tuner" },
+       { 0x217d6606, BTTV_WINFAST2000,   "Leadtek WinFast TV 2000" },
        { 0x263610b4, BTTV_STB2,          "STB TV PCI FM, P/N 6000704" },
        { 0x3000144f, BTTV_MAGICTVIEW063, "TView 99 (CPH063)" },
        { 0x300014ff, BTTV_MAGICTVIEW061, "TView 99 (CPH061)" },
@@ -85,7 +83,10 @@ static struct CARD {
        { 0x300214ff, BTTV_PHOEBE_TVMAS,  "Phoebe TV Master" },
        { 0x400a15b0, BTTV_ZOLTRIX_GENIE, "Zoltrix Genie TV" },
        { 0x402010fc, 0 /* no tvcards entry yet */, "I-O Data Co. GV-BCV3/PCI" },
+#if 0 /* probably wrong */
+       { 0x14610002, BTTV_AVERMEDIA98,   "Avermedia TVCapture 98" },
        { 0x6606217d, BTTV_WINFAST2000,   "Leadtek WinFast TV 2000" },
+#endif
        { 0, -1, NULL }
 };
 
@@ -116,7 +117,7 @@ struct tvcard bttv_tvcards[] =
          1,1,1,1,0,0,0,1,  PLL_NONE, -1 },
        { "AVerMedia TVPhone",
           3, 1, 0, 3,15, { 2, 3, 1, 1}, {12, 4,11,11, 0},0,
-         1,1,1,1,0,0,0,1,  PLL_NONE, -1 },
+         1,1,1,1,0,0,0,1,  PLL_28, -1 },
         { "MATRIX-Vision MV-Delta",
           5, 1, -1, 3, 0, { 2, 3, 1, 0, 0},{0 }, 0,
          1,1,1,1,0,0,0,1,  PLL_NONE, -1 },
@@ -218,7 +219,7 @@ struct tvcard bttv_tvcards[] =
          1,1,1,1,0,0,0,1,  PLL_NONE, -1 },
        { "Leadtek WinFast 2000",
          3, 1, 0, 2, 0xfff000, { 2, 3, 1, 1,0},
-         { 0x621000,0x620100,0x621100,0x620000,0xE210000,0x620000},0,
+         { 0x621000,0x6ddf07,0x621100,0x620000,0xE210000,0x620000},0,
          1,1,1,1,1,0,0,1,  PLL_28,   -1 },
        { "Chronos Video Shuttle II",
          3, 3, 0, 2, 0x1800, { 2, 3, 1, 1}, { 0, 0, 0x1000, 0x1000, 0x0800},0,
@@ -266,7 +267,7 @@ struct tvcard bttv_tvcards[] =
          0,0,0,0,0,0,0,0,  PLL_28, 5 },
        { "Terratec TV/Radio+", /* Radio ?? */
          3, 1, 0, 2, 0x1f0000, { 2, 3, 1, 1},
-         { 0xe2ffff, 0, 0, 0, 0xe0ffff, 0xe2ffff },0,
+         { 0xe2ffff, 0xebffff, 0, 0, 0xe0ffff, 0xe2ffff },0,
          0,0,0,0,0,0,0,0,  PLL_35,  1 },
 
        /* 0x30 */
index e635755a22f9a01ff9b2d840f8d493adb7afcdbd..74d4188a2860d058059ca6e6923480af808a059b 100644 (file)
@@ -132,8 +132,10 @@ static inline unsigned long uvirt_to_kva(pgd_t *pgd, unsigned long adr)
                 if (!pmd_none(*pmd)) {
                         ptep = pte_offset(pmd, adr);
                         pte = *ptep;
-                        if(pte_present(pte))
-                                ret = (page_address(pte_page(pte))|(adr&(PAGE_SIZE-1)));
+                        if(pte_present(pte)) {
+                               ret = (unsigned long) page_address(pte_page(pte));
+                                ret |= (adr & (PAGE_SIZE - 1));
+                       }
                 }
         }
         MDEBUG(printk("uv2kva(%lx-->%lx)", adr, ret));
@@ -1157,7 +1159,7 @@ static int  make_vrisctab_kiobuf(struct bttv *btv, unsigned int *ro,
 
        offset   = iobuf->offset;
        page     = 0;
-       pageaddr = virt_to_bus((void*)page_address(iobuf->maplist[page]));
+       pageaddr = virt_to_bus(page_address(iobuf->maplist[page]));
        for (line=0; line < (height<<(1^inter)); line++)
        {
                if (inter) 
@@ -1178,13 +1180,13 @@ static int  make_vrisctab_kiobuf(struct bttv *btv, unsigned int *ro,
                        todo -= bl;
                        offset = 0;
                        page++;
-                       pageaddr = virt_to_bus((void*)page_address(iobuf->maplist[page]));
+                       pageaddr = virt_to_bus(page_address(iobuf->maplist[page]));
                        while (todo>PAGE_SIZE)
                        {
                                *((*rp)++)=cpu_to_le32(BT848_RISC_WRITE|PAGE_SIZE);
                                *((*rp)++)=cpu_to_le32(pageaddr);
                                page++;
-                               pageaddr = virt_to_bus((void*)page_address(iobuf->maplist[page]));
+                               pageaddr = virt_to_bus(page_address(iobuf->maplist[page]));
                        }
                        *((*rp)++)=cpu_to_le32(BT848_RISC_WRITE|BT848_RISC_EOL|todo);
                        *((*rp)++)=cpu_to_le32(pageaddr);
@@ -2112,7 +2114,7 @@ static int bttv_ioctl(struct video_device *dev, unsigned int cmd, void *arg)
                       iobuf->locked);
                printk("bttv%d: hack: pages (bus addr):",btv->nr);
                for (i = 0; i < iobuf->nr_pages; i++) {
-                       printk(" %lx", virt_to_bus((void*)page_address(iobuf->maplist[i])));
+                       printk(" %lx", virt_to_bus(page_address(iobuf->maplist[i])));
                }
                printk("\n");
 
@@ -3032,7 +3034,7 @@ static void __devinit bttv_remove(struct pci_dev *pci_dev)
         struct bttv *btv = PCI_GET_DRIVER_DATA(pci_dev);
 
         /* unregister i2c_bus */
-       if (btv->i2c_ok)
+       if (0 == btv->i2c_ok)
                i2c_bit_del_bus(&btv->i2c_adap);
 
         /* turn off all capturing, DMA and IRQs */
index c3d3abcbe7a8ef881b58ec4477cb538ed1ae9e00..6b35d23e5c20edc22d32d8fc2d4860a2acc4f2a9 100644 (file)
@@ -21,7 +21,7 @@
 #ifndef _BTTV_H_
 #define _BTTV_H_
 
-#define BTTV_VERSION_CODE KERNEL_VERSION(0,7,37)
+#define BTTV_VERSION_CODE KERNEL_VERSION(0,7,38)
 
 #ifndef PCI_GET_DRIVER_DATA
 # define PCI_GET_DRIVER_DATA(pdev)         ((pdev)->driver_data)
index e65b8ec25a90ebf0927fa566ce8a62f6970e2c9c..c9ec988d1c3d364c3d5427e45ca90b333c23fdd5 100644 (file)
@@ -199,9 +199,10 @@ static inline unsigned long uvirt_to_kva(pgd_t *pgd, unsigned long adr)
                if (!pmd_none(*pmd)) {
                        ptep = pte_offset(pmd, adr);
                        pte = *ptep;
-                       if (pte_present(pte))
-                               ret = page_address(pte_page(pte)) |
-                                     (adr & (PAGE_SIZE-1));
+                       if (pte_present(pte)) {
+                               ret = (unsigned long) page_address(pte_page(pte));
+                               ret |= (adr & (PAGE_SIZE-1));
+                       }
                }
        }
        return ret;
index 2ad4526183dd6ed24ddeace6aae3c7f6b9256306..ae6a42cb8252b3615ca5277c608601a15dd03965 100644 (file)
@@ -14,7 +14,6 @@ ALL_SUB_DIRS  := $(SUB_DIRS)
 O_TARGET       := js.o
 M_OBJS         :=
 O_OBJS         :=
-#MOD_LIST_NAME := INPUT_MODULES
 
 # Objects that export symbols.
 
index b8390c520bcffe1a414d56da9b4c4e5725bbbb1d..2d2b1e89c1de9f75428f5543fb4fe90e3a64a87c 100644 (file)
@@ -1168,7 +1168,8 @@ static int msp_attach(struct i2c_adapter *adap, int addr,
 
        if (simple == -1) {
                /* default mode */
-               msp->simple = (((rev2>>8)&0xff) == 0) ? 0 : 1;
+               /* msp->simple = (((rev2>>8)&0xff) == 0) ? 0 : 1; */
+               msp->simple = ((rev1&0xff)+'@' > 'C');
        } else {
                /* use insmod option */
                msp->simple = simple;
index 19850076386736ca50bf760b221eb1f81b5d8e2a..a83e1f9138e878579e1bf68912d6c58534e09dc6 100644 (file)
@@ -9,7 +9,6 @@ MOD_SUB_DIRS := $(SUB_DIRS)
 ALL_SUB_DIRS := $(SUB_DIRS)
 
 O_TARGET := pcmcia_char.o
-MOD_LIST_NAME := PCMCIA_CHAR_MODULES
 
 obj-y          :=
 obj-m          :=
index da3ceebfe6218c416536dc3251ed527425bc7d0f..9f6ecd332dc6ceca9bca00a6027dcf33f7b36008 100644 (file)
@@ -5,7 +5,7 @@
  * This driver will not complain if used with any 
  * other i2c device with the same address.
  *
- * Copyright (c) 2000 Guillamue Delvit based on Gerd Knorr source and
+ * Copyright (c) 2000 Guillaume Delvit based on Gerd Knorr source and
  * Eric Sandeen 
  * This code is placed under the terms of the GNU General Public License
  * Based on tda9855.c by Steve VanDeBogart (vandebo@uclink.berkeley.edu)
@@ -121,7 +121,7 @@ static struct i2c_client client_template;
 
 /* Begin code */
 
-static int tda9875_write(struct i2c_client *client, int subaddr, int val)
+static int tda9875_write(struct i2c_client *client, int subaddr, unsigned char val)
 {
        unsigned char buffer[2];
        dprintk("In tda9875_write\n");
@@ -153,12 +153,19 @@ static int tda9875_read(struct i2c_client *client)
 static void tda9875_set(struct i2c_client *client)
 {
        struct tda9875 *tda = client->data;
-       
+       unsigned char a;
+
        dprintk(KERN_DEBUG "tda9875_set(%04x,%04x,%04x,%04x)\n",tda->lvol,tda->rvol,tda->bass,tda->treble);
-       tda9875_write(client, TDA9875_MVL, tda->lvol / 600 - 84);
-       tda9875_write(client, TDA9875_MVR, tda->rvol / 600 -84);
-       tda9875_write(client, TDA9875_MBA, tda->bass / 2340 -12);
-       tda9875_write(client, TDA9875_MTR, tda->treble / 2621 -12);
+
+
+       a = tda->lvol & 0xff;
+       tda9875_write(client, TDA9875_MVL, a);
+       a =tda->rvol & 0xff;
+       tda9875_write(client, TDA9875_MVR, a);
+       a =tda->bass & 0xff;
+       tda9875_write(client, TDA9875_MBA, a);
+       a =tda->treble  & 0xff;
+       tda9875_write(client, TDA9875_MTR, a);
 }
 
 static void do_tda9875_init(struct i2c_client *client)
@@ -198,10 +205,10 @@ static void do_tda9875_init(struct i2c_client *client)
        
        tda9875_write(client, TDA9875_MUT, 0xcc );   /* General mute  */
         
-       t->mode=AUDIO_MUTE;
-       t->lvol=t->rvol =51000;         /* 0dB */
-       t->bass=30420;          /* 0dB */
-       t->treble=34073;                /* 0dB */
+       t->mode=AUDIO_UNMUTE;
+       t->lvol=t->rvol =0;     /* 0dB */
+       t->bass=0;                      /* 0dB */
+       t->treble=0;            /* 0dB */
        tda9875_set(client);
 
 }
@@ -280,15 +287,15 @@ static int tda9875_command(struct i2c_client *client,
                        VIDEO_AUDIO_TREBLE;
 
                /* min is -84 max is 24 */
-               left = (t->lvol+85)*600;
-               right = (t->rvol+85)*600;
+               left = (t->lvol+84)*606;
+               right = (t->rvol+84)*606;
                va->volume=MAX(left,right);
                va->balance=(32768*MIN(left,right))/
                        (va->volume ? va->volume : 1);
                va->balance=(left<right)?
                        (65535-va->balance) : va->balance;
-               va->bass = (t->bass+13)*2340;     /* min -12 max +15 */
-               va->treble = (t->treble+13)*2621;/* min -12 max +12 */
+               va->bass = (t->bass+12)*2427;    /* min -12 max +15 */
+               va->treble = (t->treble+12)*2730;/* min -12 max +12 */
 
                va->mode |= VIDEO_SOUND_MONO;
 
@@ -306,11 +313,36 @@ static int tda9875_command(struct i2c_client *client,
                        va->volume) / 32768;
                right = (MIN(va->balance,32768) *
                         va->volume) / 32768;
-               t->lvol = left/600-84;
-               t->rvol = right/600-84;
-               t->bass = va->bass/2340-12;
-               t->treble = va->treble/2621-12;
-               tda9875_set(client);
+               t->lvol = ((left/606)-84) & 0xff;
+               if (t->lvol > 24)
+                t->lvol = 24;
+               if (t->lvol < -84)
+                t->lvol = -84 & 0xff;
+
+               t->rvol = ((right/606)-84) & 0xff;
+               if (t->rvol > 24)
+                t->rvol = 24;
+               if (t->rvol < -84)
+                t->rvol = -84 & 0xff;
+
+               t->bass = ((va->bass/2400)-12) & 0xff;
+               if (t->bass > 15)
+                t->bass = 15;
+               if (t->bass < -12)
+                t->bass = -12 & 0xff;
+               
+               t->treble = ((va->treble/2700)-12) & 0xff;
+               if (t->treble > 12)
+                t->treble = 12;
+               if (t->treble < -12)
+                t->treble = -12 & 0xff;
+
+
+
+//printk("tda9875 bal:%04x vol:%04x bass:%04x treble:%04x\n",va->balance,va->volume,va->bass,va->treble);
+               
+
+                tda9875_set(client);
 
                break;
 
index 7b88ecc149d2e04dbd4c3f617763b1e69bb2dfa1..bd636f7692d0830d59f9ebadbb942a73aac94cce 100644 (file)
@@ -5,7 +5,6 @@
 
 L_TARGET := fc4.a
 M_OBJS   :=
-MOD_LIST_NAME := FC4_MODULES
 
 ifeq ($(CONFIG_FC4),y)
   FC4 = fc.o
index 0d4c186a9432a88b692dd12e7d917c35db9bda20..ab140ee2a6208adf9690fd5598a8b1d9f35c03ac 100644 (file)
@@ -2,7 +2,6 @@
 # Makefile for the kernel i2c bus driver.
 #
 
-MOD_LIST_NAME := I2C_MODULES
 O_TARGET := i2c.o
 
 export-objs    := i2c-core.o i2c-algo-bit.o i2c-algo-pcf.o
index 2ffc5855e95a8e36a71f84e672dd595a353031ac..cc8d4e8709553a87d2cbb4e77efc54b6c8420b88 100644 (file)
@@ -21,7 +21,6 @@ ALL_SUB_DIRS := $(SUB_DIRS)
 O_TARGET := idedriver.o
 O_OBJS   := ide-geometry.o
 M_OBJS   :=
-MOD_LIST_NAME := IDE_MODULES
 OX_OBJS :=
 MX_OBJS :=
 
index 639d4c6f1c07aed46227fd43018b4cbe06903a57..6cf3f511f7853417305f00b6864a4270eacc9e07 100644 (file)
@@ -2,15 +2,9 @@
  * linux/drivers/ide/ide-geometry.c
  */
 #include <linux/config.h>
-
-#if defined(CONFIG_IDE) && !defined(CONFIG_BLK_DEV_HD_ONLY)
 #include <linux/ide.h>
-
 #include <asm/io.h>
 
-extern ide_drive_t * get_info_ptr(kdev_t);
-extern unsigned long current_capacity (ide_drive_t *);
-
 /*
  * We query CMOS about hard disks : it could be that we have a SCSI/ESDI/etc
  * controller that is BIOS compatible with ST-506, and thus showing up in our
@@ -42,7 +36,7 @@ extern unsigned long current_capacity (ide_drive_t *);
  * The code below is bad. One of the problems is that drives 1 and 2
  * may be SCSI disks (even when IDE disks are present), so that
  * the geometry we read here from BIOS is attributed to the wrong disks.
- * Consequently, also the "drive->present = 1" below is a mistake.
+ * Consequently, also the former "drive->present = 1" below was a mistake.
  *
  * Eventually the entire routine below should be removed.
  */
@@ -74,7 +68,8 @@ void probe_cmos_for_drives (ide_hwif_t *hwif)
                                drive->sect  = drive->bios_sect = sect;
                                drive->ctl   = *(BIOS+8);
                        } else {
-                               printk("hd%d: C/H/S=%d/%d/%d from BIOS ignored\n", unit, cyl, head, sect);
+                               printk("hd%d: C/H/S=%d/%d/%d from BIOS ignored\n",
+                                      unit, cyl, head, sect);
                        }
                }
 
@@ -84,6 +79,11 @@ void probe_cmos_for_drives (ide_hwif_t *hwif)
 }
 
 
+#ifdef CONFIG_BLK_DEV_IDE
+
+extern ide_drive_t * get_info_ptr(kdev_t);
+extern unsigned long current_capacity (ide_drive_t *);
+
 /*
  * If heads is nonzero: find a translation with this many heads and S=63.
  * Otherwise: find out how OnTrack Disk Manager would translate the disk.
@@ -211,4 +211,4 @@ int ide_xlate_1024 (kdev_t i_rdev, int xparm, int ptheads, const char *msg)
                       drive->bios_cyl, drive->bios_head, drive->bios_sect);
        return ret;
 }
-#endif /* (CONFIG_IDE) && !(CONFIG_BLK_DEV_HD_ONLY) */
+#endif /* CONFIG_BLK_DEV_IDE */
index cc6b40ee499388a454cd1c0ce387a6bd001442f5..ac8edfd755665070f0206d852490af533b5f2dd0 100644 (file)
@@ -12,8 +12,6 @@ SUB_DIRS     :=
 MOD_SUB_DIRS := $(SUB_DIRS)
 ALL_SUB_DIRS := $(SUB_DIRS)
 
-MOD_LIST_NAME := IEEE1394_MODULES
-
 L_TARGET := ieee1394.a
 L_OBJS   :=
 LX_OBJS  :=
index 9afbb58ec385d9b98aaec5f6e3d04a6583f3210c..b42ce0b460c3cf035219a556f25033c42abd5e46 100644 (file)
@@ -144,7 +144,7 @@ static struct video_template video_tmpl = { irq_handler };
  */
 
 #if LINUX_VERSION_CODE < KERNEL_VERSION(2,3,0)
-#define page_address(x)        (x)
+#define page_address(x)        ((void *) (x))
 #endif
 
 /* Given PGD from the address space's page table, return the kernel
@@ -161,9 +161,10 @@ static inline unsigned long uvirt_to_kva(pgd_t *pgd, unsigned long adr)
                 if (!pmd_none(*pmd)) {
                         ptep = pte_offset(pmd, adr);
                         pte = *ptep;
-                        if(pte_present(pte))
-                               ret = (page_address(pte_page(pte))|
-                                      (adr&(PAGE_SIZE-1)));
+                        if(pte_present(pte)) {
+                               ret = (unsigned long) page_address(pte_page(pte));
+                               ret |= (adr & (PAGE_SIZE - 1));
+                       }
                 }
         }
         MDEBUG(printk("uv2kva(%lx-->%lx)", adr, ret));
index 2770aa65e1f045fc356cc3206583f6dc2bd2b1d7..d4fb0452adf99614f79b19ba38dac32a9c126665 100644 (file)
@@ -1,25 +1,9 @@
-/* $Id: amd7930.c,v 1.3 1999/07/12 21:04:52 keil Exp $
+/* $Id: amd7930.c,v 1.4 2000/06/26 08:59:12 keil Exp $
  *
  * HiSax ISDN driver - chip specific routines for AMD 7930
  *
  * Author       Brent Baccala (baccala@FreeSoft.org)
  *
- *
- *
- * $Log: amd7930.c,v $
- * Revision 1.3  1999/07/12 21:04:52  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 1.2  1998/02/12 23:07:10  keil
- * change for 2.1.86 (removing FREE_READ/FREE_WRITE from [dev]_kfree_skb()
- *
- * Revision 1.1  1998/02/03 23:20:51  keil
- * New files for SPARC isdn support
- *
- * Revision 1.1  1998/01/08 04:17:12  baccala
- * ISDN comes to the Sparc.  Key points:
- *
  *    - Existing ISDN HiSax driver provides all the smarts
  *    - it compiles, runs, talks to an isolated phone switch, connects
  *      to a Cisco, pings go through
@@ -30,6 +14,7 @@
  *
  * The code is unreliable enough to be consider alpha
  *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  * Advanced Micro Devices' Am79C30A is an ISDN/audio chip used in the
  * SparcStation 1+.  The chip provides microphone and speaker interfaces
 #include "rawhdlc.h"
 #include <linux/interrupt.h>
 
-static const char *amd7930_revision = "$Revision: 1.3 $";
+static const char *amd7930_revision = "$Revision: 1.4 $";
 
 #define RCV_BUFSIZE    1024    /* Size of raw receive buffer in bytes */
 #define RCV_BUFBLKS    4       /* Number of blocks to divide buffer into
index 5b3f3aadb90d308bd9c44f6f69ca0eaa5bf124b4..7708afdb636503fd9b73986c959fc58f406cf175 100644 (file)
@@ -1,43 +1,10 @@
-/* $Id: arcofi.c,v 1.10 1999/12/23 15:09:32 keil Exp $
-
+/* $Id: arcofi.c,v 1.11 2000/06/26 08:59:12 keil Exp $
+ *
  * arcofi.c   Ansteuerung ARCOFI 2165
  *
  * Author     Karsten Keil (keil@isdn4linux.de)
  *
- *
- *
- * $Log: arcofi.c,v $
- * Revision 1.10  1999/12/23 15:09:32  keil
- * change email
- *
- * Revision 1.9  1999/12/19 13:09:41  keil
- * changed TASK_INTERRUPTIBLE into TASK_UNINTERRUPTIBLE for
- * signal proof delays
- *
- * Revision 1.8  1999/08/25 16:50:51  keil
- * Fix bugs which cause 2.3.14 hangs (waitqueue init)
- *
- * Revision 1.7  1999/07/01 08:11:17  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 1.6  1998/09/30 22:21:56  keil
- * cosmetics
- *
- * Revision 1.5  1998/09/27 12:52:57  keil
- * cosmetics
- *
- * Revision 1.4  1998/08/20 13:50:24  keil
- * More support for hybrid modem (not working yet)
- *
- * Revision 1.3  1998/05/25 12:57:38  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 1.2  1998/04/15 16:47:16  keil
- * new interface
- *
- * Revision 1.1  1997/10/29 18:51:20  keil
- * New files
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
  
index 7d1c445e5a451efcdb068607e398e1feae35352b..d801571460543ab3afb1aefe6836f4882c7653e3 100644 (file)
@@ -1,27 +1,10 @@
-/* $Id: arcofi.h,v 1.5 1999/12/23 15:09:32 keil Exp $
-
+/* $Id: arcofi.h,v 1.6 2000/06/26 08:59:12 keil Exp $
+ *
  * arcofi.h   Ansteuerung ARCOFI 2165
  *
  * Author     Karsten Keil (keil@isdn4linux.de)
  *
- *
- *
- * $Log: arcofi.h,v $
- * Revision 1.5  1999/12/23 15:09:32  keil
- * change email
- *
- * Revision 1.4  1999/07/01 08:11:18  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 1.3  1998/05/25 12:57:39  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 1.2  1998/04/15 16:47:17  keil
- * new interface
- *
- * Revision 1.1  1997/10/29 18:51:20  keil
- * New files
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
  
index 98c9736b64470d5e34bb2570819cbd38af4ea168..b86f5db6a0761b46b72e296e39a94661245152a2 100644 (file)
@@ -1,39 +1,12 @@
-/* $Id: asuscom.c,v 1.9 1999/12/19 13:09:41 keil Exp $
-
+/* $Id: asuscom.c,v 1.10 2000/06/26 08:59:12 keil Exp $
+ *
  * asuscom.c     low level stuff for ASUSCOM NETWORK INC. ISDNLink cards
  *
  * Author     Karsten Keil (keil@isdn4linux.de)
  *
  * Thanks to  ASUSCOM NETWORK INC. Taiwan and  Dynalink NL for informations
  *
- *
- * $Log: asuscom.c,v $
- * Revision 1.9  1999/12/19 13:09:41  keil
- * changed TASK_INTERRUPTIBLE into TASK_UNINTERRUPTIBLE for
- * signal proof delays
- *
- * Revision 1.8  1999/09/04 06:20:05  keil
- * Changes from kernel set_current_state()
- *
- * Revision 1.7  1999/07/12 21:04:53  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 1.6  1999/07/01 08:11:18  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 1.5  1998/11/15 23:54:19  keil
- * changes from 2.0
- *
- * Revision 1.4  1998/06/18 23:18:20  keil
- * Support for new IPAC card
- *
- * Revision 1.3  1998/04/15 16:46:53  keil
- * new init code
- *
- * Revision 1.2  1998/02/02 13:27:06  keil
- * New
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
@@ -46,7 +19,7 @@
 
 extern const char *CardType[];
 
-const char *Asuscom_revision = "$Revision: 1.9 $";
+const char *Asuscom_revision = "$Revision: 1.10 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index 55df36f0f73827aa06adb76a5463f78c3871ccfd..cc3ce44909fb4a42731b70169179890353a26afd 100644 (file)
@@ -1,66 +1,10 @@
-/* $Id: avm_a1.c,v 2.11 1999/07/12 21:04:54 keil Exp $
-
+/* $Id: avm_a1.c,v 2.12 2000/06/26 08:59:12 keil Exp $
+ *
  * avm_a1.c     low level stuff for AVM A1 (Fritz) isdn cards
  *
  * Author       Karsten Keil (keil@isdn4linux.de)
  *
- *
- * $Log: avm_a1.c,v $
- * Revision 2.11  1999/07/12 21:04:54  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 2.10  1998/11/15 23:54:21  keil
- * changes from 2.0
- *
- * Revision 2.9  1998/08/13 23:36:12  keil
- * HiSax 3.1 - don't work stable with current LinkLevel
- *
- * Revision 2.8  1998/04/15 16:44:27  keil
- * new init code
- *
- * Revision 2.7  1998/02/02 13:29:37  keil
- * fast io
- *
- * Revision 2.6  1998/01/13 23:09:46  keil
- * really disable timer
- *
- * Revision 2.5  1998/01/02 06:50:29  calle
- * Perodic timer of A1 now disabled, no need for linux driver.
- *
- * Revision 2.4  1997/11/08 21:35:42  keil
- * new l1 init
- *
- * Revision 2.3  1997/11/06 17:13:32  keil
- * New 2.1 init code
- *
- * Revision 2.2  1997/10/29 18:55:48  keil
- * changes for 2.1.60 (irq2dev_map)
- *
- * Revision 2.1  1997/07/27 21:47:13  keil
- * new interface structures
- *
- * Revision 2.0  1997/06/26 11:02:48  keil
- * New Layer and card interface
- *
- * Revision 1.6  1997/04/13 19:54:07  keil
- * Change in IRQ check delay for SMP
- *
- * Revision 1.5  1997/04/06 22:54:10  keil
- * Using SKB's
- *
- * Revision 1.4  1997/01/27 15:50:21  keil
- * SMP proof,cosmetics
- *
- * Revision 1.3  1997/01/21 22:14:20  keil
- * cleanups
- *
- * Revision 1.2  1996/10/27 22:07:31  keil
- * cosmetic changes
- *
- * Revision 1.1  1996/10/13 20:04:49  keil
- * Initial revision
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 #define __NO_VERSION__
@@ -70,7 +14,7 @@
 #include "isdnl1.h"
 
 extern const char *CardType[];
-static const char *avm_revision = "$Revision: 2.11 $";
+static const char *avm_revision = "$Revision: 2.12 $";
 
 #define         AVM_A1_STAT_ISAC       0x01
 #define         AVM_A1_STAT_HSCX       0x02
index 76382c3722b755341940133d865edba191c7b016..a9a132b98557ef4137223db87b4691df9480de6a 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: avm_a1p.c,v 2.5 1999/09/01 08:26:34 calle Exp $
+/* $Id: avm_a1p.c,v 2.6 2000/06/26 08:59:12 keil Exp $
  *
  * avm_a1p.c    low level stuff for the following AVM cards:
  *              A1 PCMCIA
@@ -7,29 +7,7 @@
  *
  * Author       Carsten Paeth (calle@calle.in-berlin.de)
  *
- * $Log: avm_a1p.c,v $
- * Revision 2.5  1999/09/01 08:26:34  calle
- * Patch from Daniel Beichl <dani@ecomag.net> to make A1 PCMCIA work again.
- *
- * Revision 2.4  1999/07/12 21:04:55  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 2.3  1998/11/15 23:54:22  keil
- * changes from 2.0
- *
- * Revision 2.2  1998/08/13 23:36:13  keil
- * HiSax 3.1 - don't work stable with current LinkLevel
- *
- * Revision 2.1  1998/07/15 15:01:23  calle
- * Support for AVM passive PCMCIA cards:
- *    A1 PCMCIA, FRITZ!Card PCMCIA and FRITZ!Card PCMCIA 2.0
- *
- * Revision 1.1.2.1  1998/07/15 14:43:26  calle
- * Support for AVM passive PCMCIA cards:
- *    A1 PCMCIA, FRITZ!Card PCMCIA and FRITZ!Card PCMCIA 2.0
- *
- *
+ *  This file is (c) under GNU PUBLIC LICENSE
  */
 #define __NO_VERSION__
 #include "hisax.h"
@@ -74,7 +52,7 @@
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
 
-static const char *avm_revision = "$Revision: 2.5 $";
+static const char *avm_revision = "$Revision: 2.6 $";
 
 static inline u_char
 ReadISAC(struct IsdnCardState *cs, u_char offset)
index 5af207b5eb94742d0461262720cc8443ebb6d67c..dabb179b56bfdda1847fd58905f82d8e0e8ca1c6 100644 (file)
@@ -1,60 +1,11 @@
-/* $Id: avm_pci.c,v 1.15 2000/02/26 00:35:12 keil Exp $
-
+/* $Id: avm_pci.c,v 1.17 2000/06/26 08:59:12 keil Exp $
+ *
  * avm_pci.c    low level stuff for AVM Fritz!PCI and ISA PnP isdn cards
  *              Thanks to AVM, Berlin for informations
  *
  * Author       Karsten Keil (keil@isdn4linux.de)
  *
- *
- * $Log: avm_pci.c,v $
- * Revision 1.15  2000/02/26 00:35:12  keil
- * Fix skb freeing in interrupt context
- *
- * Revision 1.14  1999/12/19 13:09:41  keil
- * changed TASK_INTERRUPTIBLE into TASK_UNINTERRUPTIBLE for
- * signal proof delays
- *
- * Revision 1.13  1999/12/03 12:10:14  keil
- * Bugfix: Wrong channel use on hangup of channel 2
- *
- * Revision 1.12  1999/09/04 06:20:05  keil
- * Changes from kernel set_current_state()
- *
- * Revision 1.11  1999/08/11 21:01:18  keil
- * new PCI codefix
- *
- * Revision 1.10  1999/08/10 16:01:44  calle
- * struct pci_dev changed in 2.3.13. Made the necessary changes.
- *
- * Revision 1.9  1999/07/12 21:04:57  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 1.8  1999/07/01 08:11:19  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 1.7  1999/02/22 18:26:30  keil
- * Argh ! ISAC address was only set with PCI
- *
- * Revision 1.6  1998/11/27 19:59:28  keil
- * set subtype for Fritz!PCI
- *
- * Revision 1.5  1998/11/27 12:56:45  keil
- * forgot to update setup function name
- *
- * Revision 1.4  1998/11/15 23:53:19  keil
- * Fritz!PnP; changes from 2.0
- *
- * Revision 1.3  1998/09/27 23:53:39  keil
- * Fix error handling
- *
- * Revision 1.2  1998/09/27 12:54:55  keil
- * bcs assign was lost in setstack, very bad results
- *
- * Revision 1.1  1998/08/20 13:47:30  keil
- * first version
- *
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 #define __NO_VERSION__
index 6221cc19729c17f19147694054693430f7240bff..17e3a19a78faccb4cd53e350b90b243dfba43e9e 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: bkm_a4t.c,v 1.9 1999/12/19 13:09:41 keil Exp $
+/* $Id: bkm_a4t.c,v 1.11 2000/06/26 08:59:12 keil 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
@@ -6,36 +6,7 @@
  *
  * Author       Roland Klabunde (R.Klabunde@Berkom.de)
  *
- * $Log: bkm_a4t.c,v $
- * Revision 1.9  1999/12/19 13:09:41  keil
- * changed TASK_INTERRUPTIBLE into TASK_UNINTERRUPTIBLE for
- * signal proof delays
- *
- * Revision 1.8  1999/09/04 06:20:05  keil
- * Changes from kernel set_current_state()
- *
- * Revision 1.7  1999/08/22 20:26:55  calle
- * backported changes from kernel 2.3.14:
- * - several #include "config.h" gone, others come.
- * - "struct device" changed to "struct net_device" in 2.3.14, added a
- *   define in isdn_compat.h for older kernel versions.
- *
- * Revision 1.6  1999/08/11 21:01:22  keil
- * new PCI codefix
- *
- * Revision 1.5  1999/08/10 16:01:46  calle
- * struct pci_dev changed in 2.3.13. Made the necessary changes.
- *
- * Revision 1.4  1999/07/14 11:43:14  keil
- * correct PCI_SUBSYSTEM_VENDOR_ID
- *
- * Revision 1.3  1999/07/12 21:04:58  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 1.2  1999/07/01 08:07:53  keil
- * Initial version
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index 8ec2e9a08e691b317cce56b0e2e55b181684356c..61e0bde3c11aeec5bcddb1efe4d5502138ec9db0 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: bkm_a8.c,v 1.9 1999/12/19 13:09:41 keil Exp $
+/* $Id: bkm_a8.c,v 1.12 2000/06/26 08:59:12 keil 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
@@ -6,36 +6,7 @@
  *
  * Author       Roland Klabunde (R.Klabunde@Berkom.de)
  *
- * $Log: bkm_a8.c,v $
- * Revision 1.9  1999/12/19 13:09:41  keil
- * changed TASK_INTERRUPTIBLE into TASK_UNINTERRUPTIBLE for
- * signal proof delays
- *
- * Revision 1.8  1999/09/04 06:20:05  keil
- * Changes from kernel set_current_state()
- *
- * Revision 1.7  1999/08/22 20:26:58  calle
- * backported changes from kernel 2.3.14:
- * - several #include "config.h" gone, others come.
- * - "struct device" changed to "struct net_device" in 2.3.14, added a
- *   define in isdn_compat.h for older kernel versions.
- *
- * Revision 1.6  1999/08/11 21:01:24  keil
- * new PCI codefix
- *
- * Revision 1.5  1999/08/10 16:01:48  calle
- * struct pci_dev changed in 2.3.13. Made the necessary changes.
- *
- * Revision 1.4  1999/07/14 11:43:15  keil
- * correct PCI_SUBSYSTEM_VENDOR_ID
- *
- * Revision 1.3  1999/07/12 21:04:59  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 1.2  1999/07/01 08:07:54  keil
- * Initial version
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 #define __NO_VERSION__
index e2d5fa70e4bdecc1845b50de5299919584b952ef..418c4bd4799d43d83423b9a7fd8ef90c53cac4aa 100644 (file)
@@ -1,13 +1,9 @@
-/* $Id: bkm_ax.h,v 1.2 1999/07/01 08:07:55 keil Exp $
+/* $Id: bkm_ax.h,v 1.4 2000/06/26 08:59:12 keil Exp $
  * bkm_ax.h   low level decls for T-Berkom cards A4T and Scitel Quadro (4*S0, passive)
  *
  * Author     Roland Klabunde (R.Klabunde@Berkom.de)
  *
- * $Log: bkm_ax.h,v $
- * Revision 1.2  1999/07/01 08:07:55  keil
- * Initial version
- *
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index 7c5163f82b27f6d67485783ac2c69b04ac2622e2..f4f61d850c61be53fed64f2db8fc71a70fee3a2f 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: callc.c,v 2.41 2000/03/17 07:07:42 kai Exp $
-
+/* $Id: callc.c,v 2.47 2000/06/26 08:59:12 keil Exp $
+ *
  * Author       Karsten Keil (keil@isdn4linux.de)
  *              based on the teles driver from Jan den Ouden
  *
  * Thanks to    Jan den Ouden
  *              Fritz Elfert
  *
- * $Log: callc.c,v $
- * Revision 2.41  2000/03/17 07:07:42  kai
- * fixed oops when dialing out without l3 protocol selected
- *
- * Revision 2.40  1999/12/19 12:59:56  keil
- * fix leased line handling
- * and cosmetics
- *
- * Revision 2.39  1999/10/14 20:25:28  keil
- * add a statistic for error monitoring
- *
- * Revision 2.38  1999/10/11 22:16:27  keil
- * Suspend/Resume is possible without explicit ID too
- *
- * Revision 2.37  1999/09/20 19:49:47  keil
- * Fix wrong init of PStack
- *
- * Revision 2.36  1999/09/20 12:13:13  keil
- * Fix hang if no protocol was selected
- *
- * Revision 2.35  1999/09/04 06:20:05  keil
- * Changes from kernel set_current_state()
- *
- * Revision 2.34  1999/08/25 20:02:34  werner
- * Changed return values for stat_icall(w) from 3->4 and 4->5 because of conflicts
- * with existing software definitions. (PtP incomplete called party number)
- *
- * Revision 2.33  1999/08/25 17:00:09  keil
- * Make ISAR V32bis modem running
- * Make LL->HL interface open for additional commands
- *
- * Revision 2.32  1999/08/22 20:27:01  calle
- * backported changes from kernel 2.3.14:
- * - several #include "config.h" gone, others come.
- * - "struct device" changed to "struct net_device" in 2.3.14, added a
- *   define in isdn_compat.h for older kernel versions.
- *
- * Revision 2.31  1999/08/05 20:43:10  keil
- * ISAR analog modem support
- *
- * Revision 2.30  1999/07/25 16:24:04  keil
- * Fixed TEI now working again
- *
- * Revision 2.29  1999/07/13 21:05:41  werner
- * Modified set_channel_limit to use new callback ISDN_STAT_DISCH.
- *
- * Revision 2.28  1999/07/09 08:30:02  keil
- * cosmetics
- *
- * Revision 2.27  1999/07/05 23:51:38  werner
- * Allow limiting of available HiSax B-chans per card. Controlled by hisaxctrl
- * hisaxctrl id 10 <nr. of chans 0-2>
- *
- * Revision 2.26  1999/07/01 08:11:21  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 2.25  1999/01/02 11:17:20  keil
- * Changes for 2.2
- *
- * Revision 2.24  1998/11/15 23:54:24  keil
- * changes from 2.0
- *
- * Revision 2.23  1998/09/30 22:21:57  keil
- * cosmetics
- *
- * Revision 2.22  1998/08/20 13:50:29  keil
- * More support for hybrid modem (not working yet)
- *
- * Revision 2.21  1998/08/13 23:36:15  keil
- * HiSax 3.1 - don't work stable with current LinkLevel
- *
- * Revision 2.20  1998/06/26 15:13:05  fritz
- * Added handling of STAT_ICALL with incomplete CPN.
- * Added AT&L for ttyI emulator.
- * Added more locking stuff in tty_write.
- *
- * Revision 2.19  1998/05/25 14:08:06  keil
- * HiSax 3.0
- * fixed X.75 and leased line to work again
- * Point2Point and fixed TEI are runtime options now:
- *    hisaxctrl <id> 7 1  set PTP
- *    hisaxctrl <id> 8 <TEIVALUE *2 >
- *    set fixed TEI to TEIVALUE (0-63)
- *
- * Revision 2.18  1998/05/25 12:57:40  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 2.17  1998/04/15 16:46:06  keil
- * RESUME support
- *
- * Revision 2.16  1998/04/10 10:35:17  paul
- * fixed (silly?) warnings from egcs on Alpha.
- *
- * Revision 2.15  1998/03/19 13:18:37  keil
- * Start of a CAPI like interface for supplementary Service
- * first service: SUSPEND
- *
- * Revision 2.14  1998/03/07 22:56:54  tsbogend
- * made HiSax working on Linux/Alpha
- *
- * Revision 2.13  1998/02/12 23:07:16  keil
- * change for 2.1.86 (removing FREE_READ/FREE_WRITE from [dev]_kfree_skb()
- *
- * Revision 2.12  1998/02/09 10:55:54  keil
- * New leased line mode
- *
- * Revision 2.11  1998/02/02 13:35:19  keil
- * config B-channel delay
- *
- * Revision 2.10  1997/11/06 17:09:15  keil
- * New 2.1 init code
- *
- * Revision 2.9  1997/10/29 19:01:58  keil
- * new LL interface
- *
- * Revision 2.8  1997/10/10 20:56:44  fritz
- * New HL interface.
- *
- * Revision 2.7  1997/10/01 09:21:28  fritz
- * Removed old compatibility stuff for 2.0.X kernels.
- * From now on, this code is for 2.1.X ONLY!
- * Old stuff is still in the separate branch.
- *
- * Revision 2.6  1997/09/11 17:26:58  keil
- * Open B-channel if here are incomming packets
- *
- * Revision 2.5  1997/08/07 17:46:05  keil
- * Fix Incomming Call without broadcast
- *
- * Revision 2.4  1997/08/03 14:37:58  keil
- * Activate Layer2 in PtP mode
- *
- * Revision 2.3  1997/07/31 19:23:40  keil
- * LAYER2_WATCHING for PtP
- *
- * Revision 2.2  1997/07/31 11:48:18  keil
- * experimental REJECT after ALERTING
- *
- * Revision 2.1  1997/07/30 17:12:59  keil
- * more changes for 'One TEI per card'
- *
- * Revision 2.0  1997/07/27 21:12:21  keil
- * CRef based L3; new channel handling; many other stuff
- *
- * Revision 1.31  1997/06/26 11:09:23  keil
- * New managment and minor changes
- *
- * old logs removed /KKe
- *
  */
 
 #define __NO_VERSION__
 #define MOD_USE_COUNT ( GET_USE_COUNT (&__this_module))
 #endif /* MODULE */
 
-const char *lli_revision = "$Revision: 2.41 $";
+const char *lli_revision = "$Revision: 2.47 $";
 
 extern struct IsdnCard cards[];
 extern int nrcards;
index 03f416d5bff3736b70c37123af3881df038ca98d..bf0c6465d0232313e6dd620943bd555192589631 100644 (file)
@@ -1,22 +1,11 @@
-/* $Id: cert.c,v 2.2 1999/08/07 17:35:05 keil Exp $
-
+/* $Id: cert.c,v 2.3 2000/06/26 08:59:12 keil Exp $
+ *
  * Author       Karsten Keil (keil@isdn4linux.de)
  *
  *             This file is (c) under GNU PUBLIC LICENSE
  *             For changes and modifications please read
  *             ../../../Documentation/isdn/HiSax.cert
  *
- * $Log: cert.c,v $
- * Revision 2.2  1999/08/07 17:35:05  keil
- * approval for Eicon Technology Diva 2.01 PCI
- *
- * Revision 2.1  1998/11/15 23:51:15  keil
- * certification stuff
- *
- * Revision 1.2.2.1  1998/11/03 21:46:37  keil
- * first version
- *
- *
  */
  
 #include <linux/kernel.h>
index 377819551fec6175d54133192294e7d361315c35..cda0fe872aab081c9b594c1d306a2453fcb2b61f 100644 (file)
@@ -1,161 +1,9 @@
-/* $Id: config.c,v 2.44 2000/02/26 00:35:12 keil Exp $
-
+/* $Id: config.c,v 2.50 2000/07/04 10:24:32 keil Exp $
+ *
  * Author       Karsten Keil (keil@isdn4linux.de)
  *              based on the teles driver from Jan den Ouden
  *
- *
- * $Log: config.c,v $
- * Revision 2.44  2000/02/26 00:35:12  keil
- * Fix skb freeing in interrupt context
- *
- * Revision 2.43  2000/01/20 19:49:36  keil
- * Support teles 13.3c vendor version 2.1
- *
- * Revision 2.42  1999/12/19 13:09:41  keil
- * changed TASK_INTERRUPTIBLE into TASK_UNINTERRUPTIBLE for
- * signal proof delays
- *
- * Revision 2.41  1999/11/18 00:00:43  werner
- *
- * Added support for HFC-S+ and HFC-SP cards
- *
- * Revision 2.40  1999/10/30 13:09:45  keil
- * Version 3.3c
- *
- * Revision 2.39  1999/10/16 14:44:45  keil
- * Fix module parm if only NICCY was selected
- *
- * Revision 2.38  1999/10/14 20:25:28  keil
- * add a statistic for error monitoring
- *
- * Revision 2.37  1999/09/20 12:11:08  keil
- * Fix hang if no protocol was selected
- *
- * Revision 2.36  1999/09/07 05:43:58  werner
- *
- * Added io as parameter 0 for HFC-PCI cards, if manual selection needed.
- *
- * Revision 2.35  1999/09/04 06:35:09  keil
- * Winbond W6692 support
- *
- * Revision 2.34  1999/09/04 06:20:06  keil
- * Changes from kernel set_current_state()
- *
- * Revision 2.33  1999/08/30 11:57:52  keil
- * Fix broken avm pcmcia
- *
- * Revision 2.32  1999/08/28 22:11:10  keil
- * __setup function should be static
- *
- * Revision 2.31  1999/08/25 16:47:43  keil
- * Support new __setup; allow to add FEATURES after register_isdn
- *
- * Revision 2.30  1999/08/05 20:43:14  keil
- * ISAR analog modem support
- *
- * Revision 2.29  1999/07/21 14:46:00  keil
- * changes from EICON certification
- *
- * Revision 2.28  1999/07/14 12:38:36  werner
- * Added changes for echo channel handling
- *
- * Revision 2.27  1999/07/12 21:05:00  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 2.26  1999/07/08 21:27:17  keil
- * version 3.2
- *
- * Revision 2.25  1999/07/05 23:51:44  werner
- * Allow limiting of available HiSax B-chans per card. Controlled by hisaxctrl
- * hisaxctrl id 10 <nr. of chans 0-2>
- *
- * Revision 2.24  1999/07/01 08:11:26  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 2.23  1999/02/17 10:53:02  cpetig
- * Added Hisax_closecard to exported symbols.
- * As indicated by Oliver Schoett <os@sdm.de>.
- *
- * If anyone is annoyed by exporting symbols deep inside the code, please
- * contact me.
- *
- * Revision 2.22  1999/02/04 21:41:53  keil
- * Fix printk msg
- *
- * Revision 2.21  1999/02/04 10:48:52  keil
- * Fix readstat bug
- *
- * Revision 2.20  1998/11/15 23:54:28  keil
- * changes from 2.0
- *
- * Revision 2.19  1998/08/13 23:36:18  keil
- * HiSax 3.1 - don't work stable with current LinkLevel
- *
- * Revision 2.18  1998/07/30 21:01:37  niemann
- * Fixed Sedlbauer Speed Fax PCMCIA missing isdnl3new
- *
- * Revision 2.17  1998/07/15 15:01:26  calle
- * Support for AVM passive PCMCIA cards:
- *    A1 PCMCIA, FRITZ!Card PCMCIA and FRITZ!Card PCMCIA 2.0
- *
- * Revision 2.16  1998/05/25 14:10:03  keil
- * HiSax 3.0
- * X.75 and leased are working again.
- *
- * Revision 2.15  1998/05/25 12:57:43  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 2.14  1998/04/15 16:38:25  keil
- * Add S0Box and Teles PCI support
- *
- * Revision 2.13  1998/03/09 23:19:23  keil
- * Changes for PCMCIA
- *
- * Revision 2.12  1998/02/11 17:28:02  keil
- * Niccy PnP/PCI support
- *
- * Revision 2.11  1998/02/09 21:26:13  keil
- * fix export module for 2.1
- *
- * Revision 2.10  1998/02/09 18:46:05  keil
- * Support for Sedlbauer PCMCIA (Marcus Niemann)
- *
- * Revision 2.9  1998/02/03 23:31:28  keil
- * add AMD7930 support
- *
- * Revision 2.8  1998/02/02 13:32:59  keil
- * New card support
- *
- * Revision 2.7  1998/01/31 21:41:44  keil
- * changes for newer 2.1 kernels
- *
- * Revision 2.6  1997/11/08 21:35:43  keil
- * new l1 init
- *
- * Revision 2.5  1997/11/06 17:15:08  keil
- * New 2.1 init; PCMCIA wrapper changes
- *
- * Revision 2.4  1997/10/29 19:07:52  keil
- * changes for 2.1
- *
- * Revision 2.3  1997/10/01 09:21:33  fritz
- * Removed old compatibility stuff for 2.0.X kernels.
- * From now on, this code is for 2.1.X ONLY!
- * Old stuff is still in the separate branch.
- *
- * Revision 2.2  1997/09/11 17:24:46  keil
- * Add new cards
- *
- * Revision 2.1  1997/07/27 21:41:35  keil
- * version change
- *
- * Revision 2.0  1997/06/26 11:06:28  keil
- * New card and L1 interface.
- * Eicon.Diehl Diva and Dynalink IS64PH support
- *
- * old changes removed /KKe
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 #include <linux/types.h>
index 43a4dc0c16a77906a9f3846c9c661acdfb05526f..002ee0d60b824cb0ea73206ccfb428957df55604 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: diva.c,v 1.19 2000/02/26 00:35:12 keil Exp $
-
+/* $Id: diva.c,v 1.21 2000/06/26 08:59:12 keil Exp $
+ *
  * diva.c     low level stuff for Eicon.Diehl Diva Family ISDN cards
  *
  * Author     Karsten Keil (keil@isdn4linux.de)
  *
  * Thanks to Eicon Technology for documents and informations
  *
- *
- * $Log: diva.c,v $
- * Revision 1.19  2000/02/26 00:35:12  keil
- * Fix skb freeing in interrupt context
- *
- * Revision 1.18  1999/12/19 13:09:41  keil
- * changed TASK_INTERRUPTIBLE into TASK_UNINTERRUPTIBLE for
- * signal proof delays
- *
- * Revision 1.17  1999/09/04 06:20:06  keil
- * Changes from kernel set_current_state()
- *
- * Revision 1.16  1999/08/11 21:01:25  keil
- * new PCI codefix
- *
- * Revision 1.15  1999/08/10 16:01:49  calle
- * struct pci_dev changed in 2.3.13. Made the necessary changes.
- *
- * Revision 1.14  1999/08/07 17:35:08  keil
- * approval for Eicon Technology Diva 2.01 PCI
- *
- * Revision 1.13  1999/07/21 14:46:07  keil
- * changes from EICON certification
- *
- * Revision 1.12  1999/07/12 21:05:04  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 1.11  1999/07/01 08:11:29  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 1.10  1998/11/15 23:54:31  keil
- * changes from 2.0
- *
- * Revision 1.9  1998/06/27 22:52:03  keil
- * support for Diva 2.01
- *
- * Revision 1.8  1998/05/25 12:57:46  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 1.7  1998/04/15 16:42:36  keil
- * new init code
- * new PCI init (2.1.94)
- *
- * Revision 1.6  1998/03/07 22:56:57  tsbogend
- * made HiSax working on Linux/Alpha
- *
- * Revision 1.5  1998/02/02 13:29:38  keil
- * fast io
- *
- * Revision 1.4  1997/11/08 21:35:44  keil
- * new l1 init
- *
- * Revision 1.3  1997/11/06 17:13:33  keil
- * New 2.1 init code
- *
- * Revision 1.2  1997/10/29 18:55:55  keil
- * changes for 2.1.60 (irq2dev_map)
- *
- * Revision 1.1  1997/09/18 17:11:20  keil
- * first version
- *
- *
  */
 
 #define __NO_VERSION__
@@ -87,7 +23,7 @@
 
 extern const char *CardType[];
 
-const char *Diva_revision = "$Revision: 1.19 $";
+const char *Diva_revision = "$Revision: 1.21 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index 3c78e04a7bdd7f2c4857b55ce57de9b659285eaa..70cff176b1e1b4c46c0bf9205309860da7295b65 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: elsa.c,v 2.20 1999/12/19 13:09:42 keil Exp $
-
+/* $Id: elsa.c,v 2.23 2000/06/26 08:59:12 keil Exp $
+ *
  * elsa.c     low level stuff for Elsa isdn cards
  *
  * Author     Karsten Keil (keil@isdn4linux.de)
  *              Klaus Lichtenwalder (Klaus.Lichtenwalder@WebForum.DE)
  *              for ELSA PCMCIA support
  *
- * $Log: elsa.c,v $
- * Revision 2.20  1999/12/19 13:09:42  keil
- * changed TASK_INTERRUPTIBLE into TASK_UNINTERRUPTIBLE for
- * signal proof delays
- *
- * Revision 2.19  1999/09/04 06:20:06  keil
- * Changes from kernel set_current_state()
- *
- * Revision 2.18  1999/08/25 16:50:54  keil
- * Fix bugs which cause 2.3.14 hangs (waitqueue init)
- *
- * Revision 2.17  1999/08/11 20:57:40  keil
- * bugfix IPAC version 1.1
- * new PCI codefix
- *
- * Revision 2.16  1999/08/10 16:01:51  calle
- * struct pci_dev changed in 2.3.13. Made the necessary changes.
- *
- * Revision 2.15  1999/08/09 19:25:21  keil
- * Support (alpha version) for the '98 model of ELSA Microlink ISDN/MC
- * by Christer Weinigel, Cendio Systems AB <wingel@cendio.se>
- * Add support for IPAC 1.2
- *
- * Revision 2.14  1999/07/12 21:05:07  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 2.13  1999/07/01 08:11:31  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 2.12  1998/11/15 23:54:35  keil
- * changes from 2.0
- *
- * Revision 2.11  1998/08/20 13:50:34  keil
- * More support for hybrid modem (not working yet)
- *
- * Revision 2.10  1998/08/13 23:36:22  keil
- * HiSax 3.1 - don't work stable with current LinkLevel
- *
- * Revision 2.9  1998/05/25 12:57:48  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 2.8  1998/04/15 16:41:42  keil
- * QS3000 PCI support
- * new init code
- * new PCI init (2.1.94)
- *
- * Revision 2.7  1998/03/07 22:56:58  tsbogend
- * made HiSax working on Linux/Alpha
- *
- * Revision 2.6  1998/02/02 13:29:40  keil
- * fast io
- *
- * Revision 2.5  1998/01/31 21:41:45  keil
- * changes for newer 2.1 kernels
- *
- * Revision 2.4  1997/11/08 21:35:46  keil
- * new l1 init
- *
- * Revision 2.3  1997/11/06 17:15:09  keil
- * New 2.1 init; PCMCIA wrapper changes
- *
- * Revision 2.2  1997/10/29 18:57:09  keil
- * changes for 2.1.60, arcofi support
- *
- * Revision 2.1  1997/07/27 21:47:08  keil
- * new interface structures
- *
- * Revision 2.0  1997/06/26 11:02:40  keil
- * New Layer and card interface
- *
- * old changes removed KKe
- *
  */
 
 #define __NO_VERSION__
index 8bff1db1c9a8aed62e016abad0748737a646fc7c..7f439e1a274beb9e4acd9c791eaf291a0ded7b37 100644 (file)
@@ -1,3 +1,10 @@
+/* $Id: elsa_ser.c,v 2.9 2000/06/26 08:59:12 keil Exp $
+ *
+ * stuff for the serial modem on ELSA cards
+ *
+ * This file is (c) under GNU PUBLIC LICENSE
+ *
+ */
 #include <linux/config.h>
 #include <linux/serial.h>
 #include <linux/serial_reg.h>
index d0d356cf5cd92e5a2ec0fa42f9c8af46b8c2b7c5..a483b5824f1716f3fdd7c60355966b4cf5724ae0 100644 (file)
@@ -1,48 +1,12 @@
-/* $Id: fsm.c,v 1.11 1999/12/23 15:09:32 keil Exp $
-
+/* $Id: fsm.c,v 1.13 2000/06/26 08:59:12 keil Exp $
+ *
  * Author       Karsten Keil (keil@isdn4linux.de)
  *              based on the teles driver from Jan den Ouden
  *
  * Thanks to    Jan den Ouden
  *              Fritz Elfert
  *
- * $Log: fsm.c,v $
- * Revision 1.11  1999/12/23 15:09:32  keil
- * change email
- *
- * Revision 1.10  1998/11/15 23:54:39  keil
- * changes from 2.0
- *
- * Revision 1.9  1998/03/26 07:10:02  paul
- * The jumpmatrix table in struct Fsm was an array of "int". This is not
- * large enough for pointers to functions on Linux/Alpha (instant crash
- * on "insmod hisax). Now there is a typedef for the pointer to function.
- * This also prevents warnings about "incompatible pointer types".
- *
- * Revision 1.8  1998/03/07 22:56:59  tsbogend
- * made HiSax working on Linux/Alpha
- *
- * Revision 1.7  1997/11/06 17:09:13  keil
- * New 2.1 init code
- *
- * Revision 1.6  1997/07/27 21:42:25  keil
- * proof Fsm routines
- *
- * Revision 1.5  1997/06/26 11:10:05  keil
- * Restart timer function added
- *
- * Revision 1.4  1997/04/06 22:56:42  keil
- * Some cosmetic changes
- *
- * Revision 1.3  1997/02/16 01:04:08  fritz
- * Bugfix: Changed timer handling caused hang with 2.1.X
- *
- * Revision 1.2  1997/01/09 20:57:27  keil
- * cleanup & FSM_TIMER_DEBUG
- *
- * Revision 1.1  1996/10/13 20:04:52  keil
- * Initial revision
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 #define __NO_VERSION__
index 4121de13323bc9b93aaa0a684525aa3a1d4ead58..4693318dcaf3db62e1a9275f3c58987aaf0d831c 100644 (file)
@@ -1,32 +1,11 @@
-/* $Id: gazel.c,v 2.6 1999/08/22 20:27:03 calle Exp $
-
+/* $Id: gazel.c,v 2.8 2000/06/26 08:59:12 keil Exp $
+ *
  * gazel.c     low level stuff for Gazel isdn cards
  *
  * Author       BeWan Systems
  *              based on source code from Karsten Keil
  *
- * $Log: gazel.c,v $
- * Revision 2.6  1999/08/22 20:27:03  calle
- * backported changes from kernel 2.3.14:
- * - several #include "config.h" gone, others come.
- * - "struct device" changed to "struct net_device" in 2.3.14, added a
- *   define in isdn_compat.h for older kernel versions.
- *
- * Revision 2.5  1999/08/11 21:01:26  keil
- * new PCI codefix
- *
- * Revision 2.4  1999/08/10 16:01:54  calle
- * struct pci_dev changed in 2.3.13. Made the necessary changes.
- *
- * Revision 2.3  1999/07/12 21:05:09  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 2.1  1999/07/08 21:26:17  keil
- * new card
- *
- * Revision 1.0  1999/28/06
- * Initial revision
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 #include <linux/config.h>
@@ -39,7 +18,7 @@
 #include <linux/pci.h>
 
 extern const char *CardType[];
-const char *gazel_revision = "$Revision: 2.6 $";
+const char *gazel_revision = "$Revision: 2.8 $";
 
 #define R647      1
 #define R685      2
index bc466586394f50cfa88a92b2bf9953bde32135e3..9e03c111e24e703728223f1020e6286966997f75 100644 (file)
@@ -1,46 +1,10 @@
-/* $Id: hfc_2bds0.c,v 1.12 2000/02/26 00:35:12 keil Exp $
+/* $Id: hfc_2bds0.c,v 1.13 2000/06/26 08:59:12 keil Exp $
  *
  *  specific routines for CCD's HFC 2BDS0
  *
  * Author       Karsten Keil (keil@isdn4linux.de)
  *
- *
- * $Log: hfc_2bds0.c,v $
- * Revision 1.12  2000/02/26 00:35:12  keil
- * Fix skb freeing in interrupt context
- *
- * Revision 1.11  1999/12/23 15:09:32  keil
- * change email
- *
- * Revision 1.10  1999/10/14 20:25:28  keil
- * add a statistic for error monitoring
- *
- * Revision 1.9  1999/07/01 08:11:35  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 1.8  1998/11/15 23:54:40  keil
- * changes from 2.0
- *
- * Revision 1.7  1998/09/30 22:24:45  keil
- * Fix missing line in setstack*
- *
- * Revision 1.6  1998/08/13 23:36:26  keil
- * HiSax 3.1 - don't work stable with current LinkLevel
- *
- * Revision 1.5  1998/06/27 22:52:58  keil
- * make 16.3c working with 3.0
- *
- * Revision 1.4  1998/05/25 12:57:52  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 1.3  1998/02/12 23:07:22  keil
- * change for 2.1.86 (removing FREE_READ/FREE_WRITE from [dev]_kfree_skb()
- *
- * Revision 1.2  1998/02/02 13:26:13  keil
- * New
- *
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 #define __NO_VERSION__
index 32f703662ae7e8df8de522a0a93687aa97946beb..66cf0b11aa87163ffbf81c0da78d452a91058254 100644 (file)
@@ -1,18 +1,10 @@
-/* $Id: hfc_2bds0.h,v 1.3 1999/12/23 15:09:32 keil Exp $
-
+/* $Id: hfc_2bds0.h,v 1.4 2000/06/26 08:59:12 keil Exp $
+ *
  *  specific defines for CCD's HFC 2BDS0
  *
  * Author       Karsten Keil (keil@isdn4linux.de)
  *
- *
- * $Log: hfc_2bds0.h,v $
- * Revision 1.3  1999/12/23 15:09:32  keil
- * change email
- *
- * Revision 1.2  1998/02/02 13:26:15  keil
- * New
- *
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index 8a1d297626eed33b26065e30ac024b45a0fb4512..f28585a84360df38cb926cbf9b8ff5109e3669cf 100644 (file)
@@ -1,52 +1,10 @@
-/* $Id: hfc_2bs0.c,v 1.13 2000/02/26 00:35:12 keil Exp $
-
+/* $Id: hfc_2bs0.c,v 1.14 2000/06/26 08:59:13 keil Exp $
+ *
  *  specific routines for CCD's HFC 2BS0
  *
  * Author       Karsten Keil (keil@isdn4linux.de)
  *
- *
- * $Log: hfc_2bs0.c,v $
- * Revision 1.13  2000/02/26 00:35:12  keil
- * Fix skb freeing in interrupt context
- *
- * Revision 1.12  1999/12/19 14:17:12  keil
- * fix compiler warning
- *
- * Revision 1.11  1999/11/21 12:41:18  werner
- *
- * Implemented full audio support
- *
- * Revision 1.10  1999/10/14 20:25:28  keil
- * add a statistic for error monitoring
- *
- * Revision 1.9  1999/07/01 08:11:36  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 1.8  1998/11/15 23:54:43  keil
- * changes from 2.0
- *
- * Revision 1.7  1998/09/30 22:24:46  keil
- * Fix missing line in setstack*
- *
- * Revision 1.6  1998/08/13 23:36:28  keil
- * HiSax 3.1 - don't work stable with current LinkLevel
- *
- * Revision 1.5  1998/05/25 12:57:54  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 1.4  1998/02/12 23:07:29  keil
- * change for 2.1.86 (removing FREE_READ/FREE_WRITE from [dev]_kfree_skb()
- *
- * Revision 1.3  1997/11/06 17:13:35  keil
- * New 2.1 init code
- *
- * Revision 1.2  1997/10/29 19:04:47  keil
- * changes for 2.1
- *
- * Revision 1.1  1997/09/11 17:31:33  keil
- * Common part for HFC 2BS0 based cards
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index 981ae7cb3d68a2e98d0ef02cab717abf21242977..dd978e781aa0373c23a5b892a9e462f2cf118f4b 100644 (file)
@@ -1,17 +1,10 @@
-/* $Id: hfc_2bs0.h,v 1.2 1999/12/23 15:09:32 keil Exp $
-
+/* $Id: hfc_2bs0.h,v 1.3 2000/06/26 08:59:13 keil Exp $
+ *
  *  specific defines for CCD's HFC 2BS0
  *
  * Author       Karsten Keil (keil@isdn4linux.de)
  *
- *
- * $Log: hfc_2bs0.h,v $
- * Revision 1.2  1999/12/23 15:09:32  keil
- * change email
- *
- * Revision 1.1  1997/09/11 17:31:34  keil
- * Common part for HFC 2BS0 based cards
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index 300bfb1f7e7f301cb857426af46db4ed3116adef..ac673c2275e267fdd6202b501ab75d3ba1062e65 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: hfc_pci.c,v 1.27 2000/02/26 00:35:12 keil Exp $
+/* $Id: hfc_pci.c,v 1.30 2000/06/26 08:59:13 keil Exp $
 
  * hfc_pci.c     low level driver for CCD´s hfc-pci based cards
  *
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: hfc_pci.c,v $
- * Revision 1.27  2000/02/26 00:35:12  keil
- * Fix skb freeing in interrupt context
- *
- * Revision 1.26  2000/02/09 20:22:55  werner
- *
- * Updated PCI-ID table
- *
- * Revision 1.25  1999/12/19 13:09:42  keil
- * changed TASK_INTERRUPTIBLE into TASK_UNINTERRUPTIBLE for
- * signal proof delays
- *
- * Revision 1.24  1999/11/17 23:59:55  werner
- *
- * removed unneeded data
- *
- * Revision 1.23  1999/11/07 17:01:55  keil
- * fix for 2.3 pci structs
- *
- * Revision 1.22  1999/10/10 20:14:27  werner
- *
- * Correct B2-chan usage in conjuntion with echo mode. First implementation of NT-leased line mode.
- *
- * Revision 1.21  1999/10/02 17:47:49  werner
- *
- * Changed init order, added correction for page alignment with shared mem
- *
- * Revision 1.20  1999/09/07 06:18:55  werner
- *
- * Added io parameter for HFC-PCI based cards. Needed only with multiple cards
- * when initialisation/selection order needs to be set.
- *
- * Revision 1.19  1999/09/04 06:20:06  keil
- * Changes from kernel set_current_state()
- *
- * Revision 1.18  1999/08/29 17:05:44  werner
- * corrected tx_lo line setup. Datasheet is not correct.
- *
- * Revision 1.17  1999/08/28 21:04:27  werner
- * Implemented full audio support (transparent mode)
- *
- * Revision 1.16  1999/08/25 17:01:27  keil
- * Use new LL->HL auxcmd call
- *
- * Revision 1.15  1999/08/22 20:27:05  calle
- * backported changes from kernel 2.3.14:
- * - several #include "config.h" gone, others come.
- * - "struct device" changed to "struct net_device" in 2.3.14, added a
- *   define in isdn_compat.h for older kernel versions.
- *
- * Revision 1.14  1999/08/12 18:59:45  werner
- * Added further manufacturer and device ids to PCI list
- *
- * Revision 1.13  1999/08/11 21:01:28  keil
- * new PCI codefix
- *
- * Revision 1.12  1999/08/10 16:01:58  calle
- * struct pci_dev changed in 2.3.13. Made the necessary changes.
- *
- * Revision 1.11  1999/08/09 19:13:32  werner
- * moved constant pci ids to pci id table
- *
- * Revision 1.10  1999/08/08 10:17:34  werner
- * added new PCI vendor and card ids for Manufacturer 0x1043
- *
- * Revision 1.9  1999/08/07 21:09:10  werner
- * Fixed another memcpy problem in fifo handling.
- * Thanks for debugging aid by Olaf Kordwittenborg.
- *
- * Revision 1.8  1999/07/23 14:25:15  werner
- * Some smaller bug fixes and prepared support for GCI/IOM bus
- *
- * Revision 1.7  1999/07/14 21:24:20  werner
- * fixed memcpy problem when using E-channel feature
- *
- * Revision 1.6  1999/07/13 21:08:08  werner
- * added echo channel logging feature.
- *
- * Revision 1.5  1999/07/12 21:05:10  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 1.4  1999/07/04 21:51:39  werner
- * Changes to solve problems with irq sharing and smp machines
- * Thanks to Karsten Keil and Alex Holden for giving aid with
- * testing and debugging
- *
- * Revision 1.3  1999/07/01 09:43:19  keil
- * removed additional schedules in timeouts
- *
- * Revision 1.2  1999/07/01 08:07:51  keil
- * Initial version
- *
- *
- *
  */
 
 #include <linux/config.h>
 
 extern const char *CardType[];
 
-static const char *hfcpci_revision = "$Revision: 1.27 $";
+static const char *hfcpci_revision = "$Revision: 1.30 $";
 
 /* table entry in the PCI devices list */
 typedef struct {
index e8597d73049ed1aeaa41733e25f9faf0d0cb487c..9f6bd78eeee4878edc4751ad50a21367177be620 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: hfc_pci.h,v 1.7 1999/10/10 20:13:06 werner Exp $
-
+/* $Id: hfc_pci.h,v 1.8 2000/06/26 08:59:13 keil Exp $
+ *
  *  specific defines for CCD's HFC 2BDS0 PCI chips
  *
  * Author     Werner Cornelius (werner@isdn4linux.de)      
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: hfc_pci.h,v $
- * Revision 1.7  1999/10/10 20:13:06  werner
- *
- * Corrected timer constant
- *
- * Revision 1.6  1999/08/28 21:04:29  werner
- * Implemented full audio support (transparent mode)
- *
- * Revision 1.5  1999/08/09 19:13:34  werner
- * moved constant pci ids to pci id table
- *
- * Revision 1.4  1999/08/08 10:17:33  werner
- * added new PCI vendor and card ids for Manufacturer 0x1043
- *
- * Revision 1.3  1999/07/14 12:39:34  werner
- * Added changes for echo handling.
- *
- * Revision 1.2  1999/07/01 08:07:52  keil
- * Initial version
- *
- *
- *
  */
 
 /*********************************************/
index 71bc7db99d9cd35a81103fe6908652e7e3516b40..36c26cb36423e7e45e2ef5aa2ec610c0435e12f6 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: hfc_sx.c,v 1.4 2000/02/26 00:35:12 keil Exp $
+/* $Id: hfc_sx.c,v 1.6 2000/06/26 08:59:13 keil Exp $
 
  * hfc_sx.c     low level driver for CCD´s hfc-s+/sp based cards
  *
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: hfc_sx.c,v $
- * Revision 1.4  2000/02/26 00:35:12  keil
- * Fix skb freeing in interrupt context
- *
- * Revision 1.3  2000/01/20 19:49:36  keil
- * Support teles 13.3c vendor version 2.1
- *
- * Revision 1.2  1999/12/19 13:09:42  keil
- * changed TASK_INTERRUPTIBLE into TASK_UNINTERRUPTIBLE for
- * signal proof delays
- *
- * Revision 1.1  1999/11/18 00:09:18  werner
- *
- * Initial release of files for HFC-S+ and HFC-SP cards with 32K-RAM.
- * Audio and Echo are supported.
- *
- *
- *
  */
 
 #define __NO_VERSION__
@@ -49,7 +31,7 @@
 
 extern const char *CardType[];
 
-static const char *hfcsx_revision = "$Revision: 1.4 $";
+static const char *hfcsx_revision = "$Revision: 1.6 $";
 
 /***************************************/
 /* IRQ-table for CCDs demo board       */
index ebb8d3e7d45ed637017d03681081fe70cdd3ae8b..41c8056bcbfdfd280786f96a49463466b3cc7bdb 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: hfc_sx.h,v 1.1 1999/11/18 00:09:18 werner Exp $
-
+/* $Id: hfc_sx.h,v 1.2 2000/06/26 08:59:13 keil Exp $
+ *
  *  specific defines for CCD's HFC 2BDS0 S+,SP chips
  *
  * Author     Werner Cornelius (werner@isdn4linux.de)      
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: hfc_sx.h,v $
- * Revision 1.1  1999/11/18 00:09:18  werner
- *
- * Initial release of files for HFC-S+ and HFC-SP cards with 32K-RAM.
- * Audio and Echo are supported.
- *
- *
- *
  */
 
 /*********************************************/
index 7015f4bb57e01d70fe2823e1577213a88ebcb78a..18993bf0d89e3a6d2fd82797b2454764174f6c97 100644 (file)
@@ -1,29 +1,10 @@
-/* $Id: hfcscard.c,v 1.6 1999/12/19 13:09:42 keil Exp $
-
+/* $Id: hfcscard.c,v 1.7 2000/06/26 08:59:13 keil Exp $
+ *
  * hfcscard.c     low level stuff for hfcs based cards (Teles3c, ACER P10)
  *
  * Author     Karsten Keil (keil@isdn4linux.de)
  *
- *
- * $Log: hfcscard.c,v $
- * Revision 1.6  1999/12/19 13:09:42  keil
- * changed TASK_INTERRUPTIBLE into TASK_UNINTERRUPTIBLE for
- * signal proof delays
- *
- * Revision 1.5  1999/09/04 06:20:06  keil
- * Changes from kernel set_current_state()
- *
- * Revision 1.4  1999/08/09 18:59:59  keil
- * Fix S0 init - Thanks to Stefan Gybas
- *
- * Revision 1.3  1999/07/12 21:05:12  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 1.2  1999/07/01 08:16:03  keil
- * teles3c ---> hfcscard
- *
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
@@ -34,7 +15,7 @@
 
 extern const char *CardType[];
 
-static const char *hfcs_revision = "$Revision: 1.6 $";
+static const char *hfcs_revision = "$Revision: 1.7 $";
 
 static void
 hfcs_interrupt(int intno, void *dev_id, struct pt_regs *regs)
index 8495fed83601549e7b959a31bd76b0af7b763503..11d38baf233be8b35300bef2f86102d06787739c 100644 (file)
@@ -1,146 +1,8 @@
-/* $Id: hisax.h,v 2.42 2000/04/09 19:02:44 keil Exp $
-
- *   Basic declarations, defines and prototypes
- *
- * $Log: hisax.h,v $
- * Revision 2.42  2000/04/09 19:02:44  keil
- * retry pump modulation settings if it fails
- *
- * Revision 2.41  2000/02/26 00:35:13  keil
- * Fix skb freeing in interrupt context
- *
- * Revision 2.40  2000/01/20 19:51:46  keil
- * Fix AddTimer message
- * Change CONFIG defines
- *
- * Revision 2.39  1999/11/18 00:00:43  werner
- *
- * Added support for HFC-S+ and HFC-SP cards
- *
- * Revision 2.38  1999/11/14 23:37:03  keil
- * new ISA memory mapped IO
- *
- * Revision 2.37  1999/10/14 20:25:28  keil
- * add a statistic for error monitoring
- *
- * Revision 2.36  1999/10/10 20:16:15  werner
- *
- * Added variable to hfcpci union.
- *
- * Revision 2.35  1999/09/04 06:35:09  keil
- * Winbond W6692 support
- *
- * Revision 2.34  1999/08/25 17:00:04  keil
- * Make ISAR V32bis modem running
- * Make LL->HL interface open for additional commands
- *
- * Revision 2.33  1999/08/05 20:43:16  keil
- * ISAR analog modem support
- *
- * Revision 2.31  1999/07/21 14:46:11  keil
- * changes from EICON certification
- *
- * Revision 2.30  1999/07/14 12:38:38  werner
- * Added changes for echo channel handling
- *
- * Revision 2.29  1999/07/12 21:05:14  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 2.28  1999/07/05 23:51:46  werner
- * Allow limiting of available HiSax B-chans per card. Controlled by hisaxctrl
- * hisaxctrl id 10 <nr. of chans 0-2>
- *
- * Revision 2.27  1999/07/01 08:11:38  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 2.26  1998/11/15 23:54:45  keil
- * changes from 2.0
- *
- * Revision 2.25  1998/09/30 22:28:42  keil
- * More work for ISAR support
- *
- * Revision 2.24  1998/08/20 13:50:39  keil
- * More support for hybrid modem (not working yet)
- *
- * Revision 2.23  1998/08/13 23:36:31  keil
- * HiSax 3.1 - don't work stable with current LinkLevel
+/* $Id: hisax.h,v 2.48 2000/07/04 10:24:32 keil Exp $
  *
- * Revision 2.22  1998/07/15 15:01:28  calle
- * Support for AVM passive PCMCIA cards:
- *    A1 PCMCIA, FRITZ!Card PCMCIA and FRITZ!Card PCMCIA 2.0
- *
- * Revision 2.21  1998/05/25 14:10:05  keil
- * HiSax 3.0
- * X.75 and leased are working again.
- *
- * Revision 2.20  1998/05/25 12:57:57  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 2.19  1998/04/15 16:39:15  keil
- * Add S0Box and Teles PCI support
- *
- * Revision 2.18  1998/03/26 07:10:04  paul
- * The jumpmatrix table in struct Fsm was an array of "int". This is not
- * large enough for pointers to functions on Linux/Alpha (instant crash
- * on "insmod hisax). Now there is a typedef for the pointer to function.
- * This also prevents warnings about "incompatible pointer types".
- *
- * Revision 2.17  1998/03/19 13:18:43  keil
- * Start of a CAPI like interface for supplementary Service
- * first service: SUSPEND
- *
- * Revision 2.16  1998/03/09 23:19:25  keil
- * Changes for PCMCIA
- *
- * Revision 2.14  1998/02/11 17:28:04  keil
- * Niccy PnP/PCI support
- *
- * Revision 2.13  1998/02/09 18:46:02  keil
- * Support for Sedlbauer PCMCIA (Marcus Niemann)
- *
- * Revision 2.12  1998/02/03 23:31:30  keil
- * add AMD7930 support
- *
- * Revision 2.11  1998/02/02 13:33:00  keil
- * New card support
- *
- * Revision 2.10  1997/11/08 21:37:52  keil
- * new l1 init;new Compaq card
- *
- * Revision 2.9  1997/11/06 17:09:09  keil
- * New 2.1 init code
- *
- * Revision 2.8  1997/10/29 19:04:13  keil
- * new L1; changes for 2.1
- *
- * Revision 2.7  1997/10/10 20:56:47  fritz
- * New HL interface.
- *
- * Revision 2.6  1997/09/11 17:25:51  keil
- * Add new cards
- *
- * Revision 2.5  1997/08/03 14:36:31  keil
- * Implement RESTART procedure
- *
- * Revision 2.4  1997/07/31 19:25:20  keil
- * PTP_DATA_LINK support
- *
- * Revision 2.3  1997/07/31 11:50:17  keil
- * ONE TEI and FIXED TEI handling
- *
- * Revision 2.2  1997/07/30 17:13:02  keil
- * more changes for 'One TEI per card'
- *
- * Revision 2.1  1997/07/27 21:45:13  keil
- * new main structures
- *
- * Revision 2.0  1997/06/26 11:06:27  keil
- * New card and L1 interface.
- * Eicon.Diehl Diva and Dynalink IS64PH support
+ *   Basic declarations, defines and prototypes
  *
- * old changes removed KKe
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 #include <linux/config.h>
index 092b232430332a78b93d6188eb71eaca00748f96..6cae36eef8204094a052334c48eb40c8c895ed28 100644 (file)
@@ -1,64 +1,10 @@
-/* $Id: hscx.c,v 1.18 2000/02/26 00:35:13 keil Exp $
-
+/* $Id: hscx.c,v 1.19 2000/06/26 08:59:13 keil Exp $
+ *
  * hscx.c   HSCX specific routines
  *
  * Author       Karsten Keil (keil@isdn4linux.de)
  *
- *
- * $Log: hscx.c,v $
- * Revision 1.18  2000/02/26 00:35:13  keil
- * Fix skb freeing in interrupt context
- *
- * Revision 1.17  1999/07/01 08:11:41  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 1.16  1998/11/15 23:54:48  keil
- * changes from 2.0
- *
- * Revision 1.15  1998/08/20 13:50:42  keil
- * More support for hybrid modem (not working yet)
- *
- * Revision 1.14  1998/08/13 23:36:33  keil
- * HiSax 3.1 - don't work stable with current LinkLevel
- *
- * Revision 1.13  1998/06/26 22:03:28  keil
- * send flags between hdlc frames
- *
- * Revision 1.12  1998/06/09 18:26:01  keil
- * PH_DEACTIVATE B-channel every time signaled to higher layer
- *
- * Revision 1.11  1998/05/25 14:10:07  keil
- * HiSax 3.0
- * X.75 and leased are working again.
- *
- * Revision 1.10  1998/05/25 12:57:59  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 1.9  1998/04/15 16:45:33  keil
- * new init code
- *
- * Revision 1.8  1998/03/19 13:16:24  keil
- * fix the correct release of the hscx
- *
- * Revision 1.7  1998/02/12 23:07:36  keil
- * change for 2.1.86 (removing FREE_READ/FREE_WRITE from [dev]_kfree_skb()
- *
- * Revision 1.6  1998/02/02 13:41:12  keil
- * new init
- *
- * Revision 1.5  1997/11/06 17:09:34  keil
- * New 2.1 init code
- *
- * Revision 1.4  1997/10/29 19:01:06  keil
- * changes for 2.1
- *
- * Revision 1.3  1997/07/27 21:38:34  keil
- * new B-channel interface
- *
- * Revision 1.2  1997/06/26 11:16:17  keil
- * first version
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index 00b566a441935dd2ca9ec0c179daecd4511d74eb..32fc2708d1a97aa4464520eac82929737289d0db 100644 (file)
@@ -1,23 +1,10 @@
-/* $Id: hscx.h,v 1.5 1999/12/23 15:09:32 keil Exp $
-
+/* $Id: hscx.h,v 1.6 2000/06/26 08:59:13 keil Exp $
+ *
  * hscx.h   HSCX specific defines
  *
  * Author       Karsten Keil (keil@isdn4linux.de)
  *
- *
- * $Log: hscx.h,v $
- * Revision 1.5  1999/12/23 15:09:32  keil
- * change email
- *
- * Revision 1.4  1998/04/15 16:45:34  keil
- * new init code
- *
- * Revision 1.3  1997/07/27 21:38:35  keil
- * new B-channel interface
- *
- * Revision 1.2  1997/06/26 11:16:18  keil
- * first version
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index 821f5bc8b4127b1189e88669cd072c34bcc2700f..581cf92138346aa30d896b82d4765b1e4f8222a3 100644 (file)
@@ -1,53 +1,12 @@
-/* $Id: hscx_irq.c,v 1.14 2000/02/26 00:35:13 keil Exp $
-
+/* $Id: hscx_irq.c,v 1.15 2000/06/26 08:59:13 keil Exp $
+ *
  * hscx_irq.c     low level b-channel stuff for Siemens HSCX
  *
  * Author     Karsten Keil (keil@isdn4linux.de)
  *
  * This is an include file for fast inline IRQ stuff
  *
- * $Log: hscx_irq.c,v $
- * Revision 1.14  2000/02/26 00:35:13  keil
- * Fix skb freeing in interrupt context
- *
- * Revision 1.13  1999/10/14 20:25:28  keil
- * add a statistic for error monitoring
- *
- * Revision 1.12  1999/07/01 08:11:42  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 1.11  1998/11/15 23:54:49  keil
- * changes from 2.0
- *
- * Revision 1.10  1998/08/13 23:36:35  keil
- * HiSax 3.1 - don't work stable with current LinkLevel
- *
- * Revision 1.9  1998/06/24 14:44:51  keil
- * Fix recovery of TX IRQ loss
- *
- * Revision 1.8  1998/04/10 10:35:22  paul
- * fixed (silly?) warnings from egcs on Alpha.
- *
- * Revision 1.7  1998/02/12 23:07:37  keil
- * change for 2.1.86 (removing FREE_READ/FREE_WRITE from [dev]_kfree_skb()
- *
- * Revision 1.6  1997/10/29 19:01:07  keil
- * changes for 2.1
- *
- * Revision 1.5  1997/10/01 09:21:35  fritz
- * Removed old compatibility stuff for 2.0.X kernels.
- * From now on, this code is for 2.1.X ONLY!
- * Old stuff is still in the separate branch.
- *
- * Revision 1.4  1997/08/15 17:48:02  keil
- * cosmetic
- *
- * Revision 1.3  1997/07/27 21:38:36  keil
- * new B-channel interface
- *
- * Revision 1.2  1997/06/26 11:16:19  keil
- * first version
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index 34a85dd6b857965b1d4ded7d163333ea2e66a6b2..eff327f9e4fba9b456656c1323fd9947dd6c15f8 100644 (file)
@@ -1,24 +1,10 @@
-/* $Id: ipac.h,v 1.4 1999/12/23 15:09:32 keil Exp $
-
+/* $Id: ipac.h,v 1.5 2000/06/26 08:59:13 keil Exp $
+ *
  * ipac.h   IPAC specific defines
  *
  * Author       Karsten Keil (keil@isdn4linux.de)
  *
- *
- * $Log: ipac.h,v $
- * Revision 1.4  1999/12/23 15:09:32  keil
- * change email
- *
- * Revision 1.3  1998/04/15 16:48:09  keil
- * IPAC_ATX added
- *
- * Revision 1.2  1997/10/29 18:51:21  keil
- * New files
- *
- * Revision 1.1.2.1  1997/10/17 22:10:48  keil
- * new files on 2.0
- *
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index 07c76cf2f3f014116e869992bda3993cc3904760..363408ab0d3fd749c605c1fd9f87962666893e8a 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: isac.c,v 1.25 2000/02/26 00:35:13 keil Exp $
-
+/* $Id: isac.c,v 1.26 2000/06/26 08:59:13 keil Exp $
+ *
  * isac.c   ISAC specific routines
  *
  * Author       Karsten Keil (keil@isdn4linux.de)
@@ -7,85 +7,6 @@
  *             This file is (c) under GNU PUBLIC LICENSE
  *             For changes and modifications please read
  *             ../../../Documentation/isdn/HiSax.cert
- *
- * $Log: isac.c,v $
- * Revision 1.25  2000/02/26 00:35:13  keil
- * Fix skb freeing in interrupt context
- *
- * Revision 1.24  1999/10/14 20:25:28  keil
- * add a statistic for error monitoring
- *
- * Revision 1.23  1999/08/25 16:50:52  keil
- * Fix bugs which cause 2.3.14 hangs (waitqueue init)
- *
- * Revision 1.22  1999/08/09 19:04:40  keil
- * Fix race condition - Thanks to Christer Weinigel
- *
- * Revision 1.21  1999/07/12 21:05:17  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 1.20  1999/07/09 08:23:06  keil
- * Fix ISAC lost TX IRQ handling
- *
- * Revision 1.19  1999/07/01 08:11:43  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 1.18  1998/11/15 23:54:51  keil
- * changes from 2.0
- *
- * Revision 1.17  1998/08/13 23:36:37  keil
- * HiSax 3.1 - don't work stable with current LinkLevel
- *
- * Revision 1.16  1998/05/25 12:58:01  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 1.15  1998/04/15 16:45:32  keil
- * new init code
- *
- * Revision 1.14  1998/04/10 10:35:26  paul
- * fixed (silly?) warnings from egcs on Alpha.
- *
- * Revision 1.13  1998/03/07 22:57:01  tsbogend
- * made HiSax working on Linux/Alpha
- *
- * Revision 1.12  1998/02/12 23:07:40  keil
- * change for 2.1.86 (removing FREE_READ/FREE_WRITE from [dev]_kfree_skb()
- *
- * Revision 1.11  1998/02/09 10:54:49  keil
- * fixes for leased mode
- *
- * Revision 1.10  1998/02/02 13:37:37  keil
- * new init
- *
- * Revision 1.9  1997/11/06 17:09:07  keil
- * New 2.1 init code
- *
- * Revision 1.8  1997/10/29 19:00:03  keil
- * new layer1,changes for 2.1
- *
- * Revision 1.7  1997/10/01 09:21:37  fritz
- * Removed old compatibility stuff for 2.0.X kernels.
- * From now on, this code is for 2.1.X ONLY!
- * Old stuff is still in the separate branch.
- *
- * Revision 1.6  1997/08/15 17:47:08  keil
- * avoid oops because a uninitialised timer
- *
- * Revision 1.5  1997/08/07 17:48:49  keil
- * fix wrong parenthesis
- *
- * Revision 1.4  1997/07/30 17:11:59  keil
- * fixed Timer3
- *
- * Revision 1.3  1997/07/27 21:37:40  keil
- * T3 implemented; supervisor l1timer; B-channel TEST_LOOP
- *
- * Revision 1.2  1997/06/26 11:16:15  keil
- * first version
- *
- *
  */
 
 #define __NO_VERSION__
index a8a46e13508ca6e7bd827c8b48c18a7c19442692..751e8de1d59ebfec394145ac4bedb367aeafa7d4 100644 (file)
@@ -1,27 +1,10 @@
-/* $Id: isac.h,v 1.6 1999/12/23 15:09:32 keil Exp $
-
+/* $Id: isac.h,v 1.7 2000/06/26 08:59:13 keil Exp $
+ *
  * isac.h   ISAC specific defines
  *
  * Author       Karsten Keil (keil@isdn4linux.de)
  *
- *
- * $Log: isac.h,v $
- * Revision 1.6  1999/12/23 15:09:32  keil
- * change email
- *
- * Revision 1.5  1998/05/25 12:58:03  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 1.4  1997/10/29 19:09:34  keil
- * new L1
- *
- * Revision 1.3  1997/07/27 21:37:41  keil
- * T3 implemented; supervisor l1timer; B-channel TEST_LOOP
- *
- * Revision 1.2  1997/06/26 11:16:16  keil
- * first version
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index 3f0a5c5aa7510f632cf0b8c8932f87d7c6ba41e5..6f19d6cb615b6889fa47f2609064cc7bd232ae44 100644 (file)
@@ -1,45 +1,10 @@
-/* $Id: isar.c,v 1.11 2000/04/09 19:02:44 keil Exp $
-
+/* $Id: isar.c,v 1.15 2000/06/26 08:59:13 keil Exp $
+ *
  * isar.c   ISAR (Siemens PSB 7110) specific routines
  *
  * Author       Karsten Keil (keil@isdn4linux.de)
  *
- *
- * $Log: isar.c,v $
- * Revision 1.11  2000/04/09 19:02:44  keil
- * retry pump modulation settings if it fails
- *
- * Revision 1.10  2000/02/26 00:35:13  keil
- * Fix skb freeing in interrupt context
- *
- * Revision 1.9  2000/01/20 19:47:45  keil
- * Add Fax Class 1 support
- *
- * Revision 1.8  1999/12/19 13:00:56  keil
- * Fix races in setting a new mode
- *
- * Revision 1.7  1999/10/14 20:25:29  keil
- * add a statistic for error monitoring
- *
- * Revision 1.6  1999/08/31 11:20:20  paul
- * various spelling corrections (new checksums may be needed, Karsten!)
- *
- * Revision 1.5  1999/08/25 16:59:55  keil
- * Make ISAR V32bis modem running
- * Make LL->HL interface open for additional commands
- *
- * Revision 1.4  1999/08/05 20:43:18  keil
- * ISAR analog modem support
- *
- * Revision 1.3  1999/07/01 08:11:45  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 1.2  1998/11/15 23:54:53  keil
- * changes from 2.0
- *
- * Revision 1.1  1998/08/13 23:33:47  keil
- * First version, only init
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index ec3bff89ea97a801857addae8d85414fd4f9f7f2..7726622cad1992e9d6fd9ecde730828285bbcaeb 100644 (file)
@@ -1,32 +1,10 @@
-/* $Id: isar.h,v 1.7 2000/01/20 19:47:45 keil Exp $
+/* $Id: isar.h,v 1.9 2000/06/26 08:59:13 keil Exp $
+ *
  * isar.h   ISAR (Siemens PSB 7110) specific defines
  *
  * Author Karsten Keil (keil@isdn4linux.de)
  *
- *
- * $Log: isar.h,v $
- * Revision 1.7  2000/01/20 19:47:45  keil
- * Add Fax Class 1 support
- *
- * Revision 1.6  1999/10/14 20:25:29  keil
- * add a statistic for error monitoring
- *
- * Revision 1.5  1999/08/25 16:59:59  keil
- * Make ISAR V32bis modem running
- * Make LL->HL interface open for additional commands
- *
- * Revision 1.4  1999/08/05 20:43:20  keil
- * ISAR analog modem support
- *
- * Revision 1.3  1999/07/01 08:11:46  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 1.2  1998/11/15 23:54:54  keil
- * changes from 2.0
- *
- * Revision 1.1  1998/08/13 23:33:48  keil
- * First version, only init
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
  
index 7715991cbc342df3d48fa6335e57e821c8ac7147..d0e7343572ae0754f037adaffd946c4de4c89ca8 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: isdnl1.c,v 2.37 2000/01/20 19:51:46 keil Exp $
-
+/* $Id: isdnl1.c,v 2.39 2000/06/26 08:59:13 keil Exp $
+ *
  * isdnl1.c     common low level stuff for Siemens Chipsetbased isdn cards
  *              based on the teles driver from Jan den Ouden
  *
  *              Fritz Elfert
  *              Beat Doebeli
  *
- *
- * $Log: isdnl1.c,v $
- * Revision 2.37  2000/01/20 19:51:46  keil
- * Fix AddTimer message
- * Change CONFIG defines
- *
- * Revision 2.36  1999/08/25 16:50:57  keil
- * Fix bugs which cause 2.3.14 hangs (waitqueue init)
- *
- * Revision 2.35  1999/08/22 20:27:07  calle
- * backported changes from kernel 2.3.14:
- * - several #include "config.h" gone, others come.
- * - "struct device" changed to "struct net_device" in 2.3.14, added a
- *   define in isdn_compat.h for older kernel versions.
- *
- * Revision 2.34  1999/07/09 13:50:15  keil
- * remove unused variable
- *
- * Revision 2.33  1999/07/09 13:34:33  keil
- * remove debug code
- *
- * Revision 2.32  1999/07/01 08:11:47  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 2.31  1998/11/15 23:54:56  keil
- * changes from 2.0
- *
- * Revision 2.30  1998/09/30 22:27:00  keil
- * Add init of l1.Flags
- *
- * Revision 2.29  1998/09/27 23:54:43  keil
- * cosmetics
- *
- * Revision 2.28  1998/09/27 12:52:23  keil
- * Fix against segfault, if the driver cannot allocate an IRQ channel
- *
- * Revision 2.27  1998/08/13 23:36:39  keil
- * HiSax 3.1 - don't work stable with current LinkLevel
- *
- * Revision 2.26  1998/07/15 15:01:31  calle
- * Support for AVM passive PCMCIA cards:
- *    A1 PCMCIA, FRITZ!Card PCMCIA and FRITZ!Card PCMCIA 2.0
- *
- * Revision 2.25  1998/05/25 14:10:09  keil
- * HiSax 3.0
- * X.75 and leased are working again.
- *
- * Revision 2.24  1998/05/25 12:58:04  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 2.22  1998/04/15 16:40:13  keil
- * Add S0Box and Teles PCI support
- * Fix cardnr overwrite bug
- *
- * Revision 2.21  1998/04/10 10:35:28  paul
- * fixed (silly?) warnings from egcs on Alpha.
- *
- * Revision 2.20  1998/03/09 23:19:27  keil
- * Changes for PCMCIA
- *
- * Revision 2.18  1998/02/12 23:07:42  keil
- * change for 2.1.86 (removing FREE_READ/FREE_WRITE from [dev]_kfree_skb()
- *
- * Revision 2.17  1998/02/11 17:28:07  keil
- * Niccy PnP/PCI support
- *
- * Revision 2.16  1998/02/09 18:46:08  keil
- * Support for Sedlbauer PCMCIA (Marcus Niemann)
- *
- * Revision 2.15  1998/02/09 10:54:51  keil
- * fixes for leased mode
- *
- * Revision 2.14  1998/02/03 23:31:31  keil
- * add AMD7930 support
- *
- * Revision 2.13  1998/02/02 13:33:02  keil
- * New card support
- *
- * Revision 2.12  1998/01/31 21:41:48  keil
- * changes for newer 2.1 kernels
- *
- * Revision 2.11  1997/11/12 15:01:23  keil
- * COMPAQ_ISA changes
- *
- * Revision 2.10  1997/11/08 21:35:48  keil
- * new l1 init
- *
- * Revision 2.9  1997/11/06 17:09:18  keil
- * New 2.1 init code
- *
- * Revision 2.8  1997/10/29 19:00:05  keil
- * new layer1,changes for 2.1
- *
- * Revision 2.7  1997/10/10 20:56:50  fritz
- * New HL interface.
- *
- * Revision 2.6  1997/09/12 10:05:16  keil
- * ISDN_CTRL_DEBUG define
- *
- * Revision 2.5  1997/09/11 17:24:45  keil
- * Add new cards
- *
- * Revision 2.4  1997/08/15 17:47:09  keil
- * avoid oops because a uninitialised timer
- *
- * Revision 2.3  1997/08/01 11:16:40  keil
- * cosmetics
- *
- * Revision 2.2  1997/07/30 17:11:08  keil
- * L1deactivated exported
- *
- * Revision 2.1  1997/07/27 21:35:38  keil
- * new layer1 interface
- *
- * Revision 2.0  1997/06/26 11:02:53  keil
- * New Layer and card interface
- *
- * Revision 1.15  1997/05/27 15:17:55  fritz
- * Added changes for recent 2.1.x kernels:
- *   changed return type of isdn_close
- *   queue_task_* -> queue_task
- *   clear/set_bit -> test_and_... where apropriate.
- *   changed type of hard_header_cache parameter.
- *
- * old changes removed KKe
- *
  */
 
-const char *l1_revision = "$Revision: 2.37 $";
+const char *l1_revision = "$Revision: 2.39 $";
 
 #define __NO_VERSION__
 #include "hisax.h"
index 01a96b7dd1a3e7d7c1ae0ac0747bb2e49dd48ea7..040a95aa5d36383ee3f3911e663ea4f2504b90c2 100644 (file)
@@ -1,34 +1,8 @@
-/* $Id: isdnl1.h,v 2.8 1998/11/15 23:54:59 keil Exp $
-
- * $Log: isdnl1.h,v $
- * Revision 2.8  1998/11/15 23:54:59  keil
- * changes from 2.0
- *
- * Revision 2.7  1998/09/30 22:21:55  keil
- * cosmetics
- *
- * Revision 2.6  1998/05/25 12:58:06  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 2.5  1998/02/02 13:36:58  keil
- * more debug
- *
- * Revision 2.4  1997/11/08 21:35:49  keil
- * new l1 init
- *
- * Revision 2.3  1997/10/29 19:07:53  keil
- * changes for 2.1
- *
- * Revision 2.2  1997/07/30 17:11:09  keil
- * L1deactivated exported
- *
- * Revision 2.1  1997/07/27 21:43:58  keil
- * new l1 interface
+/* $Id: isdnl1.h,v 2.9 2000/06/26 08:59:13 keil Exp $
  *
- * Revision 2.0  1997/06/26 11:02:55  keil
- * New Layer and card interface
+ * Layer 1 defines
  *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index 6353c88dbed58e749a81f8d40478334938f22c0c..c20d0d21fe0287a0fb912b3e4ff3d665b63788dd 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: isdnl2.c,v 2.22 2000/04/12 20:28:37 keil Exp $
-
+/* $Id: isdnl2.c,v 2.23 2000/06/26 08:59:13 keil Exp $
+ *
  * Author       Karsten Keil (keil@isdn4linux.de)
  *              based on the teles driver from Jan den Ouden
  *
  * Thanks to    Jan den Ouden
  *              Fritz Elfert
  *
- * $Log: isdnl2.c,v $
- * Revision 2.22  2000/04/12 20:28:37  keil
- * a I frame may be contain zero information bytes
- *
- * Revision 2.21  2000/04/12 16:41:01  kai
- * fix max iframe size
- * fix bug in multicasting DL_RELEASE_IND
- *
- * Revision 2.20  1999/08/25 16:52:04  keil
- * Make gcc on AXP happy
- *
- * Revision 2.19  1999/08/05 20:40:26  keil
- * Fix interlayer communication
- *
- * Revision 2.18  1999/07/21 14:46:16  keil
- * changes from EICON certification
- *
- * Revision 2.17  1999/07/01 08:11:50  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 2.16  1998/11/15 23:55:01  keil
- * changes from 2.0
- *
- * Revision 2.15  1998/08/13 23:36:42  keil
- * HiSax 3.1 - don't work stable with current LinkLevel
- *
- * Revision 2.14  1998/06/19 15:19:18  keil
- * fix LAPB tx_cnt for none I-frames
- *
- * Revision 2.13  1998/06/18 23:17:20  keil
- * LAPB bugfix
- *
- * Revision 2.12  1998/05/25 14:10:12  keil
- * HiSax 3.0
- * X.75 and leased are working again.
- *
- * Revision 2.11  1998/05/25 12:58:08  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 2.9  1998/04/10 10:35:30  paul
- * fixed (silly?) warnings from egcs on Alpha.
- *
- * Revision 2.8  1998/03/07 22:57:04  tsbogend
- * made HiSax working on Linux/Alpha
- *
- * Revision 2.7  1998/02/12 23:07:47  keil
- * change for 2.1.86 (removing FREE_READ/FREE_WRITE from [dev]_kfree_skb()
- *
- * Revision 2.6  1998/02/02 13:36:15  keil
- * bugfix X.75 win calculation
- *
- * Revision 2.5  1997/11/06 17:09:22  keil
- * New 2.1 init code
- *
- * Revision 2.4  1997/10/29 19:02:01  keil
- * new LL interface
- *
- * Revision 2.3  1997/10/01 09:21:39  fritz
- * Removed old compatibility stuff for 2.0.X kernels.
- * From now on, this code is for 2.1.X ONLY!
- * Old stuff is still in the separate branch.
- *
- * Revision 2.2  1997/07/31 11:49:05  keil
- * Error handling for no TEI assign
- *
- * Revision 2.1  1997/07/27 21:34:38  keil
- * cosmetics
- *
- * Revision 2.0  1997/06/26 11:07:29  keil
- * New q.921 and X.75 Layer2
- *
- *
- *  Old log removed KKe
- *
  */
 #define __NO_VERSION__
 #include "hisax.h"
 #include "isdnl2.h"
 
-const char *l2_revision = "$Revision: 2.22 $";
+const char *l2_revision = "$Revision: 2.23 $";
 
 static void l2m_debug(struct FsmInst *fi, char *fmt, ...);
 
index ac21d1c4ddb7342322f340c371ffe8fe93482af2..28e753c8c3741144fc62c70e0c9a869bc1e52423 100644 (file)
@@ -1,4 +1,10 @@
-/* isdnl2.h */
+/* $Id: isdnl2.h,v 1.3 2000/06/26 08:59:13 keil Exp $
+ *
+ * Layer 2 defines
+ *
+ * This file is (c) under GNU PUBLIC LICENSE
+ *
+ */
 
 #define RR     0x01
 #define RNR    0x05
index a9500ef869a73a55b000b8527c4134b7acaf01d0..c20706553a3fdf5375c3c72afb7b032b9c41e501 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: isdnl3.c,v 2.11 2000/04/12 16:41:01 kai Exp $
-
+/* $Id: isdnl3.c,v 2.14 2000/06/26 08:59:13 keil Exp $
+ *
  * Author       Karsten Keil (keil@isdn4linux.de)
  *              based on the teles driver from Jan den Ouden
  *
  * Thanks to    Jan den Ouden
  *              Fritz Elfert
  *
- * $Log: isdnl3.c,v $
- * Revision 2.11  2000/04/12 16:41:01  kai
- * fix max iframe size
- * fix bug in multicasting DL_RELEASE_IND
- *
- * Revision 2.10  1999/07/21 14:46:19  keil
- * changes from EICON certification
- *
- * Revision 2.9  1999/07/01 08:11:53  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 2.8  1998/11/15 23:55:04  keil
- * changes from 2.0
- *
- * Revision 2.7  1998/05/25 14:10:15  keil
- * HiSax 3.0
- * X.75 and leased are working again.
- *
- * Revision 2.6  1998/05/25 12:58:11  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 2.5  1998/02/12 23:07:52  keil
- * change for 2.1.86 (removing FREE_READ/FREE_WRITE from [dev]_kfree_skb()
- *
- * Revision 2.4  1997/11/06 17:09:25  keil
- * New 2.1 init code
- *
- * Revision 2.3  1997/10/29 19:07:53  keil
- * changes for 2.1
- *
- * Revision 2.2  1997/10/01 09:21:41  fritz
- * Removed old compatibility stuff for 2.0.X kernels.
- * From now on, this code is for 2.1.X ONLY!
- * Old stuff is still in the separate branch.
- *
- * Revision 2.1  1997/08/03 14:36:32  keil
- * Implement RESTART procedure
- *
- * Revision 2.0  1997/07/27 21:15:42  keil
- * New Callref based layer3
- *
- * Revision 1.11  1997/06/26 11:11:44  keil
- * SET_SKBFREE now on creation of a SKB
- *
- * Revision 1.10  1997/04/06 22:54:16  keil
- * Using SKB's
- *
- * Revision 1.9  1997/03/25 23:11:25  keil
- * US NI-1 protocol
- *
- * Revision 1.8  1997/03/21 18:53:44  keil
- * Report no protocol error to syslog too
- *
- * Remove old logs /KKe
- *
  */
 #define __NO_VERSION__
 #include "hisax.h"
 #include "isdnl3.h"
 #include <linux/config.h>
 
-const char *l3_revision = "$Revision: 2.11 $";
+const char *l3_revision = "$Revision: 2.14 $";
 
 static
 struct Fsm l3fsm =
index c7050f5f13f902e1ef92ce45928bd863db187563..6027e1822efad866ec01d0b817839ef7971c4f95 100644 (file)
@@ -1,38 +1,6 @@
-/* $Id: isdnl3.h,v 2.5 1999/07/25 16:18:32 keil Exp $
-
- * $Log: isdnl3.h,v $
- * Revision 2.5  1999/07/25 16:18:32  keil
- * Fix Suspend/Resume
- *
- * Revision 2.4  1999/07/01 08:11:54  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 2.3  1998/11/15 23:55:06  keil
- * changes from 2.0
- *
- * Revision 2.2  1998/05/25 14:10:17  keil
- * HiSax 3.0
- * X.75 and leased are working again.
- *
- * Revision 2.1  1998/05/25 12:58:13  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 2.0  1997/07/27 21:15:42  keil
- * New Callref based layer3
- *
- * Revision 1.4  1997/06/26 11:20:57  keil
- * ?
- *
- * Revision 1.3  1997/04/06 22:54:17  keil
- * Using SKB's
- *
- * Revision 1.2  1997/01/21 22:31:28  keil
- * new statemachine; L3 timers
- *
- * Revision 1.1  1996/10/13 20:03:47  keil
- * Initial revision
+/* $Id: isdnl3.h,v 2.6 2000/06/26 08:59:13 keil Exp $
  *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index 18a7cfc58b570e254efc73e942eff86942d2228f..bc08dafd8f2fdcf443760ac85476c723c3c2e6f4 100644 (file)
@@ -1,38 +1,10 @@
-/* $Id: isurf.c,v 1.8 1999/12/19 13:09:42 keil Exp $
-
+/* $Id: isurf.c,v 1.9 2000/06/26 08:59:13 keil Exp $
+ *
  * isurf.c  low level stuff for Siemens I-Surf/I-Talk cards
  *
  * Author     Karsten Keil (keil@isdn4linux.de)
  *
- * $Log: isurf.c,v $
- * Revision 1.8  1999/12/19 13:09:42  keil
- * changed TASK_INTERRUPTIBLE into TASK_UNINTERRUPTIBLE for
- * signal proof delays
- *
- * Revision 1.7  1999/11/14 23:37:03  keil
- * new ISA memory mapped IO
- *
- * Revision 1.6  1999/09/04 06:20:06  keil
- * Changes from kernel set_current_state()
- *
- * Revision 1.5  1999/08/25 17:00:02  keil
- * Make ISAR V32bis modem running
- * Make LL->HL interface open for additional commands
- *
- * Revision 1.4  1999/08/22 20:27:09  calle
- * backported changes from kernel 2.3.14:
- * - several #include "config.h" gone, others come.
- * - "struct device" changed to "struct net_device" in 2.3.14, added a
- *   define in isdn_compat.h for older kernel versions.
- *
- * Revision 1.3  1999/07/12 21:05:18  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 1.2  1999/07/01 08:07:56  keil
- * Initial version
- *
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
@@ -44,7 +16,7 @@
 
 extern const char *CardType[];
 
-static const char *ISurf_revision = "$Revision: 1.8 $";
+static const char *ISurf_revision = "$Revision: 1.9 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index cb94d5bb392c3373434634886960c1a33df2ec26..01976b82fc1efe645f215558d05c1ea76906d0ce 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: ix1_micro.c,v 2.8 1999/07/12 21:05:19 keil Exp $
-
+/* $Id: ix1_micro.c,v 2.9 2000/06/26 08:59:13 keil 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
  *
  *              Fritz Elfert
  *              Beat Doebeli
  *
- * $Log: ix1_micro.c,v $
- * Revision 2.8  1999/07/12 21:05:19  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 2.7  1998/04/15 16:44:31  keil
- * new init code
- *
- * Revision 2.6  1998/02/11 17:28:09  keil
- * Niccy PnP/PCI support
- *
- * Revision 2.5  1998/02/02 13:29:42  keil
- * fast io
- *
- * Revision 2.4  1997/11/08 21:35:50  keil
- * new l1 init
- *
- * Revision 2.3  1997/11/06 17:09:35  keil
- * New 2.1 init code
- *
- * Revision 2.2  1997/10/29 18:55:51  keil
- * changes for 2.1.60 (irq2dev_map)
- *
- * Revision 2.1  1997/07/27 21:47:09  keil
- * new interface structures
- *
- * Revision 2.0  1997/06/26 11:02:50  keil
- * New Layer and card interface
- *
- * Revision 1.3  1997/04/13 19:54:02  keil
- * Change in IRQ check delay for SMP
- *
- * Revision 1.2  1997/04/06 22:54:21  keil
- * Using SKB's
- *
- * Revision 1.1  1997/01/27 15:43:10  keil
- * first version
- *
- *
  */
 
 /*
@@ -88,7 +49,7 @@
 #include "isdnl1.h"
 
 extern const char *CardType[];
-const char *ix1_revision = "$Revision: 2.8 $";
+const char *ix1_revision = "$Revision: 2.9 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index c1bf72ca862fb5eb65e5d806830769a944799615..b2586ebda13d7c8e75d167943d229a87493afac1 100644 (file)
@@ -1,16 +1,10 @@
-/* $Id: jade.c,v 1.3 2000/02/26 00:35:13 keil Exp $
+/* $Id: jade.c,v 1.4 2000/06/26 08:59:14 keil Exp $
  *
  * jade.c   JADE stuff (derived from original hscx.c)
  *
  * Author   Roland Klabunde (R.Klabunde@Berkom.de)
  *
- * $Log: jade.c,v $
- * Revision 1.3  2000/02/26 00:35:13  keil
- * Fix skb freeing in interrupt context
- *
- * Revision 1.2  1999/07/01 08:07:57  keil
- * Initial version
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index bcbe6b29181a308a938daad2a72c72db436d506d..b94b968e42bb3d5c5d23b7eee9639a71cba82f22 100644 (file)
@@ -1,13 +1,9 @@
-/* $Id: jade.h,v 1.2 1999/07/01 08:07:58 keil Exp $
+/* $Id: jade.h,v 1.3 2000/06/26 08:59:14 keil Exp $
  * jade.h   JADE specific defines
  *
  * Author   Roland Klabunde (R.Klabunde@Berkom.de)
  *
- *
- * $Log: jade.h,v $
- * Revision 1.2  1999/07/01 08:07:58  keil
- * Initial version
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index 02fef2627ecf58b53a68afafab255b6c93890c8e..beb10d20a41e7cd37539208f90efe91fac6e4423 100644 (file)
@@ -1,16 +1,10 @@
-/* $Id: jade_irq.c,v 1.3 2000/02/26 00:35:13 keil Exp $
+/* $Id: jade_irq.c,v 1.4 2000/06/26 08:59:14 keil Exp $
  *
  * jade_irq.c   Low level JADE IRQ stuff (derived from original hscx_irq.c)
  *
  * Author   Roland Klabunde (R.Klabunde@Berkom.de)
  *
- * $Log: jade_irq.c,v $
- * Revision 1.3  2000/02/26 00:35:13  keil
- * Fix skb freeing in interrupt context
- *
- * Revision 1.2  1999/07/01 08:07:59  keil
- * Initial version
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index e6297bd94d18bb77d25ad962baa7b79e1f28095f..2d01819ae35dd1fbb57a042aeac2ba7d120b4c5e 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: l3_1tr6.c,v 2.10 2000/01/20 19:42:01 keil Exp $
-
+/* $Id: l3_1tr6.c,v 2.11 2000/06/26 08:59:14 keil Exp $
+ *
  *  German 1TR6 D-channel protocol
  *
  * Author       Karsten Keil (keil@isdn4linux.de)
@@ -8,51 +8,6 @@
  *             For changes and modifications please read
  *             ../../../Documentation/isdn/HiSax.cert
  *
- *
- * $Log: l3_1tr6.c,v $
- * Revision 2.10  2000/01/20 19:42:01  keil
- * Fixed uninitialiesed location
- *
- * Revision 2.9  1999/07/01 08:11:55  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 2.8  1998/11/15 23:55:08  keil
- * changes from 2.0
- *
- * Revision 2.7  1998/08/13 23:36:45  keil
- * HiSax 3.1 - don't work stable with current LinkLevel
- *
- * Revision 2.6  1998/05/25 14:10:18  keil
- * HiSax 3.0
- * X.75 and leased are working again.
- *
- * Revision 2.5  1998/05/25 12:58:14  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 2.4  1998/02/12 23:07:57  keil
- * change for 2.1.86 (removing FREE_READ/FREE_WRITE from [dev]_kfree_skb()
- *
- * Revision 2.3  1997/11/06 17:12:24  keil
- * KERN_NOTICE --> KERN_INFO
- *
- * Revision 2.2  1997/10/29 19:03:00  keil
- * changes for 2.1
- *
- * Revision 2.1  1997/08/03 15:28:09  keil
- * release L3 empty processes
- *
- * Revision 2.0  1997/07/27 21:15:45  keil
- * New Callref based layer3
- *
- * Revision 1.12  1997/06/26 11:11:45  keil
- * SET_SKBFREE now on creation of a SKB
- *
- * Revision 1.11  1997/04/06 22:54:18  keil
- * Using SKB's
- *
- * Old Log removed /KKe
- *
  */
 
 #define __NO_VERSION__
@@ -62,7 +17,7 @@
 #include <linux/ctype.h>
 
 extern char *HiSax_getrev(const char *revision);
-const char *l3_1tr6_revision = "$Revision: 2.10 $";
+const char *l3_1tr6_revision = "$Revision: 2.11 $";
 
 #define MsgHead(ptr, cref, mty, dis) \
        *ptr++ = dis; \
index 7c0ba56b291c5d41dae1ee26c9e5bc6f0b01f8ec..f9d46f659e625ca36c761a7b79ef97d15de7642c 100644 (file)
@@ -1,16 +1,8 @@
-/* $Id: l3_1tr6.h,v 2.1 1998/08/13 23:36:48 keil Exp $
+/* $Id: l3_1tr6.h,v 2.2 2000/06/26 08:59:14 keil Exp $
  *
  *  German 1TR6 D-channel protocol defines
  *
- * $Log: l3_1tr6.h,v $
- * Revision 2.1  1998/08/13 23:36:48  keil
- * HiSax 3.1 - don't work stable with current LinkLevel
- *
- * Revision 2.0  1997/07/27 21:15:47  keil
- * New Callref based layer3
- *
- * Revision 1.1  1996/10/13 20:03:48  keil
- * Initial revision
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 #ifndef l3_1tr6
index 5c36458ffaba1fa09492b5c3ef69b18bd5d3bccd..43ce9c9568158da1ae9da7bec08f4b0a7b50bf6c 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: l3dss1.c,v 2.24 2000/03/19 15:26:35 kai Exp $
-
+/* $Id: l3dss1.c,v 2.29 2000/06/26 08:59:14 keil Exp $
+ *
  * EURO/DSS1 D-channel protocol
  *
  * Author       Karsten Keil (keil@isdn4linux.de)
  * Thanks to    Jan den Ouden
  *              Fritz Elfert
  *
- * $Log: l3dss1.c,v $
- * Revision 2.24  2000/03/19 15:26:35  kai
- * changed keypad to use specified bearer, instead of always a-law
- *
- * Revision 2.23  2000/02/26 01:38:14  keil
- * Fixes for V.110 encoding LLC from Jens Jakobsen
- *
- * Revision 2.22  2000/01/20 19:44:20  keil
- * Fixed uninitialiesed location
- * Fixed redirecting number IE in Setup
- * Changes from certification
- * option for disabling use of KEYPAD protocol
- *
- * Revision 2.21  1999/12/19 20:25:17  keil
- * fixed LLC for outgoing analog calls
- * IE Signal is valid on older local switches
- *
- * Revision 2.20  1999/10/11 22:16:27  keil
- * Suspend/Resume is possible without explicit ID too
- *
- * Revision 2.19  1999/08/25 16:55:23  keil
- * Fix for test case TC10011
- *
- * Revision 2.18  1999/08/11 20:54:39  keil
- * High layer compatibility is valid in SETUP
- *
- * Revision 2.17  1999/07/25 16:18:25  keil
- * Fix Suspend/Resume
- *
- * Revision 2.16  1999/07/21 14:46:23  keil
- * changes from EICON certification
- *
- * Revision 2.14  1999/07/09 08:30:08  keil
- * cosmetics
- *
- * Revision 2.13  1999/07/01 08:11:58  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 2.12  1998/11/15 23:55:10  keil
- * changes from 2.0
- *
- * Revision 2.11  1998/08/13 23:36:51  keil
- * HiSax 3.1 - don't work stable with current LinkLevel
- *
- * Revision 2.10  1998/05/25 14:10:20  keil
- * HiSax 3.0
- * X.75 and leased are working again.
- *
- * Revision 2.9  1998/05/25 12:58:17  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 2.8  1998/03/19 13:18:47  keil
- * Start of a CAPI like interface for supplementary Service
- * first service: SUSPEND
- *
- * Revision 2.7  1998/02/12 23:08:01  keil
- * change for 2.1.86 (removing FREE_READ/FREE_WRITE from [dev]_kfree_skb()
- *
- * Revision 2.6  1998/02/03 23:26:35  keil
- * V110 extensions from Thomas Pfeiffer
- *
- * Revision 2.5  1998/02/02 13:34:28  keil
- * Support australian Microlink net and german AOCD
- *
- * Revision 2.4  1997/11/06 17:12:25  keil
- * KERN_NOTICE --> KERN_INFO
- *
- * Revision 2.3  1997/10/29 19:03:01  keil
- * changes for 2.1
- *
- * Revision 2.2  1997/08/07 17:44:36  keil
- * Fix RESTART
- *
- * Revision 2.1  1997/08/03 14:36:33  keil
- * Implement RESTART procedure
- *
- * Revision 2.0  1997/07/27 21:15:43  keil
- * New Callref based layer3
- *
- * Revision 1.17  1997/06/26 11:11:46  keil
- * SET_SKBFREE now on creation of a SKB
- *
- * Revision 1.15  1997/04/17 11:50:48  keil
- * pa->loc was undefined, if it was not send by the exchange
- *
- * Old log removed /KKe
- *
  */
 
 #define __NO_VERSION__
 #include <linux/config.h>
 
 extern char *HiSax_getrev(const char *revision);
-const char *dss1_revision = "$Revision: 2.24 $";
+const char *dss1_revision = "$Revision: 2.29 $";
 
 #define EXT_BEARER_CAPS 1
 
index 2acb95c01631b09f212b0bcbfed33e847375f15b..4913f17bd46ed04755a824bca0f53c1597e6ff70 100644 (file)
@@ -1,39 +1,14 @@
-/* $Id: l3dss1.h,v 1.8 2000/01/20 19:46:15 keil Exp $
+/* $Id: l3dss1.h,v 1.10 2000/06/26 08:59:14 keil Exp $
  *
  *  DSS1 (Euro) D-channel protocol defines
  *
- * $Log: l3dss1.h,v $
- * Revision 1.8  2000/01/20 19:46:15  keil
- * Changes from certification
- *
- * Revision 1.7  1999/07/01 08:12:02  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 1.6  1998/03/19 13:18:50  keil
- * Start of a CAPI like interface for supplementary Service
- * first service: SUSPEND
- *
- * Revision 1.5  1998/02/02 13:34:30  keil
- * Support australian Microlink net and german AOCD
- *
- * Revision 1.4  1997/10/29 19:07:54  keil
- * changes for 2.1
- *
- * Revision 1.3  1997/08/07 17:44:37  keil
- * Fix RESTART
- *
- * Revision 1.2  1997/08/03 14:36:34  keil
- * Implement RESTART procedure
- *
- * Revision 1.1  1997/07/27 21:08:38  keil
- * new
- *
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
 #ifndef l3dss1_process
 
+#define T302   15000
 #define T303   4000
 #define T304   30000
 #define T305   30000
index 6097fe54797c44ad3e2353dc8fe366aee177a014..99afed2e6ba63fc6b66ef09978c356479829fbeb 100644 (file)
@@ -1,30 +1,10 @@
-/* $Id: lmgr.c,v 1.6 1999/07/01 08:12:04 keil Exp $
-
- * Author       Karsten Keil (keil@isdn4linux.de)
+/* $Id: lmgr.c,v 1.7 2000/06/26 08:59:14 keil Exp $
  *
+ * Author       Karsten Keil (keil@isdn4linux.de)
  *
  *  Layermanagement module
  *
- * $Log: lmgr.c,v $
- * Revision 1.6  1999/07/01 08:12:04  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 1.5  1998/11/15 23:55:12  keil
- * changes from 2.0
- *
- * Revision 1.4  1998/05/25 12:58:19  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 1.3  1998/03/07 22:57:06  tsbogend
- * made HiSax working on Linux/Alpha
- *
- * Revision 1.2  1997/10/29 19:09:34  keil
- * new L1
- *
- * Revision 1.1  1997/06/26 11:17:25  keil
- * first version
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index be65f1101ca09adda2addcc7cd08fdd0a76136b1..db5d2ee46020173aa1ace406cd9257e51a29991b 100644 (file)
@@ -1,38 +1,12 @@
-/* $Id: mic.c,v 1.8 1999/07/12 21:05:20 keil Exp $
-
+/* $Id: mic.c,v 1.9 2000/06/26 08:59:14 keil Exp $
+ *
  * mic.c  low level stuff for mic cards
  *
  * Copyright (C) 1997 
  *
  * Author  Stephan von Krawczynski <skraw@ithnet.com>
  *
- *
- * $Log: mic.c,v $
- * Revision 1.8  1999/07/12 21:05:20  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 1.7  1998/04/15 16:44:32  keil
- * new init code
- *
- * Revision 1.6  1998/02/17 15:39:57  keil
- * fix reset problem
- *
- * Revision 1.5  1998/02/02 13:29:43  keil
- * fast io
- *
- * Revision 1.4  1997/11/08 21:35:51  keil
- * new l1 init
- *
- * Revision 1.3  1997/11/06 17:09:11  keil
- * New 2.1 init code
- *
- * Revision 1.2  1997/10/29 18:51:17  keil
- * New files
- *
- * Revision 1.1.2.1  1997/10/17 22:10:54  keil
- * new files on 2.0
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
@@ -44,7 +18,7 @@
 
 extern const char *CardType[];
 
-const char *mic_revision = "$Revision: 1.8 $";
+const char *mic_revision = "$Revision: 1.9 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index a41536f22b60f0d446a4d5d04d33c93ea1eddfc1..fd51217bf9d33181c232dbb705941645e263e2bf 100644 (file)
@@ -1,70 +1,12 @@
-/* $Id: netjet.c,v 1.18 2000/02/26 00:35:13 keil Exp $
-
+/* $Id: netjet.c,v 1.20 2000/06/26 08:59:14 keil Exp $
+ *
  * netjet.c     low level stuff for Traverse Technologie NETJet ISDN cards
  *
  * Author     Karsten Keil (keil@isdn4linux.de)
  *
  * Thanks to Traverse Technologie Australia for documents and informations
  *
- * $Log: netjet.c,v $
- * Revision 1.18  2000/02/26 00:35:13  keil
- * Fix skb freeing in interrupt context
- *
- * Revision 1.17  1999/12/19 13:09:42  keil
- * changed TASK_INTERRUPTIBLE into TASK_UNINTERRUPTIBLE for
- * signal proof delays
- *
- * Revision 1.16  1999/10/14 20:25:29  keil
- * add a statistic for error monitoring
- *
- * Revision 1.15  1999/09/04 06:20:06  keil
- * Changes from kernel set_current_state()
- *
- * Revision 1.14  1999/08/31 11:20:25  paul
- * various spelling corrections (new checksums may be needed, Karsten!)
- *
- * Revision 1.13  1999/08/11 21:01:31  keil
- * new PCI codefix
- *
- * Revision 1.12  1999/08/10 16:02:00  calle
- * struct pci_dev changed in 2.3.13. Made the necessary changes.
- *
- * Revision 1.11  1999/08/07 17:32:00  keil
- * Asymetric buffers for improved ping times.  Interframe spacing
- * fix for NJ<->NJ thoughput.  Matt Henderson - www.traverse.com.au
- *
- *
- * Revision 1.10  1999/07/12 21:05:22  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 1.9  1999/07/01 08:12:05  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 1.8  1998/11/15 23:55:14  keil
- * changes from 2.0
- *
- * Revision 1.7  1998/09/30 22:24:48  keil
- * Fix missing line in setstack*
- *
- * Revision 1.6  1998/08/13 23:36:54  keil
- * HiSax 3.1 - don't work stable with current LinkLevel
- *
- * Revision 1.5  1998/05/25 12:58:21  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 1.4  1998/04/15 16:42:35  keil
- * new init code
- * new PCI init (2.1.94)
- *
- * Revision 1.3  1998/02/12 23:08:05  keil
- * change for 2.1.86 (removing FREE_READ/FREE_WRITE from [dev]_kfree_skb()
- *
- * Revision 1.2  1998/02/02 13:32:06  keil
- * New
- *
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index 6639018bf6c9fcfb3c8f95eddbeabfe8e9640dae..31f01355ec9f1c49e638f339118d73ddf7508684 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: niccy.c,v 1.10 2000/04/11 11:12:39 keil Exp $
-
+/* $Id: niccy.c,v 1.12 2000/06/26 08:59:14 keil Exp $
+ *
  * niccy.c  low level stuff for Dr. Neuhaus NICCY PnP and NICCY PCI and
  *          compatible (SAGEM cybermodem)
  *
@@ -7,34 +7,7 @@
  * 
  * Thanks to Dr. Neuhaus and SAGEM for informations
  *
- * $Log: niccy.c,v $
- * Revision 1.10  2000/04/11 11:12:39  keil
- * cleanup
- *
- * Revision 1.9  2000/04/09 19:09:19  keil
- * Bugfix: reset IRQ enable only valid for PCI version
- *
- * Revision 1.8  1999/08/11 21:01:33  keil
- * new PCI codefix
- *
- * Revision 1.7  1999/08/10 16:02:04  calle
- * struct pci_dev changed in 2.3.13. Made the necessary changes.
- *
- * Revision 1.6  1999/07/12 21:05:23  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 1.5  1999/07/01 08:12:07  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 1.4  1998/04/16 19:16:48  keil
- * need config.h
- *
- * Revision 1.3  1998/04/15 16:42:59  keil
- * new init code
- *
- * Revision 1.2  1998/02/11 17:31:04  keil
- * new file
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
@@ -48,7 +21,7 @@
 #include <linux/pci.h>
 
 extern const char *CardType[];
-const char *niccy_revision = "$Revision: 1.10 $";
+const char *niccy_revision = "$Revision: 1.12 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index aa6776d3bb8d671dc4c3ed9add2cefa166f2f8d1..342e4e8fce928206ac1f04f8190642a87d7b7924 100644 (file)
@@ -1,9 +1,11 @@
-/* $Id: q931.c,v 1.8 2000/03/21 23:53:22 kai Exp $
-
+/* $Id: q931.c,v 1.10 2000/06/26 08:59:14 keil Exp $
+ *
  * q931.c       code to decode ITU Q.931 call control messages
  *
  * Author       Jan den Ouden
  *
+ * This file is (c) under GNU PUBLIC LICENSE
+ *
  * Changelog
  *
  * Pauline Middelink    general improvements
  *
  * Karsten Keil         cause texts, display information element for 1TR6
  *
- *
- * $Log: q931.c,v $
- * Revision 1.8  2000/03/21 23:53:22  kai
- * fix backwards compatibility
- *
- * Revision 1.7  1998/11/15 23:55:17  keil
- * changes from 2.0
- *
- * Revision 1.6  1997/07/27 21:09:44  keil
- * move functions to isdnl3.c
- *
- * Revision 1.5  1997/04/06 22:56:43  keil
- * Some cosmetic changes
- *
- * Revision 1.4  1997/02/09 00:29:11  keil
- * new interface handling, one interface per card
- *
- * Revision 1.3  1997/01/21 22:24:59  keil
- * cleanups
- *
- * Revision 1.2  1996/10/27 22:12:45  keil
- * reporting unknown level 3 protocol ids
- *
- * Revision 1.1  1996/10/13 20:04:56  keil
- * Initial revision
- *
- *
  */
 
 
index 5a8b0591e178f518721fd7d9b3179a0824fc0ff1..1f4dc443628f0fa7bf8ee6f6ffd6ff7c0d7e45bc 100644 (file)
@@ -1,10 +1,11 @@
-/* $Id: rawhdlc.c,v 1.4 1999/12/23 15:09:32 keil Exp $
-
+/* $Id: rawhdlc.c,v 1.5 2000/06/26 08:59:14 keil Exp $
+ *
  * rawhdlc.c     support routines for cards that don't support HDLC
  *
  * Author     Karsten Keil (keil@isdn4linux.de)
  *            Brent Baccala <baccala@FreeSoft.org>
  *
+ * This file is (c) under GNU 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 d946fa0b3d788ad3584ddae76760de7d9d6d97fa..12ca6ab8c2cb201cc80b50ceb44dd8b895799d2e 100644 (file)
@@ -1,9 +1,11 @@
-/* $Id: rawhdlc.h,v 1.2 1998/02/09 10:53:53 keil Exp $
-
+/* $Id: rawhdlc.h,v 1.3 2000/06/26 08:59:14 keil Exp $
+ *
  * rawhdlc.h     support routines for cards that don't support HDLC
  *
  * Author     Brent Baccala <baccala@FreeSoft.org>
  *
+ * This file is (c) under GNU PUBLIC LICENSE
+ *
  */
 
 #ifndef RAWHDLC_H
index 51bc116584160cc5563b262f7be7249bc2aee536..6b102bcec549c97032ccfb397a7821c76496628a 100644 (file)
@@ -1,9 +1,10 @@
-/* $Id: s0box.c,v 2.2 1999/07/12 21:05:25 keil Exp $
-
+/* $Id: s0box.c,v 2.3 2000/06/26 08:59:14 keil Exp $
+ *
  * s0box.c      low level stuff for Creatix S0BOX
  *
  * Author       S0BOX specific stuff: Enrik Berkhan (enrik@starfleet.inka.de)
  *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 #define __NO_VERSION__
@@ -13,7 +14,7 @@
 #include "isdnl1.h"
 
 extern const char *CardType[];
-const char *s0box_revision = "$Revision: 2.2 $";
+const char *s0box_revision = "$Revision: 2.3 $";
 
 static inline void
 writereg(unsigned int padr, signed int addr, u_char off, u_char val) {
index 5d659a0437c47c53b367b2f7ca442dbd1ef3f01f..af2023b8180794739dfb6acca20caad70dbfb139 100644 (file)
@@ -1,27 +1,12 @@
-/* $Id: saphir.c,v 1.5 1999/12/19 13:09:42 keil Exp $
-
+/* $Id: saphir.c,v 1.7 2000/06/26 08:59:14 keil Exp $
+ *
  * saphir.c low level stuff for HST Saphir 1
  *
  * Author     Karsten Keil (keil@isdn4linux.de)
  *
  * Thanks to    HST High Soft Tech GmbH
  *
- *
- * $Log: saphir.c,v $
- * Revision 1.5  1999/12/19 13:09:42  keil
- * changed TASK_INTERRUPTIBLE into TASK_UNINTERRUPTIBLE for
- * signal proof delays
- *
- * Revision 1.4  1999/09/04 06:20:06  keil
- * Changes from kernel set_current_state()
- *
- * Revision 1.3  1999/07/12 21:05:26  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 1.2  1999/07/01 08:07:55  keil
- * Initial version
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
@@ -33,7 +18,7 @@
 #include "isdnl1.h"
 
 extern const char *CardType[];
-static char *saphir_rev = "$Revision: 1.5 $";
+static char *saphir_rev = "$Revision: 1.7 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index fc0b7ff9b3ccbd8e7ed38ae48aaba85458209482..b463b154aec6c601332761b72c69dc9f6fd74647 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: sedlbauer.c,v 1.20 2000/01/20 19:47:45 keil Exp $
-
+/* $Id: sedlbauer.c,v 1.23 2000/06/26 08:59:14 keil 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+,
  *            Sedlbauer AG for informations
  *            Edgar Toernig
  *
- * $Log: sedlbauer.c,v $
- * Revision 1.20  2000/01/20 19:47:45  keil
- * Add Fax Class 1 support
- *
- * Revision 1.19  1999/12/19 13:09:42  keil
- * changed TASK_INTERRUPTIBLE into TASK_UNINTERRUPTIBLE for
- * signal proof delays
- *
- * Revision 1.18  1999/11/13 21:25:03  keil
- * Support for Speedfax+ PCI
- *
- * Revision 1.17  1999/09/04 06:20:06  keil
- * Changes from kernel set_current_state()
- *
- * Revision 1.16  1999/08/29 18:23:01  niemann
- * Fixed typo in errormsg
- *
- * Revision 1.15  1999/08/25 17:00:00  keil
- * Make ISAR V32bis modem running
- * Make LL->HL interface open for additional commands
- *
- * Revision 1.14  1999/08/11 20:59:22  keil
- * new PCI codefix
- * fix IRQ problem while unload
- *
- * Revision 1.13  1999/08/10 16:02:08  calle
- * struct pci_dev changed in 2.3.13. Made the necessary changes.
- *
- * Revision 1.12  1999/08/05 20:43:22  keil
- * ISAR analog modem support
- *
- * Revision 1.11  1999/07/12 21:05:27  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 1.10  1999/07/01 08:12:09  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 1.9  1998/11/15 23:55:20  keil
- * changes from 2.0
- *
- * Revision 1.8  1998/08/13 23:34:51  keil
- * starting speedfax+ (ISAR) support
- *
- * Revision 1.7  1998/04/15 16:44:33  keil
- * new init code
- *
- * Revision 1.6  1998/02/09 18:46:06  keil
- * Support for Sedlbauer PCMCIA (Marcus Niemann)
- *
- * Revision 1.5  1998/02/02 13:29:45  keil
- * fast io
- *
- * Revision 1.4  1997/11/08 21:35:52  keil
- * new l1 init
- *
- * Revision 1.3  1997/11/06 17:09:28  keil
- * New 2.1 init code
- *
- * Revision 1.2  1997/10/29 18:55:52  keil
- * changes for 2.1.60 (irq2dev_map)
- *
- * Revision 1.1  1997/09/11 17:32:04  keil
- * new
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index 03ecedb931f54c43ca5a8e1dbedfc95b00ecb5f1..6b6407796d6b7e6ed69713efe204c3db1007f6a8 100644 (file)
@@ -1,49 +1,12 @@
-/* $Id: sportster.c,v 1.12 1999/12/23 15:09:32 keil Exp $
-
+/* $Id: sportster.c,v 1.13 2000/06/26 08:59:14 keil Exp $
+ *
  * sportster.c     low level stuff for USR Sportster internal TA
  *
  * Author       Karsten Keil (keil@isdn4linux.de)
  *
  * Thanks to Christian "naddy" Weisgerber (3Com, US Robotics) for documentation
  *
- * $Log: sportster.c,v $
- * Revision 1.12  1999/12/23 15:09:32  keil
- * change email
- *
- * Revision 1.11  1999/12/19 13:09:42  keil
- * changed TASK_INTERRUPTIBLE into TASK_UNINTERRUPTIBLE for
- * signal proof delays
- *
- * Revision 1.10  1999/09/04 06:20:06  keil
- * Changes from kernel set_current_state()
- *
- * Revision 1.9  1999/07/12 21:05:29  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 1.8  1999/07/01 08:12:10  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 1.7  1998/11/15 23:55:22  keil
- * changes from 2.0
- *
- * Revision 1.6  1998/04/15 16:44:35  keil
- * new init code
- *
- * Revision 1.5  1998/02/02 13:29:46  keil
- * fast io
- *
- * Revision 1.4  1997/11/08 21:35:52  keil
- * new l1 init
- *
- * Revision 1.3  1997/11/06 17:09:29  keil
- * New 2.1 init code
- *
- * Revision 1.2  1997/10/29 18:51:18  keil
- * New files
- *
- * Revision 1.1.2.1  1997/10/17 22:10:58  keil
- * new files on 2.0
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 #define __NO_VERSION__
@@ -53,7 +16,7 @@
 #include "isdnl1.h"
 
 extern const char *CardType[];
-const char *sportster_revision = "$Revision: 1.12 $";
+const char *sportster_revision = "$Revision: 1.13 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index 8454f1554ac5e0bb2daf7f3fe6a480115aafcf3b..359e9932ee3daf68d7b73e2419e822515ef1047c 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: tei.c,v 2.13 1999/07/21 14:46:28 keil Exp $
-
+/* $Id: tei.c,v 2.15 2000/06/26 08:59:14 keil Exp $
+ *
  * Author       Karsten Keil (keil@isdn4linux.de)
  *              based on the teles driver from Jan den Ouden
  *
  * Thanks to    Jan den Ouden
  *              Fritz Elfert
  *
- * $Log: tei.c,v $
- * Revision 2.13  1999/07/21 14:46:28  keil
- * changes from EICON certification
- *
- * Revision 2.12  1999/07/01 08:12:11  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 2.11  1998/11/15 23:55:24  keil
- * changes from 2.0
- *
- * Revision 2.10  1998/05/25 14:08:10  keil
- * HiSax 3.0
- * fixed X.75 and leased line to work again
- * Point2Point and fixed TEI are runtime options now:
- *    hisaxctrl <id> 7 1  set PTP
- *    hisaxctrl <id> 8 <TEIVALUE *2 >
- *    set fixed TEI to TEIVALUE (0-63)
- *
- * Revision 2.9  1998/05/25 12:58:23  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 2.8  1998/03/07 22:57:07  tsbogend
- * made HiSax working on Linux/Alpha
- *
- * Revision 2.7  1998/02/12 23:08:11  keil
- * change for 2.1.86 (removing FREE_READ/FREE_WRITE from [dev]_kfree_skb()
- *
- * Revision 2.6  1998/02/02 13:41:42  keil
- * fix MDL_ASSIGN for PtP
- *
- * Revision 2.5  1997/11/06 17:09:12  keil
- * New 2.1 init code
- *
- * Revision 2.4  1997/10/29 19:04:46  keil
- * changes for 2.1
- *
- * Revision 2.3  1997/10/01 09:21:43  fritz
- * Removed old compatibility stuff for 2.0.X kernels.
- * From now on, this code is for 2.1.X ONLY!
- * Old stuff is still in the separate branch.
- *
- * Revision 2.2  1997/07/31 19:24:39  keil
- * fixed a warning
- *
- * Revision 2.1  1997/07/31 11:50:16  keil
- * ONE TEI and FIXED TEI handling
- *
- * Revision 2.0  1997/07/27 21:13:30  keil
- * New TEI managment
- *
- * Revision 1.9  1997/06/26 11:18:02  keil
- * New managment
- *
- * Revision 1.8  1997/04/07 22:59:08  keil
- * GFP_KERNEL --> GFP_ATOMIC
- *
- * Revision 1.7  1997/04/06 22:54:03  keil
- * Using SKB's
- *
- * Old log removed/ KKe
- *
  */
 #define __NO_VERSION__
 #include "hisax.h"
 #include "isdnl2.h"
 #include <linux/random.h>
 
-const char *tei_revision = "$Revision: 2.13 $";
+const char *tei_revision = "$Revision: 2.15 $";
 
 #define ID_REQUEST     1
 #define ID_ASSIGNED    2
index bbf59316d6ce49cea42abc28d8b1de2ce9f17127..90e0e2ec5dac05be8b713d095eb516f4fe622d34 100644 (file)
@@ -1,49 +1,10 @@
-/* $Id: teleint.c,v 1.12 1999/12/19 13:09:42 keil Exp $
-
+/* $Id: teleint.c,v 1.13 2000/06/26 08:59:14 keil Exp $
+ *
  * teleint.c     low level stuff for TeleInt isdn cards
  *
  * Author     Karsten Keil (keil@isdn4linux.de)
  *
- *
- * $Log: teleint.c,v $
- * Revision 1.12  1999/12/19 13:09:42  keil
- * changed TASK_INTERRUPTIBLE into TASK_UNINTERRUPTIBLE for
- * signal proof delays
- *
- * Revision 1.11  1999/09/04 06:20:06  keil
- * Changes from kernel set_current_state()
- *
- * Revision 1.10  1999/08/31 11:20:27  paul
- * various spelling corrections (new checksums may be needed, Karsten!)
- *
- * Revision 1.9  1999/07/12 21:05:30  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 1.8  1999/07/01 08:12:12  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 1.7  1998/11/15 23:55:26  keil
- * changes from 2.0
- *
- * Revision 1.6  1998/04/15 16:45:31  keil
- * new init code
- *
- * Revision 1.5  1998/02/02 13:40:47  keil
- * fast io
- *
- * Revision 1.4  1997/11/08 21:35:53  keil
- * new l1 init
- *
- * Revision 1.3  1997/11/06 17:09:30  keil
- * New 2.1 init code
- *
- * Revision 1.2  1997/10/29 18:55:53  keil
- * changes for 2.1.60 (irq2dev_map)
- *
- * Revision 1.1  1997/09/11 17:32:32  keil
- * new
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
@@ -55,7 +16,7 @@
 
 extern const char *CardType[];
 
-const char *TeleInt_revision = "$Revision: 1.12 $";
+const char *TeleInt_revision = "$Revision: 1.13 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index c3a4a05ebbdf813a36bfee1d4ac55c87832773ec..c9c5838a5d7685a6cc8d6101c51247686ff455c7 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: teles0.c,v 2.11 1999/12/23 15:09:32 keil Exp $
-
+/* $Id: teles0.c,v 2.12 2000/06/26 08:59:14 keil Exp $
+ *
  * teles0.c     low level stuff for Teles Memory IO isdn cards
  *              based on the teles driver from Jan den Ouden
  *
@@ -9,51 +9,7 @@
  *              Fritz Elfert
  *              Beat Doebeli
  *
- * $Log: teles0.c,v $
- * Revision 2.11  1999/12/23 15:09:32  keil
- * change email
- *
- * Revision 2.10  1999/11/14 23:37:03  keil
- * new ISA memory mapped IO
- *
- * Revision 2.9  1999/07/12 21:05:31  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 2.8  1998/04/15 16:44:28  keil
- * new init code
- *
- * Revision 2.7  1998/03/07 22:57:08  tsbogend
- * made HiSax working on Linux/Alpha
- *
- * Revision 2.6  1998/02/03 23:27:47  keil
- * IRQ 9
- *
- * Revision 2.5  1998/02/02 13:29:47  keil
- * fast io
- *
- * Revision 2.4  1997/11/08 21:35:54  keil
- * new l1 init
- *
- * Revision 2.3  1997/11/06 17:09:31  keil
- * New 2.1 init code
- *
- * Revision 2.2  1997/10/29 18:55:57  keil
- * changes for 2.1.60 (irq2dev_map)
- *
- * Revision 2.1  1997/07/27 21:47:10  keil
- * new interface structures
- *
- * Revision 2.0  1997/06/26 11:02:43  keil
- * New Layer and card interface
- *
- * Revision 1.8  1997/04/13 19:54:04  keil
- * Change in IRQ check delay for SMP
- *
- * Revision 1.7  1997/04/06 22:54:04  keil
- * Using SKB's
- *
- * removed old log info /KKe
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 #define __NO_VERSION__
@@ -64,7 +20,7 @@
 
 extern const char *CardType[];
 
-const char *teles0_revision = "$Revision: 2.11 $";
+const char *teles0_revision = "$Revision: 2.12 $";
 
 #define TELES_IOMEM_SIZE       0x400
 #define byteout(addr,val) outb(val,addr)
index 171aeb07d72fb96566f736f49b71bd40c75ede8f..3cdbfbeb5565cc7ea6932bfaae33ee75a454a293 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: teles3.c,v 2.15 2000/02/03 16:40:10 keil Exp $
-
+/* $Id: teles3.c,v 2.16 2000/06/26 08:59:15 keil Exp $
+ *
  * teles3.c     low level stuff for Teles 16.3 & PNP isdn cards
  *
  *              based on the teles driver from Jan den Ouden
  *              Fritz Elfert
  *              Beat Doebeli
  *
- * $Log: teles3.c,v $
- * Revision 2.15  2000/02/03 16:40:10  keil
- * Fix teles pcmcia
- *
- * Revision 2.14  1999/12/23 15:09:32  keil
- * change email
- *
- * Revision 2.13  1999/08/30 12:01:28  keil
- * HW version v1.3 support
- *
- * Revision 2.12  1999/07/12 21:05:32  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 2.11  1999/07/01 08:12:14  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 2.10  1999/02/15 14:37:15  cpetig
- * oops, missed something in last commit
- *
- * Revision 2.9  1999/02/15 14:11:02  cpetig
- * fixed a bug with Teles PCMCIA, it doesn't have a config register
- *
- * Revision 2.8  1998/04/15 16:44:30  keil
- * new init code
- *
- * Revision 2.7  1998/02/02 13:29:48  keil
- * fast io
- *
- * Revision 2.6  1997/11/13 16:22:44  keil
- * COMPAQ_ISA reset
- *
- * Revision 2.5  1997/11/12 15:01:25  keil
- * COMPAQ_ISA changes
- *
- * Revision 2.4  1997/11/08 21:35:56  keil
- * new l1 init
- *
- * Revision 2.3  1997/11/06 17:09:33  keil
- * New 2.1 init code
- *
- * Revision 2.2  1997/10/29 18:55:59  keil
- * changes for 2.1.60 (irq2dev_map)
- *
- * Revision 2.1  1997/07/27 21:47:12  keil
- * new interface structures
- *
- * Revision 2.0  1997/06/26 11:02:46  keil
- * New Layer and card interface
- *
- * Revision 1.11  1997/04/13 19:54:05  keil
- * Change in IRQ check delay for SMP
- *
- * Revision 1.10  1997/04/06 22:54:05  keil
- * Using SKB's
- *
- * Revision 1.9  1997/03/22 02:01:07  fritz
- * -Reworked toplevel Makefile. From now on, no different Makefiles
- *  for standalone- and in-kernel-compilation are needed any more.
- * -Added local Rules.make for above reason.
- * -Experimental changes in teles3.c for enhanced IRQ-checking with
- *  2.1.X and SMP kernels.
- * -Removed diffstd-script, same functionality is in stddiff -r.
- * -Enhanced scripts std2kern and stddiff.
- *
- * Revision 1.8  1997/02/23 18:43:55  fritz
- * Added support for Teles-Vision.
- *
- * Revision 1.7  1997/01/28 22:48:33  keil
- * fixes for Teles PCMCIA (Christof Petig)
- *
- * Revision 1.6  1997/01/27 15:52:55  keil
- * SMP proof,cosmetics, PCMCIA added
- *
- * removed old log info /KKe
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 #define __NO_VERSION__
@@ -94,7 +20,7 @@
 #include "isdnl1.h"
 
 extern const char *CardType[];
-const char *teles3_revision = "$Revision: 2.15 $";
+const char *teles3_revision = "$Revision: 2.16 $";
 
 #define byteout(addr,val) outb(val,addr)
 #define bytein(addr) inb(addr)
index 692fbddcfa003837bc7b4bfe174e01c624e13406..856b73fd9f4f0d5ed38e6cbd27320853e8592102 100644 (file)
@@ -1,44 +1,11 @@
-/* $Id: telespci.c,v 2.11 1999/12/23 15:09:32 keil Exp $
-
+/* $Id: telespci.c,v 2.13 2000/06/26 08:59:15 keil Exp $
+ *
  * telespci.c     low level stuff for Teles PCI isdn cards
  *
  * Author       Ton van Rosmalen 
  *              Karsten Keil (keil@isdn4linux.de)
  *
- *
- * $Log: telespci.c,v $
- * Revision 2.11  1999/12/23 15:09:32  keil
- * change email
- *
- * Revision 2.10  1999/11/15 14:20:05  keil
- * 64Bit compatibility
- *
- * Revision 2.9  1999/08/11 21:01:34  keil
- * new PCI codefix
- *
- * Revision 2.8  1999/08/10 16:02:10  calle
- * struct pci_dev changed in 2.3.13. Made the necessary changes.
- *
- * Revision 2.7  1999/07/12 21:05:34  keil
- * fix race in IRQ handling
- * added watchdog for lost IRQs
- *
- * Revision 2.6  1999/07/01 08:12:15  keil
- * Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
- *
- * Revision 2.5  1998/11/15 23:55:28  keil
- * changes from 2.0
- *
- * Revision 2.4  1998/10/05 09:38:08  keil
- * Fix register addressing
- *
- * Revision 2.3  1998/05/25 12:58:26  keil
- * HiSax golden code from certification, Don't use !!!
- * No leased lines, no X75, but many changes.
- *
- * Revision 2.1  1998/04/15 16:38:23  keil
- * Add S0Box and Teles PCI support
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 #define __NO_VERSION__
@@ -50,7 +17,7 @@
 #include <linux/pci.h>
 
 extern const char *CardType[];
-const char *telespci_revision = "$Revision: 2.11 $";
+const char *telespci_revision = "$Revision: 2.13 $";
 
 #define ZORAN_PO_RQ_PEN        0x02000000
 #define ZORAN_PO_WR    0x00800000
index 46fe29f757d4961b55e37fff0ecdf2f87cc86f7e..cea2f61df3f5492705741050bc522c57e04d0c97 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: w6692.c,v 1.4 2000/03/16 23:24:11 werner Exp $
-
+/* $Id: w6692.c,v 1.7 2000/06/26 08:59:15 keil Exp $
+ *
  * w6692.c   Winbond W6692 specific routines
  *
  * Author       Petr Novak <petr.novak@i.cz>
@@ -7,23 +7,6 @@
  *
  *              This file is (c) under GNU PUBLIC LICENSE
  *
- * $Log: w6692.c,v $
- * Revision 1.4  2000/03/16 23:24:11  werner
- *
- * Fixed an additional location
- *
- * Revision 1.3  2000/03/16 22:41:36  werner
- *
- * Tried to fix second B-channel problem (still not tested)
- *
- * Revision 1.2  2000/02/26 00:35:13  keil
- * Fix skb freeing in interrupt context
- *
- * Revision 1.1  1999/09/04 06:28:58  keil
- * first revision
- *
- *
- *
  */
 
 #include <linux/config.h>
index 4990b008263a34a13f8e696baf84f104a5eca1d0..5c28d3bac0fa2aa2363057a8ec1ebd4c5d4b2edd 100644 (file)
@@ -1,18 +1,10 @@
-/* $Id: w6692.h,v 1.1 1999/09/04 06:28:58 keil Exp $
-
+/* $Id: w6692.h,v 1.2 2000/06/26 08:59:15 keil Exp $
+ *
  * w6692.h   Winbond W6692 specific defines
  *
  * Author       Petr Novak <petr.novak@i.cz>
  *
- *
- * $Log: w6692.h,v $
- * Revision 1.1  1999/09/04 06:28:58  keil
- * first revision
- *
- *
- * Revision 1.0  1999/08/28 21:58:00 pnovak
- * first version
- *
+ * This file is (c) under GNU PUBLIC LICENSE
  *
  */
 
index 9bc7a08b04ea82dbb4274a85b031bca8a97d18f7..e8850ee95107e87b383dc12de8179a25a7cd623d 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: isdn_audio.c,v 1.17 1999/08/17 11:10:52 paul Exp $
+/* $Id: isdn_audio.c,v 1.21 2000/06/20 18:01:55 keil Exp $
 
  * Linux ISDN subsystem, audio conversion and compression (linklevel).
  *
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: isdn_audio.c,v $
- * Revision 1.17  1999/08/17 11:10:52  paul
- * don't try to use x86 assembler on non-x86!
- *
- * Revision 1.16  1999/08/06 12:47:35  calle
- * Using __GNUC__ == 2 && __GNUC_MINOR__ < 95 how to define
- *   ISDN_AUDIO_OPTIMIZE_ON_X386_WITH_ASM_IF_GCC_ALLOW_IT
- *
- * Revision 1.15  1999/08/06 12:02:52  calle
- * egcs 2.95 complain about invalid asm statement:
- *    "fixed or forbidden register 2 (cx) was spilled for class CREG."
- * Using ISDN_AUDIO_OPTIMIZE_ON_X386_WITH_ASM_IF_GCC_ALLOW_IT and not
- * define it at the moment.
- *
- * Revision 1.14  1999/07/11 17:14:06  armin
- * Added new layer 2 and 3 protocols for Fax and DSP functions.
- * Moved "Add CPN to RING message" to new register S23,
- * "Display message" is now correct on register S13 bit 7.
- * New audio command AT+VDD implemented (deactivate DTMF decoder and
- * activate possible existing hardware/DSP decoder).
- * Moved some tty defines to .h file.
- * Made whitespace possible in AT command line.
- * Some AT-emulator output bugfixes.
- * First Fax G3 implementations.
- *
- * Revision 1.13  1999/04/12 12:33:09  fritz
- * Changes from 2.0 tree.
- *
- * Revision 1.12  1998/07/26 18:48:43  armin
- * Added silence detection in voice receive mode.
- *
- * Revision 1.11  1998/04/10 10:35:10  paul
- * fixed (silly?) warnings from egcs on Alpha.
- *
- * Revision 1.10  1998/02/20 17:09:40  fritz
- * Changes for recent kernels.
- *
- * Revision 1.9  1997/10/01 09:20:25  fritz
- * Removed old compatibility stuff for 2.0.X kernels.
- * From now on, this code is for 2.1.X ONLY!
- * Old stuff is still in the separate branch.
- *
- * Revision 1.8  1997/03/02 14:29:16  fritz
- * More ttyI related cleanup.
- *
- * Revision 1.7  1997/02/03 22:44:11  fritz
- * Reformatted according CodingStyle
- *
- * Revision 1.6  1996/06/06 14:43:31  fritz
- * Changed to support DTMF decoding on audio playback also.
- *
- * Revision 1.5  1996/06/05 02:24:08  fritz
- * Added DTMF decoder for audio mode.
- *
- * Revision 1.4  1996/05/17 03:48:01  fritz
- * Removed some test statements.
- * Added revision string.
- *
- * Revision 1.3  1996/05/10 08:48:11  fritz
- * Corrected adpcm bugs.
- *
- * Revision 1.2  1996/04/30 09:31:17  fritz
- * General rewrite.
- *
- * Revision 1.1.1.1  1996/04/28 12:25:40  fritz
- * Taken under CVS control
- *
  */
 
 #define __NO_VERSION__
@@ -95,7 +28,7 @@
 #include "isdn_audio.h"
 #include "isdn_common.h"
 
-char *isdn_audio_revision = "$Revision: 1.17 $";
+char *isdn_audio_revision = "$Revision: 1.21 $";
 
 /*
  * Misc. lookup-tables.
@@ -250,9 +183,9 @@ static char isdn_audio_ulaw_to_alaw[] =
 };
 
 #define NCOEFF           16     /* number of frequencies to be analyzed       */
-#define DTMF_TRESH    50000     /* above this is dtmf                         */
-#define SILENCE_TRESH   100     /* below this is silence                      */
-#define H2_TRESH      10000     /* 2nd harmonic                               */
+#define DTMF_TRESH    25000     /* above this is dtmf                         */
+#define SILENCE_TRESH   200     /* below this is silence                      */
+#define H2_TRESH      20000     /* 2nd harmonic                               */
 #define AMP_BITS          9     /* bits per sample, reduced to avoid overflow */
 #define LOGRP             0
 #define HIGRP             1
@@ -293,7 +226,7 @@ static char dtmf_matrix[4][4] =
 };
 
 static inline void
-isdn_audio_tlookup(const void *table, void *buff, unsigned long n)
+isdn_audio_tlookup(const u_char *table, u_char *buff, unsigned long n)
 {
 #ifdef __i386__
        unsigned long d0, d1, d2, d3;
@@ -307,10 +240,8 @@ isdn_audio_tlookup(const void *table, void *buff, unsigned long n)
        :       "0"((long) table), "1"(n), "2"((long) buff), "3"((long) buff)
        :       "memory", "ax");
 #else
-       unsigned char* b = (unsigned char*) buff;
-       unsigned char* t = (unsigned char*) table;
        while (n--)
-               *b++ = t[*b];
+               *buff++ = table[*(unsigned char *)buff];
 #endif
 }
 
index 54dcb253e414708c2e1a8fc67a5f466e947eebf6..09c1651b1b13436c6d367e8d9ecc9528f3ada536 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: isdn_audio.h,v 1.8 1999/07/11 17:14:07 armin Exp $
+/* $Id: isdn_audio.h,v 1.9 2000/05/11 22:29:20 kai Exp $
 
  * Linux ISDN subsystem, audio conversion and compression (linklevel).
  *
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: isdn_audio.h,v $
- * Revision 1.8  1999/07/11 17:14:07  armin
- * Added new layer 2 and 3 protocols for Fax and DSP functions.
- * Moved "Add CPN to RING message" to new register S23,
- * "Display message" is now correct on register S13 bit 7.
- * New audio command AT+VDD implemented (deactivate DTMF decoder and
- * activate possible existing hardware/DSP decoder).
- * Moved some tty defines to .h file.
- * Made whitespace possible in AT command line.
- * Some AT-emulator output bugfixes.
- * First Fax G3 implementations.
- *
- * Revision 1.7  1999/04/12 12:33:11  fritz
- * Changes from 2.0 tree.
- *
- * Revision 1.6  1998/07/26 18:48:44  armin
- * Added silence detection in voice receive mode.
- *
- * Revision 1.5  1997/02/03 22:45:21  fritz
- * Reformatted according CodingStyle
- *
- * Revision 1.4  1996/06/06 14:43:32  fritz
- * Changed to support DTMF decoding on audio playback also.
- *
- * Revision 1.3  1996/06/05 02:24:09  fritz
- * Added DTMF decoder for audio mode.
- *
- * Revision 1.2  1996/05/10 08:48:32  fritz
- * Corrected adpcm bugs.
- *
- * Revision 1.1  1996/04/30 09:29:06  fritz
- * Taken under CVS control.
- *
  */
 
 #define DTMF_NPOINTS 205        /* Number of samples for DTMF recognition */
index a17cd1f792eb4829e60d962e274f123abaeba152..63da260965f3244940e483a881bb4187dcc4996d 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: isdn_cards.c,v 1.10 1999/07/20 06:41:28 calle Exp $
+/* $Id: isdn_cards.c,v 1.11 2000/05/11 22:29:20 kai Exp $
 
  * Linux ISDN subsystem, initialization for non-modularized drivers.
  *
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: isdn_cards.c,v $
- * Revision 1.10  1999/07/20 06:41:28  calle
- * Bugfix: After the redesign of the AVM B1 driver, the driver didn't even
- *         compile, if not selected as modules.
- *
- * Revision 1.9  1999/04/12 12:33:11  fritz
- * Changes from 2.0 tree.
- *
- * Revision 1.8  1999/03/29 11:13:23  armin
- * Added eicon driver init.
- *
- * Revision 1.7  1998/02/20 17:24:28  fritz
- * Added ACT2000 init.
- *
- * Revision 1.6  1997/04/23 18:56:03  fritz
- * Old Teles driver removed, Changed doc and scripts accordingly.
- *
- * Revision 1.5  1997/03/30 17:10:36  calle
- * added support for AVM-B1-PCI card.
- *
- * Revision 1.4  1997/03/04 21:59:44  calle
- * Added AVM-B1-CAPI2.0 driver
- *
- * Revision 1.3  1997/02/03 23:31:14  fritz
- * Reformatted according CodingStyle
- *
- * Revision 1.2  1996/10/13 19:52:17  keil
- * HiSax support
- *
- * Revision 1.1  1996/04/20 16:04:36  fritz
- * Initial revision
- *
  */
 
 #include <linux/config.h>
@@ -76,9 +44,6 @@ extern void capi_init(void);
 extern void capidrv_init(void);
 #endif
 
-extern int act2000_init(void);
-
-
 void
 isdn_cards_init(void)
 {
index 78173e7470d25258f3f610a20aabd1bdcf41ac17..6122ac8c4447e08c7f839b0187151d53d21e8e97 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: isdn_cards.h,v 1.3 1999/04/12 12:33:13 fritz Exp $
+/* $Id: isdn_cards.h,v 1.4 2000/05/11 22:29:20 kai Exp $
 
  * Linux ISDN subsystem, initialization for non-modularized drivers.
  *
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: isdn_cards.h,v $
- * Revision 1.3  1999/04/12 12:33:13  fritz
- * Changes from 2.0 tree.
- *
- * Revision 1.2  1997/02/03 23:31:55  fritz
- * Reformatted according CodingStyle
- *
- * Revision 1.1  1996/04/20 16:04:03  fritz
- * Initial revision
- *
  */
 
 extern void isdn_cards_init(void);
index b543d869035e7626027f1f34b6b671ed4f05845a..9204a878abb8f3aa3f8985f94417a53a0a6beb99 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: isdn_common.c,v 1.101 2000/04/07 14:50:34 calle Exp $
+/* $Id: isdn_common.c,v 1.108 2000/06/24 15:52:47 keil Exp $
 
  * Linux ISDN subsystem, common used functions (linklevel).
  *
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: isdn_common.c,v $
- * Revision 1.101  2000/04/07 14:50:34  calle
- * Bugfix: on my system 2.3.99-pre3 Dual PII 350, unload of module isdn.o
- *         hangs if vfree is called with interrupt disabled. After moving
- *     restore_flags in front of vfree it doesn't hang.
- *
- * Revision 1.100  2000/03/03 16:37:11  kai
- * incorporated some cosmetic changes from the official kernel tree back
- * into CVS
- *
- * Revision 1.99  2000/02/26 01:00:52  keil
- * changes from 2.3.47
- *
- * Revision 1.98  2000/02/16 14:56:27  paul
- * translated ISDN_MODEM_ANZREG to ISDN_MODEM_NUMREG for english speakers
- *
- * Revision 1.97  2000/01/23 18:45:37  keil
- * Change EAZ mapping to forbit the use of cards (insert a "-" for the MSN)
- *
- * Revision 1.96  2000/01/20 19:55:33  keil
- * Add FAX Class 1 support
- *
- * Revision 1.95  2000/01/09 20:43:13  detabc
- * exand logical bind-group's for both call's (in and out).
- * add first part of kernel-config-help for abc-extension.
- *
- * Revision 1.94  1999/11/20 22:14:13  detabc
- * added channel dial-skip in case of external use
- * (isdn phone or another isdn device) on the same NTBA.
- * usefull with two or more card's connected the different NTBA's.
- * global switchable in kernel-config and also per netinterface.
- *
- * add auto disable of netinterface's in case of:
- *     to many connection's in short time.
- *     config mistakes (wrong encapsulation, B2-protokoll or so on) on local
- *     or remote side.
- *     wrong password's or something else to a ISP (syncppp).
- *
- * possible encapsulations for this future are:
- * ISDN_NET_ENCAP_SYNCPPP, ISDN_NET_ENCAP_UIHDLC, ISDN_NET_ENCAP_RAWIP,
- * and ISDN_NET_ENCAP_CISCOHDLCK.
- *
- * Revision 1.93  1999/11/04 13:11:36  keil
- * Reinit of v110 structs
- *
- * Revision 1.92  1999/10/31 15:59:50  he
- * more skb headroom checks
- *
- * Revision 1.91  1999/10/28 22:48:45  armin
- * Bugfix: isdn_free_channel() now frees the channel,
- * even when the usage of the ttyI has changed.
- *
- * Revision 1.90  1999/10/27 21:21:17  detabc
- * Added support for building logically-bind-group's per interface.
- * usefull for outgoing call's with more then one isdn-card.
- *
- * Switchable support to dont reset the hangup-timeout for
- * receive frames. Most part's of the timru-rules for receiving frames
- * are now obsolete. If the input- or forwarding-firewall deny
- * the frame, the line will be not hold open.
- *
- * Revision 1.89  1999/10/16 14:46:47  keil
- * replace kmalloc with vmalloc for the big dev struct
- *
- * Revision 1.88  1999/10/02 00:39:26  he
- * Fixed a 2.3.x wait queue initialization (was causing panics)
- *
- * Revision 1.87  1999/09/12 16:19:39  detabc
- * added abc features
- * low cost routing for net-interfaces (only the HL side).
- * need more implementation in the isdnlog-utility
- * udp info support (first part).
- * different EAZ on outgoing call's.
- * more checks on D-Channel callbacks (double use of channels).
- * tested and running with kernel 2.3.17
- *
- * Revision 1.86  1999/07/31 12:59:42  armin
- * Added tty fax capabilities.
- *
- * Revision 1.85  1999/07/29 16:58:35  armin
- * Bugfix: DLE handling in isdn_readbchan()
- *
- * Revision 1.84  1999/07/25 16:21:10  keil
- * fix number matching
- *
- * Revision 1.83  1999/07/13 21:02:05  werner
- * Added limit possibilty of driver b_channel resources (ISDN_STAT_DISCH)
- *
- * Revision 1.82  1999/07/12 21:06:50  werner
- * Fixed problem when loading more than one driver temporary
- *
- * Revision 1.81  1999/07/11 17:14:09  armin
- * Added new layer 2 and 3 protocols for Fax and DSP functions.
- * Moved "Add CPN to RING message" to new register S23,
- * "Display message" is now correct on register S13 bit 7.
- * New audio command AT+VDD implemented (deactivate DTMF decoder and
- * activate possible existing hardware/DSP decoder).
- * Moved some tty defines to .h file.
- * Made whitespace possible in AT command line.
- * Some AT-emulator output bugfixes.
- * First Fax G3 implementations.
- *
- * Revision 1.80  1999/07/07 10:14:00  detabc
- * remove unused messages
- *
- * Revision 1.79  1999/07/05 23:51:30  werner
- * Allow limiting of available HiSax B-chans per card. Controlled by hisaxctrl
- * hisaxctrl id 10 <nr. of chans 0-2>
- *
- * Revision 1.78  1999/07/05 20:21:15  werner
- * changes to use diversion sources for all kernel versions.
- * removed static device, only proc filesystem used
- *
- * Revision 1.77  1999/07/01 08:29:50  keil
- * compatibility to 2.3 kernel
- *
- * Revision 1.76  1999/06/29 16:16:44  calle
- * Let ISDN_CMD_UNLOAD work with open isdn devices without crash again.
- * Also right unlocking (ISDN_CMD_UNLOCK) is done now.
- * isdnlog should check returncode of read(2) calls.
- *
- * Revision 1.75  1999/04/18 14:06:47  fritz
- * Removed TIMRU stuff.
- *
- * Revision 1.74  1999/04/12 13:16:45  fritz
- * Changes from 2.0 tree.
- *
- * Revision 1.73  1999/04/12 12:33:15  fritz
- * Changes from 2.0 tree.
- *
- * Revision 1.72  1999/03/02 12:04:44  armin
- * -added ISDN_STAT_ADDCH to increase supported channels after
- *  register_isdn().
- * -ttyI now goes on-hook on ATZ when B-Ch is connected.
- * -added timer-function for register S7 (Wait for Carrier).
- * -analog modem (ISDN_PROTO_L2_MODEM) implementations.
- * -on L2_MODEM a string will be appended to the CONNECT-Message,
- *  which is provided by the HL-Driver in parm.num in ISDN_STAT_BCONN.
- * -variable "dialing" used for ATA also, for interrupting call
- *  establishment and register S7.
- *
- * Revision 1.71  1999/01/28 09:10:43  armin
- * Fixed bad while-loop in isdn_readbch().
- *
- * Revision 1.70  1999/01/15 19:58:54  he
- * removed compatibiltity macro
- *
- * Revision 1.69  1998/09/07 21:59:58  he
- * flush method for 2.1.118 and above
- * updated IIOCTLNETGPN
- *
- * Revision 1.68  1998/08/31 21:09:45  he
- * new ioctl IIOCNETGPN for /dev/isdninfo (get network interface'
- *     peer phone number)
- *
- * Revision 1.67  1998/06/26 15:12:21  fritz
- * Added handling of STAT_ICALL with incomplete CPN.
- * Added AT&L for ttyI emulator.
- * Added more locking stuff in tty_write.
- *
- * Revision 1.66  1998/06/17 19:50:41  he
- * merged with 2.1.10[34] (cosmetics and udelay() -> mdelay())
- * brute force fix to avoid Ugh's in isdn_tty_write()
- * cleaned up some dead code
- *
- *
- * Revision 1.62  1998/04/14 16:28:43  he
- * Fixed user space access with interrupts off and remaining
- * copy_{to,from}_user() -> -EFAULT return codes
- *
- * Revision 1.61  1998/03/22 18:50:46  hipp
- * Added BSD Compression for syncPPP .. UNTESTED at the moment
- *
- * Revision 1.60  1998/03/19 13:18:18  keil
- * Start of a CAPI like interface for supplementary Service
- * first service: SUSPEND
- *
- * Revision 1.59  1998/03/09 17:46:23  he
- * merged in 2.1.89 changes
- *
- * Revision 1.58  1998/03/07 22:35:24  fritz
- * Starting generic module support (Nothing usable yet).
- *
- * Revision 1.57  1998/03/07 18:21:01  cal
- * Dynamic Timeout-Rule-Handling vs. 971110 included
- *
- * Revision 1.56  1998/02/25 17:49:38  he
- * Changed return codes caused be failing copy_{to,from}_user to -EFAULT
- *
- * Revision 1.55  1998/02/23 23:35:32  fritz
- * Eliminated some compiler warnings.
- *
- * Revision 1.54  1998/02/22 19:44:19  fritz
- * Bugfixes and improvements regarding V.110, V.110 now running.
- *
- * Revision 1.53  1998/02/20 17:18:05  fritz
- * Changes for recent kernels.
- * Added common stub for sending commands to lowlevel.
- * Added V.110.
- *
- * Revision 1.52  1998/01/31 22:05:57  keil
- * Lots of changes for X.25 support:
- * Added generic support for connection-controlling encapsulation protocols
- * Added support of BHUP status message
- * Added support for additional p_encap X25IFACE
- * Added support for kernels >= 2.1.72
- *
- * Revision 1.51  1998/01/31 19:17:29  calle
- * merged changes from and for 2.1.82
- *
- * Revision 1.50  1997/12/12 06:12:11  calle
- * moved EXPORT_SYMBOL(register_isdn) from isdn_syms.c to isdn_common.c
- *
- * Revision 1.49  1997/11/06 17:16:52  keil
- * Sync to 2.1.62 changes
- *
- * Revision 1.48  1997/11/02 23:55:50  keil
- * Andi Kleen's changes for 2.1.60
- * without it the isdninfo and isdnctrl devices won't work
- *
- * Revision 1.47  1997/10/09 21:28:46  fritz
- * New HL<->LL interface:
- *   New BSENT callback with nr. of bytes included.
- *   Sending without ACK.
- *   New L1 error status (not yet in use).
- *   Cleaned up obsolete structures.
- * Implemented Cisco-SLARP.
- * Changed local net-interface data to be dynamically allocated.
- * Removed old 2.0 compatibility stuff.
- *
- * Revision 1.46  1997/10/01 09:20:27  fritz
- * Removed old compatibility stuff for 2.0.X kernels.
- * From now on, this code is for 2.1.X ONLY!
- * Old stuff is still in the separate branch.
- *
- * Revision 1.45  1997/08/21 23:11:41  fritz
- * Added changes for kernels >= 2.1.45
- *
- * Revision 1.44  1997/05/27 15:17:23  fritz
- * Added changes for recent 2.1.x kernels:
- *   changed return type of isdn_close
- *   queue_task_* -> queue_task
- *   clear/set_bit -> test_and_... where apropriate.
- *   changed type of hard_header_cache parameter.
- *
- * Revision 1.43  1997/03/31 14:09:43  fritz
- * Fixed memory leak in isdn_close().
- *
- * Revision 1.42  1997/03/30 16:51:08  calle
- * changed calls to copy_from_user/copy_to_user and removed verify_area
- * were possible.
- *
- * Revision 1.41  1997/03/24 22:54:41  fritz
- * Some small fixes in debug code.
- *
- * Revision 1.40  1997/03/08 08:13:51  fritz
- * Bugfix: IIOCSETMAP (Set mapping) was broken.
- *
- * Revision 1.39  1997/03/07 01:32:54  fritz
- * Added proper ifdef's for CONFIG_ISDN_AUDIO
- *
- * Revision 1.38  1997/03/05 21:15:02  fritz
- * Fix: reduced stack usage of isdn_ioctl() and isdn_set_allcfg()
- *
- * Revision 1.37  1997/03/02 14:29:18  fritz
- * More ttyI related cleanup.
- *
- * Revision 1.36  1997/02/28 02:32:40  fritz
- * Cleanup: Moved some tty related stuff from isdn_common.c
- *          to isdn_tty.c
- * Bugfix:  Bisync protocol did not behave like documented.
- *
- * Revision 1.35  1997/02/21 13:01:19  fritz
- * Changes CAUSE message output in kernel log.
- *
- * Revision 1.34  1997/02/10 20:12:43  fritz
- * Changed interface for reporting incoming calls.
- *
- * Revision 1.33  1997/02/10 10:05:42  fritz
- * More changes for Kernel 2.1.X
- * Symbol information moved to isdn_syms.c
- *
- * Revision 1.32  1997/02/03 22:55:26  fritz
- * Reformatted according CodingStyle.
- * Changed isdn_writebuf_stub static.
- * Slow down tty-RING counter.
- * skb->free stuff replaced by macro.
- * Bugfix in audio-skb locking.
- * Bugfix in HL-driver locking.
- *
- * Revision 1.31  1997/01/17 01:19:18  fritz
- * Applied chargeint patch.
- *
- * Revision 1.30  1997/01/14 01:27:47  fritz
- * Changed audio receive not to rely on skb->users and skb->lock.
- * Added ATI2 and related variables.
- * Started adding full-duplex audio capability.
- *
- * Revision 1.29  1997/01/12 23:33:03  fritz
- * Made isdn_all_eaz foolproof.
- *
- * Revision 1.28  1996/11/13 02:33:19  fritz
- * Fixed a race condition.
- *
- * Revision 1.27  1996/10/27 22:02:41  keil
- * return codes for ISDN_STAT_ICALL
- *
- * Revision 1.26  1996/10/23 11:59:40  fritz
- * More compatibility changes.
- *
- * Revision 1.25  1996/10/22 23:13:54  fritz
- * Changes for compatibility to 2.0.X and 2.1.X kernels.
- *
- * Revision 1.24  1996/10/11 14:02:03  fritz
- * Bugfix: call to isdn_ppp_timer_timeout() never compiled, because of
- *         typo in #ifdef.
- *
- * Revision 1.23  1996/06/25 18:35:38  fritz
- * Fixed bogus memory access in isdn_set_allcfg().
- *
- * Revision 1.22  1996/06/24 17:37:37  fritz
- * Bugfix: isdn_timer_ctrl() did restart timer, even if it
- *         was already running.
- *         lowlevel driver locking did use wrong parameters.
- *
- * Revision 1.21  1996/06/15 14:58:20  fritz
- * Added version signatures for data structures used
- * by userlevel programs.
- *
- * Revision 1.20  1996/06/12 16:01:49  fritz
- * Bugfix: Remote B-channel hangup sometimes did not result
- *         in a NO CARRIER on tty.
- *
- * Revision 1.19  1996/06/11 14:52:04  hipp
- * minor bugfix in isdn_writebuf_skb_stub()
- *
- * Revision 1.18  1996/06/06 14:51:51  fritz
- * Changed to support DTMF decoding on audio playback also.
- *
- * Revision 1.17  1996/06/05 02:24:10  fritz
- * Added DTMF decoder for audio mode.
- *
- * Revision 1.16  1996/06/03 20:09:05  fritz
- * Bugfix: called wrong function pointer for locking in
- *         isdn_get_free_channel().
- *
- * Revision 1.15  1996/05/31 01:10:54  fritz
- * Bugfixes:
- *   Lowlevel modules did not get locked correctly.
- *   Did show wrong revision when initializing.
- *   Minor fixes in ioctl code.
- *   sk_buff did not get freed, if error in writebuf_stub.
- *
- * Revision 1.14  1996/05/18 01:36:55  fritz
- * Added spelling corrections and some minor changes
- * to stay in sync with kernel.
- *
- * Revision 1.13  1996/05/17 15:43:30  fritz
- * Bugfix: decrement of rcvcount in readbchan() corrected.
- *
- * Revision 1.12  1996/05/17 03:55:43  fritz
- * Changed DLE handling for audio receive.
- * Some cleanup.
- * Added display of isdn_audio_revision.
- *
- * Revision 1.11  1996/05/11 21:51:32  fritz
- * Changed queue management to use sk_buffs.
- *
- * Revision 1.10  1996/05/10 08:49:16  fritz
- * Checkin before major changes of tty-code.
- *
- * Revision 1.9  1996/05/07 09:19:41  fritz
- * Adapted to changes in isdn_tty.c
- *
- * Revision 1.8  1996/05/06 11:34:51  hipp
- * fixed a few bugs
- *
- * Revision 1.7  1996/05/02 03:55:17  fritz
- * Bugfixes:
- *  - B-channel connect message for modem devices
- *    sometimes did not result in a CONNECT-message.
- *  - register_isdn did not check for driverId-conflicts.
- *
- * Revision 1.6  1996/04/30 20:57:21  fritz
- * Commit test
- *
- * Revision 1.5  1996/04/20 16:19:07  fritz
- * Changed slow timer handlers to increase accuracy.
- * Added statistic information for usage by xisdnload.
- * Fixed behaviour of isdnctrl-device on non-blocked io.
- * Fixed all io to go through generic writebuf-function without
- * bypassing. Same for incoming data.
- * Fixed bug: Last channel had been unusable.
- * Fixed kfree of tty xmit_buf on ppp initialization failure.
- *
- * Revision 1.4  1996/02/11 02:33:26  fritz
- * Fixed bug in main timer-dispatcher.
- * Bugfix: Lot of tty-callbacks got called regardless of the events already
- * been handled by network-devices.
- * Changed ioctl-names.
- *
- * Revision 1.3  1996/01/22 05:16:11  fritz
- * Changed ioctl-names.
- * Fixed bugs in isdn_open and isdn_close regarding PPP_MINOR.
- *
- * Revision 1.2  1996/01/21 16:52:40  fritz
- * Support for sk_buffs added, changed header-stuffing.
- *
- * Revision 1.1  1996/01/09 04:12:52  fritz
- * Initial revision
- *
  */
 
 #include <linux/config.h>
index c45dd5202b364e96d007e05bba7d3dd9ce76d774..bf4c4cedc914a985fcb4d1862b4abf18f300ec62 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: isdn_common.h,v 1.18 2000/01/23 18:45:37 keil Exp $
+/* $Id: isdn_common.h,v 1.20 2000/06/16 13:00:27 keil Exp $
 
  * header for Linux ISDN subsystem, common used functions and debugging-switches (linklevel).
  *
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: isdn_common.h,v $
- * Revision 1.18  2000/01/23 18:45:37  keil
- * Change EAZ mapping to forbit the use of cards (insert a "-" for the MSN)
- *
- * Revision 1.17  1999/10/27 21:21:17  detabc
- * Added support for building logically-bind-group's per interface.
- * usefull for outgoing call's with more then one isdn-card.
- *
- * Switchable support to dont reset the hangup-timeout for
- * receive frames. Most part's of the timru-rules for receiving frames
- * are now obsolete. If the input- or forwarding-firewall deny
- * the frame, the line will be not hold open.
- *
- * Revision 1.16  1999/07/01 08:29:54  keil
- * compatibility to 2.3 kernel
- *
- * Revision 1.15  1999/04/18 14:06:50  fritz
- * Removed TIMRU stuff.
- *
- * Revision 1.14  1999/04/12 12:33:18  fritz
- * Changes from 2.0 tree.
- *
- * Revision 1.13  1999/03/02 12:04:47  armin
- * -added ISDN_STAT_ADDCH to increase supported channels after
- *  register_isdn().
- * -ttyI now goes on-hook on ATZ when B-Ch is connected.
- * -added timer-function for register S7 (Wait for Carrier).
- * -analog modem (ISDN_PROTO_L2_MODEM) implementations.
- * -on L2_MODEM a string will be appended to the CONNECT-Message,
- *  which is provided by the HL-Driver in parm.num in ISDN_STAT_BCONN.
- * -variable "dialing" used for ATA also, for interrupting call
- *  establishment and register S7.
- *
- * Revision 1.12  1998/06/26 15:12:27  fritz
- * Added handling of STAT_ICALL with incomplete CPN.
- * Added AT&L for ttyI emulator.
- * Added more locking stuff in tty_write.
- *
- * Revision 1.11  1998/04/14 16:28:47  he
- * Fixed user space access with interrupts off and remaining
- * copy_{to,from}_user() -> -EFAULT return codes
- *
- * Revision 1.10  1998/03/07 18:21:03  cal
- * Dynamic Timeout-Rule-Handling vs. 971110 included
- *
- * Revision 1.9  1998/02/20 17:19:01  fritz
- * Added common stub for sending commands to lowlevel.
- *
- * Revision 1.8  1997/10/09 21:28:49  fritz
- * New HL<->LL interface:
- *   New BSENT callback with nr. of bytes included.
- *   Sending without ACK.
- *   New L1 error status (not yet in use).
- *   Cleaned up obsolete structures.
- * Implemented Cisco-SLARP.
- * Changed local net-interface data to be dynamically allocated.
- * Removed old 2.0 compatibility stuff.
- *
- * Revision 1.7  1997/10/01 09:20:30  fritz
- * Removed old compatibility stuff for 2.0.X kernels.
- * From now on, this code is for 2.1.X ONLY!
- * Old stuff is still in the separate branch.
- *
- * Revision 1.6  1997/02/28 02:32:44  fritz
- * Cleanup: Moved some tty related stuff from isdn_common.c
- *          to isdn_tty.c
- * Bugfix:  Bisync protocol did not behave like documented.
- *
- * Revision 1.5  1997/02/10 10:05:45  fritz
- * More changes for Kernel 2.1.X
- * Symbol information moved to isdn_syms.c
- *
- * Revision 1.4  1997/02/03 22:56:50  fritz
- * Removed isdn_writebuf_stub prototype.
- *
- * Revision 1.3  1996/05/19 00:13:05  fritz
- * Removed debug flag.
- *
- * Revision 1.2  1996/04/20 16:20:40  fritz
- * Misc. typos.
- *
- * Revision 1.1  1996/01/10 21:37:19  fritz
- * Initial revision
- *
  */
 
 #undef  ISDN_DEBUG_MODEM_OPEN
index 07722dbb1df1762f8116a2243d4ddfd5378d296b..73d18629fd50a9f9e0f3de86050e37447d6d8376 100644 (file)
@@ -1,35 +1,26 @@
-/* $Id: isdn_concap.c,v 1.7 2000/03/21 23:53:22 kai Exp $
+/* $Id: isdn_concap.c,v 1.8 2000/05/11 22:29:20 kai Exp $
  
- * Stuff to support the concap_proto by isdn4linux. isdn4linux - specific
- * stuff goes here. Stuff that depends only on the concap protocol goes to
- * another -- protocol specific -- source file.
- *
- * $Log: isdn_concap.c,v $
- * Revision 1.7  2000/03/21 23:53:22  kai
- * fix backwards compatibility
- *
- * Revision 1.6  1999/08/22 20:26:01  calle
- * backported changes from kernel 2.3.14:
- * - several #include "config.h" gone, others come.
- * - "struct device" changed to "struct net_device" in 2.3.14, added a
- *   define in isdn_compat.h for older kernel versions.
- *
- * Revision 1.5  1998/10/30 18:44:48  he
- * pass return value from isdn_net_dial_req for dialmode change
+ * Linux ISDN subsystem, protocol encapsulation
  *
- * Revision 1.4  1998/10/30 17:55:24  he
- * dialmode for x25iface and multulink ppp
+ * 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.
  *
- * Revision 1.3  1998/05/26 22:39:22  he
- * sync'ed with 2.1.102 where appropriate (CAPABILITY changes)
- * concap typo
- * cleared dev.tbusy in isdn_net BCONN status callback
+ * 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.
  *
- * Revision 1.2  1998/01/31 22:49:21  keil
- * correct comments
+ * 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.
  *
- * Revision 1.1  1998/01/31 22:27:57  keil
- * New files from Henner Eisen for X.25 support
+ */
+
+/* Stuff to support the concap_proto by isdn4linux. isdn4linux - specific
+ * stuff goes here. Stuff that depends only on the concap protocol goes to
+ * another -- protocol specific -- source file.
  *
  */
 
index 722f8ee33324dc6565ccf2000c8cf4f1e5724100..507b05e4226f6b71ad371248613015fe1bea02e8 100644 (file)
@@ -1,5 +1,23 @@
-/* $Id: isdn_concap.h,v 1.2 1998/01/31 22:49:21 keil Exp $
+/* $Id: isdn_concap.h,v 1.3 2000/05/11 22:29:20 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.
+ *
  */
+
 extern struct concap_device_ops isdn_concap_reliable_dl_dops;
 extern struct concap_device_ops isdn_concap_demand_dial_dops;
 extern struct concap_proto * isdn_concap_new( int );
index 07279cd7bcc457306294cc4c1639b3b5a94a2f77..2ad00bee58ee159d0a23dead2c1f3bb5105fc81c 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: isdn_net.c,v 1.125 2000/04/05 21:25:55 detabc Exp $
+/* $Id: isdn_net.c,v 1.134 2000/06/21 09:54:29 keil Exp $
 
  * Linux ISDN subsystem, network interfaces and related functions (linklevel).
  *
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: isdn_net.c,v $
- * Revision 1.125  2000/04/05 21:25:55  detabc
- * add leased-line support to abc-stuff
- *
- * Revision 1.124  2000/04/03 21:07:22  detabc
- * change write_super handling for abc-stuff
- *
- * Revision 1.123  2000/04/03 19:14:36  kai
- * fix "isdn BUG at isdn_net.c:1440!"
- *
- * Revision 1.122  2000/03/20 22:37:46  detabc
- * modify abc-extension to work together with the new LL.
- * remove abc frame-counter (is obsolete now).
- * use the new lp->super_tx_queue for internal queueing (bsd-rawip-compress).
- * modify isdn_net_xmit() and isdn_net_write_super().
- * -- Kai, please have a look to this two function's. Thank's.
- *
- * Revision 1.121  2000/03/19 15:27:53  kai
- * no known bugs left...
- *
- * Revision 1.120  2000/03/18 16:20:25  kai
- * cosmetics / renaming
- *
- * Revision 1.118  2000/03/17 18:20:46  kai
- * moved to frame_cnt based flow control
- * some races still need to be fixed
- *
- * Revision 1.117  2000/03/17 17:01:00  kai
- * cleanup
- *
- * Revision 1.116  2000/03/17 16:22:55  kai
- * we keep track of outstanding packets (given to HL, but not confirmed yet)
- * now, but we don't use it for flow control yet.
- *
- * Revision 1.115  2000/03/17 12:49:42  kai
- * calling statcallb with ISDN_STAT_BSENT in hard-IRQ context is now
- * officially allowed. writebuf_skb() will never be called in hard-IRQ context
- * anymore.
- *
- * Revision 1.114  2000/03/16 16:37:41  kai
- * Allow phone numbers starting with "*" as outgoing numbers for
- * networking interface. Some PBX's need this to allow dialing internal
- * numbers (mine, for example ;-)
- *
- * Revision 1.113  2000/03/16 15:46:37  kai
- * a little bugfix and cosmetic changes
- *
- * Revision 1.112  2000/03/04 16:20:42  detabc
- * copy frames before rewriting frame's saddr
- *
- * Revision 1.111  2000/02/28 22:28:24  he
- * moved tx_timeout warning messages in old (2.2.x) branch where it really only
- * indicates problems.
- *
- * Revision 1.110  2000/02/26 01:00:53  keil
- * changes from 2.3.47
- *
- * Revision 1.109  2000/02/25 11:29:17  paul
- * changed chargetime to ulong from int (after about 20 days the "chargetime of
- * ipppX is now 1234" message displays a negative number on alpha).
- *
- * Revision 1.108  2000/02/15 12:54:01  kai
- * set TX timeout back to 2 secs for 2.2.x, just to be safe
- *
- * Revision 1.107  2000/02/13 09:52:05  kai
- * increased TX_TIMEOUT to 20sec
- *
- * Revision 1.106  2000/02/12 19:26:55  kai
- * adopted to latest 2.3 softnet changes.
- *
- * tested with PPP and MPPP, it works here.
- * can somebody check raw-ip?
- *
- * also changed std2kern, stddiff for bash-1 compatibility,
- * hope this doesn't break anything.
- *
- * Revision 1.105  2000/02/12 11:43:26  he
- * SOFTNET related changes, first try. Compatible with linux 2.2.x, but
- * not tested for kernels with softnet (>= 2.3.43) yet.
- *
- * Revision 1.104  2000/02/06 21:49:59  detabc
- * add rewriting of socket's and frame's saddr for udp-ipv4 dynip-connections.
- * Include checksum-recompute of ip- and udp-header's.
- *
- * Revision 1.103  2000/01/23 18:45:37  keil
- * Change EAZ mapping to forbit the use of cards (insert a "-" for the MSN)
- *
- * Revision 1.102  2000/01/09 20:43:14  detabc
- * exand logical bind-group's for both call's (in and out).
- * add first part of kernel-config-help for abc-extension.
- *
- * Revision 1.101  1999/12/05 16:06:08  detabc
- * add resethandling for rawip-compression.
- * at now all B2-Protocols are usable with rawip-compression
- *
- * Revision 1.100  1999/12/04 15:05:25  detabc
- * bugfix abc-rawip-bsdcompress with channel-bundeling
- *
- * Revision 1.99  1999/11/30 11:29:06  detabc
- * add a on the fly frame-counter and limit
- *
- * Revision 1.98  1999/11/28 14:49:07  detabc
- * In case of rawip-compress adjust dev[x]->ibytes/obytes to reflect the
- * uncompressed size.
- *
- * Revision 1.97  1999/11/26 15:54:59  detabc
- * added compression (isdn_bsdcompress) for rawip interfaces with x75i B2-protocol.
- *
- * Revision 1.96  1999/11/20 22:14:13  detabc
- * added channel dial-skip in case of external use
- * (isdn phone or another isdn device) on the same NTBA.
- * usefull with two or more card's connected the different NTBA's.
- * global switchable in kernel-config and also per netinterface.
- *
- * add auto disable of netinterface's in case of:
- *     to many connection's in short time.
- *     config mistakes (wrong encapsulation, B2-protokoll or so on) on local
- *     or remote side.
- *     wrong password's or something else to a ISP (syncppp).
- *
- * possible encapsulations for this future are:
- * ISDN_NET_ENCAP_SYNCPPP, ISDN_NET_ENCAP_UIHDLC, ISDN_NET_ENCAP_RAWIP,
- * and ISDN_NET_ENCAP_CISCOHDLCK.
- *
- * Revision 1.95  1999/10/27 21:21:17  detabc
- * Added support for building logically-bind-group's per interface.
- * usefull for outgoing call's with more then one isdn-card.
- *
- * Switchable support to dont reset the hangup-timeout for
- * receive frames. Most part's of the timru-rules for receiving frames
- * are now obsolete. If the input- or forwarding-firewall deny
- * the frame, the line will be not hold open.
- *
- * Revision 1.94  1999/10/02 11:07:02  he
- * Changed tbusy logic in indn_net.c
- *
- * Revision 1.93  1999/09/23 22:22:41  detabc
- * added tcp-keepalive-detect with local response (ipv4 only)
- * added host-only-interface support
- * (source ipaddr == interface ipaddr) (ipv4 only)
- * ok with kernel 2.3.18 and 2.2.12
- *
- * Revision 1.92  1999/09/13 23:25:17  he
- * serialized xmitting frames from isdn_ppp and BSENT statcallb
- *
- * Revision 1.91  1999/09/12 16:19:39  detabc
- * added abc features
- * low cost routing for net-interfaces (only the HL side).
- * need more implementation in the isdnlog-utility
- * udp info support (first part).
- * different EAZ on outgoing call's.
- * more checks on D-Channel callbacks (double use of channels).
- * tested and running with kernel 2.3.17
- *
- * Revision 1.90  1999/09/04 22:21:39  detabc
- *
- * Revision 1.89  1999/08/22 20:26:03  calle
- * backported changes from kernel 2.3.14:
- * - several #include "config.h" gone, others come.
- * - "struct device" changed to "struct net_device" in 2.3.14, added a
- *   define in isdn_compat.h for older kernel versions.
- *
- * Revision 1.88  1999/07/07 10:13:31  detabc
- * remove unused messages
- *
- * Revision 1.87  1999/07/06 07:53:53  calle
- * calls to dev_alloc_skb waste 16 bytes of memory, if we calculate the
- * right header space for the lowlevel driver. using alloc_skb instead.
- *
- * Revision 1.86  1999/06/09 10:12:05  paul
- * thinko in previous patch
- *
- * Revision 1.85  1999/06/07 19:42:39  paul
- * isdn_net_getpeer() fixed to return correct `outgoing' flag
- *
- * Revision 1.84  1999/04/18 14:06:55  fritz
- * Removed TIMRU stuff.
- *
- * Revision 1.83  1999/04/12 12:33:23  fritz
- * Changes from 2.0 tree.
- *
- * Revision 1.82  1999/01/17 00:55:58  he
- * added mark_bh in BCONN statcallb and cleaned up some dead code
- *
- * Revision 1.81  1999/01/15 16:36:52  he
- * replaced icmp_send() by dst_link_failure()
- *
- * Revision 1.80  1998/12/01 13:06:22  paul
- * Also huptimeout with dialmode == manual
- *
- * Revision 1.79  1998/10/30 17:55:27  he
- * dialmode for x25iface and multulink ppp
- *
- * Revision 1.78  1998/10/26 18:20:46  he
- * re-inserted p=p->next in isdn_net_find_icall() (fixes kernel lock up
- * on incoming call not matching the first interface)
- *
- * Revision 1.77  1998/10/23 10:18:44  paul
- * Implementation of "dialmode" (successor of "status")
- * You also need current isdnctrl for this!
- *
- * Revision 1.76  1998/09/07 22:00:05  he
- * flush method for 2.1.118 and above
- * updated IIOCTLNETGPN
- *
- * Revision 1.75  1998/08/31 21:09:50  he
- * new ioctl IIOCNETGPN for /dev/isdninfo (get network interface'
- *     peer phone number)
- *
- * Revision 1.74  1998/07/30 11:28:32  paul
- * printk message only appeared when status is off and interface is rawIP,
- * which is confusing for people who don't know about "isdnctrl status <if> on".
- *
- * Revision 1.73  1998/06/26 22:01:37  keil
- * tx_queue_len = 5 was too small
- *
- * Revision 1.72  1998/06/26 15:12:31  fritz
- * Added handling of STAT_ICALL with incomplete CPN.
- * Added AT&L for ttyI emulator.
- * Added more locking stuff in tty_write.
- *
- * Revision 1.71  1998/06/18 22:43:08  fritz
- * Bugfix: Setting ndev->do_ioctl had beed accidetly removed at cleanup.
- *
- * Revision 1.70  1998/06/17 19:50:49  he
- * merged with 2.1.10[34] (cosmetics and udelay() -> mdelay())
- * brute force fix to avoid Ugh's in isdn_tty_write()
- * cleaned up some dead code
- *
- * Revision 1.69  1998/06/09 12:27:37  cal
- * Changed default of local netdev flags: ISDN_NET_STOPPED is default now,
- * so autodial is suppressed for that device until it is switched on using
- * 'isdnctrl status dev-name on'.
- *
- *
- *
- * Revision 1.66  1998/05/26 22:39:24  he
- * sync'ed with 2.1.102 where appropriate (CAPABILITY changes)
- * concap typo
- * cleared dev.tbusy in isdn_net BCONN status callback
- *
- * Revision 1.61  1998/04/16 19:19:42  keil
- * Fix from vger (tx max qlength)
- *
- * Revision 1.60  1998/04/14 16:28:49  he
- * Fixed user space access with interrupts off and remaining
- * copy_{to,from}_user() -> -EFAULT return codes
- *
- * Revision 1.59  1998/03/07 22:37:33  fritz
- * Bugfix: restore_flags missing.
- *
- * Revision 1.58  1998/03/07 18:21:05  cal
- * Dynamic Timeout-Rule-Handling vs. 971110 included
- *
- * Revision 1.57  1998/02/25 18:31:13  fritz
- * Added debugging output in adjust_header.
- *
- * Revision 1.56  1998/02/25 17:49:42  he
- * Changed return codes caused be failing copy_{to,from}_user to -EFAULT
- *
- * Revision 1.55  1998/02/23 19:38:22  fritz
- * Corrected check for modified feature-flags.
- *
- * Revision 1.54  1998/02/20 17:15:07  fritz
- * Changes for recent kernels.
- * Ugly workaround for adjusting Ethernet frames with recent kernels.
- * replaced direct calls to lowlevel-driver command by common hook.
- *
- * Revision 1.53  1998/01/31 22:05:54  keil
- * Lots of changes for X.25 support:
- * Added generic support for connection-controlling encapsulation protocols
- * Added support of BHUP status message
- * Added support for additional p_encap X25IFACE
- * Added support for kernels >= 2.1.72
- *
- * Revision 1.52  1998/01/31 19:29:51  calle
- * Merged changes from and for 2.1.82, not tested only compiled ...
- *
- * Revision 1.51  1997/10/09 21:28:50  fritz
- * New HL<->LL interface:
- *   New BSENT callback with nr. of bytes included.
- *   Sending without ACK.
- *   New L1 error status (not yet in use).
- *   Cleaned up obsolete structures.
- * Implemented Cisco-SLARP.
- * Changed local net-interface data to be dynamically allocated.
- * Removed old 2.0 compatibility stuff.
- *
- * Revision 1.50  1997/10/01 09:20:32  fritz
- * Removed old compatibility stuff for 2.0.X kernels.
- * From now on, this code is for 2.1.X ONLY!
- * Old stuff is still in the separate branch.
- *
- * Revision 1.49  1997/08/21 14:38:13  fritz
- * Bugfix: Did not compile without SyncPPP.
- *
- * Revision 1.48  1997/06/22 11:57:15  fritz
- * Added ability to adjust slave triggerlevel.
- *
- * Revision 1.47  1997/06/21 10:52:05  fritz
- * Removed wrong SET_SKB_FREE in isdn_net_send_skb()
- *
- * Revision 1.46  1997/06/17 13:05:24  hipp
- * Applied Eric's underflow-patches (slightly modified)
- *
- * Revision 1.45  1997/06/10 16:24:22  hipp
- * hard_header changes for syncPPP (now behaves like RAWIP)
- *
- * Revision 1.44  1997/05/27 15:17:26  fritz
- * Added changes for recent 2.1.x kernels:
- *   changed return type of isdn_close
- *   queue_task_* -> queue_task
- *   clear/set_bit -> test_and_... where apropriate.
- *   changed type of hard_header_cache parameter.
- *
- * Revision 1.43  1997/03/30 16:51:13  calle
- * changed calls to copy_from_user/copy_to_user and removed verify_area
- * were possible.
- *
- * Revision 1.42  1997/03/11 08:43:51  fritz
- * Perform a hangup if number is deleted while dialing.
- *
- * Revision 1.41  1997/03/08 08:16:31  fritz
- * Bugfix: Deleting a phone number during dial gave unpredictable results.
- *
- * Revision 1.40  1997/03/05 21:16:08  fritz
- * Fix: did not compile with 2.1.27
- *
- * Revision 1.39  1997/03/04 21:36:52  fritz
- * Added sending ICMP messages when no connetion is possible.
- *
- * Revision 1.38  1997/02/23 23:41:14  fritz
- * Bugfix: Slave interfaces have to be hung up before master.
- *
- * Revision 1.37  1997/02/11 18:32:51  fritz
- * Bugfix in isdn_ppp_free_mpqueue().
- *
- * Revision 1.36  1997/02/10 21:31:11  fritz
- * Changed setup-interface (incoming and outgoing).
- *
- * Revision 1.35  1997/02/10 20:12:45  fritz
- * Changed interface for reporting incoming calls.
- *
- * Revision 1.34  1997/02/03 23:15:07  fritz
- * Reformatted according CodingStyle.
- * replaced arp_find prototype by proper include.
- * made dev_purge_queues static.
- * Bugfix in bogocps calculation.
- * removed isdn_net_receive_callback - was never used ;-)
- * Misc. fixes for Kernel 2.1.X comaptibility.
- *
- * Revision 1.33  1997/01/17 01:19:25  fritz
- * Applied chargeint patch.
- *
- * Revision 1.32  1997/01/14 01:29:31  fritz
- * Bugfix: isdn_net_hangup() did not reset ISDN_NET_CONNECTED.
- *
- * Revision 1.31  1997/01/11 23:30:42  fritz
- * Speed up dial statemachine.
- *
- * Revision 1.30  1996/11/25 17:20:50  hipp
- * fixed pppbind bug in isdn_net_find_icall()
- *
- * Revision 1.29  1996/11/13 02:31:38  fritz
- * Minor cleanup.
- *
- * Revision 1.28  1996/10/27 20:49:06  keil
- * bugfix to compile without MPP
- *
- * Revision 1.27  1996/10/25 18:46:01  fritz
- * Another bugfix in isdn_net_autohup()
- *
- * Revision 1.26  1996/10/23 23:05:36  fritz
- * Bugfix: Divide by zero in isdn_net_autohup()
- *
- * Revision 1.25  1996/10/22 23:13:58  fritz
- * Changes for compatibility to 2.0.X and 2.1.X kernels.
- *
- * Revision 1.24  1996/10/11 13:57:40  fritz
- * Bugfix: Error in BogoCPS calculation.
- *
- * Revision 1.23  1996/09/23 01:58:08  fritz
- * Fix: With syncPPP encapsulation, discard LCP packets
- *      when calculating hangup timeout.
- *
- * Revision 1.22  1996/09/23 00:03:37  fritz
- * Fix: did not compile without CONFIG_ISDN_PPP
- *
- * Revision 1.21  1996/09/07 12:44:50  hipp
- * (hopefully) fixed callback problem with syncPPP
- * syncPPP network devices now show PPP link encap
- *
- * Revision 1.20  1996/08/29 20:06:03  fritz
- * Bugfix: Transmission timeout had been much to low.
- *
- * Revision 1.19  1996/08/12 16:24:32  hipp
- * removed some (now) obsolete functions for syncPPP in rebuild_header etc.
- *
- * Revision 1.18  1996/07/03 13:48:51  hipp
- * bugfix: Call dev_purge_queues() only for master device
- *
- * Revision 1.17  1996/06/25 18:37:37  fritz
- * Fixed return count for empty return string in isdn_net_getphones().
- *
- * Revision 1.16  1996/06/24 17:48:08  fritz
- * Bugfixes:
- *   - Did not free channel on unbinding.
- *   - ioctl returned wrong callback settings.
- *
- * Revision 1.15  1996/06/16 17:42:54  tsbogend
- * fixed problem with IP addresses on Linux/Alpha (long is 8 byte there)
- *
- * Revision 1.14  1996/06/11 14:54:08  hipp
- * minor bugfix in isdn_net_send_skb
- * changes in BSENT callback handler for syncPPP
- * added lp->sav_skb stuff
- *
- * Revision 1.13  1996/06/06 14:25:44  fritz
- * Changed loglevel of "incoming ... without OAD" message, since
- * with audio support this is quite normal.
- *
- * Revision 1.12  1996/06/05 02:36:45  fritz
- * Minor bugfixes by M. Hipp.
- *
- * Revision 1.11  1996/05/18 01:36:59  fritz
- * Added spelling corrections and some minor changes
- * to stay in sync with kernel.
- *
- * Revision 1.10  1996/05/17 03:49:01  fritz
- * Some cleanup.
- *
- * Revision 1.9  1996/05/06 11:34:57  hipp
- * fixed a few bugs
- *
- * Revision 1.8  1996/04/30 21:04:40  fritz
- * Test commit
- *
- * Revision 1.7  1996/04/30 11:10:42  fritz
- * Added Michael's ippp-bind patch.
- *
- * Revision 1.6  1996/04/30 09:34:35  fritz
- * Removed compatibility-macros.
- *
- * Revision 1.5  1996/04/20 16:28:38  fritz
- * Made more parameters of the dial statemachine user-configurable and
- * added hangup after dial for more reliability using callback.
- * Changed all io going through generic routines in isdn_common.c
- * Added missing call to dev_free_skb on failed dialing.
- * Added uihdlc encapsulation.
- * Fixed isdn_net_setcfg not to destroy interface-flags anymore.
- * Misc. typos.
- *
- * Revision 1.4  1996/02/19 15:23:38  fritz
- * Bugfix: Sync-PPP packets got compressed twice, when resent due to
- *         send-queue-full reject.
- *
- * Revision 1.3  1996/02/11 02:22:28  fritz
- * Changed status- receive-callbacks to use pointer-arrays for finding
- * a corresponding interface instead of looping over all interfaces.
- * Activate Auto-hangup-timer only when interface is online.
- * Some bugfixes in the dialing-statemachine.
- * Lot of bugfixes in sk_buff'ized encapsulation handling.
- * For speedup connection-setup after dialing, remember sk_buf that triggered
- * dialing.
- * Fixed isdn_net_log_packet according to different encapsulations.
- * Correct ARP-handling for ETHERNET-encapsulation.
- *
- * Revision 1.2  1996/01/22 05:05:12  fritz
- * Changed returncode-logic for isdn_net_start_xmit() and its
- * helper-functions.
- * Changed handling of buildheader for RAWIP and ETHERNET-encapsulation.
- *
- * Revision 1.1  1996/01/09 04:12:34  fritz
- * Initial revision
- *
  */
 
 #include <linux/config.h>
@@ -656,7 +181,7 @@ static __inline__ void isdn_net_zero_frame_cnt(isdn_net_local *lp)
 int isdn_net_force_dial_lp(isdn_net_local *);
 static int isdn_net_start_xmit(struct sk_buff *, struct net_device *);
 
-char *isdn_net_revision = "$Revision: 1.125 $";
+char *isdn_net_revision = "$Revision: 1.134 $";
 
  /*
   * Code for raw-networking over ISDN
index 5012ea77238a85f0d668cc783b8862cefdd69f6f..ddf23562b2aa6eb3e46eccbdfaac656d1fc3db02 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: isdn_net.h,v 1.16 2000/03/21 23:53:22 kai Exp $
+/* $Id: isdn_net.h,v 1.19 2000/06/21 09:54:29 keil Exp $
 
  * header for Linux ISDN subsystem, network related functions (linklevel).
  *
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: isdn_net.h,v $
- * Revision 1.16  2000/03/21 23:53:22  kai
- * fix backwards compatibility
- *
- * Revision 1.15  2000/03/19 15:27:53  kai
- * no known bugs left...
- *
- * Revision 1.14  2000/03/18 16:20:25  kai
- * cosmetics / renaming
- *
- * Revision 1.13  2000/03/17 18:20:46  kai
- * moved to frame_cnt based flow control
- * some races still need to be fixed
- *
- * Revision 1.12  2000/03/17 17:01:00  kai
- * cleanup
- *
- * Revision 1.11  2000/03/17 16:22:55  kai
- * we keep track of outstanding packets (given to HL, but not confirmed yet)
- * now, but we don't use it for flow control yet.
- *
- * Revision 1.10  1999/08/22 20:26:06  calle
- * backported changes from kernel 2.3.14:
- * - several #include "config.h" gone, others come.
- * - "struct device" changed to "struct net_device" in 2.3.14, added a
- *   define in isdn_compat.h for older kernel versions.
- *
- * Revision 1.9  1999/04/12 12:33:27  fritz
- * Changes from 2.0 tree.
- *
- * Revision 1.8  1998/10/30 17:55:33  he
- * dialmode for x25iface and multulink ppp
- *
- * Revision 1.7  1998/08/31 21:09:55  he
- * new ioctl IIOCNETGPN for /dev/isdninfo (get network interface'
- *     peer phone number)
- *
- * Revision 1.6  1997/10/09 21:28:54  fritz
- * New HL<->LL interface:
- *   New BSENT callback with nr. of bytes included.
- *   Sending without ACK.
- *   New L1 error status (not yet in use).
- *   Cleaned up obsolete structures.
- * Implemented Cisco-SLARP.
- * Changed local net-interface data to be dynamically allocated.
- * Removed old 2.0 compatibility stuff.
- *
- * Revision 1.5  1997/02/10 20:12:47  fritz
- * Changed interface for reporting incoming calls.
- *
- * Revision 1.4  1997/02/03 23:16:48  fritz
- * Removed isdn_net_receive_callback prototype.
- *
- * Revision 1.3  1997/01/17 01:19:30  fritz
- * Applied chargeint patch.
- *
- * Revision 1.2  1996/04/20 16:29:43  fritz
- * Misc. typos
- *
- * Revision 1.1  1996/02/11 02:35:13  fritz
- * Initial revision
- *
  */
 
                              /* Definitions for hupflags:                */
index 8a3ccce5f1b23ec51a28e1b44e304b1e947bdd58..5fb2bab395ee0f73256f409df2b2711149e52f28 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: isdn_ppp.c,v 1.69 2000/03/19 15:27:53 kai Exp $
+/* $Id: isdn_ppp.c,v 1.77 2000/06/12 16:46:34 keil Exp $
  *
  * Linux ISDN subsystem, functions for synchronous PPP (linklevel).
  *
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: isdn_ppp.c,v $
- * Revision 1.69  2000/03/19 15:27:53  kai
- * no known bugs left...
- *
- * Revision 1.67  2000/03/17 18:20:46  kai
- * moved to frame_cnt based flow control
- * some races still need to be fixed
- *
- * Revision 1.66  2000/03/17 17:01:00  kai
- * cleanup
- *
- * Revision 1.65  2000/03/17 16:22:55  kai
- * we keep track of outstanding packets (given to HL, but not confirmed yet)
- * now, but we don't use it for flow control yet.
- *
- * Revision 1.64  2000/03/17 10:43:56  kai
- * 2.3.99 contains MPPP constants which cause a warning because we
- * redefine them in include/linux/isdn_ppp.h
- *
- * So from now on we use the generic PPP constants, change is backwards
- * compatible, though
- *
- * Revision 1.63  2000/03/16 15:46:37  kai
- * a little bugfix and cosmetic changes
- *
- * Revision 1.62  2000/02/12 19:26:55  kai
- * adopted to latest 2.3 softnet changes.
- *
- * tested with PPP and MPPP, it works here.
- * can somebody check raw-ip?
- *
- * also changed std2kern, stddiff for bash-1 compatibility,
- * hope this doesn't break anything.
- *
- * Revision 1.61  1999/11/20 22:14:14  detabc
- * added channel dial-skip in case of external use
- * (isdn phone or another isdn device) on the same NTBA.
- * usefull with two or more card's connected the different NTBA's.
- * global switchable in kernel-config and also per netinterface.
- *
- * add auto disable of netinterface's in case of:
- *     to many connection's in short time.
- *     config mistakes (wrong encapsulation, B2-protokoll or so on) on local
- *     or remote side.
- *     wrong password's or something else to a ISP (syncppp).
- *
- * possible encapsulations for this future are:
- * ISDN_NET_ENCAP_SYNCPPP, ISDN_NET_ENCAP_UIHDLC, ISDN_NET_ENCAP_RAWIP,
- * and ISDN_NET_ENCAP_CISCOHDLCK.
- *
- * Revision 1.60  1999/11/04 20:29:55  he
- * applied Andre Beck's reset_free fix
- *
- * Revision 1.59  1999/10/31 15:59:50  he
- * more skb headroom checks
- *
- * Revision 1.58  1999/10/30 13:13:01  keil
- * Henners isdn_ppp_skb_push:under fix
- *
- * Revision 1.57  1999/10/05 22:47:17  he
- * Removed dead ISDN_SYNCPPP_READDRESS code (obsoleted by sysctl_ip_dynaddr
- * and network address translation)
- *
- * Revision 1.56  1999/09/29 16:01:06  he
- * replaced dev_alloc_skb() for downstream skbs by equivalent alloc_skb()
- *
- * Revision 1.55  1999/09/23 22:07:51  detabc
- *
- * make ipc_head common usable (for use compressor with raw-ip)
- * add function before netif_rx(). needed for ipv4-tcp-keepalive-detect.
- * ~
- *
- * Revision 1.54  1999/09/13 23:25:17  he
- * serialized xmitting frames from isdn_ppp and BSENT statcallb
- *
- * Revision 1.53  1999/08/31 11:18:14  paul
- * various spelling corrections (new checksums may be needed, Karsten!)
- *
- * Revision 1.52  1999/08/22 20:26:07  calle
- * backported changes from kernel 2.3.14:
- * - several #include "config.h" gone, others come.
- * - "struct device" changed to "struct net_device" in 2.3.14, added a
- *   define in isdn_compat.h for older kernel versions.
- *
- * Revision 1.51  1999/08/18 16:19:17  hipp
- * applied MPPP-resize-headroom patch
- *
- * Revision 1.50  1999/08/16 07:11:41  hipp
- * Additional VJ decomp-buffer-size increased from 40 to 128
- *
- * Revision 1.49  1999/07/06 07:47:11  calle
- * bugfix: dev_alloc_skb only reserve 16 bytes. We need to look at the
- *     hdrlen the driver want. So I changed dev_alloc_skb calls
- *         to alloc_skb and skb_reserve.
- *
- * Revision 1.48  1999/07/01 08:29:56  keil
- * compatibility to 2.3 kernel
- *
- * Revision 1.47  1999/04/18 14:06:59  fritz
- * Removed TIMRU stuff.
- *
- * Revision 1.46  1999/04/12 12:33:35  fritz
- * Changes from 2.0 tree.
- *
- * Revision 1.45  1998/12/30 17:48:24  paul
- * fixed syncPPP callback out
- *
- * Revision 1.44  1998/10/30 17:55:34  he
- * dialmode for x25iface and multulink ppp
- *
- * Revision 1.43  1998/10/29 17:23:54  hipp
- * Minor MPPP fixes, verboser logging.
- *
- * Revision 1.42  1998/07/20 11:30:07  hipp
- * Readded compression check
- *
- * Revision 1.41  1998/07/08 16:50:57  hipp
- * Compression changes
- *
- * Revision 1.40  1998/04/06 19:07:27  hipp
- * added check, whether compression is enabled.
- *
- * Revision 1.39  1998/03/25 22:46:53  hipp
- * Some additional CCP changes.
- *
- * Revision 1.38  1998/03/24 16:33:06  hipp
- * More CCP changes. BSD compression now "works" on a local loopback link.
- * Moved some isdn_ppp stuff from isdn.h to isdn_ppp.h
- *
- * Revision 1.37  1998/03/22 18:50:49  hipp
- * Added BSD Compression for syncPPP .. UNTESTED at the moment
- *
- * Revision 1.36  1998/03/09 17:46:30  he
- * merged in 2.1.89 changes
- *
- * Revision 1.35  1998/03/07 18:21:11  cal
- * Dynamic Timeout-Rule-Handling vs. 971110 included
- *
- * Revision 1.34  1998/02/25 17:49:48  he
- * Changed return codes caused be failing copy_{to,from}_user to -EFAULT
- *
- * Revision 1.33  1998/02/20 17:11:54  fritz
- * Changes for recent kernels.
- *
- * Revision 1.32  1998/01/31 19:29:55  calle
- * Merged changes from and for 2.1.82, not tested only compiled ...
- *
- * Revision 1.31  1997/10/09 21:29:01  fritz
- * New HL<->LL interface:
- *   New BSENT callback with nr. of bytes included.
- *   Sending without ACK.
- *   New L1 error status (not yet in use).
- *   Cleaned up obsolete structures.
- * Implemented Cisco-SLARP.
- * Changed local net-interface data to be dynamically allocated.
- * Removed old 2.0 compatibility stuff.
- *
- * Revision 1.30  1997/10/01 09:20:38  fritz
- * Removed old compatibility stuff for 2.0.X kernels.
- * From now on, this code is for 2.1.X ONLY!
- * Old stuff is still in the separate branch.
- *
- * Revision 1.29  1997/08/21 23:11:44  fritz
- * Added changes for kernels >= 2.1.45
- *
- * Revision 1.28  1997/06/17 13:05:57  hipp
- * Applied Eric's underflow-patches (slightly modified)
- * more compression changes (but disabled at the moment)
- * changed one copy_to_user() to run with enabled IRQs
- * a few MP changes
- * changed 'proto' handling in the isdn_ppp receive code
- *
- * Revision 1.27  1997/03/30 16:51:17  calle
- * changed calls to copy_from_user/copy_to_user and removed verify_area
- * were possible.
- *
- * Revision 1.26  1997/02/23 16:53:44  hipp
- * minor cleanup
- * some initial changes for future PPP compresion
- * added AC,PC compression for outgoing frames
- *
- * Revision 1.25  1997/02/12 20:37:35  hipp
- * New ioctl() PPPIOCGCALLINFO, minor cleanup
- *
- * Revision 1.24  1997/02/11 18:32:56  fritz
- * Bugfix in isdn_ppp_free_mpqueue().
- *
- * Revision 1.23  1997/02/10 11:12:19  fritz
- * More changes for Kernel 2.1.X compatibility.
- *
- * Revision 1.22  1997/02/06 15:03:51  hipp
- * changed GFP_KERNEL kmalloc to GFP_ATOMIC in isdn_ppp_fill_mpqueue()
- *
- * Revision 1.21  1997/02/03 23:29:38  fritz
- * Reformatted according CodingStyle
- * Bugfix: removed isdn_ppp_skb_destructor, used by upper layers.
- * Misc changes for Kernel 2.1.X compatibility.
- *
- * Revision 1.20  1996/10/30 12:21:58  fritz
- * Cosmetic fix: Compiler warning when compiling without MPP.
- *
- * Revision 1.19  1996/10/25 19:03:21  hipp
- * changed/added some defines to (re)allow compilation without MP/VJ
- *
- * Revision 1.18  1996/10/22 23:14:00  fritz
- * Changes for compatibility to 2.0.X and 2.1.X kernels.
- *
- * Revision 1.17  1996/10/22 09:39:49  hipp
- * a few MP changes and bugfixes
- *
- * Revision 1.16  1996/09/23 01:58:10  fritz
- * Fix: With syncPPP encapsulation, discard LCP packets
- *      when calculating hangup timeout.
- *
- * Revision 1.15  1996/09/07 12:50:12  hipp
- * bugfixes (unknown device after failed dial attempt, minor bugs)
- *
- * Revision 1.14  1996/08/12 16:26:47  hipp
- * code cleanup
- * changed connection management from minors to slots
- *
- * Revision 1.13  1996/07/01 19:47:24  hipp
- * Fixed memory leak in VJ handling and more VJ changes
- *
- * Revision 1.12  1996/06/24 17:42:03  fritz
- * Minor bugfixes.
- *
- * Revision 1.11  1996/06/16 17:46:05  tsbogend
- * changed unsigned long to u32 to make Alpha people happy
- *
- * Revision 1.10  1996/06/11 14:50:29  hipp
- * Lot of changes and bugfixes.
- * New scheme to resend packets to busy LL devices.
- *
- * Revision 1.9  1996/05/18 01:37:01  fritz
- * Added spelling corrections and some minor changes
- * to stay in sync with kernel.
- *
- * Revision 1.8  1996/05/06 11:34:55  hipp
- * fixed a few bugs
- *
- * Revision 1.7  1996/04/30 11:07:42  fritz
- * Added Michael's ippp-bind patch.
- *
- * Revision 1.6  1996/04/30 09:33:09  fritz
- * Removed compatibility-macros.
- *
- * Revision 1.5  1996/04/20 16:32:32  fritz
- * Changed ippp_table to an array of pointers, allocating each part
- * separately.
- *
- * Revision 1.4  1996/02/19 15:25:50  fritz
- * Bugfix: Sync-PPP packets got compressed twice, when resent due to
- * send-queue-full reject.
- *
- * Revision 1.3  1996/02/11 02:27:12  fritz
- * Lot of Bugfixes my Michael.
- * Moved calls to skb_push() into isdn_net_header()
- * Fixed a possible race-condition in isdn_ppp_timer_timeout().
- *
- * Revision 1.2  1996/01/22 05:08:06  fritz
- * Merged in Michael's patches for MP.
- * Minor changes in isdn_ppp_xmit.
- *
- * Revision 1.1  1996/01/09 04:11:29  fritz
- * Initial revision
- *
  */
 
 #include <linux/config.h>
index 2de3035c1d8d8360c9050a2a744e09ae7e132854..1e33cb2194c52843cd1643d646a8a8dd655adb11 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: isdn_ppp.h,v 1.14 1999/08/22 20:26:10 calle Exp $
+/* $Id: isdn_ppp.h,v 1.16 2000/05/18 23:14:18 keil Exp $
 
  * header for Linux ISDN subsystem, functions for synchronous PPP (linklevel).
  *
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: isdn_ppp.h,v $
- * Revision 1.14  1999/08/22 20:26:10  calle
- * backported changes from kernel 2.3.14:
- * - several #include "config.h" gone, others come.
- * - "struct device" changed to "struct net_device" in 2.3.14, added a
- *   define in isdn_compat.h for older kernel versions.
- *
- * Revision 1.13  1998/03/22 18:50:50  hipp
- * Added BSD Compression for syncPPP .. UNTESTED at the moment
- *
- * Revision 1.12  1998/01/31 22:07:48  keil
- * changes for newer kernels
- *
- * Revision 1.11  1997/10/01 09:20:44  fritz
- * Removed old compatibility stuff for 2.0.X kernels.
- * From now on, this code is for 2.1.X ONLY!
- * Old stuff is still in the separate branch.
- *
- * Revision 1.10  1997/06/17 13:06:00  hipp
- * Applied Eric's underflow-patches (slightly modified)
- * more compression changes (but disabled at the moment)
- * changed one copy_to_user() to run with enabled IRQs
- * a few MP changes
- * changed 'proto' handling in the isdn_ppp receive code
- *
- * Revision 1.9  1997/02/11 18:32:59  fritz
- * Bugfix in isdn_ppp_free_mpqueue().
- *
- * Revision 1.8  1997/02/10 10:11:33  fritz
- * More changes for Kernel 2.1.X compatibility.
- *
- * Revision 1.7  1997/02/03 23:18:57  fritz
- * Removed isdn_ppp_free_sqqueue prototype
- *         and ippp_table (both static in isdn_ppp.c).
- *
- * Revision 1.6  1996/09/23 01:58:11  fritz
- * Fix: With syncPPP encapsulation, discard LCP packets
- *      when calculating hangup timeout.
- *
- * Revision 1.5  1996/09/07 12:51:34  hipp
- * *** empty log message ***
- *
- * Revision 1.4  1996/05/06 11:34:56  hipp
- * fixed a few bugs
- *
- * Revision 1.3  1996/04/30 09:33:10  fritz
- * Removed compatibility-macros.
- *
- * Revision 1.2  1996/04/20 16:35:11  fritz
- * Changed isdn_ppp_receive to use sk_buff as parameter.
- * Added definition of isdn_ppp_dial_slave and ippp_table.
- *
- * Revision 1.1  1996/01/10 21:39:10  fritz
- * Initial revision
- *
  */
 
 #include <linux/ppp_defs.h>     /* for PPP_PROTOCOL */
index 796cf4848d741aadc1205be496959fa137fd1663..f9bfc60dee4ba2859609ea75819b0a46a6cb8ad8 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: isdn_tty.c,v 1.84 2000/02/16 15:10:14 paul Exp $
+/* $Id: isdn_tty.c,v 1.92 2000/06/21 09:54:29 keil Exp $
 
  * Linux ISDN subsystem, tty functions and AT-command emulator (linklevel).
  *
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: isdn_tty.c,v $
- * Revision 1.84  2000/02/16 15:10:14  paul
- * If a ttyI has no open FDs, don't connect incoming calls to it.
- * (Hangup on close of last FD is still to be done.)
- *
- * Revision 1.83  2000/02/16 14:59:33  paul
- * translated ISDN_MODEM_ANZREG to ISDN_MODEM_NUMREG for english speakers;
- * used defines for result codes;
- * fixed RING ... RUNG problem (no empty lines in between).
- *
- * Revision 1.82  2000/01/23 18:45:37  keil
- * Change EAZ mapping to forbit the use of cards (insert a "-" for the MSN)
- *
- * Revision 1.81  2000/01/20 19:55:33  keil
- * Add FAX Class 1 support
- *
- * Revision 1.80  1999/11/07 13:34:30  armin
- * Fixed AT command line editor
- *
- * Revision 1.79  1999/10/29 18:35:08  armin
- * Check number len in isdn_get_msnstr() to avoid buffer overflow.
- *
- * Revision 1.78  1999/10/28 23:03:51  armin
- * Bugfix: now freeing channel on modem_hup() even when
- * usage on ttyI has changed and error-report for
- * AT-commands on wrong channel-state.
- *
- * Revision 1.77  1999/10/26 21:13:14  armin
- * using define for checking phone number len in isdn_tty_getdial()
- *
- * Revision 1.76  1999/10/11 22:16:26  keil
- * Suspend/Resume is possible without explicit ID too
- *
- * Revision 1.75  1999/10/08 18:59:32  armin
- * Bugfix of too small MSN buffer and checking phone number
- * in isdn_tty_getdial()
- *
- * Revision 1.74  1999/09/04 06:20:04  keil
- * Changes from kernel set_current_state()
- *
- * Revision 1.73  1999/08/28 21:56:27  keil
- * misplaced #endif caused ttyI crash in 2.3.X
- *
- * Revision 1.72  1999/07/31 12:59:45  armin
- * Added tty fax capabilities.
- *
- * Revision 1.71  1999/07/27 10:34:34  armin
- * Fixed last change. Did not compile with AUDIO support off.
- *
- * Revision 1.70  1999/07/25 16:17:58  keil
- * Fix Suspend/Resume
- *
- * Revision 1.69  1999/07/25 12:56:15  armin
- * isdn_tty_at_cout() now queues the message if online and
- * data is in queue or flip buffer is full.
- * needed for fax connections.
- *
- * Revision 1.68  1999/07/11 17:51:51  armin
- * Bugfix, "-" was missing for AT&L settings.
- *
- * Revision 1.67  1999/07/11 17:14:12  armin
- * Added new layer 2 and 3 protocols for Fax and DSP functions.
- * Moved "Add CPN to RING message" to new register S23,
- * "Display message" is now correct on register S13 bit 7.
- * New audio command AT+VDD implemented (deactivate DTMF decoder and
- * activate possible existing hardware/DSP decoder).
- * Moved some tty defines to .h file.
- * Made whitespace possible in AT command line.
- * Some AT-emulator output bugfixes.
- * First Fax G3 implementations.
- *
- * Revision 1.66  1999/07/07 10:13:46  detabc
- * remove unused messages
- *
- * Revision 1.65  1999/07/04 21:01:59  werner
- * Added support for keypad and display (ported from 2.0)
- *
- * Revision 1.64  1999/07/01 08:30:00  keil
- * compatibility to 2.3 kernel
- *
- * Revision 1.63  1999/04/12 12:33:39  fritz
- * Changes from 2.0 tree.
- *
- * Revision 1.62  1999/03/02 12:04:48  armin
- * -added ISDN_STAT_ADDCH to increase supported channels after
- *  register_isdn().
- * -ttyI now goes on-hook on ATZ when B-Ch is connected.
- * -added timer-function for register S7 (Wait for Carrier).
- * -analog modem (ISDN_PROTO_L2_MODEM) implementations.
- * -on L2_MODEM a string will be appended to the CONNECT-Message,
- *  which is provided by the HL-Driver in parm.num in ISDN_STAT_BCONN.
- * -variable "dialing" used for ATA also, for interrupting call
- *  establishment and register S7.
- *
- * Revision 1.61  1999/01/27 22:53:11  he
- * minor updates (spellings, jiffies wrap around in isdn_tty)
- *
- * Revision 1.60  1998/11/15 23:57:32  keil
- * changes for 2.1.127
- *
- * Revision 1.59  1998/08/20 13:50:15  keil
- * More support for hybrid modem (not working yet)
- *
- * Revision 1.58  1998/07/26 18:48:45  armin
- * Added silence detection in voice receive mode.
- *
- * Revision 1.57  1998/06/26 15:12:36  fritz
- * Added handling of STAT_ICALL with incomplete CPN.
- * Added AT&L for ttyI emulator.
- * Added more locking stuff in tty_write.
- *
- * Revision 1.56  1998/06/18 23:31:51  fritz
- * Replaced cli()/restore_flags() in isdn_tty_write() by locking.
- * Removed direct-senddown feature in isdn_tty_write because it will
- * never succeed with locking and is useless anyway.
- *
- * Revision 1.55  1998/06/17 19:50:55  he
- * merged with 2.1.10[34] (cosmetics and udelay() -> mdelay())
- * brute force fix to avoid Ugh's in isdn_tty_write()
- * cleaned up some dead code
- *
- *
- *
- * Revision 1.52  1998/03/19 13:18:21  keil
- * Start of a CAPI like interface for supplementary Service
- * first service: SUSPEND
- *
- *
- * Revision 1.49  1998/03/08 00:01:59  fritz
- * Bugfix: Lowlevel module usage and channel usage were not
- *         reset on NO DCHANNEL.
- *
- * Revision 1.48  1998/03/07 12:28:15  tsbogend
- * fixed kernel unaligned traps on Linux/Alpha
- *
- * Revision 1.47  1998/02/22 19:44:14  fritz
- * Bugfixes and improvements regarding V.110, V.110 now running.
- *
- * Revision 1.46  1998/02/20 17:23:08  fritz
- * Changes for recent kernels.
- * Merged in contributions by Thomas Pfeiffer (V.110 T.70+ Extended FAX stuff)
- * Added symbolic constants for Modem-Registers.
- *
- * Revision 1.45  1998/01/31 22:07:49  keil
- * changes for newer kernels
- *
- * Revision 1.44  1998/01/31 19:30:02  calle
- * Merged changes from and for 2.1.82, not tested only compiled ...
- *
- * Revision 1.43  1997/10/09 21:29:04  fritz
- * New HL<->LL interface:
- *   New BSENT callback with nr. of bytes included.
- *   Sending without ACK.
- *   New L1 error status (not yet in use).
- *   Cleaned up obsolete structures.
- * Implemented Cisco-SLARP.
- * Changed local net-interface data to be dynamically allocated.
- * Removed old 2.0 compatibility stuff.
- *
- * Revision 1.42  1997/10/01 09:20:49  fritz
- * Removed old compatibility stuff for 2.0.X kernels.
- * From now on, this code is for 2.1.X ONLY!
- * Old stuff is still in the separate branch.
- *
- * Revision 1.41  1997/05/27 15:17:31  fritz
- * Added changes for recent 2.1.x kernels:
- *   changed return type of isdn_close
- *   queue_task_* -> queue_task
- *   clear/set_bit -> test_and_... where apropriate.
- *   changed type of hard_header_cache parameter.
- *
- * Revision 1.40  1997/03/24 22:55:27  fritz
- * Added debug code for status callbacks.
- *
- * Revision 1.39  1997/03/21 18:25:56  fritz
- * Corrected CTS handling.
- *
- * Revision 1.38  1997/03/07 12:13:35  fritz
- * Bugfix: Send audio in adpcm format was broken.
- * Bugfix: CTS handling was wrong.
- *
- * Revision 1.37  1997/03/07 01:37:34  fritz
- * Bugfix: Did not compile with CONFIG_ISDN_AUDIO disabled.
- * Bugfix: isdn_tty_tint() did not handle lowlevel errors correctly.
- * Bugfix: conversion was wrong when sending ulaw audio.
- * Added proper ifdef's for CONFIG_ISDN_AUDIO
- *
- * Revision 1.36  1997/03/04 21:41:55  fritz
- * Fix: Excessive stack usage of isdn_tty_senddown()
- *      and isdn_tty_end_vrx() could lead to problems.
- *
- * Revision 1.35  1997/03/02 19:05:52  fritz
- * Bugfix: Avoid recursion.
- *
- * Revision 1.34  1997/03/02 14:29:22  fritz
- * More ttyI related cleanup.
- *
- * Revision 1.33  1997/02/28 02:32:45  fritz
- * Cleanup: Moved some tty related stuff from isdn_common.c
- *          to isdn_tty.c
- * Bugfix:  Bisync protocol did not behave like documented.
- *
- * Revision 1.32  1997/02/23 15:43:03  fritz
- * Small change in handling of incoming calls
- * documented in newest version of ttyI.4
- *
- * Revision 1.31  1997/02/21 13:05:57  fritz
- * Bugfix: Remote hangup did not set location-info on ttyI's
- *
- * Revision 1.30  1997/02/18 09:41:05  fritz
- * Added support for bitwise access to modem registers (ATSx.y=n, ATSx.y?).
- * Beautified output of AT&V.
- *
- * Revision 1.29  1997/02/16 12:11:51  fritz
- * Added S13,Bit4 option.
- *
- * Revision 1.28  1997/02/10 22:07:08  fritz
- * Added 2 modem registers for numbering plan and screening info.
- *
- * Revision 1.27  1997/02/10 21:31:14  fritz
- * Changed setup-interface (incoming and outgoing).
- *
- * Revision 1.26  1997/02/10 20:12:48  fritz
- * Changed interface for reporting incoming calls.
- *
- * Revision 1.25  1997/02/03 23:04:30  fritz
- * Reformatted according CodingStyle.
- * skb->free stuff replaced by macro.
- * Finished full-duplex audio.
- *
- * Revision 1.24  1997/01/14 01:32:42  fritz
- * Changed audio receive not to rely on skb->users and skb->lock.
- * Added ATI2 and related variables.
- * Started adding full-duplex audio capability.
- *
- * Revision 1.23  1996/10/22 23:14:02  fritz
- * Changes for compatibility to 2.0.X and 2.1.X kernels.
- *
- * Revision 1.22  1996/10/19 18:56:43  fritz
- * ATZ did not change the xmitbuf size.
- *
- * Revision 1.21  1996/06/24 17:40:28  fritz
- * Bugfix: Did not compile without CONFIG_ISDN_AUDIO
- *
- * Revision 1.20  1996/06/15 14:59:39  fritz
- * Fixed isdn_tty_tint() to handle partially sent
- * sk_buffs.
- *
- * Revision 1.19  1996/06/12 15:53:56  fritz
- * Bugfix: AT+VTX and AT+VRX could be executed without
- *         having a connection.
- *         Missing check for NULL tty in isdn_tty_flush_buffer().
- *
- * Revision 1.18  1996/06/07 11:17:33  tsbogend
- * added missing #ifdef CONFIG_ISDN_AUDIO to make compiling without
- * audio support possible
- *
- * Revision 1.17  1996/06/06 14:55:47  fritz
- * Changed to support DTMF decoding on audio playback also.
- * Bugfix: Added check for invalid info->isdn_driver in
- *         isdn_tty_senddown().
- * Clear ncarrier flag on last close() of a tty.
- *
- * Revision 1.16  1996/06/05 02:24:12  fritz
- * Added DTMF decoder for audio mode.
- *
- * Revision 1.15  1996/06/03 20:35:01  fritz
- * Fixed typos.
- *
- * Revision 1.14  1996/06/03 20:12:19  fritz
- * Fixed typos.
- * Added call to write_wakeup via isdn_tty_flush_buffer()
- * in isdn_tty_modem_hup().
- *
- * Revision 1.13  1996/05/31 01:33:29  fritz
- * Changed buffering due to bad performance with mgetty.
- * Now sk_buff is delayed allocated in isdn_tty_senddown
- * using xmit_buff like in standard serial driver.
- * Fixed module locking.
- * Added DLE-DC4 handling in voice mode.
- *
- * Revision 1.12  1996/05/19 01:34:40  fritz
- * Bugfix: ATS returned error.
- *         Register 20 made readonly.
- *
- * Revision 1.11  1996/05/18 01:37:03  fritz
- * Added spelling corrections and some minor changes
- * to stay in sync with kernel.
- *
- * Revision 1.10  1996/05/17 03:51:49  fritz
- * Changed DLE handling for audio receive.
- *
- * Revision 1.9  1996/05/11 21:52:07  fritz
- * Changed queue management to use sk_buffs.
- *
- * Revision 1.8  1996/05/10 08:49:43  fritz
- * Checkin before major changes of tty-code.
- *
- * Revision 1.7  1996/05/07 09:15:09  fritz
- * Reorganized and general cleanup.
- * Bugfixes:
- *  - Audio-transmit working now.
- *  - "NO CARRIER" now reported, when hanging up with DTR low.
- *  - Corrected CTS handling.
- *
- * Revision 1.6  1996/05/02 03:59:25  fritz
- * Bugfixes:
- *  - On dialout, layer-2 setup had been incomplete
- *    when using new auto-layer2 feature.
- *  - On hangup, "NO CARRIER" message sometimes missing.
- *
- * Revision 1.5  1996/04/30 21:05:25  fritz
- * Test commit
- *
- * Revision 1.4  1996/04/20 16:39:54  fritz
- * Changed all io to go through generic routines in isdn_common.c
- * Fixed a real ugly bug in modem-emulator: 'ATA' had been accepted
- * even when a call has been cancelled from the remote machine.
- *
- * Revision 1.3  1996/02/11 02:12:32  fritz
- * Bugfixes according to similar fixes in standard serial.c of kernel.
- *
- * Revision 1.2  1996/01/22 05:12:25  fritz
- * replaced my_atoi by simple_strtoul
- *
- * Revision 1.1  1996/01/09 04:13:18  fritz
- * Initial revision
- *
  */
 #undef ISDN_TTY_STAT_DEBUG
 
@@ -394,7 +66,7 @@ static int bit2si[8] =
 static int si2bit[8] =
 {4, 1, 4, 4, 4, 4, 4, 4};
 
-char *isdn_tty_revision = "$Revision: 1.84 $";
+char *isdn_tty_revision = "$Revision: 1.92 $";
 
 
 /* isdn_tty_try_read() is called from within isdn_tty_rcv_skb()
index ed9190cfef72eb2d0912535ae672d5af79ea3cfb..2921f96594866320c248896bd8541fe420e5ce50 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: isdn_tty.h,v 1.19 2000/02/16 14:59:33 paul Exp $
+/* $Id: isdn_tty.h,v 1.22 2000/06/21 09:54:29 keil Exp $
 
  * header for Linux ISDN subsystem, tty related functions (linklevel).
  *
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: isdn_tty.h,v $
- * Revision 1.19  2000/02/16 14:59:33  paul
- * translated ISDN_MODEM_ANZREG to ISDN_MODEM_NUMREG for english speakers;
- * used defines for result codes;
- * fixed RING ... RUNG problem (no empty lines in between).
- *
- * Revision 1.18  2000/01/20 19:55:33  keil
- * Add FAX Class 1 support
- *
- * Revision 1.17  1999/09/21 19:00:35  armin
- * Extended FCON message with added CPN
- * can now be activated with Bit 1 of Reg 23.
- *
- * Revision 1.16  1999/08/22 20:26:10  calle
- * backported changes from kernel 2.3.14:
- * - several #include "config.h" gone, others come.
- * - "struct device" changed to "struct net_device" in 2.3.14, added a
- *   define in isdn_compat.h for older kernel versions.
- *
- * Revision 1.15  1999/07/31 12:59:48  armin
- * Added tty fax capabilities.
- *
- * Revision 1.14  1999/07/11 17:14:15  armin
- * Added new layer 2 and 3 protocols for Fax and DSP functions.
- * Moved "Add CPN to RING message" to new register S23,
- * "Display message" is now correct on register S13 bit 7.
- * New audio command AT+VDD implemented (deactivate DTMF decoder and
- * activate possible existing hardware/DSP decoder).
- * Moved some tty defines to .h file.
- * Made whitespace possible in AT command line.
- * Some AT-emulator output bugfixes.
- * First Fax G3 implementations.
- *
- * Revision 1.13  1999/04/12 12:33:46  fritz
- * Changes from 2.0 tree.
- *
- * Revision 1.12  1999/03/02 12:04:51  armin
- * -added ISDN_STAT_ADDCH to increase supported channels after
- *  register_isdn().
- * -ttyI now goes on-hook on ATZ when B-Ch is connected.
- * -added timer-function for register S7 (Wait for Carrier).
- * -analog modem (ISDN_PROTO_L2_MODEM) implementations.
- * -on L2_MODEM a string will be appended to the CONNECT-Message,
- *  which is provided by the HL-Driver in parm.num in ISDN_STAT_BCONN.
- * -variable "dialing" used for ATA also, for interrupting call
- *  establishment and register S7.
- *
- * Revision 1.11  1998/03/19 13:18:27  keil
- * Start of a CAPI like interface for supplementary Service
- * first service: SUSPEND
- *
- * Revision 1.10  1997/03/02 14:29:26  fritz
- * More ttyI related cleanup.
- *
- * Revision 1.9  1997/02/28 02:32:49  fritz
- * Cleanup: Moved some tty related stuff from isdn_common.c
- *          to isdn_tty.c
- * Bugfix:  Bisync protocol did not behave like documented.
- *
- * Revision 1.8  1997/02/10 20:12:50  fritz
- * Changed interface for reporting incoming calls.
- *
- * Revision 1.7  1997/02/03 23:06:10  fritz
- * Reformatted according CodingStyle
- *
- * Revision 1.6  1997/01/14 01:35:19  fritz
- * Changed prototype of isdn_tty_modem_hup.
- *
- * Revision 1.5  1996/05/17 03:52:31  fritz
- * Changed DLE handling for audio receive.
- *
- * Revision 1.4  1996/05/11 21:52:34  fritz
- * Changed queue management to use sk_buffs.
- *
- * Revision 1.3  1996/05/07 09:16:34  fritz
- * Changed isdn_try_read parameter.
- *
- * Revision 1.2  1996/04/30 21:05:27  fritz
- * Test commit
- *
- * Revision 1.1  1996/01/10 21:39:22  fritz
- * Initial revision
- *
  */
 
 #include <linux/config.h>
index 33f67ff4bea87c196946618f89e32e82fead1ab8..8899ce5a9a4cf36ff666c5e4ade857fd5b18256c 100644 (file)
@@ -1,4 +1,5 @@
-/* $Id: isdn_ttyfax.c,v 1.6 2000/01/26 00:41:13 keil Exp $
+/* $Id: isdn_ttyfax.c,v 1.7 2000/05/11 22:29:21 kai Exp $
+
  * Linux ISDN subsystem, tty_fax AT-command emulator (linklevel).
  *
  * Copyright 1999    by Armin Schindler (mac@melware.de)
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: isdn_ttyfax.c,v $
- * Revision 1.6  2000/01/26 00:41:13  keil
- * add "00" as dummy msn in isdn_get_free_channel call
- *
- * Revision 1.5  2000/01/20 19:55:33  keil
- * Add FAX Class 1 support
- *
- * Revision 1.4  1999/09/21 19:00:35  armin
- * Extended FCON message with added CPN
- * can now be activated with Bit 1 of Reg 23.
- *
- * Revision 1.3  1999/08/22 20:26:12  calle
- * backported changes from kernel 2.3.14:
- * - several #include "config.h" gone, others come.
- * - "struct device" changed to "struct net_device" in 2.3.14, added a
- *   define in isdn_compat.h for older kernel versions.
- *
- * Revision 1.2  1999/08/05 10:36:10  armin
- * Bugfix: kernel oops on getting revision.
- *
- * Revision 1.1  1999/07/31 12:59:50  armin
- * Added tty fax capabilities.
- *
- *
  */
 
 #undef ISDN_TTY_FAX_STAT_DEBUG
@@ -56,7 +33,7 @@
 #include "isdn_ttyfax.h"
 
 
-static char *isdn_tty_fax_revision = "$Revision: 1.6 $";
+static char *isdn_tty_fax_revision = "$Revision: 1.7 $";
 
 #define PARSE_ERROR1 { isdn_tty_fax_modem_result(1, info); return 1; }
 
index 1ad75d2dfa85ef26aa3b90cf7b5ba46cbd8660df..6390eee2ccbca221e9ced3eacfe259bc8e0c0952 100644 (file)
@@ -1,4 +1,5 @@
-/* $Id: isdn_ttyfax.h,v 1.1 1999/07/31 12:59:51 armin Exp $
+/* $Id: isdn_ttyfax.h,v 1.2 2000/05/11 22:29:21 kai Exp $
+
  * header for Linux ISDN subsystem, tty_fax related functions (linklevel).
  *
  * Copyright 1999   by Armin Schindler (mac@melware.de)
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: isdn_ttyfax.h,v $
- * Revision 1.1  1999/07/31 12:59:51  armin
- * Added tty fax capabilities.
- *
- *
  */
 
 
index 22863e208419469bd988a08172e45bf0bc7264f4..08c54a8660228940322e8b08d765bd539334a6e5 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: isdn_v110.c,v 1.4 2000/03/16 16:34:12 kai Exp $
+/* $Id: isdn_v110.c,v 1.5 2000/05/11 22:29:21 kai Exp $
 
  * Linux ISDN subsystem, V.110 related functions (linklevel).
  *
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: isdn_v110.c,v $
- * Revision 1.4  2000/03/16 16:34:12  kai
- * some translation work
- *
- * there shouldn't be any German comments lurking around anymore ;-)
- *
- * Revision 1.3  1999/10/30 09:49:28  keil
- * Reinit of v110 structs
- *
- * Revision 1.2  1998/02/22 19:44:25  fritz
- * Bugfixes and improvements regarding V.110, V.110 now running.
- *
- * Revision 1.1  1998/02/20 17:32:09  fritz
- * First checkin (not yet completely functionable).
- *
  */
+
 #include <linux/string.h>
 #include <linux/kernel.h>
 #include <linux/malloc.h>
@@ -44,7 +30,7 @@
 
 #undef ISDN_V110_DEBUG
 
-char *isdn_v110_revision = "$Revision: 1.4 $";
+char *isdn_v110_revision = "$Revision: 1.5 $";
 
 #define V110_38400 255
 #define V110_19200  15
index de6f9f6e1664c580125e913b59ef125f84eda606..553ba86ab5cf782b768234e35ae01399b3c20b6f 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: isdn_v110.h,v 1.3 2000/03/16 16:34:12 kai Exp $
+/* $Id: isdn_v110.h,v 1.4 2000/05/11 22:29:21 kai Exp $
 
  * Linux ISDN subsystem, V.110 related functions (linklevel).
  *
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
- * $Log: isdn_v110.h,v $
- * Revision 1.3  2000/03/16 16:34:12  kai
- * some translation work
- *
- * there shouldn't be any German comments lurking around anymore ;-)
- *
- * Revision 1.2  1999/10/30 09:49:28  keil
- * Reinit of v110 structs
- *
- * Revision 1.1  1998/02/20 17:32:11  fritz
- * First checkin (not yet completely functionable).
- *
  */
 #ifndef _isdn_v110_h_
 #define _isdn_v110_h_
index 9a50748015c5ce13eabbc6eac8896703be96578f..591608915aa0f53ae1d0752f141f090b41be56f1 100644 (file)
@@ -1,4 +1,23 @@
-/* $Id: isdn_x25iface.c,v 1.7 1999/08/22 20:26:13 calle Exp $
+/* $Id: isdn_x25iface.c,v 1.9 2000/05/16 20:52:10 keil 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.
+ *
+ *
  * 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.
  * This module supports a network interface wich provides lapb_sematics
@@ -9,33 +28,6 @@
  * Only protocol specific stuff goes here. Device specific stuff
  * goes to another -- device related -- concap_proto support source file.
  *
- * $Log: isdn_x25iface.c,v $
- * Revision 1.7  1999/08/22 20:26:13  calle
- * backported changes from kernel 2.3.14:
- * - several #include "config.h" gone, others come.
- * - "struct device" changed to "struct net_device" in 2.3.14, added a
- *   define in isdn_compat.h for older kernel versions.
- *
- * Revision 1.6  1999/01/27 22:53:19  he
- * minor updates (spellings, jiffies wrap around in isdn_tty)
- *
- * Revision 1.5  1998/10/30 17:55:39  he
- * dialmode for x25iface and multulink ppp
- *
- * Revision 1.4  1998/06/17 19:51:00  he
- * merged with 2.1.10[34] (cosmetics and udelay() -> mdelay())
- * brute force fix to avoid Ugh's in isdn_tty_write()
- * cleaned up some dead code
- *
- * Revision 1.3  1998/02/20 17:25:20  fritz
- * Changes for recent kernels.
- *
- * Revision 1.2  1998/01/31 22:49:22  keil
- * correct comments
- *
- * Revision 1.1  1998/01/31 22:27:58  keil
- * New files from Henner Eisen for X.25 support
- *
  */
 
 /* #include <linux/isdn.h> */
index 146eeefff8e1afa69f18418bfef15236511165de..97024e261457bc19412c193d38c29a07b7b98844 100644 (file)
@@ -1,5 +1,23 @@
-/* $Id: isdn_x25iface.h,v 1.2 1998/01/31 22:49:23 keil Exp $
+/* $Id: isdn_x25iface.h,v 1.3 2000/05/11 22:29:21 kai Exp $
+
+ * header for 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.
+ *
  */
+
 #ifndef _LINUX_ISDN_X25IFACE_H
 #define _LINUX_ISDN_X25IFACE_H
 
index 6030b63b38bb8da0dce652932cfa1e2adf33ffd6..fcbfd3175b65293c5fbd24f7c5c40d409257c142 100644 (file)
@@ -43,7 +43,6 @@ O_TARGET      := mtdlink.o
 SUB_DIRS       :=
 ALL_SUB_DIRS   :=
 MOD_SUB_DIRS   :=
-MOD_LIST_NAME  := MTD_MODULES
 
 export-objs    :=      mtdcore.o doc2000.o doc2001.o cfi_probe.o cfi_cmdset_0001.o cfi_cmdset_0002.o
 list-multi     :=
index 7fa0bb8e19c350aa5988f008b03075d071bc4a22..6a458a39cd85afb400c09ea5160e057bf979a185 100644 (file)
@@ -706,8 +706,10 @@ static int init_i596_mem(struct net_device *dev)
 
        spin_lock_irqsave (&lp->lock, flags);
 
-       if (wait_cmd(dev,lp,1000,"timed out waiting to issue RX_START"))
+       if (wait_cmd(dev,lp,1000,"timed out waiting to issue RX_START")) {
+               spin_unlock_irqrestore ((&lp->lock, flags);
                goto failed;
+       }
        DEB(DEB_INIT,printk("%s: Issuing RX_START\n", dev->name));
        lp->scb.command = RX_START;
        CA(dev);
index 006cb2a8ada9a5975386d7066ac43db62e824d67..e5ac867a60c49a3e6af4fedcd15349cbe50eee56 100644 (file)
@@ -21,7 +21,6 @@ ALL_SUB_DIRS := $(SUB_DIRS) fc hamradio irda pcmcia tokenring wan sk98lin \
                arcnet skfp tulip appletalk
 
 O_TARGET := net.o
-MOD_LIST_NAME := NET_MODULES
 
 # All of the (potential) objects that export symbols.
 # This list comes from 'grep -l EXPORT_SYMBOL *.[hc]'.
index d1a6be95c7dedfb8d92955e6ca704146c9343562..6acc28597c0e0c4274f5ddfd37ee1a7a0c1c4fb4 100644 (file)
@@ -557,7 +557,8 @@ static void net_tx_timeout (struct net_device *dev)
        /* ToDo: We should try to restart the adaptor... */
        outw (0xffff, ioaddr + 24);
        outw (0xffff, ioaddr + TX_STATUS);
-       outw (0xe85a, ioaddr + CONFIG_0);
+       outb (0x5a, ioaddr + CONFIG_0);
+       outb (0xe8, ioaddr + CONFIG_1);
        outw (0x8182, ioaddr + TX_INTR);
        outb (0x00, ioaddr + TX_START);
        outb (0x03, ioaddr + COL16CNTL);
index 6fd921f523d5745785c8bad0500820090a11a7d5..87e599863f5b6777e72f53942818a60c900c8161 100644 (file)
@@ -10,7 +10,6 @@ L_TARGET := fc.a
 L_OBJS   := 
 M_OBJS   := 
 MX_OBJS  := 
-MOD_LIST_NAME := FC_MODULES
 FC_SRCS = $(wildcard $(L_OBJS:%.o=%.c))
 
 ifeq ($(CONFIG_IPHASE5526),y)
index 309a2c42d76bc3f2818bd8de4feb251fd432a5b0..8d4ebe1a377aa82a5e2a0f4158b90d942c5462c0 100644 (file)
@@ -3952,8 +3952,10 @@ u_long flags;
 
        /* Get an used OX_ID. We could have pending commands.
         */
-       if (get_scsi_oxid(fi))
+       if (get_scsi_oxid(fi)) {
+               spin_unlock_irqrestore(&fi->fc_lock, flags);
                return 1;
+       }
        fi->q.free_scsi_oxid[fi->g.scsi_oxid] = OXID_INUSE;     
 
        /* Maintain a handler so that we can associate the done() function
index d80857838c999f64a61e57b867d09b961618a7a3..c2fb726c3e697319187f76d7806d66aa1c6b7f13 100644 (file)
@@ -14,7 +14,6 @@ ALL_SUB_DIRS := $(SUB_DIRS)
 O_TARGET := hamradio.o
 O_OBJS   := 
 M_OBJS   :=
-MOD_LIST_NAME := HAM_MODULES
 
 # Need these to keep track of whether the hdlc module should
 # really go in the kernel or a module.
index d9989aa1a90d07621a3956495071acc0e1940276..53ee8867c114bce524527f9d578e7888182b59c4 100644 (file)
@@ -10,7 +10,6 @@ ALL_SUB_DIRS := $(SUB_DIRS)
 L_TARGET := irda_drivers.a
 L_OBJS   := 
 M_OBJS   :=
-MOD_LIST_NAME := IRDA_DRIVERS_MODULES
 
 ifeq ($(CONFIG_IRTTY_SIR),y)
 L_OBJS += irtty.o
index 4f6463c2215bd10c71f7b87523984e2a14b7be94..acb40aa1b837cd8910a3d8cc6bdf88c1dbaed941 100644 (file)
@@ -9,7 +9,6 @@ MOD_SUB_DIRS := $(SUB_DIRS)
 ALL_SUB_DIRS := $(SUB_DIRS)
 
 O_TARGET := pcmcia_net.o
-MOD_LIST_NAME := PCMCIA_NET_MODULES
 
 obj-y          :=
 obj-m          :=
index 7dfe263beab27257822e0ec7b147c30f3db14a53..fbf1a6d6b778cb802d89e2c5cf8e313656e09a52 100644 (file)
@@ -10,7 +10,6 @@ ifeq ($(CONFIG_SK98LIN),y)
              skxmac2.o skcsum.o
 else
   ifeq ($(CONFIG_SK98LIN),m)
-    MOD_LIST_NAME := SK98LIN_MODULES
     M_OBJS := sk98lin.o
     O_TARGET := sk98lin.o
     O_OBJS = skge.o skaddr.o skgehwt.o skgeinit.o skgepnmi.o skgesirq.o \
index 82aa26e4cdf52173908248480506a3746ecc64fd..5f681ca170aede4409eeb7e89887611b1fe742a7 100644 (file)
@@ -10,7 +10,6 @@ ifeq ($(CONFIG_SKFP),y)
               smtparse.o  hwt.o      drvfbi.o   ess.o
 else
   ifeq ($(CONFIG_SKFP),m)
-    MOD_LIST_NAME := SKFP_MODULES
     M_OBJS := skfp.o
     O_TARGET := skfp.o
     O_OBJS =  skfddi.o    hwmtm.o    fplustm.o  smt.o      cfm.o     \
index 1fe61a348437423c98d49f6573bb1a0f7a0a65d6..fbfd22489565ec98de2569147ccbf817cbeda4c0 100644 (file)
@@ -9,7 +9,6 @@ ifeq ($(CONFIG_LANMEDIA),y)
     O_OBJS = lmc_debug.o lmc_media.o lmc_main.o lmc_proto.o
 else
   ifeq ($(CONFIG_LANMEDIA),m)
-    MOD_LIST_NAME := NET_MODULES
     M_OBJS := lmc.o
     O_TARGET := lmc.o
     O_OBJS = lmc_debug.o lmc_media.o lmc_main.o lmc_proto.o
index 709228dc6d3f56c94e73aa5414b91bea9499c545..f37e8f2837728ea609bdbbf9327c4e37d545e0b9 100644 (file)
@@ -2111,7 +2111,7 @@ struct parport *__devinit parport_pc_probe_port (unsigned long int base,
 #undef printmode
        printk("]\n");
        if (probedirq != PARPORT_IRQ_NONE) 
-               printk("%s: irq %d detected\n", p->name, probedirq);
+               printk(KERN_INFO "%s: irq %d detected\n", p->name, probedirq);
        parport_proc_register(p);
 
        request_region (p->base, 3, p->name);
index b1ac19022df6b1b4ebb849fbdfa4d7852daadf18..6491ac4b0a555ca6eba3c30c2473515a31abe113 100644 (file)
@@ -12,8 +12,6 @@ SUB_DIRS     :=
 MOD_SUB_DIRS := $(SUB_DIRS)
 ALL_SUB_DIRS := $(SUB_DIRS)
 
-MOD_LIST_NAME := PCMCIA_MODULES
-
 ifeq ($(CONFIG_PCMCIA),y)
   O_OBJS   := cistpl.o rsrc_mgr.o bulkmem.o
   OX_OBJS  := ds.o cs.o
index 85d58ad780b58b0aeb4fbe214c2987dfec726ca9..30995bbbe05a1d3830af2a00359a6b7637abdf38 100644 (file)
@@ -975,8 +975,10 @@ int pcmcia_deregister_client(client_handle_t handle)
        client = &s->clients;
        while ((*client) && ((*client) != handle))
            client = &(*client)->next;
-       if (*client == NULL)
+       if (*client == NULL) {
+           spin_unlock_irqrestore(&s->lock, flags);
            return CS_BAD_HANDLE;
+       }
        *client = handle->next;
        handle->client_magic = 0;
        kfree(handle);
index 1292c50f6f38820561177c0fa7fab7a8c76cc905..de225879f0d78ffafde4f64a446897b83d4aad09 100644 (file)
@@ -6,11 +6,10 @@
 #
 
 O_TARGET := scsidrv.o
-MOD_LIST_NAME := SCSI_MODULES
 
 SUB_DIRS       :=
 MOD_SUB_DIRS   :=
-MOD_IN_SUBDIRS :=
+MOD_IN_SUB_DIRS        :=
 ALL_SUB_DIRS   := $(SUB_DIRS) pcmcia
 
 ifeq ($(CONFIG_PCMCIA),y)
index d37c6fc5f31e7957ad15b55eeafbc240c87553e9..2e0c1323df8ab78b27ac932a499b8686fd7f2ae0 100644 (file)
@@ -8,8 +8,6 @@ SUB_DIRS     :=
 MOD_SUB_DIRS := $(SUB_DIRS)
 ALL_SUB_DIRS := $(SUB_DIRS)
 
-MOD_LIST_NAME := PCMCIA_SCSI_MODULES
-
 obj-y          :=
 obj-m          :=
 obj-n          :=
index cc5bb1c4876ccddbacbdc11fcd376aa0c0dfbd76..75493008ed6dc7022b2ed2bfcfe573116efc8782 100644 (file)
@@ -1467,9 +1467,9 @@ static int sg_build_dir(Sg_request * srp, Sg_fd * sfp, int dxfer_len)
     }
     schp->mapped = 1;
     kp = schp->kiobp;
-    prev_addr = page_address(kp->maplist[0]);
+    prev_addr = (unsigned long) page_address(kp->maplist[0]);
     for (k = 1, split = 0; k < kp->nr_pages; ++k, prev_addr = addr) {
-       addr = page_address(kp->maplist[k]);
+       addr = (unsigned long) page_address(kp->maplist[k]);
        if ((prev_addr + PAGE_SIZE) != addr) {
            split = k;
            break;
@@ -1477,7 +1477,7 @@ static int sg_build_dir(Sg_request * srp, Sg_fd * sfp, int dxfer_len)
     }
     if (! split) {
        schp->k_use_sg = 0;
-       schp->buffer = (void *)(page_address(kp->maplist[0]) + kp->offset);
+       schp->buffer = page_address(kp->maplist[0]) + kp->offset;
        schp->bufflen = dxfer_len;
        schp->buffer_mem_src = SG_USER_MEM;
        schp->b_malloc_len = dxfer_len;
@@ -1497,7 +1497,7 @@ static int sg_build_dir(Sg_request * srp, Sg_fd * sfp, int dxfer_len)
        offset = (0 == k) ? kp->offset : 0;
        num = (rem_sz > (PAGE_SIZE - offset)) ? (PAGE_SIZE - offset) :
                                                rem_sz;
-       sclp->address = (void *)(page_address(kp->maplist[k]) + offset);
+       sclp->address = page_address(kp->maplist[k]) + offset;
        sclp->length = num;
        mem_src_arr[k] = SG_USER_MEM;
        rem_sz -= num;
index 3de37311c28ab732a09320b86959ba9ca79e3584..fe070f71b78acc3e717d8ed0ff794ef67835fade 100644 (file)
@@ -14,7 +14,6 @@ ALL_SUB_DIRS := $(SUB_DIRS) char
 
 L_OBJS   := 
 L_TARGET := sgi.a
-MOD_LIST_NAME := SGI_MODULES
 
 # Character and Audio devices for SGI machines.
 #
index 399148c74129efd08ce87f9bf2b8d15bbcfd0e38..879951c4cc6c715851491bb5e8d9008a92e5435d 100644 (file)
@@ -92,11 +92,11 @@ endif
 
 ifeq ($(CONFIG_DMASOUND),y)
   SUB_DIRS += dmasound
-  MOD_SUB_DIRS += dmasound
+  MOD_IN_SUB_DIRS += dmasound
   obj-y += dmasound/dmasound.o
 else
   ifeq ($(CONFIG_DMASOUND),m)
-    MOD_SUB_DIRS += dmasound
+    MOD_IN_SUB_DIRS += dmasound
   endif
 endif
 
@@ -148,7 +148,6 @@ obj-y               := $(filter-out $(list-multi), $(obj-y)) $(int-y)
 # Translate to Rules.make lists.
 
 O_TARGET       := sounddrivers.o
-MOD_LIST_NAME  := SOUND_MODULES
 
 O_OBJS         := $(filter-out $(export-objs), $(obj-y))
 OX_OBJS                := $(filter     $(export-objs), $(obj-y))
index 3598dc269ffa1237f0037516008d6ba44e921412..5831dd1d9c3db517888e80b089523d9273ff96c7 100644 (file)
@@ -14,7 +14,6 @@ ALL_SUB_DIRS  := $(SUB_DIRS) serial storage
 O_TARGET       := usbdrv.o
 M_OBJS         :=
 O_OBJS         :=
-MOD_LIST_NAME  := USB_MODULES
 
 # Objects that export symbols.
 
index 6b85a15f09c5cee80d457397ec02d209c0468df4..86360f68796aa179f3f0d98680ae6c2824fcf83f 100644 (file)
@@ -205,8 +205,10 @@ static inline unsigned long uvirt_to_kva(pgd_t *pgd, unsigned long adr)
                if (!pmd_none(*pmd)) {
                        ptep = pte_offset(pmd, adr);
                        pte = *ptep;
-                       if (pte_present(pte))
-                               ret = page_address(pte_page(pte)) | (adr & (PAGE_SIZE-1));
+                       if (pte_present(pte)) {
+                               ret = (unsigned long) page_address(pte_page(pte));
+                               ret |= (adr & (PAGE_SIZE - 1));
+                       }
                }
        }
        MDEBUG(printk("uv2kva(%lx-->%lx)", adr, ret));
index 73e3a5be17ea4d9115804d18105ac1ba57ec452c..055099a0c4b51b1e13f4e7a6006359caae89a886 100644 (file)
@@ -207,9 +207,10 @@ static inline unsigned long uvirt_to_kva(pgd_t *pgd, unsigned long adr)
                if (!pmd_none(*pmd)) {
                        ptep = pte_offset(pmd, adr);
                        pte = *ptep;
-                       if (pte_present(pte))
-                               ret = page_address(pte_page(pte)) |
-                                     (adr & (PAGE_SIZE-1));
+                       if (pte_present(pte)) {
+                               ret = (unsigned long) page_address(pte_page(pte));
+                               ret |= (adr & (PAGE_SIZE - 1));
+                       }
                }
        }
 
index 31f913ff9f63c6e45bbccf05e6d0bdbe35d20c93..ce5d7b128f152409e333cb5c554bca5b5a0551d0 100644 (file)
@@ -5,7 +5,6 @@
 O_TARGET       := usb-serial.o
 M_OBJS         :=
 O_OBJS         :=
-MOD_LIST_NAME  := USB_SERIAL_MODULES
 
 # Object file lists.
 
index 1b204ab28bc33c0ed15c37fd6d865bf600da3292..7da59f78eb92a7ad19eb8120e7d7c550d1d3a28f 100644 (file)
@@ -5,7 +5,6 @@
 O_TARGET       := usb-storage.o
 M_OBJS         := usb-storage.o
 O_OBJS         := scsiglue.o protocol.o transport.o usb.o 
-MOD_LIST_NAME  := USB_STORAGE_MODULES
 
 CFLAGS_scsiglue.o:= -I../../scsi/
 CFLAGS_protocol.o:= -I../../scsi/
index cfa8715030730c9d927a5f5d769539c04793b16f..367f0d3f6a00aa0ef7b37ede327b4550fd6e6401 100644 (file)
@@ -960,13 +960,20 @@ static ed_t * ep_add_ed (struct usb_device * usb_dev, unsigned int pipe, int int
        ed = ed_ret = &(usb_to_ohci (usb_dev)->ed[(usb_pipeendpoint (pipe) << 1) | 
                        (usb_pipecontrol (pipe)? 0: usb_pipeout (pipe))]);
 
-       if((ed->state & ED_DEL) || (ed->state & ED_URB_DEL)) 
-               return NULL; /* pending delete request */
+       if ((ed->state & ED_DEL) || (ed->state & ED_URB_DEL)) {
+               /* pending delete request */
+               spin_unlock (&usb_ed_lock);
+               return NULL;
+       }
        
        if (ed->state == ED_NEW) {
                ed->hwINFO = cpu_to_le32 (OHCI_ED_SKIP); /* skip ed */
                OHCI_ALLOC (td, sizeof (*td)); /* dummy td; end of td list for ed */
-               if(!td) return NULL; /* out of memory */
+               if (!td) {
+                       /* out of memory */
+                       spin_unlock (&usb_ed_lock);
+                       return NULL;
+               }
                ed->hwTailP = cpu_to_le32 (virt_to_bus (td));
                ed->hwHeadP = ed->hwTailP;      
                ed->state = ED_UNLINK;
index 886229370e781b1e3a491802af96881192e1818d..d3b8959d4adbb61c56e4b3d1af8c6488612bb928 100644 (file)
@@ -10,8 +10,6 @@ ALL_SUB_DIRS    := $(SUB_DIRS) matrox riva
 O_TARGET := video.o
 O_OBJS   :=
 M_OBJS   :=
-# This is a nice idea but needs depmod altering
-# MOD_LIST_NAME := VIDEO_MODULES
 
 # All of the (potential) objects that export symbols.
 # This list comes from 'grep -l EXPORT_SYMBOL *.[hc]'.
index 0a1473520fab423735fcb1012be0a3731afb2d0f..1888331ac3e79bcee8ce752847e14951f94b37b9 100644 (file)
@@ -1208,11 +1208,6 @@ static struct fb_videomode __devinitdata cyber2000fb_default_mode = {
        vmode:          FB_VMODE_NONINTERLACED
 };
 
-int __init cyber2000fb_setup(char *options)
-{
-       return 0;
-}
-
 static char igs_regs[] __devinitdata = {
                                        0x12, 0x00,     0x13, 0x00,
                                        0x16, 0x00,
index 20b8c4b2ae5496779f689b99f1eee481a3dbf75b..bd7618def5c0f72385b4f804e45c3efa44739639 100644 (file)
@@ -1066,7 +1066,7 @@ int __init cyberfb_init(void)
            CyberRegs_phys = CyberMem_phys + 0x00c00000;
            if (!request_mem_region(CyberRegs_phys, 0x10000, "S3 Trio64"))
                continue;
-           if (!request_mem_region(CyberMem_phys, 0x4000000, "RAM")) {
+           if (!request_mem_region(CyberMem_phys, 0x400000, "RAM")) {
                release_mem_region(CyberRegs_phys, 0x10000);
                continue;
            }
@@ -1110,7 +1110,8 @@ int __init cyberfb_init(void)
 
            if (register_framebuffer(&fb_info) < 0) {
                    DPRINTK("EXIT - register_framebuffer failed\n");
-                   release_mem_region(board_addr, board_size);
+                   release_mem_region(CyberMem_phys, 0x400000);
+                   release_mem_region(CyberRegs_phys, 0x10000);
                    return -EINVAL;
            }
 
index 5d7ab81a5550baff6d05065edfbfc07a17e26c44..205703be451508653f60f2eae020dbe0a9b09423 100644 (file)
 #define SWAP(A) ((A>>8) | ((A&0xff) <<8))
 
 
-void dn_video_setup(char *options, int *ints);
-
 /* frame buffer operations */
 
 static int dn_fb_get_fix(struct fb_fix_screeninfo *fix, int con, 
@@ -364,12 +362,6 @@ static void dnfbcon_blank(int blank,  struct fb_info *info) {
 
 }
 
-void dn_video_setup(char *options, int *ints) {
-       
-       return;
-
-}
-
 void dn_bitblt(struct display *p,int x_src,int y_src, int x_dest, int y_dest,
                int x_count, int y_count) {
 
index fa2cb1e676dc36ae7835ed4477c430ece69ce18b..a654717b3d2f96740d4d46e6a1ea8c40dabd719b 100644 (file)
 #define SWAP(A) ((A>>8) | ((A&0xff) <<8))
 
 
-void dn_video_setup(char *options, int *ints);
-
 /* frame buffer operations */
 
 static int dn_fb_get_fix(struct fb_fix_screeninfo *fix, int con, 
@@ -353,12 +351,6 @@ static void dnfbcon_blank(int blank,  struct fb_info *info) {
 
 }
 
-void dn_video_setup(char *options, int *ints) {
-       
-       return;
-
-}
-
 void dn_bitblt(struct display *p,int x_src,int y_src, int x_dest, int y_dest,
                int x_count, int y_count) {
 
index 6fd59a64dfacaa3908fca15d62b52d1963bcdef9..2deaeca27e7df9b8d6421e3f57b625e11fd28826 100644 (file)
 #endif
 
 
-void dn_video_setup(char *options, int *ints);
-
 /* frame buffer operations */
 
 static int dn_fb_get_fix(struct fb_fix_screeninfo *fix, int con, 
@@ -366,12 +364,6 @@ static void dnfbcon_blank(int blank,  struct fb_info *info) {
 
 }
 
-void dn_video_setup(char *options, int *ints) {
-       
-       return;
-
-}
-
 void dn_bitblt(struct display *p,int x_src,int y_src, int x_dest, int y_dest,
                int x_count, int y_count) {
 
index 6ca8c3dcfea8f236c171dfc871de4805509f7030..07b912ebf8aac64c7b8a82cbfeb21d75887b9181 100644 (file)
@@ -57,13 +57,11 @@ extern int cyberfb_setup(char*);
 extern int pm2fb_init(void);
 extern int pm2fb_setup(char*);
 extern int cyber2000fb_init(void);
-extern int cyber2000fb_setup(char*);
 extern int retz3fb_init(void);
 extern int retz3fb_setup(char*);
 extern int clgenfb_init(void);
 extern int clgenfb_setup(char*);
 extern int hitfb_init(void);
-extern int hitfb_setup(char*);
 extern int vfb_init(void);
 extern int vfb_setup(char*);
 extern int offb_init(void);
@@ -91,7 +89,6 @@ extern int hgafb_setup(char*);
 extern int matroxfb_init(void);
 extern int matroxfb_setup(char*);
 extern int hpfb_init(void);
-extern int hpfb_setup(char*);
 extern int sbusfb_init(void);
 extern int sbusfb_setup(char*);
 extern int control_init(void);
@@ -103,7 +100,6 @@ extern int valkyriefb_setup(char*);
 extern int chips_init(void);
 extern int g364fb_init(void);
 extern int sa1100fb_init(void);
-extern int sa1100fb_setup(char*);
 extern int fm2fb_init(void);
 extern int fm2fb_setup(char*);
 extern int q40fb_init(void);
@@ -146,7 +142,7 @@ static struct {
        { "cyber", cyberfb_init, cyberfb_setup },
 #endif
 #ifdef CONFIG_FB_CYBER2000
-       { "cyber2000", cyber2000fb_init, cyber2000fb_setup },
+       { "cyber2000", cyber2000fb_init, NULL },
 #endif
 #ifdef CONFIG_FB_PM2
        { "pm2fb", pm2fb_init, pm2fb_setup },
@@ -232,7 +228,7 @@ static struct {
        { "hga", hgafb_init, hgafb_setup },
 #endif 
 #ifdef CONFIG_FB_IGA
-        { "igafb", igafb_init, igafb_setup },
+       { "igafb", igafb_init, igafb_setup },
 #endif
 #ifdef CONFIG_APOLLO
        { "apollo", dnfb_init, NULL },
@@ -244,19 +240,19 @@ static struct {
        { "tga", tgafb_init, tgafb_setup },
 #endif
 #ifdef CONFIG_FB_HP300
-       { "hpfb", hpfb_init, hpfb_setup },
+       { "hpfb", hpfb_init, NULL },
 #endif 
 #ifdef CONFIG_FB_G364
        { "g364", g364fb_init, NULL },
 #endif
 #ifdef CONFIG_FB_SA1100
-       { "sa1100", sa1100fb_init, sa1100fb_setup },
+       { "sa1100", sa1100fb_init, NULL },
 #endif
 #ifdef CONFIG_FB_SUN3
-       { "sun3", sun3fb_init, sun3fb_setup },
+       { "sun3", sun3fb_init, sun3fb_setup },
 #endif
 #ifdef CONFIG_FB_HIT
-       { "hitfb", hitfb_init, hitfb_setup },
+       { "hitfb", hitfb_init, NULL },
 #endif
 
        /*
@@ -604,7 +600,7 @@ fb_mmap(struct file *file, struct vm_area_struct * vma)
        pgprot_val(vma->vm_page_prot) &= ~(PTE_CACHEABLE | PTE_BUFFERABLE);
 #endif
 #elif defined(__sh__)
-        pgprot_val(vma->vm_page_prot) &= ~_PAGE_CACHABLE;
+       pgprot_val(vma->vm_page_prot) &= ~_PAGE_CACHABLE;
 #else
 #warning What do we have to do here??
 #endif
index 589823acd2704a3322f9291ab661e14b525d7f2b..e48d8a74ca81231109a3ff7c512eab04194ce800 100644 (file)
@@ -68,7 +68,6 @@ unsigned long hit_videobase, hit_videosize;
 static struct fb_var_screeninfo default_var;
 
 int hitfb_init(void);
-int hitfb_setup(char*);
 
 static void hitfb_set_par(struct hitfb_par *par, const struct fb_info *info);
 static void hitfb_encode_var(struct fb_var_screeninfo *var, 
@@ -338,12 +337,6 @@ void hitfb_cleanup(struct fb_info *info)
 }
 
 
-int __init hitfb_setup(char *options)
-{
-    return 0;
-}
-
-
 #ifdef MODULE
 int init_module(void)
 {
index 4bfc4a9ef8247ce2316f83ecb392aaf60c08f262..9e3be3e2709c149f19482820530acea0da5d42aa 100644 (file)
@@ -399,8 +399,3 @@ int __init hpfb_init(void)
 
        return 0;
 }
-
-int __init hpfb_setup(char *options)
-{
-       return 0;
-}
index 6de9be372629084e0289734269292204ab5ec843..fcf02722b627dca3d3a88c5e54563762109d1cb7 100644 (file)
@@ -10,8 +10,6 @@ ALL_SUB_DIRS    := $(SUB_DIRS)
 O_TARGET := matrox.o
 O_OBJS   :=
 M_OBJS   :=
-# This is a nice idea but needs depmod altering
-# MOD_LIST_NAME := VIDEO_MODULES
 
 # All of the (potential) objects that export symbols.
 # This list comes from 'grep -l EXPORT_SYMBOL *.[hc]'.
index df2d81b667eb901a7729158b4604bb7d46e6ccdc..7a91d0b01c4bf90384717955b0ddf283404287b0 100644 (file)
@@ -1197,9 +1197,3 @@ int __init sa1100fb_init(void)
 
        return 0;
 }
-
-int __init sa1100fb_setup(char *options)
-{
-       return 0;
-}
-
index 7fcbf0bd5579ae4c81bb2d2da8a852e6780618f1..e1751e84e088c60fbaf335b790dbff542cfe2703 100644 (file)
@@ -823,8 +823,8 @@ static int sgivwfb_set_cmap(struct fb_cmap *cmap, int kspc, int con,
   int err;
 
   if (!fb_display[con].cmap.len) {     /* no colormap allocated? */
-    if ((err = fb_alloc_cmap(&fb_display[con].cmap,
-                            1<<fb_display[con].var.bits_per_pixel, 0)))
+    int size = fb_display[con].var.bits_per_pixel == 16 ? 32 : 256;
+    if ((err = fb_alloc_cmap(&fb_display[con].cmap, size, 0)))
       return err;
   }
   if (con == currcon)                  /* current console? */
index 7573a7f9595d08e4eae5e021bddab9cb8f39378e..4e67ec80867eaf41e7ca9febb11a232bd73e45d3 100644 (file)
@@ -15,8 +15,7 @@ O_OBJS    = open.o read_write.o devices.o file_table.o buffer.o \
                dcache.o inode.o attr.o bad_inode.o file.o iobuf.o \
                $(BINFMTS) $(FILESYSTEMS)
 
-MOD_LIST_NAME := FS_MODULES
-ALL_SUB_DIRS = coda minix ext2 fat msdos vfat proc isofs nfs umsdos ntfs \
+ALL_SUB_DIRS := coda minix ext2 fat msdos vfat proc isofs nfs umsdos ntfs \
                hpfs sysv smbfs ncpfs ufs efs affs romfs autofs hfs lockd \
                nfsd nls devpts devfs adfs partitions qnx4 udf bfs cramfs \
                openpromfs autofs4 ramfs jffs
index e6134c203f72da751a715475dfd1f6f4157bab04..b296dad7b1fd74ec316ad01bbf6a4d74f37c3d42 100644 (file)
@@ -1149,7 +1149,7 @@ void set_bh_page (struct buffer_head *bh, struct page *page, unsigned long offse
                 */
                bh->b_data = (char *)(0 + offset);
        else
-               bh->b_data = (char *)(page_address(page) + offset);
+               bh->b_data = page_address(page) + offset;
 }
 
 /*
@@ -1475,6 +1475,8 @@ static int __block_prepare_write(struct inode *inode, struct page *page,
                                        memset(kaddr+to, 0, block_end-to);
                                if (block_start < from)
                                        memset(kaddr+block_start, 0, from-block_start);
+                               if (block_end > to || block_start < from)
+                                       flush_dcache_page(page);
                                continue;
                        }
                }
@@ -1578,6 +1580,7 @@ int block_read_full_page(struct page *page, get_block_t *get_block)
                                if (!kaddr)
                                        kaddr = kmap(page);
                                memset((char *)(kaddr + i*blocksize), 0, blocksize);
+                               flush_dcache_page(page);
                                set_bit(BH_Uptodate, &bh->b_state);
                                continue;
                        }
@@ -1642,8 +1645,9 @@ int cont_prepare_write(struct page *page, unsigned offset, unsigned to, get_bloc
                                                PAGE_CACHE_SIZE, get_block);
                if (status)
                        goto out_unmap;
-               kaddr = (char*)page_address(new_page);
+               kaddr = page_address(new_page);
                memset(kaddr+zerofrom, 0, PAGE_CACHE_SIZE-zerofrom);
+               flush_dcache_page(new_page);
                __block_commit_write(inode, new_page, zerofrom, PAGE_CACHE_SIZE);
                kunmap(new_page);
                UnlockPage(new_page);
@@ -1670,9 +1674,10 @@ int cont_prepare_write(struct page *page, unsigned offset, unsigned to, get_bloc
        status = __block_prepare_write(inode, page, zerofrom, to, get_block);
        if (status)
                goto out1;
-       kaddr = (char*)page_address(page);
+       kaddr = page_address(page);
        if (zerofrom < offset) {
                memset(kaddr+zerofrom, 0, offset-zerofrom);
+               flush_dcache_page(page);
                __block_commit_write(inode, page, zerofrom, offset);
        }
        return 0;
@@ -1733,7 +1738,8 @@ int block_write_full_page(struct page *page, get_block_t *get_block)
        /* Sigh... will have to work, then... */
        err = __block_prepare_write(inode, page, 0, offset, get_block);
        if (!err) {
-               memset((char *)page_address(page)+offset, 0, PAGE_CACHE_SIZE-offset);
+               memset(page_address(page) + offset, 0, PAGE_CACHE_SIZE - offset);
+               flush_dcache_page(page);
                __block_commit_write(inode,page,0,offset);
 done:
                kunmap(page);
@@ -2035,7 +2041,7 @@ int block_symlink(struct inode *inode, const char *symname, int len)
        err = mapping->a_ops->prepare_write(NULL, page, 0, len-1);
        if (err)
                goto fail_map;
-       kaddr = (char*)page_address(page);
+       kaddr = page_address(page);
        memcpy(kaddr, symname, len-1);
        mapping->a_ops->commit_write(NULL, page, 0, len-1);
        /*
index 3f51c2aa1914e14b53e1dd3d5761cc0c6aebf416..8b0a9142654e71f42d88fb91cd82bb8044fab8c2 100644 (file)
@@ -328,12 +328,13 @@ static int cramfs_readpage(struct file *file, struct page * page)
                if (compr_len == 0)
                        ; /* hole */
                else
-                       bytes_filled = cramfs_uncompress_block((void *) page_address(page),
+                       bytes_filled = cramfs_uncompress_block(page_address(page),
                                 PAGE_CACHE_SIZE,
                                 cramfs_read(sb, start_offset, compr_len),
                                 compr_len);
        }
-       memset((void *) (page_address(page) + bytes_filled), 0, PAGE_CACHE_SIZE - bytes_filled);
+       memset(page_address(page) + bytes_filled, 0, PAGE_CACHE_SIZE - bytes_filled);
+       flush_dcache_page(page);
        SetPageUptodate(page);
        UnlockPage(page);
        return 0;
index d162f885255a01c7b44309f471dab0dbdd0e862f..93aae1c7f6833e726c2bb9314681f8f172940f76 100644 (file)
--- a/fs/exec.c
+++ b/fs/exec.c
@@ -223,6 +223,7 @@ int copy_strings(int argc,char ** argv, struct linux_binprm *bprm)
                                        memset(kaddr+offset+len, 0, PAGE_SIZE-offset-len);
                        }
                        err = copy_from_user(kaddr + offset, str, bytes_to_copy);
+                       flush_dcache_page(page);
                        flush_page_to_ram(page);
                        kunmap(page);
 
index 8ca28e0a094e06e712f25177d392a79b9d3fb677..831aa67e942d41cbf01d2370c42450ba2694d5a3 100644 (file)
@@ -540,23 +540,14 @@ got_block:
         * Do block preallocation now if required.
         */
 #ifdef EXT2_PREALLOCATE
-       if (prealloc_block) {
+       /* Writer: ->i_prealloc* */
+       if (prealloc_count && !*prealloc_count) {
                int     prealloc_goal;
                unsigned long next_block = tmp + 1;
 
                prealloc_goal = es->s_prealloc_blocks ?
                        es->s_prealloc_blocks : EXT2_DEFAULT_PREALLOC_BLOCKS;
 
-               /* Writer: ->i_prealloc* */
-               /*
-                * Can't happen right now, will need handling if we go for
-                * per-group spinlocks. Handling == skipping preallocation if
-                * condition below will be true. For now there is no legitimate
-                * way it could happen, thus the BUG().
-                */
-               if (*prealloc_count)
-                       BUG();
-               *prealloc_count = 0;
                *prealloc_block = next_block;
                /* Writer: end */
                for (k = 1;
index b1973918d2f023fae60ae0b0a45aa66e5b764662..06ac42709dc41a34647a857d005ff388ea25e7aa 100644 (file)
@@ -623,7 +623,7 @@ jffs_lookup_end:
 static int
 jffs_readpage(struct file *file, struct page *page)
 {
-       unsigned long buf;
+       void *buf;
        unsigned long read_len;
        int result = -EIO;
        struct inode *inode = (struct inode*)page->mapping->host;
@@ -643,10 +643,10 @@ jffs_readpage(struct file *file, struct page *page)
        offset = page->index << PAGE_CACHE_SHIFT;
        if (offset < inode->i_size) {
                read_len = jffs_min(inode->i_size - offset, PAGE_SIZE);
-               r = jffs_read_data(f, (char *)buf, offset, read_len);
+               r = jffs_read_data(f, buf, offset, read_len);
                if (r == read_len) {
                        if (read_len < PAGE_SIZE) {
-                               memset((void *)(buf + read_len), 0,
+                               memset(buf + read_len, 0,
                                       PAGE_SIZE - read_len);
                        }
                        SetPageUptodate(page);
@@ -659,9 +659,10 @@ jffs_readpage(struct file *file, struct page *page)
                });
        }
        if (result) {
-               memset((void *)buf, 0, PAGE_SIZE);
+               memset(buf, 0, PAGE_SIZE);
                SetPageError(page);
        }
+       flush_dcache_page(page);
 
        UnlockPage(page);
        
index 08d28d895d32135f4cdd2c4dcb079e736419ecd1..041dd078580a91fd4f2e333822bf3c6c48bbc877 100644 (file)
@@ -89,6 +89,7 @@ static struct page* ncp_file_mmap_nopage(struct vm_area_struct *area,
        if (already_read < PAGE_SIZE)
                memset((char*)(pg_addr + already_read), 0, 
                       PAGE_SIZE - already_read);
+       flush_dcache_page(page);
        kunmap(page);
        return page;
 }
index e51adbd86890ecfed3b9eb2fc99cbdd8868ca566..6575040d934be4a3a355c557500f41ec216e3702 100644 (file)
@@ -134,6 +134,7 @@ nfs_readpage_sync(struct file *file, struct page *page)
        } while (count);
 
        memset(buffer, 0, count);
+       flush_dcache_page(page);
        SetPageUptodate(page);
        if (PageError(page))
                ClearPageError(page);
@@ -446,6 +447,7 @@ nfs_readpage_result(struct rpc_task *task)
                        count -= PAGE_CACHE_SIZE;
                } else
                        SetPageError(page);
+               flush_dcache_page(page);
                kunmap(page);
                UnlockPage(page);
 
index 8ffa8e67b66c4ea85cfeb1771c7156253945a25d..893d3e1e9618a1ddcd2eea71af8fdae4e191dfb2 100644 (file)
@@ -2,8 +2,6 @@
 # Makefile for native language support
 #
 
-MOD_LIST_NAME := NLS_MODULES
-
 obj-y  :=      nls_base.o
 obj-m  :=
 obj-n  :=
index 22833d064091e54ddb49fd7fc4b1e63788e7d2aa..dc424b72e4223687a9b43c41105f8c0e1cb94672 100644 (file)
@@ -65,7 +65,8 @@ static struct dentry * ramfs_lookup(struct inode *dir, struct dentry *dentry)
 static int ramfs_readpage(struct file *file, struct page * page)
 {
        if (!Page_Uptodate(page)) {
-               memset((void *) page_address(page), 0, PAGE_CACHE_SIZE);
+               memset(page_address(page), 0, PAGE_CACHE_SIZE);
+               flush_dcache_page(page);
                SetPageUptodate(page);
        }
        UnlockPage(page);
@@ -89,6 +90,7 @@ static int ramfs_prepare_write(struct file *file, struct page *page, unsigned of
        addr = (void *) kmap(page);
        if (!Page_Uptodate(page)) {
                memset(addr, 0, PAGE_CACHE_SIZE);
+               flush_dcache_page(page);
                SetPageUptodate(page);
        }
        SetPageDirty(page);
index 47665f936a9bdfe711bf4db7a80ae5ceeaf29cff..8d01f17baeb1c403da200e042974c2dbc658ae49 100644 (file)
@@ -391,8 +391,8 @@ static int
 romfs_readpage(struct file *file, struct page * page)
 {
        struct inode *inode = (struct inode*)page->mapping->host;
-       unsigned long buf;
        unsigned long offset, avail, readlen;
+       void *buf;
        int result = -EIO;
 
        lock_kernel();
@@ -404,22 +404,23 @@ romfs_readpage(struct file *file, struct page * page)
        if (offset < inode->i_size) {
                avail = inode->i_size-offset;
                readlen = min(avail, PAGE_SIZE);
-               if (romfs_copyfrom(inode, (void *)buf, inode->u.romfs_i.i_dataoffset+offset, readlen) == readlen) {
+               if (romfs_copyfrom(inode, buf, inode->u.romfs_i.i_dataoffset+offset, readlen) == readlen) {
                        if (readlen < PAGE_SIZE) {
-                               memset((void *)(buf+readlen),0,PAGE_SIZE-readlen);
+                               memset(buf + readlen,0,PAGE_SIZE-readlen);
                        }
                        SetPageUptodate(page);
                        result = 0;
                }
        }
        if (result) {
-               memset((void *)buf, 0, PAGE_SIZE);
+               memset(buf, 0, PAGE_SIZE);
                SetPageError(page);
        }
+       flush_dcache_page(page);
 
        UnlockPage(page);
 
-       free_page(buf);
+       __free_page(page);
        unlock_kernel();
 
        return result;
index ec709e3e3617aa37c5112c5f5e25792a6ce469a8..135e8707cc68a679b8dfdf6edda7717a855ad3db 100644 (file)
@@ -38,7 +38,7 @@ smb_fsync(struct file *file, struct dentry * dentry, int datasync)
 static int
 smb_readpage_sync(struct dentry *dentry, struct page *page)
 {
-       char *buffer = (char *) page_address(page);
+       char *buffer = page_address(page);
        unsigned long offset = page->index << PAGE_CACHE_SHIFT;
        int rsize = smb_get_rsize(server_from_dentry(dentry));
        int count = PAGE_SIZE;
@@ -72,6 +72,7 @@ smb_readpage_sync(struct dentry *dentry, struct page *page)
        } while (count);
 
        memset(buffer, 0, count);
+       flush_dcache_page(page);
        SetPageUptodate(page);
        result = 0;
 
@@ -89,7 +90,7 @@ smb_readpage(struct file *file, struct page *page)
        int             error;
        struct dentry  *dentry = file->f_dentry;
 
-       DEBUG1("readpage %08lx\n", page_address(page));
+       DEBUG1("readpage %p\n", page_address(page));
 
        get_page(page);
        error = smb_readpage_sync(dentry, page);
@@ -106,7 +107,7 @@ smb_writepage_sync(struct dentry *dentry, struct page *page,
                   unsigned long offset, unsigned int count)
 {
        struct inode *inode = dentry->d_inode;
-       u8 *buffer = (u8 *) page_address(page) + offset;
+       u8 *buffer = page_address(page) + offset;
        int wsize = smb_get_wsize(server_from_dentry(dentry));
        int result, written = 0;
 
index 662647088acab18f5c040f8a4bde6ef3c50b9c53..0b3dce0d1278b045809ccd44c00ca138b91989e3 100644 (file)
@@ -60,6 +60,7 @@ static int udf_adinicb_readpage(struct file *file, struct page * page)
        bh = bread (inode->i_dev, block, inode->i_sb->s_blocksize);
        memcpy(kaddr, bh->b_data + udf_ext0_offset(inode), inode->i_size);
        brelse(bh);
+       flush_dcache_page(page);
        SetPageUptodate(page);
        kunmap(page);
        UnlockPage(page);
@@ -100,7 +101,7 @@ static int udf_adinicb_commit_write(struct file *file, struct page *page, unsign
 
        struct buffer_head *bh;
        int block;
-       char *kaddr = (char*)page_address(page);
+       char *kaddr = page_address(page);
 
        block = udf_get_lb_pblock(inode->i_sb, UDF_I_LOCATION(inode), 0);
        bh = bread (inode->i_dev, block, inode->i_sb->s_blocksize);
index bbc4e30a5074f52015d914a4339a161544affc7a..e7e6c53e86e416695c474f07586565054c817fd5 100644 (file)
@@ -188,6 +188,7 @@ void udf_expand_file_adinicb(struct inode * inode, int newsize, int * err)
                        PAGE_CACHE_SIZE - UDF_I_LENALLOC(inode));
                memcpy((char *)kaddr, bh->b_data + udf_file_entry_alloc_offset(inode),
                        UDF_I_LENALLOC(inode));
+               flush_dcache_page(page);
                SetPageUptodate(page);
                kunmap(page);
        }
index 9e4ace724d788afe79c700b68556461f27c62bd2..a8de0def8aa699b447e3ff7a585d777d0fb70b6d 100644 (file)
@@ -142,7 +142,7 @@ int umsdos_emd_dir_readentry (struct dentry *demd, loff_t *pos, struct umsdos_di
        recsize = umsdos_evalrecsize(p->name_len);
        if (offs + recsize > PAGE_CACHE_SIZE) {
                struct page *page2;
-               int part = ((char*)page_address(page)+PAGE_CACHE_SIZE)-p->spare;
+               int part = (page_address(page) + PAGE_CACHE_SIZE) - p->spare;
                page2 = read_cache_page(mapping, 1+(*pos>>PAGE_CACHE_SHIFT),
                                (filler_t*)mapping->a_ops->readpage, NULL);
                if (IS_ERR(page2)) {
@@ -236,7 +236,7 @@ int umsdos_writeentry (struct dentry *parent, struct umsdos_info *info,
        page = grab_cache_page(mapping, info->f_pos>>PAGE_CACHE_SHIFT);
        if (!page)
                goto out_dput;
-       p = (struct umsdos_dirent*)((char*)page_address(page)+offs);
+       p = (struct umsdos_dirent *) (page_address(page) + offs);
        if (offs + info->recsize > PAGE_CACHE_SIZE) {
                ret = mapping->a_ops->prepare_write(NULL,page,offs,
                                        PAGE_CACHE_SIZE);
@@ -261,8 +261,8 @@ int umsdos_writeentry (struct dentry *parent, struct umsdos_info *info,
                p->rdev = cpu_to_le16(entry->rdev);
                p->mode = cpu_to_le16(entry->mode);
                memcpy(p->name,entry->name,
-                       ((char*)page_address(page)+PAGE_CACHE_SIZE)-p->spare);
-               memcpy((char*)page_address(page2),
+                       (page_address(page) + PAGE_CACHE_SIZE) - p->spare);
+               memcpy(page_address(page2),
                                entry->spare+PAGE_CACHE_SIZE-offs,
                                offs+info->recsize-PAGE_CACHE_SIZE);
                ret = mapping->a_ops->commit_write(NULL,page2,0,
index 12b34e849ee016256c4d30a5b356ad51c6796e75..4aebe9bdaf6fa07abb6c2cc4a6d69f0fc719ba69 100644 (file)
@@ -230,7 +230,7 @@ dentry->d_parent->d_name.name, dentry->d_name.name, inode->u.umsdos_i.i_patched)
        ret=mapping->a_ops->prepare_write(NULL,page,offs,offs+UMSDOS_REC_SIZE);
        if (ret)
                goto out_unlock;
-       entry = (struct umsdos_dirent*)((char*)page_address(page)+offs);
+       entry = (struct umsdos_dirent *) (page_address(page) + offs);
        if (attr->ia_valid & ATTR_UID)
                entry->uid = cpu_to_le16(attr->ia_uid);
        if (attr->ia_valid & ATTR_GID)
index 36e9d37cb8d99169cd82e7322eb898f9d0c9a33a..45e5b3b598af966c77dac18e3af379e44b61ddc4 100644 (file)
@@ -17,6 +17,7 @@ extern void __load_new_mm_context(struct mm_struct *);
 #define flush_cache_range(mm, start, end)      do { } while (0)
 #define flush_cache_page(vma, vmaddr)          do { } while (0)
 #define flush_page_to_ram(page)                        do { } while (0)
+#define flush_dcache_page(page)                        do { } while (0)
 
 /* Note that the following two definitions are _highly_ dependent
    on the contexts in which they are used in the kernel.  I personally
index dd18dc490747a5b2513e0b75e247faea32ff0536..21bbad2c7314ca98e874d5323a109bf7eed60998 100644 (file)
@@ -1,7 +1,6 @@
 #ifndef _ALPHA_SOFTIRQ_H
 #define _ALPHA_SOFTIRQ_H
 
-#include <linux/config.h>
 #include <linux/stddef.h>
 #include <asm/atomic.h>
 #include <asm/hardirq.h>
index 5459eca079a557f79a87cceef7b9dc05aa2229c9..75250fb3bf18d0fa7921ae4457059d167b1c8347 100644 (file)
@@ -6,6 +6,7 @@
 #define flush_cache_range(mm,start,end)                do { } while (0)
 #define flush_cache_page(vma,vmaddr)           do { } while (0)
 #define flush_page_to_ram(page)                        do { } while (0)
+#define flush_dcache_page(page)                        do { } while (0)
 #define flush_icache_page(vma,page)            do { } while (0)
 #define flush_icache_range(start,end)          do { } while (0)
 
@@ -58,7 +59,7 @@ memc_update_addr(struct mm_struct *mm, pte_t pte, unsigned long vaddr)
 extern __inline__ void
 memc_clear(struct mm_struct *mm, struct page *page)
 {
-       cpu_memc_update_entry(mm->pgd, page_address(page), 0);
+       cpu_memc_update_entry(mm->pgd, (unsigned long) page_address(page), 0);
 
        if (mm == current->active_mm)
                processor._set_pgd(mm->pgd);
index b6e45ebc494146fbca301b7e793a6fbd162e1912..dbdc10f6b90ee652f687a2b125ef2b0eecefd228 100644 (file)
@@ -47,7 +47,7 @@
 #define flush_icache_page(vma,pg)                                      \
        do {                                                            \
                if ((vma)->vm_flags & PROT_EXEC)                        \
-                       cpu_flush_icache_page(page_address(pg));        \
+                       cpu_flush_icache_page((unsigned long) page_address(pg));        \
        } while (0)
 
 /*
  */
 static __inline__ void flush_page_to_ram(struct page *page)
 {
-       cpu_flush_ram_page(page_address(page));
+       cpu_flush_ram_page((unsigned long) page_address(page));
 }
 
+/* You guys might need to do something here. -DaveM */
+#define flush_dcache_page(page)                        do { } while (0)
+
 /*
  * TLB flushing:
  *
index 0964c435d481a23faf23a4a6c49470a0763f00c3..8370b7eb6002cdb92df069577c4b24ad8e70b69e 100644 (file)
@@ -61,7 +61,7 @@ extern inline unsigned long kmap(struct page *page)
        if (in_interrupt())
                BUG();
        if (page < highmem_start_page)
-               return page_address(page);
+               return (unsigned long) page_address(page);
        return kmap_high(page);
 }
 
@@ -86,7 +86,7 @@ extern inline unsigned long kmap_atomic(struct page *page, enum km_type type)
        unsigned long vaddr;
 
        if (page < highmem_start_page)
-               return page_address(page);
+               return (unsigned long) page_address(page);
 
        idx = type + KM_TYPE_NR*smp_processor_id();
        vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
index cfa011108cb02fd2cf0515c689eeab6b62325875..33d5a73e570ed7b0781bbf8d449a3493a982aec2 100644 (file)
@@ -26,6 +26,7 @@ extern void paging_init(void);
 #define flush_cache_range(mm, start, end)      do { } while (0)
 #define flush_cache_page(vma, vmaddr)          do { } while (0)
 #define flush_page_to_ram(page)                        do { } while (0)
+#define flush_dcache_page(page)                        do { } while (0)
 #define flush_icache_range(start, end)         do { } while (0)
 #define flush_icache_page(vma,pg)              do { } while (0)
 
index 8c7eb5c0dd60abfc0ab402ef8db7c53097a64828..0efc7f155577281ae5d0694addfd7b73d341ff08 100644 (file)
  * Given a pointer to an mem_map[] entry, return the kernel virtual
  * address corresponding to that page.
  */
-#define page_address(page)     (PAGE_OFFSET + (((page) - mem_map) << PAGE_SHIFT))
+#define page_address(page)     ((void *) (PAGE_OFFSET + (((page) - mem_map) << PAGE_SHIFT)))
 
 /*
  * Given a PTE, return the index of the mem_map[] entry corresponding
 #define flush_cache_range(mm, start, end)      do { } while (0)
 #define flush_cache_page(vma, vmaddr)          do { } while (0)
 #define flush_page_to_ram(page)                        do { } while (0)
+#define flush_dcache_page(page)                        do { } while (0)
 #define flush_icache_range(start, end)         do { } while (0)
 
 extern void ia64_flush_icache_page (unsigned long addr);
@@ -192,7 +193,7 @@ extern void ia64_flush_icache_page (unsigned long addr);
 #define flush_icache_page(vma,pg)                              \
 do {                                                           \
        if ((vma)->vm_flags & PROT_EXEC)                        \
-               ia64_flush_icache_page(page_address(pg));       \
+               ia64_flush_icache_page((unsigned long) page_address(pg));       \
 } while (0)
 
 /*
index 93f342308a84a23a354c2c33a044e63013fe0cd5..028b7c40ea1bb9ad6fd5c33c6f2bb4ab6ec74955 100644 (file)
@@ -277,7 +277,7 @@ extern inline void flush_cache_page(struct vm_area_struct *vma,
 }
 
 /* Push the page at kernel virtual address and clear the icache */
-#define flush_page_to_ram(page) __flush_page_to_ram(page_address(page))
+#define flush_page_to_ram(page) __flush_page_to_ram((unsigned long) page_address(page))
 extern inline void __flush_page_to_ram(unsigned long address)
 {
        if (CPU_IS_040_OR_060) {
@@ -297,6 +297,8 @@ extern inline void __flush_page_to_ram(unsigned long address)
        }
 }
 
+#define flush_dcache_page(page)                        do { } while (0)
+
 /* Push n pages at kernel virtual address and clear the icache */
 extern inline void flush_icache_range (unsigned long address,
                                       unsigned long endaddr)
index 8e0f4f24c45a7a780707bef177e98b9e4f67c433..3755cb2f4f0e39210d26b31fc24264216ed29ce3 100644 (file)
@@ -192,7 +192,7 @@ extern pte_t * __bad_pagetable(void);
 ({                                                                     \
        pte_t __pte;                                                    \
                                                                        \
-       pte_val(__pte) = __pa((void *)page) + pgprot_val(pgprot);       \
+       pte_val(__pte) = __pa((page) + pgprot_val(pgprot);              \
        __pte;                                                          \
 })
 #define mk_pte(page, pgprot) __mk_pte(page_address(page), (pgprot))
@@ -246,7 +246,7 @@ extern inline void pgd_set(pgd_t * pgdp, pmd_t * pmdp)
 #define pgd_clear(pgdp)                ({ pgd_val(*pgdp) = 0; })
 
 /* Permanent address of a page. */
-#define page_address(page)     ({ if (!(page)->virtual) BUG(); (page)->virtual; })
+#define page_address(page)     ((page)->virtual)
 #define __page_address(page)   (PAGE_OFFSET + (((page) - mem_map) << PAGE_SHIFT))
 #define pte_page(pte)          (mem_map+pte_pagenr(pte))
 
index f72b7ddd3e20482bf1ad838a0836daee856e9d6c..242cda457bd88dfc8e360a55bc23eac05809246e 100644 (file)
@@ -34,6 +34,8 @@ extern void (*_flush_cache_page)(struct vm_area_struct *vma, unsigned long page)
 extern void (*_flush_cache_sigtramp)(unsigned long addr);
 extern void (*_flush_page_to_ram)(struct page * page);
 
+#define flush_dcache_page(page)                        do { } while (0)
+
 #define flush_cache_all()              _flush_cache_all()
 #define flush_cache_mm(mm)             _flush_cache_mm(mm)
 #define flush_cache_range(mm,start,end)        _flush_cache_range(mm,start,end)
@@ -46,7 +48,7 @@ extern void (*_flush_page_to_ram)(struct page * page);
 #define flush_icache_page(vma, page)                                   \
 do {                                                                   \
        unsigned long addr;                                             \
-       addr = page_address(page);                                      \
+       addr = (unsigned long) page_address(page);                      \
        _flush_cache_page(vma, addr);                                   \
 } while (0)
 
index c40380569ae6fc5aa93b45b2494d8066dcb3a74b..9b3ae3d4525937862a51b5645ebc7572050990ed 100644 (file)
@@ -34,6 +34,7 @@ extern void (*_flush_cache_page)(struct vm_area_struct *vma, unsigned long page)
 extern void (*_flush_page_to_ram)(struct page * page);
 
 #define flush_cache_all()              do { } while(0)
+#define flush_dcache_page(page)                do { } while (0)
 
 #ifndef CONFIG_CPU_R10000
 #define flush_cache_mm(mm)             _flush_cache_mm(mm)
@@ -46,7 +47,7 @@ extern void (*_flush_page_to_ram)(struct page * page);
 #define flush_icache_page(vma, page)                                   \
 do {                                                                   \
        unsigned long addr;                                             \
-       addr = page_address(page);                                      \
+       addr = (unsigned long) page_address(page);                      \
        _flush_cache_page(vma, addr);                                   \
 } while (0)                                                              
 #else /* !CONFIG_CPU_R10000 */
index 505f0c5b65f8905faba54b6caf9d525625aaa486..703dc409b7c8d8df95d5d0c229f2ed4a417953db 100644 (file)
@@ -69,7 +69,9 @@ extern inline void flush_tlb_pgtables(struct mm_struct *mm,
 
 extern void flush_icache_range(unsigned long, unsigned long);
 extern void __flush_page_to_ram(unsigned long page_va);
-#define flush_page_to_ram(page)        __flush_page_to_ram(page_address(page))
+#define flush_page_to_ram(page)        __flush_page_to_ram((unsigned long) page_address(page))
+
+#define flush_dcache_page(page)                        do { } while (0)
 
 extern unsigned long va_to_phys(unsigned long address);
 extern pte_t *va_to_pte(unsigned long address);
@@ -311,7 +313,7 @@ extern pte_t * __bad_pagetable(void);
 /*
  * Permanent address of a page.
  */
-#define page_address(page)  ({ if (!(page)->virtual) BUG(); (page)->virtual; })
+#define page_address(page)  ((page)->virtual)
 #define pages_to_mb(x)         ((x) >> (20-PAGE_SHIFT))
 #define pte_page(x)            (mem_map+pte_pagenr(x))
 
index bca251d933b31a9d9fc2b50fac74f8922cb9b0f9..fd4792961aa504cdbf30b9a4bcccf98b607f321a 100644 (file)
@@ -32,6 +32,7 @@ extern pgd_t swapper_pg_dir[] __attribute__ ((aligned (4096)));
 #define flush_cache_range(mm, start, end)       do { } while (0)
 #define flush_cache_page(vma, vmaddr)           do { } while (0)
 #define flush_page_to_ram(page)                 do { } while (0)
+#define flush_dcache_page(page)                        do { } while (0)
 #define flush_icache_range(start, end)          do { } while (0)
 #define flush_icache_page(vma,pg)               do { } while (0)
 
@@ -335,8 +336,7 @@ extern inline pte_t pte_mkyoung(pte_t pte)      { pte_val(pte) |= _PAGE_ACCESSED
 extern inline pte_t pte_modify(pte_t pte, pgprot_t newprot)
 { pte_val(pte) = (pte_val(pte) & PAGE_MASK) | pgprot_val(newprot); return pte; }
 
-#define page_address(page) \
-({ if (!(page)->virtual) BUG(); (page)->virtual; })
+#define page_address(page)  ((page)->virtual)
 #define pte_page(x) (mem_map+pte_pagenr(x))
 
 #define pmd_page(pmd) \
index 31920c13bf0c031d71c5b5179a13645d05823960..d7da3b727fb39d052f58bfb4dd710a3644cc25b7 100644 (file)
@@ -35,6 +35,7 @@ extern void paging_init(void);
 #define flush_cache_range(mm, start, end)      do { } while (0)
 #define flush_cache_page(vma, vmaddr)          do { } while (0)
 #define flush_page_to_ram(page)                        do { } while (0)
+#define flush_dcache_page(page)                        do { } while (0)
 #define flush_icache_range(start, end)         do { } while (0)
 #define flush_icache_page(vma,pg)              do { } while (0)
 #elif defined(__SH4__)
@@ -166,7 +167,7 @@ extern void __handle_bad_pmd_kernel(pmd_t * pmd);
  * Permanent address of a page. Obviously must never be
  * called on a highmem page.
  */
-#define page_address(page) ({ if (!(page)->virtual) BUG(); (page)->virtual; })
+#define page_address(page)  ((page)->virtual)
 #define pages_to_mb(x) ((x) >> (20-PAGE_SHIFT))
 #define pte_page(x) (mem_map+pte_pagenr(x))
 
index ede2167e125f7d48385b24af0032bd2b4709d46c..0724061e4cdedd959b112fbe87736ec48bd4fbea 100644 (file)
@@ -20,7 +20,6 @@
 
 #ifdef __KERNEL__
 
-#include <linux/config.h>
 #include <linux/init.h>
 #include <linux/interrupt.h>
 #include <asm/vaddrs.h>
index 4b6dd0dae97710d251191aa8aa4e60e489fbb96f..a58a80810b233a1c5cb7b4543489aec8892538d3 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: irq.h,v 1.30 2000/06/30 10:18:39 davem Exp $
+/* $Id: irq.h,v 1.31 2000/08/05 10:48:41 davem Exp $
  * irq.h: IRQ registers on the Sparc.
  *
  * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
index 53039cc9c2c5d5bef7b55dc0e51695701af11b6b..5e1dc8b63666f5c393bebef6d1e67f99db439e89 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: pgtable.h,v 1.97 2000/07/07 07:33:11 anton Exp $ */
+/* $Id: pgtable.h,v 1.99 2000/08/05 13:30:34 davem Exp $ */
 #ifndef _SPARC_PGTABLE_H
 #define _SPARC_PGTABLE_H
 
@@ -307,7 +307,7 @@ BTFIXUPDEF_CALL_CONST(pte_t, pte_mkyoung, pte_t)
 #define page_pte(page)                 page_pte_prot(page, __pgprot(0))
 
 /* Permanent address of a page. */
-#define page_address(page) ({ if (!(page)->virtual) BUG(); (page)->virtual; })
+#define page_address(page)  ((page)->virtual)
 #define pte_page(x) (mem_map+pte_pagenr(x))
 
 /*
index 100f25a222784d451132a3cb460f8b845e9f442e..92dde254b1892d1353e09380e042ac67495174cc 100644 (file)
@@ -7,7 +7,6 @@
 #ifndef __SPARC_SOFTIRQ_H
 #define __SPARC_SOFTIRQ_H
 
-#include <linux/config.h>
 #include <linux/threads.h>     /* For NR_CPUS */
 
 #include <asm/atomic.h>
index 7ca23a02e27d72144f29669405e755a5f5125b86..41cd7a7dd34e7f9376a2d0433cbf7348aee3633d 100644 (file)
@@ -21,6 +21,8 @@
 /* These operations are unnecessary on the SpitFire since D-CACHE is write-through. */
 #define flush_icache_range(start, end)         do { } while (0)
 #define flush_page_to_ram(page)                        do { } while (0)
+extern void __flush_dcache_page(void *addr);
+#define flush_dcache_page(page)        __flush_dcache_page((page)->virtual)
 
 extern void __flush_dcache_range(unsigned long start, unsigned long end);
 
index ed35381bc13d18de460b611cc108d575b8bb6133..6a03c66d8e7244d64e3405cc2b76815d2e8adf3a 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: pgtable.h,v 1.126 2000/05/05 21:57:03 davem Exp $
+/* $Id: pgtable.h,v 1.128 2000/08/05 13:30:34 davem Exp $
  * pgtable.h: SpitFire page table operations.
  *
  * Copyright 1996,1997 David S. Miller (davem@caip.rutgers.edu)
index 730da1b3085f75648f5060e1b3eb33dd260ef71a..cce84e9008906a9aadb97d2976eae188b579f33b 100644 (file)
@@ -6,7 +6,6 @@
 #ifndef __SPARC64_SOFTIRQ_H
 #define __SPARC64_SOFTIRQ_H
 
-#include <linux/config.h>
 #include <asm/atomic.h>
 #include <asm/hardirq.h>
 #include <asm/system.h>                /* for membar() */
index 1f59c2926f2133d07b66f7ab7c4a66602fe82f15..9a2f2cbe66005f11e205bf29eafc3f935898cffc 100644 (file)
@@ -25,7 +25,7 @@ extern inline unsigned int nr_free_highpages(void) { return 0; }
 #define replace_with_highmem(page) page
 
 static __inline__ unsigned long kmap(struct page * page) {
-       return page_address(page);
+       return (unsigned long) page_address(page);
 }
 
 #define kunmap(page) do { } while (0)
index 98cf96ff4683a442b63a0ba764a7d68a7e2d9df0..b3433a3d62db430770ac38a20c645686d605aab1 100644 (file)
@@ -9,6 +9,8 @@
  * Keith Owens <kaos@ocs.com.au> July 2000.
  */
 
+#include <linux/config.h>
+
 /*
  * Simple wrappers reducing source bloat.  Define all irq_stat fields
  * here, even ones that are arch dependent.  That way we get common
index 909ce0683822b94b09a155d5be777bcdf5a08205..427e6c8ac6bf40c7d810fcc0a0fd24e00acf0a9d 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: isdn.h,v 1.101 2000/03/20 22:37:47 detabc Exp $
- *
+/* $Id: isdn.h,v 1.105 2000/05/18 23:14:19 keil Exp $
+
  * Main header for the Linux ISDN subsystem (linklevel).
  *
  * Copyright 1994,95,96 by Fritz Elfert (fritz@isdn4linux.de)
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 
  *
- * $Log: isdn.h,v $
- * Revision 1.101  2000/03/20 22:37:47  detabc
- * modify abc-extension to work together with the new LL.
- * remove abc frame-counter (is obsolete now).
- * use the new lp->super_tx_queue for internal queueing (bsd-rawip-compress).
- * modify isdn_net_xmit() and isdn_net_write_super().
- * -- Kai, please have a look to this two function's. Thank's.
- *
- * Revision 1.100  2000/03/19 15:27:53  kai
- * no known bugs left...
- *
- * Revision 1.99  2000/03/18 16:20:26  kai
- * cosmetics / renaming
- *
- * Revision 1.98  2000/03/17 18:20:47  kai
- * moved to frame_cnt based flow control
- * some races still need to be fixed
- *
- * Revision 1.97  2000/03/17 16:22:55  kai
- * we keep track of outstanding packets (given to HL, but not confirmed yet)
- * now, but we don't use it for flow control yet.
- *
- * Revision 1.96  2000/03/17 12:49:42  kai
- * calling statcallb with ISDN_STAT_BSENT in hard-IRQ context is now
- * officially allowed. writebuf_skb() will never be called in hard-IRQ context
- * anymore.
- *
- * Revision 1.95  2000/03/04 16:20:42  detabc
- * copy frames before rewriting frame's saddr
- *
- * Revision 1.94  2000/02/26 00:29:40  keil
- * more softnet changes
- *
- * Revision 1.93  2000/02/25 11:29:17  paul
- * changed chargetime to ulong from int (after about 20 days the "chargetime of
- * ipppX is now 1234" message displays a negative number on alpha).
- *
- * Revision 1.92  2000/02/17 13:15:56  keil
- * fix backward compatibility for 2.2
- *
- * Revision 1.91  2000/02/16 14:56:27  paul
- * translated ISDN_MODEM_ANZREG to ISDN_MODEM_NUMREG for english speakers
- *
- * Revision 1.90  2000/02/06 21:50:00  detabc
- * add rewriting of socket's and frame's saddr for udp-ipv4 dynip-connections.
- * Include checksum-recompute of ip- and udp-header's.
- *
- * Revision 1.89  2000/02/05 22:11:33  detabc
- * Add rewriting of socket's and frame's saddr adressfield for
- * dynip-connections.  Only for tcp/ipv4 and switchable per interface.
- * Include checksum-recompute of ip- and tcp-header's.
- *
- * Revision 1.88  2000/01/20 19:59:43  keil
- * Add FAX Class 1 support
- *
- * Revision 1.87  2000/01/09 20:43:15  detabc
- * exand logical bind-group's for both call's (in and out).
- * add first part of kernel-config-help for abc-extension.
- *
- * Revision 1.86  1999/12/05 16:06:09  detabc
- * add resethandling for rawip-compression.
- * at now all B2-Protocols are usable with rawip-compression
- *
- * Revision 1.85  1999/11/30 11:29:06  detabc
- * add a on the fly frame-counter and limit
- *
- * Revision 1.84  1999/11/28 14:49:08  detabc
- * In case of rawip-compress adjust dev[x]->ibytes/obytes to reflect the
- * uncompressed size.
- *
- * Revision 1.83  1999/11/26 15:54:59  detabc
- * added compression (isdn_bsdcompress) for rawip interfaces with x75i B2-protocol.
- *
- * Revision 1.82  1999/11/20 22:14:14  detabc
- * added channel dial-skip in case of external use
- * (isdn phone or another isdn device) on the same NTBA.
- * usefull with two or more card's connected the different NTBA's.
- * global switchable in kernel-config and also per netinterface.
- *
- * add auto disable of netinterface's in case of:
- *     to many connection's in short time.
- *     config mistakes (wrong encapsulation, B2-protokoll or so on) on local
- *     or remote side.
- *     wrong password's or something else to a ISP (syncppp).
- *
- * possible encapsulations for this future are:
- * ISDN_NET_ENCAP_SYNCPPP, ISDN_NET_ENCAP_UIHDLC, ISDN_NET_ENCAP_RAWIP,
- * and ISDN_NET_ENCAP_CISCOHDLCK.
- *
- * Revision 1.81  1999/10/27 21:21:18  detabc
- * Added support for building logically-bind-group's per interface.
- * usefull for outgoing call's with more then one isdn-card.
- *
- * Switchable support to dont reset the hangup-timeout for
- * receive frames. Most part's of the timru-rules for receiving frames
- * are now obsolete. If the input- or forwarding-firewall deny
- * the frame, the line will be not hold open.
- *
- * Revision 1.80  1999/10/26 21:09:29  armin
- * New bufferlen for phonenumber only with kernel 2.3.x
- *
- * Revision 1.79  1999/10/16 17:52:38  keil
- * Changing the MSN length need new data versions
- *
- * Revision 1.78  1999/10/08 18:59:33  armin
- * Bugfix of too small MSN buffer and checking phone number
- * in isdn_tty_getdial()
- *
- * Revision 1.77  1999/09/23 22:22:42  detabc
- * added tcp-keepalive-detect with local response (ipv4 only)
- * added host-only-interface support
- * (source ipaddr == interface ipaddr) (ipv4 only)
- * ok with kernel 2.3.18 and 2.2.12
- *
- * Revision 1.76  1999/09/14 10:16:21  keil
- * change ABC include
- *
- * Revision 1.75  1999/09/13 23:25:17  he
- * serialized xmitting frames from isdn_ppp and BSENT statcallb
- *
- * Revision 1.74  1999/09/12 16:19:39  detabc
- * added abc features
- * low cost routing for net-interfaces (only the HL side).
- * need more implementation in the isdnlog-utility
- * udp info support (first part).
- * different EAZ on outgoing call's.
- * more checks on D-Channel callbacks (double use of channels).
- * tested and running with kernel 2.3.17
- *
- * Revision 1.73  1999/09/06 07:29:36  fritz
- * Changed my mail-address.
- *
- * Revision 1.72  1999/09/04 22:20:19  detabc
- *
- * Revision 1.71  1999/08/23 15:54:22  keil
- * more backported changes from kernel 2.3.14
- *
- * Revision 1.70  1999/07/31 12:59:58  armin
- * Added tty fax capabilities.
- *
- * Revision 1.69  1999/07/13 20:47:53  werner
- * added channel bit ISDN_USAGE_DISABLED for limiting b-channel access.
- *
- * Revision 1.68  1999/07/11 17:07:37  armin
- * Added tty modem register S23.
- * Added new layer 2 and 3 protocols for Fax and DSP functions.
- *
- * Revision 1.67  1999/07/07 10:17:24  detabc
- * remove unused messages
- *
- * Revision 1.66  1999/07/01 08:35:37  keil
- * compatibility to 2.3
- *
- * Revision 1.65  1999/06/10 11:51:27  paul
- * fixed comment for NET_DV
- *
- * Revision 1.64  1999/04/18 14:57:14  fritz
- * Removed TIMRU stuff
- *
- * Revision 1.63  1999/04/18 14:07:18  fritz
- * Removed TIMRU stuff.
- *
- * Revision 1.62  1999/04/12 13:16:54  fritz
- * Changes from 2.0 tree.
- *
- * Revision 1.61  1999/03/02 11:43:21  armin
- * Added variable to store connect-message of Modem.
- * Added Timer-define for RegS7 (Wait for Carrier).
- *
- * Revision 1.60  1998/10/25 14:50:29  fritz
- * Backported from MIPS (Cobalt).
- *
- * Revision 1.59  1998/10/23 10:18:55  paul
- * Implementation of "dialmode" (successor of "status")
- * You also need current isdnctrl for this!
- *
- * Revision 1.58  1998/10/23 10:10:06  fritz
- * Test-Checkin
- *
- * Revision 1.57  1998/08/31 21:10:01  he
- * new ioctl IIOCNETGPN for /dev/isdninfo (get network interface'
- *     peer phone number)
- *
- * Revision 1.56  1998/07/26 18:46:52  armin
- * Added silence detection in voice receive mode.
- *
- * Revision 1.55  1998/06/26 15:13:17  fritz
- * Added handling of STAT_ICALL with incomplete CPN.
- * Added AT&L for ttyI emulator.
- * Added more locking stuff in tty_write.
- *
- * Revision 1.54  1998/06/18 23:32:01  fritz
- * Replaced cli()/restore_flags() in isdn_tty_write() by locking.
- * Removed direct-senddown feature in isdn_tty_write because it will
- * never succeed with locking and is useless anyway.
- *
- * Revision 1.53  1998/06/17 19:51:51  he
- * merged with 2.1.10[34] (cosmetics and udelay() -> mdelay())
- * brute force fix to avoid Ugh's in isdn_tty_write()
- * cleaned up some dead code
- *
- * Revision 1.46  1998/04/14 16:28:59  he
- * Fixed user space access with interrupts off and remaining
- * copy_{to,from}_user() -> -EFAULT return codes
- *
- * Revision 1.45  1998/03/24 16:33:12  hipp
- * More CCP changes. BSD compression now "works" on a local loopback link.
- * Moved some isdn_ppp stuff from isdn.h to isdn_ppp.h
- *
- * Revision 1.44  1998/03/22 18:50:56  hipp
- * Added BSD Compression for syncPPP .. UNTESTED at the moment
- *
- * Revision 1.43  1998/03/09 17:46:44  he
- * merged in 2.1.89 changes
- *
- *
- * Revision 1.40  1998/03/08 01:08:29  fritz
- * Increased NET_DV because of TIMRU
- *
- * Revision 1.39  1998/03/07 22:42:49  fritz
- * Starting generic module support (Nothing usable yet).
- *
- * Revision 1.38  1998/03/07 18:21:29  cal
- * Dynamic Timeout-Rule-Handling vs. 971110 included
- *
- * Revision 1.37  1998/02/22 19:45:24  fritz
- * Some changes regarding V.110
- *
- * Revision 1.36  1998/02/20 17:35:55  fritz
- * Added V.110 stuff.
- *
- * Revision 1.35  1998/01/31 22:14:14  keil
- * changes for 2.1.82
- *
- * Revision 1.34  1997/10/09 21:28:11  fritz
- * New HL<->LL interface:
- *   New BSENT callback with nr. of bytes included.
- *   Sending without ACK.
- *   New L1 error status (not yet in use).
- *   Cleaned up obsolete structures.
- * Implemented Cisco-SLARP.
- * Changed local net-interface data to be dynamically allocated.
- * Removed old 2.0 compatibility stuff.
- *
- * Revision 1.33  1997/08/21 14:44:22  fritz
- * Moved triggercps to end of struct for backwards-compatibility.
- *
- * Revision 1.32  1997/08/21 09:49:46  fritz
- * Increased NET_DV
- *
- * Revision 1.31  1997/06/22 11:57:07  fritz
- * Added ability to adjust slave triggerlevel.
- *
- * Revision 1.30  1997/06/17 13:07:23  hipp
- * compression changes , MP changes
- *
- * Revision 1.29  1997/05/27 15:18:02  fritz
- * Added changes for recent 2.1.x kernels:
- *   changed return type of isdn_close
- *   queue_task_* -> queue_task
- *   clear/set_bit -> test_and_... where apropriate.
- *   changed type of hard_header_cache parameter.
- *
- * Revision 1.28  1997/03/07 01:33:01  fritz
- * Added proper ifdef's for CONFIG_ISDN_AUDIO
- *
- * Revision 1.27  1997/03/05 21:11:49  fritz
- * Minor fixes.
- *
- * Revision 1.26  1997/02/28 02:37:53  fritz
- * Added some comments.
- *
- * Revision 1.25  1997/02/23 16:54:23  hipp
- * some initial changes for future PPP compresion
- *
- * Revision 1.24  1997/02/18 09:42:45  fritz
- * Bugfix: Increased ISDN_MODEM_ANZREG.
- * Increased TTY_DV.
- *
- * Revision 1.23  1997/02/10 22:07:13  fritz
- * Added 2 modem registers for numbering plan and screening info.
- *
- * Revision 1.22  1997/02/03 23:42:08  fritz
- * Added ISDN_TIMER_RINGING
- * Misc. changes for Kernel 2.1.X compatibility
- *
- * Revision 1.21  1997/01/17 01:19:10  fritz
- * Applied chargeint patch.
- *
- * Revision 1.20  1997/01/17 00:41:19  fritz
- * Increased TTY_DV.
- *
- * Revision 1.19  1997/01/14 01:41:07  fritz
- * Added ATI2 related variables.
- * Added variables for audio support in skbuffs.
- *
- * Revision 1.18  1996/11/06 17:37:50  keil
- * more changes for 2.1.X
- *
- * Revision 1.17  1996/09/07 12:53:57  hipp
- * moved a few isdn_ppp.c specific defines to drives/isdn/isdn_ppp.h
- *
- * Revision 1.16  1996/08/12 16:20:56  hipp
- * renamed ppp_minor to ppp_slot
- *
- * Revision 1.15  1996/06/15 14:56:57  fritz
- * Added version signatures for data structures used
- * by userlevel programs.
- *
- * Revision 1.14  1996/06/06 21:24:23  fritz
- * Started adding support for suspend/resume.
- *
- * Revision 1.13  1996/06/05 02:18:20  fritz
- * Added DTMF decoding stuff.
- *
- * Revision 1.12  1996/06/03 19:55:08  fritz
- * Fixed typos.
- *
- * Revision 1.11  1996/05/31 01:37:47  fritz
- * Minor changes, due to changes in isdn_tty.c
- *
- * Revision 1.10  1996/05/18 01:37:18  fritz
- * Added spelling corrections and some minor changes
- * to stay in sync with kernel.
- *
- * Revision 1.9  1996/05/17 03:58:20  fritz
- * Added flags for DLE handling.
- *
- * Revision 1.8  1996/05/11 21:49:55  fritz
- * Removed queue management variables.
- * Changed queue management to use sk_buffs.
- *
- * Revision 1.7  1996/05/07 09:10:06  fritz
- * Reorganized tty-related structs.
- *
- * Revision 1.6  1996/05/06 11:38:27  hipp
- * minor change in ippp struct
- *
- * Revision 1.5  1996/04/30 11:03:16  fritz
- * Added Michael's ippp-bind patch.
- *
- * Revision 1.4  1996/04/29 23:00:02  fritz
- * Added variables for voice-support.
- *
- * Revision 1.3  1996/04/20 16:54:58  fritz
- * Increased maximum number of channels.
- * Added some flags for isdn_net to handle callback more reliable.
- * Fixed delay-definitions to be more accurate.
- * Misc. typos
- *
- * Revision 1.2  1996/02/11 02:10:02  fritz
- * Changed IOCTL-names
- * Added rx_netdev, st_netdev, first_skb, org_hcb, and org_hcu to
- * Netdevice-local struct.
- *
- * Revision 1.1  1996/01/10 20:55:07  fritz
- * Initial revision
- *
  */
 
 #ifndef isdn_h
index 209cd9d81ee7a8f147a59d528cd272d0930c5204..8677f36c7e058aefad5d7bbf2d1afceb06a38d13 100644 (file)
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 
  *
- * $Log: isdnif.h,v $
- * Revision 1.33  2000/01/20 19:59:43  keil
- * Add FAX Class 1 support
- *
- * Revision 1.32  1999/10/11 22:03:00  keil
- * COMPAT_NEED_UACCESS (no include in isdn_compat.h)
- *
- * Revision 1.31  1999/09/06 07:29:36  fritz
- * Changed my mail-address.
- *
- * Revision 1.30  1999/08/23 15:54:29  keil
- * more backported changes from kernel 2.3.14
- *
- * Revision 1.29  1999/07/31 13:00:02  armin
- * Added tty fax capabilities.
- *
- * Revision 1.28  1999/07/13 20:57:48  werner
- * added callback ISDN_STAT_DISCH for limiting b-channel resources.
- *
- * Revision 1.27  1999/07/11 17:07:39  armin
- * Added tty modem register S23.
- * Added new layer 2 and 3 protocols for Fax and DSP functions.
- *
- * Revision 1.26  1999/07/01 08:35:44  keil
- * compatibility to 2.3
- *
- * Revision 1.25  1998/06/17 19:51:55  he
- * merged with 2.1.10[34] (cosmetics and udelay() -> mdelay())
- * brute force fix to avoid Ugh's in isdn_tty_write()
- * cleaned up some dead code
- *
- * Revision 1.24  1998/03/19 13:18:57  keil
- * Start of a CAPI like interface for supplementary Service
- * first service: SUSPEND
- *
- * Revision 1.23  1998/02/20 17:36:52  fritz
- * Added L2-protocols for V.110, changed FEATURE-Flag-constants.
- *
- * Revision 1.22  1998/01/31 22:14:12  keil
- * changes for 2.1.82
- *
- * Revision 1.21  1997/10/09 21:28:13  fritz
- * New HL<->LL interface:
- *   New BSENT callback with nr. of bytes included.
- *   Sending without ACK.
- *   New L1 error status (not yet in use).
- *   Cleaned up obsolete structures.
- * Implemented Cisco-SLARP.
- * Changed local net-interface data to be dynamically allocated.
- * Removed old 2.0 compatibility stuff.
- *
- * Revision 1.20  1997/05/27 15:18:06  fritz
- * Added changes for recent 2.1.x kernels:
- *   changed return type of isdn_close
- *   queue_task_* -> queue_task
- *   clear/set_bit -> test_and_... where apropriate.
- *   changed type of hard_header_cache parameter.
- *
- * Revision 1.19  1997/03/25 23:13:56  keil
- * NI-1 US protocol
- *
- * Revision 1.18  1997/03/04 22:09:18  calle
- * Change macros copy_from_user and copy_to_user in inline function.
- * These are now correct replacements of the functions for 2.1.xx
- *
- * Revision 1.17  1997/02/10 21:12:53  fritz
- * More setup-interface changes.
- *
- * Revision 1.16  1997/02/10 19:42:57  fritz
- * New interface for reporting incoming calls.
- *
- * Revision 1.15  1997/02/09 00:18:42  keil
- * leased line support
- *
- * Revision 1.14  1997/02/03 23:43:00  fritz
- * Misc changes for Kernel 2.1.X compatibility.
- *
- * Revision 1.13  1996/11/13 02:39:59  fritz
- * More compatibility changes.
- *
- * Revision 1.12  1996/11/06 17:38:48  keil
- * more changes for 2.1.X
- *
- * Revision 1.11  1996/10/23 11:59:42  fritz
- * More compatibility changes.
- *
- * Revision 1.10  1996/10/22 23:14:19  fritz
- * Changes for compatibility to 2.0.X and 2.1.X kernels.
- *
- * Revision 1.9  1996/06/06 21:24:24  fritz
- * Started adding support for suspend/resume.
- *
- * Revision 1.8  1996/05/18 01:45:37  fritz
- * More spelling corrections.
- *
- * Revision 1.7  1996/05/18 01:37:19  fritz
- * Added spelling corrections and some minor changes
- * to stay in sync with kernel.
- *
- * Revision 1.6  1996/05/17 03:59:28  fritz
- * Marked rcvcallb and writebuf obsolete.
- *
- * Revision 1.5  1996/05/01 11:43:54  fritz
- * Removed STANDALONE
- *
- * Revision 1.4  1996/05/01 11:38:40  fritz
- * Added ISDN_FEATURE_L2_TRANS
- *
- * Revision 1.3  1996/04/29 22:57:54  fritz
- * Added driverId and channel parameters to
- * writecmd() and readstat().
- * Added constant for voice-support.
- *
- * Revision 1.2  1996/04/20 17:02:40  fritz
- * Changes to support skbuffs for Lowlevel-Drivers.
- * Misc. typos
- *
- * Revision 1.1  1996/01/09 05:50:51  fritz
- * Initial revision
- *
  */
 
 #ifndef isdnif_h
index b8f6a496413de55125028cffd01228a2bdc220ba..a248e939f749f758c43d18d3730f6b0ee7feae2b 100644 (file)
@@ -151,7 +151,7 @@ typedef struct page {
        wait_queue_head_t wait;
        struct page **pprev_hash;
        struct buffer_head * buffers;
-       unsigned long virtual; /* nonzero if kmapped */
+       void *virtual; /* non-NULL if kmapped */
        struct zone_struct *zone;
 } mem_map_t;
 
index 9b255c3cd73509c9d1d6d9c4504f0d55808d441a..10da433df8ad818526de9ec1c18ba0fdf7ddc1c5 100644 (file)
@@ -45,7 +45,6 @@ typedef struct kmem_cache_s kmem_cache_t;
 /* prototypes */
 extern void kmem_cache_init(void);
 extern void kmem_cache_sizes_init(void);
-extern void kmem_cpucache_init(void);
 
 extern kmem_cache_t *kmem_find_general_cachep(size_t, int gfpflags);
 extern kmem_cache_t *kmem_cache_create(const char *, size_t, size_t, unsigned long,
@@ -74,6 +73,14 @@ extern kmem_cache_t  *filp_cachep;
 extern kmem_cache_t    *dquot_cachep;
 extern kmem_cache_t    *bh_cachep;
 
+#ifdef CONFIG_SMP
+extern unsigned long slab_cache_drain_mask;
+extern void slab_drain_local_cache(void);
+#else
+#define slab_cache_drain_mask 0
+#define slab_drain_local_cache()       do { } while (0)
+#endif
+
 #endif /* __KERNEL__ */
 
 #endif /* _LINUX_SLAB_H */
index 6c6d35942e7a027418a238ed88fa6fe343da3435..cfe26ace9e77ebb7a1d40ca4c2653c7fdc423ec6 100644 (file)
@@ -585,7 +585,6 @@ asmlinkage void __init start_kernel(void)
         *      make syscalls (and thus be locked).
         */
        smp_init();
-       kmem_cpucache_init();
        kernel_thread(init, NULL, CLONE_FS | CLONE_FILES | CLONE_SIGHAND);
        unlock_kernel();
        current->need_resched = 1;
index 348210c3b373129406ffed1a4cfa936433ccee2f..4941840a7fcf4027973458dd80b8046d28ae302a 100644 (file)
@@ -111,7 +111,8 @@ int exec_usermodehelper(char *program_path, char *argv[], char *envp[])
        {
                struct user_struct *user = current->user;
                current->user = INIT_USER;
-               atomic_inc(&current->user->__count);
+               atomic_inc(&INIT_USER->__count);
+               atomic_inc(&INIT_USER->processes);
                atomic_dec(&user->processes);
                free_uid(user);
        }
index 8c54103159448a8b286c55b1cef5198c82088477..12a82399da0564efd13aa5b02feb4b1339a5196f 100644 (file)
@@ -9,6 +9,7 @@
  * Rewritten. Old one was good in 2.2, but in 2.3 it was immoral. --ANK (990903)
  */
 
+#include <linux/config.h>
 #include <linux/mm.h>
 #include <linux/kernel_stat.h>
 #include <linux/interrupt.h>
index 108ca240ff505f512e796430c1a49c3d8edb229c..92d8af4b5109e87df7983a7b27c764fd1f7e833d 100644 (file)
@@ -22,6 +22,7 @@
 #include <linux/smp_lock.h>
 #include <linux/interrupt.h>
 #include <linux/kernel_stat.h>
+#include <linux/slab.h>
 
 #include <asm/uaccess.h>
 
@@ -599,6 +600,9 @@ void update_process_times(int user_tick)
                kstat.per_cpu_system[cpu] += system;
        } else if (local_bh_count(cpu) || local_irq_count(cpu) > 1)
                kstat.per_cpu_system[cpu] += system;
+
+       if (slab_cache_drain_mask & (1UL << cpu))
+               slab_drain_local_cache();
 }
 
 /*
index 43f1de720f7f18481c4df1c3856963bb46d4deb7..58f642b301e2863e547afddf14a8ae164c720e56 100644 (file)
@@ -2515,8 +2515,9 @@ generic_file_write(struct file *file,const char *buf,size_t count,loff_t *ppos)
                status = mapping->a_ops->prepare_write(file, page, offset, offset+bytes);
                if (status)
                        goto unlock;
-               kaddr = (char*)page_address(page);
+               kaddr = page_address(page);
                status = copy_from_user(kaddr+offset, buf, bytes);
+               flush_dcache_page(page);
                if (status)
                        goto fail_write;
                status = mapping->a_ops->commit_write(file, page, offset, offset+bytes);
index e11b5d0b1c63f94b37f4efb913e3134a9c4a1212..411f20c52993599065c589d6c59945edb49ff448 100644 (file)
@@ -83,7 +83,7 @@ struct page * replace_with_highmem(struct page * page)
        }
 
        vaddr = kmap(highpage);
-       copy_page((void *)vaddr, (void *)page_address(page));
+       copy_page((void *)vaddr, page_address(page));
        kunmap(highpage);
 
        if (page->mapping)
@@ -137,7 +137,7 @@ static void flush_all_zero_pkmaps(void)
                        BUG();
                pte_clear(pkmap_page_table+i);
                page = pte_page(pte);
-               page->virtual = 0;
+               page->virtual = NULL;
        }
        flush_tlb_all();
 }
@@ -176,17 +176,17 @@ start:
 
                        /* Somebody else might have mapped it while we slept */
                        if (page->virtual)
-                               return page->virtual;
+                               return (unsigned long) page->virtual;
 
                        /* Re-start */
                        goto start;
                }
        }
        vaddr = PKMAP_ADDR(last_pkmap_nr);
-       set_pte(pkmap_page_table + last_pkmap_nr, mk_pte(page, kmap_prot));
+       set_pte(&(pkmap_page_table[last_pkmap_nr]), mk_pte(page, kmap_prot));
 
        pkmap_count[last_pkmap_nr] = 1;
-       page->virtual = vaddr;
+       page->virtual = (void *) vaddr;
 
        return vaddr;
 }
@@ -202,7 +202,7 @@ unsigned long kmap_high(struct page *page)
         * We cannot call this from interrupts, as it may block
         */
        spin_lock(&kmap_lock);
-       vaddr = page->virtual;
+       vaddr = (unsigned long) page->virtual;
        if (!vaddr)
                vaddr = map_new_virtual(page);
        pkmap_count[PKMAP_NR(vaddr)]++;
@@ -218,7 +218,7 @@ void kunmap_high(struct page *page)
        unsigned long nr;
 
        spin_lock(&kmap_lock);
-       vaddr = page->virtual;
+       vaddr = (unsigned long) page->virtual;
        if (!vaddr)
                BUG();
        nr = PKMAP_NR(vaddr);
index 941cb590996cc6efd86a98ea7fb71783b969d71b..420f91f92420e8abf338600672d69ba437e933d4 100644 (file)
@@ -326,7 +326,7 @@ unsigned long __get_free_pages(int gfp_mask, unsigned long order)
        page = alloc_pages(gfp_mask, order);
        if (!page)
                return 0;
-       return page_address(page);
+       return (unsigned long) page_address(page);
 }
 
 unsigned long get_zeroed_page(int gfp_mask)
@@ -335,9 +335,9 @@ unsigned long get_zeroed_page(int gfp_mask)
 
        page = alloc_pages(gfp_mask, 0);
        if (page) {
-               unsigned long address = page_address(page);
-               clear_page((void *)address);
-               return address;
+               void *address = page_address(page);
+               clear_page(address);
+               return (unsigned long) address;
        }
        return 0;
 }
@@ -639,7 +639,7 @@ void __init free_area_init_core(int nid, pg_data_t *pgdat, struct page **gmap,
                        struct page *page = mem_map + offset + i;
                        page->zone = zone;
                        if (j != ZONE_HIGHMEM) {
-                               page->virtual = (unsigned long)(__va(zone_start_paddr));
+                               page->virtual = __va(zone_start_paddr);
                                zone_start_paddr += PAGE_SIZE;
                        }
                }
index a31f0f7e78b59afbccc49e34f563a2de3e3ac6ca..49c1a4879cd2019745c930ab33b57029036a7969 100644 (file)
--- a/mm/slab.c
+++ b/mm/slab.c
  * of the entries in the array are given back into the global cache.
  * This reduces the number of spinlock operations.
  *
- * The c_cpuarray can be changed with a smp_call_function call,
- * it may not be read with enabled local interrupts.
+ * The c_cpuarray may not be read with enabled local interrupts.
  *
  * SMP synchronization:
  *  constructors and destructors are called without any locking.
  *  Several members in kmem_cache_t and slab_t never change, they
  *     are accessed without any locking.
  *  The per-cpu arrays are never accessed from the wrong cpu, no locking.
- *      smp_call_function() is used if one cpu must flush the arrays from
- *     other cpus.
  *  The non-constant members are protected with a per-cache irq spinlock.
  *
  * Further notes from the original documentation:
@@ -372,7 +369,6 @@ static kmem_cache_t *clock_searchp = &cache_cache;
  */
 static int g_cpucache_up;
 
-static void drain_cache (void *__cachep);
 static void enable_cpucache (kmem_cache_t *cachep);
 static void enable_all_cpucaches (void);
 #endif
@@ -463,14 +459,17 @@ void __init kmem_cache_sizes_init(void)
        } while (sizes->cs_size);
 }
 
-void __init kmem_cpucache_init(void)
+int __init kmem_cpucache_init(void)
 {
 #ifdef CONFIG_SMP
        g_cpucache_up = 1;
        enable_all_cpucaches();
 #endif
+       return 0;
 }
 
+__initcall(kmem_cpucache_init);
+
 /* Interface to system's page allocator. No need to hold the cache-lock.
  */
 static inline void * kmem_getpages (kmem_cache_t *cachep, unsigned long flags)
@@ -838,17 +837,50 @@ static int is_chained_kmem_cache(kmem_cache_t * cachep)
        return ret;
 }
 
+#ifdef CONFIG_SMP
+static DECLARE_MUTEX(cache_drain_sem);
+static kmem_cache_t *cache_to_drain = NULL;
+static DECLARE_WAIT_QUEUE_HEAD(cache_drain_wait);
+unsigned long slab_cache_drain_mask;
+
+static void drain_cpu_caches(kmem_cache_t *cachep)
+{
+       DECLARE_WAITQUEUE(wait, current);
+       unsigned long cpu_mask = 0;
+       int i;
+
+       for (i = 0; i < smp_num_cpus; i++)
+               cpu_mask |= (1UL << cpu_logical_map(i));
+
+       down(&cache_drain_sem);
+
+       cache_to_drain = cachep;
+       slab_cache_drain_mask = cpu_mask;
+
+       slab_drain_local_cache();
+
+       add_wait_queue(&cache_drain_wait, &wait);
+       current->state = TASK_UNINTERRUPTIBLE;
+       while (slab_cache_drain_mask != 0UL)
+               schedule();
+       current->state = TASK_RUNNING;
+       remove_wait_queue(&cache_drain_wait, &wait);
+
+       cache_to_drain = NULL;
+
+       up(&cache_drain_sem);
+}
+#else
+#define drain_cpu_caches(cachep)       do { } while (0)
+#endif
+
 static int __kmem_cache_shrink(kmem_cache_t *cachep)
 {
        slab_t *slabp;
        int ret;
 
-#ifdef CONFIG_SMP
-       smp_call_function(drain_cache, cachep, 1, 1);
-       local_irq_disable();
-       drain_cache(cachep);
-       local_irq_enable();
-#endif
+       drain_cpu_caches(cachep);
+
        spin_lock_irq(&cachep->spinlock);
 
        /* If the cache is growing, stop shrinking. */
@@ -1554,36 +1586,67 @@ kmem_cache_t * kmem_find_general_cachep (size_t size, int gfpflags)
 }
 
 #ifdef CONFIG_SMP
-/*
- * called with local interrupts disabled
- */
-static void drain_cache (void* __cachep)
+
+typedef struct ccupdate_struct_s
 {
-       kmem_cache_t *cachep = __cachep;
-       cpucache_t *cc = cc_data(cachep);
+       kmem_cache_t *cachep;
+       cpucache_t *new[NR_CPUS];
+} ccupdate_struct_t;
 
-       if (cc && cc->avail) {
-               free_block(cachep, cc_entry(cc), cc->avail);
-               cc->avail = 0;
+static ccupdate_struct_t *ccupdate_state = NULL;
+
+/* Called from per-cpu timer interrupt. */
+void slab_drain_local_cache(void)
+{
+       local_irq_disable();
+       if (ccupdate_state != NULL) {
+               ccupdate_struct_t *new = ccupdate_state;
+               cpucache_t *old = cc_data(new->cachep);
+
+               cc_data(new->cachep) = new->new[smp_processor_id()];
+               new->new[smp_processor_id()] = old;
+       } else {
+               kmem_cache_t *cachep = cache_to_drain;
+               cpucache_t *cc = cc_data(cachep);
+
+               if (cc && cc->avail) {
+                       free_block(cachep, cc_entry(cc), cc->avail);
+                       cc->avail = 0;
+               }
        }
+       local_irq_enable();
+
+       clear_bit(smp_processor_id(), &slab_cache_drain_mask);
+       if (slab_cache_drain_mask == 0)
+               wake_up(&cache_drain_wait);
 }
 
-typedef struct ccupdate_struct_s
+static void do_ccupdate(ccupdate_struct_t *data)
 {
-       kmem_cache_t* cachep;
-       cpucache_t* new[NR_CPUS];
-} ccupdate_struct_t;
+       DECLARE_WAITQUEUE(wait, current);
+       unsigned long cpu_mask = 0;
+       int i;
 
-/*
- * called with local interrupts disabled
- */
-static void ccupdate_callback (void* __new)
-{
-       ccupdate_struct_t* new = __new;
-       cpucache_t *old = cc_data(new->cachep);
+       for (i = 0; i < smp_num_cpus; i++)
+               cpu_mask |= (1UL << cpu_logical_map(i));
+
+       down(&cache_drain_sem);
 
-       cc_data(new->cachep) = new->new[smp_processor_id()];
-       new->new[smp_processor_id()] = old;
+       ccupdate_state = data;
+       slab_cache_drain_mask = cpu_mask;
+
+       slab_drain_local_cache();
+
+       add_wait_queue(&cache_drain_wait, &wait);
+       current->state = TASK_UNINTERRUPTIBLE;
+       while (slab_cache_drain_mask != 0UL)
+               schedule();
+       current->state = TASK_RUNNING;
+       remove_wait_queue(&cache_drain_wait, &wait);
+
+       ccupdate_state = NULL;
+
+       up(&cache_drain_sem);
 }
 
 /* called with cache_chain_sem acquired.  */
@@ -1624,10 +1687,7 @@ static int kmem_tune_cpucache (kmem_cache_t* cachep, int limit, int batchcount)
        cachep->batchcount = batchcount;
        spin_unlock_irq(&cachep->spinlock);
 
-       smp_call_function(ccupdate_callback,&new,1,1);
-       local_irq_disable();
-       ccupdate_callback(&new);
-       local_irq_enable();
+       do_ccupdate(&new);
 
        for (i = 0; i < smp_num_cpus; i++) {
                cpucache_t* ccold = new.new[cpu_logical_map(i)];
index 0ecbb1a9dce9a433a64034a2101f467bb4e17424..29f66733fae85ebaf99979213da2d18f84a82e7b 100644 (file)
@@ -12,8 +12,6 @@ ALL_SUB_DIRS := 802 ax25 bridge core ethernet ipv4 ipv6 ipx unix appletalk \
                netrom rose lapb x25 wanrouter netlink sched packet sunrpc \
                econet irda decnet atm khttpd ipv4/netfilter ipv6/netfilter
 SUB_DIRS     := core ethernet
-MOD_LIST_NAME := NET_MISC_MODULES
-
 
 ifeq ($(CONFIG_NET),y)
 SUB_DIRS += 802 sched
index 8da31b692bd9efd1c719a8f9f1402b4d17a063d9..38d0d4b580c83fb4352283edd0552359f8d28e22 100644 (file)
@@ -8,7 +8,6 @@
 # Note 2! The CFLAGS definition is now in the main makefile...
 
 O_TARGET := econet.o
-MOD_LIST_NAME := NET_MISC_MODULES
 
 O_OBJS := af_econet.o sysctl_net_ec.o
 M_OBJS := $(O_TARGET)
index a0d501ec59d4ef4535896b63a8983ab1b7640748..b162de66c5b400f75958ef15e5d69057c81bb9ee 100644 (file)
@@ -16,7 +16,6 @@ IPV4_OBJS := utils.o route.o inetpeer.o proc.o protocol.o \
             sysctl_net_ipv4.o fib_frontend.o fib_semantics.o fib_hash.o
 IPV4X_OBJS :=
 
-MOD_LIST_NAME := IPV4_MODULES
 M_OBJS :=
 
 ifeq ($(CONFIG_IP_MULTIPLE_TABLES),y)
index bc892e7db6189cfe3c8c2a8a96433c1edf7b6212..cbf6e19ebd6db0efa76b2d56ff4a683c0f3c1564 100644 (file)
@@ -8,7 +8,6 @@
 # Note 2! The CFLAGS definition is now in the main makefile...
 
 O_TARGET := netfilter.o
-MOD_LIST_NAME := IPV4_MODULES
 M_OBJS :=
 
 IP_NF_CONNTRACK_OBJ:=ip_conntrack_core.o ip_conntrack_proto_generic.o ip_conntrack_proto_tcp.o ip_conntrack_proto_udp.o ip_conntrack_proto_icmp.o
index 7a24b21dd27aae54f009e3517a6c5af755778f24..cfc8ca6da75f64ebba50c41c382e23f86793cb21 100644 (file)
@@ -1753,6 +1753,8 @@ EXPORT_SYMBOL(ipt_unregister_table);
 EXPORT_SYMBOL(ipt_register_match);
 EXPORT_SYMBOL(ipt_unregister_match);
 EXPORT_SYMBOL(ipt_do_table);
+EXPORT_SYMBOL(ipt_register_target);
+EXPORT_SYMBOL(ipt_unregister_target);
 
 module_init(init);
 module_exit(fini);
index e64706e837e7be10ba8ba995a7a5aab54362f0e6..23754e3d3c53866709f3c434c56328c1a683f353 100644 (file)
@@ -14,7 +14,6 @@ IPV6_OBJS :=  af_inet6.o ip6_output.o ip6_input.o addrconf.o sit.o \
                exthdrs.o sysctl_net_ipv6.o datagram.o proc.o \
                ip6_flowlabel.o
 
-MOD_LIST_NAME := IPV6_MODULES
 M_OBJS   := $(O_TARGET)
 
 #ifeq ($(CONFIG_IPV6_FIREWALL),y)
index 3dfbefc264d483ee55d7dd3e96076f44ec255dbf..5f89671a2537e96d643701373b44aaabb6b155ee 100644 (file)
@@ -8,7 +8,6 @@
 # Note 2! The CFLAGS definition is now in the main makefile...
 
 O_TARGET := netfilter.o
-MOD_LIST_NAME := IPV6_MODULES
 M_OBJS :=
 
 IP6_NF_CONNTRACK_OBJ:=ip6_conntrack_core.o ip6_conntrack_proto_generic.o ip6_conntrack_proto_tcp.o ip6_conntrack_proto_udp.o ip6_conntrack_proto_icmp.o
index ae3a793cf7bf709efad5e05ebbfbe3296133aeb3..ac2bdc0635f821691d84fb89560941fdbe6f9065 100644 (file)
@@ -19,8 +19,6 @@ O_OBJS         := iriap.o iriap_event.o irlmp.o irlmp_event.o irlmp_frame.o \
            discovery.o parameters.o
 OX_OBJS := irmod.o
 
-MOD_LIST_NAME := IRDA_MODULES
-
 ifeq ($(CONFIG_IRDA),m)
 M_OBJS   := $(O_TARGET)
 endif
index b7992289a8356f9d795ba4b99da375648978d300..6d233020fd76e65f4d7c712824d695efdb8bdd4a 100644 (file)
@@ -9,7 +9,6 @@
 
 O_TARGET :=
 O_OBJS  := 
-MOD_LIST_NAME := IRDA_MODULES
 M_OBJS   := 
 
 ifeq ($(CONFIG_IRDA_DEFLATE),y)
index 6d4cb84331321657bd92170d5335aa6940a991ea..61285f23c17e0939a67b07d985981fc9f1c18139 100644 (file)
@@ -7,7 +7,6 @@
 #
 # Note 2! The CFLAGS definition is now in the main makefile...
 
-MOD_LIST_NAME := IRDA_MODULES
 O_TARGET := irlan.o
 O_OBJS  := irlan_common.o irlan_eth.o irlan_event.o irlan_client.o irlan_provider.o irlan_filter.o irlan_provider_event.o irlan_client_event.o
 M_OBJS   := $(O_TARGET)
index bd7d5499b0c7d711505bde4042e3020c39a24859..b594de142d18b627f0f534380daead0c0ba9d6ba 100644 (file)
@@ -8,7 +8,6 @@
 # Note 2! The CFLAGS definition is now in the main makefile...
 
 O_TARGET := khttpd.o
-MOD_LIST_NAME := NET_MODULES
 
 M_OBJS := $(O_TARGET)
 O_OBJS :=      main.o accept.o datasending.o logging.o misc.o rfc.o rfc_time.o security.o \
index db134a98d6c6434c090d1b1963ae48191c71345a..da89d0af0d94ba0eb081757481f5fefdab192b06 100644 (file)
@@ -8,7 +8,6 @@
 # Note 2! The CFLAGS definition is now in the main makefile...
 
 O_TARGET := netlink.o
-MOD_LIST_NAME := NET_MISC_MODULES
 
 O_OBJS  := 
 OX_OBJS := af_netlink.o
index cce16721d0933df8ee2ffa103fd292cde8c60b74..95a98ed95371e0ed113b672a70d09e05445e8a47 100644 (file)
@@ -8,7 +8,6 @@
 # Note 2! The CFLAGS definition is now in the main makefile...
 
 O_TARGET := packet.o
-MOD_LIST_NAME := NET_MISC_MODULES
 
 O_OBJS :=
 M_OBJS :=