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