serial: sh-sci: Use DMA submission helpers instead of open-coding
Replace open-coded - calls to dma_async_tx_descriptor.tx_submit() by calls to the dmaengine_submit() helper, - dma_cookie_t comparisons by calls to dma_submit_error(). Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Родитель
2e301474f1
Коммит
3e14670c06
|
@ -1407,10 +1407,10 @@ static void sci_submit_rx(struct sci_port *s)
|
||||||
s->desc_rx[i] = desc;
|
s->desc_rx[i] = desc;
|
||||||
desc->callback = sci_dma_rx_complete;
|
desc->callback = sci_dma_rx_complete;
|
||||||
desc->callback_param = s;
|
desc->callback_param = s;
|
||||||
s->cookie_rx[i] = desc->tx_submit(desc);
|
s->cookie_rx[i] = dmaengine_submit(desc);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!desc || s->cookie_rx[i] < 0) {
|
if (!desc || dma_submit_error(s->cookie_rx[i])) {
|
||||||
if (i) {
|
if (i) {
|
||||||
async_tx_ack(s->desc_rx[0]);
|
async_tx_ack(s->desc_rx[0]);
|
||||||
s->cookie_rx[0] = -EINVAL;
|
s->cookie_rx[0] = -EINVAL;
|
||||||
|
@ -1476,8 +1476,8 @@ static void work_fn_rx(struct work_struct *work)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
s->cookie_rx[new] = desc->tx_submit(desc);
|
s->cookie_rx[new] = dmaengine_submit(desc);
|
||||||
if (s->cookie_rx[new] < 0) {
|
if (dma_submit_error(s->cookie_rx[new])) {
|
||||||
dev_warn(port->dev, "Failed submitting Rx DMA descriptor\n");
|
dev_warn(port->dev, "Failed submitting Rx DMA descriptor\n");
|
||||||
sci_rx_dma_release(s, true);
|
sci_rx_dma_release(s, true);
|
||||||
return;
|
return;
|
||||||
|
@ -1530,8 +1530,8 @@ static void work_fn_tx(struct work_struct *work)
|
||||||
desc->callback = sci_dma_tx_complete;
|
desc->callback = sci_dma_tx_complete;
|
||||||
desc->callback_param = s;
|
desc->callback_param = s;
|
||||||
spin_unlock_irq(&port->lock);
|
spin_unlock_irq(&port->lock);
|
||||||
s->cookie_tx = desc->tx_submit(desc);
|
s->cookie_tx = dmaengine_submit(desc);
|
||||||
if (s->cookie_tx < 0) {
|
if (dma_submit_error(s->cookie_tx)) {
|
||||||
dev_warn(port->dev, "Failed submitting Tx DMA descriptor\n");
|
dev_warn(port->dev, "Failed submitting Tx DMA descriptor\n");
|
||||||
/* switch to PIO */
|
/* switch to PIO */
|
||||||
sci_tx_dma_release(s, true);
|
sci_tx_dma_release(s, true);
|
||||||
|
@ -1562,7 +1562,7 @@ static void sci_start_tx(struct uart_port *port)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (s->chan_tx && !uart_circ_empty(&s->port.state->xmit) &&
|
if (s->chan_tx && !uart_circ_empty(&s->port.state->xmit) &&
|
||||||
s->cookie_tx < 0) {
|
dma_submit_error(s->cookie_tx)) {
|
||||||
s->cookie_tx = 0;
|
s->cookie_tx = 0;
|
||||||
schedule_work(&s->work_tx);
|
schedule_work(&s->work_tx);
|
||||||
}
|
}
|
||||||
|
|
Загрузка…
Ссылка в новой задаче