Messages in this thread | | | Date | Thu, 21 Feb 2008 21:38:42 +0200 | From | Gregory Nietsky <> | Subject | Re: Plans for mISDN? Was: [PATCH 00/14] [ISDN] ... |
| |
Simon Richter wrote: > Hi, > > Tilman Schmidt wrote: > >> mISDN has two problems, which are of course interrelated: > > mISDN has one problem that is even bigger than these: the kernel oopses > if modules aren't loaded in the right order. misdn-init works around > that, but if it doesn't work for some reason (and I can think of > multiple here), the user is left with a kernel that oopses during > hardware discovery and never gets to a stage where this can be > rectified, as almost all distributions now have hardware discovery > before the first opportunity to get a shell. At least these were my > experiences the last time I tried it on my test box. > > This is the reason I've kept mISDN out of the last two Debian stable > releases, despite users' requests. > > When a hardware driver module is loaded, it should only do basic > hardware initialisation; it is certainly not necessary to set up the > entire stack (or even decide on a protocol, which currently needs to be > handed in via module parameter -- before userland code is there that > wants to talk to the hardware, there is no reason to have the hardware > active). > > Simon > --
hi there simon ive not bothered with isdn-init i use some modprobe magic to sort out the mess here it is ... edit the flags as required.i agree this is not ideal and most drivers should have a default ill take this under advisement and when there is some time ill look at setting it as default.this recipe plays nicely with hotplug and friends.
# #Protocol Flags # #0x001 1TR6 (Not Available) #0x002 DSS1 #0x010 NT Mode #0x020 PTP Mode #0x040 PCM Slave Mode #0x080 Negative Frame Pulse #0x100 Use Setting From Previous Driver And Add To Previous Stack #0x200 Switch DU/DD Interface
# #Typical Usage # #0x02 TE Mode #0x12 NT Mode
# #Layer Mask To Select Layers In D Channel Stack Layer 0 (HW) is always included # #0x1 Layer 1 #0x2 Layer 2 (Only Layers 1 and 2 are needed for NT Mode) #0x4 Layer 3 #0x8 Layer 4
# #Typical Usage # #0x0f TE Mode #0x03 NT Mode
# #Debug Mask # #0x01 IRQ Status #0x02 D-Channel Events #0x04 D-Channel FIFO Data #0x08 B-Channel Events #0x10 B-Channel FIFO Data
# #DSP Options # #0x01 ULAW (Instead Of ALAW) #0x10 Software Bridging (Instead Of Hardware)
options avmfritz protocol=0x2,0x2,0x2,0x2,0x2,0x2,0x2,0x2 options avmfritz layermask=0xf,0xf,0xf,0xf,0xf,0xf,0xf,0xf options avmfritz debug=0x0
options hfcpci protocol=0x2,0x2,0x2,0x2,0x2,0x2,0x2,0x2 options hfcpci layermask=0xf,0xf,0xf,0xf,0xf,0xf,0xf,0xf options hfcpci debug=0x0
options hfcmulti type=8 options hfcmulti protocol=0x2,0x2,0x2,0x2,0x2,0x2,0x2,0x2 options hfcmulti layermask=0xf,0xf,0xf,0xf,0xf,0xf,0xf,0xf options hfcmulti debug=0x0
options w6692pci protocol=0x2,0x2,0x2,0x2,0x2,0x2,0x2,0x2 options w6692pci layermask=0xf,0xf,0xf,0xf,0xf,0xf,0xf,0xf options w6692pci debug=0x0
options sedlfax protocol=0x2,0x2,0x2,0x2,0x2,0x2,0x2,0x2 options sedlfax layermask=0xf,0xf,0xf,0xf,0xf,0xf,0xf,0xf options sedlfax debug=0x0
options hfcsusb protocol=0x2,0x2,0x2,0x2,0x2,0x2,0x2,0x2 options hfcsusb layermask=0xf,0xf,0xf,0xf,0xf,0xf,0xf,0xf options hfcsusb poll=128 options hfcsusb debug=0x0
options mISDN_dsp options=0x10 options mISDN_dsp debug=0x0 options mISDN_dsp poll=128
install avmfritz /usr/sbin/mkisdnnod avmfritz install hfcpci /usr/sbin/mkisdnnod hfcpci install hfcmulti /usr/sbin/mkisdnnod hfcmulti install w6692pci /usr/sbin/mkisdnnod w6692pci install sedlfax /usr/sbin/mkisdnnod sedlfax install hfcsusb /usr/sbin/mkisdnnod hfcsusb
------------ /usr/sbin/mkisdnnod ------------
#!/bin/bash
if [ -e /var/run/isdnprobe.pid ];then CURPID=`cat /var/run/isdnprobe.pid` if [ "$CURPID" != "$$" ] && [ -d /proc/$CURPID ] && [ "$CURPID" ];then exit; else echo $$ > /var/run/isdnprobe.pid fi; else echo $$ > /var/run/isdnprobe.pid fi;
if [ ! -e /dev/mISDN ];then /bin/mknod /dev/mISDN c 46 0; /sbin/modprobe mISDN_l1; /sbin/modprobe mISDN_l2; /sbin/modprobe l3udss1; /sbin/modprobe mISDN_isac; /sbin/modprobe mISDN_x25dte; /sbin/modprobe mISDN_dtmf; /sbin/modprobe mISDN_dsp; /sbin/modprobe mISDN_debugtool if [ "$1" ];then /sbin/modprobe -s -q --ignore-install $1; fi; rm /var/run/isdnprobe.pid else /sbin/modprobe -s -q --ignore-install $1; fi;
--
This message has been scanned for viruses and
dangerous content by Superset Technology, and
is believed to be clean.
http://www.superset.co.za
| |