Re: modem works in sarge but not etch or lenny
- From: "Nathan Salwen" <salwen.1@xxxxxxxxx>
- Date: Tue, 11 Sep 2007 16:06:28 -0400
Interestingly, when I turned isapnp=off on the command line, I got
io 0x2f8-0x2ff
irq 5
but I don't know how to change this or to enable the device. I
thought sending AUTO to the file should do that. I tried
echo ENABLE > resourcesbut that didn't do anything.
The comx driver is an interesting lead but I wonder if it is a red
herring. When I ran sarge with the modem card physically removed, the
COMX line also showed up in dmesg. The only difference was that
ttyS02 is missing.
modem card physically absent:
Serial driver version 5.05c (2001-07-08) with HUB-6 MANY_PORTS MULTIPORT SHARE_IRQ SERIAL_PCI enabled
ttyS00 at 0x03f8 (irq = 4) is a 16550A
ttyS01 at 0x02f8 (irq = 3) is a 16550A
COMX: driver version 0.85 (C) 1995-1999 ITConsult-Pro Co. <info@xxxxxx>
modem card physically present:
Serial driver version 5.05c (2001-07-08) with HUB-6 MANY_PORTS MULTIPORT SHARE_IRQ SERIAL_PCI enabled
ttyS00 at 0x03f8 (irq = 4) is a 16550A
ttyS01 at 0x02f8 (irq = 3) is a 16550A
ttyS02 at 0x03e8 (irq = 4) is a 16550A
COMX: driver version 0.85 (C) 1995-1999 ITConsult-Pro Co. <info@xxxxxx>
That is a little weird because the modem actually shows up at ttyS1.
I guess the modem shows up at ttyS01 and the and the second internal
UART is pushed to ttyS02. Actually, the COMX driver appears to be for
a synchronous card and I believe my card is asynchronous as most
modems are, so I believe that is not the driver that is actually
handling my card. I think maybe the "Serial driver" handles my card
but I don't really know. I have experience writing drivers but not
with linux.
Do you know why the device node for ttyS1 is so recent?
The /dev/ttyS1 device updates its modify time every time I run
minicom. Maybe when minicom resets the device.
In order for COM2 (/dev/ttyS1) to work properly, IRQ 3 and IO-PORTS
0x2f8-0x2ff need to be free. Look into the /proc filesystem and ...
When the card is plugged in, lenny creates space for it and removes
the serial card from /proc/ioports
proc/ioports (modem physically removed):
...
02f8-02ff : serial
...
proc/ioports (modem physically in computer):
...
0213-0213 : ISAPnP
...
0a79-0a79 : isapnp write
...
where the other parts are identical.
Also, there is nothing on interrupt 3 or 4 in /proc/interrupts
(whether the card is inserted or not).
I have never run linux under a debugger, but my inclination would be
to try to do that and then put a break on access to the ttyS1 io port.
Or to the plugnplay port.
I don't really understand the structure of the kernel so I don't
really know where to start. I guess once the card is set up for by
the pnp driver and the uart at that location is disabled, the kernel
doesn't have to know whether it accessing the original uart or going
through the modem card. Maybe all I need to do is somehow enable the
card.
Another mystery, since there is nothing at 2f8, why does ttyS1 show up?
Nathan
On 9/10/07, Mumia W.. <paduille.4061.mumia.w+nospam@xxxxxxxxxxxxx> wrote:
On 09/09/2007 04:31 PM, Nathan Salwen wrote:
If this is the wrong list, please tell me where to repost it.
I have a V1456VQH-X pnp ISA card that I only use for sending and receiving
faxes. It worked in Sarge but I have not been able to get it to work in my
Lenny/Sid box.
I reinstalled sarge on a different partition and the modem still works so it
is not a hardware issue. I believe it is a kernel issue since it works with
kernel2.4 and not with kernel 2.6. Although it works in 2.4 (sarge) I have
not been able to find any log messages or dmesg output to tell me exactly
what the kernel is doing iwth it. All I know is that minicom with
/dev/ttyS1 returns OK when I type AT.
I also went to an old partition with etch i(2.6.2.6.18-3-k7 #1 SMP Mon Dec 4
17:23:11 UTC 2006 i686 GNU/Linux) and it also doesn't seem to work.
dmsg returns the following:
isapnp: Scanning for PnP cards...
isapnp: Card '56K PnP DATA FAX VOICE Modem'
isapnp: 1 Plug & Play card detected total
So it does seem like the kernel finds it. When I go to
/sys/devices/pnp1/01:01/name I find "56K PnP DATA FAX VOICE Modem"
and the file /sys/devices/pnp1/01:01/01:01.00/resources has "state =
disabled"
After "echo AUTO > resources" the file resources contains:
state = disabled
io 0x2e8-0x2ef
irq 5
See if you can change these settings to these:
io 0x2f8-0x2ff
irq 3
Try to enable it too.
Also, try adding this on the kernel command line:
isapnp=off
I noticed the following for Sarge:
crw-rw---- 1 root dialout 4, 64 2005-02-26 01:39 /dev/ttyS0
crw-rw---- 1 root dialout 4, 65 2007-09-09 16:09 /dev/ttyS1
crw-rw---- 1 root dialout 4, 66 2005-02-26 01:39 /dev/ttyS2
crw-rw---- 1 root dialout 4, 67 2005-02-26 01:39 /dev/ttyS3
crw-rw---- 1 root dialout 4, 68 2005-02-26 01:39 /dev/ttyS4
Do you know why the device node for ttyS1 is so recent?
In order for COM2 (/dev/ttyS1) to work properly, IRQ 3 and IO-PORTS
0x2f8-0x2ff need to be free. Look into the /proc filesystem and find out
what is hogging the needed resources and move whatever it is somewhere
else if possible; I don't mean to remove it from the machine :-) Just
change the resources it uses.
Mind you, I have no idea how to do this.
You might need to recompile your kernel with support for exotic serial
boards. Go here: "make menuconfig-> Device Drivers-> Character Devices->
Non standard serial port support. I noticed that Sarge recognizes the
modem's serial interface right away--before any on-disk modules are
loaded. Probably the module that makes the modem available is compiled
directly into the kernel.
I couldn't help but notice that COMX is missing from the 2.6 kernel.
It's missing from both the dmesg output and from the kernel source.
Right under the line in Sarge showing the settings for ttyS02 is this line:
COMX: driver version 0.85 (C) 1995-1999 ITConsult-Pro Co. <info@xxxxxx>
That comes from <kernel-2.4-source>/drivers/net/wan/comx.c which does
not exist in kernel 2.6. It sort of sounds like they changed the way
serial ports are done for 2.6, and the old code was removed, but the new
code knows nothing about your modem. However, this may be a red herring
because comx.c is part of the 'wan' directory which seems to relate to
special Wide Area Network interfaces.
When I try running scanModem from linuxant it tells me that I need some
proprietary driver from them but, as I said, the card worked in sarge. I
don't know whether there was a decision to stop supporting some devices or
this is a bug or I am just not configuring things right. (If it is a
configuration issue that would also indicate a documentation bug.) I would
like to post a bug but am not sure to which package it would go. I guess to
the linux-image2.6 package.
Any guidance would be appreciated.
Thanks,
Nathan Salwen
I think your suspicion that this is a kernel bug/removed-feature is
correct. Try the other things I discussed first. If none of them work,
perhaps file a request-for-enhancement with the kernel developers. The
enhancement would be to add support for your modem.
--
To UNSUBSCRIBE, email to debian-user-REQUEST@xxxxxxxxxxxxxxxx
with a subject of "unsubscribe". Trouble? Contact listmaster@xxxxxxxxxxxxxxxx
- Follow-Ups:
- Re: modem works in sarge but not etch or lenny
- From: Mumia W..
- Re: modem works in sarge but not etch or lenny
- References:
- modem works in sarge but not etch or lenny
- From: Nathan Salwen
- Re: modem works in sarge but not etch or lenny
- From: Mumia W..
- modem works in sarge but not etch or lenny
- Prev by Date: Re: firefox keeps grabbing huge chunks of my system
- Next by Date: Re: X fails to start - Intel i810 (845) - etch + testing
- Previous by thread: Re: modem works in sarge but not etch or lenny
- Next by thread: Re: modem works in sarge but not etch or lenny
- Index(es):
Relevant Pages
|