Centos 5.3 - Necessário usar 4 portas com sem conflitos de recursos (o sistema possui 6 portas)

1

Esperamos usar 4 portas seriais juntas em Centos 5.3 (não foi possível atualizar para uma versão mais nova devido à limitação de aplicativos).

COM1 e COM2 funcionam perfeitamente. Usamos echo para enviar para a tela do cliente para testar:

echo "testing 123" > /dev/ttyS0
=> OK!

No entanto, não conseguimos que a COM3, COM4 funcione. Por favor, veja abaixo para saída de tela / configurações:

[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

vim /proc/tty/driver/serial

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

vim /etc/rc.local

setserial /dev/ttyS2 port 0x3e8 UART 16550A irq 7
setserial /dev/ttyS3 port 0x2e8 UART 16550A irq 6

No entanto, quando tentamos o Ubuntu 12.04 = > funciona (por isso sabemos que não é problema de hardware)

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)

Eu percebi que isso é pouco relacionado a um post anterior setserial / dev / ttyS4: Não é possível definir informações seriais

[Q1] Se COM1 (ttyS0) e COM2 (ttyS1) já estão usando irq4 e irq3 respectivamente, está tudo bem para COM3 e COM4 usando irq4 e irq3 novamente?

[Q2] Não foi possível alterar o irq usando SetSerial para outro irq do irq1-irq15. No entanto, quando configuramos o irq0, conseguimos fazer o dispositivo funcionar. No entanto, fomos aconselhados a não usar o irq0 porque ele deveria ser reservado para a hora do sistema.

    
por Kevin H 14.04.2013 / 15:09

0 respostas

Tags