PING: Someone on the core team. (Modem Problem)
Daniel Rudy
dr2867 at pacbell.net
Fri Feb 9 08:12:26 UTC 2007
I'm having a problem with a Zoom PCI Fax Modem Model 2920A. The modem
has the latest firmware version, but there seems to be a problem with
the sio driver. Note that this *IS* a controller based modem.
Here's the relevant information from dmesg:
sio0: configured irq 19 not in bitmap of probed irqs 0
sio0: port may not be enabled
sio0: <Lucent kermit based PCI Modem> port
0xdc00-0xdcff,0xe000-0xe0ff,0xe400-0xe407 mem 0xeb107000-0xeb1070ff
irq 19 at device 11.0 on pci0
sio0: type 16550A
I have no idea WHY it's saying IRQ 19 as IRQ 19 is used by sis0. Here's
the output from vmstat -i:
interrupt total rate
irq1: atkbd0 6 0
irq6: fdc0 10 0
irq14: ata0 887 1
irq15: ata1 47 0
irq18: sis2 333 0
irq19: sis0 1 0
cpu0: timer 1000810 1993
Total 1002094 1996
And here is the output of pciconf -lv:
sio0 at pci0:11:0: class=0x070303 card=0x048011c1 chip=0x048011c1 rev=0x00
hdr=0x00
vendor = 'Lucent/Agere Systems (Was: AT&T MicroElectronics)'
device = 'Venus WinModem (V90, 56KFlex)'
class = simple comms
subclass = generic modem
Now I know that device says WinModem, but this is most definitely *NOT*
a WinModem. I made sure of that and even confirmed it with Zoom. They
claim that it should work with any system that has a PCI slot running
any OS that supports serial IO and a 16550A UART.
Here's the problem. Anything that this modem outputs, requires multiple
inputs for it to read out on the screen. Here's an example:
gateway# cu -l /dev/cuad0 -s 57600
Connected
at&v
Option Selection AT Cmd
--------------- ------------ --------
Comm Standard Bell B
CommandCharEcho Enabled E
Speaker Volume Medium L
Speaker Control OnUntilCarrier M
Result Codes Enabled Q
Dialer Type Tone T/P
ResultCode Form Text V
ExtendResultCode Enabled X
DialTone Detect Enabled X
BusyTone Detect Enabled X
LSD Action Standard RS232 &C
DTR Action Standard RS232 &D
Press any key to continue; ESC to quit.
Option Selection AT Cmd
--------------- ------------ --------
V22b Guard Tone Disabled &G
Flow Control Hardware &K
Error Control Mode V42,MNP,Buffer \N
Data Compression V42bis/MNP5 %C
AutoAnswerRing# 0 S0
AT Escape Char 43 S2
CarriageReturn Char 13 S3
Linefeed Char 10 S4
Backspace Char 8 S5
Blind Dial Pause 2 sec S6
NoAnswer Timeout 65 sec S7
"," Pause Time 2 sec S8
Press any key to continue; ESC to quit.
Option Selection AT Cmd
--------------- ------------ --------
No Carrier Disc 2000 msec S10
DTMF Dial Speed 95 msec S11
Escape GuardTime 1000 msec S12
Data Calling Tone Disabled S35
Line Rate 33600 S37
Press any key to continue; ESC to quit.
Stored Phone Numbers
--------------------
&Z0=
&Z1=
&Z2=
OK
In order to get that output, I have to hit either enter or space 61
times (yes sixty-one is not a typo) to get it. When it prints, it only
prints out about 16 characters at a time (which happens to be the size
of the FIFO buffer in a generic 16550A UART). The same modem works fine
in Windows, and Zoom claims it works in Linux (I don't have a Linux box
to try it in), but not FreeBSD. I think it has something to do with
that shared interrupt on IRQ19 with sis0, which is a network adapter.
As to why FreeBSD is assigning two devices to the same IRQ I have no
idea, especially since there are plenty of IRQs available that can be
used (serial, parallel are turned off in the BIOS).
I have 2 of these modems, different firmware revisions, and they are
both doing the same thing. Plus this machine has sis0, sis1, and sis2
and all interfaces must be up and working for the box to work in the
application that I'm using it in.
--
Daniel Rudy
More information about the freebsd-hackers
mailing list