[PATCH ] powerpc: pass UPIO_TSI flag to 8259 serial driver
tie-fei.zang at freescale.com
Wed Aug 23 16:27:30 EST 2006
> On Aug 22, 2006, at 9:20 PM, Zang Roy-r61911 wrote:
> > The patch passes the UPIO_TSI flag to general 8259 serial driver
> > Signed-off-by: Roy Zang <tie-fei.zang at freescale.com>
> Maybe, I'm missing something, but why do we need this? Why
> doesn't iotype == UPIO_MEM work for the TSI?
> - kumar
Tsi108 serial port has some difference from the standard 8250 port.
I add UPIO_TSI in general 8250 serial driver to handle IIR and IER
in serial_in and serial_out.
(1) the reason to rewrite serial_in:
TSI108 rev Z1 version ERRATA. Reading the UART's Interrupt
Identification Register (IIR) clears the Transmit Holding Register
Empty (THRE) and Transmit buffer Empty (TEMP) interrupts even if
are not enabled in the Interrupt Enable Register (IER). This leads
loss of the interrupts. Interrupts are not cleared when reading
registers as 32-bit word.
(2) the reason to rewrite serial_out:
Check for UART_IER_UUE bit in the autoconfig routine. This section
of autoconfig is excluded for Tsi108/109 because bits 7 and 6 are
reserved for internal use. They are R/W bits. In addition to
incorrect identification, changing these bits (from 00) will make
Tsi108/109 UART non-functional.
I need to pass UPIO_TSI flag to the 8250 driver when the tsi108 bridge
serial port is used.
More information about the Linuxppc-dev