[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: 8 port serial PCI card on squeeze

Hi there

ML mail wrote:

I am trying to configure an 8 port serial PCI card and managed to get the 3 first ports working but the 5 others do not work. The ouput of /proc/tty/drivers/serial is the following:

0: uart:TI16750 port:000003F8 irq:4 tx:2608 rx:0 RTS|CTS|DTR|DSR
1: uart:16C950/954 mmio:0xA5001000 irq:19 tx:0 rx:0
2: uart:16C950/954 mmio:0xA5001200 irq:19 tx:0 rx:0
3: uart:16C950/954 mmio:0xA5001400 irq:19 tx:0 rx:0

That's 4 working ports. Which is the default.

4: uart:16550A port:00001040 irq:19 tx:11 rx:0 RTS|DTR
5: uart:16550A port:00001048 irq:19 tx:0 rx:0
6: uart:16550A port:00001050 irq:19 tx:0 rx:0

7: uart:16550A port:00001058 irq:19 tx:0 rx:0

serial port 0 is the serial port of the main board then the serial port card starts at position 1. So you see here that the port 1, 2 and 3 are configured correctly but the rest  are not. I already added the two kernel parameters "8250.runtime_uarts=8 8250.nr_uarts=8"


but that didn't help. Does anyone know what could be wrong here?

I am using Debian 6.0 and the 8 port serial PCI card is the following: http://www.exsys.ch/index.php?main_page=product_info&products_id=626&language=en

Last, here is the ouput of "lspci -v" on that card:

0d:00.0 Serial controller: Oxford Semiconductor Ltd Device c308 (prog-if 02 [16550])
     Subsystem: Oxford Semiconductor Ltd Device c308
     Flags: bus master, fast devsel, latency 0, IRQ 19
     Memory at a5000000 (32-bit, non-prefetchable) [size=16K]
     Memory at a5200000 (32-bit, non-prefetchable) [size=2M]
     Memory at a5400000 (32-bit, non-prefetchable) [size=2M]
     Capabilities: [40] Power Management version 3
     Capabilities: [70] Express Endpoint, MSI 00
     Capabilities: [b0] MSI-X: Enable- Count=16 Masked-
     Kernel driver in use: serial

Are you quite sure that the motherboard only has one serial port?
Sometimes the second port needs a IDC + ribbon + bracket with RS232 connector. Consult the motherboard docs.

Check CONFIG_SERIAL_8250_NR_UARTS= and CONFIG_SERIAL_8250_RUNTIME_UARTS= in your kernel config.
The first is the maximum number of RS232 ports, the second the default.
Th first has to be >= the total number of RS232 ports.

Edit /etc/default/grub; GRUB_CMDLINE_LINUX="8250.nr_uarts=9"
Or 10, if your motherboard has 2 ports.
Run update-grub.
Check /boot/grub/grub.cfg

Abolish all monarchies

Reply to: