now modem only works on IRQ 0 (was: pci hardware modem not working)
Thanks for the advice, it helped me figure out how to get the I/O from lspci
-v. I've got the modem *sort of* working now: It seems to only work on IRQ
0 (shared with the timer), and at speeds no higher than 9600 baud. Examples:
# lspci -v
0000:02:0b.0 Serial controller: 5610 56K FaxModem 56K FaxModem Model 5610 (rev
01) (prog-if 02 [16550])
Subsystem: U.S. Robotics: Unknown device 0110
Flags: medium devsel, IRQ 23
I/O ports at 2400 [size=8]
Capabilities: [dc] Power Management version 2
# setserial /dev/ttyS4 irq 23 port 0x2400 uart 16550A
# setserial /dev/ttyS4
/dev/ttyS4, UART: 16550A, Port: 0x2400, IRQ: 23, Flags: Fourport
# wvdialconf wvdial.conf
Scanning your serial ports for a modem.
Port Scan<*1>: Scanning ttyS4 first, /dev/modem is a link to it.
ttyS4<*1>: ATQ0 V1 E1 -- failed with 2400 baud, next try: 9600 baud
ttyS4<*1>: ATQ0 V1 E1 -- failed with 9600 baud, next try: 115200 baud
ttyS4<*1>: ATQ0 V1 E1 -- and failed too at 115200, giving up.
ttyS0<*1>: ATQ0 V1 E1 -- failed with 2400 baud, next try: 9600 baud
# setserial /dev/ttyS4 port 0x2400 uart 16550A autoconfig
# setserial /dev/ttyS4
/dev/ttyS4, UART: 16550A, Port: 0x2400, IRQ: 0, Flags: Fourport
# wvdialconf wvdial.conf
Scanning your serial ports for a modem.
Port Scan<*1>: Scanning ttyS4 first, /dev/modem is a link to it.
ttyS4<*1>: ATQ0 V1 E1 -- OK
ttyS4<*1>: ATQ0 V1 E1 Z -- OK
ttyS4<*1>: ATQ0 V1 E1 S0=0 -- OK
ttyS4<*1>: ATQ0 V1 E1 S0=0 &C1 -- OK
ttyS4<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 -- OK
ttyS4<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK
ttyS4<*1>: Modem Identifier: ATI -- 5601
ttyS4<*1>: Speed 4800: AT -- OK
ttyS4<*1>: Speed 9600: AT -- OK
ttyS4<*1>: Speed 19200: AT -- O
ttyS4<*1>: Speed 19200: AT -- O
ttyS4<*1>: Speed 19200: AT -- O
ttyS4<*1>: Max speed is 9600; that should be safe.
ttyS4<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK
Same thing in kppp, it works as long as I set the speed to 9600. With these
settings I can dial, connect, and use the internet, just very slowly.
For good measure, here is the result of cat /proc/interrupts. Perhaps there
is a problem with IRQ 23 being used by something else but getting assigned to
the modem PCI slot as well? I don't know.
# cat /proc/interrupts
CPU0
0: 1948244 IO-APIC-edge timer
1: 6219 IO-APIC-edge i8042
7: 2 IO-APIC-edge parport0
8: 4 IO-APIC-edge rtc
9: 0 IO-APIC-level acpi
12: 68492 IO-APIC-edge i8042
14: 16385 IO-APIC-edge ide0
15: 20001 IO-APIC-edge ide1
16: 0 IO-APIC-level uhci_hcd
17: 244877 IO-APIC-level Intel ICH4, eth0
18: 0 IO-APIC-level uhci_hcd
19: 0 IO-APIC-level uhci_hcd
23: 0 IO-APIC-level ehci_hcd
NMI: 0
LOC: 1948448
ERR: 0
MIS: 0
Reply to: