Date: Fri, 09 Feb 2007 00:16:31 -0800 From: Daniel Rudy <dr2867@pacbell.net> To: freebsd-hackers@freebsd.org Subject: PING: Someone on the core team. (Modem Problem) Message-ID: <45CC2DDF.6040600@pacbell.net>
next in thread | raw e-mail | index | archive | help
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@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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?45CC2DDF.6040600>