I've been using FC2 with Kernel 2.6.9, the hardest thing for me was getting my capi startup script right, you should not have any capi related stuff in modprobe.conf. I have included my startup script. If you are using a DID or Point to Point line for the Fritz! then change protocol=2 to protocol=34 for the avmfritz driver. The mISDN fritz! driver will support up to four cards and I am successfully using both a Eicon Diva Server 4-BRI card (With melware drivers) and Fritz! card in the same system. The Fritz! must be loaded first with the capi script, followed by divas_cfg for the Diva card. The divas_cfg script must have its own modprobe capi line removed or commented out.
Craig #!/bin/bash # # System startup script for the isdn-capi subsystem case "$1" in start) echo -n "Starting mISDN and CAPI" modprobe capi modprobe mISDN_core modprobe mISDN_l1 modprobe mISDN_l2 modprobe l3udss1 modprobe mISDN_capi modprobe mISDN_isac modprobe avmfritz protocol=2 ;; stop) echo -n "Stopping mISDN and CAPI" rmmod avmfritz rmmod mISDN_isac rmmod mISDN_capi rmmod l3udss1 rmmod mISDN_l2 rmmod mISDN_l1 rmmod mISDN_dtmf rmmod mISDN_core rmmod capi rmmod kernelcapi ;; restart) $0 stop $0 start ;; *) echo "Usage:$0{start|stop|restart}" ;; esac exit 0 ----- Original Message ----- From: "Razza" <[EMAIL PROTECTED]> To: "'Asterisk Users Mailing List - Non-Commercial Discussion'" <asterisk-users@lists.digium.com> Sent: Tuesday, February 22, 2005 3:02 AM Subject: RE: [Asterisk-Users] Mandrake & CAPI > I was looking at the exercise as a bit of Linux lerning for myself, so I > guess Mandrake 10.1 and mISDN? Does anyone have working examples? > Ray > > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Craig Guy > Sent: 20 February 2005 23:57 > To: Asterisk Users Mailing List - Non-Commercial Discussion > Subject: Re: [Asterisk-Users] Mandrake & CAPI > > > Or you could go to a 2.6 kernel and use the mISDN drivers. > > Craig > > ----- Original Message ----- > From: "Razza" <[EMAIL PROTECTED]> > To: <asterisk-users@lists.digium.com> > Sent: Sunday, February 20, 2005 8:00 PM > Subject: [Asterisk-Users] Mandrake & CAPI > > > > All, > > I have been trying to get CAPI4Linux working on my machine and being > > frank am failing miserably! I am looking for any help available, I am > > real newbie (so please be gentle) and choose to run Mandrake 9.2 as it > > > appears quite friendly (or so I thought!). > > > > I have been following the guidance found at > > http://www.voip-info.org/wiki-Asterisk+How+to+connect+with+CAPI for > > the AVM card (actually I have a BT Speedway - apparently the same > > thing). > > > > I guess the best approach is to detail what I have done in tandem with > > > the guidance? So here we go - > > > > Type - > > # modprobe capi > > > > Great! I get no response (which is expected!), so move to step 2 > > (http://www.voip-info.org/wiki-Asterisk+AVM+Fritz+CAPI+Driver+Install) > > > > Guidance states 'Download and install your kernel sources' - I > > installed these as part of the original installation, so I'll ignore. > > > > I download and install the CAPI driver - > > # cd /usr/src > > # wget > > ftp://ftp.avm.de/cardware/fritzcrd.pci/linux/suse.82/fcpci-suse8.2-03. > > 11 > > .02.tar.gz > > # tar -xzvf fcpci-suse8.2-03.11.02.tar.gz > > # cd fritz > > Great! Looking good! > > > > Guidance states modify the makefile in /usr/src/src.drv as follows - > > Replace - > > CARD_PATH = /lib/modules/`uname -r`/misc > > with - > > CARD_PATH = /lib/modules/$(uname -r)/kernel/drivers/isdn/avmb1 > > > > I am aware this chap is running Debian and I am running Mandrake, so > > after searching decided to modify the line as such - > > CARD_PATH = /lib/modules/2.4.22-10mdk/kernel/drivers/isdn/avmb1 > > > > Guidance states modify the KRNLINCL lines for the correct include path > > > - > > > > KRNLINCL = /usr/src/kernel-headers-`uname -r`/include > > #KRNLINCL = /lib/modules/`uname -r`/build/include > > #KRNLINCL = /usr/src/linux/include > > > > And modify the lines as thus - > > DEFINES = -DMODULE -D__KERNEL__ -DNDEBUG \ > > -D__$(CARD)__ -DTARGET=\"$(CARD)\" > > CCFLAGS = -c $(DEFINES) -O2 -Wall -I $(KRNLINCL) > > With - > > DEFINES = -DMODULE -DMODVERSIONS -D__KERNEL__ -DNDEBUG \ > > -D__$(CARD)__ -DTARGET=\"$(CARD)\" > > CCFLAGS = -c $(DEFINES) -march=i686 -O2 -Wall -I $(KRNLINCL) \ > > -include $(KRNLINCL)/linux/modversions.h > > > > Again aware of the Debian V's Mandrake configuration, I searched the > > web and found the following guidance for Mandrake (using the google > > translation feature - http://translate.google.com/translate?hl=en > > <http://translate.google.com/translate?hl=en&sl=de&u=http://ixi.thepen > > gu > > > in.de/&prev=/search%3Fq%3Dcapi%2Bmandrake%26hl%3Den%26lr%3D%26rls%3DRNWE > > ,RNWE:2004-35,RNWE:en> > > > &sl=de&u=http://ixi.thepenguin.de/&prev=/search%3Fq%3Dcapi%2Bmandrake%26 > > hl%3Den%26lr%3D%26rls%3DRNWE,RNWE:2004-35,RNWE:en ) > > > > And made the following changes to the makefile in /usr/src/src.drv as > > that seemed more appropriate and saved the file - > > > > KRNLINCL =/usr/src/linux/include > > > > DEFINES = Dmodule Dmodversions D__kernel __ Dndebug \ > > D__$(card) __ Dtarget=\"$(card) \ " > > > > CCFLAGS = C $(defines) -march=i586 -O2 barrier i $(krnlincl) \ > > include/usr/src/linux/include/linux/modversions.h > > > > Going back to the original Guidance > > (http://www.voip-info.org/wiki-Asterisk+AVM+Fritz+CAPI+Driver+Install) > > I am instructed to modify the defs.h file in /usr/src/fritz/src.drv as > > > follows - #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 5, 0) > > with > > #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 4, 23) > > > > Great, I'm now ready to run the make command! Unfortunately the first > > couple of responses are as follows which to me looks very bad? And not > > > sure what to do next? > > > > [EMAIL PROTECTED] src.drv]# make > > cc C Dmodule Dmodversions D__kernel__ DNDEBUG D____ Dtarget=\"\" > > -march=i586 -O2 barrier i /usr/src/linux/include > > include/usr/src/linux/include/linux/modversions.h main.c -o main.o > > cc: C: No such file or directory > > cc: Dmodule: No such file or directory > > cc: Dmodversions: No such file or directory > > cc: D__kernel__: No such file or directory > > cc: DNDEBUG: No such file or directory > > cc: D____: No such file or directory > > cc: Dtarget="": No such file or directory > > cc: barrier: No such file or directory > > cc: i: No such file or directory > > cc: include/usr/src/linux/include/linux/modversions.h: No such file or > > > directory > > > > > > For completeness I Have included the makefile and defs.h files > > > > -------- Makefile -------- > > SOURCES = main.c driver.c tables.c queue.c lib.c tools.c OBJECTS = > > $(patsubst %.c,%.o,$(SOURCES)) LIBRARY = ../lib/$(CARD)-lib.o > > > > CARD_PATH = /lib/modules/2.4.22-10mdk/kernel/drivers/isdn/avmb1 > > CS_PATH = /lib/modules/`uname -r`/pcmcia-external > > > > KRNLINCL = /usr/src/linux/include > > > > DEFINES = Dmodule Dmodversions D__kernel__ DNDEBUG \ > > D__$(CARD)__ Dtarget=\"$(CARD)\" > > CCFLAGS = C $(DEFINES) -march=i586 -O2 barrier i $(KRNLINCL) \ > > include/usr/src/linux/include/linux/modversions.h > > LDFLAGS = -r > > > > ifeq ($(CARD),fcpcmcia) > > CS_MOD = fcpcmcia_cs.o > > CS_SRC = fcpcmcia_cs.c > > else > > CS_MOD = > > CS_SRC = > > endif > > > > all: $(CARD).o $(LIBRARY) $(CS_MOD) > > > > install: $(CARD).o $(LIBRARY) $(CS_MOD) > > mkdir -p $(CARD_PATH) > > cp -f $(CARD).o $(CARD_PATH) > > ifeq ($(CARD),fcpcmcia) > > mkdir -p $(CS_PATH) > > cp -f $(CS_MOD) $(CS_PATH) > > endif > > > > clean: > > $(RM) $(OBJECTS) $(CARD).o $(CS_MOD) > > > > $(CARD).o: $(OBJECTS) > > $(LD) $(LDFLAGS) -o $@ $(OBJECTS) $(LIBRARY) > > > > $(OBJECTS): %.o: %.c > > $(CC) $(CCFLAGS) $< -o $@ > > > > $(CS_MOD): $(CS_SRC) > > $(CC) $(CCFLAGS) $< -o $@ > > > > # No dependencies yet... > > > > > > -------- Defs.h -------- > > /* > > * defs.h > > * Copyright (C) 2002, AVM GmbH. All rights reserved. > > * > > * This Software is free software. You can redistribute and/or > > * modify such free software under the terms of the GNU Lesser General > > > Public > > * License as published by the Free Software Foundation; either > > * version 2.1 of the License, or (at your option) any later version. > > * > > * The free software 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 > > * Lesser General Public License for more details. > > * > > * You should have received a copy of the GNU Lesser General Public > > * License along with this Software; if not, write to the Free > Software > > * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 > > USA, or see > > * http://www.opensource.org/licenses/lgpl-license.html > > * > > * Contact: AVM GmbH, Alt-Moabit 95, 10559 Berlin, Germany, email: > > [EMAIL PROTECTED] > > */ > > > > #ifndef __have_defs_h__ > > #define __have_defs_h__ > > > > #ifndef LINUX_VERSION_CODE > > # include <linux/version.h> > > #endif > > > > #ifndef TRUE > > # define TRUE (1==1) > > # define FALSE (1==0) > > #endif > > > > /*-------------------------------------------------------------------- > > -- > > -----*\ > > > \*---------------------------------------------------------------------- > > -----*/ > > #if defined (__fcclassic__) > > # define PRODUCT_LOGO "AVM FRITZ!Card Classic" > > # define INTERFACE "isa" > > #elif defined (__fcpnp__) > > # define PRODUCT_LOGO "AVM FRITZ!Card PnP" > > # define INTERFACE "pnp" > > #elif defined (__fcpcmcia__) > > # define PRODUCT_LOGO "AVM FRITZ!Card PCMCIA" > > # define INTERFACE "pcmcia" > > #elif defined (__fcpci__) > > # define PRODUCT_LOGO "AVM FRITZ!Card PCI" > > # define INTERFACE "pci" > > #endif > > #define DRIVER_LOGO PRODUCT_LOGO " driver" > > #define SHORT_LOGO "fritz-" INTERFACE > > > > #define REV_DEFAULT "0.5.2" > > > > /*-------------------------------------------------------------------- > > -- > > -----*\ > > > \*---------------------------------------------------------------------- > > -----*/ > > #if defined (OSDEBUG) && defined (NDEBUG) > > # undef NDEBUG > > #endif > > > > #define UNUSED_ARG(x) (x)=(x) > > > > /*-------------------------------------------------------------------- > > -- > > -----*\ > > > \*---------------------------------------------------------------------- > > -----*/ > > #define KB 1024 > > #define MIN_LIB_HEAP_SIZE (64 * KB) > > #define MAX_LIB_HEAP_SIZE (600 * KB) > > > > /*-------------------------------------------------------------------- > > -- > > -----*\ > > > \*---------------------------------------------------------------------- > > -----*/ > > #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 3, 13) > > # define GET_PCI_BASE(d, r) (d)->base_address[r] > > #else > > # define GET_PCI_BASE(d, r) (d)->resource[r].start > > #endif > > > > #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 3, 43) > > # define KFREE_SKB(x) dev_kfree_skb(x) > > #else > > # include <linux/netdevice.h> > > # define KFREE_SKB(x) dev_kfree_skb_any(x) > > #endif > > > > #if defined (CONFIG_ISAPNP_MODULE) && !defined (CONFIG_ISAPNP) #define > > > CONFIG_ISAPNP #endif > > > > #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 4, 23) > > typedef void irqreturn_t; > > > > #define IRQ_NONE > > #define IRQ_HANDLED > > #define IRQ_RETVAL(x) > > #endif > > > > #endif > > > > > > > ------------------------------------------------------------------------ > ---- > ---- > > > > _______________________________________________ > > Asterisk-Users mailing list > > Asterisk-Users@lists.digium.com > > http://lists.digium.com/mailman/listinfo/asterisk-users > > To UNSUBSCRIBE or update options visit: > > http://lists.digium.com/mailman/listinfo/asterisk-users > > _______________________________________________ > Asterisk-Users mailing list > Asterisk-Users@lists.digium.com > http://lists.digium.com/mailman/listinfo/asterisk-users > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-users > > _______________________________________________ > Asterisk-Users mailing list > Asterisk-Users@lists.digium.com > http://lists.digium.com/mailman/listinfo/asterisk-users > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-users > _______________________________________________ Asterisk-Users mailing list Asterisk-Users@lists.digium.com http://lists.digium.com/mailman/listinfo/asterisk-users To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users