FASTPCI-4037

To get a FASTPCI-4037 2 port serial card to work under linux I had to upgrade from 2.2.14 to to 2.2.20. Then I used lspci -vv:

00:09.0 Serial controller: Timedia Technology Co Ltd: Unknown device 7168 (rev 01) (prog-if 02 [16550])
	Subsystem: Timedia Technology Co Ltd: Unknown device 4037
	Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR+ FastB2B-
	Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
	Interrupt: pin A routed to IRQ 10
	Region 0: I/O ports at df40

This told me to use irq 10, and hopefully at least one base address - 0xdf40. I then used:

setserial /dev/ttyS4 irq 10 port 0xdf40 autoconfig

Which found a 16550 type UART. further tests with minicom (using a known speed device and changing minicom's speed until I got real chars) indicated that the baud generator was running at 921600 (8* faster than original spec). setserial can handle this using the baud_base option:

setserial /dev/ttyS4 irq 10 port 0xdf40 uart 16550 baud_base 921600

So that worked. Now to find the other serial port. I tried a few addresses(0xdf48, 0xdf50, 0xdf60), but infact my first guess was right (I missed it because my serial source got turned off in the middle of testing :-} )

setserial /dev/ttyS4 irq 10 port 0xdf40 uart 16550 baud_base 921600
setserial /dev/ttyS5 irq 10 port 0xdf48 uart 16550 baud_base 921600

And that's it. It all works fine now. On my debian system I just include this data in my /etc/serial.conf file. If I could get a 2.4 kernel working with everything else, it would probably have automatically done this for me.