Bit 0 is set when a byte is placed in the Receiver Buffer Register and cleared when the byte is read by the CPU (or when the CPU clears the FIFO for the 16550). Results in Receive Data Available Interrupts if enabled.
Bits 1-4 indicate errors and result in Line Status Interrupts if enabled.
Bit 1 is set when a second byte is received before the byte in the Receiver Buffer Register is read by the CPU (the 16550 in FIFO mode sets this bit when the queue is full and the byte in the Receiver Shift Register hasn't been moved into the queue). This bit is reset when the CPU reads the LSR
Bit 2 is set whenever a byte is received that doesn't match the requested parity. Reset upon reading the LSR. (The 16550 maintains parity information with each byte and sets bit 2 only when the byte is at the top of the FIFO queue.)
Bit 3 is set when a character is received without proper stop bits. Upon detecting a framing error the UART attempts to resynchronize. Reset by reading the LSR. (The 16550 maintains this information with each byte and sets bit 3 only when the byte is at the top of the FIFO queue.)
Bit 4 is set when a break condition is sensed (when space is detected for longer than 1 fullword). A zero byte is placed in the Receiver Buffer Register (or 16550 FIFO). Reset by reading the LSR. (The 16550 maintains this information with each byte and sets bit 4 only when the byte is at the top of the FIFO queue.)
Bit 5 is set when the Transmit Holding Register shifts a byte into the Transmit Shift Register (or XMIT FIFO queue is empty for 16550) and is cleared when a byte is written to the THR (or the XMIT FIFO). Results in Transmit Holding Register Empty interrupts if enabled.
Bit 6 is set when both the Transmitter Holding Register and the Transmitter Shift Register are empty. On the 16550, when the XMIT FIFO and Transmitter Shift Register are empty.
Bit 7 is 16550 specific and indicates there is a byte in the FIFO queue that was received with a Parity, Framing or Break error.