serial/8250_pci: Clear FIFOs for Intel ME Serial Over Lan device on BI
authorSudhakar Mamillapalli <sudhakar@fb.com>
Tue, 10 Apr 2012 21:10:58 +0000 (14:10 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 18 Apr 2012 23:26:17 +0000 (16:26 -0700)
commit0ad372b962d109323d18ac2aa118b2ad100eb8dd
tree82a9c1308720f9a96ff1432c063125a0695160d4
parent665ab0f3c8b8f86bb77b25285ac93870c7054d63
serial/8250_pci: Clear FIFOs for Intel ME Serial Over Lan device on BI

When using Serial Over Lan (SOL) over the virtual serial port in a Intel
management engine (ME) device, on device reset the serial FIFOs need to
be cleared to keep the FIFO indexes in-sync between the host and the
engine.

On a reset the serial device assertes BI, so using that as a cue FIFOs
are cleared.  So for this purpose a new handle_break callback has been
added.  One other problem is that the serial registers might temporarily
go to 0 on reset of this device.  So instead of using the IER register
read, if 0 returned use the ier value in uart_8250_port. This is hidden
under a custom serial_in.

Cc: Nhan H Mai <nhan.h.mai@intel.com>
Signed-off-by: Sudhakar Mamillapalli <sudhakar@fb.com>
Acked-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/8250/8250.c
drivers/tty/serial/8250/8250.h
drivers/tty/serial/8250/8250_pci.c