we hope to use 4 serial ports together on
Centos 5.3 (could not upgrade to newer version due to application limitation).
COM1 and COM2 works perfectly. We use echo to output to customer display to test:
echo "testing 123" > /dev/ttyS0 => OK!
However, we could not get COM3, COM4 to work. Please see below for screen output / configurations:
[root@station ~]# dmesg | grep tty serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A serial8250: ttyS2 at I/O 0x3e8 (irq = 7) is a 16550A serial8250: ttyS3 at I/O 0x2e8 (irq = 6) is a 16550A 00:09: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A 00:0a: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A 00:0b: ttyS2 at I/O 0x3e8 (irq = 7) is a 16550A 00:0c: ttyS3 at I/O 0x2e8 (irq = 6) is a 16550A 00:0d: ttyS4 at I/O 0x2e0 (irq = 10) is a 16550A 00:0e: ttyS5 at I/O 0x2f0 (irq = 11) is a 16550A
serinfo:1.0 driver revision: 0: uart:16550A port:000003F8 irq:4 tx:16380 rx:0 RTS|DTR 1: uart:16550A port:000002F8 irq:3 tx:0 rx:0 RTS|CTS|DTR|DSR 2: uart:16550A port:000003E8 irq:7 tx:16 rx:0 RTS|CTS|DTR|DSR 3: uart:16550A port:000002E8 irq:6 tx:0 rx:0 RTS|CTS|DTR|DSR 4: uart:16550A port:000002E0 irq:10 tx:0 rx:0 5: uart:16550A port:000002F0 irq:11 tx:0 rx:0 6: uart:unknown port:00000000 irq:0 7: uart:unknown port:00000000 irq:0
setserial /dev/ttyS2 port 0x3e8 UART 16550A irq 7 setserial /dev/ttyS3 port 0x2e8 UART 16550A irq 6
However, when we tried Ubuntu 12.04 => it works (so we know it's not hardware problem)
ttyS0: 3f8 (irq = 4) ttyS1: 2f8 (irq = 3) ttyS2: 3e8 (irq = 4) <= ubuntu auto set it to irq 4 ttyS3: 2e8 (irq = 3) <= ubuntu auto set it to irq 3 Centos 5.3 (cannot get output on COM3, COM4) ttyS0: 3f8 (irq = 4) ttyS1: 2f8 (irq = 3) ttyS2: 3e8 (irq = 7) ttyS3: 2e8 (irq = 6)
I realized that this is bit related to a prev post setserial /dev/ttyS4: Cannot set serial info
[Q1] If COM1(ttyS0) and COM2(ttyS1) are already using irq4 and irq3 respectively, is it okay for COM3 and COM4 using irq4 and irq3 again?
[Q2] We could not change the irq using SetSerial to another irq from irq1- irq15. However, when we set to irq0, we were able to get the device to work. However, we were advised not to use irq0 because it should be reserved for system time.