Web lists-archives.com

multiport serial card setup




Hi!
I have using Brain Boxes UC-260 4xserial port card for many years on
Debian 6.0.10 Squeeze. Now I have build a new box with this card for
Stretch and I recognize that old "tricks" are does not work.
The old recipe was
/etc/lilo.conf
  append="8250.nr_uarts=8"
In result I have 8 nodes for serial devices, up to ttyS7
/etc/serial.conf
/dev/ttyS4 uart 16750 port 0xd100 irq 20 baud_base 115200 spd_normal
skip_test ^fourport
/dev/ttyS5 uart 16750 port 0xd108 irq 20 baud_base 115200 spd_normal
skip_test ^fourport
/dev/ttyS6 uart 16750 port 0xd110 irq 20 baud_base 115200 spd_normal
skip_test ^fourport
/dev/ttyS7 uart 16750 port 0xd118 irq 20 baud_base 115200 spd_normal
skip_test ^fourport
Thats all. Every port are working well.
With stretch it does not work at all.
After reboot, from command line:
$ setserial /dev/ttyS4 -a
Invalid argument

Same command but as root:
# setserial /dev/ttyS4 -a
/dev/ttyS4, Line 4, UART: 16750, Port: 0xd100, IRQ: 20
        Baud_base: 115200, close_delay: 50, divisor: 0
        closing_wait: 3000
        Flags: spd_normal skip_test

Seem to be work? - not yet, using minicom it can not receive even himself
(sort cut pins 2-3 w/o any handshake). Port address and irq was taken from
lspci and proved by windows 10 running on the same box.
I cleaned up /etc/serial.conf as this card does not exist at all.
I tried to setup serial by hand:
# setserial /dev/ttyS4 uart 16550A port 0xd100 irq 20 baud_base 115200
spd_normal skip_test
Invalid argument

The error seem less in kernel log.
I have tried several settings - decide which argument is wrong. At last
turn out that /dev/ttyS4, the device node is invalid, I can set it as
/dev/ttyS1 (no such a "standard" port in my box), but card still wont
work.
I have tried several Debian live Strecth and Jessie distros with the same
result. I have also tried SystemRescue CD with more up to date kernel but
got the same result.
I also lookup the manufacturer suggested "driver" - in real it is only
some patches in grub and rc.local but it still does not work.
In windows 10 it is work well.
I was submitted a bug report to Debian about the setserial, but I'm not
sure that it is setserial problem, I suspect kernel?
I have no idea what to do more. Any suggestion would be highly appreciated.
I'm not too good in kernel debugging.

Sincerely
  tovis