_Precise_ serial bug report

Philippe Strauss (philou@sicel-home-1-4.urbanet.ch)
Wed, 13 Nov 1996 22:34:45 +0100 (MET)

Hi, Ted.

Since you lack precise bug report, here we go.

Kind of problem:

Since 2.1.8, setserial (2.10) is not able to find the IRQ
for the serial port. It return IRQ 0 for both ports. Kernel
report this:

Serial driver version 4.20 with no serial options enabled
tty00 at 0x03f8 (irq = 4) is a 16550A
tty01 at 0x02f8 (irq = 3) is a 16550A

while setserial report this:

/dev/cua0 at 0x03f8 (irq = 0) is a 16550A
/dev/cua1 at 0x02f8 (irq = 0) is a 16550A

ls -l /dev/tytso euh no, scuse me :), ls -l /dev/cua*
0 crw-r----- 1 root root 5, 64 Jan 1 1970 /dev/cua0
0 crw-r----- 1 root root 5, 65 Jan 1 1970 /dev/cua1
0 crw-r----- 1 root root 5, 66 Jan 1 1970 /dev/cua2
0 crw-r----- 1 root root 5, 67 Jan 1 1970 /dev/cua3

Here's the 0setserial script from debian 1.1
that is on my system (slightly compacted):

echo -n "Configuring serial ports...."
# Do wild interrupt detection
${SETSERIAL} -W /dev/cua0
# Do AUTOMATIC_IRQ probing
${SETSERIAL} -b /dev/cua0 ${AUTO_IRQ} skip_test autoconfig ${STD_FLAGS}
${SETSERIAL} -b /dev/cua1 ${AUTO_IRQ} skip_test autoconfig ${STD_FLAGS}
${SETSERIAL} -b /dev/cua2 ${AUTO_IRQ} skip_test autoconfig ${STD_FLAGS}
# Can't configure cua3 by default, because that shares the same port
# address as some graphics cards (S3, Mach*, 8514/a).
# ${SETSERIAL} /dev/cua3 ${AUTO_IRQ} autoconfig ${STD_FLAGS}

I now use:

${SETSERIAL} -b /dev/cua0 uart 16550A port 0x3F8 irq 4 ${STD_FLAGS}
${SETSERIAL} -b /dev/cua1 uart 16550A port 0x2F8 irq 3 ${STD_FLAGS}

at the end of 0setserial, which fix the problem.

My UART is bundled in a Winbond 83758F chip, it has always
been reported as a 16550A (since 1.2.x ?).
Mainboard is a MS5120 from microstar.

Everything was OK up to 2.1.7.


Philippe Strauss, CH-1092 Belmont

Email: <philippe.strauss@urbanet.ch> Homepage: http://sicel-home-1-4.urbanet.ch