mirror of https://gitee.com/openkylin/linux.git
serial: 8250: Deduplicate rs485 active_timer assignment
When rs485 transmission over an 8250 port stops, __stop_tx() assigns active_timer = NULL before calling __stop_tx_rs485(). That function in turn either assigns active_timer = stop_tx_timer and rearms the timer (in case a delay_rts_after_send needs to be observed) or directly calls __do_stop_tx_rs485(). Move the assignment active_timer = NULL to __stop_tx_rs485() into the branch which directly calls __do_stop_tx_rs485(), thereby avoiding a duplicate assignment and simplifying the code. Signed-off-by: Lukas Wunner <lukas@wunner.de> Cc: Matwey V. Kornilov <matwey@sai.msu.ru> Link: https://lore.kernel.org/r/bca638405550eaf92f0c6060b553b687f35885e0.1582895077.git.lukas@wunner.de Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
6d3e54e195
commit
41a70b7f47
|
@ -1498,6 +1498,7 @@ static void __stop_tx_rs485(struct uart_8250_port *p)
|
||||||
p->port.rs485.delay_rts_after_send);
|
p->port.rs485.delay_rts_after_send);
|
||||||
} else {
|
} else {
|
||||||
__do_stop_tx_rs485(p);
|
__do_stop_tx_rs485(p);
|
||||||
|
em485->active_timer = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1522,8 +1523,6 @@ static inline void __stop_tx(struct uart_8250_port *p)
|
||||||
if ((lsr & BOTH_EMPTY) != BOTH_EMPTY)
|
if ((lsr & BOTH_EMPTY) != BOTH_EMPTY)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
em485->active_timer = NULL;
|
|
||||||
|
|
||||||
__stop_tx_rs485(p);
|
__stop_tx_rs485(p);
|
||||||
}
|
}
|
||||||
__do_stop_tx(p);
|
__do_stop_tx(p);
|
||||||
|
|
Loading…
Reference in New Issue