serial: 8250_dma: don't bother DMA with small transfers
If we would like to send amount of data less than FIFO size we better would do this via PIO mode. Otherwise the overhead could be significant. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Родитель
a39d1da11b
Коммит
9119fba0cf
|
@ -80,6 +80,10 @@ int serial8250_tx_dma(struct uart_8250_port *p)
|
|||
return 0;
|
||||
|
||||
dma->tx_size = CIRC_CNT_TO_END(xmit->head, xmit->tail, UART_XMIT_SIZE);
|
||||
if (dma->tx_size < p->port.fifosize) {
|
||||
ret = -EINVAL;
|
||||
goto err;
|
||||
}
|
||||
|
||||
desc = dmaengine_prep_slave_single(dma->txchan,
|
||||
dma->tx_addr + xmit->tail,
|
||||
|
|
Загрузка…
Ссылка в новой задаче