diff options
author | Grant Likely <grant.likely@secretlab.ca> | 2007-05-06 11:38:51 -0400 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2007-05-07 06:31:15 -0400 |
commit | a3481197783c187707090504062488862768260a (patch) | |
tree | dabfaf208b86d88c60ca34b2c255c907a8ffe0e3 /drivers/serial | |
parent | 3a5cc44268d9c3eee301f366801005e331b1e871 (diff) |
[POWERPC] Don't shutdown TX on mpc5200 serial port if it is a console
If the serial port gets shut down, then console output stalls. 9 out
of 10 kernel hackers agree, this is a bad thing.
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'drivers/serial')
-rw-r--r-- | drivers/serial/mpc52xx_uart.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/serial/mpc52xx_uart.c b/drivers/serial/mpc52xx_uart.c index f8c1761eb57f..35f8b86cc78f 100644 --- a/drivers/serial/mpc52xx_uart.c +++ b/drivers/serial/mpc52xx_uart.c | |||
@@ -257,9 +257,10 @@ mpc52xx_uart_shutdown(struct uart_port *port) | |||
257 | { | 257 | { |
258 | struct mpc52xx_psc __iomem *psc = PSC(port); | 258 | struct mpc52xx_psc __iomem *psc = PSC(port); |
259 | 259 | ||
260 | /* Shut down the port, interrupt and all */ | 260 | /* Shut down the port. Leave TX active if on a console port */ |
261 | out_8(&psc->command,MPC52xx_PSC_RST_RX); | 261 | out_8(&psc->command,MPC52xx_PSC_RST_RX); |
262 | out_8(&psc->command,MPC52xx_PSC_RST_TX); | 262 | if (!uart_console(port)) |
263 | out_8(&psc->command,MPC52xx_PSC_RST_TX); | ||
263 | 264 | ||
264 | port->read_status_mask = 0; | 265 | port->read_status_mask = 0; |
265 | out_be16(&psc->mpc52xx_psc_imr,port->read_status_mask); | 266 | out_be16(&psc->mpc52xx_psc_imr,port->read_status_mask); |