Hi all. Has anybody had any success with using a USB ISDN modem with openwrt?
I have a Microlink modem connected to an ASUS WL-500G, which should work with the
hisax_st5481 driver. I have tried numerous things which I suppose may be of interest to
some.
1. The build-root (stable from CVS) version can not compile the hisax_st5481 module
as there seems to be a problem with some USB-related variables. After a lot of
searching around I found that the problem is caused by 200-i4l.patch which, when
applied, reverts the isdn drivers to a version that is not compatible with current
version of the kernel (2.4.30). The compile fails in st5481.h (look at line 11709 of
the patch where "struct usb_ctrlrequest" is replaced with "devrequest"...)
2. Without the 200-i4l.patch and 201-hfc_usb_backport.patch patches, I can compile
the ISDN drivers without problems. Nevertheless, insmod isdn.o complains about
undefined symbol "strcpy". I managed to overcome this by statically linking
a custom version of strcpy with the isdn.o module (I have a kernel patch if anyone
is interested).
3. Next I made an ipkg of ISDN tools, which can be found at:
http://www.cslab.ece.ntua.gr/~chazapis/ … mipsel.ipk
This includes isdnctrl, ipppd and imon (which requires ncurses). The build-root
patch for that is in http://www.cslab.ece.ntua.gr/~chazapis/ … tils.patch
(again if anyone is interested).
Everything seems fine with the drivers (at least at the version printing level).
This is what I get from logread:
---
Jan 1 02:25:51 (none) kern.notice kernel: ISDN subsystem Rev: 1.1.4.1/1.1.4.1/1
.1.4.1/1.1.4.1/1.1.4.1/1.1.4.1 loaded
Jan 1 02:26:00 (none) kern.info kernel: HiSax: Linux Driver for passive ISDN ca
rds
Jan 1 02:26:00 (none) kern.info kernel: HiSax: Version 3.5 (module)
Jan 1 02:26:00 (none) kern.info kernel: HiSax: Layer1 Revision 1.1.4.1
Jan 1 02:26:00 (none) kern.info kernel: HiSax: Layer2 Revision 1.1.4.1
Jan 1 02:26:00 (none) kern.info kernel: HiSax: TeiMgr Revision 1.1.4.1
Jan 1 02:26:00 (none) kern.info kernel: HiSax: Layer3 Revision 1.1.4.1
Jan 1 02:26:00 (none) kern.info kernel: HiSax: LinkLayer Revision 1.1.4.1
Jan 1 02:26:00 (none) kern.info kernel: HiSax: Approval certification failed be
cause of
Jan 1 02:26:00 (none) kern.info kernel: HiSax: unauthorized source code changes
Jan 1 02:26:05 (none) kern.info kernel: hiax_st5481: ST5481 USB ISDN driver v0.
1.0
Jan 1 02:26:05 (none) kern.info kernel: usb.c: registered new driver st5481_usb
Jan 1 02:26:05 (none) kern.info kernel: st541: found adapter VendorId 0483, Pro
ductId 4810, LEDs 2
Jan 1 02:26:05 (none) kern.info kernel: HiSax: Card 1 Protocol EDSS1 Id=st5481_
usb0 (0)
Jan 1 02:26:05 (none) kern.info kernel: HiSax: DSS1 Rev. 1.1.4.1
Jan 1 02:26:05 (none) kern.info kernel: HiSax: 2 channels added
Jan 1 02:26:05 (none) kern.info kernel: HiSax: MAX_WAITING_CALLS added
---
But the modem does not work... I tried with microcom to dial but I always get
NO CARRIER. I have set the MSN, the buffer and everything. Then I've searched
Google with every possible string and have found no answer. I suppose this must
be a driver problem or something.
Does anybody know where this 200-i4l.patch comes from?
Maybe there is a newer version that can sort things out.
Has anyone had similar experience with ISDN on openwrt?
Any ideas?