diff -u --new-file --exclude-from ../exclude --recursive linux.vanilla/drivers/char/serial.c linux.15p6/drivers/char/serial.c
--- linux.vanilla/drivers/char/serial.c Tue Jan 4 21:18:46 2000
+++ linux.15p6/drivers/char/serial.c Tue Jan 18 01:03:46 2000
@@ -1383,8 +1383,13 @@
if (info->state->type == PORT_16750)
serial_outp(info, UART_FCR, fcr); /* set fcr */
serial_outp(info, UART_LCR, cval); /* reset DLAB */
- if (info->state->type != PORT_16750)
+ if (info->state->type != PORT_16750) {
+ if (fcr & UART_FCR_ENABLE_FIFO) {
+ /* emulated UARTs (Lucent Venus 167x) need two steps */
+ serial_outp(info, UART_FCR, UART_FCR_ENABLE_FIFO);
+ }
serial_outp(info, UART_FCR, fcr); /* set fcr */
+ }
restore_flags(flags);
}