Merge "serial: msm_geni_serial: race between port_close and wakeup bytes"
This commit is contained in:
commit
31d34740f9
@ -2734,10 +2734,11 @@ static void msm_geni_serial_shutdown(struct uart_port *uport)
|
||||
disable_irq(uport->irq);
|
||||
} else {
|
||||
msm_geni_serial_power_on(uport);
|
||||
ret = wait_for_transfers_inflight(uport);
|
||||
if (ret)
|
||||
UART_LOG_DBG(msm_port->ipc_log_misc, uport->dev,
|
||||
"%s wait_for_transfer_inflight return ret: %d", __func__, ret);
|
||||
if (msm_port->wakeup_irq > 0 && msm_port->wakeup_enabled) {
|
||||
irq_set_irq_wake(msm_port->wakeup_irq, 0);
|
||||
disable_irq(msm_port->wakeup_irq);
|
||||
msm_port->wakeup_enabled = false;
|
||||
}
|
||||
|
||||
msm_geni_serial_stop_tx(uport);
|
||||
}
|
||||
@ -2761,12 +2762,6 @@ static void msm_geni_serial_shutdown(struct uart_port *uport)
|
||||
"%s: Failed to suspend:%d\n", __func__, ret);
|
||||
}
|
||||
|
||||
if (msm_port->wakeup_irq > 0 && msm_port->wakeup_enabled) {
|
||||
irq_set_irq_wake(msm_port->wakeup_irq, 0);
|
||||
disable_irq(msm_port->wakeup_irq);
|
||||
msm_port->wakeup_enabled = false;
|
||||
}
|
||||
|
||||
if (!IS_ERR_OR_NULL(msm_port->serial_rsc.geni_gpio_shutdown)) {
|
||||
ret = pinctrl_select_state(
|
||||
msm_port->serial_rsc.geni_pinctrl,
|
||||
|
Loading…
Reference in New Issue
Block a user